diff --git a/library/src/main/resources/stylesheets/cii-xr.xsl b/library/src/main/resources/stylesheets/cii-xr.xsl
index fb1eefdf..a27035b5 100644
--- a/library/src/main/resources/stylesheets/cii-xr.xsl
+++ b/library/src/main/resources/stylesheets/cii-xr.xsl
@@ -3,6 +3,7 @@
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xd="http://www.oxygenxml.com/ns/doc/xsl"
xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:fn="http://www.w3.org/2005/xpath-functions"
xmlns:xr="urn:ce.eu:en16931:2017:xoev-de:kosit:standard:xrechnung-1"
xmlns:rsm="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100"
xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
@@ -11,2149 +12,2533 @@
xmlns:saxon="http://saxon.sf.net/"
exclude-result-prefixes="#all"
version="2.0">
-
-
-
- Author: KoSIT Bremen (kosit@finanzen.bremen.de)
- Fassung vom: 2020-06-30+02:00
- Überführt eine zur EN 16931 konforme elektronische Rechnung in der konkreten Syntax UNCEFACT.CII.D16B in eine Instanz gemäß des Schemas für den Namensraum urn:ce.eu:en16931:2017:xoev-de:kosit:standard:xrechnung-1.
- Das Skript setzt voraus, dass das zu verarbeitende Dokument valide bzgl. des XML Schemas und der Schematron-Regeln der Quelle ist. Für nicht valide Dokumente ist das Ergebnis nicht definiert.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ;
-
-
-
-
-
-
-
-
-
-
-
-
-
- ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ Author:
+ KoSIT Bremen (kosit@finanzen.bremen.de)
+
+ Fassung vom: 2020-06-30+02:00
+ modifiziert durch Dr. Jan Thiele am: 2021-02-11+01:00
+ Überführt eine zur EN 16931 konforme elektronische Rechnung in der konkreten Syntax UNCEFACT.CII.D16B
+ in eine Instanz gemäß des Schemas für den Namensraum
+ urn:ce.eu:en16931:2017:xoev-de:kosit:standard:xrechnung-1.
+
+ Das Skript setzt voraus, dass das zu verarbeitende Dokument valide bzgl. des XML Schemas und der
+ Schematron-Regeln der Quelle ist. Für nicht valide Dokumente ist das Ergebnis nicht definiert.
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
- -->
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
;
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+ #SKONTO#
-
-
-
-
-
-
-
-
+ TAGE
+ WOCHEN
-
-
-
-
-
-
+ =#PROZENT=#
+
+
+
+
+
+
+ ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ILLEGAL DATE FORMAT: <para>Mit diesem Datentyp wird ein kalendarisches Datum
+ abgebildet, wie es in der ISO 8601 Spezifikation <quote>Calendar date complete representation</quote>
+ beschrieben ist (siehe ISO 8601:2004, Abschnitt 5.2.1.1). Das Datum beinhaltet keine Zeitangabe. Das
+ konkret zu verwendende Format ist abhängig von der genutzten Syntax.</para>
+ <para>Der Datentyp basiert auf dem Typ <quote>Date Time. Type</quote>, wie in ISO
+ 15000-5:2014 Anhang B definiert.</para>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Liefert einen XPath-Pfad, welches $n eindeutig identifiziert.
+
+
+
+
+
+
+
+
+
+
+ Liefert einen XPath-Pfad, welches $n eindeutig identifiziert.
+
+
+
+
+ /
+
+
+ [
+
+ ]
+
+
+
+ /@
+
+
diff --git a/library/src/main/resources/stylesheets/ubl-creditnote-xr.xsl b/library/src/main/resources/stylesheets/ubl-creditnote-xr.xsl
index 711a6f9f..da2b18c8 100644
--- a/library/src/main/resources/stylesheets/ubl-creditnote-xr.xsl
+++ b/library/src/main/resources/stylesheets/ubl-creditnote-xr.xsl
@@ -15,14 +15,31 @@
Author: KoSIT Bremen (kosit@finanzen.bremen.de)
Fassung vom: 2020-06-30+02:00
+ modifiziert durch Dr. Jan Thiele am: 2021-02-11+01:00
Überführt eine zur EN 16931 konforme elektronische Rechnung in der konkreten Syntax UBL.2_1.CreditNote in eine Instanz gemäß des Schemas für den Namensraum urn:ce.eu:en16931:2017:xoev-de:kosit:standard:xrechnung-1.
Das Skript setzt voraus, dass das zu verarbeitende Dokument valide bzgl. des XML Schemas und der Schematron-Regeln der Quelle ist. Für nicht valide Dokumente ist das Ergebnis nicht definiert.
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
@@ -58,7 +75,16 @@
-
+
+
+
+
+
+
+
+
+
+
@@ -100,7 +126,6 @@
-
@@ -137,21 +162,36 @@
-
+
+
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
+
+
@@ -166,7 +206,12 @@
-
+
+
+
+
+
+
-
+
+
+
+
@@ -337,7 +385,10 @@
-
+
+
+
+
-
+
+
+
+
-
+
+
+
+
-
+
+
+
+
+
+
+
@@ -536,11 +600,25 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -560,7 +638,10 @@
-
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
-
+
+
+
+
@@ -818,7 +910,12 @@
-
+
+
+
+
+
+
@@ -850,7 +947,10 @@
-
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
+
+
+ match="/CreditNote:CreditNote/cac:PaymentMeans/cbc:PaymentMeansCode/@Name">
@@ -1163,7 +1273,12 @@
-
+
+
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
+
+
@@ -1279,9 +1409,9 @@
+ select="/CreditNote:CreditNote/cac:TaxTotal/cbc:TaxAmount"/>
+ select="/CreditNote:CreditNote/cac:TaxTotal/cbc:TaxAmount"/>
@@ -1413,7 +1543,12 @@
-
+
+
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
-
+
+
+
+
-
+
+
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Liefert einen XPath-Pfad, welches $n eindeutig identifiziert.
+
+
+
+
+
+
+
+
+
+
+ Liefert einen XPath-Pfad, welches $n eindeutig identifiziert.
+
+
+
+
+ /
+
+
+ [
+
+ ]
+
+
+
+ /@
+
+
+
diff --git a/library/src/main/resources/stylesheets/ubl-invoice-xr.xsl b/library/src/main/resources/stylesheets/ubl-invoice-xr.xsl
index b3031ba8..7bdec35d 100644
--- a/library/src/main/resources/stylesheets/ubl-invoice-xr.xsl
+++ b/library/src/main/resources/stylesheets/ubl-invoice-xr.xsl
@@ -1,31 +1,46 @@
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:xd="http://www.oxygenxml.com/ns/doc/xsl"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:xr="urn:ce.eu:en16931:2017:xoev-de:kosit:standard:xrechnung-1"
+ xmlns:Invoice="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
+ xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
+ xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2"
+ xmlns:saxon="http://saxon.sf.net/"
+ exclude-result-prefixes="#all"
+ version="2.0">
Author: KoSIT Bremen (kosit@finanzen.bremen.de)
Fassung vom: 2020-06-30+02:00
- Überführt eine zur EN 16931 konforme elektronische Rechnung in der konkreten Syntax
- UBL.2_1.Invoice in eine Instanz gemäß des Schemas für den Namensraum
- urn:ce.eu:en16931:2017:xoev-de:kosit:standard:xrechnung-1.
- Das Skript setzt voraus, dass das zu verarbeitende Dokument valide bzgl. des XML
- Schemas und der Schematron-Regeln der Quelle ist. Für nicht valide Dokumente ist das
- Ergebnis nicht definiert.
+ modifiziert durch Dr. Jan Thiele am: 2021-02-11+01:00
+ Überführt eine zur EN 16931 konforme elektronische Rechnung in der konkreten Syntax UBL.2_1.Invoice in eine Instanz gemäß des Schemas für den Namensraum urn:ce.eu:en16931:2017:xoev-de:kosit:standard:xrechnung-1.
+ Das Skript setzt voraus, dass das zu verarbeitende Dokument valide bzgl. des XML Schemas und der Schematron-Regeln der Quelle ist. Für nicht valide Dokumente ist das Ergebnis nicht definiert.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
@@ -46,15 +61,12 @@
+ select="./cac:AdditionalDocumentReference/cbc:ID[following-sibling::cbc:DocumentTypeCode='130']"/>
-
+
@@ -62,7 +74,16 @@
-
+
+
+
+
+
+
+
+
+
+
@@ -90,7 +111,7 @@
+ select="./cac:BillingReference/cac:InvoiceDocumentReference"/>
@@ -104,7 +125,6 @@
-
@@ -114,14 +134,13 @@
+ select="./cac:AllowanceCharge[cbc:ChargeIndicator = 'false']"/>
+ select="./cac:AllowanceCharge[cbc:ChargeIndicator = 'true']"/>
-
@@ -142,21 +161,36 @@
-
+
+
+
+
+
+
-
+
+
+
+
+
+
-
+
+
+
+
+
+
@@ -166,11 +200,17 @@
-
+
-
+
+
+
+
+
+
@@ -194,7 +234,8 @@
-
+
@@ -208,28 +249,32 @@
-
+
-
+
-
+
-
+
@@ -237,11 +282,14 @@
+ match="/Invoice:Invoice/cac:AdditionalDocumentReference/cbc:ID[following-sibling::cbc:DocumentTypeCode='130']">
-
+
+
+
+
@@ -259,9 +307,8 @@
-
-
+ match="/Invoice:Invoice/cac:BillingReference/cac:InvoiceDocumentReference">
+
@@ -274,7 +321,7 @@
+ match="/Invoice:Invoice/cac:BillingReference/cac:InvoiceDocumentReference/cbc:ID">
@@ -282,7 +329,7 @@
+ match="/Invoice:Invoice/cac:BillingReference/cac:InvoiceDocumentReference/cbc:IssueDate">
@@ -290,19 +337,18 @@
-
-
+
+ select="./cac:Party/cac:PartyLegalEntity/cbc:RegistrationName"/>
+ select="./cac:Party/cac:PartyTaxScheme/cbc:CompanyID[following-sibling::cac:TaxScheme/cbc:ID = 'VAT']"/>
+ select="./cac:Party/cac:PartyTaxScheme/cbc:CompanyID[following-sibling::cac:TaxScheme/cbc:ID != 'VAT']"/>
+ select="./cac:Party/cac:PartyLegalEntity/cbc:CompanyLegalForm"/>
@@ -316,7 +362,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:RegistrationName">
@@ -324,7 +370,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyName/cbc:Name">
@@ -332,23 +378,29 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID">
-
+
+
+
+
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID">
-
+
+
+
+
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID[following-sibling::cac:TaxScheme/cbc:ID = 'VAT']">
@@ -356,7 +408,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID[following-sibling::cac:TaxScheme/cbc:ID != 'VAT']">
@@ -364,7 +416,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyLegalForm">
@@ -372,17 +424,19 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cbc:EndpointID">
-
+
+
+
+
-
-
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress">
+
@@ -400,7 +454,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress/cbc:StreetName">
@@ -408,7 +462,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress/cbc:AdditionalStreetName">
@@ -416,7 +470,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress/cac:AddressLine/cbc:Line">
@@ -424,7 +478,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress/cbc:CityName">
@@ -432,7 +486,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress/cbc:PostalZone">
@@ -440,7 +494,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress/cbc:CountrySubentity">
@@ -448,17 +502,21 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress/cac:Country/cbc:IdentificationCode">
-
+
+
+
+
+
+
-
-
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:Contact">
+
@@ -472,7 +530,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:Contact/cbc:Name">
@@ -480,7 +538,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:Contact/cbc:Telephone">
@@ -488,7 +546,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:Contact/cbc:ElectronicMail">
@@ -496,17 +554,16 @@
-
-
+
+ select="./cac:Party/cac:PartyLegalEntity/cbc:RegistrationName"/>
+ select="./cac:Party/cac:PartyTaxScheme/cbc:CompanyID[following-sibling::cac:TaxScheme/cbc:ID = 'VAT']"/>
@@ -520,7 +577,7 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PartyLegalEntity/cbc:RegistrationName">
@@ -528,7 +585,7 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PartyName/cbc:Name">
@@ -536,23 +593,29 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PartyIdentification/cbc:ID">
-
+
+
+
+
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID">
-
+
+
+
+
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID[following-sibling::cac:TaxScheme/cbc:ID = 'VAT']">
@@ -560,17 +623,19 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cbc:EndpointID">
-
+
+
+
+
-
-
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress">
+
@@ -588,7 +653,7 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress/cbc:StreetName">
@@ -596,7 +661,7 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress/cbc:AdditionalStreetName">
@@ -604,7 +669,7 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress/cac:AddressLine/cbc:Line">
@@ -612,7 +677,7 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress/cbc:CityName">
@@ -620,7 +685,7 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress/cbc:PostalZone">
@@ -628,7 +693,7 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress/cbc:CountrySubentity">
@@ -636,17 +701,21 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PostalAddress/cac:Country/cbc:IdentificationCode">
-
+
+
+
+
+
+
-
-
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:Contact">
+
@@ -660,7 +729,7 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:Contact/cbc:Name">
@@ -668,7 +737,7 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:Contact/cbc:Telephone">
@@ -676,7 +745,7 @@
+ match="/Invoice:Invoice/cac:AccountingCustomerParty/cac:Party/cac:Contact/cbc:ElectronicMail">
@@ -684,8 +753,7 @@
-
-
+
@@ -698,34 +766,41 @@
-
+
-
+
-
+
+
+
+
+ match="/Invoice:Invoice/cac:PayeeParty/cac:PartyLegalEntity/cbc:CompanyID">
-
+
+
+
+
-
-
+
+ select="./cac:PartyTaxScheme/cbc:CompanyID[following-sibling::cac:TaxScheme/cbc:ID = 'VAT']"/>
@@ -737,7 +812,7 @@
+ match="/Invoice:Invoice/cac:TaxRepresentativeParty/cac:PartyName/cbc:Name">
@@ -745,16 +820,16 @@
+ match="/Invoice:Invoice/cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID[following-sibling::cac:TaxScheme/cbc:ID = 'VAT']">
-
-
-
+
+
@@ -772,7 +847,7 @@
+ match="/Invoice:Invoice/cac:TaxRepresentativeParty/cac:PostalAddress/cbc:StreetName">
@@ -780,7 +855,7 @@
+ match="/Invoice:Invoice/cac:TaxRepresentativeParty/cac:PostalAddress/cbc:AdditionalStreetName">
@@ -788,7 +863,7 @@
+ match="/Invoice:Invoice/cac:TaxRepresentativeParty/cac:PostalAddress/cac:AddressLine/cbc:Line">
@@ -796,7 +871,7 @@
+ match="/Invoice:Invoice/cac:TaxRepresentativeParty/cac:PostalAddress/cbc:CityName">
@@ -804,7 +879,7 @@
+ match="/Invoice:Invoice/cac:TaxRepresentativeParty/cac:PostalAddress/cbc:PostalZone">
@@ -812,7 +887,7 @@
+ match="/Invoice:Invoice/cac:TaxRepresentativeParty/cac:PostalAddress/cbc:CountrySubentity">
@@ -820,16 +895,20 @@
+ match="/Invoice:Invoice/cac:TaxRepresentativeParty/cac:PostalAddress/cac:Country/cbc:IdentificationCode">
-
+
+
+
+
+
+
-
-
+
@@ -845,21 +924,26 @@
+ match="/Invoice:Invoice/cac:Delivery/cac:DeliveryParty/cac:PartyName/cbc:Name">
-
+
-
+
+
+
+
-
+
@@ -867,8 +951,7 @@
-
-
+
@@ -894,9 +977,9 @@
-
-
-
+
+
@@ -914,7 +997,7 @@
+ match="/Invoice:Invoice/cac:Delivery/cac:DeliveryLocation/cac:Address/cbc:StreetName">
@@ -922,7 +1005,7 @@
+ match="/Invoice:Invoice/cac:Delivery/cac:DeliveryLocation/cac:Address/cbc:AdditionalStreetName">
@@ -930,7 +1013,7 @@
+ match="/Invoice:Invoice/cac:Delivery/cac:DeliveryLocation/cac:Address/cac:AddressLine/cbc:Line">
@@ -938,7 +1021,7 @@
+ match="/Invoice:Invoice/cac:Delivery/cac:DeliveryLocation/cac:Address/cbc:CityName">
@@ -946,7 +1029,7 @@
+ match="/Invoice:Invoice/cac:Delivery/cac:DeliveryLocation/cac:Address/cbc:PostalZone">
@@ -954,7 +1037,7 @@
+ match="/Invoice:Invoice/cac:Delivery/cac:DeliveryLocation/cac:Address/cbc:CountrySubentity">
@@ -962,21 +1045,33 @@
+ match="/Invoice:Invoice/cac:Delivery/cac:DeliveryLocation/cac:Address/cac:Country/cbc:IdentificationCode">
-
+
+
+
+
+
+
-
+
-
+
+
+
+
+
+
-
+
@@ -990,9 +1085,9 @@
-
-
-
+
+
@@ -1006,7 +1101,7 @@
+ match="/Invoice:Invoice/cac:PaymentMeans/cac:PayeeFinancialAccount/cbc:ID">
@@ -1014,7 +1109,7 @@
+ match="/Invoice:Invoice/cac:PaymentMeans/cac:PayeeFinancialAccount/cbc:Name">
@@ -1022,7 +1117,7 @@
+ match="/Invoice:Invoice/cac:PaymentMeans/cac:PayeeFinancialAccount/cac:FinancialInstitutionBranch/cbc:ID">
@@ -1030,8 +1125,7 @@
-
-
+
@@ -1044,7 +1138,7 @@
+ match="/Invoice:Invoice/cac:PaymentMeans/cac:CardAccount/cbc:PrimaryAccountNumberID">
@@ -1052,21 +1146,21 @@
+ match="/Invoice:Invoice/cac:PaymentMeans/cac:CardAccount/cbc:HolderName">
-
-
-
+
+
+ select="/Invoice:Invoice/cac:PayeeParty/cac:PartyIdentification/cbc:ID[@schemeID = 'SEPA']"/>
+ select="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID[@schemeID = 'SEPA']"/>
@@ -1077,7 +1171,8 @@
-
+
@@ -1085,7 +1180,7 @@
+ match="/Invoice:Invoice/cac:PayeeParty/cac:PartyIdentification/cbc:ID[@schemeID = 'SEPA']">
@@ -1093,7 +1188,7 @@
+ match="/Invoice:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID[@schemeID = 'SEPA']">
@@ -1101,7 +1196,7 @@
+ match="/Invoice:Invoice/cac:PaymentMeans/cac:PaymentMandate/cac:PayerFinancialAccount/cbc:ID">
@@ -1109,24 +1204,22 @@
-
-
+ match="/Invoice:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'false']">
+
+ select="./cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="./cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="./cbc:MultiplierFactorNumeric[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="./cac:TaxCategory/cbc:ID[ancestor::cac:AllowanceCharge/cbc:ChargeIndicator = 'false' and following-sibling::cac:TaxScheme/cbc:ID = 'VAT']"/>
+ select="./cac:TaxCategory/cbc:Percent[ancestor::cac:AllowanceCharge/cbc:ChargeIndicator = 'false']"/>
+ select="./cbc:AllowanceChargeReason[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="./cbc:AllowanceChargeReasonCode[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
@@ -1137,7 +1230,7 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'false']">
@@ -1145,7 +1238,7 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'false']">
@@ -1153,7 +1246,7 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cbc:MultiplierFactorNumeric[preceding-sibling::cbc:ChargeIndicator = 'false']">
@@ -1161,15 +1254,20 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cac:TaxCategory/cbc:ID[ancestor::cac:AllowanceCharge/cbc:ChargeIndicator = 'false' and following-sibling::cac:TaxScheme/cbc:ID = 'VAT']">
-
+
+
+
+
+
+
+ match="/Invoice:Invoice/cac:AllowanceCharge/cac:TaxCategory/cbc:Percent[ancestor::cac:AllowanceCharge/cbc:ChargeIndicator = 'false']">
@@ -1177,7 +1275,7 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cbc:AllowanceChargeReason[preceding-sibling::cbc:ChargeIndicator = 'false']">
@@ -1185,32 +1283,35 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cbc:AllowanceChargeReasonCode[preceding-sibling::cbc:ChargeIndicator = 'false']">
-
+
+
+
+
+
+
-
-
+ match="/Invoice:Invoice/cac:AllowanceCharge[cbc:ChargeIndicator = 'true']">
+
+ select="./cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="./cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="./cbc:MultiplierFactorNumeric[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="./cac:TaxCategory/cbc:ID[ancestor::cac:AllowanceCharge/cbc:ChargeIndicator = 'true']"/>
+ select="./cac:TaxCategory/cbc:Percent[ancestor::cac:AllowanceCharge/cbc:ChargeIndicator = 'true']"/>
+ select="./cbc:AllowanceChargeReason[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="./cbc:AllowanceChargeReasonCode[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
@@ -1221,7 +1322,7 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'true']">
@@ -1229,7 +1330,7 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'true']">
@@ -1237,7 +1338,7 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cbc:MultiplierFactorNumeric[preceding-sibling::cbc:ChargeIndicator = 'true']">
@@ -1245,15 +1346,20 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cac:TaxCategory/cbc:ID[ancestor::cac:AllowanceCharge/cbc:ChargeIndicator = 'true']">
-
+
+
+
+
+
+
+ match="/Invoice:Invoice/cac:AllowanceCharge/cac:TaxCategory/cbc:Percent[ancestor::cac:AllowanceCharge/cbc:ChargeIndicator = 'true']">
@@ -1261,7 +1367,7 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cbc:AllowanceChargeReason[preceding-sibling::cbc:ChargeIndicator = 'true']">
@@ -1269,24 +1375,26 @@
+ match="/Invoice:Invoice/cac:AllowanceCharge/cbc:AllowanceChargeReasonCode[preceding-sibling::cbc:ChargeIndicator = 'true']">
-
+
+
+
+
+
+
-
-
+
-
-
+
+
@@ -1301,7 +1409,7 @@
+ match="/Invoice:Invoice/cac:LegalMonetaryTotal/cbc:LineExtensionAmount">
@@ -1309,14 +1417,15 @@
+ match="/Invoice:Invoice/cac:LegalMonetaryTotal/cbc:AllowanceTotalAmount">
-
+
@@ -1324,7 +1433,7 @@
+ match="/Invoice:Invoice/cac:LegalMonetaryTotal/cbc:TaxExclusiveAmount">
@@ -1346,14 +1455,15 @@
+ match="/Invoice:Invoice/cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount">
-
+
@@ -1361,14 +1471,15 @@
+ match="/Invoice:Invoice/cac:LegalMonetaryTotal/cbc:PayableRoundingAmount">
-
+
@@ -1376,12 +1487,11 @@
-
-
+
+ select="./cac:TaxCategory/cbc:ID[following-sibling::cac:TaxScheme/cbc:ID = 'VAT']"/>
@@ -1395,14 +1505,15 @@
+ match="/Invoice:Invoice/cac:TaxTotal/cac:TaxSubtotal/cbc:TaxableAmount">
-
+
@@ -1410,15 +1521,20 @@
+ match="/Invoice:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID[following-sibling::cac:TaxScheme/cbc:ID = 'VAT']">
-
+
+
+
+
+
+
+ match="/Invoice:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:Percent">
@@ -1426,7 +1542,7 @@
+ match="/Invoice:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:TaxExemptionReason">
@@ -1434,21 +1550,25 @@
+ match="/Invoice:Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:TaxExemptionReasonCode">
-
+
+
+
+
+
+
-
-
+
+ select="./cac:Attachment/cbc:EmbeddedDocumentBinaryObject"/>
@@ -1458,7 +1578,8 @@
-
+
@@ -1466,7 +1587,7 @@
+ match="/Invoice:Invoice/cac:AdditionalDocumentReference/cbc:DocumentDescription">
@@ -1474,7 +1595,7 @@
+ match="/Invoice:Invoice/cac:AdditionalDocumentReference/cac:Attachment/cac:ExternalReference/cbc:URI">
@@ -1482,7 +1603,7 @@
+ match="/Invoice:Invoice/cac:AdditionalDocumentReference/cac:Attachment/cbc:EmbeddedDocumentBinaryObject">
@@ -1490,13 +1611,11 @@
-
-
+
-
+ select="./cac:DocumentReference/cbc:ID[following-sibling::cbc:DocumentTypeCode = '130']"/>
@@ -1504,9 +1623,9 @@
+ select="./cac:AllowanceCharge[cbc:ChargeIndicator = 'false']"/>
+ select="./cac:AllowanceCharge[cbc:ChargeIndicator = 'true']"/>
@@ -1535,42 +1654,55 @@
+ match="cac:DocumentReference/cbc:ID[following-sibling::cbc:DocumentTypeCode = '130']">
-
+
+
+
+
-
+
-
+
-
+
+
+
+
+
+
-
+
-
+
-
+
@@ -1578,8 +1710,7 @@
-
-
+
@@ -1591,34 +1722,35 @@
-
+
-
+
-
-
-
+
+
+ select="./cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="./cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="./cbc:MultiplierFactorNumeric[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="./cbc:AllowanceChargeReason[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="./cbc:AllowanceChargeReasonCode[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
@@ -1629,7 +1761,7 @@
+ match="cac:AllowanceCharge/cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'false']">
@@ -1637,7 +1769,7 @@
+ match="cac:AllowanceCharge/cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'false']">
@@ -1645,7 +1777,7 @@
+ match="cac:AllowanceCharge/cbc:MultiplierFactorNumeric[preceding-sibling::cbc:ChargeIndicator = 'false']">
@@ -1653,7 +1785,7 @@
+ match="cac:AllowanceCharge/cbc:AllowanceChargeReason[preceding-sibling::cbc:ChargeIndicator = 'false']">
@@ -1661,27 +1793,31 @@
+ match="cac:AllowanceCharge/cbc:AllowanceChargeReasonCode[preceding-sibling::cbc:ChargeIndicator = 'false']">
-
+
+
+
+
+
+
-
-
-
+
+
+ select="./cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="./cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="./cbc:MultiplierFactorNumeric[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="./cbc:AllowanceChargeReason[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="./cbc:AllowanceChargeReasonCode[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
@@ -1692,7 +1828,7 @@
+ match="cac:AllowanceCharge/cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'true']">
@@ -1700,7 +1836,7 @@
+ match="cac:AllowanceCharge/cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'true']">
@@ -1708,7 +1844,7 @@
+ match="cac:AllowanceCharge/cbc:MultiplierFactorNumeric[preceding-sibling::cbc:ChargeIndicator = 'true']">
@@ -1716,7 +1852,7 @@
+ match="cac:AllowanceCharge/cbc:AllowanceChargeReason[preceding-sibling::cbc:ChargeIndicator = 'true']">
@@ -1724,21 +1860,25 @@
+ match="cac:AllowanceCharge/cbc:AllowanceChargeReasonCode[preceding-sibling::cbc:ChargeIndicator = 'true']">
-
+
+
+
+
+
+
-
-
+
+ select="./cac:AllowanceCharge/cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="./cac:AllowanceCharge/cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
@@ -1750,7 +1890,8 @@
-
+
@@ -1758,7 +1899,7 @@
+ match="cac:Price/cac:AllowanceCharge/cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'false']">
@@ -1766,30 +1907,37 @@
+ match="cac:Price/cac:AllowanceCharge/cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'false']">
-
+
-
+
-
+
+
+
+
+
+
-
-
-
+
+
@@ -1801,14 +1949,21 @@
-
+
-
+
+
+
+
+
+
-
+
@@ -1816,15 +1971,14 @@
-
-
+
+ select="./cac:CommodityClassification/cbc:ItemClassificationCode"/>
@@ -1836,59 +1990,76 @@
-
+
-
+
-
+
-
+
-
+
-
+
+
+
+
+ match="cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode">
-
+
+
+
+
-
+
-
+
+
+
+
+
+
-
-
-
+
+
@@ -1900,14 +2071,16 @@
-
+
-
+
@@ -1915,8 +2088,7 @@
-
-
+
-
+
-
-
+
+ select="cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode"/>
+ select="cac:Item/cac:OriginCountry/cbc:IdentificationCode"/>
@@ -1965,10 +2136,10 @@
-
-
-
-
+
+
+
@@ -1979,22 +2150,20 @@
-
+
-
-
+ match="cac:SubInvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'false']">
+
+ select="cac:AllowanceCharge/cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="cac:AllowanceCharge/cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="cac:AllowanceCharge/cbc:MultiplierFactorNumeric[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="cac:AllowanceCharge/cbc:AllowanceChargeReason[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="cac:AllowanceCharge/cbc:AllowanceChargeReasonCode[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
@@ -2005,20 +2174,18 @@
-
-
+ match="cac:SubInvoiceLine/cac:AllowanceCharge[cbc:ChargeIndicator = 'true']">
+
+ select="cac:AllowanceCharge/cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="cac:AllowanceCharge/cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="cac:AllowanceCharge/cbc:MultiplierFactorNumeric[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="cac:AllowanceCharge/cbc:AllowanceChargeReason[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
+ select="cac:AllowanceCharge/cbc:AllowanceChargeReasonCode[preceding-sibling::cbc:ChargeIndicator = 'true']"/>
@@ -2029,8 +2196,7 @@
-
-
+
@@ -2043,11 +2209,9 @@
-
-
+
-
+
@@ -2056,15 +2220,14 @@
-
+
-
-
+
+ select="cac:Price/cac:AllowanceCharge/cbc:Amount[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
+ select="cac:Price/cac:AllowanceCharge/cbc:BaseAmount[preceding-sibling::cbc:ChargeIndicator = 'false']"/>
@@ -2076,39 +2239,140 @@
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Liefert einen XPath-Pfad, welches $n eindeutig identifiziert.
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+ Liefert einen XPath-Pfad, welches $n eindeutig identifiziert.
+
+
+
+
+ /
+
+
+ [
+
+ ]
+
+
+
+ /@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-