XML Schema Documentation

Table of Contents

top

Schema Document Properties

Target Namespace None
Version 2.0
Element and Attribute Namespaces
  • Global element and attribute declarations belong to this schema's target namespace.
  • By default, local element declarations have no namespace.
  • By default, local attribute declarations have no namespace.
Schema Composition
  • This schema includes components from the following schema document(s):

Declared Namespaces

Prefix Namespace
xml http://www.w3.org/XML/1998/namespace
xsd http://www.w3.org/2001/XMLSchema
Schema Component Representation
<xsd:schema version="2.0">
<xsd:include schemaLocation="Common.xsd"/>
...
</xsd:schema>
top

Global Declarations

Element: Invoice

Name Invoice
Type Locally-defined complex type
Nillable no
Abstract no
Documentation Rechnung für Waren und Dienstleistungen
XML Instance Representation
<Invoice
Version="ComNormVersion [0..1]"
GenerationPointOfTime="DateTimeZone [0..1]">
<DocumentNumber> DocumentNumber </DocumentNumber> [1]
<DocumentName> DocumentName </DocumentName> [0..1]
<DocumentDate> DocumentDate </DocumentDate> [1]
<InvoiceHeader> InvoiceHeader </InvoiceHeader> [1]
<InvoiceBody> InvoiceBody </InvoiceBody> [1]
<InvoiceFooter> InvoiceFooter </InvoiceFooter> [1]
</Invoice>
Schema Component Representation
<xsd:element name="Invoice">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="DocumentNumber" type="DocumentNumber" minOccurs="1" maxOccurs="1"/>
<xsd:element name="DocumentName" type="DocumentName" minOccurs="0" maxOccurs="1"/>
<xsd:element name="DocumentDate" type="DocumentDate" minOccurs="1" maxOccurs="1"/>
<xsd:element name="InvoiceHeader" type="InvoiceHeader" minOccurs="1" maxOccurs="1"/>
<xsd:element name="InvoiceBody" type="InvoiceBody" minOccurs="1" maxOccurs="1"/>
<xsd:element name="InvoiceFooter" type="InvoiceFooter" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
<xsd:attribute name="Version" type="ComNormVersion" use="optional"/>
<-- 1.30 -->
<xsd:attribute name="GenerationPointOfTime" type="DateTimeZone" use="optional"/>
</xsd:complexType>
</xsd:element>
top

Global Definitions

Complex Type: AccountInfo

Super-types: None
Sub-types: None
Name AccountInfo
Abstract no
Documentation Angaben zur Bankverbindung
XML Instance Representation
<...>
Start All [1]
<AccountHolder> AccountHolder </AccountHolder> [1]
<BankAccount> BankAccount </BankAccount> [1]
<BankCode> BankCode </BankCode> [0..1]
<BankName> BankName </BankName> [0..1]
<BankCountry> BankCountry </BankCountry> [0..1]
End All
</...>
Schema Component Representation
<xsd:complexType name="AccountInfo">
<xsd:all>
<xsd:element name="AccountHolder" type="AccountHolder" minOccurs="1" maxOccurs="1"/>
<xsd:element name="BankAccount" type="BankAccount" minOccurs="1" maxOccurs="1"/>
<xsd:element name="BankCode" type="BankCode" minOccurs="0" maxOccurs="1"/>
<xsd:element name="BankName" type="BankName" minOccurs="0" maxOccurs="1"/>
<xsd:element name="BankCountry" type="BankCountry" minOccurs="0" maxOccurs="1"/>
</xsd:all>
</xsd:complexType>
top

Complex Type: InvoiceBody

Super-types: None
Sub-types: None
Name InvoiceBody
Abstract no
Documentation Hauptteil der Rechnung
XML Instance Representation
<...>
<InvoiceList> InvoiceList </InvoiceList> [1]
</...>
Schema Component Representation
<xsd:complexType name="InvoiceBody">
<xsd:sequence>
<xsd:element name="InvoiceList" type="InvoiceList" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
top

Complex Type: InvoiceFooter

Super-types: None
Sub-types: None
Name InvoiceFooter
Abstract no
Documentation Abschluss der Rechnung
XML Instance Representation
<...>
Start All [1]
<PositionPrice> PositionPrice </PositionPrice> [1]
<AllowOrChargeList> AllowOrChargeList </AllowOrChargeList> [0..1]
<TotalPrice> TotalPrice </TotalPrice> [0..1]
<ExpiresDate> ExpiresDate </ExpiresDate> [0..1]
<NetDays> NetDays </NetDays> [0..1]
<DiscountList> DiscountList </DiscountList> [0..1]
<Comment> Comment </Comment> [0..1]
<BESRReference> BESRReference </BESRReference> [0..1]
<SwissQRData> SwissQRData </SwissQRData> [0..1]
End All
</...>
Schema Component Representation
<xsd:complexType name="InvoiceFooter">
<xsd:all>
<xsd:element name="PositionPrice" type="PositionPrice" minOccurs="1" maxOccurs="1"/>
<xsd:element name="AllowOrChargeList" type="AllowOrChargeList" minOccurs="0" maxOccurs="1"/>
<xsd:element name="TotalPrice" type="TotalPrice" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ExpiresDate" type="ExpiresDate" minOccurs="0" maxOccurs="1"/>
<xsd:element name="NetDays" type="NetDays" minOccurs="0" maxOccurs="1"/>
<xsd:element name="DiscountList" type="DiscountList" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Comment" type="Comment" minOccurs="0" maxOccurs="1"/>
<-- 1.30 -->
<xsd:element name="BESRReference" type="BESRReference" minOccurs="0" maxOccurs="1"/>
<-- 1.50 -->
<xsd:element name="SwissQRData" type="SwissQRData" minOccurs="0" maxOccurs="1"/>
</xsd:all>
</xsd:complexType>
top

Complex Type: InvoiceHeader

Super-types: None
Sub-types: None
Name InvoiceHeader
Abstract no
Documentation Kopfdaten der Rechnung
XML Instance Representation
<...>
Start All [1]
<InvoiceType> InvoiceType </InvoiceType> [1]
<Supplier> Supplier </Supplier> [1]
<InvoiceDate> InvoiceDate </InvoiceDate> [1]
<OrderReference> OrderReference </OrderReference> [0..1]
<OrderProcessingId> DataProcessingId </OrderProcessingId> [0..1]
<Buyer> Buyer </Buyer> [1]
<BillTo> BillTo </BillTo> [0..1]
<CurrencyCode> CurrencyCode </CurrencyCode> [1]
<LanguageCode> LanguageCode </LanguageCode> [0..1]
<DispatchCode> DispatchCode </DispatchCode> [0..1]
<PaymentCode> PaymentCode </PaymentCode> [0..1]
<AccountInfo> AccountInfo </AccountInfo> [1]
<Comment> Comment </Comment> [0..1]
<AttributeData> AttributeData </AttributeData> [0..1]
End All
</...>
Schema Component Representation
<xsd:complexType name="InvoiceHeader">
<xsd:all>
<xsd:element name="InvoiceType" type="InvoiceType" minOccurs="1" maxOccurs="1"/>
<xsd:element name="Supplier" type="Supplier" minOccurs="1" maxOccurs="1"/>
<xsd:element name="InvoiceDate" type="InvoiceDate" minOccurs="1" maxOccurs="1"/>
<xsd:element name="OrderReference" type="OrderReference" minOccurs="0" maxOccurs="1"/>
<xsd:element name="OrderProcessingId" type="DataProcessingId" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Buyer" type="Buyer" minOccurs="1" maxOccurs="1"/>
<xsd:element name="BillTo" type="BillTo" minOccurs="0" maxOccurs="1"/>
<xsd:element name="CurrencyCode" type="CurrencyCode" minOccurs="1" maxOccurs="1"/>
<xsd:element name="LanguageCode" type="LanguageCode" minOccurs="0" maxOccurs="1"/>
<xsd:element name="DispatchCode" type="DispatchCode" minOccurs="0" maxOccurs="1"/>
<xsd:element name="PaymentCode" type="PaymentCode" minOccurs="0" maxOccurs="1"/>
<xsd:element name="AccountInfo" type="AccountInfo" minOccurs="1" maxOccurs="1"/>
<xsd:element name="Comment" type="Comment" minOccurs="0" maxOccurs="1"/>
<xsd:element name="AttributeData" type="AttributeData" minOccurs="0" maxOccurs="1"/>
</xsd:all>
</xsd:complexType>
top

Complex Type: InvoiceItem

Super-types: None
Sub-types: None
Name InvoiceItem
Abstract no
Documentation Angaben zu einer Rechnungspositionen (OrderReference und OrderProcessingId müssen nur angegeben werden, wenn sie nicht identisch mit den Angaben im Header sind, z.B. bei einer Sammelrechnung)
XML Instance Representation
<...>
Start All [1]
<OrderNumber> OrderNumber </OrderNumber> [1]
<ProductNumber> ProductNumber </ProductNumber> [0..1]
<ProductName> ProductName </ProductName> [0..1]
<ProductText> ProductText </ProductText> [0..1]
<ParamData> ParamData </ParamData> [0..1]
<UnitCode> UnitCode </UnitCode> [1]
<Quantity> Quantity </Quantity> [1]
<UnitPrice> UnitPrice </UnitPrice> [1]
<PriceQuantity> PriceQuantity </PriceQuantity> [0..1]
<ReductionText> ReductionText </ReductionText> [0..1]
<ReductionRate> ReductionRate </ReductionRate> [0..1]
<ReductionPrice> ReductionPrice </ReductionPrice> [0..1]
<ItemPrice> ItemPrice </ItemPrice> [1]
<ItemTaxRate> ItemTaxRate </ItemTaxRate> [0..1]
<OrderItemReference> OrderItemReference </OrderItemReference> [0..1]
<OrderItemProcessingId> DataProcessingId </OrderItemProcessingId> [0..1]
<OrderReference> OrderReference </OrderReference> [0..1]
<OrderProcessingId> DataProcessingId </OrderProcessingId> [0..1]
<Comment> Comment </Comment> [0..1]
<AttributeData> AttributeData </AttributeData> [0..1]
<CalculationData> CalculationData </CalculationData> [0..1]
End All
</...>
Schema Component Representation
<xsd:complexType name="InvoiceItem">
<xsd:all>
<xsd:element name="OrderNumber" type="OrderNumber" minOccurs="1" maxOccurs="1"/>
<xsd:element name="ProductNumber" type="ProductNumber" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ProductName" type="ProductName" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ProductText" type="ProductText" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ParamData" type="ParamData" minOccurs="0" maxOccurs="1"/>
<xsd:element name="UnitCode" type="UnitCode" minOccurs="1" maxOccurs="1"/>
<xsd:element name="Quantity" type="Quantity" minOccurs="1" maxOccurs="1"/>
<xsd:element name="UnitPrice" type="UnitPrice" minOccurs="1" maxOccurs="1"/>
<xsd:element name="PriceQuantity" type="PriceQuantity" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ReductionText" type="ReductionText" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ReductionRate" type="ReductionRate" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ReductionPrice" type="ReductionPrice" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ItemPrice" type="ItemPrice" minOccurs="1" maxOccurs="1"/>
<xsd:element name="ItemTaxRate" type="ItemTaxRate" minOccurs="0" maxOccurs="1"/>
<xsd:element name="OrderItemReference" type="OrderItemReference" minOccurs="0" maxOccurs="1"/>
<xsd:element name="OrderItemProcessingId" type="DataProcessingId" minOccurs="0" maxOccurs="1"/>
<xsd:element name="OrderReference" type="OrderReference" minOccurs="0" maxOccurs="1"/>
<xsd:element name="OrderProcessingId" type="DataProcessingId" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Comment" type="Comment" minOccurs="0" maxOccurs="1"/>
<xsd:element name="AttributeData" type="AttributeData" minOccurs="0" maxOccurs="1"/>
<xsd:element name="CalculationData" type="CalculationData" minOccurs="0" maxOccurs="1"/>
</xsd:all>
</xsd:complexType>
top

Complex Type: InvoiceList

Super-types: None
Sub-types: None
Name InvoiceList
Abstract no
Documentation Auflistung von Rechnungspositionen
XML Instance Representation
<...>
<InvoiceItem> InvoiceItem </InvoiceItem> [0..*]
</...>
Schema Component Representation
<xsd:complexType name="InvoiceList">
<xsd:sequence>
<xsd:element name="InvoiceItem" type="InvoiceItem" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
top

Complex Type: SwissQRData

Super-types: None
Sub-types: None
Name SwissQRData
Abstract no
Documentation Angaben zu Swiss QR Code und damit verbundene Zahlungsinformationen. Enthält analoge Elemente wie unter https://www.paymentstandards.ch/dam/downloads/ig-qr-bill-de.pdf beschrieben (Jedoch keine alternative Verfahren).
XML Instance Representation
<...>
Allow any elements from any namespace (strict validation). [0..1]
</...>
Schema Component Representation
<xsd:complexType name="SwissQRData">
<xsd:sequence>
<xsd:any minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
top

Simple Type: AccountHolder

Super-types: xsd:string < AccountHolder (by restriction)
Sub-types: None
Name AccountHolder
Content
  • Base XSD Type: string
  • length >= 0
Documentation Name des Kontoinhabers
Schema Component Representation
<xsd:simpleType name="AccountHolder">
<xsd:restriction base="xsd:string">
<xsd:minLength value="0"/>
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
top

Simple Type: BankAccount

Super-types: xsd:string < BankAccount (by restriction)
Sub-types: None
Name BankAccount
Content
  • Base XSD Type: string
  • length >= 0
Documentation IBAN-Kontonummer gemäss ISO 13616
Schema Component Representation
<xsd:simpleType name="BankAccount">
<xsd:restriction base="xsd:string">
<xsd:minLength value="0"/>
<xsd:maxLength value="30"/>
</xsd:restriction>
</xsd:simpleType>
top

Simple Type: BankCode

Super-types: xsd:string < BankCode (by restriction)
Sub-types: None
Name BankCode
Content
  • Base XSD Type: string
  • length >= 0
Documentation SWIFT-BIC-Code (8 oder 11 Zeichen) der Bank gemäss ISO 9362
Schema Component Representation
<xsd:simpleType name="BankCode">
<xsd:restriction base="xsd:string">
<xsd:minLength value="0"/>
<xsd:maxLength value="20"/>
</xsd:restriction>
</xsd:simpleType>
top

Simple Type: BankCountry

Super-types: CountryCode < BankCountry (by restriction)
Sub-types: None
Name BankCountry
Content
  • 'CountryCode' super type was not found in this schema. Its facets could not be printed out.
Documentation Land, in welchem die Bankverbindung geführt wird.
Schema Component Representation
<xsd:simpleType name="BankCountry">
<xsd:restriction base="CountryCode"/>
</xsd:simpleType>
top

Simple Type: BankName

Super-types: xsd:string < BankName (by restriction)
Sub-types: None
Name BankName
Content
  • Base XSD Type: string
  • length >= 0
Documentation Name der Bank
Schema Component Representation
<xsd:simpleType name="BankName">
<xsd:restriction base="xsd:string">
<xsd:minLength value="0"/>
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
top

Simple Type: BESRReference

Super-types: xsd:string < BESRReference (by restriction)
Sub-types: None
Name BESRReference
Content
  • Base XSD Type: string
  • length >= 0
Documentation Referenznummmer (BESR)
Schema Component Representation
<xsd:simpleType name="BESRReference">
<xsd:restriction base="xsd:string">
<xsd:minLength value="0"/>
<xsd:maxLength value="80"/>
</xsd:restriction>
</xsd:simpleType>
top

Simple Type: InvoiceType

Super-types: xsd:string < InvoiceType (by restriction)
Sub-types: None
Name InvoiceType
Content
  • Base XSD Type: string
  • value comes from list: {'0'|'1'|'2'|'3'}
Documentation Angabe, um welchen Rechnungstyp es sich handelt. Im Falle einer Gutschrift weisen die Beträge und Mengen negative Werte auf.
Schema Component Representation
<xsd:simpleType name="InvoiceType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="0"/>
<xsd:enumeration value="1"/>
<xsd:enumeration value="2"/>
<xsd:enumeration value="3"/>
</xsd:restriction>
</xsd:simpleType>
top