Re: 62 typos, grammatical errors, and test file errors in the testsuite

Thank you for your comments. I am forwarding your comments and 
recommendations to the XML Core working group.
WG : Notice my comments/resolution  to the recommendations indicated after 
"====>"



I recently went through the conformance output of the AElfred C# parser
and actually spent the time looking at the negative tests to compare the
messages. I was surprised by what I found. I took notes about typos, bad
messages, and test suite problems as I went. The following are my
results (formatted in the most confusing way imaginable):

o-p58fail3 (This test claims "A parser that reports error positions
should report an error at the AttlistDecl on line 6, before reaching the
notation declaration." However, the ATTLIST declaration appears on line
11, column 31 seems more appropriate)

====> WG please address this comment.

ibm-not-wf-P62-ibm62n05.xml (in the message "]" should be "[")
ibm-not-wf-P63-ibm63n05.xml (in the message "]" should be "[")
ibm-not-wf-P64-ibm64n01.xml (In the test itself the comment "Negative
test. Pattern2(Wrong character '?' instead of '[')" appears... it should
end with "'!')")

====> Jeff is right. I will make these changes.

ibm-not-wf-P65-ibm65n02.xml (Isn't the "<![" before this permissible?
This is actually a test showing that ignoreSect contents containing
"<![" must be processed and matched. I am not sure if the test is wrong
or the wording of the message.)

====> WG please address this comment on ibm-not-wf-P65-ibm65n02.xml.


not-wf-sa-083 (
    The test:

      <!DOCTYPE doc [
        <!ENTITY e SYSTEM "nul" NDATA n>
      ]>
      <doc>&e;</doc>

    Contains two errors, allowing it to be mistakenly failed for the
wrong reason. It would be better to do:

      <!DOCTYPE doc [
        <!ENTITY e SYSTEM "nul" NDATA n>
        <!ATTLIST doc test ENTITY #IMPLIED>
      ]>
      <doc test="e"></doc>

    Of course, then this is testing the VC: Entity Declared, not a WFC.It
seems that the real intent of this test is not:

      "Undefined NOTATION n."

    As the message indicates (which would be a VC not a WFC as well VC:
Notation Declared)-- perhaps the intent was to test that production [76]
is applied:

      "If the NDataDecl is present, this is a general unparsed entity;
otherwise it is a parsed entity."

    In which case the reference to the entity is invalid because it
becomes a reference to an external GE. If this is the case, the message
should be changed to reflect this and the test should be modified to:

      <!DOCTYPE doc [
        <!NOTATION n SYSTEM "nul">
        <!ENTITY e SYSTEM "nul" NDATA n>
      ]>
      <doc>&e;</doc>

    This makes the message clear, and also eliminates that possibility
that a validating process will fail the test mistakenly by
    producing a non-fatal error for the missing notation declaration.
)

====> WG please address this comment on not-wf-sa-083.

rmt-ns10-014 (This test should be changed to:

      <?xml version="1.0"?>
      <!-- Bad QName syntax: colon at end -->
      <foo: xmlns:foo="<http://bar>http://bar"/>

    Currently, it is possible that a parser will fail because of an
undelcared prefix
    and not check the qName syntax as intended)

====> WG please address this issue on rmt-ns10-014.

ibm-not-wf-P14-ibm14n01.xml (typo in test text,
    The test message reads: character "[[&gt;"
    But should read: character "]]&gt;"
)

====> Jeff is right. I will make the changes to description file.

ibm-not-wf-P15-ibm15n01.xml (should "-" be "--" or "--------"?)

====> Not sure!! WG please advise.

ibm-not-wf-P16-ibm16n01.xml (
    The test messages reads:  Tests PI. The content of the PI includes
the sequence "(less than)?".
    But should read:  Tests PI. The content of the PI includes the
sequence "?(greater than)".
)

====> Jeff is right. I will make the changes to description file.

ibm-not-wf-P20-ibm20n01.xml (
    The test message reads: the string "[[&gt;"
    But should read: the string "]]&gt;"
)

====> Jeff is right. I will make the changes to description file.

ibm-not-wf-P28-ibm28n07.xml (
    The test message reads: The opening bracket "}" occurs
    But should read: The opening bracket "{" occurs
)

not-wf-sa-048 (typo "roor element")

====> Jeff is right. I will make the changes to description file.

ibm-not-wf-P41-ibm41n10.xml (grammatical "A direct references" should be
"A direct reference")
ibm-not-wf-P41-ibm41n11.xml (grammatical "A indirect references" should
be "An indirect reference")
ibm-not-wf-P41-ibm41n12.xml (grammatical "A direct references" should be
"A direct reference")
ibm-not-wf-P41-ibm41n13.xml (typo: "No (less that) character" should be
"No (less than) character")
ibm-not-wf-P43-ibm43n02.xml (grammatical "A elementdecl is used" should
be "An elementdecl is used")
ibm-not-wf-P43-ibm43n04.xml (
    The test message reads: An elementdecl is used as the content of the
element "root".
    But should read: An entitydecl is used as the content of the element
"root".
)


====> Jeff is right. I will make these grammatical/typos changes to 
description file.


o-p41fail2 (
    strange wording for test-- seems like it is meant for an elementdecl
test,
    not an attribute test. The test:

    <!DOCTYPE doc
    [
    <!ELEMENT doc att (val|val2)>
    ]>
    <doc val></doc>

    Should probably remove the improper ElementDecl or change the test
wording.
)

====>WG please address this comment on o-p41fail2.

ibm-not-wf-P56-ibm56n01.xml (grammatical:
    The test reads: The "id" is used in the
    But should read: The type "id" is used in the
)

ibm-not-wf-P56-ibm56n02.xml (grammatical:
    The test reads: The "Idref" is used in the
    But should read: The type "Idref" is used in the
)
ibm-not-wf-P56-ibm56n03.xml (grammatical:
    The test reads: The "Idrefs" is used in the
    But should read: The type "Idrefs" is used in the
)
ibm-not-wf-P56-ibm56n04.xml (grammatical:
    The test reads: The "EntitY" is used in the
    But should read: The type "EntitY" is used in the
)
ibm-not-wf-P56-ibm56n05.xml (grammatical:
    The test reads: The "nmTOKEN" is used in the
    But should read: The type "nmTOKEN" is used in the
)
ibm-not-wf-P56-ibm56n06.xml (grammatical:
    The test reads: The "NMtokens" is used in the
    But should read: The type "NMtokens" is used in the
)
ibm-not-wf-P56-ibm56n07.xml (grammatical:
    The test reads: The "#ID" is used in the
    But should read: The type "#ID" is used in the
)
ibm-not-wf-P57-ibm57n01.xml (grammatical:
    The test reads: The "NMTOKEN (a|b)" is used
    But should read: The string "NMTOKEN (a|b)" is used
)

====> Jeff is right. I will make these grammatical/typos changes to 
description file.

ibm-not-wf-P59-ibm59n05.xml (test and message seem different, the test is
   almost identical to ibm-not-wf-P59-ibm59n06.xml which seems to test the
   exact same thing. What was most likely intended was an initial test
   of the opening bracket and a second test of the closing bracket.


====>WG please address this comment on ibm-not-wf-P59-ibm59n05.xml.


not-wf-sa-111 (typo "entiry ref...")
not-wf-sa-125 (grammatical "parenthesis" should be "parentheses")


====> Jeff is right. I will make these grammatical/typos changes to 
description file.


o-p52fail2 (technically, the error will be about whitespace not the name:

    <!DOCTYPE doc
    [
    <!ELEMENT doc EMPTY>
    <!ATTLIST>
    ]>
    <doc/>

    The parser will report missing whitespace. To test what the message
actually
    says, it would need to be:

    <!DOCTYPE doc
    [
    <!ELEMENT doc EMPTY>
    <!ATTLIST >
    ]>
    <doc/>
)


====>WG please address this comment on o-p52fail2


ibm-not-wf-P69-ibm69n06.xml (test is inaccurate, this should fail
because there is a PE reference within a decl in the internal subset. In
order to test this accurately, the dtd needs to be moved to an external
file)
ibm-not-wf-P69-ibm69n07.xml (test is inaccurate, this should fail
because there is a PE reference within a decl in the internal subset. In
order to test this accurately, the dtd needs to be moved to an external
file)

====> WG please address these comments on bm-not-wf-P69-ibm69n06.xml, 
ibm-not-wf-P69-ibm69n07.xml

ibm-not-wf-P71-ibm70n01.xml (message incomplete, I am not sure what this
is intended to test, most likely a MARKUP decl after the root element?
Or maybe the first ENTITY decl was meant to not close?)
ibm-not-wf-P72-ibm72n09.xml (test is in error, needs whitespace between
ENTITY and %)

not-wf-sa-109 (message could be more clear, this is actually testing the
use of a general entity as the root element. Technically, tags *Are*
allowed in entity decls)

====> WG please address these comments on ibm-not-wf-P71-ibm70n01.xml, 
not-wf-sa-109


o-p70fail1 (incomplete message, should read: This is neither a general
or parameter entity declaration (ampersand not allowed as part of
general entity declaration))

====> Jeff is right. I will make these grammatical/typos changes to 
description file.


not-wf-sa-089 (grammatical, why is "are" in quote marks?)
not-wf-sa-091 (grammatical, why is "are" in quote marks?)

====> that is a typo. I will make the change in the description file.

ibm-not-wf-P80-ibm80n03.xml (grammatical "are" -> "is")
o-p58fail6 (grammatical, should be "parentheses are required")

ibm-not-wf-P83-ibm83n01.xml (typo NotationDcl)
ibm-not-wf-P83-ibm83n02.xml (typo NotationDcl)
ibm-not-wf-P83-ibm83n03.xml (typo NotationDcl)
ibm-not-wf-P83-ibm83n04.xml (typo NotationDcl)
ibm-not-wf-P83-ibm83n05.xml (typo NotationDcl)
ibm-not-wf-P83-ibm83n06.xml (typo NotationDcl)

====> Jeff is right. I will make these grammatical/typos changes to 
description file.

ibm-not-wf-P83-ibm83n02.xml (test invalid, file contains "r")
ibm-not-wf-P85-ibm85n181.xml (test message typo should be 1F7E)
ibm-not-wf-P85-ibm85n72.xml (test message typo should be A5D)
ibm-not-wf-P85-ibm85n75.xml (missing character number in test message
should be A84)


====> Jeff is right. I will make these changes to the description file.


ibm-not-wf-P29-ibm29n05.xml (strange wording for test and what it
actually tests, the test claims to be for WFC PEs in internal subset,
but I don't think that PEs are ever processed inside of a PI, in the
internal or external subset)
ibm-not-wf-P29-ibm29n06.xml (strange wording for test and what it
actually tests, the test claims to be for WFC PEs in internal subset,
but I don't think that PEs are ever processed inside of a PI, in the
internal or external subset)

====> WG please address these comments on ibm-not-wf-P29-ibm29n05.xml , 
ibm-not-wf-P29-ibm29n06.xml

ibm-not-wf-P19-ibm19n01.xml (The CDATA section for testing should be
within the root element, not before it)
ibm-not-wf-P19-ibm19n02.xml (The CDATA section for testing should be
within the root element, not before it)
ibm-not-wf-P19-ibm19n03.xml (The CDATA section for testing should be
within the root element, not before it)
ibm-not-wf-P20-ibm20n01.xml (The CDATA section for testing should be
within the root element, not before it)


====> Agree!! The CDATA section in these tests are before the root element. 
I will  make these changes.


ibm-not-wf-P21-ibm21n01.xml (Message: Tests CDEnd. One "]" is missing in
the CDEnd.

    <?xml version="1.0"?>
    <!DOCTYPE student [
         <!ELEMENT student (#PCDATA)>
    ]>

    <!-- testing invalid CDEnd -->
    <![[CDATA[This is a test]>
    <student>My Name is SnowMan. </student>

    The test is actually testing the CDStart. There is an extra "[" at
the start of
    the CDATA section that should be removed. Additionally, The CDATA
section for testing
    should be within the root element, not before it)

===> Not sure!! If we keep the [ aat the start of the CDATA and add and 
extra ] to at the end, we will be testing CDStart.

ibm-not-wf-P21-ibm21n02.xml(Message:  Tests CDEnd. An extra "]" is
placed in the CDEnd.

    <?xml version="1.0"?>
    <!DOCTYPE student [
         <!ELEMENT student (#PCDATA)>
    ]>

    <!-- testing invalid CDEnd -->
    <![cdata[This is a test]]]>
    <student>My Name is SnowMan. </student>

    This test is actually testing CDStart. The "CDATA" is written "cdata" and
    should be corrected. Additionally, The CDATA section for testing
    should be within the root element, not before it)

====> (ibm-not-wf-P21-ibm21n02.xml) Not sure ! The test is suppose to test 
invalid  CDEnd having the extra ] at the end will accomplish the test. In 
the mean time I will make the other
changes. WG please advice.

ibm-not-wf-P21-ibm21n03.xml (The CDATA section for testing should be
within the root element, not before it)


====> Jeff is right. I will make this change.

ibm-valid-P10-ibm10v07.xml (in the entitydecl for "mylast", "mymiddle;"
is referenced without an "&")

====> Jeff is right. I will make this change.


Sandra I. Martinez
National Institute of Standards and Technology
100 Bureau Drive, Stop 8970,Gaithersburg, Md. 20899

(301) 975-3579
sandra.martinez@nist.gov

Received on Monday, 28 March 2005 21:22:06 UTC