Edifact direkt in Python darstellen - oder nur über XML?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ich kenne mich nicht mit Python aus, ich arbeite mit C#. Ich muss allerdings auch das EDIFACT-Format lesen können und hab schon das Eine oder Andere mal geflucht deswegen :D

Ich würde dir raten, den Schritt über XML weg zu lassen und schauen, ob Du ich einen Parser für EDIFACT finde. Wenn Du es unbedingt als XML brauchst, kannst Du danach immer noch nach XML serialisieren, da gibt's wahrscheinlich Möglichkeiten wie Sand am Meer.

Für .NET gibt's z.B. diesen EDI (EDIFACT) Parser, der die Daten in eine Klassen-Struktur parsen kann. Wenn Du das verstehst, kannst Du dir da Inspiration holen. Ich nutze das Framework nicht, da unsere Software einen eigenen Parser hat, aber das Grund-Prinzip ist ähnlich.

Hey:)

Ich will es eben nicht über XML ich suche eine möglichkeit es mit edifact direkt zu machen

Danke im Vorraus

0
@MBMforever

ich glaube das parsen nicht das ist was ich brauche. Ich will ja nichts zerlegen sondern "umschreiben"

0
@MBMforever

Das Problem ist, dass das EDIFACT-Format ziemlich "komplex" (man könnte auch "schrecklick" sagen) ist. XML als Format ist zwar sehr flexibel, hat aber eine eher simple und übersichtliche Struktur, das hast Du bei EDIFACT nicht.

Wenn Du EDIFACT allgemein als XML haben willst, wirst Du wohl EDIFACT-Spezifikationen lesen müssen.

Für C# hab ich diesen Artikel gefunden. Eventuell kannst Du dir da ein paar Ideen raus ziehen. Wie Du das für Python umsetzt, kann ich dir nicht sagen, aber vielleicht gibt es einen vergleichbaren Artikel.

0
@Palladin007

PS:

Wenn ich ehrlich bin, sieht der Artikel sogar ziemlich praktisch aus. Das wirkt sehr viel einfacher als zuerst gedacht und wenn (falls) das bei allen Formaten gut funktioniert, wäre das eine sehr viel einfachere und vor allem einheitlichere Variante, EDIFACT zu parsen.

0

bin eigentlich nur ein Anfänger bzw Praktikant in der 12. klasse und mir wurd der Auftrag gegeben da eine Möglicheit zu finden..wäre sehr nett wenn jnd eine Lösung hätte

0

LMGTFY:

https://www.google.de/search?q=python+edifact+parser

Eventuell ist hier etwas passendes dabei.

danke :)

soweit bin ich aber auch schon gekommen

0
@MBMforever

Und was spricht nun dagegen sich die Optionen anzuschauen und die geeignete zu wählen?

Der erste Link nutzt doch augenscheinlich einen etree als Basis.

0
@KarlRanseierIII

geht der aber nicht über xml oder irre ich mich?.. wie gesagt ich mach das heute zumersten mal ich hab nur erfahrungen mit dem programmieren in der schule gehabt: nicht besonders viele

0
@MBMforever

Ja, es scheint ETree ist keine generische hierarchische Implementierung. Interessant wäre eigentlich eine generische Baumstruktur für hierarchische Formate, von der man dann XML, HTML, ... usw. ableiten könnte.

Ist EDIFACT eigentlich überhaupt hierarchisch aufgebaut?

Im Zweifelsfall müßtest Du dann eben so was wie ETRee für EDIFACT selbst implementieren.

0
@KarlRanseierIII

zur Frage 1 .. ja ich denke schon weil es in edifact eine ähnliche struktur gibt wie in xml (aber nur bei der ausgabe, die Datei selbst ist jedoch eine zeichenkette)

0

Was möchtest Du wissen?