Skip to main content

XML-Pipeline

Einleitung

InXML-Dateien in SQUEEZE mit einer anderen techischen Pipeline verarbeitet als PDFs oder einzelne Bilder. Das liegt daran, dass nicht alle Schritte der XML-Standard-Pipeline vonwie Squeezez. B. Texterkennung sinnvoll anwendbar sind.

Stattdessen werden XML-DokumenteDateien durch speziell angepasste Verarbeitungsstufen geführt, umin den unterschiedlichenhier Anforderungenerklärten derSchritten Datenextraktionverarbeitet.

und

XML-Pipeline

Dokumentenkategorisierung

Importierte gerechtbzw. zuhochgeladene werden.Dokumente Dieserdurchlaufen Abschnittdiese beschreibtSchritte:

  1. Im ersten Schritt, dem InitStep
    1. werden hochgeladene XML-Dateien, die verarbeiteteneinem Schritte und die Unterschiede zwischen der bisherigen Pipeline und der neuen Pipeline, die ab Version X.X.X auch benutzerdefinierteunterstütztem XML-StrukturenSchema unterstützt.ku

       

      BarcodeExtraction noch
      durchgeführt.
      SchrittBisherige PipelineNeue Pipeline (ab Version X.X.X)

      Einganskanäle

      Alle Eingangskanäle prüfen die Dokumente auf ihre Validität in Bezug auf die EN16931-Spezifikationen.

      Alle Eingangskanäle prüfen Dokumente auf Validität. Es wird geprüft, ob das Dokument den EN16931-Spezifikationen entspricht oder ob es einem benutzerdefinierten Mapping entspricht.

      Initialisierungs-Schritt

      - Hochgeladene XML-Dateien werdenentsprechen, in ein internes Standard-XML-Format (überführt. Die entstandene Datei ist die intermediate.xml) überführt.

    2. für Einedie intermediate.xml wird eine PDF wirderzeugt.
    3. aus der intermediate.xml
    4. Im erzeugt.

      Schritt
      1. - Prüfung, ob das Dokument XRechnung (CII, UBL) oder ZUGFeRD entspricht. Transformation und Erstellung eines Zwischenformats. Das Zwischenformat dient als Basis

      2. werden für spezifischePDF-Dateien Schema-Extraktionmit undeiner PDF-Erstellung.eingebetteten BenutzerdefinierteXML XMLs: Prüfung auf Mapping.

      Barcode- Extraktions-Schritt

      -weiterhin Viewer-Bilder auf Basis der PDF werdenerstellt. erstellt.

    5. Davon Dieserabgesehen, wird dieser Schritt wirdübersprungen.
    6. für XML-Dateien übersprungen.

      Unverändert: Dieser

    7. Im Schritt wirdOcr für
        XML-Dateien weiterhin übersprungen.

    8. OCR-Schritt

      -

    9. werden PDF-Dateien mit einer eingebetteten XML werden normal verarbeitet, um ein OCR-Ergebnis zu erstellen.
    10. Dieser
    11. Davon abgesehen, wird dieser Schritt wirdübersprungen.
    12. für reine XML-Dateien übersprungen.

      Unverändert: Dieser

    13. Im Schritt wirdClassification für
        reine
      1. TODO: XML-DateienDokumentieren, weiterhindass übersprungen.

        das
    14. Klassifizierungs-Schritt

      - Die Klassifizierung von XML-Dokumenten ist derzeitgar nicht möglich.geht Eine Exception wird

    15. Im geworfen,Schritt wenn der betroffene Code aufgerufen wird.

    16. - Klassifikation durch Identifizieren des Mappings. Bei gefundenem Mapping: Informationen zur Dokumentenklasse werden genutzt, um die Klassifikation des Dokuments zu gestalten.

      Extraction

    17. werden

      - Üblicheübliche Extraktionsmechanismen werdenweiterhin ausgeführt oder übersprungen durch die Stapelklasseneigenschaft: SkipXmlExtraction.

    18. wird nach dem Übernehmen von vordefinierten Feldwerten und vor dem Ausführen von Lokatoren die intermediate.xml wird genutzt,genutzt um Kreditor und Mandant der XML zu ermitteln. DieDieses Verhalten ist Invoice-Spezifisch.
    19. wird nach dem Ausführen von Lokatoren und vor dem Ausführen der Autovalidierung die eigentliche XML-Extraktion basiertauf aufBasis der intermediate.xml.

      1. -

      2. Hier Extraktionwerden basiert auf dem Mapping, nicht auf einem statischen Konstrukt. Änderungen an einem Mapping in der Administration wirken sich direkt aus. Bei ZUGFeRD oder XRechnung: Nutzung der intermediate.xmlFelder und festesTabellen System-Mapping,gemappt
      3. das
      4. Und nichterneut bearbeitetdie oderXML gelöschtals werdenPDF kann.

        gerendert?!

Extraktion von XMLs

In> der XML-Pipeline von Squeeze erfolgt die XML-Extraktion als aller letzter Schritt vor der Autovalidierung/Validierung und hat dabei eine besondere Rolle: Sie überschreibt extrahierte Feldwerte aus den KI-Extraktionen und den Lokatoren-Ergebnissen. Die Extraktion von XML-Daten basiert auf dem Mapping, welches im Administrationsbereich angepasst werden kann. Alternativen werden gemäß der Definition im Mapping verarbeitet.

Falls ein Hauptwert in der XML nicht gefunden wird, wird die Alternative nicht als Hauptwert verwendet und bleibt stattdessen als Alternative erhalten. Dies gewährleistet, dass nur valide Hauptwerte zur weiteren Verarbeitung und Validierung herangezogen werden, während alternative Werte für eventuelle spätere Verwendungen oder Überprüfungen verfügbarTODO

Rendering von XMLs

Das> XML-Rendering in Squeeze bezieht sich auf den Prozess der Erstellung von PDF-Dokumenten aus XML-Dateien. Dieser Prozess unterscheidet sich je nach Art des XML-Dokuments und umfasst spezifische Anforderungen für standardisierte und benutzerdefinierte XML-Formate.TODO

Rendering

TODO: von Spezifischen XML-Dokumenten

Für standardisierte XML-FormateDokumentieren, wie XRechnung und ZUGFeRD, die denXML-Verarbeitung Spezifikationenallgemein EN16931 entsprechen, erfolgt das Rendering nach den folgenden Schritten:geschieht

    TODO:

  1. Abgrenzung zu ZUGFeRD? Gibt da schon unterschiede im Core.

    ErstellungTODO: desWie Zwischenformats:spielt Imdieses InitStepFeature wirdmit ausMail-Importen derzusammen? XML-Datei ein Zwischenformat erstellt, das als Basis für das PDF-Rendering dient. Dieses Zwischenformat wird aus der intermediate.xml generiert, die die für die PDF-Erstellung benötigten Daten enthält.

  2. PDF-Erzeugung: Basierend auf dem Zwischenformat wird ein PDF-Dokument erstellt, das die strukturierten Daten aus der XML übersichtlich darstellt. Dies ermöglicht die Generierung von PDFs, die den Anforderungen der jeweiligen Spezifikation entsprechen und für den Austausch und die Archivierung verwendet werden können.

Rendering von Nicht-Spezifischen XML-Dokumenten

Für benutzerdefinierte XML-Strukturen (Customized XMLs), die nicht den EN16931-Spezifikationen entsprechen,Was gibt es derzeitzu folgende Vorgehensweise:beachten?

    TODO:

  1. Die

    PrüfungKlassifizierung aufvon Mapping:XML Imist InitStepaktuell nicht möglich. Da wird geprüft,sogar eine Exception geworfen, falls der betroffene Code aufgerufen wird. Zum einen fraglich ob diewir benutzerdefiniertedas mal verbessern, zum anderen sollte das vermutlich besser dokumentiert sein.

    Testcases:
    - XML einohne gültigesDokumentenklasse Mappinghochladen
    - hat.ZUGFeRD Fallsohne einDokumentenklasse Mappinghochladen

    vorhanden

    TODO: ist,In wirdder eineExtraktion Platzhalter-PDFwerden erstellt,mit dieexecuteXRechnungInvoiceSolution dieInvoice-Spezifische StrukturDinge erledigt, Lieferant und grundlegendenKreditor Informationenzu derermitteln.

    Das XML dokumentiert, jedochist keine vollständigesaubere PDF-Generierung wie bei den standardisierten Formaten durchführt.

  2. Platzhalter-PDF: Benutzerdefinierte XML-Dokumente, die ein Mapping aufweisen, erhalten eine Platzhalter-PDF, die grundlegende Informationen enthält, aber nicht die vollständige Detailtiefe wie bei standardisierten XMLs. Diese Platzhalter-PDF dient als temporäre Lösung, bis eine umfassendere Unterstützung für benutzerdefinierte XMLs implementiert wird.

Zukunftsausblick

In einer zukünftigen VersionTrennung von Squeeze ist geplant, auch für XML-Dokumente, die nicht den EN16931-Spezifikationen entsprechen, eine vollständige PDF-Erzeugung zu ermöglichen. Diese Weiterentwicklung wird es erlauben, alle Arten von XML-Dokumenten einheitlichCore und umfassend zu rendern, wodurch die Integration und Handhabung von benutzerdefinierten XML-Formaten weiter verbessert wird.Solution.