You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
838 B
Python

from lxml import etree
# XML-Datei laden
with open("C:/temp-GIS/2026-04-08_export_new2.xml", "rb") as xml_file:
xml_doc = etree.parse(xml_file)
# XSD-Datei laden
with open('C:/temp-GIS/_isy/2017/1_XML-Schema/1707-metadaten.xsd', "rb") as xsd_file:
xsd_doc = etree.parse(xsd_file)
# Schema erstellen
xmlschema = etree.XMLSchema(xsd_doc)
# Validieren
if xmlschema.validate(xml_doc):
print("XML ist gültig ✅")
else:
print("XML ist NICHT gültig ❌")
with open("C:/temp-GIS/fehler.log", "w", encoding="utf-8") as log_file:
count = 0
for error in xmlschema.error_log:
log_file.write(f"Zeile: {error.line}, Spalte: {error.column}; ")
log_file.write(f"Fehler: {error.message}\n")
count = count + 1
print("Anzahl Fehler: ", count)