<?xml version="1.0" encoding="UTF-8"?>
<xs:schema id="Document" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop">
  <xs:element name="Document">
    <xs:complexType>
      <xs:choice maxOccurs="unbounded">
        <xs:element name="Parameters">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="doc" type="xs:string" minOccurs="0"/>
              <xs:element name="doc_create_date" type="xs:dateTime" minOccurs="0"/>
              <xs:element name="lang" type="xs:int" minOccurs="0"/>
              <xs:element name="number_of_bill" type="xs:string" minOccurs="0"/>
              <xs:element name="customer_number" type="xs:long" minOccurs="0"/>
              <xs:element name="contract_number" type="xs:string" minOccurs="0"/>
              <xs:element name="currency" type="xs:string" minOccurs="0"/>
              <xs:element name="allowance_base_value" type="xs:decimal" minOccurs="0" />
              <xs:element name="allowance_old_value" type="xs:decimal" minOccurs="0" />
              <xs:element name="allowance_allowance" type="xs:decimal" minOccurs="0" />
              <xs:element name="allowance_new_rollover" type="xs:decimal" minOccurs="0" />
			  <xs:element name="message" type="xs:string" minOccurs="0"/>
			  <xs:element name="purchase_number" type="xs:string" minOccurs="0"/>
			</xs:sequence>
          </xs:complexType>
        </xs:element>
		<xs:element name="Invoice_Type">
		  <xs:complexType>
			<xs:sequence>
			  <xs:element name="dts" type="xs:string" minOccurs="0"/>
			</xs:sequence>
		  </xs:complexType>
		</xs:element>
		<xs:element name="Accounting_period">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="billing_session_id" type="xs:long" minOccurs="0" />
              <xs:element name="date_from" type="xs:dateTime" minOccurs="0"/>
              <xs:element name="date_to" type="xs:dateTime" minOccurs="0"/>
              <xs:element name="tax_date" type="xs:dateTime" minOccurs="0"/>
              <xs:element name="issue_date" type="xs:dateTime" minOccurs="0"/>
              <xs:element name="maturity_date" type="xs:dateTime" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Payment_information">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="bank_name" type="xs:string" minOccurs="0"/>
              <xs:element name="bank_account_number" type="xs:string" minOccurs="0"/>
              <xs:element name="bank_code" type="xs:string" minOccurs="0"/>
              <xs:element name="variable_symbol" type="xs:string" minOccurs="0"/>
              <xs:element name="specific_symbol" type="xs:string" minOccurs="0"/>
              <xs:element name="payment_channel" type="xs:string" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Customer">
          <xs:complexType>
            <xs:sequence>
			  <xs:element name="name" type="xs:string" minOccurs="0"/>
			  <xs:element name="receiver_name" type="xs:string" minOccurs="0"/>
			  <xs:element name="company_holding" type="xs:string" minOccurs="0"/>
			  <xs:element name="account_note" type="xs:string" minOccurs="0"/>
              <xs:element name="dic" type="xs:string" minOccurs="0"/>
              <xs:element name="ic" type="xs:string" minOccurs="0"/>
              <xs:element name="reg_street" type="xs:string" minOccurs="0"/>
              <xs:element name="reg_city" type="xs:string" minOccurs="0"/>
              <xs:element name="reg_zip_code" type="xs:string" minOccurs="0"/>
              <xs:element name="reg_country" type="xs:string" minOccurs="0"/>
			  <xs:element name="send_street" type="xs:string" minOccurs="0"/>
			  <xs:element name="send_info" type="xs:string" minOccurs="0"/>
              <xs:element name="send_city" type="xs:string" minOccurs="0"/>
              <xs:element name="send_zip_code" type="xs:string" minOccurs="0"/>
              <xs:element name="send_country" type="xs:string" minOccurs="0"/>
              <xs:element name="customer_bank_name" type="xs:string" minOccurs="0"/>
              <xs:element name="customer_bank_account_number" type="xs:string" minOccurs="0"/>
              <xs:element name="customer_bank_code" type="xs:string" minOccurs="0"/>
              <xs:element name="cost_centre_name" type="xs:string" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Financial_sumary">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="customer_account_status_old" type="xs:decimal" minOccurs="0"/>
              <xs:element name="received_payments_old" type="xs:decimal" minOccurs="0"/>
              <xs:element name="advanced_payment_old" type="xs:decimal" minOccurs="0"/>
              <xs:element name="customer_account_status" type="xs:decimal" minOccurs="0"/>
              <xs:element name="received_deposits" type="xs:decimal" minOccurs="0"/>
              <xs:element name="advanced_payment" type="xs:decimal" minOccurs="0"/>
              <xs:element name="regular_invoice" type="xs:decimal" minOccurs="0"/>
              <xs:element name="hot_bills" type="xs:decimal" minOccurs="0"/>
              <xs:element name="credit_debit_notes_sum" type="xs:decimal" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Msl">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="msl_service_group_id" type="xs:int" minOccurs="0"/>
              <xs:element name="msl_name" type="xs:string" minOccurs="0"/>
              <xs:element name="msl_total" type="xs:decimal" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Sum_invoice_item_group">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="siig_id" type="xs:int" minOccurs="0"/>
              <xs:element name="siig_name" type="xs:string" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Sum_invoice_item">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="sii_siig_id" type="xs:int" minOccurs="0"/>
              <xs:element name="sii_service_name" type="xs:string" minOccurs="0"/>
              <xs:element name="sii_item_total" type="xs:decimal" minOccurs="0"/>
              <xs:element name="sii_item_tax" type="xs:string" minOccurs="0"/>
              <xs:element name="sii_item_onetime_charges" type="xs:decimal" minOccurs="0"/>
              <xs:element name="sii_item_recurrent_charges" type="xs:decimal" minOccurs="0"/>
              <xs:element name="sii_item_usage_charges" type="xs:decimal" minOccurs="0"/>
              <xs:element name="sii_item_discount" type="xs:decimal" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Sum_tax">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="st_tax" type="xs:decimal" minOccurs="0"/>
              <xs:element name="st_tax_base" type="xs:decimal" minOccurs="0"/>
              <xs:element name="st_tax_amount" type="xs:decimal" minOccurs="0"/>
              <xs:element name="st_tax_adj_id" type="xs:long" minOccurs="0"/>
              <xs:element name="st_tax_adj_num" type="xs:string" minOccurs="0"/>
              <xs:element name="st_total" type="xs:decimal" minOccurs="0"/>
              <xs:element name="st_name" type="xs:string" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Sum_tax_none">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="stn_tax" type="xs:decimal" minOccurs="0"/>
              <xs:element name="stn_tax_base" type="xs:decimal" minOccurs="0"/>
              <xs:element name="stn_tax_amount" type="xs:decimal" minOccurs="0"/>
              <xs:element name="stn_tax_adj_id" type="xs:long" minOccurs="0"/>
              <xs:element name="stn_tax_adj_num" type="xs:string" minOccurs="0"/>
              <xs:element name="stn_total" type="xs:decimal" minOccurs="0"/>
              <xs:element name="stn_name" type="xs:string" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="RoundingItem">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="r_tax_amount" type="xs:decimal" minOccurs="0"/>
              <xs:element name="r_price_amount" type="xs:decimal" minOccurs="0"/>
              <xs:element name="r_tax_percent_rate" type="xs:decimal" minOccurs="0"/>
              <xs:element name="r_total" type="xs:decimal" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Linked_Advance_Payment">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="lap_tax_amount" type="xs:decimal" minOccurs="0"/>
              <xs:element name="lap_tax_base" type="xs:decimal" minOccurs="0"/>
              <xs:element name="lap_tax" type="xs:decimal" minOccurs="0"/>
              <xs:element name="lap_total" type="xs:decimal" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Tax_total">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="tax_base" type="xs:decimal" minOccurs="0"/>
              <xs:element name="tax_amount" type="xs:decimal" minOccurs="0"/>
              <xs:element name="total_amount" type="xs:decimal" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Sum_totals">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="stot_total" type="xs:decimal" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Detail_report_group">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="drg_id" type="xs:int" minOccurs="0"/>
              <xs:element name="drg_name" type="xs:string" minOccurs="0"/>
              <xs:element name="drg_price" type="xs:decimal" minOccurs="0"/>
              <xs:element name="drg_discount" type="xs:decimal" minOccurs="0"/>
              <xs:element name="drg_total" type="xs:decimal" minOccurs="0"/>
              <xs:element name="drg_drmg_id" type="xs:int" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Detail_report_sub_group">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="drsg_id" type="xs:int" minOccurs="0"/>
              <xs:element name="drsg_drg_id" type="xs:int" minOccurs="0"/>
              <xs:element name="drsg_name" type="xs:string" minOccurs="0"/>
              <xs:element name="drsg_price" type="xs:decimal" minOccurs="0"/>
              <xs:element name="drsg_discount" type="xs:decimal" minOccurs="0"/>
              <xs:element name="drsg_total" type="xs:decimal" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Detail_report_item">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="dri_drsg_id" type="xs:int" minOccurs="0"/>
              <xs:element name="dri_name" type="xs:string" minOccurs="0"/>
              <xs:element name="dri_number_of_units" type="xs:string" minOccurs="0"/>
              <xs:element name="dri_unit_price" type="xs:decimal" minOccurs="0"/>
              <xs:element name="dri_price" type="xs:decimal" minOccurs="0"/>
              <xs:element name="dri_discount" type="xs:decimal" minOccurs="0"/>
              <xs:element name="dri_total" type="xs:decimal" minOccurs="0"/>
              <xs:element name="dri_tax" type="xs:string" minOccurs="0"/>
			  <xs:element name="dri_unit_type" type="xs:string" minOccurs="0"/>
			  <xs:element name="dri_mar_package" type="xs:long" minOccurs="0"/>
			  <xs:element name="dri_allowance" type="xs:decimal" minOccurs="0"/>
			</xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Detail_report_main_group">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="drmg_id" type="xs:int" minOccurs="0"/>
              <xs:element name="drmg_name" type="xs:string" minOccurs="0"/>
              <xs:element name="drmg_price" type="xs:decimal" minOccurs="0"/>
              <xs:element name="drmg_discount" type="xs:decimal" minOccurs="0"/>
              <xs:element name="drmg_total" type="xs:decimal" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
		<xs:element name="Phone_number">
		  <xs:complexType>
			<xs:sequence>
			  <xs:element name="fixed_number" type="xs:string" minOccurs="0"/>
			  <xs:element name="mobile_number" type="xs:string" minOccurs="0"/>
			</xs:sequence>
		  </xs:complexType>
		</xs:element>
		<xs:element name="Business_information">
		  <xs:complexType>
			<xs:sequence>
			  <xs:element name="picture1" type="xs:base64Binary" minOccurs="0"/>
			  <xs:element name="picture2" type="xs:base64Binary" minOccurs="0"/>
			  <xs:element name="picture3" type="xs:base64Binary" minOccurs="0"/>
			  <xs:element name="url1" type="xs:string" minOccurs="0"/>
			  <xs:element name="url2" type="xs:string" minOccurs="0"/>
			  <xs:element name="url3" type="xs:string" minOccurs="0"/>
			</xs:sequence>
		  </xs:complexType>
		</xs:element>
		<xs:element name="detail_invoice_item">
		  <xs:complexType>
			<xs:sequence>
			  <xs:element name="customer_hierarchy" type="xs:string" />
			  <xs:element name="customer_name" type="xs:string" />
			  <xs:element name="customer_group_name" type="xs:string" />
			  <xs:element name="phone_number" type="xs:string" />
			  <xs:element name="service_group_name" type="xs:string" />
			  <xs:element name="billing_service_name" type="xs:string" />
			  <xs:element name="event_name" type="xs:string" />
			  <xs:element name="unit_quantity" type="xs:string" />
			  <xs:element name="unit_price" type="xs:decimal" />
			  <xs:element name="metric_unit_code" type="xs:string" />
			  <xs:element name="item_ammount" type="xs:decimal" />
			  <xs:element name="discount" type="xs:decimal" />
			  <xs:element name="allowance" type="xs:decimal" minOccurs="0"/>
			  <xs:element name="taxable" type="xs:decimal" minOccurs="0"/>
			  <xs:element name="taxable_non" type="xs:decimal" minOccurs="0"/>
			</xs:sequence>
		  </xs:complexType>
		</xs:element>
	  </xs:choice>
    </xs:complexType>
  </xs:element>
</xs:schema>