123 lines
6.1 KiB
XML
123 lines
6.1 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/StockOperation"
|
|
targetNamespace="http://www.thales.dc/StockOperation"
|
|
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/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>
|
|
|
|
|
|
<!-- 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="StockOperationXsdVersion" 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 StockOperationExchange structure -->
|
|
<xs:element name="Payload" type="StockOperationExchange"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<!-- Description of the StockOperationExchange structure -->
|
|
<xs:complexType name="StockOperationExchange">
|
|
<xs:annotation>
|
|
<xs:documentation>stk_movement_device_post: At stock movement</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:all>
|
|
<xs:element name="Comment" type="xs:string" minOccurs="0"/>
|
|
<xs:element name="DestEntity" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>the destination stock entity to where the items are added.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="ItemType" type="loc:LocalizedStockItemType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>the type of items (usually a sub-type of media) contained in both stock entities for which the operation occurred.
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="QuantityMoved" type="xs:long" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>the number of items subtracted from the source stock and added to the destination stock.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="SourceEntity" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>the source stock entity from which the items are subtracted.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="AgentId" type="xs:string" minOccurs="0"/>
|
|
<xs:element name="CreationDate" type="xs:dateTime" minOccurs="0"/>
|
|
<xs:element name="StockDestQuantity" type="xs:long" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>the current value of the destination stock item entity after the operation.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="StockOperationId" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>As movements are relative values, the caller shall provide a global unique identifier for each of its own movement
|
|
request to enforce idempotency on failure and retries.
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="StockOperationType" type="LocalizedStockOperationType" minOccurs="0"/>
|
|
<xs:element name="StockSourceQuantity" type="xs:long" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>the current value of the source stock item entity after the operation.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:all>
|
|
</xs:complexType>
|
|
<xs:complexType name="LocalizedStockOperationType">
|
|
<xs:all>
|
|
<xs:element name="Value" type="StockOperationType"/>
|
|
<xs:element name="Label" type="xs:string"/>
|
|
</xs:all>
|
|
</xs:complexType>
|
|
<xs:simpleType name="StockOperationType">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="MOVEMENT"/>
|
|
<xs:enumeration value="ADJUSTMENT"/>
|
|
<xs:enumeration value="IMPORT"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
</xs:schema>
|