指定された xsd-schema に従って、無効な XML を有効な XML に変換する方法は? たとえば、次の xsd スキーマがあります。
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
次の無効な XML:
<?xml version="1.0" encoding="UTF-8"?>
<note xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../my_xsd.xsd">
<to>reviver@mail.com</to>
<from>sender@mail.com</from>
<body>blablabla</body> <!-- IVALID LINE, IT IS NOT IN RIGHT PALCE -->
<heading>head</heading>
</note>
私の質問は次のとおりです。JAXB、XSTREAM、またはその他の XML パーサーには、指定されたスキーマに従って無効な XML を有効な XML に変換するソリューションがありますか?
<?xml version="1.0" encoding="UTF-8"?>
<note xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../my_xsd.xsd">
<to>reviver@mail.com</to>
<from>sender@mail.com</from>
<heading>head</heading>
<body>blablabla</body>
</note>