[xml] patch for w3c xml schema



Hi,

Please find attached a patch for the w3c xml schema implementation. 
Sorry that it comes in one piece: the changes did cumulate and are 
interwoven, since I needed some time to be able to run the schema 
regression tests on win32 before sending.

Patched files:

xmlschemas.c
xmlerror.h
schemasInternals.h

What it does:

1. Fixed handling of varieties of the xsd:simpleType element in 
"xmlSchemaValidateSimpleType".
Test files:
xsd-simpleType-varieties.xsd - xsd-simpleType-varieties.xml

2. Expanded "xmlSchemaValidateCheckNodeList" to allow CDATA-SECTION-NODES.
This one is used in the test "xsd-simpleType-varieties" as well.

3. Expanded validity checks for xsd:element declarations in 
"xmlSchemaParseElement".
Test files:
src-element1_0.xsd  (reports error)
src-element2-1_0.xsd  (reports error)
src-element2-2_0.xsd  (reports error)
src-element3.xsd  (reports error)

(Dummy test XML files included)

4. Implemented parsing the "itemType" attribute of the xsd:list element.
Note that validation with a xsd:list is not implemented yet.

5. Expanded validity checks for xsd:attribute declarations in 
"xmlSchemaParseAttribute".
Test files:
src-attribute4_0.xsd  (reports error)
src-attribute3-2-type_0.xsd (reports error)
src-attribute3-2-st_0.xsd (reports error)
src-attribute3-2-form_0.xsd (reports error)
src-attribute3-1_0.xsd (reports error)
src-attribute2_0.xsd (reports error)
src-attribute1_0.xsd (reports error)
scc-no-xsi_0.xsd (reports error)
scc-no-xmlns_0.xsd (reports error)

(Dummy test XML files included)

6. Attribute "mixed" on <complexType> is ignored, if using <simpleContent>.
   (fixes Bug #141312)
Test files:
bug141312_0.xsd - bug141312_0.xml

7. Fixed target namespaces and resolution of QNames to schema components.
Test files:
po1_0.xsd - po1_0.xml (corrected from CVS)

8. Allowed <anyAttribute/> to be empty.
Note that validation with <anyAttribute> is not implemented yet.


The schema regression tests run fine - except for the original 
po1_0.xsd, which is not correct as far as I learned.


Greetings,

Kasimier

Attachment: xmlerror.h.diff
Description: Text Data

Attachment: schemasInternals.h.diff
Description: Text Data

Attachment: xmlschemas.c.diff
Description: Text Data

Attachment: src-attribute1_0.xml
Description: Text Data

Attachment: src-attribute3-2-type_0.xml
Description: Text Data

Attachment: src-attribute3-2-st_0.xml
Description: Text Data

Attachment: src-attribute3-2-form_0.xml
Description: Text Data

Attachment: src-attribute3-1_0.xml
Description: Text Data

Attachment: src-attribute2_0.xml
Description: Text Data

Attachment: src-attribute4_0.xml
Description: Text Data

Attachment: xsd-simpleType-varieties_0.xml
Description: Text Data

Attachment: src-element2-2_0.xml
Description: Text Data

Attachment: src-element2-1_0.xml
Description: Text Data

Attachment: src-element1_0.xml
Description: Text Data

Attachment: src-element3_0.xsd
Description: Text Data

Attachment: src-element2-2_0.xsd
Description: Text Data

Attachment: src-element2-1_0.xsd
Description: Text Data

Attachment: src-element1_0.xsd
Description: Text Data

Attachment: bug141312_0.xml
Description: Text Data

Attachment: bug141312_0.xsd
Description: Text Data

Attachment: scc-no-xsi_0.xsd
Description: Text Data

Attachment: po1_0.xml
Description: Text Data

Attachment: po1_0.xsd
Description: Text Data

Attachment: src-attribute4_0.xsd
Description: Text Data

Attachment: src-attribute3-2-form_0.xsd
Description: Text Data

Attachment: src-attribute3-2-type_0.xsd
Description: Text Data

Attachment: src-attribute3-2-st_0.xsd
Description: Text Data

Attachment: src-attribute3-1_0.xsd
Description: Text Data

Attachment: src-attribute2_0.xsd
Description: Text Data

Attachment: src-attribute1_0.xsd
Description: Text Data

Attachment: scc-no-xmlns_0.xsd
Description: Text Data

Attachment: scc-no-xmlns_0.xml
Description: Text Data

Attachment: xsd-simpleType-varieties_0.xsd
Description: Text Data

Attachment: src-element3_0.xml
Description: Text Data

Attachment: scc-no-xsi_0.xml
Description: Text Data



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]