Hallo,
wollt eben ein xml-dakoment aufbauen und da bin ich auf das problem gestossen das man informationen auf zwei unterschiedliche arten abspeichern kann
welche davon verwendet man in welchem fall
-
informatinen in attributen abspeichern
<einxmlelemnt attributname1="wert1" attributname2="wert2" />
-
informationen in elementen
<einxmlelemnt>
<unterelemnt1>wert1</unterelemnt1>
<unterelemnt2>wert2</unterelemnt2>
</einxmlelemnt>
bin dankbar für tipps oder homepages wo näher auf das thema eingegangen wird
In selfHTML ist das leider nicht der fall.
die schreiben da nur:
"Sinnvoll ist es daher, nur solche Daten in Attribute zu packen, die vor allem zur reinen Datenverarbeitung dienen. Sind es dagegen Daten, die Inhalt enthalten, der z.B. am Bildschirm ausgegeben werden soll, dann ist es sinnvoller, eigene Elemente dafür zu definieren"
vlt weiss jemand ne präzisere definition
Es gibt dafür keine Definition.
Der Ansatz in SELFHTML isr recht gut und verdeutlicht die gängige Praxis.
Z.B. du speicherst informationen über ein Bild:
<image id="1">
<filename title="Dateiname"></filename>
<width title="Bild-Breite"></width>
<height title="Bild-Höhe"></height>
<titletext title="Titeltext"></titletext>
<language title="Sprache"></language>
</image>
jetzt ist es wenig sinnvoll id="" und title="" als Unterelemente zu notieren,
<image>
<id>
<filename>
<title>
...
weil sie keinen direkten Bezug zu den Informationen haben, die du über das Bild speichern willst. Solche Metadaten können dann aber gut in Attributen untergebracht werden. So würde es auch leicher sein z.B. eine DTD/Schema zu erstellen.
Es ist trotzdem immer ein Ermessensfrage, wo und was man in Attributen und was in Elementen notiert.
Bei deinem Bsp. <einxmlelemnt attributname1="wert1" attributname2="wert2" /> stellt sich also die Frage, worauf sich die Werte wert1 und wert2 beziehen.
Grüße
Thomas