Hi,
I had a doubt regarding the chameleon include mechanism in libxml. In the
code for a chameleon include, the check is as follows in the function
xmlSchemaAddSchemaDoc:-
} else {
/* <include> and <redefine> */
if (bkt != NULL) {
if ((bkt->origTargetNamespace == NULL) &&
(bkt->targetNamespace != sourceTargetNamespace)) {
xmlSchemaBucketPtr chamel;
My query is when will this part of the code be hit. The checks make it
impossible to hit this piece of code.
Say for instance we have a schema file A with targetnamespace which includes
another Schema file B with targetnamespace NULL, in this case
bkt->origTargetNamespace will be NULL, and bkt->targetNamespace ==
sourceTargetNamespace always since after including a schema, included items
will get the namespace of the source.
In other instance if targetnamespaces of A & B are different then libxml
raises an error. So I am not sure in what scenario this will be hit. I would
be grateful if someone could tell me whether such a case exists.
Thanks!!
Regards
Ashwin
_______________________________________________
xml mailing list, project page http://xmlsoft.org/
[email protected]
http://mail.gnome.org/mailman/listinfo/xml