einfaches Problem XML + XSD + jedit

ernst

Top Contributor
Hallo allerseits,
1)
hoffentlich bin ich im richtigen Forum.
Ich versuche gerade etwas mit xml und xsd zu experimentieren.
Ich habe eine einfache Datei musik3.xml und will sie gegen die Datei musik3.xsd validieren.
Eigentlich müsste es bei der Validierung eine Fehlermeldung geben, da der Tag
<schrott> nicht in der Datei musik3.xsd definiert wurde.
Aber es gibt diese Fehlermeldung nicht!
Warum ?

Hier meine Vorgehensweise:
2)
Ich habe dies im Editor jedit wie folgt gemacht:
Plugins --> XML --> set Schema:
Dort habe ich musik3.xsd ausgewählt.
Dann habe ich folgendes gemacht:
Plugins --> XML --> parse as XML
Dann wird ein Fenster mit Namen "Sidekick" geöffnet und so eine Art der folgenden Ordnerstruktur angezeigt:
(was auffällt: ganz unten fehlt <PRICE>)
---------------------------------------
<SONGS>
<SONG>
<schrott>
<TITLE>
<COMPOSER>
<PRODUCER>
<PUBLISHER>
<LENGTH>
<YEAR>
<ARTIST>
<PRICE>

<SONG>
<TITLE>
<COMPOSER>
<PRODUCER>
<PUBLISHER>
<LENGTH>
<YEAR>
<ARTIST>
---------------------------------------


3) Die Inhalte der Dateien

a) Inhalt der Datei musik3.xml:
-----------------------------------------------------
<?xml version="1.0"?>
<SONGS xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="musik3.xsd">

<SONG>
<schrott>teste</schrott>
<TITLE>Yes I Am</TITLE>
<COMPOSER>Melissa Etheridge</COMPOSER>
<PRODUCER>Hugh Padgham</PRODUCER>
<PUBLISHER>Island Records</PUBLISHER>
<LENGTH>4:24</LENGTH>
<YEAR>1993</YEAR>
<ARTIST>Melissa Etheridge</ARTIST>
<PRICE>$1.25</PRICE>
</SONG>

<SONG>
<TITLE>x1</TITLE>
<COMPOSER>x2</COMPOSER>
<PRODUCER>x3</PRODUCER>
<PUBLISHER>x4</PUBLISHER>
<LENGTH>4:12</LENGTH>
<YEAR>1978</YEAR>
<ARTIST><Nobody</ARTIST>
<PRICE>$0.00</PRICE>
</SONG>

</SONGS>
-----------------------------------------------------


b) Inhalt der Datei musik3.xsd:
-----------------------------------------------------
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.note.org"
elementFormDefault="qualified">


<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2000/10/XMLSchema"

<xsd:element name="SONGS" type="SongTypes"/>
<xsd:complexType name="SongType">
<xsd:complexType name="SongType">
<xsd:sequence>
<xsd:element name="SONG" type="xsd:SongTypes"/>
</xsd:sequence>
</xsd:complexType>


<xsd:element name="SONG" type="SongType" minOccurs="0" maxOccurs="10"/>
<xsd:complexType name="SongType">
<xsd:sequence>
<xsd:element name="TITLE" type="xsd:string"/>
<xsd:element name="COMPOSER" type="xsd:string"/>
<xsd:element name="PRODUCER" type="xsd:string"/>
<xsd:element name="PUBLISHER" type="xsd:string"/>
<xsd:element name="LENGTH" type="xsd:string"/>
<xsd:element name="YEAR" type="xsd:string"/>
<xsd:element name="ARTIST" type="xsd:string"/>
<xsd:element name="PRICE" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>

</xsd:schema>
-----------------------------------------------------


mfg
ernst
 
N

nillehammer

Gast
Das von Dir gepostete Schema ist schon an mehreren Stellen fehlerhaft (schema-Element kommt zwei Mal vor, davon einmal nicht mal vollständig, name="SongType" kommt zwei Mal vor, davon einmal nicht geschlossen...). Es kann so garnicht für eine Validierung genutzt werden.

P.S. Und beim Posten von Quellcode, nutze bitte den entsprechenden Tag, bzw. das entspr. Symbol über der Textbox und rücke ein wenig ein. Bei XML sieht das dann so aus:
[XML]
<SONG>
<schrott>teste</schrott>
<TITLE>Yes I Am</TITLE>
<COMPOSER>Melissa Etheridge</COMPOSER>
<PRODUCER>Hugh Padgham</PRODUCER>
<PUBLISHER>Island Records</PUBLISHER>
<LENGTH>4:24</LENGTH>
<YEAR>1993</YEAR>
<ARTIST>Melissa Etheridge</ARTIST>
<PRICE>$1.25</PRICE>
</SONG>
[/XML]
So hat man wenigstens eine Chance, Deine Fehler zu finden.
 

ernst

Top Contributor
P.S. Und beim Posten von Quellcode, nutze bitte den entsprechenden Tag, bzw. das entspr. Symbol über der Textbox und rücke ein wenig ein. Bei XML sieht das dann so aus:
-------------------------------------------------------------------------------
Danke für dein feedback.
1)
Habe jetzt herausgefunden, wie man die Fehlermeldungen bekommt:
Plugins --> ErrorList

2)
Habe jetzt die 2 Dateien wie folgt abgeändert (und jetzt gibt es keine Fehlermeldungen mehr):
Datei musik1.xml
[XML]
<?xml version="1.0"?>
<SONG xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="C:\xml\musik1.xsd">

<TITLE>Yes I Am</ TITLE>
<COMPOSER>Melissa Etheridge</COMPOSER>
<PRODUCER>Hugh Padgham</PRODUCER>
<PUBLISHER>Island Records</PUBLISHER>
<LENGTH>4:24</LENGTH>
<YEAR>1993</YEAR>
<ARTIST>Melissa Etheridge</ARTIST>
<PRICE>$1.25</PRICE>
</SONG>
[/XML]

Datei musik1.xsd
Bem: Da hier in diesem Forum die optische Darstellung mit [XSD] und [/XSD]
nicht funktioniert benutze ich fälschlicherweise [XML]

[XML]
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.note.org"
elementFormDefault="qualified">
<xs:element name="SONG" type="SongType"/>
<xs:complexType name="SongType">
<xs:sequence>
<xs:element name="TITLE" type="xs:string"/>
<xs:element name="COMPOSER" type="xs:string"/>
<xs:element name="PRODUCER" type="xs:string"/>
<xs:element name="PUBLISHER" type="xs:string"/>
<xs:element name="LENGTH" type="xs:string"/>
<xs:element name="YEAR" type="xs:string"/>
<xs:element name="ARTIST" type="xs:string"/>
<xs:element name="PRICE" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
[/XML]

3)
Frage1:
Oben habe ich in der xml-Datei den Verweis auf die xsd-Datei gemacht mit:
xsi:noNamespaceSchemaLocation="C:\xml\musik1.xsd">

Da bei mir die Dateien C:\xml\musik1.xml und C:\xml\musik1.xsd im gleichen Verzeichnis stehen,
habe ich gedacht, dass ich statt
xsi:noNamespaceSchemaLocation="C:\xml\musik1.xsd">
auch
xsi:noNamespaceSchemaLocation="musik1.xsd">
schreiben kann.
Leider bekomme ich da die Fehlermeldung:
"Das System kann die angegebe Datei nicht finden."
Ich will mir die Schreibweise des absoluten Pfades ersparen.
Weisst du wie das geht ?

Frage2:
Wenn ich in der Datei musik1.xsd das Präfix xs überall durch
xsd ersetze, gibt es eine Fehlermeldung.
Ich habe aber irgendwo mal gelesen, dass man statt xs auch xsd verwenden
kann. Stimmt das ?

mfg
ernst
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Einfaches XML Lesen und Schreiben XML & JSON 4
O XPATH Problem - Anfänger XML & JSON 4
so_ein_Komischer Problem mit Clean and Build XML & JSON 1
P JAXB-Problem XML & JSON 1
W Problem mit dem mit XML sortierung XML & JSON 2
S Jaxb Unmarshalling Problem XML & JSON 4
S Xslt Problem XML & JSON 2
B JasperReport Problem in Runtime XML & JSON 2
S Problem with JAXB unmarshalling classes that have the same name in @XmlRootElement XML & JSON 2
R Problem bei: XML und XSL zu HTML XML & JSON 2
M Read / write Problem beim ByteStrom XML & JSON 2
M XML write Problem zweiter Ansatz XML & JSON 3
M XML read Problem XML & JSON 4
M XML write Problem XML & JSON 2
whitenexx Problem beim parsen von Facebook XML XML & JSON 3
M XML Unicode Problem XML & JSON 2
S XJC --> Java-Objects compile Problem XML & JSON 4
F XPath-Problem mit DOM4J XML & JSON 8
B JPA + JAXB Mapping Problem XML & JSON 2
T XPath Problem: finden einer Node nach Attributswert XML & JSON 2
G Problem beim schreiben von XML in eine File XML & JSON 2
S Encoding Problem XML & JSON 7
K JAXB und Maps -> Marshalling-Problem XML & JSON 6
B Problem beim löschen von ChildNodes aus einem XML-DOM XML & JSON 3
E JDOM - Problem beim Zusammenfügen zweier Dateien XML & JSON 2
M JExcelAPI (JXL) Encoding Problem XML & JSON 11
S DOM Parsen Problem mit HTML Sonderzeichen XML & JSON 4
A aus xml --> html Problem XML & JSON 3
Y stax Problem XML & JSON 3
slawaweis Problem mit XSLT (wahrscheinlich ein Bug in Java 6) XML & JSON 16
T Problem beim Parsen von Attribut xmlns="urn:com:test&qu XML & JSON 6
P XPath Problem XML & JSON 2
J Problem beim XML-Lesen XML & JSON 2
M Problem mit FOP in Java Programm XML & JSON 2
S Problem mit XPath XML & JSON 4
J Problem mit compile einer XSD XML & JSON 3
N jdom problem beim lesen von child elementen XML & JSON 5
N problem bei xml lesen mit jdom XML & JSON 2
A XPath Problem XML & JSON 2
W JDOM element ändern funzt nich :( [problem gelöst] XML & JSON 3
G Problem mit XML-Schema Validierung mit Java XML & JSON 12
B jdom: getChildren() problem XML & JSON 4
H XSL-FO Problem mit If XML & JSON 2
loadbrain XPath Problem XML & JSON 2
T addContent / Problem mit Variable XML & JSON 2
F Problem mit JAXB Unmarshaller XML & JSON 2
F JDOM und XPath - Problem mit Namespace ohne Prefix XML & JSON 5
8 SAXParser Problem, startElement wird nicht ausgeführt XML & JSON 2
M Java und XSLT: Performanz-Problem XML & JSON 5
X JDOM SAXBuilder Validationschema - Problem XML & JSON 8
G Problem mit getContent XML & JSON 4
K stax problem XML & JSON 2
S Problem mit SAX XML & JSON 6
A Problem mit JasperReport XML & JSON 6
G DOCTYPE Problem beim Transformer/TransformerFactory etc. XML & JSON 13
C XSD Problem XML & JSON 16
R Problem bei Erstellung von XML(JDOM) XML & JSON 3
R Problem mit SAX-Parser characters() XML & JSON 7
M XPath Problem im Zusammenhang mit document() XML & JSON 2
P Problem beim erstellen eines neuen Elements (JDOM) XML & JSON 5
Z Problem mit getNodeValue() und setNodeValue() in DOM XML & JSON 6
H JAXB CUSTOMIZATION PROBLEM XML & JSON 2
M XPATH und RSS (Problem namespaces) XML & JSON 7
P SAXParser problem? XML & JSON 2
S Problem beim Erstellen eines pdfs XML & JSON 3
V Problem mit xsd XML & JSON 2
P XML mit hilfe von JDOM abspeichern macht Problem XML & JSON 6
G Problem mit addContent() XML & JSON 4
B DTD Problem - Reihenfolge der Einträge XML & JSON 2
R Problem beim Auslesen von Attributen XML & JSON 4
K Problem mit ant/java web services XML & JSON 4
K xml Datei mit JDOM erzeugen, Problem Namespaces XML & JSON 1
P Problem mit XML und DOM XML & JSON 2

Ähnliche Java Themen

Neue Themen


Oben