Hallo Leute!
Ich musste das erste mal jetzt eine xsd schreiben um ein XML Dokument zu validieren. Scheinbar klappt es noch nicht ganz, daher wäre es nett, wenn mal kurz jemand einen Blick drauf werfen kann.
Hier ist meine XSD:
[XML]
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
xmlns="urn:nonstandard:test"
targetNamespace="urn:nonstandard:test">
<xsd:element name="ERP" type="erp" />
<xsd:complexType name="erp">
<xsd:all>
<xsd:element name="ordertype" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="weightCost" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="weightDelivery" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="high_priority" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="ldr_blueprint" type="xsd:string" minOccurs="1" maxOccurs="1" />
</xsd:all>
</xsd:complexType>
</xsd:schema>
[/XML]
und hier ist meine XML File zu dieser XSD:
[XML]
<?xml version="1.0" encoding="UTF-8"?>
<ERP>
<ordertype>requestOffer</ordertype>
<weightCost>50</weightCost>
<weightDelivery>50</weightDelivery>
<high_priority>false</high_priority>
<ldr_blueprint>0 Untitled
0 Name: o </ldr_blueprint>
</ERP>
[/XML]
Die XML File ist laut folgender Testfunktion:
nicht valide. Kann es sein das die XSD einen Fehler hat?
Gruß
Happy
Ich musste das erste mal jetzt eine xsd schreiben um ein XML Dokument zu validieren. Scheinbar klappt es noch nicht ganz, daher wäre es nett, wenn mal kurz jemand einen Blick drauf werfen kann.
Hier ist meine XSD:
[XML]
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
xmlns="urn:nonstandard:test"
targetNamespace="urn:nonstandard:test">
<xsd:element name="ERP" type="erp" />
<xsd:complexType name="erp">
<xsd:all>
<xsd:element name="ordertype" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="weightCost" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="weightDelivery" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="high_priority" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="ldr_blueprint" type="xsd:string" minOccurs="1" maxOccurs="1" />
</xsd:all>
</xsd:complexType>
</xsd:schema>
[/XML]
und hier ist meine XML File zu dieser XSD:
[XML]
<?xml version="1.0" encoding="UTF-8"?>
<ERP>
<ordertype>requestOffer</ordertype>
<weightCost>50</weightCost>
<weightDelivery>50</weightDelivery>
<high_priority>false</high_priority>
<ldr_blueprint>0 Untitled
0 Name: o </ldr_blueprint>
</ERP>
[/XML]
Die XML File ist laut folgender Testfunktion:
Java:
boolean validateXML(String xmlString, String schemaFilePath)
{
try {
String schemaLang = "http://www.w3.org/2001/XMLSchema";
SchemaFactory factory = SchemaFactory.newInstance(schemaLang);
Schema schema = factory.newSchema(new StreamSource(schemaFilePath));
Validator validator = schema.newValidator();
validator.validate(new StreamSource(new StringReader(xmlString)));
}catch (SAXException ex) {
return false; // document is not valid:
} catch (Exception ex) {
ex.printStackTrace();
return false;
}
return true;
}
nicht valide. Kann es sein das die XSD einen Fehler hat?
Gruß
Happy
Zuletzt bearbeitet: