TTNSingle.xsd

Материал из Фабиус wiki
Перейти к: навигация, поиск

<?xml version="1.0" encoding="utf-8"?>

<xs:schema version="1.0"
 xmlns:ns="http://fsrar.ru/WEGAIS/TTNSingle"
 targetNamespace="http://fsrar.ru/WEGAIS/TTNSingle"
 xmlns:xs="http://www.w3.org/2001/XMLSchema"
 elementFormDefault="qualified"
 attributeFormDefault="unqualified"
 xmlns:c="http://fsrar.ru/WEGAIS/Common"
 xmlns:oref="http://fsrar.ru/WEGAIS/ClientRef"
 xmlns:pref="http://fsrar.ru/WEGAIS/ProductRef">
 <xs:import namespace="http://fsrar.ru/WEGAIS/Common" schemaLocation="EGCommon.xsd"/>
 <xs:import namespace="http://fsrar.ru/WEGAIS/ClientRef" schemaLocation="ClientRef.xsd"/>
 <xs:import namespace = "http://fsrar.ru/WEGAIS/ProductRef" schemaLocation="ProductRef.xsd"/>
 <xs:complexType name="WayBillType">
   <xs:annotation>
     <xs:documentation>Товарно-Транспортная Накладная</xs:documentation>
   </xs:annotation>
   <xs:sequence>
     <xs:element name="Identity" type="c:IdentityType" nillable="false" minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Идентификатор накладной (клиентский, к заполнению необязательный)</xs:documentation>
       </xs:annotation>
     </xs:element>
     <xs:element name="Header">
       <xs:complexType>
         <xs:all>
           <xs:element name="Type" type="ns:WbType" default="WBInvoiceFromMe" minOccurs="1" maxOccurs="1">
             <xs:annotation>
               <xs:documentation>Тип накладной: WBInvoiceFromMe - расход; WBReturnToMe - возврат мне; WBInvoiceToMe - приход; WBReturnFromMe - возврат от меня;</xs:documentation>
             </xs:annotation>
           </xs:element>
           <xs:element name="UnitType" type="ns:WbUnitType" minOccurs="1" maxOccurs="1">
             <xs:annotation>
               <xs:documentation>Packed упакованная, Unpacked неупакованная</xs:documentation>
             </xs:annotation>
           </xs:element>
           <xs:element name="NUMBER" type="c:NoEmptyString50" minOccurs="1" maxOccurs="1">
             <xs:annotation>
               <xs:documentation>Номер документа</xs:documentation>
             </xs:annotation>
           </xs:element>
           <xs:element name="Date" type="c:DateNoTime" minOccurs="1" maxOccurs="1">
             <xs:annotation>
               <xs:documentation>Дата составления</xs:documentation>
             </xs:annotation>
           </xs:element>
           <xs:element name="ShippingDate" type="c:DateNoTime" nillable="false" minOccurs="1" maxOccurs="1">
             <xs:annotation>
               <xs:documentation>Дата отгрузки продукции</xs:documentation>
             </xs:annotation>
           </xs:element>


           <xs:element name="Transport" type="ns:TransportType" minOccurs="1" maxOccurs="1">
             <xs:annotation>
               <xs:documentation>Транспортный раздел</xs:documentation>
             </xs:annotation>
           </xs:element>
           <xs:element name="Shipper" type="oref:OrgInfo" minOccurs="1" maxOccurs="1">
             <xs:annotation>
               <xs:documentation>Грузоотправитель</xs:documentation>
             </xs:annotation>
           </xs:element>
           <xs:element name="Consignee" type="oref:OrgInfo" minOccurs="1" maxOccurs="1">
             <xs:annotation>
               <xs:documentation>Грузополучатель</xs:documentation>
             </xs:annotation>
           </xs:element>


           <xs:element name="Supplier" type="oref:OrgInfo" minOccurs="0" maxOccurs="1">
             <xs:annotation>
               <xs:documentation>Поставщик</xs:documentation>
             </xs:annotation>
           </xs:element>


           <xs:element name="Base" minOccurs="0" maxOccurs="1">
             <xs:annotation>
               <xs:documentation>Основание</xs:documentation>
             </xs:annotation>
             <xs:simpleType>
               <xs:restriction base="xs:string">
                 <xs:maxLength value="200"/>
               </xs:restriction>
             </xs:simpleType>
           </xs:element>
           <xs:element name="Note" minOccurs="0" maxOccurs="1">
             <xs:annotation>
               <xs:documentation>Примечание</xs:documentation>
             </xs:annotation>
             <xs:simpleType>
               <xs:restriction base="xs:string">
                 <xs:maxLength value="200"/>
               </xs:restriction>
             </xs:simpleType>
           </xs:element>
         </xs:all>
       </xs:complexType>
     </xs:element>
     <xs:element name="Content">
       <xs:complexType>
         <xs:sequence>
           <xs:element name="Position" type="ns:PositionType" minOccurs="1" maxOccurs="unbounded">
             <xs:annotation>
               <xs:documentation>Содержимое накладной должно содержать 1 и более позиций</xs:documentation>
             </xs:annotation>
           </xs:element>
         </xs:sequence>
       </xs:complexType>
       <xs:unique name="PosUn">
         <xs:selector xpath="ns:Position"/>
         <xs:field xpath="ns:Identity"/>
       </xs:unique>
     </xs:element>
   </xs:sequence>
 </xs:complexType>
 <xs:complexType name="PositionType">
   <xs:annotation>
     <xs:documentation>Позиция</xs:documentation>
   </xs:annotation>
   <xs:all>
     <xs:element name="Product" type="pref:ProductInfo" minOccurs="1" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Информация о продукции</xs:documentation>
       </xs:annotation>
     </xs:element>
     <xs:element name="Pack_ID" type="c:NoEmptyString50" minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Идентификатор упаковки</xs:documentation>
       </xs:annotation>
     </xs:element>
     <xs:element name="Quantity" type="c:PositiveDecimalType" minOccurs="1" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Количество</xs:documentation>
       </xs:annotation>
     </xs:element>
     <xs:element name="Price" type="c:NoNegativeDecimalType" minOccurs="1" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Цена за единицу товара</xs:documentation>
       </xs:annotation>
     </xs:element>
     <xs:element name="Party" type="c:NoEmptyString50" minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Номер партии</xs:documentation>
       </xs:annotation>
     </xs:element>
     <xs:element name="Identity" type="c:IdentityType" nillable="false" minOccurs="1" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Идентификатор позиции внутри накладной</xs:documentation>
       </xs:annotation>
     </xs:element>
     <xs:element name="InformA" type="pref:InformAType" nillable="false" minOccurs="1" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Справка А</xs:documentation>
       </xs:annotation>
     </xs:element>
     <xs:element name="InformB" type="pref:InformBType" nillable="false" minOccurs="1" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Справка Б</xs:documentation>
       </xs:annotation>
     </xs:element>
   </xs:all>
 </xs:complexType>
 <xs:simpleType name="WbType">
   <xs:annotation>
     <xs:documentation>Типы накладных</xs:documentation>
   </xs:annotation>
   <xs:restriction base="xs:string">
     <xs:enumeration value="WBReturnToMe"/>
     <xs:enumeration value="WBInvoiceToMe"/>
     <xs:enumeration value="WBReturnFromMe"/>
     <xs:enumeration value="WBInvoiceFromMe"/>
   </xs:restriction>
 </xs:simpleType>
 <xs:simpleType name="WbUnitType">
   <xs:annotation>
     <xs:documentation>Типы продукции</xs:documentation>
   </xs:annotation>
   <xs:restriction base="xs:string">
     <xs:enumeration value="Packed"/>
     <xs:enumeration value="Unpacked"/>
   </xs:restriction>
 </xs:simpleType>
 <xs:complexType name="TransportType">
   <xs:annotation>
     <xs:documentation>Транспортный раздел</xs:documentation>
   </xs:annotation>
   <xs:all>
     <xs:element name="TRAN_TYPE" minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Тип перевозки</xs:documentation>
       </xs:annotation>
       <xs:simpleType>
         <xs:restriction base="xs:string">
           <xs:maxLength value="50"/>
         </xs:restriction>
       </xs:simpleType>
     </xs:element>
     <xs:element name="TRAN_COMPANY"  minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Название компании перевозчика</xs:documentation>
       </xs:annotation>
       <xs:simpleType>
         <xs:restriction base="xs:string">
           <xs:maxLength value="255"/>
         </xs:restriction>
       </xs:simpleType>
     </xs:element>
     <xs:element name="TRAN_CAR" minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Автомобиль</xs:documentation>
       </xs:annotation>
       <xs:simpleType>
         <xs:restriction base="xs:string">
           <xs:maxLength value="255"/>
         </xs:restriction>
       </xs:simpleType>
     </xs:element>
     <xs:element name="TRAN_TRAILER"  minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Прицеп</xs:documentation>
       </xs:annotation>
       <xs:simpleType>
         <xs:restriction base="xs:string">
           <xs:maxLength value="255"/>
         </xs:restriction>
       </xs:simpleType>
     </xs:element>
     <xs:element name="TRAN_CUSTOMER" minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Заказчики</xs:documentation>
       </xs:annotation>
       <xs:simpleType>
         <xs:restriction base="xs:string">
           <xs:maxLength value="255"/>
         </xs:restriction>
       </xs:simpleType>
     </xs:element>
     <xs:element name="TRAN_DRIVER" minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Водитель</xs:documentation>
       </xs:annotation>
       <xs:simpleType>
         <xs:restriction base="xs:string">
           <xs:maxLength value="255"/>
         </xs:restriction>
       </xs:simpleType>
     </xs:element>
     <xs:element name="TRAN_LOADPOINT" minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Место погрузки</xs:documentation>
       </xs:annotation>
       <xs:simpleType>
         <xs:restriction base="xs:string">
           <xs:maxLength value="2000"/>
         </xs:restriction>
       </xs:simpleType>
     </xs:element>
     <xs:element name="TRAN_UNLOADPOINT"  minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Место разгрузки</xs:documentation>
       </xs:annotation>
       <xs:simpleType>
         <xs:restriction base="xs:string">
           <xs:maxLength value="2000"/>
         </xs:restriction>
       </xs:simpleType>
     </xs:element>
     <xs:element name="TRAN_REDIRECT" minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Перенаправление</xs:documentation>
       </xs:annotation>
       <xs:simpleType>
         <xs:restriction base="xs:string">
           <xs:maxLength value="2000"/>
         </xs:restriction>
       </xs:simpleType>
     </xs:element>
     <xs:element name="TRAN_FORWARDER" minOccurs="0" maxOccurs="1">
       <xs:annotation>
         <xs:documentation>Экспедитор</xs:documentation>
       </xs:annotation>
       <xs:simpleType>
         <xs:restriction base="xs:string">
           <xs:maxLength value="255"/>
         </xs:restriction>
       </xs:simpleType>
     </xs:element>
   </xs:all>
 </xs:complexType>

</xs:schema>