Re: Xerces 4 and XML Schema 1.1 validation
Robert Hairgrove <[email protected]>
| Newsgroups | gmane.text.xml.xerces-c.devel |
|---|---|
| Message-ID | <[email protected]> |
On 8/28/22 18:02, Roger Leigh wrote: > Hi Robert, > > If you compiled without network access, then you'll need to be sure that all of the schema files are accessible, for example by implementing a custom EntityResolver. At a minimum, you'll want to provide your own schemas, plus any schemas they depend upon, e.g. XMLSchema. > > I would suggest testing with a working netaccessor before turning it off, to eliminate the possibility that it just can't fetch the schemas, before going further with the custom EntityResolver, in case there are other underlying issues which haven't been identified yet. > > By the way, the master branch (4.0.0) is not released yet, and while no issues have been reported to date, you might possibly hit problems using it. I would recommend the xerces-3.2 stable branch or the 3.2.3 stable release. > > Kind regards, > Roger Hello Roger, Thank you for taking time to look at this. I can validate my little test XML file (attached to my first post in this thread, or did it get removed?) with Xerces-C++ 4.0.0 using XML Schema 1.0 against my XSD file (also attached to my first post here) just fine if I remove the bits needed to turn on 1.1, as it were: - xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" - vc:minVersion="1.1" Setting use="required" for attribute "org" gives me these errors, even when not connected to the internet: missing required attribute 'ord' at line 5 column 118 missing required attribute 'ord' at line 6 column 137 missing required attribute 'ord' at line 9 column 108 Changing it back to "optional" says it is valid. I assume that it is therefore not looking on the internet for XMLSchema. As you might suppose, for me this is very much a "learning by doing" experience WRT XML and XML Schema, and I might not see something obvious that I am doing wrong. But I don't think it has anything to do with network access, does it? After all, if the library cannot find a schema which is needed by the XSD file, wouldn't it throw some kind of exception? Of course, I won't release my product using Xerces 4 until it is officially released. Cheers, Robert