- From: <GignacDA@nswccd.navy.mil>
- Date: Tue, 18 May 1999 13:43:12 -0400
- To: xsl-editors@w3.org, WestbrookEL@nswccd.navy.mil, JunodLJ@nswccd.navy.mil
- Cc: GarnerFJ@nswccd.navy.mil, LeBeauRP@nswccd.navy.mil
The following comments pertain to the XML DTD in Appendix A "DTD for XSL
Formatting Objects" in the W3C working draft of the "Extensible Stylesheet
Language Specification" dated April 21, 1999
(http://www.w3.org/TR/1999/WD-xsl-19990421). The numbers in square brackets
refer to the productions in the current XML specification
(http://www.w3.org/TR/REC-xml) defining XML syntax.
1. [5} "Name" and [45] "elementdecl" which define the ELEMENT declaration in
XML do not allow element types to be defined in terms of a name group.
Accordingly, the following ELEMENT declaration
<!ELEMENT (fo:table-header | fo:table-footer | fo:table-body)
(
fo:table-row+
| fo:table-cell+
)
>
must be rewritten as three separate ELEMENT declarations
<!ELEMENT fo:table-header
(
fo:table-row+
| fo:table-cell+
)
>
<!ELEMENT fo:table-footer
(
fo:table-row+
| fo:table-cell+
)
>
<!ELEMENT fo:table-body
(
fo:table-row+
| fo:table-cell+
)
>
2. [5] "Name" and [52] "AttlistDecl" which define the ATTLIST declaration
in XML do not allow the attributes of element types to be defined in terms
of a name group. Accordingly, the following ATTLIST declaration
<!ATTLIST (fo:table-header | fo:table-footer | fo:table-body)
%common-absolute-position-properties;
%common-aural-properties;
%common-border-padding-and-background-properties;
id CDATA #IMPLIED
>
must be rewritten as three separate ATTLIST declarations
<!ATTLIST fo:table-header
%common-absolute-position-properties;
%common-aural-properties;
%common-border-padding-and-background-properties;
id CDATA #IMPLIED
>
<!ATTLIST fo:table-footer
%common-absolute-position-properties;
%common-aural-properties;
%common-border-padding-and-background-properties;
id CDATA #IMPLIED
>
<!ATTLIST fo:table-body
%common-absolute-position-properties;
%common-aural-properties;
%common-border-padding-and-background-properties;
id CDATA #IMPLIED
>
3. [45] "elementdecl", [46] "contentspec", and [51] "Mixed" require that
content models containing the "#PCDATA" content token along with other
content tokens must be of the form
(#PCDATA | a | b | c| . . . )*
Accordingly, the occurrence indicator "+" in five ELEMENT declarations
<!ELEMENT fo:inline-sequence (
#PCDATA
| %inlines;
| %block-level;
)+
>
<!ELEMENT fo:footnote-citation (
#PCDATA
| %inlines;
)+
>
<!ELEMENT fo:bidi-override (
#PCDATA
| %inlines;
)+
>
<!ELEMENT fo:simple-link (
#PCDATA
| %inlines;
| %block-level;
)+
>
<!ELEMENT fo:multi-toggle (
#PCDATA
| %inlines;
)+
>
must changed to "*" as follows
<!ELEMENT fo:inline-sequence (
#PCDATA
| %inlines;
| %block-level;
)*
>
<!ELEMENT fo:footnote-citation (
#PCDATA
| %inlines;
)*
>
<!ELEMENT fo:bidi-override (
#PCDATA
| %inlines;
)*
>
<!ELEMENT fo:simple-link (
#PCDATA
| %inlines;
| %block-level;
)*
>
<!ELEMENT fo:multi-toggle (
#PCDATA
| %inlines;
)*
>
4. As noted previously, [45] "elementdecl", [46] "contentspec", and [51]
"Mixed" require that content models containing the "#PCDATA" content token
along with other content tokens must be of the form
(#PCDATA | a | b | c| . . . )*
The following two ELEMENT declarations
<!ELEMENT fo:block (
fo:first-line-marker?,
(
#PCDATA
| %inlines;
| %block-level;
)+
)
>
<!ELEMENT fo:multi-properties (
fo:multi-property-set+,
(
#PCDATA
| %inlines;
| %block-level;
)+
)
>
have content models of the forms
(z1?, (#PCDATA | y | x | w | . . . )
(z2+, (#PCDATA | y | x | w | . . . )
respectively. These two content models will have to be rewritten in the form
of
(#PCDATA | a | b | c| . . . )*
5. [45] "elementdecl", [46] "contentspec", [47] "children" and [51] "Mixed"
do not permit the inclusions or exclusions exceptions of SGML in XML. The
content models of the three ELEMENT declarations
<!ELEMENT fo:float (
%block-level;
)+ -(%out-of-lines)
>
<!ELEMENT fo:footnote (
fo:footnote-citation?,
(%block-level;)+
) -(%out-of-lines)
>
<!ELEMENT fo:multi-case (
#PCDATA
| %inlines;
| %block-level;
)+ +(fo:multi-toggle)
>
will have to be rewritten so as to model their acceptable content without
resorting to exclusions or inclusions exceptions.
Also note that the "%out-of-line" general entity references are not
terminated by ";" as required by [68] "EntityRef". Finally, the "+"
following the last content model above must be "*" in accordance with [45]
"elementdecl", [46] "contentspec", and [51] "Mixed".
Received on Tuesday, 18 May 1999 13:43:43 UTC