J'ai un schéma ici où j'essaie d'inclure/importer un autre schéma qui n'a pas d'espace de nom (et cela ne peut pas être changé car il provient d'un autre fournisseur et il ne serait plus valider leur XML). Voici le premier schéma:JiBX: Comment exécuter codegen sur un schéma qui importe dans le schéma sans espace de noms
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:samp="http://sample/namespace"
targetNamespace="http://sample/namespace"
elementFormDefault="unqualified" attributeFormDefault="unqualified"
xmlns:otr1="http://sample/import/namespace1"
xmlns:otr2="http://sample/import/namespace2">
<xs:import namespace="http://sample/import/namespace1" schemaLocation="other1.xsd" />
<xs:import namespace="http://sample/import/namespace2" schemaLocation="other2.xsd" />
<!-- This one below is having problems, it is valid XML, and I am able to use it
but I am not meeting the actual requirments I have (explained later) -->
<xs:import schemaLocation=="NO_NAME_SPACE_PROBLEM.xsd"/>
...
<xs:element ref="some-elem-from-NO_NAME_SPACE_PROBLEM_SCHEMA"/>
...
</xs:schema>
Et le « NO_NAME_SPACE_SHEMA_PROBLEM.xsd » qui peut être changé dans une certaine mesure, mais il ne peut pas avoir l'espace de noms.
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
elementFormDefault="unqualified" attributeFormDefault="unqualified">
<xsd:element name="some-elem-from-NO_NAME_SPACE_PROBLEM_SCHEMA"
type="xsd:string" nillable="true"/>
</xs:schema>
Le problème que je reçois lors de l'exécution JiBX codegen:
[echo] Running code generation
[java] Output to directory C:\DOCUME~1\user1\LOCALS~1\Temp\nguser\Temp-Src
[java] ERROR validation.ValidationContext - Error: Referenced element '{http://sample/namespace}:some-elem-from-NO_NAME_SPACE_PROBLEM_SCHEMA` is not defined for element at (line 69, col 32, in parent.xsd)
[java] Terminating due to errors in input schemas
[java] Error: Referenced element '{http://sample/namespace}:some-elem-from-NO_NAME_SPACE_PROBLEM_SCHEMA' is not defined for element at (line 69, col 32, in parent.xsd)
J'ai ramifié cette question basée sur l'original ici: http://stackoverflow.com/questions/3550459/how-to-import-an-xml-schema-into-the-no-namespace. Parce que je travaille avec le même code source, mais avec un problème complètement différent. Donc non, ce n'est pas un doublon, et je ne pense pas que cela devrait être refondu puisqu'il s'agit de deux questions différentes, il s'agit simplement du même code source, mais de technologies différentes. – Zombies