Sadece XML şemasıyla ilgili temel bir anlayışa sahibim. Bu temelde onlarla herhangi bir ciddi şekilde ilk etkileşimim ve bazı sorunlar yaşıyorum. Google'da XSD'leri okudum ve her şey bu dosyada yukarı ve yukarı görünüyor. İşte Bu XML şemasında kökten bir sorun var mı?
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="credits">
<xs:complexType>
<xs:sequence>
<xs:element ref="property" maxOccurs="16" minOccurs="13" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="property" type="xs:string">
<xs:complexType>
<xs:sequence>
<xs:element ref="item" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute ref="name" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="item" type="xs:string"/>
<xs:attribute name="name" type="xs:string">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="example1"/>
<xs:enumeration value="example2"/>
<xs:enumeration value="example3"/>
<xs:enumeration value="example4"/>
<xs:enumeration value="example5"/>
<xs:enumeration value="example6"/>
<xs:enumeration value="example7"/>
<xs:enumeration value="example8"/>
<xs:enumeration value="example9"/>
<xs:enumeration value="example10"/>
<xs:enumeration value="example11"/>
<xs:enumeration value="example12"/>
<xs:enumeration value="example13"/>
<xs:enumeration value="example14"/>
<xs:enumeration value="example15"/>
<xs:enumeration value="example16"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:schema>
bunu yükleme ediyorum nasıl:
SchemaFactory schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schemaXSD = schemaFactory.newSchema(new File ("test.xsd"));
aşağıdaki gibi bir istisna alıyorum:
eşleşmelidir.org.XML.sax.SAXParseException: src-element.3: Element 'property', 'type' özelliği ve 'anony öğesinin her ikisi de içeriyor mous türü 'çocuk. Bir eleman için bunlardan sadece 'a izin verilir.
Yardımlarınız için teşekkürler SO! Başkaları tarafından oluşturulan şema okuma/kullanma ile ilgili genel tavsiyeler de takdir edilmektedir! : D
IDE vardır Bu tür bir hatayı baskı zamanında tespit edebilirsiniz (yani XSD'yi kendi kodunuza göndermeden önce). [eclipse J2E] (http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/heliossr1), örneğin, belirttiğiniz aynı hata mesajlarıyla sağ kenar boşluğunda küçük kırmızı işaretler gösterecektir.). –