xsd 形式のスキーマで生成された xml ファイルを検証しようとしています。問題は、スキーマの URL またはシステム上のスキーマの場所を渡す必要があるかどうかです。同様に、xml ファイルの内容またはその場所を渡す必要がありますか?
以下は私が使用しているコードスニペットです -
public void validateDTFAgainstXSD()
{
String inputxml = "C:/Users/file.xml";
String schemaLocation = "https://github.abcd/schema.xsd";
try
{
SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
File schemaFile = new File(schemaLocation);
Schema schema = factory.newSchema(schemaFile);
javax.xml.validation.Validator validator = schema.newValidator();
Source source = new StreamSource(new StringReader(inputxml));
validator.validate(source);
System.out.println("File validated");
}
catch(Exception ex)
{
System.out.println("File not validated");
}
}