Hi.
> Ich denk ist aber schwierig die Unterscheidung von Attribut->Attribut(db) oder
> Tag->Attribut(db) zu Treffen.
Das sollte kein Problem sein. Schwieriger finde ich den Punkt der Verschachtelungen vom XML-Tags z.B. in folgendem Ausdruck:
<text>Das ist ein <amp>hervorgehobenes</amp> Wort</text>
Wie hast du das gelöst?
Und was den "Parser" RDB->XML angeht, so ist das doch kein Problem. Du musst ja nur die Datenbank Tabelle für Tabelle, Zeile für Zeile durchgehen und die Inhalte formatiert in eine Datei drucken.
Natürlich musst du zuvor festlegen, wie die Daten ausgespuckt werden sollen, also z.B. so:
[code]
<table name='Autos'>
<row id=15>
<field name='Marke'>VW</field>
<field name='Typ'>Golf 3</field>
</row>
<row id=17>
<field name='Marke'>BMW</field>
<field name='Typ'>525i</field>
</row>
</table>
[/code]
...oder vielleicht eher so:
[/code]
<Autos>
<entity>
<id>15</id>
<Marke>VW</Marke>
<Typ>Golf 3</Typ>
<entity>
<entity>
<id>15</id>
<Marke>BMW</Marke>
<Typ>525i</Typ>
<entity>
</Autos>
[/code]
oder auch so:
[code]
<table name="Autos">
<entity id="15" Marke="VW" Typ="Golf 3" />
<entity id="17" Marke="BMW" Typ="525i" />
</table>
[/code]
Und was die Relationen Angeht, so gäbe es allenfalls die Möglichkeit, die Referenzen nach einer bestimmten Syntax zu codieren, damit der Parser die Zuordnungen eindeutig zuweisen kann. Allerdings hast du da ruck zuck unzählige Redundanzen und es dürfte bei etwas komplexeren Datenstrukturen schon schwierig werden ein sauberes XML-File zu generieren, weil dann eben mitunter, um Endlosschleifen zu vermeiden an bestimmten Stellen doch anstatt der eigentlichen Objekte Referenzen auf diese stehen müssten.
Apropos:
Hat hier irgendwo nicht neulich jemand gefragt, ob man quasi sowas wie Symlinks auf XML-Objekte in XML formatieren kann (kann es nicht finden - vielleicht war es auch woanders...). Also vielleicht was in der Art:
[code]
<Auto define_object:obj_id="xyz" id="15">
<Marke>VW</Marke>
</Auto>
<Person>
<Name>Basti</Name>
<faehrt><link_to_object:obj_id="xyz"></faehrt>
</Person>
[/code]
...ich meine natürlich nicht eine Syntax, die ein entsprechender Parser verstehen kann, sondern eben eine XML-Symtax, die eben dieses Konstrukt per se festhält.
Basti