1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-10-21 14:53:44 +03:00
Commit Graph

339 Commits

Author SHA1 Message Date
Daniel Veillard
d0271473ab compilation and doc build fixes from Michael Day Daniel
* xmlreader.c include/libxml/xmlreader.h xmlschemas.c: compilation
  and doc build fixes from Michael Day
Daniel
2006-01-02 10:22:02 +00:00
Kasimier T. Buchcik
5bb0c08d2f Fixed a segfault during text concatenation when validating a node tree:
* xmlschemas.c xmlstring.c: Fixed a segfault during
  text concatenation when validating a node tree:
  xmlStrncat was called with a @len of -1; but unlike
  xmlStrncatNew, it does not calculate the length
  automatically in such a case (reported by Judy Hay
  on the mailing list).
  Updated the descriptions of the involved string
  functions to note this.
2005-12-20 10:48:33 +00:00
Kasimier T. Buchcik
7ca5aedfc3 Workaround for bug #323510: substituted the epsilon transition for a
* xmlschemas.c: Workaround for bug #323510: substituted the
  epsilon transition for a labelled transition, in order to
  avoid a bug in xmlregexp.c which eliminated the epsilon
  transition and marked the initial state as final.
2005-12-12 15:13:40 +00:00
Daniel Veillard
6a0baa0cd8 fixed a number of warnings shown by HP-UX compiler and reported by Rick
* HTMLparser.c configure.in parserInternals.c runsuite.c runtest.c
  testapi.c xmlschemas.c xmlschemastypes.c xmlstring.c: fixed a number
  of warnings shown by HP-UX compiler and reported by Rick Jones
Daniel
2005-12-10 11:11:12 +00:00
Kasimier T. Buchcik
215406f089 Fixed a segfault: the instance document was still tried to be validated,
* xmlschemas.c: Fixed a segfault: the instance document was
  still tried to be validated, if the schema, dynamically
  acquired using XSI was invalid, thus mangled. The
  validation will stop (or rather won't validate) now in
  such a case. The schema parser error code will be set
  on the validion context now; this is somehow not nice,
  but it assures that the validation context indicates an
  error in there was a parser error.
2005-12-07 12:14:09 +00:00
Kasimier T. Buchcik
f39e8d1f05 Fixed bubbling of duplicate IDC nodes: the parent's list of duplicates was
* xmlschemas.c: Fixed bubbling of duplicate IDC nodes: the
  parent's list of duplicates was filled with NULLs instead
  of the nodes under certain conditions. This lead to a
  segfault when the list's entries were accessed.
2005-11-30 11:03:24 +00:00
Kasimier T. Buchcik
132ba5f5da An assignment to a local variable, which was used to access the IDC node
* xmlschemas.c: An assignment to a local variable, which was
  used to access the IDC node list, was missing after the
  reallocation of the list (reported by Fabrice GUY
  bug #322411). Renamed the define ENABLE_IDC_NODE_TABLES
  to ENABLE_IDC_NODE_TABLES_TEST and *disabled* it, since
  it is used to force bubbling of IDC node tables even
  if not necessary; this was intended to be used for test
  purposes, but I obviously missed to disable it (although
  it apparently helped finding the bug).
2005-11-28 12:32:24 +00:00
Kasimier T. Buchcik
81755ea6c4 In xmlSchemaAssembleByXSI() the return value of xmlSchemaGetMetaAttrInfo()
* xmlschemas.c: In xmlSchemaAssembleByXSI() the return value
  of xmlSchemaGetMetaAttrInfo() was not assigned to anything;
  this caused XSI-driven-dynamic schema acquisition to fail
  with @noNamespaceSchemaLocation (reported by Julien Lamy
  on the mailing list).
2005-11-23 16:39:27 +00:00
Kasimier T. Buchcik
5d2998be54 Fixed a bug in xmlSchemaFindRedefCompInGraph() which caused the search for
* xmlschemas.c: Fixed a bug in xmlSchemaFindRedefCompInGraph()
  which caused the search for components to stop at the
  first encountered attribute group component.
  Fixed error report in xmlSchemaCheckSRCRedefineFirst(): the
  designation of a not-found component was not reported.
2005-11-22 17:36:01 +00:00
Kasimier T. Buchcik
90b5ebc0f3 Added xmlSchemaSetParserStructuredErrors() to the API. Fixed channeling of
* xmlschemas.c include/libxml/xmlschemas.h:
  Added xmlSchemaSetParserStructuredErrors() to the API.
  Fixed channeling of error relevant information to
  subsequent parser/validation contexts.
2005-11-18 17:18:27 +00:00
Kasimier T. Buchcik
77e76829b6 Changed xmlSchemaFormatIDCKeySequence() to use
* xmlschemas.c: Changed xmlSchemaFormatIDCKeySequence()
  to use xmlSchemaGetCanonValueWhtspExt() in order to
  correctly report values for xs:anySimpleType.
* test/schemas/idc-keyref-err1*
  result/schemas/idc-keyref-err1*: Added a test for this change.
2005-11-11 12:52:32 +00:00
Kasimier T. Buchcik
69dea3a0c0 Fixed the type of the totalDigits value to be positiveInteger. Fixed crash
* xmlschemas.c xmlschemastypes.c: Fixed the type of the
  totalDigits value to be positiveInteger.
  Fixed crash in an error report function when we gave it
  the document node; only element and attribute nodes are
  processed now (reported by Rob Richards).
2005-11-07 14:02:44 +00:00
Kasimier T. Buchcik
f326e77cb1 Removed creation of a temporary parser context during validation when
* xmlschemas.c: Removed creation of a temporary parser context
  during validation when processing xsi:type; this previously
  added a string to the dict of the schema - to assure thread
  safety, we don't want to modify a given schema during
  validation.
2005-10-20 11:06:00 +00:00
Kasimier T. Buchcik
940ab0c676 Fixed a potential memory leak in xmlSchemaCheckCSelectorXPath() when an
* xmlschemas.c: Fixed a potential memory leak in
  xmlSchemaCheckCSelectorXPath() when an internal error occurs.
  Fixed setting of ctxt->err to the given error code in
  the parsing error functions.
* pattern.c: Added internal xmlCompileIDCXPathPath() as a
  starting point for IDC XPath compilation; this and some other
  tiny changes fixes issues regarding whitespace in the
  expressions and IDC selector/field relevant restrictions of
  the subset of XPath. Fixed a missing blocking of attributes
  in xmlStreamPushInternal().
2005-10-19 17:00:53 +00:00
Daniel Veillard
567a45b5e9 removed the error message removed 2 instability warnings from function
* runtest.c: removed the error message
* relaxng.c xmlschemas.c: removed 2 instability warnings from function
  documentation
* include/libxml/schemasInternals.h: changed warning about API stability
* xmlregexp.c: trying to improve runtime execution of non-deterministic
  regexps and automata. Not fully finished but should be way better.
Daniel
2005-10-18 19:11:55 +00:00
Kasimier T. Buchcik
ee8e8ae963 Fixed a memory leak in xmlSchemaContentModelDump(). Added output of local
* xmlschemas.c: Fixed a memory leak in
  xmlSchemaContentModelDump(). Added output of local types
  in xmlSchemaElementDump(). Tiny cosmetical changes to the
  dump output.
2005-10-17 14:15:37 +00:00
Kasimier T. Buchcik
65c2f1d78a Silenced intel compiler warnings (reported by Kjartan Maraas, bug
* tree.c pattern.c: Silenced intel compiler warnings (reported
  by Kjartan Maraas, bug #318517).
* xmlschemas.c: The above changes in pattern.c revealed an
  inconsistency wrt IDCs: we now _only_ pop XPath states, if
  we really pushed them beforehand; this was previously not
  checked for the case when we discover an element node to be
  invalid wrt the content model.
  Fixed segfault in xmlSchemaGetEffectiveValueConstraint().
2005-10-17 12:39:58 +00:00
Kasimier T. Buchcik
2782027083 Fixed some identity-constraint issues: Restructured IDC node-tables
* xmlschemas.c: Fixed some identity-constraint issues:
  Restructured IDC node-tables
  Allowed IDCs to resolve also to nodes of complex type with
  simple content.
  Added check for keyrefs with references to keyrefs.
  IDC target-nodes were interferring with IDC node-tables,
  since they used one list of entries only. I separated this
  one big list into 3 lists: 1 for IDC node-table entries,
  1 for _duplicates_ of IDC node-table entries and 1 for
  IDC target-nodes. More code, but cleaner and it works at last.
  Keyrefs will fail to resolve to duplicate key/unique entries.
  I thought this was already working this way, but it didn't.
  The wording of the definition for [node table] in the spec
  can lead to a scenario, where keyrefs resolve perfectly, even
  if the relevant key-sequences of the referenced key/unique have
  duplicates in the subtree. Currently only Saxon 8.5.1 is
  dissallowing resolution to duplicate entries correctly - we
  will follow Saxon here.
  Removed some intel compiler warnings (reported by
  Kjartan Maraas, bug #318517).
* pattern.c: Fixed an IDC-XPath problem when resolving to
  attributes.
2005-10-14 14:33:48 +00:00
Kasimier T. Buchcik
570faa57c4 Initial implementation for redefinitions; this still misses checks for
* xmlschemas.c include/libxml/schemasInternals.h
  include/libxml/xmlerror.h: Initial implementation for
  redefinitions; this still misses checks for restrictions
  of the content model of complex types.
  Fixed default/fixed values for attributes (looks like they
  did not work in the last  releases).
  Completed constraints for attribute uses.
  Seperated attribute derivation from attribute constraints.
  Completed constraints for attribute group definitions.
  Disallowing <import>s of schemas in no target namespace if the
  importing schema is a chameleon schema. This contradicts
  the way Saxon, Xerces-J, XSV and IBM's SQC works, but the
  W3C XML Schema WG, thinks it is correct to dissalow such
  imports.
  Added cos-all-limited constraints.
  Restructured reference resolution to model groups and element
  declarations.
  Misc cleanup.
2005-10-10 13:18:40 +00:00
Daniel Veillard
33b20b70e2 release of 2.6.22 updated doc and rebuild. added XML_SAVE_NO_XHTML
* NEWS configure.in doc//*: release of 2.6.22 updated doc and
  rebuild.
* xmlsave.c include/libxml/xmlsave.h: added XML_SAVE_NO_XHTML
  xmlSaveOption
* xmlschemas.c: minor cleanups
Daniel
2005-09-12 21:43:20 +00:00
Kasimier T. Buchcik
22c0c46515 Completion of the schema graph. Centralisation, more robustness of the
* xmlschemas.c include/libxml/schemasInternals.h
  include/libxml/xmlerror.h: Completion of the schema graph.
  Centralisation, more robustness of the schema document
  aquisition story. Centralised and restructured component fixup.
  Fixed attribute derivation when 'prohibiting' attribute uses.
  Added warnings: when schema documents cannot be localized
  during imports; when we get duplicate and pointless attribute
  prohibitions. Changed error reports for IDCs to report
  the relevant IDC designation as well (requested by GUY Fabrice).
  Misc code-cleanup.
2005-09-12 19:09:46 +00:00
Kasimier T. Buchcik
630215baf8 Some preparation for the creation of a graph of
* xmlschemas.c: Some preparation for the creation of a graph
  of imported/included/redefined schemas; this is needed for
  at least the redefinitions.
  Centralized the creation of the parser context in one function.
2005-08-22 10:15:39 +00:00
Kasimier T. Buchcik
764b3d61c3 Changed output for keyref-match errors; the target-node will be now
* xmlschemas.c include/libxml/xmlerror.h:
  Changed output for keyref-match errors; the target-node will
  be now reported rather than the scope-node of the keyref
  definition - allowing easier chasing of instance errors.
  This was reported by Guy Fabrice to the mailing list.
  Some initial parsing code for schema redefinitions.
* result/schemas/bug303566_1_1.err
  result/schemas/bug312957_1_0.err: Adapted test results due
  to the keyref changes.
2005-08-12 12:25:23 +00:00
Daniel Veillard
210536bd32 fix for bug #312945 as pointed by Dean Hill, the context type was not
* xmlschemas.c: fix for bug #312945 as pointed by Dean Hill, the
  context type was not always properly initialized.
Daniel
2005-08-10 21:40:02 +00:00
Kasimier T. Buchcik
800cbac34e Fixed #312957 reported by Carol Hunter: streaming XPath states were not
* xmlschemas.c: Fixed #312957 reported by Carol Hunter:
  streaming XPath states were not popped in every case,
  thus failed to resolve correctly for subsequent input.
* test/schemas/bug312957* result/schemas/bug312957*:
  Added the test submitted by Carol Hunter.
2005-08-09 12:31:55 +00:00
Daniel Veillard
6e65e15777 trying to nail down the remaining ##other issues completed the tests and
* xmlregexp.c xmlschemas.c: trying to nail down the remaining
  ##other issues
* result/schemas/any7* test/schemas/any7: completed the tests
  and added the results
* result/schemas/any3_0_0.err result/schemas/any5_0_0.err
  result/schemas/any5_1_0.err: this slightly chnages the output
  from 3 existing tests
Daniel
2005-08-09 11:09:52 +00:00
Kasimier T. Buchcik
004b5463eb Fixed a memory leak: xmlSchemaFreeAnnot() was only freeing the first
* xmlschemas.c: Fixed a memory leak: xmlSchemaFreeAnnot() was
  only freeing the first annotation in the list.
2005-08-08 12:43:09 +00:00
Daniel Veillard
24505b0f5c a lot of small cleanups based on Linus' sparse check output. Daniel
* HTMLparser.c SAX2.c encoding.c globals.c parser.c relaxng.c
  runsuite.c runtest.c schematron.c testHTML.c testReader.c
  testRegexp.c testSAX.c testThreads.c valid.c xinclude.c xmlIO.c
  xmllint.c xmlmodule.c xmlschemas.c xpath.c xpointer.c: a lot of
  small cleanups based on Linus' sparse check output.
Daniel
2005-07-28 23:49:35 +00:00
Kasimier T. Buchcik
11162b7ce7 Added creation of the content type of xs:anyType. This is needed when
* xmlschemastypes.c: Added creation of the content type of
  xs:anyType. This is needed when trying to extend xs:anyType
  (although it makes no sense to extend it; IMHO the schema
  people should have ruled this out). This was reported
  by Yong Chen to the mailing list.
* xmlschemas.c: Fixed handling of xs:anyType in
  xmlSchemaCheckCOSCTExtends() (reported by Young Chen). Tiny
  adjustment to an error report output.
* test/schemas/extension2* result/schemas/extension2*:
  Added a test case provided by Young Chen.
2005-07-28 00:50:22 +00:00
Kasimier T. Buchcik
5da6dd3428 Removed the workaround code in xmlSchemaValidateElemWildcard() for the
* xmlschemas.c: Removed the workaround code in
  xmlSchemaValidateElemWildcard() for the <any> wildcard
  with namespace == ##other. Support for such wildcards was
  implemented by Daniel at the automaton level recently, and
  the workaround code iterfered with it.
2005-07-23 21:12:30 +00:00
Kasimier T. Buchcik
041c5ffa5c Removed an "internal error" message from xmlSchemaBuildAContentModel()
* xmlschemas.c: Removed an "internal error" message from
  xmlSchemaBuildAContentModel() when an empty model group
  definition is hit.
2005-07-23 14:42:34 +00:00
Kasimier T. Buchcik
2c9aac03dc Fixed xmlSchemaPSimpleTypeErr(), which did not output the given string
* xmlschemas.c: Fixed xmlSchemaPSimpleTypeErr(), which did not
  output the given string arguments correctly.
2005-07-21 22:14:12 +00:00
Daniel Veillard
ffa3c74933 applied a patch from Marcus Boerger to fix problems with calling
* error.c globals.c parser.c runtest.c testHTML.c testSAX.c
  threads.c valid.c xmllint.c xmlreader.c xmlschemas.c xmlstring.c
  xmlwriter.c include/libxml/parser.h include/libxml/relaxng.h
  include/libxml/valid.h include/libxml/xmlIO.h
  include/libxml/xmlerror.h include/libxml/xmlexports.h
  include/libxml/xmlschemas.h: applied a patch from Marcus Boerger
  to fix problems with calling conventions on Windows this should
  fix #309757
Daniel
2005-07-21 13:24:09 +00:00
Daniel Veillard
0a119ebe61 an optimization of the char data inner loop, can gain up to 10% in pure
* parser.c: an optimization of the char data inner loop,
  can gain up to 10% in pure SAX2 parsing speed
* xmlschemas.c: applied patch from Kupriyanov Anatolij fixing
  a bug in XML Schemas facet comparison #310893
Daniel
2005-07-20 13:46:00 +00:00
Daniel Veillard
77005e6ff0 fixed the error reporting for not transitions fixed output Daniel
* xmlregexp.c xmlschemas.c: fixed the error reporting for
  not transitions
* result/schemas/any5_0_0* result/schemas/any5_0_2*
  result/schemas/any5_1_0*: fixed output
Daniel
2005-07-19 16:26:18 +00:00
Daniel Veillard
9efc476bb6 fixing bug #172215 about foreign namespaces by adding support for negated
* xmlregexp.c xmlschemas.c include/libxml/xmlautomata.h: fixing
  bug #172215 about foreign namespaces by adding support for
  negated string transitions. Error messages still need to be
  improved.
* test/schemas/any5* result/schemas/any5*: adding regression
  tests for this.
Daniel
2005-07-19 14:33:55 +00:00
Daniel Veillard
a980befc8f fixed xsd:all when used in conjunction with substitution groups adding
* xmlschemas.c: fixed xsd:all when used in conjunction with
  substitution groups
* test/schemas/allsg_* result/schemas/allsg_*: adding specific
  regression tests, strangely missing from NIST/Sun/Microsoft
  testsuites
Daniel
2005-07-18 21:34:03 +00:00
Daniel Veillard
afc05b6871 fixed bug #307508, a bad automata was built but this showed as an
* xmlschemas.c: fixed bug #307508, a bad automata was built but
  this showed as an indeterminist result
Daniel
2005-07-17 06:11:19 +00:00
Daniel Veillard
da0aa4cfdb applied patch from Marcus Boerger to route relaxng and schemas error
* error.c relaxng.c xmlreader.c xmlschemas.c include/libxml/relaxng.h
  include/libxml/xmlschemas.h: applied patch from Marcus Boerger
  to route relaxng and schemas error messages when using the reader
  through the structured interface if activated.
* elfgcchack.h doc/* testapi.c: rebuilt since this add  new APIs
  to test.
Daniel
2005-07-13 23:07:49 +00:00
Daniel Veillard
1f33c4d61f preparing to make testsuite releases along with code source releases fixed
* xstc/Makefile.am README README.tests Makefile.tests Makefile.am:
  preparing to make testsuite releases along with code source releases
* gentest.py testapi.c: fixed a couple of problem introduced by
  the new Schemas support for Readers
* xpath.c: fixed the XPath attribute:: bug #309580, #309864 in a crude
  but simple way.
* xmlschemas.c include/libxml/tree.h: fixed a couple of problems
  raised by the doc builder.
* doc/*: made rebuild
Daniel
2005-07-10 21:38:31 +00:00
Daniel Veillard
df4223ece4 fixed a bug introduced on last commit daniel
* xmlschemas.c: fixed a bug introduced on last commit
daniel
2005-07-10 19:52:06 +00:00
Daniel Veillard
f10ae12cb8 fixed a typo pointed by Jeroen Ruigrok increased the APIs for xmlReader
* doc/xmllint.1 doc/xmllint.html doc/xmllint.xml: fixed a typo
  pointed by Jeroen Ruigrok
* include/libxml/xmlreader.h include/libxml/xmlschemas.h: increased
  the APIs for xmlReader schemas validation support
* xmllint.c xmlreader.c xmlschemas.c: xmlReader schemas validation
  implementation and testing as xmllint --stream --schema ...
Daniel
2005-07-10 19:03:16 +00:00
Daniel Veillard
971771ef5a fix for #309761 from Dylan Shell added xmlSchemaSAXPlug and
* parser.c: fix for #309761 from Dylan Shell
* xmlschemas.c include/libxml/xmlschemas.h: added xmlSchemaSAXPlug
  and xmlSchemaSAXUnplug generic APIs for SAX Schemas validation.
* xmllint.c: couple of fixes plus added descriptions for --sax and
  --sax1
Daniel
2005-07-09 17:32:57 +00:00
Kasimier T. Buchcik
c306d904c6 Added c-props-correct constraint to check for equal cardinality of
* xmlschemas.c: Added c-props-correct constraint to check
  for equal cardinality of keyref/key.
* include/libxml/xmlerror.h: Added an error code.
2005-07-08 21:37:44 +00:00
Kasimier T. Buchcik
85aed6d010 tiny fix in xmlSchemaValidateStream() if a user-provided SAX handler is
* xmlschemas.c: tiny fix in xmlSchemaValidateStream() if a
  user-provided SAX handler is given.
2005-07-08 18:06:18 +00:00
Daniel Veillard
f0af8ec616 fix some potential leaks in error cases. added --sax, to allow testing of
* parser.c: fix some potential leaks in error cases.
* xmllint.c: added --sax, to allow testing of --schemas --sax and
  various other combinations.
* xmlschemas.c: fix a couple of tiny problems in
  xmlSchemaValidateStream()
Daniel
2005-07-08 17:27:33 +00:00
Kasimier T. Buchcik
72d3adc42f Changed xmlSchemaValidateFile() to use xmlSchemaValidateStream()
* xmlschemas.c: Changed xmlSchemaValidateFile() to use
  xmlSchemaValidateStream() internally.
2005-07-08 16:43:37 +00:00
Daniel Veillard
cdc82737e2 added the missing entity to the document internal subset to avoid errors
* test/relaxng/docbook_0.xml: added the missing entity to the
  document internal subset to avoid errors if the DocBook catalogs
  are not there
* xmlschemas.c: first cut at implementing xmlSchemaValidateStream()
  untested yet
Daniel
2005-07-08 15:04:06 +00:00
Daniel Veillard
39e5c89016 fixing a leak detected by testapi in xmlDOMWrapAdoptNode, and fixing
* testapi.c tree.c: fixing a leak detected by testapi in
  xmlDOMWrapAdoptNode, and fixing another side effect in testapi
  seems to pass tests fine now.
* include/libxml/parser.h parser.c: xmlStopParser() is no more limited
  to push mode
* error.c: remove a warning
* runtest.c xmllint.c: avoid compilation errors if only some parts
  of the library are compiled in.
Daniel
2005-07-03 22:48:50 +00:00
Kasimier T. Buchcik
9c215eb384 Fixed NULL values to be validated as empty string values (reported by
* xmlschemas.c: Fixed NULL values to be validated as empty
  string values (reported by Dhyanesh to the mailing list).
  Adjusted text concatenation of mixed content.
2005-06-21 08:38:49 +00:00