226 lines
11 KiB
XML
226 lines
11 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:loc="http://www.thales.dc/Localized"
|
|
xmlns="http://www.thales.dc/SettlementPeriod"
|
|
targetNamespace="http://www.thales.dc/SettlementPeriod"
|
|
version="1.1.1">
|
|
|
|
<!-- Import of xsd file -->
|
|
<xs:import namespace="http://www.thales.dc/Headers" schemaLocation="../../common/Headers.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>04/11/2021 - 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>
|
|
<xs:annotation>
|
|
<xs:documentation>15/02/2023 - Version 1.1.0</xs:documentation>
|
|
<xs:documentation>
|
|
- Add productApportionment (used for contracts apportionment)
|
|
- Add manualSettlements (used for apportionment of manual settlements)
|
|
- Change apportionment list to contain a synthesis of ( productApportionment + manualSettlements)
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:annotation>
|
|
<xs:documentation>26/06/2024 - Version 1.1.1</xs:documentation>
|
|
<xs:documentation>
|
|
- Add feeSettlements
|
|
</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="SettlementPeriodXsdVersion" 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 SettlementPeriodExchange structure -->
|
|
<xs:element name="Payload" type="SettlementPeriodExchange"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<!-- Description of the SettlementPeriodExchange structure -->
|
|
<xs:complexType name="SettlementPeriodExchange">
|
|
<xs:annotation>
|
|
<xs:documentation>clr_settlement_get: At settlement period creation or update</xs:documentation>
|
|
<xs:documentation>Apportionments for a settlement period</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:all>
|
|
<xs:element name="ClearingDateTime" type="xs:dateTime" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>Date of computation of the apportionments of the settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="ClosingDateTime" type="xs:dateTime" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>Closing date of the settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="CreationDateTime" type="xs:dateTime" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>Creation date of the settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="CreationEventId" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The unique identifier of the related event.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="PreviousClearingPeriodId" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The settlement period preceding the current one.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="ReferenceDateTime" type="xs:dateTime" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>Reference date of the settlement period (used for TFN). Used for displaying/grouping by week to overload creationDate
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="Sequence" 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="ClearingPeriodId" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="Signature" type="xs:base64Binary" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The signature of this settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element minOccurs="0" name="Settlements" type="Settlements">
|
|
<xs:annotation>
|
|
<xs:documentation>Apportionment between stakeholders during the settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element minOccurs="0" name="ProductApportionments" type="ProductApportionments">
|
|
<xs:annotation>
|
|
<xs:documentation>Apportionment between stakeholders during the settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element minOccurs="0" name="ManualSettlements" type="ManualSettlements">
|
|
<xs:annotation>
|
|
<xs:documentation>Apportionment between stakeholders during the settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element minOccurs="0" name="FeeSettlements" type="FeeSettlements">
|
|
<xs:annotation>
|
|
<xs:documentation>Fee distribution between stakeholders during the settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element minOccurs="0" name="Balances" type="Balances">
|
|
<xs:annotation>
|
|
<xs:documentation>The balances of operations for each stakeholder during the settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:all>
|
|
</xs:complexType>
|
|
<xs:complexType name="Settlements">
|
|
<xs:sequence>
|
|
<xs:element name="Settlement" type="SettlementPeriodApportionmentExchange" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="ProductApportionments">
|
|
<xs:sequence>
|
|
<xs:element name="ProductApportionment" type="SettlementPeriodApportionmentExchange" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="ManualSettlements">
|
|
<xs:sequence>
|
|
<xs:element name="ManualSettlement" type="SettlementPeriodApportionmentExchange" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="FeeSettlements">
|
|
<xs:sequence>
|
|
<xs:element name="FeeSettlement" type="SettlementPeriodApportionmentExchange" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="SettlementPeriodApportionmentExchange">
|
|
<xs:annotation>
|
|
<xs:documentation>Apportionment from a payer to a payee's account during a settlement period.</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:all>
|
|
<xs:element name="Amount" type="xs:decimal" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The amount of the transfer.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="PayeeAccount" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The account to where the money will be credited.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="PayeeId" type="loc:LocalizedBusinessEntity" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The stakeholder who will be credited money</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="PayerAccount" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The account from which the money will be debited.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="PayerId" type="loc:LocalizedBusinessEntity" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>The stakeholder who will be debited money</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:all>
|
|
</xs:complexType>
|
|
<xs:complexType name="StakeholderAccountBalanceExchange">
|
|
<xs:annotation>
|
|
<xs:documentation>Total value per stakeholder for a given apportionment (i.e. set of daily media journeys reconstructions)</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:all>
|
|
<xs:element name="Account" type="xs:string" minOccurs="0"/>
|
|
<xs:element name="Amount" type="xs:decimal" minOccurs="0"/>
|
|
<xs:element name="StakeholderId" type="loc:LocalizedBusinessEntity" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>Aka business entity id</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:all>
|
|
</xs:complexType>
|
|
<xs:complexType name="Balances">
|
|
<xs:sequence>
|
|
<xs:element name="Balance" type="StakeholderAccountBalanceExchange" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:schema>
|