﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="requisicao" targetNamespace="https://www.fazenda.sp.gov.br/codif/ws" elementFormDefault="qualified" xmlns="https://www.fazenda.sp.gov.br/codif/ws" xmlns:mstns="https://www.fazenda.sp.gov.br/codif/ws" xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.2">
  <xs:include schemaLocation="Tipos.xsd" />
  <xs:complexType name="dadosNFType" id="dadosNFType">
    <xs:sequence>
      <xs:element name="numero" type="nroNFType" minOccurs="1" maxOccurs="1" />
      <xs:element name="serie" type="xs:string" minOccurs="0" maxOccurs="1" />
      <xs:element name="dataEmissao" type="dataNFType" minOccurs="1" maxOccurs="1" />
      <xs:element name="cfop" type="cfopType" minOccurs="1" maxOccurs="1" />
      <xs:element name="volumeNF" type="xs:string" minOccurs="1" maxOccurs="1" />
      <xs:element name="valor" type="valorType" minOccurs="1" maxOccurs="1" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="dadosSolicitacaoType" id="dadosSolicitacaoType">
    <xs:sequence>
      <xs:element name="cnpjRemetente" type="cnpjType" minOccurs="1" maxOccurs="1" />
      <xs:element name="cpfCnpjDestinatario" type="cpfCnpjType" minOccurs="1" maxOccurs="1" />
      <xs:element name="razaoSocialDestinatario" type="xs:string" minOccurs="1" maxOccurs="1" />
      <xs:element name="ufDestinatario" type="ufType" minOccurs="1" maxOccurs="1" />
      <xs:element name="volume" type="xs:string" minOccurs="1" maxOccurs="1" />
      <xs:element name="codUnidadeMedida" type="unidadeMedidaType" minOccurs="1" maxOccurs="1" />
      <xs:element name="tipoCombustivel" type="tipoCombustivelType" minOccurs="1" maxOccurs="1" />
      <xs:element name="diferimento" type="diferimentoType" maxOccurs="1" minOccurs="1" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="requisicaoType">
    <xs:sequence>
      <xs:choice minOccurs="1" maxOccurs="1">
        <xs:sequence>
          <xs:element name="dadosSolicitacao" type="dadosSolicitacaoType" minOccurs="1" maxOccurs="1" />
          <xs:element name="dadosNF" type="dadosNFType" minOccurs="0" maxOccurs="1" />
        </xs:sequence>
        <xs:sequence>
          <xs:element name="codAutorizacao" type="codAutorizacaoType" minOccurs="1" maxOccurs="1" />
          <xs:element name="dadosNFCompl" type="dadosNFType" minOccurs="1" maxOccurs="1" />
        </xs:sequence>
      </xs:choice>
    </xs:sequence>
    <xs:attribute name="idRequisicao" type="idRequisicaoType" use="required" />
  </xs:complexType>
  <xs:complexType name="requisicoesType">
    <xs:sequence>
      <xs:sequence>
        <xs:element name="requisicao" type="requisicaoType" minOccurs="1" maxOccurs="250" />
      </xs:sequence>
    </xs:sequence>
  </xs:complexType>
  <xs:element name="root">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="requisicoes" type="requisicoesType" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>