Technology

XPath

Definition

XPath (XML Path Language) is a query language for XML documents that enables addressing nodes and values in an XML tree. In the e-invoicing context, XPath is used in Schematron rules to specifically address individual fields of an invoice (e.g., BT-1 or BT-9) and check their content against business rules. Developers also use XPath in XSLT transformations for rendering e-invoices.

Switch to German:XPath (DE)

Related terms

SchematronSchematron is a rule-based validation language for XML documents, based on XPath expressions. In the context of XRechnung and EN 16931, Schematron rules are used to perform content-level plausibility checks that go beyond pure schema validation (XSD). The official Schematron rules for XRechnung are maintained by KoSIT and are part of the open-source Validator.XSD Schema (XML Schema Definition)An XSD schema (XML Schema Definition) defines the formal structure, element names, and data types of an XML document. In the context of XRechnung and EN 16931, XSD schema validation is used as the first validation step to verify that an XML document complies with the basic syntactic structure. Content-level checking of business rules is then performed by Schematron.XSLT (Extensible Stylesheet Language Transformations)XSLT is a declarative programming language for transforming XML documents into other formats such as HTML, PDF, or other XML structures. In the e-invoicing domain, XSLT stylesheets are used to convert XRechnung or ZUGFeRD XML files into human-readable HTML or PDF representations. KoSIT provides official XSLT stylesheets for visualising XRechnung documents.UBL (Universal Business Language)UBL (Universal Business Language) is an OASIS-standardised XML vocabulary for business documents, including invoices, orders, and delivery notes. UBL 2.1 is one of the two permitted syntaxes for EN 16931-compliant invoices and is used for XRechnung as well as Peppol BIS Billing 3.0, among others. UBL invoices use the namespace `urn:oasis:names:specification:ubl:schema:xsd:Invoice-2`.CII (UN/CEFACT Cross Industry Invoice)CII stands for Cross Industry Invoice and is the UN/CEFACT XML document format for invoices. It is one of the two syntaxes permitted by EN 16931 alongside UBL and forms the basis of ZUGFeRD and Factur-X. CII documents use the namespace `urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100`.