要素で定義されたComplexTypeを拡張するXSDスキーマを作成しようとしています。要素のXML/XSD 'extension'は常に定義されていませんcomplexType
Notepad ++ XMLToolsプラグインを使用して問題をトラブルシューティングしようとしていますが、「Unable to Parse Schema File」が表示されます。エラーの説明なしで、私は詳細を取得するには、ここにあるバリデータを使用している:
http://www.xmlforasp.net/schemavalidator.aspx
私はここから得る出力は次のとおりです。
ステータス: 未定義のcomplexType 'http://test.org:BaseClass'は複合型拡張のベースとして使用されます。
私はxs:schemaタグの:test名前空間を削除しようとしましたが、Test:namespace修飾子をClassHierarchy内のrefから削除しようとしましたが、要素定義に名前空間を追加しようとしましたが、検証をパスするスキーマは得られません。
ご協力いただければ幸いです!おかげ
<?xml version="1.0" encoding="utf-8"?>
<xs:schema
xmlns:test="http://test.org"
targetNamespace="http://test.org"
elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="BaseClass">
<xs:complexType>
<!-- More referneces in here (Meaning this must be a complex type) but removed out to make a bit simpler -->
<xs:attribute name="test_name" type="xs:string" use="required"/>
<xs:attribute name="second_name" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="SubClass">
<xs:complexType>
<xs:complexContent>
<xs:extension base="test:BaseClass">
<xs:attribute name="min_value" type="xs:float" default="0.0"/>
<xs:attribute name="max_value" type="xs:float" default="1.0"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="ClassHierarchy">
<xs:complexType>
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="test:BaseClass" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="test:SubClass" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
XMLファイルが含まれています:
<?xml version="1.0"?>
<ClassHierarchy
xmlns="http://test.org"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://test.org Test.xsd">
<BaseClass test_name="Test1" />
<SubClass test_name="Test2" min_value="0.0" max_value="1.0" />
</ClassHierarchy>
私はあなたのxsdを投稿し、「欠落しているルート要素」を取得します - これを 'コンパイル'するために何が必要ですか? – KevinDTimm
申し訳ありませんが、私はサンプルXMLファイルを追加しませんでした。 – Mciccarone