diff --git a/ChangeLog b/ChangeLog index 7f234e91..72d2b8c9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +Tue Aug 7 03:11:31 CEST 2001 Daniel Veillard + + * xsltproc/xsltproc.c: for heriting defaulted atts from the DTD + * tests/docs/Makefile.am tests/docs/bug-52.xml tests/docs/bug-53.xml + tests/general/Makefile.am tests/general/bug-52.* + tests/general/bug-53.*: Added a few new tests for recently fixed + stuff in libxml + * tests/xmlspec/REC-xml-20001006-review.html + tests/xmlspec/REC-xml-20001006.html: inheriting default attrs from + DTD changed the result by adding extra attributes to the HTML output + 2001-08-06 Peter Williams * libexslt/Makefile.am, xsltproc/Makefile.am: Fixes for compiling diff --git a/tests/docs/Makefile.am b/tests/docs/Makefile.am index 6b944c9a..3737e5c6 100644 --- a/tests/docs/Makefile.am +++ b/tests/docs/Makefile.am @@ -54,6 +54,8 @@ EXTRA_DIST = \ bug-48-.xml \ bug-49-.xml \ bug-50-.xml \ + bug-52-.xml \ + bug-53-.xml \ character.xml \ array.xml \ items.xml diff --git a/tests/docs/bug-52.xml b/tests/docs/bug-52.xml new file mode 100644 index 00000000..66a10a50 --- /dev/null +++ b/tests/docs/bug-52.xml @@ -0,0 +1,12 @@ + + + + + +]> + + + diff --git a/tests/docs/bug-53.xml b/tests/docs/bug-53.xml new file mode 100644 index 00000000..27ed7a8d --- /dev/null +++ b/tests/docs/bug-53.xml @@ -0,0 +1,6 @@ + + +]> + diff --git a/tests/general/Makefile.am b/tests/general/Makefile.am index 3be88c78..b194f01c 100644 --- a/tests/general/Makefile.am +++ b/tests/general/Makefile.am @@ -56,6 +56,8 @@ EXTRA_DIST = \ bug-48-.out bug-48-.xsl \ bug-49-.out bug-49-.xsl \ bug-50-.out bug-50-.xsl \ + bug-52-.out bug-52-.xsl \ + bug-53-.out bug-53-.xsl \ character.out character.xsl \ character2.out character2.xsl \ itemschoose.out itemschoose.xsl \ diff --git a/tests/general/bug-52.out b/tests/general/bug-52.out new file mode 100644 index 00000000..8af906be --- /dev/null +++ b/tests/general/bug-52.out @@ -0,0 +1,4 @@ + + +Graphic file=../docs/graphic.gif + diff --git a/tests/general/bug-52.xsl b/tests/general/bug-52.xsl new file mode 100644 index 00000000..6d160155 --- /dev/null +++ b/tests/general/bug-52.xsl @@ -0,0 +1,16 @@ + + + + + + + + + + + Graphic file= + + + + diff --git a/tests/general/bug-53.out b/tests/general/bug-53.out new file mode 100644 index 00000000..2ff76900 --- /dev/null +++ b/tests/general/bug-53.out @@ -0,0 +1 @@ +SUCCESS \ No newline at end of file diff --git a/tests/general/bug-53.xsl b/tests/general/bug-53.xsl new file mode 100644 index 00000000..a314d409 --- /dev/null +++ b/tests/general/bug-53.xsl @@ -0,0 +1,11 @@ + + + + + + + + + + diff --git a/tests/xmlspec/REC-xml-20001006-review.html b/tests/xmlspec/REC-xml-20001006-review.html index 75dc7d3b..5491182e 100644 --- a/tests/xmlspec/REC-xml-20001006-review.html +++ b/tests/xmlspec/REC-xml-20001006-review.html @@ -114,7 +114,7 @@ Normalization

Appendices

A References
    A.1 Normative References
    A.2 Other References
B Character Classes
C XML and SGML (Non-Normative)
D Expansion of Entity and Character References (Non-Normative)
E Deterministic Content Models (Non-Normative)
F Autodetection -of Character Encodings (Non-Normative)
    F.1 Detection Without External Encoding Information
    F.2 Priorities in the Presence of External Encoding Information
G W3C XML Working Group (Non-Normative)
H W3C XML Core Group (Non-Normative)
I Production Notes (Non-Normative)
+of Character Encodings (Non-Normative)
    F.1 Detection Without External Encoding Information
    F.2 Priorities in the Presence of External Encoding Information
G W3C XML Working Group (Non-Normative)
H W3C XML Core Group (Non-Normative)
I Production Notes (Non-Normative)


@@ -2106,30 +2106,30 @@ is declared NMTOKENS and to those of the right columns if a is declared CDATA.

- - - + + + -
Attribute specificationa is NMTOKENSa is CDATAAttribute specificationa is NMTOKENSa is CDATA
- - + + - - + - + - - - + - - - + + - + - - - - + + - - + + - - - + + - - + - + - - - - + + - - + - - - - - - + + + + + + - - + - - - - + + + +
a="
+
a="
 
 xyz"
x y z#x20 #x20 x y zx y z#x20 #x20 x y z
a="&d;&d;A&a;&a;B&da;"
A +
a="&d;&d;A&a;&a;B&da;"
A #x20 B#x20 #x20 A #x20 #x20 B #x20 #x20#x20 #x20 A #x20 #x20 B #x20 #x20
- - +
a=
+
a=
 "

A

B
"
#xD +#xD #xD A #xA #xA B #xD #xA#xD #xD A #xA #xA B #xD #xD#xD #xD A #xA #xA B #xD #xD
@@ -2850,67 +2850,67 @@ or the contents of an ignored conditional section (see
Entity +Entity TypeCharacterCharacter
ParameterInternal GeneralExternal Parsed +ParameterInternal GeneralExternal Parsed GeneralUnparsedUnparsed
Reference +Reference in ContentNot recognizedIncludedIncluded +Not recognizedIncludedIncluded if validatingForbiddenIncludedForbiddenIncluded
Reference in Attribute ValueNot recognizedIncluded +Reference in Attribute ValueNot recognizedIncluded in literalForbidden +Forbidden [E51] IncludedIncluded
Occurs as Attribute +Occurs as Attribute ValueNot recognizedForbidden +Not recognizedForbidden [E51] Notify +Notify [E51]
Reference in EntityValueIncluded in literalBypassedBypassedForbiddenIncludedReference in EntityValueIncluded in literalBypassedBypassedForbiddenIncluded
Reference in DTDIncluded +Reference in DTDIncluded as PEForbiddenForbiddenForbiddenForbiddenForbiddenForbiddenForbiddenForbidden
@@ -3827,75 +3827,75 @@ required of UTF-16 data streams is "#xFEFF".

With a Byte Order Mark:

- - + - - + - - + + - - + + - - + + - - + + - - + +
00 00 FE +00 00 FE FFUCS-4, big-endian machine (1234 order)UCS-4, big-endian machine (1234 order)
FF +FF FE 00 00UCS-4, little-endian machine (4321 order)UCS-4, little-endian machine (4321 order)
00 00 FF FEUCS-4, unusual octet order (2143)00 00 FF FEUCS-4, unusual octet order (2143)
FE FF 00 00UCS-4, unusual octet order (3412)FE FF 00 00UCS-4, unusual octet order (3412)
FE FF ## ##UTF-16, big-endianFE FF ## ##UTF-16, big-endian
FF FE ## ##UTF-16, little-endianFF FE ## ##UTF-16, little-endian
EF BB BFUTF-8EF BB BFUTF-8

Without a Byte Order Mark:

- - + - + - + - + - - + - - + - - + - - - - + @@ -4069,7 +4069,7 @@ Contact)

-I Production Notes (Non-Normative)

+I Production Notes (Non-Normative)

This Second Edition was encoded in the XMLspec DTD (which has documentation available). The HTML versions were produced with a combination of the xmlspec.xsl, diffspec.xsl, diff --git a/tests/xmlspec/REC-xml-20001006.html b/tests/xmlspec/REC-xml-20001006.html index 5f0cbd95..75c3a92f 100644 --- a/tests/xmlspec/REC-xml-20001006.html +++ b/tests/xmlspec/REC-xml-20001006.html @@ -97,7 +97,7 @@ Normalization

Appendices

A References
    A.1 Normative References
    A.2 Other References
B Character Classes
C XML and SGML (Non-Normative)
D Expansion of Entity and Character References (Non-Normative)
E Deterministic Content Models (Non-Normative)
F Autodetection -of Character Encodings (Non-Normative)
    F.1 Detection Without External Encoding Information
    F.2 Priorities in the Presence of External Encoding Information
G W3C XML Working Group (Non-Normative)
H W3C XML Core Group (Non-Normative)
I Production Notes (Non-Normative)
+of Character Encodings (Non-Normative)
    F.1 Detection Without External Encoding Information
    F.2 Priorities in the Presence of External Encoding Information
G W3C XML Working Group (Non-Normative)
H W3C XML Core Group (Non-Normative)
I Production Notes (Non-Normative)


@@ -1988,30 +1988,30 @@ is declared NMTOKENS and to those of the right columns if a is declared CDATA.

00 00 00 3CUCS-4 or other encoding with a 32-bit code unit and ASCII +00 00 00 3CUCS-4 or other encoding with a 32-bit code unit and ASCII characters encoded as ASCII values, in respectively big-endian (1234), little-endian (4321) and two unusual byte orders (2143 and 3412). The encoding declaration must be read to determine which of UCS-4 or other supported 32-bit encodings applies.
3C 00 00 003C 00 00 00
00 00 3C 0000 00 3C 00
00 3C 00 0000 3C 00 00
00 3C 00 3FUTF-16BE or big-endian ISO-10646-UCS-2 +00 3C 00 3FUTF-16BE or big-endian ISO-10646-UCS-2 or other encoding with a 16-bit code unit in big-endian order and ASCII characters encoded as ASCII values (the encoding declaration must be read to determine which)
3C 00 3F 00UTF-16LE or little-endian +3C 00 3F 00UTF-16LE or little-endian ISO-10646-UCS-2 or other encoding with a 16-bit code unit in little-endian order and ASCII characters encoded as ASCII values (the encoding declaration must be read to determine which)
3C 3F 78 6DUTF-8, ISO 646, ASCII, some part of ISO 8859, Shift-JIS, EUC, or any other +3C 3F 78 6DUTF-8, ISO 646, ASCII, some part of ISO 8859, Shift-JIS, EUC, or any other 7-bit, 8-bit, or mixed-width encoding which ensures that the characters of ASCII have their normal positions, width, and values; the actual encoding declaration must be read to detect which of these applies, but since all of @@ -3903,14 +3903,14 @@ these encodings use the same bit patterns for the relevant ASCII characters, the encoding declaration itself may be read reliably
4C +4C 6F A7 94EBCDIC (in some flavor; the full encoding declaration +EBCDIC (in some flavor; the full encoding declaration must be read to tell which code page is in use)
OtherUTF-8 without an encoding declaration, or else the data stream is mislabeled +OtherUTF-8 without an encoding declaration, or else the data stream is mislabeled (lacking a required encoding declaration), corrupt, fragmentary, or enclosed in a wrapper of some kind
- - - + + + -
Attribute specificationa is NMTOKENSa is CDATAAttribute specificationa is NMTOKENSa is CDATA
- - + + - - + - + - - - + - - - + + - + - - - - + + - - + + - - - + + - - - + + + - - - - - - + + + + + - - - - - - + + + + + + - - + - - - - + + + +
a="
+
a="
 
 xyz"
x y z#x20 #x20 x y zx y z#x20 #x20 x y z
a="&d;&d;A&a;&a;B&da;"
A +
a="&d;&d;A&a;&a;B&da;"
A #x20 B#x20 #x20 A #x20 #x20 B #x20 #x20#x20 #x20 A #x20 #x20 B #x20 #x20
- - +
a=
+
a=
 "

A

B
"
#xD +#xD #xD A #xA #xA B #xD #xA#xD #xD A #xA #xA B #xD #xD#xD #xD A #xA #xA B #xD #xD
@@ -2705,61 +2705,61 @@ or the contents of an ignored conditional section (see
Entity +Entity TypeCharacterCharacter
ParameterInternal GeneralExternal Parsed +ParameterInternal GeneralExternal Parsed GeneralUnparsedUnparsed
Reference +Reference in ContentNot recognizedIncludedIncluded +Not recognizedIncludedIncluded if validatingForbiddenIncludedForbiddenIncluded
Reference in Attribute ValueNot recognizedIncluded +Reference in Attribute ValueNot recognizedIncluded in literalForbiddenForbiddenIncludedForbiddenForbiddenIncluded
Occurs as Attribute +Occurs as Attribute ValueNot recognizedForbiddenForbiddenNotifyNot recognizedNot recognizedForbiddenForbiddenNotifyNot recognized
Reference in EntityValueIncluded in literalBypassedBypassedForbiddenIncludedReference in EntityValueIncluded in literalBypassedBypassedForbiddenIncluded
Reference in DTDIncluded +Reference in DTDIncluded as PEForbiddenForbiddenForbiddenForbiddenForbiddenForbiddenForbiddenForbidden
@@ -3641,75 +3641,75 @@ required of UTF-16 data streams is "#xFEFF". The notation

With a Byte Order Mark:

- - + - - + - - + + - - + + - - + + - - + + - - + +
00 00 FE +00 00 FE FFUCS-4, big-endian machine (1234 order)UCS-4, big-endian machine (1234 order)
FF +FF FE 00 00UCS-4, little-endian machine (4321 order)UCS-4, little-endian machine (4321 order)
00 00 FF FEUCS-4, unusual octet order (2143)00 00 FF FEUCS-4, unusual octet order (2143)
FE FF 00 00UCS-4, unusual octet order (3412)FE FF 00 00UCS-4, unusual octet order (3412)
FE FF ## ##UTF-16, big-endianFE FF ## ##UTF-16, big-endian
FF FE ## ##UTF-16, little-endianFF FE ## ##UTF-16, little-endian
EF BB BFUTF-8EF BB BFUTF-8

Without a Byte Order Mark:

- - + - + - + - + - - + - - + - - + - - - - + @@ -3863,7 +3863,7 @@ Contact)

-I Production Notes (Non-Normative)

+I Production Notes (Non-Normative)

This Second Edition was encoded in the XMLspec DTD (which has documentation available). The HTML versions were produced with a combination of the xmlspec.xsl, diffspec.xsl, diff --git a/xsltproc/xsltproc.c b/xsltproc/xsltproc.c index c0f4c1a5..733ddc70 100644 --- a/xsltproc/xsltproc.c +++ b/xsltproc/xsltproc.c @@ -284,8 +284,8 @@ main(int argc, char **argv) defaultLoader = xmlGetExternalEntityLoader(); xmlLineNumbersDefault(1); - if (novalid == 0) /* TODO XML_DETECT_IDS | XML_COMPLETE_ATTRS */ - xmlLoadExtDtdDefaultValue = 6; + if (novalid == 0) + xmlLoadExtDtdDefaultValue = XML_DETECT_IDS | XML_COMPLETE_ATTRS; else xmlLoadExtDtdDefaultValue = 0; for (i = 1; i < argc; i++) {

00 00 00 3CUCS-4 or other encoding with a 32-bit code unit and ASCII +00 00 00 3CUCS-4 or other encoding with a 32-bit code unit and ASCII characters encoded as ASCII values, in respectively big-endian (1234), little-endian (4321) and two unusual byte orders (2143 and 3412). The encoding declaration must be read to determine which of UCS-4 or other supported 32-bit encodings applies.
3C 00 00 003C 00 00 00
00 00 3C 0000 00 3C 00
00 3C 00 0000 3C 00 00
00 3C 00 3FUTF-16BE or big-endian ISO-10646-UCS-2 +00 3C 00 3FUTF-16BE or big-endian ISO-10646-UCS-2 or other encoding with a 16-bit code unit in big-endian order and ASCII characters encoded as ASCII values (the encoding declaration must be read to determine which)
3C 00 3F 00UTF-16LE or little-endian +3C 00 3F 00UTF-16LE or little-endian ISO-10646-UCS-2 or other encoding with a 16-bit code unit in little-endian order and ASCII characters encoded as ASCII values (the encoding declaration must be read to determine which)
3C 3F 78 6DUTF-8, ISO 646, ASCII, some part of ISO 8859, Shift-JIS, EUC, or any other +3C 3F 78 6DUTF-8, ISO 646, ASCII, some part of ISO 8859, Shift-JIS, EUC, or any other 7-bit, 8-bit, or mixed-width encoding which ensures that the characters of ASCII have their normal positions, width, and values; the actual encoding declaration must be read to detect which of these applies, but since all of @@ -3717,14 +3717,14 @@ these encodings use the same bit patterns for the relevant ASCII characters, the encoding declaration itself may be read reliably
4C +4C 6F A7 94EBCDIC (in some flavor; the full encoding declaration +EBCDIC (in some flavor; the full encoding declaration must be read to tell which code page is in use)
OtherUTF-8 without an encoding declaration, or else the data stream is mislabeled +OtherUTF-8 without an encoding declaration, or else the data stream is mislabeled (lacking a required encoding declaration), corrupt, fragmentary, or enclosed in a wrapper of some kind