XML Validator

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

  1. Well-formed XML
    • Ensures proper syntax (e.g., correct tag nesting, closing tags, attribute quoting).
  2. Valid XML
    • Ensures XML follows a predefined structure using:
      • DTD (Document Type Definition)
      • XSD (XML Schema Definition)

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?

Share on Google Plus

About It E Research

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment
    Facebook Comment

0 comments:

Post a Comment