2009-08-26 17 views
0

私のアプリケーションだけが知っているDTDファイルに対してXML文書を検証する方法を教えてください。したがって、検証されるべきXML文書に.dtdファイルを指定するDOCTYPE宣言が含まれないようにします。私はJavaでこれが必要です。ここで は一例です: xmlファイル検証する:自分のアプリケーションからJava XML DTDの検証

<?xml version = "1.0" ?> 
<Employee> 
    <Emp_Id> E-001 </Emp_Id> 
    <Emp_Name> Vinod </Emp_Name> 
    <Emp_E-mail> [email protected] </Emp_E-mail> 
</Employee> 

.DTDファイル:

<!ELEMENT Employee (Emp_Id, Emp_Name, Emp_E-mail)> 
<!ELEMENT Emp_Id (#PCDATA)> 
<!ELEMENT Emp_Name (#PCDATA)> 
<!ELEMENT Emp_E-mail (#PCDATA)> 

答えて

2

Javaドキュメントを読む - API for validation of XML documents

概要:このパッケージは、XML文書の検証のためのAPI を提供します。 検証は、XMLドキュメントが のインスタンスであり、指定されたXMLスキーマであることを で検証するプロセスです。 XMLスキーマ は、 インスタンス文書が表すコンテンツモデル(文法または語彙 とも呼ばれる)を定義します。

例:

Document xmlDocument = builder.parse(new FileInputStream("xmlDoc.xml")); 
DOMSource source = new DOMSource(xmlDocument); 
StreamResult result = new StreamResult(System.out); 
TransformerFactory tf = TransformerFactory.newInstance(); 
Transformer transformer = tf.newTransformer(); 
transformer.setOutputProperty(OutputKeys.DOCTYPE_SYSTEM, "xmlDoc.dtd"); 
transformer.transform(source, result);