Bom dia a todos, gostaria de saber se é necessário algo em minha aplicação para realizar essa validação, ou se preciso apenas indicar meu XSD no XML, utilizo o KXML.
Meus arquivos para teste:
XML (teste.xml):
<?xml version="1.0" encoding="UTF-8"?>
<order xmlns="urn:nonstandard:test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:nonstandard:test
file:./test.xsd">
<user>
<fullname>Bob Jones</fullname>
<deliveryAddress>
123 This road,
That town,
Bobsville
</deliveryAddress>
</user>
<products>
<product id="12345" quantity="1" />
<product id="3232" quantity="3" />
</products>
</order>
XSD(teste.xsd):
<?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="order" type="Order" />
<xsd:complexType name="Order">
<xsd:all>
<xsd:element name="user" type="User" minOccurs="1" maxOccurs="1" />
<xsd:element name="products" type="Products" minOccurs="1" maxOccurs="1" />
</xsd:all>
</xsd:complexType>
<xsd:complexType name="User">
<xsd:all>
<xsd:element name="deliveryAddress" type="xsd:string" />
<xsd:element name="fullname">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="30" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:all>
</xsd:complexType>
<xsd:complexType name="Products">
<xsd:sequence>
<xsd:element name="product" type="Product" minOccurs="1" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Product">
<xsd:attribute name="id" type="xsd:long" use="required" />
<xsd:attribute name="quantity" type="xsd:positiveInteger" use="required" />
</xsd:complexType>
</xsd:schema>