2006-08-19 23:20:54 +02:00
|
|
|
<!-- $FreeBSD$ -->
|
|
|
|
|
|
|
|
<!--
|
|
|
|
|
2012-08-21 21:16:02 +02:00
|
|
|
DTD fragment for XSLT 1.0 from http://www.w3.org/TR/1999/REC-xslt-19991116.
|
2006-08-19 23:20:54 +02:00
|
|
|
|
|
|
|
Note that this DTD cannot directly be used for validation because
|
|
|
|
DTD does not support XML namespace.
|
|
|
|
|
|
|
|
-->
|
|
|
|
|
|
|
|
<!--
|
|
|
|
|
|
|
|
W3C SOFTWARE NOTICE AND LICENSE
|
|
|
|
http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
|
|
|
|
|
|
|
|
This work (and included software, documentation such as READMEs, or other
|
|
|
|
related items) is being provided by the copyright holders under
|
|
|
|
the following license. By obtaining, using and/or copying this work,
|
|
|
|
you (the licensee) agree that you have read, understood, and will comply
|
|
|
|
with the following terms and conditions.
|
|
|
|
|
|
|
|
1. Permission to copy, modify, and distribute this software and its
|
|
|
|
documentation, with or without modification, for any purpose and
|
|
|
|
without fee or royalty is hereby granted, provided that you include
|
|
|
|
the following on ALL copies of the software and documentation or portions
|
|
|
|
thereof, including modifications:
|
|
|
|
|
|
|
|
2. The full text of this NOTICE in a location viewable to users of the
|
|
|
|
redistributed or derivative work. Any pre-existing intellectual property
|
|
|
|
disclaimers, notices, or terms and conditions. If none exist,
|
|
|
|
the W3C Software Short Notice should be included (hypertext is preferred,
|
2012-08-21 21:16:02 +02:00
|
|
|
text is permitted) within the body of any redistributed or derivative code.
|
2006-08-19 23:20:54 +02:00
|
|
|
|
|
|
|
3. Notice of any changes or modifications to the files, including the date
|
|
|
|
changes were made. (We recommend you provide URIs to the location from
|
|
|
|
which the code is derived.)
|
|
|
|
|
|
|
|
THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS
|
|
|
|
MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT
|
|
|
|
LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR
|
|
|
|
PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE
|
|
|
|
ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
|
|
|
|
|
|
|
|
COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
|
|
|
|
CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
|
|
|
|
|
|
|
|
The name and trademarks of copyright holders may NOT be used in advertising
|
|
|
|
or publicity pertaining to the software without specific, written prior
|
|
|
|
permission. Title to copyright in this software and any associated
|
|
|
|
documentation will at all times remain with copyright holders.
|
|
|
|
|
|
|
|
-->
|
|
|
|
|
|
|
|
<!ENTITY % result-elements "
|
|
|
|
">
|
|
|
|
|
|
|
|
<!ENTITY % char-instructions "
|
|
|
|
| xsl:apply-templates
|
|
|
|
| xsl:call-template
|
|
|
|
| xsl:apply-imports
|
|
|
|
| xsl:for-each
|
|
|
|
| xsl:value-of
|
|
|
|
| xsl:copy-of
|
|
|
|
| xsl:number
|
|
|
|
| xsl:choose
|
|
|
|
| xsl:if
|
|
|
|
| xsl:text
|
|
|
|
| xsl:copy
|
|
|
|
| xsl:variable
|
|
|
|
| xsl:message
|
|
|
|
| xsl:fallback
|
|
|
|
">
|
|
|
|
|
|
|
|
<!ENTITY % instructions "
|
|
|
|
%char-instructions;
|
|
|
|
| xsl:processing-instruction
|
|
|
|
| xsl:comment
|
|
|
|
| xsl:element
|
|
|
|
| xsl:attribute
|
|
|
|
">
|
|
|
|
|
|
|
|
<!ENTITY % char-template "
|
|
|
|
(#PCDATA
|
|
|
|
%char-instructions;)*
|
|
|
|
">
|
|
|
|
|
|
|
|
<!ENTITY % template "
|
|
|
|
(#PCDATA
|
|
|
|
%instructions;
|
|
|
|
%result-elements;)*
|
|
|
|
">
|
|
|
|
|
|
|
|
<!-- Used for the type of an attribute value that is a URI reference.-->
|
|
|
|
<!ENTITY % URI "CDATA">
|
|
|
|
|
|
|
|
<!-- Used for the type of an attribute value that is a pattern.-->
|
|
|
|
<!ENTITY % pattern "CDATA">
|
|
|
|
|
|
|
|
<!-- Used for the type of an attribute value that is an
|
|
|
|
attribute value template.-->
|
|
|
|
<!ENTITY % avt "CDATA">
|
|
|
|
|
|
|
|
<!-- Used for the type of an attribute value that is a QName; the prefix
|
|
|
|
gets expanded by the XSLT processor. -->
|
|
|
|
<!ENTITY % qname "NMTOKEN">
|
|
|
|
|
|
|
|
<!-- Like qname but a whitespace-separated list of QNames. -->
|
|
|
|
<!ENTITY % qnames "NMTOKENS">
|
|
|
|
|
|
|
|
<!-- Used for the type of an attribute value that is an expression.-->
|
|
|
|
<!ENTITY % expr "CDATA">
|
|
|
|
|
|
|
|
<!-- Used for the type of an attribute value that consists
|
|
|
|
of a single character.-->
|
|
|
|
<!ENTITY % char "CDATA">
|
|
|
|
|
|
|
|
<!-- Used for the type of an attribute value that is a priority. -->
|
|
|
|
<!ENTITY % priority "NMTOKEN">
|
|
|
|
|
|
|
|
<!ENTITY % space-att "xml:space (default|preserve) #IMPLIED">
|
|
|
|
|
|
|
|
<!-- This may be overridden to customize the set of elements allowed
|
|
|
|
at the top-level. -->
|
|
|
|
|
|
|
|
<!ENTITY % non-xsl-top-level "">
|
|
|
|
|
|
|
|
<!ENTITY % top-level "
|
|
|
|
(xsl:import*,
|
|
|
|
(xsl:include
|
|
|
|
| xsl:strip-space
|
|
|
|
| xsl:preserve-space
|
|
|
|
| xsl:output
|
|
|
|
| xsl:key
|
|
|
|
| xsl:decimal-format
|
|
|
|
| xsl:attribute-set
|
|
|
|
| xsl:variable
|
|
|
|
| xsl:param
|
|
|
|
| xsl:template
|
|
|
|
| xsl:namespace-alias
|
|
|
|
%non-xsl-top-level;)*)
|
|
|
|
">
|
|
|
|
|
|
|
|
<!ENTITY % top-level-atts '
|
|
|
|
extension-element-prefixes CDATA #IMPLIED
|
|
|
|
exclude-result-prefixes CDATA #IMPLIED
|
|
|
|
id ID #IMPLIED
|
|
|
|
version NMTOKEN #REQUIRED
|
|
|
|
xmlns:xsl CDATA #FIXED "http://www.w3.org/1999/XSL/Transform"
|
|
|
|
%space-att;
|
|
|
|
'>
|
|
|
|
|
|
|
|
<!-- This entity is defined for use in the ATTLIST declaration
|
|
|
|
for result elements. -->
|
|
|
|
|
|
|
|
<!ENTITY % result-element-atts '
|
|
|
|
xsl:extension-element-prefixes CDATA #IMPLIED
|
|
|
|
xsl:exclude-result-prefixes CDATA #IMPLIED
|
|
|
|
xsl:use-attribute-sets %qnames; #IMPLIED
|
|
|
|
xsl:version NMTOKEN #IMPLIED
|
|
|
|
'>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:stylesheet %top-level;>
|
|
|
|
<!ATTLIST xsl:stylesheet %top-level-atts;>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:transform %top-level;>
|
|
|
|
<!ATTLIST xsl:transform %top-level-atts;>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:import EMPTY>
|
|
|
|
<!ATTLIST xsl:import href %URI; #REQUIRED>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:include EMPTY>
|
|
|
|
<!ATTLIST xsl:include href %URI; #REQUIRED>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:strip-space EMPTY>
|
|
|
|
<!ATTLIST xsl:strip-space elements CDATA #REQUIRED>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:preserve-space EMPTY>
|
|
|
|
<!ATTLIST xsl:preserve-space elements CDATA #REQUIRED>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:output EMPTY>
|
|
|
|
<!ATTLIST xsl:output
|
|
|
|
method %qname; #IMPLIED
|
|
|
|
version NMTOKEN #IMPLIED
|
|
|
|
encoding CDATA #IMPLIED
|
|
|
|
omit-xml-declaration (yes|no) #IMPLIED
|
|
|
|
standalone (yes|no) #IMPLIED
|
|
|
|
doctype-public CDATA #IMPLIED
|
|
|
|
doctype-system CDATA #IMPLIED
|
|
|
|
cdata-section-elements %qnames; #IMPLIED
|
|
|
|
indent (yes|no) #IMPLIED
|
|
|
|
media-type CDATA #IMPLIED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:key EMPTY>
|
|
|
|
<!ATTLIST xsl:key
|
|
|
|
name %qname; #REQUIRED
|
|
|
|
match %pattern; #REQUIRED
|
|
|
|
use %expr; #REQUIRED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:decimal-format EMPTY>
|
|
|
|
<!ATTLIST xsl:decimal-format
|
|
|
|
name %qname; #IMPLIED
|
|
|
|
decimal-separator %char; "."
|
|
|
|
grouping-separator %char; ","
|
|
|
|
infinity CDATA "Infinity"
|
|
|
|
minus-sign %char; "-"
|
|
|
|
NaN CDATA "NaN"
|
|
|
|
percent %char; "%"
|
|
|
|
per-mille %char; "‰"
|
|
|
|
zero-digit %char; "0"
|
|
|
|
digit %char; "#"
|
|
|
|
pattern-separator %char; ";"
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:namespace-alias EMPTY>
|
|
|
|
<!ATTLIST xsl:namespace-alias
|
|
|
|
stylesheet-prefix CDATA #REQUIRED
|
|
|
|
result-prefix CDATA #REQUIRED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:template
|
|
|
|
(#PCDATA
|
|
|
|
%instructions;
|
|
|
|
%result-elements;
|
|
|
|
| xsl:param)*
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ATTLIST xsl:template
|
|
|
|
match %pattern; #IMPLIED
|
|
|
|
name %qname; #IMPLIED
|
|
|
|
priority %priority; #IMPLIED
|
|
|
|
mode %qname; #IMPLIED
|
|
|
|
%space-att;
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:value-of EMPTY>
|
|
|
|
<!ATTLIST xsl:value-of
|
|
|
|
select %expr; #REQUIRED
|
|
|
|
disable-output-escaping (yes|no) "no"
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:copy-of EMPTY>
|
|
|
|
<!ATTLIST xsl:copy-of select %expr; #REQUIRED>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:number EMPTY>
|
|
|
|
<!ATTLIST xsl:number
|
|
|
|
level (single|multiple|any) "single"
|
|
|
|
count %pattern; #IMPLIED
|
|
|
|
from %pattern; #IMPLIED
|
|
|
|
value %expr; #IMPLIED
|
|
|
|
format %avt; '1'
|
|
|
|
lang %avt; #IMPLIED
|
|
|
|
letter-value %avt; #IMPLIED
|
|
|
|
grouping-separator %avt; #IMPLIED
|
|
|
|
grouping-size %avt; #IMPLIED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:apply-templates (xsl:sort|xsl:with-param)*>
|
|
|
|
<!ATTLIST xsl:apply-templates
|
|
|
|
select %expr; "node()"
|
|
|
|
mode %qname; #IMPLIED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:apply-imports EMPTY>
|
|
|
|
|
|
|
|
<!-- xsl:sort cannot occur after any other elements or
|
|
|
|
any non-whitespace character -->
|
|
|
|
|
|
|
|
<!ELEMENT xsl:for-each
|
|
|
|
(#PCDATA
|
|
|
|
%instructions;
|
|
|
|
%result-elements;
|
|
|
|
| xsl:sort)*
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ATTLIST xsl:for-each
|
|
|
|
select %expr; #REQUIRED
|
|
|
|
%space-att;
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:sort EMPTY>
|
|
|
|
<!ATTLIST xsl:sort
|
|
|
|
select %expr; "."
|
|
|
|
lang %avt; #IMPLIED
|
|
|
|
data-type %avt; "text"
|
|
|
|
order %avt; "ascending"
|
|
|
|
case-order %avt; #IMPLIED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:if %template;>
|
|
|
|
<!ATTLIST xsl:if
|
|
|
|
test %expr; #REQUIRED
|
|
|
|
%space-att;
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:choose (xsl:when+, xsl:otherwise?)>
|
|
|
|
<!ATTLIST xsl:choose %space-att;>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:when %template;>
|
|
|
|
<!ATTLIST xsl:when
|
|
|
|
test %expr; #REQUIRED
|
|
|
|
%space-att;
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:otherwise %template;>
|
|
|
|
<!ATTLIST xsl:otherwise %space-att;>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:attribute-set (xsl:attribute)*>
|
|
|
|
<!ATTLIST xsl:attribute-set
|
|
|
|
name %qname; #REQUIRED
|
|
|
|
use-attribute-sets %qnames; #IMPLIED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:call-template (xsl:with-param)*>
|
|
|
|
<!ATTLIST xsl:call-template
|
|
|
|
name %qname; #REQUIRED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:with-param %template;>
|
|
|
|
<!ATTLIST xsl:with-param
|
|
|
|
name %qname; #REQUIRED
|
|
|
|
select %expr; #IMPLIED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:variable %template;>
|
2012-08-21 21:16:02 +02:00
|
|
|
<!ATTLIST xsl:variable
|
2006-08-19 23:20:54 +02:00
|
|
|
name %qname; #REQUIRED
|
|
|
|
select %expr; #IMPLIED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:param %template;>
|
2012-08-21 21:16:02 +02:00
|
|
|
<!ATTLIST xsl:param
|
2006-08-19 23:20:54 +02:00
|
|
|
name %qname; #REQUIRED
|
|
|
|
select %expr; #IMPLIED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:text (#PCDATA)>
|
|
|
|
<!ATTLIST xsl:text
|
|
|
|
disable-output-escaping (yes|no) "no"
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:processing-instruction %char-template;>
|
2012-08-21 21:16:02 +02:00
|
|
|
<!ATTLIST xsl:processing-instruction
|
2006-08-19 23:20:54 +02:00
|
|
|
name %avt; #REQUIRED
|
|
|
|
%space-att;
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:element %template;>
|
2012-08-21 21:16:02 +02:00
|
|
|
<!ATTLIST xsl:element
|
2006-08-19 23:20:54 +02:00
|
|
|
name %avt; #REQUIRED
|
|
|
|
namespace %avt; #IMPLIED
|
|
|
|
use-attribute-sets %qnames; #IMPLIED
|
|
|
|
%space-att;
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:attribute %char-template;>
|
2012-08-21 21:16:02 +02:00
|
|
|
<!ATTLIST xsl:attribute
|
2006-08-19 23:20:54 +02:00
|
|
|
name %avt; #REQUIRED
|
|
|
|
namespace %avt; #IMPLIED
|
|
|
|
%space-att;
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:comment %char-template;>
|
|
|
|
<!ATTLIST xsl:comment %space-att;>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:copy %template;>
|
|
|
|
<!ATTLIST xsl:copy
|
|
|
|
%space-att;
|
|
|
|
use-attribute-sets %qnames; #IMPLIED
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:message %template;>
|
|
|
|
<!ATTLIST xsl:message
|
|
|
|
%space-att;
|
|
|
|
terminate (yes|no) "no"
|
|
|
|
>
|
|
|
|
|
|
|
|
<!ELEMENT xsl:fallback %template;>
|
|
|
|
<!ATTLIST xsl:fallback %space-att;>
|
|
|
|
|