Thomas J.S.: vs. EDIFACT / DTD - wozu ?

Beitrag lesen

Hallo Andreas,

Wenn du das so hart rein kodierst oder die Struktur komplett änderst hast du recht.
was heißt "hart reinkodieren"? Was soll ich sonst machen wenn sich was an den Daten ändert?

Eine Logik schreiben, die eine DTD für sich einlesen kann und quasi alle mögliche Kombinationen der Elemente anhand der DTD-Angaben errechnet und diese dann mit der XML-Datei vergleicht.
Genau das machen validierende Parser, in ihnen ist keine DTD hard-coded, sonder eben nur eine Logik, die das oben beschriebene macht.

Fast alle DB-Hersteller bieten da Mapping-Tools von einer XML-Struktur auf eine realtionale DB-Struktur.
Was heißt mapping? Ich will einen "Datensatz" den ich als XML-Datei habe in eine relationale Datenbank eintragen, meinst Du da brauche ich  gar keine eigene Software für schreiben? Gibt es sowas für MySQL oder postGreSQL? Gibts sowas auch für die Gegenrichtung?

Mapping heisst "Abbilden". Viele DBs bieten dafür Tools bzw. APIs an. Du kannst diese dann nützen um z.B. eine SQL-Abfrage an die DB zu senden und die Antwort in eine XML-Datei zu schreiben. Bzw. du kannst eine XML-Datei an/durch die API senden und sie dann als Tabelle in der DB abzulegen. Es gibt auch open-source tools, die
solche DB-APIs ansrechen können.
(dam davon abgesehen, dass du eine XML-Datei auch als BLOB in der DB speichern kannst)

Grüße
Thomas