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
_______________________________________________
xml mailing list, project page http://xmlsoft.org/
xml gnome.org
http://mai
l.gnome.org/mailman/listinfo/xml
|