2017-05-17 6 views
1

Ich entwickle ein XML-RPC-Server-Modul und ich bin an den Punkt gekommen, wo ich Benutzer (Entwickler mit meinem Modul) XML gegen XSD validieren lassen muss. Das ist gut dokumentiert und kein Problem, aber ich kam zu Schwierigkeiten, wenn ich versuche zu überprüfen, ob die XSD-Datei eine gültige XSD ist. Ich muss dies intern in PHP durchführen, das schließt Online-Validatoren und andere Sprachen aus. Externe Module, Bibliotheken oder Fernprozeduraufrufe sind erlaubt, oder, wenn dies durch eine xsd-Datei möglich wäre, die die Gültigkeit von xsd selbst überprüfen würde, wäre das auch ok. Also hier ist die Frage:PHP - Überprüfen, ob xsd gültig ist

Wie kann ich überprüfen, ob XML-Datei

Antwort

1

ein gültiges XSD ist eine XSD für XSD sowie eine DTD - https://www.w3.org/XML/Schema#resources

Veri fizierung kann mit xmllint erfolgen:

$ xmllint --schema=/path/to/XMLSchema.xsd file.xsd 
+0

ich eine tiefere Forschung in der Zwischenzeit gemacht und haben zu der gleichen Lösung kommen. Abgesehen von der Verifizierung mit xmllint, denn soweit ich weiß, ist das ein Befehlszeilen-Tool, das für mich ungeschickt wäre, müsste ich ein separates Skript schreiben, es von einer Funktion aufrufen, seine Ausgabe analysieren und fortfahren. Frage nach einer Möglichkeit, dies intern zu tun, ist jedoch nur ein kleines Problem, und Ersatzlösung ist gut dokumentiert. Diese Antwort ist also ganz richtig, aber ich werde später noch beschreibender hinzufügen. –

Verwandte Themen