Hallo,
ich habe es jetzt geschafft aus einer XML-Datei mit SAX Informationen zu entnehmen und diese dann in Instanzvariablen zu schreiben.
Soweit klappt alles ganz gut, das Problem ist, das es vorkommen kann das zu einer Variablendefinition zwei Werte enthalten sein können.
Auszug aus der XML Datei ist mit TAG 490 CODE a "490a" definiert, welches die ISBD enthält.
[XML]
<slim:datafield tag="490" ind1="0" ind2=" ">
<slim:subfield code="a">Studium</slim:subfield>
</slim:datafield>
<slim:datafield tag="490" ind1="0" ind2=" ">
<slim:subfield code="a">Online plus</slim:subfield>
</slim:datafield>
[/XML]
Das bedeutet die Instanzvariable ISBD enthält zwei Werte.
Die Frage ist ist jetzt wie man das in Java realisiert.
Da SAX ja immer nur Zeilenweise einliesst weiss es nicht, was noch kommen wird!
Wenn ein zweites mal datafield mit dem Attribut 490a kommt, werden die Inhalte der ersten überschrieben.
Nimmt man da Array Liste mit zwei geschachtelten Arrays für den Tag "490a" und "Studium" und durchsucht das Array am ende des XML-Dokumentes, ob es tags gibt, die mehrmals enthalten sind und arbeitet auf diese Weise?
Oder schreibt man temporäre Variablen mit einem fortlaufenden Zähler?
Variable Inhalt
490a1 "Studium"
490a2 "Online plus"
Vielen Dank
Mi
ich habe es jetzt geschafft aus einer XML-Datei mit SAX Informationen zu entnehmen und diese dann in Instanzvariablen zu schreiben.
Soweit klappt alles ganz gut, das Problem ist, das es vorkommen kann das zu einer Variablendefinition zwei Werte enthalten sein können.
Auszug aus der XML Datei ist mit TAG 490 CODE a "490a" definiert, welches die ISBD enthält.
[XML]
<slim:datafield tag="490" ind1="0" ind2=" ">
<slim:subfield code="a">Studium</slim:subfield>
</slim:datafield>
<slim:datafield tag="490" ind1="0" ind2=" ">
<slim:subfield code="a">Online plus</slim:subfield>
</slim:datafield>
[/XML]
Das bedeutet die Instanzvariable ISBD enthält zwei Werte.
Die Frage ist ist jetzt wie man das in Java realisiert.
Da SAX ja immer nur Zeilenweise einliesst weiss es nicht, was noch kommen wird!
Wenn ein zweites mal datafield mit dem Attribut 490a kommt, werden die Inhalte der ersten überschrieben.
Nimmt man da Array Liste mit zwei geschachtelten Arrays für den Tag "490a" und "Studium" und durchsucht das Array am ende des XML-Dokumentes, ob es tags gibt, die mehrmals enthalten sind und arbeitet auf diese Weise?
Oder schreibt man temporäre Variablen mit einem fortlaufenden Zähler?
Variable Inhalt
490a1 "Studium"
490a2 "Online plus"
Vielen Dank
Mi