<!-- DTD (non-normative) for the W3C XML Processing Model language This is DTD version $Id: xproc.dtd,v 1.1 2010/05/11 13:38:08 bertails Exp $ Minimal provision is made for user-defined steps - Users may override the definition of the parameter entity user-steps and step-option-attrs - see below. The parameter entity user-global-attrs is available as a convenience. Minimal provision is made for extension elements and attributes - users may override the definitions of the parameter entities info-model and extra-attrs. info-model must be a complete content model, e.g. "(mystuff)*", and only allows extensions within p:pipeinfo Likewise, for documentation, p and div are pre-allowed, others can be added via the entity doc-elts Finally, for inline data, users must override the definition of the user-data parameter entity with a complete content model --> <!ENTITY % p 'p:'> <!-- can be overriden in the internal subset of a schema document to establish a different namespace prefix --> <!ENTITY % s ':p'> <!-- if %p is defined (e.g. as foo:) then you must also define %s as the suffix for the appropriate namespace declaration (e.g. :foo) --> <!ENTITY % nds 'xmlns%s;'> <!ENTITY % pipeline "%p;pipeline"> <!ENTITY % for-each "%p;for-each"> <!ENTITY % viewport "%p;viewport"> <!ENTITY % choose "%p;choose"> <!ENTITY % xpath-context "%p;xpath-context"> <!ENTITY % when "%p;when"> <!ENTITY % otherwise "%p;otherwise"> <!ENTITY % group "%p;group"> <!ENTITY % try "%p;try"> <!ENTITY % catch "%p;catch"> <!ENTITY % input "%p;input"> <!ENTITY % iteration-source "%p;iteration-source"> <!ENTITY % viewport-source "%p;viewport-source"> <!ENTITY % output "%p;output"> <!ENTITY % log "%p;log"> <!ENTITY % serialization "%p;serialization"> <!ENTITY % variable "%p;variable"> <!ENTITY % option "%p;option"> <!ENTITY % with-option "%p;with-option"> <!ENTITY % with-param "%p;with-param"> <!ENTITY % namespaces "%p;namespaces"> <!ENTITY % declare-step "%p;declare-step"> <!ENTITY % library "%p;library"> <!ENTITY % import "%p;import"> <!ENTITY % pipe "%p;pipe"> <!ENTITY % inline "%p;inline"> <!ENTITY % document "%p;document"> <!ENTITY % data "%p;data"> <!ENTITY % empty "%p;empty"> <!ENTITY % documentation "%p;documentation"> <!ENTITY % pipeinfo "%p;pipeinfo"> <!ENTITY % user-steps ""> <!ENTITY % user-data "EMPTY"> <!ENTITY % step-option-attrs ""> <!ENTITY % extra-attrs ""> <!ENTITY % info-model "EMPTY"> <!ENTITY % doc-elts ""> <!ENTITY % add-attribute "%p;add-attribute"> <!ENTITY % add-xml-base "%p;add-xml-base"> <!ENTITY % compare "%p;compare"> <!ENTITY % count "%p;count"> <!ENTITY % delete "%p;delete"> <!ENTITY % directory-list "%p;directory-list"> <!ENTITY % error "%p;error"> <!ENTITY % escape-markup "%p;escape-markup"> <!ENTITY % filter "%p;filter"> <!ENTITY % http-request "%p;http-request"> <!ENTITY % identity "%p;identity"> <!ENTITY % insert "%p;insert"> <!ENTITY % label-elements "%p;label-elements"> <!ENTITY % load "%p;load"> <!ENTITY % make-absolute-uris "%p;make-absolute-uris"> <!ENTITY % namespace-rename "%p;namespace-rename"> <!ENTITY % pack "%p;pack"> <!ENTITY % parameters "%p;parameters"> <!ENTITY % rename "%p;rename"> <!ENTITY % replace "%p;replace"> <!ENTITY % set-attributes "%p;set-attributes"> <!ENTITY % sink "%p;sink"> <!ENTITY % split-sequence "%p;split-sequence"> <!ENTITY % store "%p;store"> <!ENTITY % string-replace "%p;string-replace"> <!ENTITY % unescape-markup "%p;unescape-markup"> <!ENTITY % unwrap "%p;unwrap"> <!ENTITY % wrap "%p;wrap"> <!ENTITY % wrap-sequence "%p;wrap-sequence"> <!ENTITY % xinclude "%p;xinclude"> <!ENTITY % xslt "%p;xslt"> <!ENTITY % exec "%p;exec"> <!ENTITY % hash "%p;hash"> <!ENTITY % uuid "%p;uuid"> <!ENTITY % validate-with-relax-ng "%p;validate-with-relax-ng"> <!ENTITY % validate-with-schematron "%p;validate-with-schematron"> <!ENTITY % validate-with-xml-schema "%p;validate-with-xml-schema"> <!ENTITY % www-form-urldecode "%p;www-form-urldecode"> <!ENTITY % www-form-urlencode "%p;www-form-urlencode"> <!ENTITY % xquery "%p;xquery"> <!ENTITY % xsl-formatter "%p;xsl-formatter"> <!ENTITY % step "(%add-attribute;|%add-xml-base;|%compare;| %count;|%delete;|%directory-list;|%error;| %escape-markup;|%filter;|%http-request;|%identity;| %insert;|%label-elements;|%load;|%make-absolute-uris;| %namespace-rename;|%pack;|%parameters;|%rename;| %replace;|%set-attributes;|%sink;|%split-sequence;| %store;|%string-replace;|%unescape-markup;|%unwrap;| %wrap;|%wrap-sequence;|%xinclude;|%xslt;| %exec;|%hash;|%uuid;|%validate-with-relax-ng;| %validate-with-schematron;|%validate-with-xml-schema;|%www-form-urldecode;|%www-form-urlencode;| %xquery;|%xsl-formatter; %user-steps;)"> <!ENTITY % annotation "%documentation;|%pipeinfo;"> <!ENTITY % component "(%for-each;|%viewport;|%choose;|%group;|%try;|%step;)"> <!ENTITY % subpipeline "((%variable; , (%annotation;)* )*, (%component; , ( %annotation;)* )+ )"> <!ENTITY % seqConnection "((%annotation;)*, ( ( %empty;,(%annotation;)* ) | ( (%data;|%document;|%pipe;|%inline;), (%annotation;)* )* ))"> <!ENTITY % oneConnection "((%annotation;)*, (%empty;|%document;|%pipe;|%inline;|%data;), (%annotation;)*)"> <!ENTITY % oneReqConnection "((%annotation;)*, (%document;|%pipe;|%inline;|%data;), (%annotation;)*)"> <!ENTITY % optConnection "((%annotation;|%namespaces;)*, ((%empty;|%document;|%pipe;|%inline;|%data;), (%annotation;|%namespaces;)*)?)"> <!ENTITY % NCName "NMTOKEN"> <!ENTITY % QName "NMTOKEN"> <!ENTITY % URIref "CDATA"> <!ENTITY % XPath_expression "CDATA"> <!ENTITY % XSLT_match_pattern "CDATA"> <!ENTITY % regexp "CDATA"> <!ENTITY % port_name "%NCName;"> <!ENTITY % step_name "%NCName;"> <!ENTITY % string "CDATA"> <!ENTITY % integer "NMTOKEN"> <!ENTITY % boolean "(true|false|0|1)"> <!ENTITY % global-attrs "xml:id NMTOKEN #IMPLIED xml:base %URIref; #IMPLIED use-when %XPath_expression; #IMPLIED %extra-attrs;" > <!-- For use on user-defined steps - - only works if xproc namespace has explict prefix!!! --> <!ENTITY % user-global-attrs "xml:id NMTOKEN #IMPLIED xml:base %URIref; #IMPLIED %p;use-when %XPath_expression; #IMPLIED %extra-attrs;" > <!ENTITY % top-attrs "exclude-inline-prefixes CDATA #IMPLIED version CDATA #IMPLIED xpath-version CDATA #IMPLIED psvi-required %boolean; #IMPLIED"> <!ENTITY % step-model "((%input;)| (%log;) | (%with-option;) | (%with-param;) | (%annotation;))*"> <!ENTITY % step-attrs "name %NCName; #IMPLIED %global-attrs; %step-option-attrs;" > <!ENTITY % declProlog1 "((%input;) | (%output;) | (%option;) | (%log;) | (%serialization;) | (%annotation;))*"> <!ENTITY % declProlog2 " ( ( (%import;) | (%declare-step;) | (%pipeline;) ), (%annotation;)* )*"> <!ELEMENT %pipeline; (%declProlog1;, %declProlog2;, %subpipeline;)> <!ATTLIST %pipeline; name %NCName; #IMPLIED type %QName; #IMPLIED %top-attrs; %global-attrs; %nds; %URIref; #IMPLIED > <!ELEMENT %for-each; ((%annotation;)*, (%iteration-source;,(%annotation;)*)?, (((%output;) | (%log;)), (%annotation;)*)*, %subpipeline;)> <!ATTLIST %for-each; %global-attrs; name %NCName; #IMPLIED > <!ELEMENT %viewport; ((%annotation;)*, (%viewport-source;,(%annotation;)*)?, (%output;,(%annotation;)*)?, (%log;,(%annotation;)*)?, %subpipeline;)> <!ATTLIST %viewport; %global-attrs; name %NCName; #IMPLIED match %XSLT_match_pattern; #REQUIRED > <!ELEMENT %choose; ((%annotation;)*, (%xpath-context;,(%annotation;)*)?, ( %variable; ,(%annotation;)*)*, ( %when; ,((%when;) | (%annotation;))*)?, ( %otherwise;, (%annotation;)*)?)> <!ATTLIST %choose; %global-attrs; name %NCName; #IMPLIED > <!ELEMENT %xpath-context; (%oneConnection;)> <!ATTLIST %xpath-context; %global-attrs;> <!ELEMENT %when; ((%annotation;)*, (%xpath-context;,(%annotation;)*)?, (((%output;) | (%log;)), (%annotation;)* )?, %subpipeline;)> <!ATTLIST %when; %global-attrs; test %XPath_expression; #REQUIRED > <!ELEMENT %otherwise; (((%output;) | (%log;) | (%annotation;) )*, %subpipeline;)> <!ATTLIST %otherwise; %global-attrs; > <!ELEMENT %group; (((%output;) | (%log;) | (%annotation;) )*, %subpipeline;)> <!ATTLIST %group; %global-attrs; name %NCName; #IMPLIED > <!ELEMENT %try; ((%variable;|%annotation;)*, %group;, (%annotation;)*, %catch;, (%annotation;)*)> <!ATTLIST %try; %global-attrs; name %NCName; #IMPLIED > <!ELEMENT %catch; (((%output;) | (%log;) | (%annotation;) )*, %subpipeline;)> <!ATTLIST %catch; %global-attrs; > <!-- this is provided solely for the use of user-defined compound steps, which don't really have a place at all --> <!ENTITY % compound-step-model "(((%input;) | (%output;) | (%log;) | (%annotation;))*, %subpipeline;)"> <!ELEMENT %input; (%seqConnection;)> <!ATTLIST %input; %global-attrs; port %NCName; #REQUIRED sequence %boolean; #IMPLIED primary %boolean; #IMPLIED kind (document|parameter) #IMPLIED select %XPath_expression; #IMPLIED> <!ELEMENT %iteration-source; (%seqConnection;)> <!ATTLIST %iteration-source; %global-attrs; select %XPath_expression; #IMPLIED> <!ELEMENT %viewport-source; (%oneReqConnection;)?> <!ATTLIST %viewport-source; %global-attrs;> <!ELEMENT %output; (%seqConnection;)> <!ATTLIST %output; %global-attrs; port %NCName; #REQUIRED sequence %boolean; #IMPLIED primary %boolean; #IMPLIED> <!ELEMENT %log; (%annotation;)*> <!ATTLIST %log; %global-attrs; port %NCName; #REQUIRED href %URIref; #IMPLIED> <!ELEMENT %serialization; (%annotation;)*> <!ATTLIST %serialization; %global-attrs; port %NCName; #REQUIRED byte-order-mark %boolean; #IMPLIED cdata-section-elements NMTOKENS #IMPLIED doctype-public CDATA #IMPLIED doctype-system %URIref; #IMPLIED encoding NMTOKEN #IMPLIED escape-uri-attributes %boolean; #IMPLIED include-content-type %boolean; #IMPLIED indent %boolean; #IMPLIED media-type CDATA #IMPLIED method %QName; #IMPLIED normalization-form NMTOKEN #IMPLIED omit-xml-declaration %boolean; #IMPLIED standalone (true|false|omit) #IMPLIED undeclare-prefixes %boolean; #IMPLIED version CDATA #IMPLIED> <!-- normalization-form: NFC|NFD|NFKC|NFKD|fully-normalized|none|impl-def. . . --> <!ELEMENT %variable; (%optConnection;)> <!ATTLIST %variable; %global-attrs; name %QName; #REQUIRED select %XPath_expression; #REQUIRED> <!ELEMENT %option; (%annotation;)*> <!ATTLIST %option; %global-attrs; name %QName; #REQUIRED required %boolean; #IMPLIED select %XPath_expression; #IMPLIED > <!ELEMENT %with-option; (%optConnection;)> <!ATTLIST %with-option; %global-attrs; name %QName; #REQUIRED select %XPath_expression; #REQUIRED > <!ELEMENT %with-param; (%optConnection;)> <!ATTLIST %with-param; %global-attrs; name %QName; #REQUIRED select %XPath_expression; #REQUIRED port %NCName; #IMPLIED > <!ELEMENT %namespaces; (%annotation;)*> <!ATTLIST %namespaces; %global-attrs; binding %QName; #IMPLIED element %XPath_expression; #IMPLIED except-prefixes NMTOKENS #IMPLIED> <!ELEMENT %declare-step; (%declProlog1;, (%declProlog2;, (%subpipeline;))? )> <!ATTLIST %declare-step; %global-attrs; name %NCName; #IMPLIED type %QName; #IMPLIED %top-attrs; %nds; %URIref; #IMPLIED > <!ELEMENT %library; ((%import;) | (%declare-step;) | (%pipeline;) | (%annotation;))*> <!ATTLIST %library; %global-attrs; %top-attrs; %nds; %URIref; #IMPLIED> <!ELEMENT %import; (%annotation;)*> <!ATTLIST %import; %global-attrs; href %URIref; #REQUIRED > <!ELEMENT %pipe; (%annotation;)*> <!ATTLIST %pipe; %global-attrs; step %step_name; #REQUIRED port %port_name; #REQUIRED> <!ELEMENT %inline; %user-data;> <!ATTLIST %inline; %global-attrs; exclude-inline-prefixes CDATA #IMPLIED> <!ELEMENT %document; (%annotation;)*> <!ATTLIST %document; %global-attrs; href %URIref; #REQUIRED> <!ELEMENT %data; (%annotation;)*> <!ATTLIST %data; %global-attrs; href %URIref; #REQUIRED wrapper %QName; #IMPLIED content-type CDATA #IMPLIED> <!ELEMENT %empty; (%annotation;)*> <!ATTLIST %empty; %global-attrs;> <!ELEMENT %documentation; (p | div %doc-elts;)*> <!ATTLIST %documentation; %global-attrs;> <!ELEMENT %pipeinfo; %info-model;> <!ATTLIST %pipeinfo; %global-attrs;> <!ELEMENT p (#PCDATA)> <!ELEMENT div (#PCDATA)> <!ELEMENT %add-attribute; %step-model;> <!ATTLIST %add-attribute; %step-attrs; match %XSLT_match_pattern; #IMPLIED attribute-name %QName; #IMPLIED attribute-prefix %NCName; #IMPLIED attribute-namespace %URIref; #IMPLIED attribute-value CDATA #IMPLIED> <!ELEMENT %add-xml-base; %step-model;> <!ATTLIST %add-xml-base; %step-attrs; all %boolean; #IMPLIED relative %boolean; #IMPLIED> <!ELEMENT %compare; %step-model;> <!ATTLIST %compare; %step-attrs; fail-if-not-equal %boolean; #IMPLIED> <!ELEMENT %count; %step-model;> <!ATTLIST %count; %step-attrs; limit %integer; #IMPLIED> <!ELEMENT %delete; %step-model;> <!ATTLIST %delete; %step-attrs; match %XSLT_match_pattern; #IMPLIED> <!ELEMENT %directory-list; %step-model;> <!ATTLIST %directory-list; %step-attrs; path %URIref; #IMPLIED include-filter %regexp; #IMPLIED exclude-filter %regexp; #IMPLIED> <!ELEMENT %error; %step-model;> <!ATTLIST %error; %step-attrs; code %QName; #IMPLIED code-prefix %NCName; #IMPLIED code-namespace %URIref; #IMPLIED> <!ELEMENT %escape-markup; %step-model;> <!ATTLIST %escape-markup; %step-attrs; cdata-section-elements NMTOKENS #IMPLIED doctype-public CDATA #IMPLIED doctype-system %URIref; #IMPLIED escape-uri-attributes %boolean; #IMPLIED include-content-type %boolean; #IMPLIED indent %boolean; #IMPLIED media-type CDATA #IMPLIED method %QName; #IMPLIED omit-xml-declaration %boolean; #IMPLIED standalone (true|false|omit) #IMPLIED undeclare-prefixes %boolean; #IMPLIED version CDATA #IMPLIED> <!ELEMENT %filter; %step-model;> <!ATTLIST %filter; %step-attrs; select %XPath_expression; #IMPLIED> <!ELEMENT %http-request; %step-model;> <!ATTLIST %http-request; %step-attrs; byte-order-mark %boolean; #IMPLIED cdata-section-elements NMTOKENS #IMPLIED doctype-public CDATA #IMPLIED doctype-system %URIref; #IMPLIED encoding CDATA #IMPLIED escape-uri-attributes %boolean; #IMPLIED include-content-type %boolean; #IMPLIED indent %boolean; #IMPLIED media-type CDATA #IMPLIED method %QName; #IMPLIED normalization-form NMTOKEN #IMPLIED omit-xml-declaration %boolean; #IMPLIED standalone (true|false|omit) #IMPLIED undeclare-prefixes %boolean; #IMPLIED version CDATA #IMPLIED> <!ELEMENT %identity; %step-model;> <!ATTLIST %identity; %step-attrs;> <!ELEMENT %insert; %step-model;> <!ATTLIST %insert; %step-attrs; match %XSLT_match_pattern; #IMPLIED position (first-child|last-child|before|after) #IMPLIED> <!ELEMENT %label-elements; %step-model;> <!ATTLIST %label-elements; %step-attrs; attribute %QName; #IMPLIED attribute-prefix %NCName; #IMPLIED attribute-namespace %URIref; #IMPLIED label %XPath_expression; #IMPLIED match %XSLT_match_pattern; #IMPLIED replace %boolean; #IMPLIED> <!ELEMENT %load; %step-model;> <!ATTLIST %load; %step-attrs; href %URIref; #IMPLIED dtd-validate %boolean; #IMPLIED> <!ELEMENT %make-absolute-uris; %step-model;> <!ATTLIST %make-absolute-uris; %step-attrs; match %XSLT_match_pattern; #IMPLIED base-uri %URIref; #IMPLIED> <!ELEMENT %namespace-rename; %step-model;> <!ATTLIST %namespace-rename; %step-attrs; from %URIref; #IMPLIED to %URIref; #IMPLIED apply-to (all|elements|attributes) #IMPLIED> <!ELEMENT %pack; %step-model;> <!ATTLIST %pack; %step-attrs; wrapper %QName; #IMPLIED wrapper-prefix %NCName; #IMPLIED wrapper-namespace %URIref; #IMPLIED> <!ELEMENT %parameters; %step-model;> <!ATTLIST %parameters; %step-attrs;> <!ELEMENT %rename; %step-model;> <!ATTLIST %rename; %step-attrs; match %XSLT_match_pattern; #IMPLIED new-name %QName; #IMPLIED new-prefix %NCName; #IMPLIED new-namespace %URIref; #IMPLIED> <!ELEMENT %replace; %step-model;> <!ATTLIST %replace; %step-attrs; match %XSLT_match_pattern; #IMPLIED> <!ELEMENT %set-attributes; %step-model;> <!ATTLIST %set-attributes; %step-attrs; match %XSLT_match_pattern; #IMPLIED> <!ELEMENT %sink; %step-model;> <!ATTLIST %sink; %step-attrs;> <!ELEMENT %split-sequence; %step-model;> <!ATTLIST %split-sequence; %step-attrs; initial-only %boolean; #IMPLIED test %XPath_expression; #IMPLIED> <!ELEMENT %store; %step-model;> <!ATTLIST %store; %step-attrs; href %URIref; #IMPLIED byte-order-mark %boolean; #IMPLIED cdata-section-elements NMTOKENS #IMPLIED doctype-public CDATA #IMPLIED doctype-system %URIref; #IMPLIED encoding CDATA #IMPLIED escape-uri-attributes %boolean; #IMPLIED include-content-type %boolean; #IMPLIED indent %boolean; #IMPLIED media-type CDATA #IMPLIED method %QName; #IMPLIED normalization-form NMTOKEN #IMPLIED omit-xml-declaration %boolean; #IMPLIED standalone (true|false|omit) #IMPLIED undeclare-prefixes %boolean; #IMPLIED version CDATA #IMPLIED> <!ELEMENT %string-replace; %step-model;> <!ATTLIST %string-replace; %step-attrs; match %XSLT_match_pattern; #IMPLIED replace %XPath_expression; #IMPLIED> <!ELEMENT %unescape-markup; %step-model;> <!ATTLIST %unescape-markup; %step-attrs; namespace %URIref; #IMPLIED content-type CDATA #IMPLIED encoding CDATA #IMPLIED charset CDATA #IMPLIED> <!ELEMENT %unwrap; %step-model;> <!ATTLIST %unwrap; %step-attrs; match %XSLT_match_pattern; #IMPLIED> <!ELEMENT %wrap; %step-model;> <!ATTLIST %wrap; %step-attrs; wrapper %QName; #IMPLIED wrapper-prefix %NCName; #IMPLIED wrapper-namespace %URIref; #IMPLIED match %XSLT_match_pattern; #IMPLIED group-adjacent %XPath_expression; #IMPLIED> <!ELEMENT %wrap-sequence; %step-model;> <!ATTLIST %wrap-sequence; %step-attrs; wrapper %QName; #IMPLIED wrapper-prefix %NCName; #IMPLIED wrapper-namespace %URIref; #IMPLIED group-adjacent %XPath_expression; #IMPLIED> <!ELEMENT %xinclude; %step-model;> <!ATTLIST %xinclude; %step-attrs; fixup-xml-base %boolean; #IMPLIED fixup-xml-lang %boolean; #IMPLIED> <!ELEMENT %xslt; %step-model;> <!ATTLIST %xslt; %step-attrs; initial-mode %QName; #IMPLIED template-name %QName; #IMPLIED output-base-uri %URIref; #IMPLIED version CDATA #IMPLIED> <!ELEMENT %exec; %step-model;> <!ATTLIST %exec; %step-attrs; command CDATA #IMPLIED args CDATA #IMPLIED cwd CDATA #IMPLIED source-is-xml %boolean; #IMPLIED result-is-xml %boolean; #IMPLIED wrap-result-lines %boolean; #IMPLIED errors-is-xml %boolean; #IMPLIED wrap-error-lines %boolean; #IMPLIED path-separator CDATA #IMPLIED failure-threshold %integer; #IMPLIED arg-separator CDATA #IMPLIED byte-order-mark %boolean; #IMPLIED cdata-section-elements NMTOKENS #IMPLIED doctype-public CDATA #IMPLIED doctype-system %URIref; #IMPLIED encoding CDATA #IMPLIED escape-uri-attributes %boolean; #IMPLIED include-content-type %boolean; #IMPLIED indent %boolean; #IMPLIED media-type CDATA #IMPLIED method %QName; #IMPLIED normalization-form NMTOKEN #IMPLIED omit-xml-declaration %boolean; #IMPLIED standalone (true|false|omit) #IMPLIED undeclare-prefixes %boolean; #IMPLIED version CDATA #IMPLIED> <!ELEMENT %hash; %step-model;> <!ATTLIST %hash; %step-attrs; value CDATA #IMPLIED algorithm %QName; #IMPLIED match %XSLT_match_pattern; #IMPLIED version CDATA #IMPLIED> <!ELEMENT %uuid; %step-model;> <!ATTLIST %uuid; %step-attrs; match %XSLT_match_pattern; #IMPLIED version %integer; #IMPLIED> <!ELEMENT %validate-with-relax-ng; %step-model;> <!ATTLIST %validate-with-relax-ng; %step-attrs; dtd-attribute-values %boolean; #IMPLIED dtd-id-idref-warnings %boolean; #IMPLIED assert-valid %boolean; #IMPLIED> <!ELEMENT %validate-with-schematron; %step-model;> <!ATTLIST %validate-with-schematron; %step-attrs; phase CDATA #IMPLIED assert-valid %boolean; #IMPLIED> <!ELEMENT %validate-with-xml-schema; %step-model;> <!ATTLIST %validate-with-xml-schema; %step-attrs; use-location-hints %boolean; #IMPLIED try-namespaces %boolean; #IMPLIED assert-valid %boolean; #IMPLIED mode (strict|lax) #IMPLIED> <!ELEMENT %www-form-urldecode; %step-model;> <!ATTLIST %www-form-urldecode; %step-attrs; value CDATA #IMPLIED> <!ELEMENT %www-form-urlencode; %step-model;> <!ATTLIST %www-form-urlencode; %step-attrs; match %XSLT_match_pattern; #IMPLIED> <!ELEMENT %xquery; %step-model;> <!ATTLIST %xquery; %step-attrs;> <!ELEMENT %xsl-formatter; %step-model;> <!ATTLIST %xsl-formatter; %step-attrs; href %URIref; #IMPLIED content-type CDATA #IMPLIED>