Wie kann ich XML gegen ein XSD mit unterschiedlichen Importen und Namespaces validieren?
-
23-10-2019 - |
Frage
Ich versuche, ein paar XML -Dateien zu validieren, und ich versage aufgrund verschiedener Probleme mit der XSD -Definition und den Namespaces ...
Dies sind öffentliche Informationen, also keine Probleme mit dem Austausch von Daten: Der Haupt XSD ist bei http://bioinformatics.ua.pt/euadr/euadr_types.xsd und es importiert ein weiteres XSD an demselben Ort namens Common_types.xsd, Ich habe sie im W3C -Validator validiert und sie bestanden.
Der XML
<?xml version="1.0"?>
<relationship xmlns="http://euadr.biosemantic.erasmusmc.org/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://euadr.biosemantic.erasmusmc.org/ http://bioinformatics.ua.pt/euadr/euadr_types.xsd">
<sourceId>
<source>SMILE</source>
<code>[S]1(=O)(=O)N(C(</code>
</sourceId>
<targetId>
<source>UP</source>
<code>P35354</code>
</targetId>
<creator>http://cgl.imim.es</creator>
<observationDateTime>2010-05-12T19:03:40.097+02:00</observationDateTime>
<informationSources>
<informationSource>
<relationshipType>BINDS</relationshipType>
<interaction>
<type>pIC50</type>
<value>6.55</value>
</interaction>
<evidence>
<type>OBSERVATIONAL</type>
<value>1.0</value>
</evidence>
<databaseIds>
<databaseId>
<source>PDSP</source>
<code>
P35354</code>
</databaseId>
</databaseIds>
</informationSource>
</informationSources>
</relationship>
ist unkompliziert und gut geformt! Ich habe ein paar Online -Validatoren getestet und bekomme den folgenden Fehler
cvc-elt.1: Cannot find the declaration of element 'relationship'.
Hat jemand eine Vorstellung davon, was das Problem ist? Ist es in der Erklärung der Namespaces? Des XSD?
Vielen Dank im Voraus für Ihre Hilfe!
Prost!
Lösung
Ihr Schema definiert einen komplexen Typ genannt relationship
aber es definiert keine genannten Elemente relationship
. Sie möchten so etwas zu Ihrem ersten XSD hinzufügen:
<xs:element name="relationship" type="relationship" />