Re: [xml] Multiple schemata in memory



Hi,

-----Original Message-----
From: Andreas Tscharner [mailto:andreas tscharner metromec ch] 

Now my problem: A.xsd, B.xsd and C.xsd are all in memory in 
different places. I am able to "load" A.xsd using
xmlSchemaNewMemParserCtxt, but 
as it does not know about B.xsd and C.xsd I got the error 
code 1845:
XML_SCHEMAV_CVC_ELT_1.

The error message would be even more interesting.

Sorry, my fault. I had the wrong schema file in the memory. With the
correct file xmlSchemaParse returns NULL (I suppose it's because it
cannot find the referenced (imported) schema file)...

[snip]
Subsequent XML Schema documents are located using the 
@schemaLocation of an import/include in Libxml2. You could 

I have to use the Pascal bindings and I am not sure if I can realize
this. Maybe I can try to modify the "schemasImports" pointer in the
xmlSchema struct?

Have a look at the attached Delphi project. I experimented
with Libxml2's I/O layer, as I needed to customize it for XSL
transformations. The code is 1 1/2 years old, so some functions
might be obsolete/deprecated already; additionally this is based on
the old Pascal bindings; but it should suffice as an example of how
to use xmlRegisterInputCallbacks().

Regards,

Kasimier

Attachment: pascal-xsltIO.zip
Description: pascal-xsltIO.zip



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