diff --git a/History.md b/History.md
index 69b160a8..c774653c 100644
--- a/History.md
+++ b/History.md
@@ -1,6 +1,7 @@
-- support multiple languages in visualization
-- support UBL input in visualization
-- resolve codelists in visualization
+2.7.0
+=======
+2023-04-17
+- support english and french output in factur-x visualization (read: conversion to HTML), UBL invoice and creditnote input+ resolve codelist attributes (thanks to https://jcthiele.github.io/xrechnung-visualization-codelist-resolve/)
2.6.2 "Happy Easter"
=======
diff --git a/Mustang-CLI/pom.xml b/Mustang-CLI/pom.xml
index bbc0d1a9..086d62b7 100644
--- a/Mustang-CLI/pom.xml
+++ b/Mustang-CLI/pom.xml
@@ -3,14 +3,14 @@
org.mustangproject
core
- 2.6.3-SNAPSHOT
+ 2.7.1-SNAPSHOT
4.0.0
org.mustangproject
Mustang-CLI
e-invoices commandline tool, allowing to create(embed), split and validate Factur-X/ZUGFeRD files. Validation should also work for XRechnung/CII.
jar
- 2.6.3-SNAPSHOT
+ 2.7.1-SNAPSHOT
UTF-8
8
@@ -21,7 +21,7 @@
org.mustangproject
validator
- 2.6.3-SNAPSHOT
+ 2.7.1-SNAPSHOT
diff --git a/NOTICE b/NOTICE
index 74216985..c13b8c75 100644
--- a/NOTICE
+++ b/NOTICE
@@ -29,6 +29,7 @@ Based on PH-Schematron https://github.com/phax/ph-schematron licensed under the
Based on CII2UBL https://github.com/phax/en16931-cii2ubl licensed under the APL2.0
Based on https://github.com/itplr-kosit/xrechnung-schematron licensed under the APL2.0
Based on https://github.com/itplr-kosit/xrechnung-visualization licensed under the APL2.0
+Based on https://jcthiele.github.io/xrechnung-visualization-codelist-resolve/ under the APL2.0
Based on Saxon-HE https://sourceforge.net/projects/saxon/ licensed under the MPL 2.0
Based on DOM4j https://dom4j.github.io/ licensed under the BSD license
Based on EN16931 validation artefacts https://github.com/ConnectingEurope/eInvoicing-EN16931 licensed under the EUPL 2.0
diff --git a/library/pom.xml b/library/pom.xml
index f9c8f083..baf48639 100644
--- a/library/pom.xml
+++ b/library/pom.xml
@@ -3,13 +3,13 @@
org.mustangproject
core
- 2.6.3-SNAPSHOT
+ 2.7.1-SNAPSHOT
4.0.0
org.mustangproject
library
- 2.6.3-SNAPSHOT
+ 2.7.1-SNAPSHOT
jar
Library to write, read and validate e-invoices (Factur-X, ZUGFeRD, Order-X, XRechnung/CII)
FOSS Java library to read, write and validate european electronic invoices and orders in the UN/CEFACT Cross Industry Invoice based formats Factur-X/ZUGFeRD, XRechnung and Order-X in your invoice PDFs.
diff --git a/library/src/main/resources/stylesheets/common-xr.xsl b/library/src/main/resources/stylesheets/common-xr.xsl
new file mode 100644
index 00000000..6677599d
--- /dev/null
+++ b/library/src/main/resources/stylesheets/common-xr.xsl
@@ -0,0 +1,139 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ILLEGAL DATE FORMAT of "".
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Liefert einen XPath-Pfad, welches $n eindeutig identifiziert.
+
+
+
+
+
+
+
+
+
+
+ Liefert einen XPath-Pfad, welches $n eindeutig identifiziert.
+
+
+
+
+ /
+
+
+ [
+
+ ]
+
+
+
+ /@
+
+
+
+
diff --git a/library/src/main/resources/stylesheets/functions.xsl b/library/src/main/resources/stylesheets/functions.xsl
new file mode 100644
index 00000000..d952c902
--- /dev/null
+++ b/library/src/main/resources/stylesheets/functions.xsl
@@ -0,0 +1,138 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/library/src/main/resources/stylesheets/l10n/de.xml b/library/src/main/resources/stylesheets/l10n/de.xml
new file mode 100644
index 00000000..720f207b
--- /dev/null
+++ b/library/src/main/resources/stylesheets/l10n/de.xml
@@ -0,0 +1,257 @@
+
+
+ Leitweg-ID
+ Name
+ Adresszeile 1
+ Adresszeile 2
+ Adresszeile 3
+ PLZ
+ Ort
+ Ländercode
+ Kennung
+ Schema der Kennung
+ Name
+ Telefon
+ E-Mail-Adresse
+ Firmenname
+ Adresszeile 1
+ Adresszeile 2
+ Adresszeile 3
+ PLZ
+ Ort
+ Bundesland
+ Ländercode
+ Kennung
+ Schema der Kennung
+ Name
+ Telefon
+ E-Mail-Adresse
+ Rechnungsnummer
+ Rechnungsdatum
+ Rechnungsart
+ Währung
+ Projektnummer
+ Vertragsnummer
+ Bestellnummer
+ Auftragsnummer
+
+ Von
+ Bis
+ Rechnungsnummer
+ Rechnungsdatum
+ Summe aller Positionen
+ Summe Nachlässe
+ Summe Zuschläge
+ Gesamtsumme
+ Summe Umsatzsteuer
+ Summe Umsatzsteuer in Abrechnungswährung
+ Gesamtsumme
+ Gezahlter Betrag
+ Rundungsbetrag
+ Fälliger Betrag
+ Umsatzsteuerkategorie
+ Gesamtsumme
+ Umsatzsteuersatz
+ Umsatzsteuerbetrag
+ Befreiungsgrund
+ Kennung für den Befreiungsgrund
+
+ Umsatzsteuerkategorie des
+ Nachlasses
+ Grundbetrag
+ Prozentsatz
+ Nachlass
+ Umsatzsteuersatz des
+ Nachlasses
+ Grund für den Nachlass
+ Kennung für den Nachlassgrund
+
+ Umsatzsteuerkategorie des
+ Zuschlages
+ Grundbetrag
+ Prozentsatz
+ Zuschlag
+ Umsatzsteuersatz des Zuschlages
+ Grund für den Zuschlag
+ Kennung für den Zuschlagsgrund
+ Skonto; weitere Zahlungsbedingungen
+ Fälligkeitsdatum
+ Code für das Zahlungsmittel
+ Zahlungsmittel
+ Verwendungszweck
+ Kartennummer
+ Karteninhaber
+
+ Mandatsreferenznr.
+ IBAN
+ Gläubiger-ID
+
+ Kontoinhaber
+ IBAN
+ BIC
+ Betreff
+ Bemerkung
+
+ Abweichender Handelsname
+ Elektronische Adresse
+ Schema der elektronischen Adresse
+ Register-/Registriernummer
+ Schema der Registernummer
+ Umsatzsteuer-ID
+ Steuernummer
+ Weitere rechtliche Informationen
+ Code der Umsatzsteuerwährung
+
+ Name
+ Adresszeile 1
+ Adresszeile 2
+ Adresszeile 3
+ PLZ
+ Ort
+ Bundesland
+ Ländercode
+ Umsatzsteuer-ID
+
+ Abweichender Handelsname
+ Bundesland
+ Elektronische Adresse
+ Schema der elektronischen Adresse
+ Register-/Registriernummer
+ Schema der Register-/Registriernummer
+ Umsatzsteuer-ID
+ Abrechnungsdatum der Umsatzsteuer
+ Code des Umsatzsteuer-Abrechnungsdatums
+ Kontierungsinformation
+ Kennung des Lieferorts
+ Schema der Kennung
+ Lieferdatum
+ Name des Empfängers
+ Adresszeile 1
+ Adresszeile 2
+ Adresszeile 3
+ PLZ
+ Ort
+ Bundesland
+ Ländercode
+ Vergabenummer
+ Kennung der Empfangsbestätigung
+ Kennung der Versandanzeige
+ Prozesskennung
+ Spezifikationskennung
+ Objektkennung
+ Schema der Objektkennung
+
+ Name
+ Kennung
+ Schema der Kennung
+ Register-/Registriernummer
+ Schema der Register-/Registriernummer
+
+ Kennung
+ Beschreibung
+ Verweis (z.B. Internetadresse)
+ Anhangsdokument
+ Format des Anhangdokuments
+ Name des Anhangsdokuments
+ Datum/Uhrzeit
+ Betreff
+ Text
+ Details
+ Position
+ Freitext
+ Objektkennung
+ Schema der Objektkennung
+ Nummer der Auftragsposition
+ Kontierungshinweis
+ Von
+ Bis
+ Menge
+ Einheit
+ Preis pro Einheit (netto)
+ Gesamtpreis (netto)
+ Rabatt (netto)
+ Listenpreis (netto)
+ Basismenge zum Artikelpreis
+ Code der Maßeinheit
+ Umsatzsteuer
+ Umsatzsteuersatz
+ Bezeichnung
+ Beschreibung
+ Artikelnummer
+ Artikelkennung des Käufers
+ Artikelkennung
+ Schema der Artikelkennung
+ Code der Artikelklassifizierung
+ Kennung zur Bildung des Schemas
+ Version zur Bildung des Schemas
+ Code des Herkunftslandes
+ Grundbetrag (netto)
+ Prozentsatz
+ Nachlass (netto)
+ Grund des Nachlasses
+ Code für den Nachlassgrund
+ Grundbetrag (netto)
+ Prozentsatz
+ Zuschlag (netto)
+ Grund des Zuschlags
+ Code für den Zuschlagsgrund
+ Art der Fremdforderung
+ Betrag der Fremdforderung
+ Beschreibung der Fremdforderung
+ Übersicht
+ Informationen zum Käufer
+ Informationen zum Verkäufer
+ Rechnungsdaten
+ Gesamtbeträge der Rechnung
+ Fremdforderung
+ Aufschlüsselung der Umsatzsteuer auf Ebene der Rechnung
+ Nachlass auf Ebene der Rechnung
+ Zuschlag auf Ebene der Rechnung
+ Abrechnungszeitraum
+ Vorausgegangene Rechnungen
+ Zahlungsdaten
+ Karteninformation
+ Lastschrift
+ Überweisung
+ Bemerkungen zur Rechnung
+ Details
+ Abrechnungszeitraum
+ Preiseinzelheiten
+ Nachlässe auf Ebene der Rechnungsposition
+ Zuschläge auf Ebene der Rechnungsposition
+ Artikelinformationen
+ Eigenschaften des Artikels
+ Zusätze
+ Informationen zum Verkäufer
+ Steuervertreter des Verkäufers
+ Informationen zum Käufer
+ Lieferinformationen
+ Informationen zum Vertrag
+ Vom Verkäufer abweichender Zahlungsempfänger
+ Laufzettel
+ Bearbeitungshistorie
+ Anlagen
+ Rechnungsbegründende Unterlagen
+ [D].[M].[Y]
+ [D].[M].[Y] [H]:[m]:[s]
+ ###.##0,00
+ ##0,00
+ ###.##0,#################
+
+ Summe Fremdforderungen
+
+ Wir übernehmen keine Haftung für die Richtigkeit der Daten.
+ Bemerkungen zur Rechnung
+ Öffnen
+ Keine Daten vorhanden
+ netto
+ brutto
+ Bereiche ohne Inhalte werden nicht dargestellt!
+ Beschreibung
+ Preis
+ Preiseinheit
+ USt. Satz
+ St. Code
+ Gesamt
+ Seite
+
diff --git a/library/src/main/resources/stylesheets/l10n/en.xml b/library/src/main/resources/stylesheets/l10n/en.xml
new file mode 100644
index 00000000..24f69ed8
--- /dev/null
+++ b/library/src/main/resources/stylesheets/l10n/en.xml
@@ -0,0 +1,255 @@
+
+
+ Buyer reference
+ Name
+ Address line 1
+ Address line 2
+ Address line 3
+ ZIP
+ Location
+ Country code
+ Identifier
+ Scheme identifier
+ Contact point
+ Contact point phone
+ Contact point email
+ Company name
+ Address line 1
+ Address line 2
+ Address line 3
+ ZIP
+ Location
+ State
+ Country code
+ Identifier
+ Scheme identifier
+ Contact point
+ Contact point phone
+ Contact point email
+ Invoice number
+ Invoice date
+ Invoice type
+ Currency
+ Project reference
+ Contract reference
+ Purchase order reference
+ Sales order reference
+
+ From
+ To
+ Invoice number
+ Invoice date
+ Total invoice line net amount
+ Total allowances
+ Total charges
+ Total amount
+ Total VAT
+ Total VAT in accounting currency
+ Total
+ Already paid
+ Rounding amount
+ Amount due
+ VAT category
+ Total
+ VAT rate
+ VAT amount
+ Exemption reason
+ Exemption reason code
+
+ Allowance VAT category code
+ Base amount
+ Percentage
+ Amount
+ Allowance VAT rate
+ Allowance reason
+ Allowance reason code
+
+ Charge VAT category code
+ Base amount
+ Percentage
+ Amount
+ VAT rate
+ Charge Reason
+ Charge reason code
+ Payment terms
+ Due date
+ Payment means type code
+ Payment means
+ Remittance information
+ Card number
+ Card holder
+
+ Mandate reference no.
+ Debited account identifier
+ Creditor ID
+
+ Account holder
+ Account identifier
+ BIC
+ Subject code
+ Note
+
+ Different trading name
+ Electronic address
+ Electronic address
+ scheme
+ Legal registration identifier
+ Legal registration identifier scheme
+ VAT ID
+ Tax number
+ Further legal information
+ VAT accounting currency
+
+ Name
+ Address line 1
+ Address line 2
+ Address line 3
+ ZIP
+ Location
+ State
+ Country code
+ VAT ID
+
+ Different trading name
+ State
+ Electronic address
+ Electronic address scheme
+ Legal registration identifier
+ Legal registration identifier scheme
+ VAT ID
+ Value added tax point date
+ Value added tax point date code
+ Buyer accounting reference
+ Delivery location identifier
+ Identification scheme
+ Delivery date
+ Name of the recipient
+ Address line 1
+ Address line 2
+ Address line 3
+ ZIP
+ Location
+ State
+ Country code
+ Award reference
+ Receiving advice reference
+ Despatch advice reference
+ Process identifier
+ Specification identifier
+ Object identifier
+ Object identifier scheme
+
+ Name
+ Identifier
+ Identification scheme
+ Legal registration identifier
+ Legal registration identifier scheme
+
+ Identifier
+ Description
+ Location (e.g. Internet address )
+ Attached document
+ MIME type of the attached document
+ Name of the attachment document
+ Date / time
+ Subject
+ Text
+ Details
+ Identifier
+ Free text
+ Object identifier
+ Object identifier scheme
+ Order item number
+ Buyer accounting reference
+ From
+ To
+ Quantity
+ Unit
+ Price per unit (net)
+ Total price (net)
+ Discount (net)
+ List price (net)
+ Item price base quantity
+ Unit code
+ VAT category
+ VAT rate
+ Name
+ Description
+ Item identifier
+ Buyer's item identifier
+ Item standard identifier
+ Item standard identifier scheme
+ Item classification code
+ Item classification code scheme
+ Schema version
+ Country of origin
+ Base amount (net)
+ Percentage
+ Allowance (net)
+ Allowance reason
+ Allowance reason code
+ Base amount (net)
+ Percentage
+ Charge (net)
+ Reason for the Charge
+ Charge reason code
+ Third party payment type
+ Third party payment amount
+ Third party payment description
+ Overview
+ Information about the buyer
+ Information about the seller
+ Invoice data
+ Invoice totals
+ Third party payment
+ Sales tax breakdown at invoice level
+ Invoice level discount
+ Invoice level surcharge
+ Billing period
+ Previous invoices
+ Payment data
+ Card information
+ Direct debit
+ Transfer
+ Notes on the invoice
+ Details
+ Billing period
+ Price details
+ Allowances on invoice item level
+ Charges at invoice item level
+ Item information
+ Properties of the item
+ Supplements
+ Information about the seller
+ Tax representative of the seller
+ Information about the buyer
+ Delivery information
+ Information about the contract
+ Payee different from the seller
+ Routing slip
+ Processing history
+ Attachments
+ Documents justifying the invoice
+ [Y]-[M,2]-[D,2]
+ [Y]-[M,2]-[D,2] [H]:[m]:[s]
+ ###,##0.00
+ ##0.00
+ ###,##0.#################
+
+ Third party payment total
+
+ We assume no liability for the accuracy of the data.
+ Notes on the invoice
+ Open
+ No data available
+ net
+ gross
+ Areas without content are not displayed!
+ Description
+ Price
+ Price unit
+ VAT
+ Code
+ Total
+ Page
+
diff --git a/library/src/main/resources/stylesheets/xr-content.xsl b/library/src/main/resources/stylesheets/xr-content.xsl
new file mode 100644
index 00000000..5c4207ad
--- /dev/null
+++ b/library/src/main/resources/stylesheets/xr-content.xsl
@@ -0,0 +1,935 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ #
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/src/main/resources/stylesheets/xr-pdf.xsl b/library/src/main/resources/stylesheets/xr-pdf.xsl
new file mode 100644
index 00000000..153dba41
--- /dev/null
+++ b/library/src/main/resources/stylesheets/xr-pdf.xsl
@@ -0,0 +1,103 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ normal
+
+
+ normal
+
+
+ 2 7 2 2 2 2 1.3 2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/src/main/resources/stylesheets/xr-pdf/lib/konstanten.xsl b/library/src/main/resources/stylesheets/xr-pdf/lib/konstanten.xsl
new file mode 100644
index 00000000..de3b5459
--- /dev/null
+++ b/library/src/main/resources/stylesheets/xr-pdf/lib/konstanten.xsl
@@ -0,0 +1,235 @@
+
+
+
+
+
+ SourceSerifPro
+ SourceSerifPro
+
+
+
+
+
+
+
+
+
+
+ 9pt
+ 12pt
+ 3
+ true
+ de
+
+
+
+
+ 18pt
+
+ false
+ all
+
+
+
+
+ 18pt
+
+ bold
+ 4mm
+ false
+ all
+ always
+
+
+
+
+ 0.5pt solid
+ 2.5pt
+ all
+ 4mm
+ always
+
+
+
+
+ 9pt
+
+ bold
+ 0.5pt solid
+ 4pt 6pt
+ always
+ 0
+
+
+
+
+ 10pt
+
+ bold
+ 1mm
+ 2mm
+ 2mm
+ all
+ always
+
+
+
+
+ 2mm
+ 3mm
+ 0.5pt dotted
+ #999999
+ always
+
+
+
+ #eeeeee
+ 28
+
+
+ 7pt
+ 10pt
+ 1mm
+ 1mm
+ 2mm
+ 1mm
+
+
+
+ 9pt
+ 10pt
+
+ 1mm
+ 1mm
+ 2mm
+ 2mm
+ always
+
+
+
+
+ 9pt
+ left
+ 0.2mm
+ 0.2mm
+ 0mm
+ 1mm
+ 0mm
+ always
+
+
+
+ 9pt
+ left
+ 0.2mm
+ 0.2mm
+ 0mm
+ 1mm
+ 0mm
+ always
+
+
+
+ 9pt
+ right
+ 0.2mm
+ 0.2mm
+ 0mm
+ 0mm
+ 0mm
+ always
+
+
+
+ 9pt
+ left
+ 0.4mm
+ 0.2mm
+ 0mm
+ 1mm
+ 0.1pt solid #999999
+ always
+
+
+
+ 9pt
+ left
+ 0.4mm
+ 0.2mm
+ 0mm
+ 1mm
+ 0.1pt solid #999999
+ always
+
+
+
+ 9pt
+ bold
+ right
+ 0.4mm
+ 0.2mm
+ 0mm
+ 0mm
+ 0.1pt solid #999999
+ always
+
+
+
+
+ 10mm
+
+
+
+ 2mm
+ always
+ all
+
+
+
+ 2mm
+
+
+
+
+ 2pt
+ 2pt
+ 100%
+ fixed
+ 2mm
+
+
+
+ bold
+
+
+
+
+
+
+
+
+ 80%
+ italic
+
+
+
+ 2pt
+ 2pt
+ 100%
+ fixed
+ 80%
+ italic
+
+
+
\ No newline at end of file
diff --git a/library/src/main/resources/stylesheets/xr-pdf/lib/structure/content-templates.xsl b/library/src/main/resources/stylesheets/xr-pdf/lib/structure/content-templates.xsl
new file mode 100644
index 00000000..de3c25aa
--- /dev/null
+++ b/library/src/main/resources/stylesheets/xr-pdf/lib/structure/content-templates.xsl
@@ -0,0 +1,972 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ zweispaltig
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ zweispaltig
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ zweispaltig
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ url(embedded-file:)
+
+
+
+
+
+
+
+
+ data:application/pdf;base64,
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mm
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ h1
+
+
+
+
+
+
+
+
+
+
+ h2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Code
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Code
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/src/main/resources/stylesheets/xr-pdf/lib/structure/layout-master-set.xsl b/library/src/main/resources/stylesheets/xr-pdf/lib/structure/layout-master-set.xsl
new file mode 100644
index 00000000..ef3bc411
--- /dev/null
+++ b/library/src/main/resources/stylesheets/xr-pdf/lib/structure/layout-master-set.xsl
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/src/main/resources/stylesheets/xr-pdf/lib/structure/page-sequence.xsl b/library/src/main/resources/stylesheets/xr-pdf/lib/structure/page-sequence.xsl
new file mode 100644
index 00000000..864c29db
--- /dev/null
+++ b/library/src/main/resources/stylesheets/xr-pdf/lib/structure/page-sequence.xsl
@@ -0,0 +1,68 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ /
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ /
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 024766ab..370d58ff 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
4.0.0
org.mustangproject
core
- 2.6.3-SNAPSHOT
+ 2.7.1-SNAPSHOT
pom
Mustang
diff --git a/validator/pom.xml b/validator/pom.xml
index 87206935..80c9c0e8 100644
--- a/validator/pom.xml
+++ b/validator/pom.xml
@@ -3,7 +3,7 @@
org.mustangproject
core
- 2.6.3-SNAPSHOT
+ 2.7.1-SNAPSHOT
4.0.0
org.mustangproject
@@ -11,7 +11,7 @@
Library to validate e-invoices (ZUGFeRD, Factur-X and Xrechnung)
jar
- 2.6.3-SNAPSHOT
+ 2.7.1-SNAPSHOT
@@ -38,7 +38,7 @@
${project.groupId}
library
- 2.6.3-SNAPSHOT
+ 2.7.1-SNAPSHOT
@@ -98,7 +98,7 @@
org.mustangproject
library
- 2.6.3-SNAPSHOT
+ 2.7.1-SNAPSHOT
org.xmlunit