blob: 8cc84d52a27b800736758cd4a2a12b860bce9e56 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="taglib"
nsURI="taglib.xmi" nsPrefix="org.eclipse.jst.j2ee.taglib">
<eClassifiers xsi:type="ecore:EClass" name="TagLib" eSuperTypes="common.ecore#//CompatibilityDescriptionGroup">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The taglib tag is the document root, it defines:&#xD;&#xA;&#xD;&#xA;description a simple string describing the &quot;use&quot; of this taglib,&#xD;&#xA; should be user discernable&#xD;&#xA;&#xD;&#xA;display-name the display-name element contains a&#xD;&#xA; short name that is intended to be displayed&#xD;&#xA; by tools&#xD;&#xA;&#xD;&#xA;icon optional icon that can be used by tools&#xD;&#xA;&#xD;&#xA;tlib-version the version of the tag library implementation&#xD;&#xA;&#xD;&#xA;short-name a simple default short name that could be&#xD;&#xA; used by a JSP authoring tool to create&#xD;&#xA; names with a mnemonic value; for example,&#xD;&#xA; the it may be used as the prefered prefix&#xD;&#xA; value in taglib directives&#xD;&#xA;&#xD;&#xA;uri a uri uniquely identifying this taglib&#xD;&#xA;&#xD;&#xA;validator optional TagLibraryValidator information&#xD;&#xA;&#xD;&#xA;listener optional event listener specification&#xD;&#xA;&#xD;&#xA;tag one or more tags in the tag library&#xD;&#xA;&#xD;&#xA;tag-file one or more tag files in the tag library&#xD;&#xA;&#xD;&#xA;function zero or more EL functions defined in this&#xD;&#xA; tag library&#xD;&#xA;&#xD;&#xA;taglib-extension zero or more extensions that provide extra&#xD;&#xA;&#x9;&#x9;information about this taglib, for tool&#xD;&#xA;&#x9;&#x9;consumption"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="tagLibVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Describes this version number of the tag library (dewey decimal).&#xD;&#xA;@regexp [0-9]*{ &quot;.&quot;[0-9] }0..3"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="jspVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Describes the JSP version (number) this tag library requires in order to function (dewey decimal). Default is 1.2&#xD;&#xA;@regexp [0-9]*{ &quot;.&quot;[0-9] }0..3"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="shortName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The value of the short-name element is a name that could be used by a JSP authoring tool to create names with a mnemonic value; for example, it may be used as the prefered prefix value in taglib directives. Do not use white space, and do not start with digits or underscore."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="uri" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The value of the uri element is a public URI that uniquely identifies the exact semantics of this taglibrary."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="tags" lowerBound="1" upperBound="-1"
eType="#//JSPTag" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="validator" eType="#//Validator"
containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The validator element provides information on an optional validator that can be used to validate the conformance of a JSP page to using this tag library.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="listeners" upperBound="-1"
eType="ecore:EClass common.ecore#//Listener" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="functions" upperBound="-1"
eType="#//Function" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="@version J2EE1.4"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="taglibExtensions" upperBound="-1"
eType="#//TldExtension" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="JSPTag" eSuperTypes="common.ecore#//DescriptionGroup">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The tag element defines an action in this tag library. The tag element has one attribute, id.&#xD;&#xA;The tag element may have several subelements defining:&#xD;&#xA;name -- The unique action name&#xD;&#xA;tag-class -- The tag handler class implementing javax.servlet.jsp.tagext.Tag&#xD;&#xA;tei-class -- An optional subclass of javax.servlet.jsp.tagext.TagExtraInfo&#xD;&#xA;body-content -- The body content type&#xD;&#xA;display-name -- A short name that is intended to be displayed by tools&#xD;&#xA;small-icon -- Optional small-icon that can be used by tools&#xD;&#xA;large-icon -- Optional large-icon that can be used by tools&#xD;&#xA;description -- Optional tag-specific information&#xD;&#xA;variable -- Optional scripting variable information&#xD;&#xA;attribute -- All attributes of this action&#xD;&#xA;example -- Optional informal description of an example of a use of this action.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="bodyContent" eType="#//BodyContentType"
unsettable="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Provides a hint as to the content of the body of this tag. Primarily intended for use by page composition tools.There are currently three values specified:&#xD;&#xA;&#xD;&#xA;tagdependent - The body of the tag is interpreted by the tag implementation itself, and is most likely in a&#x9;&#x9;different &quot;langage&quot;, e.g embedded SQL statements.&#xD;&#xA;&#xD;&#xA;JSP - The body of the tag contains nested JSP syntax&#xD;&#xA;&#xD;&#xA;empty - The body must be emptyThe default (if not defined) is JSP#PCDATA ::= tagdependent | JSP | empty"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="example" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The example element provides an informal description of an example of the use of a tag."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="dynamicAttributes" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="attributes" upperBound="-1"
eType="#//JSPTagAttribute" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="variables" upperBound="-1"
eType="#//JSPVariable" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The variable element provides information on the scripting variables defined by this tag.&#xD;&#xA;It is a (translation time) error for an action that has one or more variable subelements to have a TagExtraInfo class that returns a non-null object.&#xD;&#xA;The subelements of variable are of the form:&#xD;&#xA;name-given -- The variable name as a constant&#xD;&#xA;name-from-attribute -- The name of an attribute whose (translation time) value will give the name of the variable. One of name-given or namefrom-attribute is required.&#xD;&#xA;variable-class -- Name of the class of the variable. java.lang.String is default.&#xD;&#xA;declare -- Whether the variable is declared or not. True is the default.&#xD;&#xA;scope -- The scope of the scripting variable defined. NESTED is default.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="tagClass" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.jem/model/java.ecore#//JavaClass">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The tag-class element indicates the subclass of javax.serlvet.jsp.tagext.Tag that implements the request time semantics for this tag. This element is required.&#xD;&#xA;@regexp fully qualified Java class name&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="teiClass" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.jem/model/java.ecore#//JavaClass">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The tei-class element indicates the subclass of javax.servlet.jsp.tagext.TagExtraInfo for this tag. The class is instantiated at translation time. This element is optional.&#xD;&#xA;@regexp fully qualified Java class name"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="JSPTagAttribute" eSuperTypes="common.ecore#//J2EEEObject">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The attribute tag defines an attribute for the nesting tag"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Defines the canonical name of a tag or attribute being defined (required)."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="required" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
unsettable="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Defines if the nesting attribute is required or optional."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="rtExprValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
defaultValueLiteral="false" unsettable="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Defines if the nesting attribute can have scriptlet expressions asa value, i.e the value of the attribute may be dynamically calculatedat request time, as opposed to a static value determined at translationtime. (optional)&#xD;&#xA;Default = false"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="fragment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="@version J2EE1.4"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="ecore:EClass ../../org.eclipse.jem/model/java.ecore#//JavaClass">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The value of the type element describes the Java type of the attributes value.&#xD;&#xA;For static values (those determined at translation time) the type is always java.lang.String."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="descriptions" upperBound="-1"
eType="ecore:EClass common.ecore#//Description" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="@version J2EE1.4"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="BodyContentType">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="@version J2EE1.4, added TAGDEPENDENT,EMPTY,scriptless,SCRIPTLESS&#xD;&#xA;Provides a hint as to the content of the body of this tag.&#xD;&#xA;Primarily intended for use by page composition tools.&#xD;&#xA;&#xD;&#xA;There are currently four values specified:&#xD;&#xA;&#xD;&#xA;tagdependent The body of the tag is interpreted by the tag&#xD;&#xA; implementation itself, and is most likely&#xD;&#xA; in a different &quot;langage&quot;, e.g embedded SQL&#xD;&#xA; statements.&#xD;&#xA;&#xD;&#xA;JSP The body of the tag contains nested JSP&#xD;&#xA; syntax.&#xD;&#xA;&#xD;&#xA;empty The body must be empty&#xD;&#xA;&#xD;&#xA;scriptless The body accepts only template text, EL&#xD;&#xA; Expressions, and JSP action elements. No&#xD;&#xA; scripting elements are allowed.&#xD;&#xA;JSP=0&#xD;&#xA;empty=1&#xD;&#xA;tagdependent=2&#xD;&#xA;TAGDEPENDENT=3&#xD;&#xA;EMPTY=4&#xD;&#xA;scriptless=5&#xD;&#xA;SCRIPTLESS=6"/>
</eAnnotations>
<eLiterals name="tagdependent"/>
<eLiterals name="JSP" value="1"/>
<eLiterals name="empty" value="2"/>
<eLiterals name="scriptless" value="3"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Validator" eSuperTypes="common.ecore#//J2EEEObject">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The validator element provides information on an optional validator that can be used to validate the conformance of a JSP page to using this tag library.&#xD;&#xA;"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="validatorClass" eType="ecore:EClass ../../org.eclipse.jem/model/java.ecore#//JavaClass">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="defines the TagLibraryValidator class that can be&#xD;&#xA;used to validate the conformance of a JSP page to using this tag library."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="initParams" upperBound="-1"
eType="ecore:EClass webapplication.ecore#//InitParam" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="descriptions" upperBound="-1"
eType="ecore:EClass common.ecore#//Description" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="@version J2EE1.4"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="JSPVariable" eSuperTypes="common.ecore#//J2EEEObject">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="nameGiven" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The name-given element provides the name for the scripting variable.&#xD;&#xA;&#xD;&#xA;One of name-given or name-from-attribute is required."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="nameFromAttribute" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The name of an attribute whose (translation-time) value will give the name of the variable."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="declare" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The value of the declare element indicates whether the scripting variable is to be defined or not. See TagExtraInfo for details.&#xD;&#xA;This element is optional and is the default is true.&#xD;&#xA;"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="scope" eType="#//JSPScriptingVariableScope"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="variableClass" eType="ecore:EClass ../../org.eclipse.jem/model/java.ecore#//JavaClass"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="descriptions" upperBound="-1"
eType="ecore:EClass common.ecore#//Description" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="JSPScriptingVariableScope">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="NESTED=0&#xD;&#xA;AT_BEGIN=1&#xD;&#xA;AT_END=2"/>
</eAnnotations>
<eLiterals name="NESTED"/>
<eLiterals name="AT_BEGIN" value="1"/>
<eLiterals name="AT_END" value="2"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Function" eSuperTypes="common.ecore#//DescriptionGroup">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="@version J2EE1.4&#xD;&#xA;The function element is used to provide information on each&#xD;&#xA;function in the tag library that is to be exposed to the EL.&#xD;&#xA;&#xD;&#xA;The function element may have several subelements defining:&#xD;&#xA;&#xD;&#xA;description Optional tag-specific information&#xD;&#xA;&#xD;&#xA;display-name A short name that is intended to be&#xD;&#xA; displayed by tools&#xD;&#xA;&#xD;&#xA;icon Optional icon element that can be used&#xD;&#xA; by tools&#xD;&#xA;&#xD;&#xA;name A unique name for this function&#xD;&#xA;&#xD;&#xA;function-class Provides the name of the Java class that&#xD;&#xA; implements the function&#xD;&#xA;&#xD;&#xA;function-signature Provides the signature, as in the Java&#xD;&#xA; Language Specification, of the Java&#xD;&#xA; method that is to be used to implement&#xD;&#xA; the function.&#xD;&#xA;&#xD;&#xA;example Optional informal description of an&#xD;&#xA; example of a use of this function"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="signature" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Provides the signature, as in the Java Language&#xD;&#xA; Specification, of the static Java method that is&#xD;&#xA; to be used to implement the function.&#xD;&#xA;&#xD;&#xA; Example:&#xD;&#xA;&#xD;&#xA; java.lang.String nickName( java.lang.String, int )"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="example" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The example element contains an informal description&#xD;&#xA; of an example of the use of this function."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="functionClass" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.jem/model/java.ecore#//JavaClass">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Provides the fully-qualified class name of the Java&#xD;&#xA; class containing the static method that implements&#xD;&#xA; the function."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="functionExtensions" upperBound="-1"
eType="#//TldExtension" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TagFile" eSuperTypes="common.ecore#//DescriptionGroup">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="@version J2EE1.4&#xD;&#xA;Defines an action in this tag library that is implemented&#xD;&#xA;as a .tag file.&#xD;&#xA;&#xD;&#xA;The tag-file element has two required subelements:&#xD;&#xA;&#xD;&#xA;name The unique action name&#xD;&#xA;&#xD;&#xA;path Where to find the .tag file implementing this&#xD;&#xA; action, relative to the root of the web application or&#xD;&#xA;&#x9;the root of the JAR file for a tag library packaged in&#xD;&#xA;&#x9;a JAR. This must begin with /WEB-INF/tags if the .tag&#xD;&#xA;&#x9;file resides in the WAR, or /META-INF/tags if the .tag&#xD;&#xA;&#x9;file resides in a JAR."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="path" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="example" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="tagExtensions" upperBound="-1"
eType="#//TldExtension" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TldExtension" eSuperTypes="common.ecore#//J2EEEObject">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="namespace" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="extensionElements" lowerBound="1"
upperBound="-1" eType="#//ExtensibleType" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ExtensibleType" abstract="true" eSuperTypes="common.ecore#//J2EEEObject">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
</ecore:EPackage>