Hallo!
Ich möchte ein Schema für meine [coderwiki]Informationen/XML[/coderwiki] erstellen. Da stellen sich mir nun einige Probleme. Zunächst habe ich eine Allgemeine Frage. Was bringt ein Schema genau? Ich habe mit Hilfe eine Online-Validators einmal erfolgreich ein [coderwiki]Informationen/XML-Schema[/coderwiki] validiert. Dann habe ich einfach mal eine Zeile aus der XML Datei entfernt, mit dem Ergebniss, dass der Validator mir sagte, dass da was falsch ist, da ein anderer Wert erwartet wird. Der Browser hat trotzdem so getan als ob nix wäre. Ist das Schema also nur eine Kontrolle für mich, dass ich in kurzer Zeit eine große XML Datei auf ihre Richtigkeit überprüfen kann oder habe ich das Schema einfach falsch eingebunden, sodass der Browser dieses nicht nutzt?
Das Stichwort einbinden bringt mich dann auch zu meiner nächsten Frage. Ich habe gelesen, dass ein Schema wie folgt in die XML eingebunden wird:
<muster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="pan.xsd">
Der Validator sagt mir allerdings, dass die untere Zeile falsch ist und erkennt das Schema nur dann als richtig, wenn ich diese wieder entferne. Dabei ist doch gerade die Zeile die Verbindung zum Schema oder nicht? Was ist daran falsch? Zumal ich das aus einer seriösen Quelle habe...
Meine vorerst letzte Frage bezieht sich auf den complexType. Ich möchte einen complexType innerhalb eines complexTypes erstellen. Hierzu habe ich folgenden Code:
[...]
<xs:element name="transferdocs" type="transferdocsType"/>
[...]
<xs:complexType name="transferdocsType">
<xs:sequence>
<xs:element name="transferdoc" type="transferdocType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="transferdocType">
<xs:sequence>
<xs:element name="name" type="xs:string"/>
</xs:sequence>
</xs:complexType>
Für den Browser is das wieder alles prima. Der macht genau das, was er soll. Der gute Validator sagt mir dann aber wieder, dass das alles völlig vermurkst ist. Er meint, dass unter "transferdocs" keine Kindelement "transferdoc" erwartet wird. Woran liegt das?
Vielen Dank im Voraus für eure Hilfe!!!
Gruß
Rantan
Ich möchte ein Schema für meine [coderwiki]Informationen/XML[/coderwiki] erstellen. Da stellen sich mir nun einige Probleme. Zunächst habe ich eine Allgemeine Frage. Was bringt ein Schema genau? Ich habe mit Hilfe eine Online-Validators einmal erfolgreich ein [coderwiki]Informationen/XML-Schema[/coderwiki] validiert. Dann habe ich einfach mal eine Zeile aus der XML Datei entfernt, mit dem Ergebniss, dass der Validator mir sagte, dass da was falsch ist, da ein anderer Wert erwartet wird. Der Browser hat trotzdem so getan als ob nix wäre. Ist das Schema also nur eine Kontrolle für mich, dass ich in kurzer Zeit eine große XML Datei auf ihre Richtigkeit überprüfen kann oder habe ich das Schema einfach falsch eingebunden, sodass der Browser dieses nicht nutzt?
Das Stichwort einbinden bringt mich dann auch zu meiner nächsten Frage. Ich habe gelesen, dass ein Schema wie folgt in die XML eingebunden wird:
<muster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="pan.xsd">
Der Validator sagt mir allerdings, dass die untere Zeile falsch ist und erkennt das Schema nur dann als richtig, wenn ich diese wieder entferne. Dabei ist doch gerade die Zeile die Verbindung zum Schema oder nicht? Was ist daran falsch? Zumal ich das aus einer seriösen Quelle habe...
Meine vorerst letzte Frage bezieht sich auf den complexType. Ich möchte einen complexType innerhalb eines complexTypes erstellen. Hierzu habe ich folgenden Code:
[...]
<xs:element name="transferdocs" type="transferdocsType"/>
[...]
<xs:complexType name="transferdocsType">
<xs:sequence>
<xs:element name="transferdoc" type="transferdocType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="transferdocType">
<xs:sequence>
<xs:element name="name" type="xs:string"/>
</xs:sequence>
</xs:complexType>
Für den Browser is das wieder alles prima. Der macht genau das, was er soll. Der gute Validator sagt mir dann aber wieder, dass das alles völlig vermurkst ist. Er meint, dass unter "transferdocs" keine Kindelement "transferdoc" erwartet wird. Woran liegt das?
Vielen Dank im Voraus für eure Hilfe!!!
Gruß
Rantan