External DTD
Sun Nov 03 2024 19:27:20 GMT+0000 (Coordinated Universal Time)
Saved by
@signup1
//customers.dtd
<!ELEMENT customers (customer+)>
<!ELEMENT customer (name, email, phone)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT email (#PCDATA)>
<!ELEMENT phone (#PCDATA)>
//external_dtd.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE customers SYSTEM "customers.dtd">
<customers>
<customer>
<name>Satyam Nayak</name>
<email>Satyam@nayak.com</email>
<phone>122-112-1234</phone>
</customer>
<customer>
<name>Sonu N</name>
<email>Sonu@N.com</email>
<phone>112-554-9969</phone>
</customer>
</customers>
//ValidateExternalDTD.java
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.xml.sax.SAXException;
import java.io.File;
import java.io.IOException;
public class ValidateExternalDTD {
public static void main(String[] args) {
try {
File xmlFile = new File("external_dtd_example.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
dbFactory.setValidating(true); // Enable validation
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
dBuilder.setErrorHandler(new SimpleErrorHandler());
Document doc = dBuilder.parse(xmlFile);
doc.getDocumentElement().normalize();
System.out.println("XML is valid with External DTD.");
} catch (ParserConfigurationException | SAXException | IOException e) {
System.out.println("XML is invalid: " + e.getMessage());
}
}
}
content_copyCOPY
Comments