An XML Validator is a tool or program that checks whether an XML document is well-formed and optionally validates it against a schema (DTD or XSD). Here’s a breakdown:
Types of XML Validation
- Well-formed XML
- Ensures proper syntax (e.g., correct tag nesting, closing tags, attribute quoting).
 
- Valid XML
- Ensures XML follows a predefined structure using:
- DTD (Document Type Definition)
- XSD (XML Schema Definition)
 
 
- Ensures XML follows a predefined structure using:
Online XML Validators
You can use online tools to validate XML:
Manual XML Validation Using Python
You can validate XML using Python’s xml.etree.ElementTree or lxml.
Check if XML is Well-Formed
import xml.etree.ElementTree as ET
xml_data = """<?xml version="1.0" encoding="UTF-8"?>
<items>
    <item>Item 1</item>
    <item>Item 2</item>
</items>"""
try:
    ET.fromstring(xml_data)
    print("XML is well-formed.")
except ET.ParseError as e:
    print("XML is not well-formed:", e)
Validate XML Against XSD
from lxml import etree
xml_data = """<?xml version="1.0"?>
<items>
    <item>Item 1</item>
    <item>Item 2</item>
</items>"""
xsd_schema = """<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="items">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="item" type="xs:string" maxOccurs="unbounded"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>"""
# Parse XML and XSD
xml_doc = etree.fromstring(xml_data)
xsd_doc = etree.fromstring(xsd_schema)
schema = etree.XMLSchema(xsd_doc)
# Validate XML
if schema.validate(xml_doc):
    print("XML is valid.")
else:
    print("XML is not valid:", schema.error_log)
Would you like a web-based XML validator using JavaScript?
 
0 comments:
Post a Comment