Я хотел бы иметь массив файлов в одном пространстве имен для простоты и потому, что они концептуально связаны между собой. У меня есть основной или центральный xsd, который будет включать в себя другие файлы схемы и в основном служит глобальным корневым элементом. Моя проблема лучше всего проиллюстрировать на примере, но я в принципе не могу получить нецентральную схему для проверки, и это проблема пространства имен:Как создать однородное пространство имен Конструктивные согласованные XSD?
Схема 1 (поддержка):
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.company.org"
xmlns="http://www.person.org"
elementFormDefault="qualified">
<xsd:simpleType name="test">
<xsd:restriction base="xsd:string">
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="PersonType">
<xsd:sequence>
<xsd:element name="Name" type="test" />
<xsd:element name="SSN" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
Схема 2 (центральной):
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.company.org"
xmlns="http://www.company.org"
elementFormDefault="qualified">
<xsd:include schemaLocation="http://www.person.org"/>
<xsd:element name="Company">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Person" type="PersonType"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
Схема 2 в порядке, схема 1 не подтверждает. «test» не имеет пространства имен, и я не знаю, как его отдать, не разрушая моего намерения использовать 1 пространство имен для всех моих файлов.