NAME

Quiq::Zugferd::Tree - Operatonen auf ZUGFeRD-Baum

BASE CLASS

Quiq::Hash

DESCRIPTION

Ein ZUGFeRD-Baum ist die Repräsentation von ZUGFeRD-XML in Form einer Perl-Datenstruktur. Diese Repräsentation wird genutzt, um die XML-Struktur geeignet bearbeiten zu können.

METHODS

Klassenmethoden

new() - Konstruktor

Synopsis

$ztr = $class->new($ref);

Description

Instantiiere einen ZUGFeRD-Baum und liefere eine Referenz auf dieses Objekt zurück.

Objektmethoden

getMultiElement() - Liefere Mehrfach-Element

Synopsis

$ztr = $ztr->getMultiElement($keyPath,$placeholder)

Arguments

$keyPath

Pfad zu Array

$placeholder

Name des Platzhalters

Description

Liefere die Struktur, die das erste Element des Arrays iat, das $keyPath referenziert, und ersetze die Referenz durch den Platzhalter $placeholder.

reduceTree() - Reduziere den Baum

Synopsis

$ztr->reduceTree;

Description

Reduziere den ZUGFeRD-Baum auf ein Minumum, d.h.

  • Entferne alle Knoten mit unersetzten Platzhaltern

  • Entferne alle leeren Knoten

resolvePlaceholders() - Ersetze Platzhalter

Synopsis

$ztr->resolvePlaceholders(@keyVal);

Arguments

@keyVal

Liste der Platzhalter und ihrer Werte

Description

Durchlaufe den ZUGFeRD-Baum rekursiv und ersetze auf den Blattknoten die Platzhalter durch ihre Werte.

Fehlt einer der Platzhalter (key) im Baum, wird eine Exception geworfen.

VERSION

1.224

AUTHOR

Frank Seitz, http://fseitz.de/

COPYRIGHT

Copyright (C) 2025 Frank Seitz

LICENSE

This code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.