| <?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:

description a simple string describing the "use" of this taglib,
 should be user discernable

display-name the display-name element contains a
 short name that is intended to be displayed
 by tools

icon optional icon that can be used by tools

tlib-version the version of the tag library implementation

short-name a simple default short name that could be
 used by a JSP authoring tool to create
 names with a mnemonic value; for example,
 the it may be used as the prefered prefix
 value in taglib directives

uri a uri uniquely identifying this taglib

validator optional TagLibraryValidator information

listener optional event listener specification

tag one or more tags in the tag library

tag-file one or more tag files in the tag library

function zero or more EL functions defined in this
 tag library

taglib-extension zero or more extensions that provide extra
		information about this taglib, for tool
		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).
@regexp [0-9]*{ "."[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
@regexp [0-9]*{ "."[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.
"/> |
| </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.
The tag element may have several subelements defining:
name -- The unique action name
tag-class -- The tag handler class implementing javax.servlet.jsp.tagext.Tag
tei-class -- An optional subclass of javax.servlet.jsp.tagext.TagExtraInfo
body-content -- The body content type
display-name -- A short name that is intended to be displayed by tools
small-icon -- Optional small-icon that can be used by tools
large-icon -- Optional large-icon that can be used by tools
description -- Optional tag-specific information
variable -- Optional scripting variable information
attribute -- All attributes of this action
example -- Optional informal description of an example of a use of this action.
"/> |
| </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:

tagdependent - The body of the tag is interpreted by the tag implementation itself, and is most likely in a		different "langage", e.g embedded SQL statements.

JSP - The body of the tag contains nested JSP syntax

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.
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.
The subelements of variable are of the form:
name-given -- The variable name as a constant
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.
variable-class -- Name of the class of the variable. java.lang.String is default.
declare -- Whether the variable is declared or not. True is the default.
scope -- The scope of the scripting variable defined. NESTED is default.
"/> |
| </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.
@regexp fully qualified Java class name
"/> |
| </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.
@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)
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.
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
Provides a hint as to the content of the body of this tag.
Primarily intended for use by page composition tools.

There are currently four values specified:

tagdependent The body of the tag is interpreted by the tag
 implementation itself, and is most likely
 in a different "langage", e.g embedded SQL
 statements.

JSP The body of the tag contains nested JSP
 syntax.

empty The body must be empty

scriptless The body accepts only template text, EL
 Expressions, and JSP action elements. No
 scripting elements are allowed.
JSP=0
empty=1
tagdependent=2
TAGDEPENDENT=3
EMPTY=4
scriptless=5
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.
"/> |
| </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
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.

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.
This element is optional and is the default is true.
"/> |
| </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
AT_BEGIN=1
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
The function element is used to provide information on each
function in the tag library that is to be exposed to the EL.

The function element may have several subelements defining:

description Optional tag-specific information

display-name A short name that is intended to be
 displayed by tools

icon Optional icon element that can be used
 by tools

name A unique name for this function

function-class Provides the name of the Java class that
 implements the function

function-signature Provides the signature, as in the Java
 Language Specification, of the Java
 method that is to be used to implement
 the function.

example Optional informal description of an
 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
 Specification, of the static Java method that is
 to be used to implement the function.

 Example:

 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
 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
 class containing the static method that implements
 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
Defines an action in this tag library that is implemented
as a .tag file.

The tag-file element has two required subelements:

name The unique action name

path Where to find the .tag file implementing this
 action, relative to the root of the web application or
	the root of the JAR file for a tag library packaged in
	a JAR. This must begin with /WEB-INF/tags if the .tag
	file resides in the WAR, or /META-INF/tags if the .tag
	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> |