Main.Contract-financing.Technical-reference.customer-contract.xml-schema-description - Xml schema description

Page of - last modified by dap on 2020/06/26 00:40

Xml schema description

dap

2020/06/26 00:40

Table of Contents

CustomerContract

<xs:element name="CustomerContract">

<xs:complexType>

<xs:sequence>

<xs:element name="CustomerInfo" minOccurs="1" maxOccurs="unbounded">

<xs:complexType>

<xs:sequence>

<xs:element name="CustomerNo" type="Identifier15" nillable="false" minOccurs="1" maxOccurs="1"/>

<xs:element name="CustomerInfo" minOccurs="1" maxOccurs="1">

<xs:complexType>

<xs:sequence>

<xs:element name="Name" type="NameAddressString72" minOccurs="1" maxOccurs="1"/>

<xs:element name="RegNo" type="RegNo" minOccurs="1" maxOccurs="1"/>

<xs:element name="AddressInfo" minOccurs="1" maxOccurs="1">

<xs:complexType>

<xs:sequence>

<xs:element name="LegalAddress" type="Address" minOccurs="1" maxOccurs="1"/>

<xs:element name="E-MailAddress" type="Email" minOccurs="0" maxOccurs="1"/>

<xs:element name="Cellphone" type="String15" minOccurs="0" maxOccurs="1"/>

</xs:sequence>

</xs:complexType>

</xs:element>

<xs:element name="CustomerContracts" minOccurs="1" maxOccurs="1">

<xs:complexType>

<xs:sequence>

<xs:element name="NewContract" type="NewContract" minOccurs="0" maxOccurs="unbounded"/>

<xs:element name="ExtendContract" type="ExtendContract" minOccurs="0" maxOccurs="unbounded"/>

<xs:element name="CreditContract" type="CreditContract" minOccurs="0" maxOccurs="unbounded"/>

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:sequence>

<xs:attribute name="LegalEntity" type="LegalEntity" use="optional"/>

</xs:complexType>

</xs:element>

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:sequence>

<xs:attribute name="Version" type="Version" use="required">

<xs:annotation>

<xs:documentation>Versions supported by this schema</xs:documentation>

</xs:annotation>

</xs:attribute>

<xs:attribute name="CreatedDateTime" type="xs:dateTime" use="required">

<xs:annotation>

<xs:documentation>Date and time when the file was created</xs:documentation>

</xs:annotation>

</xs:attribute>

<xs:attribute name="CompanyNo" type="CompanyNumber" use="required"/>

<xs:attribute name="CompanyName" type="xs:string" use="required"/>

</xs:complexType>

</xs:element>

Money

<xs:simpleType name="Money">

<xs:restriction base="xs:decimal">

<xs:fractionDigits value="2"/>

<xs:minInclusive value="0.01"/>

<xs:maxInclusive

value="100000"/>

</xs:restriction>

</xs:simpleType>

Amount

<xs:complexType name="Amount">

<xs:sequence>

<xs:element name="AmountInclVat" type="Money" nillable="false" minOccurs="1" maxOccurs="1"/>

</xs:sequence>

<xs:attribute name="Currency" type="eCurrencyType" use="required"/>

</xs:complexType>

NewContract

<xs:complexType name="NewContract">

<xs:sequence>

<xs:element name="ContractTransactionInfo" type="ContractTransactionInfo" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Reference, identifyer etc. for the contracttransaction</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="Amount" type="Amount" nillable="false" minOccurs="1" maxOccurs="1"/>

<xs:element name="ContractExpectedEndDate" type="xs:date" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Expected duration of the contract</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="CreditCheckReference" type="String50" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Reference to creditcheck decision</xs:documentation>

</xs:annotation>

</xs:element>

</xs:sequence>

</xs:complexType>

ExtendContract

<xs:complexType name="ExtendContract">

<xs:sequence>

<xs:element name="ContractTransactionInfo" type="ContractTransactionInfo" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Reference, identifyer etc. for the contracttransaction</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="Amount" type="Amount" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Amount to extend contract with</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="ContractExpectedEndDate" type="xs:date" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Expected duration of the contract</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="CreditCheckReference" type="String50" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Reference to creditcheck decision</xs:documentation>

</xs:annotation>

</xs:element>

</xs:sequence>

</xs:complexType>

CreditContract

<xs:complexType name="CreditContract">

<xs:sequence>

<xs:element name="ContractTransactionInfo" type="ContractTransactionInfo" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Reference, identifyer etc. for the contracttransaction</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="Amount" type="Amount" nillable="false" minOccurs="1" maxOccurs="1"/>

</xs:sequence>

</xs:complexType>

ContractTransactionInfo

<xs:complexType name="ContractTransactionInfo">

<xs:sequence>

<xs:element name="ContractId" type="xs:unsignedInt" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Unique identifier of each contract in the ledger</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="TransactionDate" type="xs:date" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Date of the contract, contract extend or when the credit was issued depending of the type of transaction</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="TransactionId" type="String50" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Unique identifier of all types of transactions (NewContract/ExtendContract/CreditTransaction) in the ledger</xs:documentation>

</xs:annotation>

</xs:element>

</xs:sequence>

</xs:complexType>

Version

<xs:simpleType name="Version">

<xs:restriction base="xs:string">

<xs:enumeration value="1.0">

<xs:annotation>

<xs:documentation>Original version</xs:documentation>

</xs:annotation>

</xs:enumeration>

</xs:restriction>

</xs:simpleType>

eCurrencyType

<xs:simpleType name="eCurrencyType">

<xs:restriction base="xs:string">

<xs:enumeration value="SEK"/>

<xs:enumeration value="NOK"/>

<xs:enumeration value="DKK"/>

<xs:enumeration value="EUR"/>

</xs:restriction>

</xs:simpleType>

Identifier15

<xs:simpleType name="Identifier15">

<xs:restriction base="xs:string">

<xs:minLength value="1"/>

<xs:maxLength value="15"/>

<xs:pattern value="[a-zA-Z0-9\-]*"/>

</xs:restriction>

</xs:simpleType>

ISO3166

<xs:simpleType name="ISO3166">

<xs:restriction base="xs:string">

<xs:minLength value="2"/>

<xs:maxLength value="2"/>

<xs:pattern value="[A-Z]*"/>

</xs:restriction>

</xs:simpleType>

CompanyNumber

<xs:simpleType name="CompanyNumber">

<xs:restriction base="xs:string">

<xs:minLength value="1"/>

<xs:maxLength value="15"/>

<xs:pattern value="[0-9]*"/>

</xs:restriction>

</xs:simpleType>

String35

<xs:simpleType name="String35">

<xs:restriction base="PXString">

<xs:maxLength

value="35"/>

</xs:restriction>

</xs:simpleType>

Email

<xs:simpleType name="Email">

<xs:restriction base="PXString">

<xs:maxLength

value="60"/>

<xs:pattern value="[^@]+@[^\.]+\..+"/>

</xs:restriction>

</xs:simpleType>

String15

<xs:simpleType name="String15">

<xs:restriction base="PXString">

<xs:maxLength value="15"/>

</xs:restriction>

</xs:simpleType>

ZipCode

<xs:simpleType name="ZipCode">

<xs:restriction base="xs:string">

<xs:maxLength value="9"/>

<xs:pattern value="[A-Z0-9\-]+"/>

</xs:restriction>

</xs:simpleType>

String50

<xs:simpleType name="String50">

<xs:restriction base="PXString">

<xs:minLength value="1"/>

<xs:maxLength

value="50"/>

</xs:restriction>

</xs:simpleType>

String90

<xs:simpleType name="String90">

<xs:restriction base="PXString">

<xs:minLength value="1"/>

<xs:maxLength

value="90"/>

</xs:restriction>

</xs:simpleType>

String20

<xs:simpleType name="String20">

<xs:restriction base="PXString">

<xs:maxLength

value="20"/>

</xs:restriction>

</xs:simpleType>

NameAddressString35

<xs:simpleType name="NameAddressString35">

<xs:restriction base="PXNameAddressString">

<xs:minLength value="1"/>

<xs:maxLength

value="35"/>

</xs:restriction>

</xs:simpleType>

NameAddressString36

<xs:simpleType name="NameAddressString36">

<xs:restriction base="PXNameAddressString">

<xs:minLength value="1"/>

<xs:maxLength

value="36"/>

</xs:restriction>

</xs:simpleType>

NameAddressString27

<xs:simpleType name="NameAddressString27">

<xs:restriction base="PXNameAddressString">

<xs:minLength value="1"/>

<xs:maxLength

value="27"/>

</xs:restriction>

</xs:simpleType>

PXString

<xs:simpleType name="PXString">

<xs:restriction base="xs:string">

<xs:pattern value="[a-zA-Z0-9_:!;"#<>=?\[\]@{}´ %'-0&Agrave;-&Ouml;&Oslash;-öø-ú&]*"/>

<xs:minLength value="1"/>

</xs:restriction>

</xs:simpleType>

PXNameAddressString

<xs:simpleType name="PXNameAddressString">

<xs:restriction base="xs:string">

<xs:pattern value="[a-zA-Z0-9_:!;"#<>=?\[\]@{}´ %'-0&Agrave;-&Ouml;&Oslash;-öø-úü&]*"/>

</xs:restriction>

</xs:simpleType>

RegNo

<xs:complexType name="RegNo">

<xs:simpleContent>

<xs:extension base="String15">

<xs:attribute name="CountryCode" type="ISO3166"/>

</xs:extension>

</xs:simpleContent>

</xs:complexType>

LegalEntity

<xs:simpleType name="LegalEntity">

<xs:restriction base="xs:string">

<xs:enumeration value="Private"/>

</xs:restriction>

</xs:simpleType>

PXExpiryDate

<xs:simpleType name="PXExpiryDate">

<xs:restriction base="xs:string">

<xs:length value="5"/>

<xs:pattern value="(0[1-9]|1[012])/(\d{2})"/>

</xs:restriction>

</xs:simpleType>

NameAddressString72

<xs:simpleType name="NameAddressString72">

<xs:restriction base="PXNameAddressString">

<xs:minLength value="1"/>

<xs:maxLength

value="72"/>

</xs:restriction>

</xs:simpleType>

Address

<xs:complexType name="Address">

<xs:sequence>

<xs:element name="Addressee" type="NameAddressString72" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Full name of addressee</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="StreetAddress" type="NameAddressString35" nillable="false" minOccurs="0" maxOccurs="1">

<xs:annotation>

<xs:documentation>Street address</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="ZipCode" type="ZipCode" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Zipcode conforming to country standard</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="City" type="NameAddressString27" nillable="false" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>City</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="CoAddress" type="NameAddressString35" nillable="false" minOccurs="0" maxOccurs="1">

<xs:annotation>

<xs:documentation>Care of address</xs:documentation>

</xs:annotation>

</xs:element>

<xs:element name="CountryCode" type="ISO3166" minOccurs="1" maxOccurs="1">

<xs:annotation>

<xs:documentation>Country code according to ISO 3166</xs:documentation>

</xs:annotation>

</xs:element>

</xs:sequence>

</xs:complexType>