146 lines
7.3 KiB
XML
146 lines
7.3 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
|
|
Copyright (C) Revenue Collection Systems France S.A.S. - 2018-2025 ALL RIGHTS RESERVED
|
|
|
|
-->
|
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:head="http://www.thales.dc/Headers"
|
|
xmlns="http://www.thales.dc/AbtPurse"
|
|
xmlns:med2="http://www.thales.dc/MediaIdentification"
|
|
targetNamespace="http://www.thales.dc/AbtPurse"
|
|
version="1.0.0">
|
|
|
|
<!-- Import of xsd file -->
|
|
<xs:import namespace="http://www.thales.dc/Headers" schemaLocation="../../common/Headers.xsd"/>
|
|
<xs:import namespace="http://www.thales.dc/MediaIdentification" schemaLocation="../../common/MediaIdentification.xsd"/>
|
|
<xs:import namespace="http://www.thales.dc/Localized" schemaLocation="../../common/Localized.xsd"/>
|
|
|
|
<!-- Annotate all modification of the xsd file according to version -->
|
|
<xs:annotation>
|
|
<xs:documentation>-----------------------------------------------------------------------------------------------------------------------</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:annotation>
|
|
<xs:documentation>Version List</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:annotation>
|
|
<xs:documentation>-----------------------------------------------------------------------------------------------------------------------</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:annotation>
|
|
<xs:documentation>23/06/2025 - Version 1.0.0</xs:documentation>
|
|
<xs:documentation>
|
|
1st part: Add the AuditMessages, AuditMessage, Headers and Payload element for the XML validation
|
|
2nd part: Add version to xsd schema
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:annotation>
|
|
<xs:documentation>-----------------------------------------------------------------------------------------------------------------------</xs:documentation>
|
|
</xs:annotation>
|
|
|
|
|
|
<!-- Description of the AuditMessages structure -->
|
|
<xs:element name="AuditMessages" type="AuditMessagesType"/>
|
|
<xs:complexType name="AuditMessagesType">
|
|
<xs:sequence>
|
|
<!-- List of AuditMessage -->
|
|
<xs:element name="AuditMessage" type="AuditMessageType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<!-- version of AuditMessages structure -->
|
|
<xs:attribute name="AbtPurseXsdVersion" type="xs:string" fixed="1.0"/>
|
|
</xs:complexType>
|
|
<!-- Description of the AuditMessage structure -->
|
|
<xs:complexType name="AuditMessageType">
|
|
<xs:sequence>
|
|
<!-- Headers structure -->
|
|
<xs:element name="Headers" type="head:HeadersType" minOccurs="0"/>
|
|
<!-- Payload is a AbtPurseAuditExchange structure -->
|
|
<xs:element name="Payload" type="AbtPurseAuditExchange"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<!-- Description of the AbtPurseAuditExchange structure -->
|
|
<xs:complexType name="AbtPurseAuditExchange">
|
|
<xs:annotation>
|
|
<xs:documentation>When abt purse is created, reloaded, used to travel or to purchase , when autoReload activated deactivated or reactivated ...</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:all>
|
|
<xs:element name="OccurrenceDate" type="xs:dateTime"/>
|
|
<xs:element name="PurseId" type="xs:string">
|
|
<xs:annotation>
|
|
<xs:documentation>In case of centralized purse usage, this is the id of the purse that is used.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="PurseFamily" type="PurseFamily"/>
|
|
<xs:element name="OperationType" type="OperationType"/>
|
|
<xs:element name="PurseBalanceAmountBefore" type="xs:decimal"/>
|
|
<xs:element name="PurseBalanceAmountAfter" type="xs:decimal"/>
|
|
<xs:element name="AutoReloadAmount" type="xs:decimal" minOccurs="0"/>
|
|
<xs:element name="Amount" type="xs:decimal" minOccurs="0"/>
|
|
<xs:element name="AutoReloadThreshold" type="xs:decimal" minOccurs="0"/>
|
|
<xs:element name="PaymentMeansType" type="xs:string" minOccurs="0"/>
|
|
<xs:element name="PurseOwner" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The owner of the purse</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="PurseTypeTicketingId" type="xs:integer" minOccurs="0"/>
|
|
<xs:element name="Media" type="med2:MediaIdentification" minOccurs="0"/>
|
|
<xs:element name="UserId" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>Id of the user</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="OrderedItemId" type="xs:long" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The ordering sequence number of this settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="CustomerId" type="xs:string" minOccurs="0"/>
|
|
<xs:element name="RetailerBE" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The stakeholder who will be debited money</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="OperationSequenceNumber" type="xs:integer">
|
|
<xs:annotation>
|
|
<xs:documentation>The sequence of operation on purse incremented for each operation</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="Reason" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>Reason of the adjustment</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:all>
|
|
</xs:complexType>
|
|
<xs:simpleType name="OperationType">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="ADJUSTMENT"/>
|
|
<xs:enumeration value="AUTO_RELOAD_ACTIVATED"/>
|
|
<xs:enumeration value="AUTO_RELOAD_CANCELLED"/>
|
|
<xs:enumeration value="AUTO_RELOAD_COMPLETED"/>
|
|
<xs:enumeration value="AUTO_RELOAD_DEACTIVATED"/>
|
|
<xs:enumeration value="AUTO_RELOAD_DECLINED"/>
|
|
<xs:enumeration value="AUTO_RELOAD_DISABLED"/>
|
|
<xs:enumeration value="AUTO_RELOAD_REQUESTED"/>
|
|
<xs:enumeration value="AUTO_RELOAD_REACTIVATION_REQUESTED"/>
|
|
<xs:enumeration value="RELOAD"/>
|
|
<xs:enumeration value="MEDIA_ATTACHMENT"/>
|
|
<xs:enumeration value="CREATION"/>
|
|
<xs:enumeration value="MEDIA_DETACHMENT"/>
|
|
<xs:enumeration value="FUNDING"/>
|
|
<xs:enumeration value="REFUND"/>
|
|
<xs:enumeration value="PURCHASE"/>
|
|
<xs:enumeration value="TRAVEL_CHARGE"/>
|
|
<xs:enumeration value="PAYMENT_AGREEMENT_REPLACED"/>
|
|
<xs:enumeration value="CUSTOMER_ATTACHMENT"/>
|
|
<xs:enumeration value="CUSTOMER_DETACHMENT"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
<xs:simpleType name="PurseFamily">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="CENTRALIZED"/>
|
|
<xs:enumeration value="INDIVIDUAL"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
</xs:schema>
|