web-jsptaglibrary_1_2.dtd
: Elements - Entities - Source | Intro - Index
FRAMES / NO FRAMES
<!-- This is the DTD defining the JavaServer Pages 1.2 Tag Library descriptor (.tld) (XML) file format/syntax. A Tag Library is a JAR file containing a valid instance of a Tag Library Descriptor (taglib.tld) file in the META-INF subdirectory, along with the appropriate implementing classes, and other resources required to implement the tags defined therein. Use is subject to license terms. --> <!NOTATION WEB-JSPTAGLIB.1_2 PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"> <!-- This is the XML DTD for the JSP 1.2 Tag Library Descriptor. All JSP 1.2 tag library descriptors must include a DOCTYPE of the following form: <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd"> --> <!-- The taglib tag is the document root, it defines: tlib-version the version of the tag library implementation jsp-version the version of JSP the tag library depends upon 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 display-name the display-name element contains 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 a simple string describing the "use" of this taglib, should be user discernable validator optional TagLibraryValidator information listener optional event listener specification --> <!ELEMENT taglib (tlib-version, jsp-version, short-name, uri?, display-name?, small-icon?, large-icon?, description?, validator?, listener*, tag+) > <!ATTLIST taglib id ID #IMPLIED xmlns CDATA #FIXED "http://java.sun.com/JSP/TagLibraryDescriptor" > <!-- Describes this version (number) of the taglibrary (dewey decimal) #PCDATA ::= [0-9]*{ "."[0-9] }0..3 --> <!ELEMENT tlib-version (#PCDATA) > <!-- Describes the JSP version (number) this taglibrary requires in order to function (dewey decimal) The default is 1.2 #PCDATA ::= [0-9]*{ "."[0-9] }0..3 --> <!ELEMENT jsp-version (#PCDATA) > <!-- Defines a short (default) short-name to be used for tags and variable names used/created by this tag library. Do not use white space, and do not start with digits or underscore. #PCDATA ::= NMTOKEN --> <!ELEMENT short-name (#PCDATA) > <!-- Defines a public URI that uniquely identifies this version of the taglibrary. Leave it empty if it does not apply. --> <!ELEMENT uri (#PCDATA) > <!-- Defines an arbitrary text string descirbing the tag library --> <!ELEMENT description (#PCDATA) > <!-- Defines an optional validator that can be used to validate the conformance of a JSP page to using this tag library. --> <!ELEMENT validator (validator-class, init-param*, description?) > <!-- Defines the TagLibraryValidator class that can be used to validate the conformance of a JSP page to using this tag library. --> <!ELEMENT validator-class (#PCDATA) > <!-- The init-param element contains a name/value pair as an initialization param --> <!ELEMENT init-param (param-name, param-value, description?)> <!-- The param-name element contains the name of a parameter. --> <!ELEMENT param-name (#PCDATA)> <!-- The param-value element contains the value of a parameter. --> <!ELEMENT param-value (#PCDATA)> <!-- Defines an optional event listener object to be instantiated and registered automatically. --> <!ELEMENT listener (listener-class) > <!-- The listener-class element declares a class in the application that must be registered as a web application listener bean. See the Servlet 2.3 specification for details. --> <!ELEMENT listener-class (#PCDATA) > <!-- The tag defines a unique tag in this tag library. It 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 tag --> <!ELEMENT tag (name, tag-class, tei-class?, body-content?, display-name?, small-icon?, large-icon?, description?, variable*, attribute*, example?) > <!-- Defines the subclass of javax.serlvet.jsp.tagext.Tag that implements the request time semantics for this tag. (required) #PCDATA ::= fully qualified Java class name --> <!ELEMENT tag-class (#PCDATA) > <!-- Defines the subclass of javax.servlet.jsp.tagext.TagExtraInfo for this tag. (optional) If this is not given, the class is not consulted at translation time. #PCDATA ::= fully qualified Java class name --> <!ELEMENT tei-class (#PCDATA) > <!-- 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 empty The default (if not defined) is JSP #PCDATA ::= tagdependent | JSP | empty --> <!ELEMENT body-content (#PCDATA) > <!-- The display-name element contains a short name that is intended to be displayed by tools. --> <!ELEMENT display-name (#PCDATA) > <!-- The large-icon element contains the name of a file containing a large (32 x 32) icon image. The file name is a relative path within the tag library. The image must be either in the JPEG or GIF format, and the file name must end with the suffix ".jpg" or ".gif" respectively. The icon can be used by tools. --> <!ELEMENT large-icon (#PCDATA) > <!-- The small-icon element contains the name of a file containing a large (32 x 32) icon image. The file name is a relative path within the tag library. The image must be either in the JPEG or GIF format, and the file name must end with the suffix ".jpg" or ".gif" respectively. The icon can be used by tools. --> <!ELEMENT small-icon (#PCDATA) > <!-- The example element contains an informal description of an example of the use of a tag. --> <!ELEMENT example (#PCDATA) > <!-- The variable tag provides information on the scripting variables defined by this tag. It is a (translation time) error for a tag 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 name-from-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 varaible defined. NESTED is default. description Optional description of this variable --> <!ELEMENT variable ( (name-given | name-from-attribute), variable-class?, declare?, scope?, description?) > <!-- The name for the scripting variable. One of name-given or name-from-attribute is required. --> <!ELEMENT name-given (#PCDATA) > <!-- The name of an attribute whose (translation-time) value will give the name of the variable. One of name-given or name-from-attribute is required. --> <!ELEMENT name-from-attribute (#PCDATA) > <!-- The optional name of the class for the scripting variable. The default is java.lang.String. --> <!ELEMENT variable-class (#PCDATA) > <!-- Whether the scripting variable is to be defined or not. See TagExtraInfo for details. This element is optional and "true" is the default. --> <!ELEMENT declare (#PCDATA) > <!-- The scope of the scripting variable. See TagExtraInfo for details. The element is optional and "NESTED" is the default. Other legal values are "AT_BEGIN" and "AT_END". --> <!ELEMENT scope (#PCDATA) > <!-- The attribute tag defines an attribute for the nesting tag An attribute definition is composed of: - the attributes name (required) - if the attribute is required or optional (optional) - if the attributes value may be dynamically calculated at runtime by a scriptlet expression (optional) - the type of the attributes value (optional) - an informal description of the meaning of the attribute (optional) --> <!-- The attribute tag defines an attribute for the nesting tag An attribute definition is composed of: - the attributes name (required) - if the attribute is required or optional (optional) - if the attributes value may be dynamically calculated at runtime by a scriptlet expression (optional) - the type of the attributes value (optional) - an informal description of the meaning of the attribute (optional) --> <!ELEMENT attribute (name, required? , rtexprvalue?, type?, description?) > <!-- Defines the canonical name of a tag or attribute being defined #PCDATA ::= NMTOKEN --> <!ELEMENT name (#PCDATA) > <!-- Defines if the nesting attribute is required or optional. #PCDATA ::= true | false | yes | no If not present then the default is "false", i.e the attribute is optional. --> <!ELEMENT required (#PCDATA) > <!-- Defines if the nesting attribute can have scriptlet expressions as a value, i.e the value of the attribute may be dynamically calculated at request time, as opposed to a static value determined at translation time. #PCDATA ::= true | false | yes | no If not present then the default is "false", i.e the attribute has a static value --> <!ELEMENT rtexprvalue (#PCDATA) > <!-- Defines the Java type of the attributes value. For static values (those determined at translation time) the type is always java.lang.String. --> <!ELEMENT type (#PCDATA) > <!-- ID attributes --> <!ATTLIST tlib-version id ID #IMPLIED> <!ATTLIST jsp-version id ID #IMPLIED> <!ATTLIST short-name id ID #IMPLIED> <!ATTLIST uri id ID #IMPLIED> <!ATTLIST description id ID #IMPLIED> <!ATTLIST example id ID #IMPLIED> <!ATTLIST tag id ID #IMPLIED> <!ATTLIST tag-class id ID #IMPLIED> <!ATTLIST tei-class id ID #IMPLIED> <!ATTLIST body-content id ID #IMPLIED> <!ATTLIST attribute id ID #IMPLIED> <!ATTLIST name id ID #IMPLIED> <!ATTLIST required id ID #IMPLIED> <!ATTLIST rtexprvalue id ID #IMPLIED> <!ATTLIST param-name id ID #IMPLIED> <!ATTLIST param-value id ID #IMPLIED> <!ATTLIST listener id ID #IMPLIED> <!ATTLIST listener-class id ID #IMPLIED>