| XSL Dönüşümleri (XSLT) Sürüm 1.0 | ||
|---|---|---|
| Önceki | Yukarı | Sonraki |
Aşağıdaki öğe, belli bir hedef DTD'sinin nesnel sonucunu oluşturacak XSLT biçembentleri için bir DTD oluşturmakta kullanılabilir. Öğeye atıfta bulunmadan önce, biçembent DTD'si izin verilen hedef eleman türlerini listeleyen bir result-elements değergeç öğesi tanımlamalıdır. Örnek:
<!ENTITY % result-elements " | fo:inline-sequence | fo:block ">
Böyle hedef elemanları xsl:use-attribute-sets ve xsl:extension-element-prefixes özniteliklerine sahip olarak bildirilmelidir. Aşağıdaki öğe, result-element-atts değergecini bu amaçla bildirmektedir. XSLT'nin hedef elemanlar için izin verdiği içerik, %template; içerik modeliyle aşağıda öğede bildirilen XSLT elemanları için izin verilenlerle aynıdır. DTD, hedef DTD'nin kısıtlamalarına uygun olarak %template;'den daha kısıtlayıcı içerik modelleri kullanabilir.
XSLT isim-alanından farklı isim-alanlarındaki tepe-seviyeden elemanlara da izin vermek için DTD non-xsl-top-level diye bir değergeç öğesi tanımlayabilir.
Bu DTD'deki xsl: öneki kullanımı XSLT biçembentlerinin bu öneki kullanmaları zorunludur anlamında ele alınmamalıdır. Bu DTD'de bildirilmiş herhangi bir eleman, bu DTD'de bildirilmiş özniteliklere ek olarak isimleri xmlns'e eşit veya xmlns: ile başlayan özniteliklere sahip olabilir.
<!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;)*
">
<!-- Değeri bir tanım-yeri başvurusu olan
bir öznitelik türü için kullanılır. -->
<!ENTITY % URI "CDATA">
<!-- Değeri bir örüntü olan bir öznitelik türü için kullanılır. -->
<!ENTITY % pattern "CDATA">
<!-- Değeri bir öznitelik değeri örneklenimi
olan bir öznitelik türü için kullanılır. -->
<!ENTITY % avt "CDATA">
<!-- Değeri bir NitelAd olan bir öznitelik türü için kullanılır;
önek, XSLT işlemcinin yorumladığı bir önek olacaktır. -->
<!ENTITY % qname "NMTOKEN">
<!-- %qname; gibi ama bu onların boşluk ayraçlı bir listesi. -->
<!ENTITY % qnames "NMTOKENS">
<!-- Değeri bir ifade olan bir öznitelik türü için kullanılır. -->
<!ENTITY % expr "CDATA">
<!-- Değeri tek bir karakterden oluşan
bir öznitelik türü için kullanılır. -->
<!ENTITY % char "CDATA">
<!-- Değeri bir öncelik belirten bir
öznitelik türü için kullanılır. -->
<!ENTITY % priority "NMTOKEN">
<!ENTITY % space-att "xml:space (default|preserve) #IMPLIED">
<!-- Bu tepe-seviyede izin verilmiş eleman listesini
genişleten bir özelleştirme olabilir. -->
<!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;
'>
<!-- Bu öğe hedef elemanların ATTLIST bildirimlerinde
kullanmak için tanımlanmıştır. -->
<!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, bir boşluk olmayan karakterden
veya bir imlenimden sonra yer alamaz. -->
<!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;>
<!ATTLIST xsl:variable
name %qname; #REQUIRED
select %expr; #IMPLIED
>
<!ELEMENT xsl:param %template;>
<!ATTLIST xsl:param
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;>
<!ATTLIST xsl:processing-instruction
name %avt; #REQUIRED
%space-att;
>
<!ELEMENT xsl:element %template;>
<!ATTLIST xsl:element
name %avt; #REQUIRED
namespace %avt; #IMPLIED
use-attribute-sets %qnames; #IMPLIED
%space-att;
>
<!ELEMENT xsl:attribute %char-template;>
<!ATTLIST xsl:attribute
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;>| Önceki | Yukarı | Sonraki |
| Elemanların Özet Sözdizimleri | Bir Linux Kitaplığı Sayfası | Örnekler |