Ich habe ein etwas umfangreicheres Web-Projekt und darum ein PHP-Skript geschrieben, welches mehrere sitemaps erzeugt (sitemap_index.xml, sitemap1.xml, sitemap2.xml u.s.w.). Um Fehler zu vermeiden würde ich nun gerne noch die XML-Dateien validieren. Google schlägt beispielsweise diese Tools vor: http://www.w3.org/XML/Schema#Tools hauptsächlich eher was für Windows-User, wie es aussieht.
Was für ein Programm eignet sich am ehesten, wenn man mit Debian arbeitet? Am liebsten wäre mir ein einfaches Konsole-Tool, was aber auch zuverlässig alle Fehler findet.
XML Validator
- matman
- Beiträge: 744
- Registriert: 03.07.2008 10:50:07
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Hamburg
-
Kontaktdaten:
XML Validator
System: Bullseye
Hardware: Gigabyte 970A-DS3P mit AMD FX-6300, Kingston HyperX DDR3-1333 (4x4GB), Samsung SSD 860 EVO, HGST Travelstar 7K1000, Samsung DVD-ROM SH-D162D, Geforce GTX 1050, SoundBlaster Live! Platinum, Hauppauge WinTV-HVR-5525
Hardware: Gigabyte 970A-DS3P mit AMD FX-6300, Kingston HyperX DDR3-1333 (4x4GB), Samsung SSD 860 EVO, HGST Travelstar 7K1000, Samsung DVD-ROM SH-D162D, Geforce GTX 1050, SoundBlaster Live! Platinum, Hauppauge WinTV-HVR-5525
Re: XML Validator
wenn du selber Programmieren möchtest, dann kannst das in xerces-c bzw xerces-j. Für ersteres sollte es eigentlich auch Python Bindings geben. Wenn du ein Konsolen-Tool suchst, dann kannst du xmlstarlet verwenden, siehe
http://xmlstar.sourceforge.net/docs.php
http://www.ibm.com/developerworks/libra ... arlet.html
Gruß
gms
http://xmlstar.sourceforge.net/docs.php
http://www.ibm.com/developerworks/libra ... arlet.html
Gruß
gms
Re: XML Validator
Ein sehr interessantes konsolen-tool.
Werde mir mal das rpm-Paket herunterladen und mit alien in ein *.deb umwandeln und testen.
Werde mir mal das rpm-Paket herunterladen und mit alien in ein *.deb umwandeln und testen.
Oh, yeah!
Re: XML Validator
hm, möchtest du "alien" oder "xmlstarlet" testen ? Wenn du letzteres testen möchtest sollte das auch durch Installation aus dem Debian-Repository möglich sein.Duff hat geschrieben: Werde mir mal das rpm-Paket herunterladen und mit alien in ein *.deb umwandeln und testen.
Gruß
gms
Re: XML Validator
@gms: Ups, da hast du natürlich recht. So geht es wesentlich einfacher.
Code: Alles auswählen
daniel@laptop:~$ apt-cache search xmlstarlet
rnv - Relax NG Compact Syntax validator
xmlstarlet - command line XML toolkit
Oh, yeah!
- matman
- Beiträge: 744
- Registriert: 03.07.2008 10:50:07
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Hamburg
-
Kontaktdaten:
Re: XML Validator
Danke! Habs vorhin mal gleich installiert. Scheint ganz o.k. zu sein. Allerdings kann man der manpage entnehmen, dass es mit einigen XML Schemen wohl noch Probleme gibt?gms hat geschrieben:xmlstarlet
Code: Alles auswählen
NOTE: XML Schemas are not fully supported yet due to its incomplete
support in libxml2 (see http://xmlsoft.org)
System: Bullseye
Hardware: Gigabyte 970A-DS3P mit AMD FX-6300, Kingston HyperX DDR3-1333 (4x4GB), Samsung SSD 860 EVO, HGST Travelstar 7K1000, Samsung DVD-ROM SH-D162D, Geforce GTX 1050, SoundBlaster Live! Platinum, Hauppauge WinTV-HVR-5525
Hardware: Gigabyte 970A-DS3P mit AMD FX-6300, Kingston HyperX DDR3-1333 (4x4GB), Samsung SSD 860 EVO, HGST Travelstar 7K1000, Samsung DVD-ROM SH-D162D, Geforce GTX 1050, SoundBlaster Live! Platinum, Hauppauge WinTV-HVR-5525
Re: XML Validator
diesbezüglich habe ich auf dieser Seite nicht viel gefunden. Sowohl neueren und sehr alten TODO's wird immer folgendes angeführt:matman hat geschrieben:Code: Alles auswählen
NOTE: XML Schemas are not fully supported yet due to its incomplete support in libxml2 (see http://xmlsoft.org)
auf dieser Seite habe ich allerdings noch eine einfachere Möglichkeit gefunden xml Dateien zu validieren:- XML Schemas datatypes except Base64 and BinHex hat geschrieben: - XML Schemas datatypes except Base64 and BinHex
Dieses Programm ist im Paket "libxml2-utils" enthalten.http://xmlsoft.org/xmldtd.html hat geschrieben: How to validate
The simplest way is to use the xmllint program included with libxml. The --valid option turns-on validation of the files given as input. For example the following validates a copy of the first revision of the XML 1.0 specification:
xmllint --valid --noout test/valid/REC-xml-19980210.xml
the -- noout is used to disable output of the resulting tree.
The --dtdvalid dtd allows validation of the document(s) against a given DTD.
Gruß
gms