blob: fabf170c4a02218513d725d2190f536ee0c4d4ed [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.jst.jsf.common">
<annotation>
<appInfo>
<meta.schema plugin="org.eclipse.jst.jsf.common" id="annotationFiles" name="Annotation Files"/>
</appInfo>
<documentation>
Adds annotation meta-data to a content model. An extending plugin may only create one annotation file for a given URI.
</documentation>
</annotation>
<element name="extension">
<complexType>
<sequence>
<element ref="annotationFile" minOccurs="1" maxOccurs="unbounded"/>
</sequence>
<attribute name="point" type="string" use="required">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="id" type="string">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="name" type="string">
<annotation>
<documentation>
</documentation>
<appInfo>
<meta.attribute translatable="true"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="annotationFile">
<annotation>
<documentation>
File used to map annotations to a tag library content model. The file assigns properties to a tag element or attribute.
</documentation>
</annotation>
<complexType>
<attribute name="uri" type="string" use="required">
<annotation>
<documentation>
Content model URI being annotated. eg. &quot;http://java.sun.com/jsf/core&quot;. This can, of course, be any string that the consumer wishes to use as a key.
</documentation>
</annotation>
</attribute>
<attribute name="location" type="string" use="required">
<annotation>
<documentation>
Location of the annotation file. If no locator is provided, it will use the default &lt;code&gt;CMPluginRelativeSourceFileLocator&lt;/code&gt; which will find the file in a location relative to the plugin.
eg. /metadata/jsf_core.xml
</documentation>
</annotation>
</attribute>
<attribute name="locator" type="string">
<annotation>
<documentation>
Class implementing the abstract &lt;code&gt;CMAnnotationSourceFileLocator&lt;/code&gt; class. Responsible for locating the annotation file and returning an InputStream to the parser and returning a &lt;code&gt;ResourceBundle&lt;/code&gt; if there is one. If a locator is not supplied, the default implementation for a plugin relative file, &lt;code&gt;CMPluginRelativeSourceFileLocator&lt;/code&gt; will be used.
</documentation>
<appInfo>
<meta.attribute kind="java" basedOn="org.eclipse.jst.jsf.contentmodel.annotation.CMAnnotationSourceFileLocator:org.eclipse.jst.jsf.contentmodel.annotation.ICMAnnotationFileParser"/>
</appInfo>
</annotation>
</attribute>
<attribute name="parser" type="string">
<annotation>
<documentation>
The name of the parser class used to fill the internal model. If not specified the default, &lt;code&gt;CMAnnotationFileParser&lt;/code&gt;, will be used which conforms to the default schema &lt;code&gt;http://org.eclipse.jst.jsf.contentmodel.annotations/grammarAnnotationSchema&lt;/code&gt;. If parser is provided, it must implement &lt;code&gt;ICMAnnotationFileParser&lt;/code&gt;.
</documentation>
<appInfo>
<meta.attribute kind="java" basedOn="org.eclipse.jst.jsf.contentmodel.annotation.CMAnnotationSourceFileLocator:org.eclipse.jst.jsf.contentmodel.annotations.ICMAnnotationFileParser"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appInfo>
<meta.section type="since"/>
</appInfo>
<documentation>
WTP 1.5
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="examples"/>
</appInfo>
<documentation>
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="apiInfo"/>
</appInfo>
<documentation>
The parser, if specified, must implement &lt;code&gt;ICMAnnotationFileParser&lt;/code&gt; to create &lt;code&gt;CMElementAnnotation&lt;/code&gt; and &lt;code&gt;CMAttributeAnnotations&lt;/code&gt; in the &lt;code&gt;CMAnnotationMap&lt;/code&gt;.
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="implementation"/>
</appInfo>
<documentation>
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="copyright"/>
</appInfo>
<documentation>
</documentation>
</annotation>
</schema>