[
Lists Home |
Date Index |
Thread Index
]
Can anyone tell me how a schema-aware validating parser decides which
schema to use in this case:
ns1.xsd:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="ns1">
<xs:import schemaLocation="import.xsd" namespace="ns2"/>
<xs:element name="root"/>
</xs:schema>
import.xsd:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="ns2">
<xs:element name="child"/>
</xs:schema>
ns2.xsd:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="ns2">
<xs:element name="child"/>
</xs:schema>
test.xml:
<a:root xmlns:a="ns1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance"
xsi:schemaLocation="ns ns1.xsd ns2 ns2.xsd">
<child xmlns="ns2"/>
</a:root>
If I remove the "ns2 ns2.xsd" pairing from the instance document's
xsi:schemaLocation attribute, the rule defined by
import.xsd will be used. What happens when this attribute is left in?
Is it up to the processor to decide?
Any help is appreciated!
-Jack
|