1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-01-15 23:24:06 +03:00

fixed some problems in the handling of errors, and attributes addressed by

* xmlschemas.c: fixed some problems in the handling of errors,
  and attributes addressed by references.
* test/schemas/* result/schemas/*: dropped the verbosity level
  and added a couple of new tests
Daniel
This commit is contained in:
Daniel Veillard 2003-05-11 20:16:09 +00:00
parent adbb0e634f
commit 82bbbd4f1e
76 changed files with 183 additions and 671 deletions

View File

@ -1,3 +1,10 @@
Sun May 11 16:13:20 EDT 2003 Daniel Veillard <daniel@veillard.com>
* xmlschemas.c: fixed some problems in the handling of errors,
and attributes addressed by references.
* test/schemas/* result/schemas/*: dropped the verbosity level
and added a couple of new tests
Sat May 10 16:01:21 EDT 2003 Daniel Veillard <daniel@veillard.com>
* relaxng.c: Stéphane Bidoul found an off by one addressing

View File

@ -1,8 +0,0 @@
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_0.xsd:4 :elements
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
xmlSchemaValidateCallback: c, c, c
Element doc content check succeeded

View File

@ -1,8 +0,0 @@
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_0.xsd:4 :elements
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: b, b, b
xmlSchemaValidateCallback: c, c, c
xmlSchemaValidateCallback: a, a, a
Element doc content check succeeded

View File

@ -1,8 +0,0 @@
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_0.xsd:4 :elements
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: b, b, b
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: c, c, c
Element doc content check succeeded

View File

@ -1,7 +1 @@
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_0.xsd:4 :elements
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
Element doc content check failed

View File

@ -1,5 +1 @@
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_0.xsd:4 :elements
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Building content model for doc
Element doc content check failed

View File

@ -1,7 +1 @@
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_0.xsd:4 :elements
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
Element doc content check failed

View File

@ -1,6 +1 @@
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_0.xsd:4 :elements
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check failed

View File

@ -1,7 +1 @@
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_0.xsd:4 :elements
Type of all2 : ./test/schemas/all_0.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
Element doc content check failed

View File

@ -1,8 +0,0 @@
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_1.xsd:4 :elements
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
xmlSchemaValidateCallback: c, c, c
Element doc content check succeeded

View File

@ -1,8 +0,0 @@
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_1.xsd:4 :elements
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: b, b, b
xmlSchemaValidateCallback: c, c, c
xmlSchemaValidateCallback: a, a, a
Element doc content check succeeded

View File

@ -1,8 +0,0 @@
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_1.xsd:4 :elements
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: b, b, b
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: c, c, c
Element doc content check succeeded

View File

@ -1,7 +0,0 @@
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_1.xsd:4 :elements
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
Element doc content check succeeded

View File

@ -1,5 +0,0 @@
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_1.xsd:4 :elements
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Building content model for doc
Element doc content check succeeded

View File

@ -1,7 +1 @@
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_1.xsd:4 :elements
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
Element doc content check failed

View File

@ -1,6 +0,0 @@
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_1.xsd:4 :elements
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check succeeded

View File

@ -1,7 +0,0 @@
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_1.xsd:4 :elements
Type of all2 : ./test/schemas/all_1.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
Element doc content check succeeded

View File

@ -1,7 +1 @@
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_2.xsd:4 :elements
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
Element doc content check failed

View File

@ -1,6 +1 @@
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_2.xsd:4 :elements
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: b, b, b
Element doc content check failed

View File

@ -1,7 +1 @@
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_2.xsd:4 :elements
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: b, b, b
xmlSchemaValidateCallback: a, a, a
Element doc content check failed

View File

@ -1,7 +0,0 @@
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_2.xsd:4 :elements
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
Element doc content check succeeded

View File

@ -1,5 +1 @@
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_2.xsd:4 :elements
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Building content model for doc
Element doc content check failed

View File

@ -1,7 +1 @@
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_2.xsd:4 :elements
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
Element doc content check failed

View File

@ -1,6 +0,0 @@
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_2.xsd:4 :elements
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check succeeded

View File

@ -1,7 +0,0 @@
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/all_2.xsd:4 :elements
Type of all2 : ./test/schemas/all_2.xsd:5 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
Element doc content check succeeded

1
result/schemas/attr0_0_0 Normal file
View File

@ -0,0 +1 @@
./test/schemas/attr0_0.xml validates

View File

@ -0,0 +1 @@
Unimplemented block at xmlschemastypes.c:1742

View File

@ -1,7 +0,0 @@
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_0.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_0.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check succeeded

View File

@ -1,7 +0,0 @@
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_0.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_0.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: b, b, b
Element doc content check succeeded

View File

@ -1,7 +1 @@
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_0.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_0.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check failed

View File

@ -1,7 +1 @@
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_0.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_0.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check failed

View File

@ -1,6 +1 @@
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_0.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_0.xsd:6 :elements
Building content model for doc
Element doc content check failed

View File

@ -1,7 +1 @@
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_0.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_0.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check failed

View File

@ -1,7 +1 @@
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_0.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_0.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_0.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check failed

View File

@ -1,7 +0,0 @@
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_1.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_1.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check succeeded

View File

@ -1,7 +0,0 @@
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_1.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_1.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: b, b, b
Element doc content check succeeded

View File

@ -1,7 +1 @@
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_1.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_1.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check failed

View File

@ -1,7 +1 @@
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_1.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_1.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check failed

View File

@ -1,6 +0,0 @@
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_1.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_1.xsd:6 :elements
Building content model for doc
Element doc content check succeeded

View File

@ -1,7 +1 @@
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_1.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_1.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check failed

View File

@ -1,7 +1 @@
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_1.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_1.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_1.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check failed

View File

@ -1,7 +0,0 @@
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_2.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_2.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
Element doc content check succeeded

View File

@ -1,7 +0,0 @@
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_2.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_2.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: b, b, b
Element doc content check succeeded

View File

@ -1,8 +0,0 @@
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_2.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_2.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
Element doc content check succeeded

View File

@ -1,8 +0,0 @@
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_2.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_2.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: a, a, a
Element doc content check succeeded

View File

@ -1,6 +1 @@
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_2.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_2.xsd:6 :elements
Building content model for doc
Element doc content check failed

View File

@ -1,9 +0,0 @@
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_2.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_2.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
xmlSchemaValidateCallback: a, a, a
Element doc content check succeeded

View File

@ -1,13 +1 @@
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of anontype1 : ./test/schemas/choice_2.xsd:4 :elements
Type of sequence 2 : ./test/schemas/choice_2.xsd:5 :elements
Type of choice 3 : ./test/schemas/choice_2.xsd:6 :elements
Building content model for doc
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: b, b, b
xmlSchemaValidateCallback: a, a, a
xmlSchemaValidateCallback: a, a, a
Element doc content check failed

View File

@ -1,50 +0,0 @@
Type of restriction 7 : ./test/schemas/date_0.xsd:23 :empty
Type of restriction 9 : ./test/schemas/date_0.xsd:31 :empty
Type of simpletype14 : ./test/schemas/date_0.xsd:54 :simple
Type of restriction 15 : ./test/schemas/date_0.xsd:55 :empty
Type of simpletype22 : ./test/schemas/date_0.xsd:87 :simple
Type of simpletype4 : ./test/schemas/date_0.xsd:14 :simple
Type of restriction 5 : ./test/schemas/date_0.xsd:15 :empty
Type of simpletype12 : ./test/schemas/date_0.xsd:46 :simple
Type of restriction 23 : ./test/schemas/date_0.xsd:88 :empty
Type of simpletype20 : ./test/schemas/date_0.xsd:79 :simple
Type of sequence 2 : ./test/schemas/date_0.xsd:10 :elements
Type of anontype1 : ./test/schemas/date_0.xsd:9 :elements
Type of simpletype6 : ./test/schemas/date_0.xsd:22 :simple
Type of simpletype10 : ./test/schemas/date_0.xsd:38 :simple
Type of restriction 21 : ./test/schemas/date_0.xsd:80 :empty
Type of restriction 13 : ./test/schemas/date_0.xsd:47 :empty
Type of restriction 19 : ./test/schemas/date_0.xsd:72 :empty
Type of simpletype8 : ./test/schemas/date_0.xsd:30 :simple
Type of simpletype18 : ./test/schemas/date_0.xsd:71 :simple
Type of holidays : ./test/schemas/date_0.xsd:99 :simple
Type of restriction 11 : ./test/schemas/date_0.xsd:39 :empty
Type of simpletype16 : ./test/schemas/date_0.xsd:63 :simple
Type of sequence 2 : ./test/schemas/date_0.xsd:10 :elements
Type of choice 3 : ./test/schemas/date_0.xsd:11 :elements
Type of restriction 17 : ./test/schemas/date_0.xsd:64 :empty
Type of restriction 24 : ./test/schemas/date_0.xsd:103 :empty
Building content model for date
xmlSchemaValidateCallback: time, time, time
xmlSchemaValidateCallback: time1, time1, time1
xmlSchemaValidateCallback: time2, time2, time2
xmlSchemaValidateCallback: time2, time2, time2
xmlSchemaValidateCallback: date1, date1, date1
xmlSchemaValidateCallback: date1, date1, date1
xmlSchemaValidateCallback: date2, date2, date2
xmlSchemaValidateCallback: date2, date2, date2
xmlSchemaValidateCallback: date1, date1, date1
xmlSchemaValidateCallback: date1, date1, date1
xmlSchemaValidateCallback: dt1, dt1, dt1
xmlSchemaValidateCallback: dt2, dt2, dt2
xmlSchemaValidateCallback: hol, hol, hol
xmlSchemaValidateCallback: hol, hol, hol
xmlSchemaValidateCallback: hol, hol, hol
xmlSchemaValidateCallback: year1, year1, year1
xmlSchemaValidateCallback: yearmon1, yearmon1, yearmon1
xmlSchemaValidateCallback: mon1, mon1, mon1
xmlSchemaValidateCallback: day1, day1, day1
xmlSchemaValidateCallback: monthday1, monthday1, monthday1
xmlSchemaValidateCallback: monthday1, monthday1, monthday1
xmlSchemaValidateCallback: dt2, dt2, dt2
Element date content check succeeded

View File

@ -1,30 +0,0 @@
Type of restriction 7 : ./test/schemas/dur_0.xsd:22 :empty
Type of restriction 9 : ./test/schemas/dur_0.xsd:30 :empty
Type of simpletype14 : ./test/schemas/dur_0.xsd:54 :simple
Type of restriction 15 : ./test/schemas/dur_0.xsd:55 :empty
Type of simpletype4 : ./test/schemas/dur_0.xsd:13 :simple
Type of restriction 5 : ./test/schemas/dur_0.xsd:14 :empty
Type of simpletype12 : ./test/schemas/dur_0.xsd:46 :simple
Type of MSD : ./test/schemas/dur_0.xsd:65 :simple
Type of sequence 2 : ./test/schemas/dur_0.xsd:10 :elements
Type of anontype1 : ./test/schemas/dur_0.xsd:9 :elements
Type of simpletype6 : ./test/schemas/dur_0.xsd:21 :simple
Type of simpletype10 : ./test/schemas/dur_0.xsd:37 :simple
Type of restriction 13 : ./test/schemas/dur_0.xsd:47 :empty
Type of simpletype8 : ./test/schemas/dur_0.xsd:29 :simple
Type of restriction 11 : ./test/schemas/dur_0.xsd:38 :empty
Type of restriction 16 : ./test/schemas/dur_0.xsd:66 :empty
Type of sequence 2 : ./test/schemas/dur_0.xsd:10 :elements
Type of choice 3 : ./test/schemas/dur_0.xsd:11 :elements
Building content model for duration
xmlSchemaValidateCallback: second1, second1, second1
xmlSchemaValidateCallback: second2, second2, second2
xmlSchemaValidateCallback: second2, second2, second2
xmlSchemaValidateCallback: month1, month1, month1
xmlSchemaValidateCallback: month1, month1, month1
xmlSchemaValidateCallback: month2, month2, month2
xmlSchemaValidateCallback: year1, year1, year1
xmlSchemaValidateCallback: year1, year1, year1
xmlSchemaValidateCallback: year2, year2, year2
xmlSchemaValidateCallback: month3, month3, month3
Element duration content check succeeded

View File

@ -1,5 +0,0 @@
Type of sequence 2 : ./test/schemas/elem0_0.xsd:11 :elements
Type of anontype1 : ./test/schemas/elem0_0.xsd:10 :elements
Type of sequence 2 : ./test/schemas/elem0_0.xsd:11 :elements
Building content model for doc
Element doc content check succeeded

View File

@ -1,7 +0,0 @@
Type of restriction 3 : ./test/schemas/empty_0.xsd:6 :empty
Type of complexContent 2 : ./test/schemas/empty_0.xsd:5 :empty
Type of anontype1 : ./test/schemas/empty_0.xsd:4 :empty
Type of complexContent 2 : ./test/schemas/empty_0.xsd:5 :empty
Type of restriction 3 : ./test/schemas/empty_0.xsd:6 :empty
Building content model for internationalPrice
Element internationalPrice content check succeeded

View File

@ -1,3 +0,0 @@
Type of anontype1 : ./test/schemas/empty_1.xsd:4 :empty
Building content model for internationalPrice
Element internationalPrice content check succeeded

View File

@ -1,17 +0,0 @@
Type of sequence 4 : ./test/schemas/extension0_0.xsd:13 :elements
Type of sequence 1 : ./test/schemas/extension0_0.xsd:4 :elements
Type of personName : ./test/schemas/extension0_0.xsd:3 :elements
Type of extension 3 : ./test/schemas/extension0_0.xsd:12 :elements
Type of complexContent 2 : ./test/schemas/extension0_0.xsd:11 :elements
Type of extendedName : ./test/schemas/extension0_0.xsd:10 :elements
Type of personName : ./test/schemas/extension0_0.xsd:3 :elements
Type of complexContent 2 : ./test/schemas/extension0_0.xsd:11 :elements
Type of extension 3 : ./test/schemas/extension0_0.xsd:12 :elements
Type of sequence 4 : ./test/schemas/extension0_0.xsd:13 :elements
Type of sequence 1 : ./test/schemas/extension0_0.xsd:4 :elements
Building content model for addressee
xmlSchemaValidateCallback: forename, forename, forename
xmlSchemaValidateCallback: forename, forename, forename
xmlSchemaValidateCallback: surname, surname, surname
xmlSchemaValidateCallback: generation, generation, generation
Element addressee content check succeeded

View File

@ -1,15 +0,0 @@
Type of restriction 8 : ./test/schemas/item_0.xsd:30 :empty
Type of simpletype4 : ./test/schemas/item_0.xsd:15 :simple
Type of restriction 5 : ./test/schemas/item_0.xsd:16 :empty
Type of sequence 3 : ./test/schemas/item_0.xsd:12 :elements
Type of anontype2 : ./test/schemas/item_0.xsd:11 :elements
Type of sequence 3 : ./test/schemas/item_0.xsd:12 :elements
Type of simpletype7 : ./test/schemas/item_0.xsd:29 :simple
Type of restriction 1 : ./test/schemas/item_0.xsd:6 :empty
Type of SKU : ./test/schemas/item_0.xsd:5 :simple
Building content model for Item
xmlSchemaValidateCallback: productName, productName, productName
xmlSchemaValidateCallback: quantity, quantity, quantity
xmlSchemaValidateCallback: USPrice, USPrice, USPrice
xmlSchemaValidateCallback: comment, comment, comment
Element Item content check succeeded

View File

@ -1,15 +0,0 @@
Type of restriction 9 : ./test/schemas/item_1.xsd:34 :empty
Type of simpletype4 : ./test/schemas/item_1.xsd:15 :simple
Type of restriction 5 : ./test/schemas/item_1.xsd:16 :empty
Type of sequence 3 : ./test/schemas/item_1.xsd:12 :elements
Type of anontype2 : ./test/schemas/item_1.xsd:11 :elements
Type of sequence 3 : ./test/schemas/item_1.xsd:12 :elements
Type of simpletype8 : ./test/schemas/item_1.xsd:33 :simple
Type of restriction 1 : ./test/schemas/item_1.xsd:6 :empty
Type of SKU : ./test/schemas/item_1.xsd:5 :simple
Building content model for Item
xmlSchemaValidateCallback: productName, productName, productName
xmlSchemaValidateCallback: quantity, quantity, quantity
xmlSchemaValidateCallback: USPrice, USPrice, USPrice
xmlSchemaValidateCallback: comment, comment, comment
Element Item content check succeeded

View File

@ -1,6 +0,0 @@
Type of nonNegativeInteger :basic
Type of extension 2 : ./test/schemas/length1_0.xsd:5 :basic
Type of complexContent 1 : ./test/schemas/length1_0.xsd:4 :basic
Type of length1 : ./test/schemas/length1_0.xsd:3 :basic
Type of extension 2 : ./test/schemas/length1_0.xsd:5 :basic
Type of complexContent 1 : ./test/schemas/length1_0.xsd:4 :basic

View File

@ -1,11 +0,0 @@
Type of sequence 3 : ./test/schemas/length2_0.xsd:6 :elements
Type of restriction 2 : ./test/schemas/length2_0.xsd:5 :elements
Type of complexContent 1 : ./test/schemas/length2_0.xsd:4 :elements
Type of sequence 3 : ./test/schemas/length2_0.xsd:6 :elements
Type of complexContent 1 : ./test/schemas/length2_0.xsd:4 :elements
Type of length2 : ./test/schemas/length2_0.xsd:3 :elements
Type of restriction 2 : ./test/schemas/length2_0.xsd:5 :elements
Building content model for depth
xmlSchemaValidateCallback: size, size, size
xmlSchemaValidateCallback: unit, unit, unit
Element depth content check succeeded

View File

@ -1,8 +1 @@
Unable to lookup type non-positive-integer:http://www.w3.org/2001/XMLSchemaSchemas: element size type non-positive-integer not found
Type of sequence 1 : ./test/schemas/length3_0.xsd:4 :elements
Type of length3 : ./test/schemas/length3_0.xsd:3 :elements
Type of sequence 1 : ./test/schemas/length3_0.xsd:4 :elements
Building content model for depth
xmlSchemaValidateCallback: size, size, size
xmlSchemaValidateCallback: unit, unit, unit
Element depth content check succeeded
Schemas: element size type non-positive-integer not found

View File

@ -1,9 +0,0 @@
Type of sequence 2 : ./test/schemas/list0_0.xsd:8 :elements
Type of anontype1 : ./test/schemas/list0_0.xsd:7 :elements
Type of sequence 2 : ./test/schemas/list0_0.xsd:8 :elements
Building content model for test
xmlSchemaValidateCallback: string, string, string
xmlSchemaValidateCallback: string, string, string
xmlSchemaValidateCallback: string, string, string
xmlSchemaValidateCallback: string, string, string
Element test content check succeeded

View File

@ -1,6 +1 @@
Type of sequence 2 : ./test/schemas/list0_0.xsd:8 :elements
Type of anontype1 : ./test/schemas/list0_0.xsd:7 :elements
Type of sequence 2 : ./test/schemas/list0_0.xsd:8 :elements
Building content model for test
xmlSchemaValidateCallback: string, string, string
Element test content check failed

View File

@ -1,7 +0,0 @@
Type of sequence 2 : ./test/schemas/list0_0.xsd:8 :elements
Type of anontype1 : ./test/schemas/list0_0.xsd:7 :elements
Type of sequence 2 : ./test/schemas/list0_0.xsd:8 :elements
Building content model for test
xmlSchemaValidateCallback: string, string, string
xmlSchemaValidateCallback: string, string, string
Element test content check succeeded

View File

@ -1,8 +1 @@
Type of sequence 2 : ./test/schemas/list0_1.xsd:8 :elements
Type of anontype1 : ./test/schemas/list0_1.xsd:7 :elements
Type of sequence 2 : ./test/schemas/list0_1.xsd:8 :elements
Building content model for test
xmlSchemaValidateCallback: string, string, string
xmlSchemaValidateCallback: string, string, string
xmlSchemaValidateCallback: string, string, string
Element test content check failed

View File

@ -1,6 +1 @@
Type of sequence 2 : ./test/schemas/list0_1.xsd:8 :elements
Type of anontype1 : ./test/schemas/list0_1.xsd:7 :elements
Type of sequence 2 : ./test/schemas/list0_1.xsd:8 :elements
Building content model for test
xmlSchemaValidateCallback: string, string, string
Element test content check failed

View File

@ -1,7 +0,0 @@
Type of sequence 2 : ./test/schemas/list0_1.xsd:8 :elements
Type of anontype1 : ./test/schemas/list0_1.xsd:7 :elements
Type of sequence 2 : ./test/schemas/list0_1.xsd:8 :elements
Building content model for test
xmlSchemaValidateCallback: string, string, string
xmlSchemaValidateCallback: string, string, string
Element test content check succeeded

View File

@ -1,51 +0,0 @@
Type of sequence 1 : ./test/schemas/po0_0.xsd:12 :elements
Type of PurchaseOrderType : ./test/schemas/po0_0.xsd:11 :elements
Type of restriction 8 : ./test/schemas/po0_0.xsd:38 :empty
Type of sequence 4 : ./test/schemas/po0_0.xsd:31 :elements
Type of Items : ./test/schemas/po0_0.xsd:30 :elements
Type of sequence 3 : ./test/schemas/po0_0.xsd:21 :elements
Type of USAddress : ./test/schemas/po0_0.xsd:20 :elements
Type of sequence 6 : ./test/schemas/po0_0.xsd:34 :elements
Type of anontype5 : ./test/schemas/po0_0.xsd:33 :elements
Type of sequence 3 : ./test/schemas/po0_0.xsd:21 :elements
Type of restriction 10 : ./test/schemas/po0_0.xsd:54 :empty
Type of sequence 4 : ./test/schemas/po0_0.xsd:31 :elements
Type of sequence 6 : ./test/schemas/po0_0.xsd:34 :elements
Type of simpletype7 : ./test/schemas/po0_0.xsd:37 :simple
Type of sequence 1 : ./test/schemas/po0_0.xsd:12 :elements
Type of SKU : ./test/schemas/po0_0.xsd:53 :simple
Building content model for purchaseOrder
Building content model for items
Building content model for item
Building content model for shipTo
Building content model for billTo
xmlSchemaValidateCallback: shipTo, shipTo, shipTo
xmlSchemaValidateCallback: name, name, name
xmlSchemaValidateCallback: street, street, street
xmlSchemaValidateCallback: city, city, city
xmlSchemaValidateCallback: state, state, state
xmlSchemaValidateCallback: zip, zip, zip
Element shipTo content check succeeded
xmlSchemaValidateCallback: billTo, billTo, billTo
xmlSchemaValidateCallback: name, name, name
xmlSchemaValidateCallback: street, street, street
xmlSchemaValidateCallback: city, city, city
xmlSchemaValidateCallback: state, state, state
xmlSchemaValidateCallback: zip, zip, zip
Element billTo content check succeeded
xmlSchemaValidateCallback: comment, comment, comment
xmlSchemaValidateCallback: items, items, items
xmlSchemaValidateCallback: item, item, item
xmlSchemaValidateCallback: productName, productName, productName
xmlSchemaValidateCallback: quantity, quantity, quantity
xmlSchemaValidateCallback: USPrice, USPrice, USPrice
xmlSchemaValidateCallback: comment, comment, comment
Element item content check succeeded
xmlSchemaValidateCallback: item, item, item
xmlSchemaValidateCallback: productName, productName, productName
xmlSchemaValidateCallback: quantity, quantity, quantity
xmlSchemaValidateCallback: USPrice, USPrice, USPrice
xmlSchemaValidateCallback: shipDate, shipDate, shipDate
Element item content check succeeded
Element items content check succeeded
Element purchaseOrder content check succeeded

1
result/schemas/po1_0_0 Normal file
View File

@ -0,0 +1 @@
./test/schemas/po1_0.xml fails to validate

View File

@ -0,0 +1,5 @@
Schemas: element items type Items not found
Schemas: element anonelem9 ref to comment not found
Schemas: element anonelem2 ref to comment not found
Schemas: attribute partNum type SKU not found
Element purchaseOrder content check failed

View File

@ -1,14 +0,0 @@
Type of sequence 1 : ./test/schemas/restriction0_0.xsd:4 :elements
Type of personName : ./test/schemas/restriction0_0.xsd:3 :elements
Type of sequence 4 : ./test/schemas/restriction0_0.xsd:13 :elements
Type of restriction 3 : ./test/schemas/restriction0_0.xsd:12 :elements
Type of complexContent 2 : ./test/schemas/restriction0_0.xsd:11 :elements
Type of restriction 3 : ./test/schemas/restriction0_0.xsd:12 :elements
Type of sequence 4 : ./test/schemas/restriction0_0.xsd:13 :elements
Type of sequence 1 : ./test/schemas/restriction0_0.xsd:4 :elements
Type of complexContent 2 : ./test/schemas/restriction0_0.xsd:11 :elements
Type of simpleName : ./test/schemas/restriction0_0.xsd:10 :elements
Building content model for who
xmlSchemaValidateCallback: forename, forename, forename
xmlSchemaValidateCallback: surname, surname, surname
Element who content check succeeded

View File

@ -1,88 +0,0 @@
Type of sequence 14 : ./test/schemas/seq0_0.xsd:55 :elements
Type of anontype13 : ./test/schemas/seq0_0.xsd:54 :elements
Type of sequence 12 : ./test/schemas/seq0_0.xsd:47 :elements
Type of sequence 4 : ./test/schemas/seq0_0.xsd:15 :elements
Type of anontype3 : ./test/schemas/seq0_0.xsd:14 :elements
Type of sequence 8 : ./test/schemas/seq0_0.xsd:31 :elements
Type of anontype7 : ./test/schemas/seq0_0.xsd:30 :elements
Type of sequence 12 : ./test/schemas/seq0_0.xsd:47 :elements
Type of anontype11 : ./test/schemas/seq0_0.xsd:46 :elements
Type of sequence 10 : ./test/schemas/seq0_0.xsd:39 :elements
Type of sequence 2 : ./test/schemas/seq0_0.xsd:11 :elements
Type of anontype1 : ./test/schemas/seq0_0.xsd:10 :elements
Type of sequence 6 : ./test/schemas/seq0_0.xsd:23 :elements
Type of anontype5 : ./test/schemas/seq0_0.xsd:22 :elements
Type of sequence 8 : ./test/schemas/seq0_0.xsd:31 :elements
Type of sequence 4 : ./test/schemas/seq0_0.xsd:15 :elements
Type of sequence 6 : ./test/schemas/seq0_0.xsd:23 :elements
Type of sequence 10 : ./test/schemas/seq0_0.xsd:39 :elements
Type of anontype9 : ./test/schemas/seq0_0.xsd:38 :elements
Type of sequence 2 : ./test/schemas/seq0_0.xsd:11 :elements
Type of sequence 14 : ./test/schemas/seq0_0.xsd:55 :elements
Building content model for z-o
Building content model for z-3
Building content model for o-o
Building content model for z-u
Building content model for o-u
Building content model for doc
Building content model for o-3
xmlSchemaValidateCallback: z-o, z-o, z-o
xmlSchemaValidateCallback: b, b, b
Element z-o content check succeeded
xmlSchemaValidateCallback: o-o, o-o, o-o
xmlSchemaValidateCallback: c, c, c
Element o-o content check succeeded
xmlSchemaValidateCallback: z-u, z-u, z-u
xmlSchemaValidateCallback: d, d, d
Element z-u content check succeeded
xmlSchemaValidateCallback: o-u, o-u, o-u
xmlSchemaValidateCallback: e, e, e
Element o-u content check succeeded
xmlSchemaValidateCallback: z-3, z-3, z-3
xmlSchemaValidateCallback: f, f, f
Element z-3 content check succeeded
xmlSchemaValidateCallback: o-3, o-3, o-3
xmlSchemaValidateCallback: g, g, g
Element o-3 content check succeeded
xmlSchemaValidateCallback: z-o, z-o, z-o
xmlSchemaValidateCallback: b, b, b
Element z-o content check succeeded
xmlSchemaValidateCallback: o-o, o-o, o-o
xmlSchemaValidateCallback: c, c, c
Element o-o content check succeeded
xmlSchemaValidateCallback: z-u, z-u, z-u
xmlSchemaValidateCallback: d, d, d
xmlSchemaValidateCallback: d, d, d
xmlSchemaValidateCallback: d, d, d
Element z-u content check succeeded
xmlSchemaValidateCallback: o-u, o-u, o-u
xmlSchemaValidateCallback: e, e, e
xmlSchemaValidateCallback: e, e, e
xmlSchemaValidateCallback: e, e, e
Element o-u content check succeeded
xmlSchemaValidateCallback: z-3, z-3, z-3
xmlSchemaValidateCallback: f, f, f
xmlSchemaValidateCallback: f, f, f
xmlSchemaValidateCallback: f, f, f
Element z-3 content check succeeded
xmlSchemaValidateCallback: o-3, o-3, o-3
xmlSchemaValidateCallback: g, g, g
xmlSchemaValidateCallback: g, g, g
xmlSchemaValidateCallback: g, g, g
Element o-3 content check succeeded
xmlSchemaValidateCallback: z-o, z-o, z-o
Element z-o content check succeeded
xmlSchemaValidateCallback: o-o, o-o, o-o
xmlSchemaValidateCallback: c, c, c
Element o-o content check succeeded
xmlSchemaValidateCallback: z-u, z-u, z-u
Element z-u content check succeeded
xmlSchemaValidateCallback: o-u, o-u, o-u
xmlSchemaValidateCallback: e, e, e
Element o-u content check succeeded
xmlSchemaValidateCallback: z-3, z-3, z-3
Element z-3 content check succeeded
xmlSchemaValidateCallback: o-3, o-3, o-3
xmlSchemaValidateCallback: g, g, g
Element o-3 content check succeeded
Element doc content check succeeded

1
test/schemas/attr0_0.xml Normal file
View File

@ -0,0 +1 @@
<foo id="abc"/>

13
test/schemas/attr0_0.xsd Normal file
View File

@ -0,0 +1,13 @@
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="foo">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="id" type="xsd:ID"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:schema>

View File

@ -0,0 +1,17 @@
<?xml version="1.0"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:html="http://www.w3.org/1999/xhtml" xmlns:my="uri:mywork" targetNamespace="uri:mywork">
<import namespace="http://www.w3.org/1999/xhtml"/>
<annotation>
<documentation>
<html:p>[Some documentation for my schema]</html:p>
</documentation>
</annotation>
<complexType name="myType">
<sequence>
<element ref="html:p" minOccurs="0"/>
</sequence>
</complexType>
<element name="myElt" type="my:myType"/>
</schema>

33
test/schemas/po1_0.xml Normal file
View File

@ -0,0 +1,33 @@
<?xml version="1.0"?>
<apo:purchaseOrder xmlns:apo="http://www.example.com/PO1"
orderDate="1999-10-20">
<shipTo country="US">
<name>Alice Smith</name>
<street>123 Maple Street</street>
<city>Mill Valley</city>
<state>CA</state>
<zip>90952</zip>
</shipTo>
<billTo country="US">
<name>Robert Smith</name>
<street>8 Oak Avenue</street>
<city>Old Town</city>
<state>PA</state>
<zip>95819</zip>
</billTo>
<apo:comment>Hurry, my lawn is going wild!</apo:comment>
<items>
<item partNum="872-AA">
<productName>Lawnmower</productName>
<quantity>1</quantity>
<USPrice>148.95</USPrice>
<comment>Confirm this is electric</comment>
</item>
<item partNum="926-AA">
<productName>Baby Monitor</productName>
<quantity>1</quantity>
<USPrice>39.98</USPrice>
<shipDate>1999-05-21</shipDate>
</item>
</items>
</apo:purchaseOrder>

63
test/schemas/po1_0.xsd Normal file
View File

@ -0,0 +1,63 @@
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:po="http://www.example.com/PO1"
targetNamespace="http://www.example.com/PO1"
elementFormDefault="unqualified"
attributeFormDefault="unqualified">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Purchase order schema for Example.com.
Copyright 2000 Example.com. All rights reserved.
</xsd:documentation>
</xsd:annotation>
<xsd:element name="purchaseOrder" type="po:PurchaseOrderType"/>
<xsd:element name="comment" type="xsd:string"/>
<xsd:complexType name="PurchaseOrderType">
<xsd:sequence>
<xsd:element name="shipTo" type="po:USAddress"/>
<xsd:element name="billTo" type="po:USAddress"/>
<xsd:element ref="comment" minOccurs="0"/>
<xsd:element name="items" type="Items"/>
</xsd:sequence>
<xsd:attribute name="orderDate" type="xsd:date"/>
</xsd:complexType>
<xsd:complexType name="USAddress">
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="street" type="xsd:string"/>
<xsd:element name="city" type="xsd:string"/>
<xsd:element name="state" type="xsd:string"/>
<xsd:element name="zip" type="xsd:decimal"/>
</xsd:sequence>
<xsd:attribute name="country" type="xsd:NMTOKEN" fixed="US"/>
</xsd:complexType>
<xsd:complexType name="Items">
<xsd:sequence>
<xsd:element name="item" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="productName" type="xsd:string"/>
<xsd:element name="quantity">
<xsd:simpleType>
<xsd:restriction base="xsd:positiveInteger">
<xsd:maxExclusive value="100"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="USPrice" type="xsd:decimal"/>
<xsd:element ref="comment" minOccurs="0"/>
<xsd:element name="shipDate" type="xsd:date" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="partNum" type="SKU" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!-- Stock Keeping Unit, a code for identifying products -->
<xsd:simpleType name="SKU">
<xsd:restriction base="xsd:string">
<xsd:pattern value="\d{3}-[A-Z]{2}"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>

View File

@ -25,9 +25,9 @@
#include <libxml/xmlautomata.h>
#include <libxml/xmlregexp.h>
#define DEBUG 1 /* very verbose output */
#define DEBUG_CONTENT 1
#define DEBUG_TYPE 1
/* #define DEBUG 1 */ /* very verbose output */
/* #define DEBUG_CONTENT 1 */
/* #define DEBUG_TYPE 1 */
/* #define DEBUG_CONTENT_REGEXP 1 */
/* #define DEBUG_AUTOMATA 1 */
@ -113,6 +113,7 @@ struct _xmlSchemaValidCtxt {
int err;
xmlNodePtr node;
xmlNodePtr cur;
xmlSchemaTypePtr type;
xmlRegExecCtxtPtr regexp;
@ -3526,13 +3527,16 @@ xmlSchemaTypeFixup(xmlSchemaTypePtr typeDecl,
xmlSchemaParserCtxtPtr ctxt,
const xmlChar *name)
{
if (typeDecl == NULL)
return;
if (name == NULL)
name = typeDecl->name;
if (typeDecl->contentType == XML_SCHEMA_CONTENT_UNKNOWN) {
switch (typeDecl->type) {
case XML_SCHEMA_TYPE_SIMPLE_CONTENT: {
xmlSchemaTypeFixup(typeDecl->subtypes, ctxt, NULL);
typeDecl->contentType = typeDecl->subtypes->contentType;
if (typeDecl->subtypes != NULL)
typeDecl->contentType = typeDecl->subtypes->contentType;
break;
}
case XML_SCHEMA_TYPE_RESTRICTION: {
@ -3635,7 +3639,9 @@ xmlSchemaTypeFixup(xmlSchemaTypePtr typeDecl,
typeDecl->contentType = XML_SCHEMA_CONTENT_MIXED;
else {
xmlSchemaTypeFixup(typeDecl->subtypes, ctxt, NULL);
typeDecl->contentType = typeDecl->subtypes->contentType;
if (typeDecl->subtypes != NULL)
typeDecl->contentType =
typeDecl->subtypes->contentType;
}
}
break;
@ -3648,7 +3654,9 @@ xmlSchemaTypeFixup(xmlSchemaTypePtr typeDecl,
typeDecl->contentType = XML_SCHEMA_CONTENT_MIXED;
else {
xmlSchemaTypeFixup(typeDecl->subtypes, ctxt, NULL);
typeDecl->contentType = typeDecl->subtypes->contentType;
if (typeDecl->subtypes != NULL)
typeDecl->contentType =
typeDecl->subtypes->contentType;
}
}
break;
@ -4301,7 +4309,8 @@ xmlSchemaValidateSimpleValue(xmlSchemaValidCtxtPtr ctxt,
xmlSchemaFreeValue(ctxt->value);
ctxt->value = NULL;
}
ret = xmlSchemaValidatePredefinedType(type, value, &(ctxt->value));
ret = xmlSchemaValPredefTypeNode(type, value, &(ctxt->value),
ctxt->cur);
if (ret != 0) {
if (ctxt->error != NULL)
ctxt->error(ctxt->userData,
@ -4713,7 +4722,7 @@ xmlSchemaValidateSimpleType(xmlSchemaValidCtxtPtr ctxt, xmlNodePtr node) {
if (ctxt->error != NULL)
ctxt->error(ctxt->userData,
"Element %s: attribute %s should not be present\n",
child->name, attr->name);
node->name, attr->name);
return(ctxt->err);
}
}
@ -4958,6 +4967,7 @@ xmlSchemaValidateComplexType(xmlSchemaValidCtxtPtr ctxt, xmlNodePtr node) {
child = ctxt->node;
type = ctxt->type;
ctxt->cur = node;
switch (type->contentType) {
case XML_SCHEMA_CONTENT_EMPTY:
@ -5046,8 +5056,10 @@ xmlSchemaValidateContent(xmlSchemaValidCtxtPtr ctxt, xmlNodePtr node) {
child = ctxt->node;
type = ctxt->type;
ctxt->cur = node;
xmlSchemaValidateAttributes(ctxt, node, type->attributes);
ctxt->cur = node;
switch (type->type) {
case XML_SCHEMA_TYPE_ANY:
@ -5287,14 +5299,27 @@ xmlSchemaValidateAttributes(xmlSchemaValidCtxtPtr ctxt, xmlNodePtr elem,
attr = ctxt->attr[i].attr;
if (attr == NULL)
continue;
if (!xmlStrEqual(attr->name, attributes->name))
continue;
/*
* TODO: handle the mess about namespaces here.
*/
if ((attr->ns != NULL) /* || (attributes->ns != NULL) */) {
TODO
if (attributes->ref != NULL) {
if (!xmlStrEqual(attr->name, attributes->ref))
continue;
if (attr->ns != NULL) {
if ((attributes->refNs == NULL) ||
(!xmlStrEqual(attr->ns->href, attributes->refNs)))
continue;
} else if (attributes->refNs != NULL) {
continue;
}
} else {
if (!xmlStrEqual(attr->name, attributes->name))
continue;
/*
* TODO: handle the mess about namespaces here.
*/
if ((attr->ns != NULL) /* || (attributes->ns != NULL) */) {
TODO
}
}
ctxt->cur = (xmlNodePtr) attributes;
if (attributes->subtypes == NULL) {
ctxt->err = XML_SCHEMAS_ERR_INTERNAL;
if (ctxt->error != NULL)