<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:element name="NotaTomador">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="Header" minOccurs="1" maxOccurs="1">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="CNPJCPFTomador">
                <xsd:annotation>
                  <xsd:documentation>CNPJ / CPF do Tomador da Nota Fiscal (sem máscara)</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:minLength fixed="true" value="11"></xsd:minLength>
                    <xsd:maxLength fixed="true" value="14"></xsd:maxLength>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="Chave">
                <xsd:annotation>
                  <xsd:documentation>Chave identificadora da empresa adquirida pelo sistema de ISS ELetrônico</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:length value="48"></xsd:length>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
        <xsd:element name="DadosNotaFiscal" minOccurs="1" maxOccurs="20">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="ID" type="xsd:positiveInteger">
                <xsd:annotation>
                  <xsd:documentation>Identificador do Registro</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="NumeroNF">
                <xsd:annotation>
                  <xsd:documentation>Número da Nota Fiscal</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:decimal">
                    <xsd:pattern value="[0-9]{10}"></xsd:pattern>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="SituacaoNF">
                <xsd:annotation>
                  <xsd:documentation>
                    Situação da Nota Fiscal 
                    C - para Nota Cancelada
                    N - para Nota Normal
                  </xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:enumeration value="C"></xsd:enumeration>
                    <xsd:enumeration value="N"></xsd:enumeration>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="Emissao" type="xsd:date">
                <xsd:annotation>
                  <xsd:documentation>Data de Emissão da Nota Fiscal</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="CNPJCPFPrestador">
                <xsd:annotation>
                  <xsd:documentation>CNPJ / CPF do Prestador de Serviço (sem máscara)</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:minLength fixed="true" value="11"></xsd:minLength>
                    <xsd:maxLength fixed="true" value="14"></xsd:maxLength>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="NomePrestador">
                <xsd:annotation>
                  <xsd:documentation>Nome ou Razão Social do Prestador de Serviço</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:minLength value="0"></xsd:minLength>
                    <xsd:maxLength value="60"></xsd:maxLength>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="UFPrestador">
                <xsd:annotation>
                  <xsd:documentation>Sigla do Estado do Prestador de Serviço</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:enumeration value=""></xsd:enumeration>
                    <xsd:enumeration value="AC"></xsd:enumeration>
                    <xsd:enumeration value="AL"></xsd:enumeration>
                    <xsd:enumeration value="AM"></xsd:enumeration>
                    <xsd:enumeration value="AP"></xsd:enumeration>
                    <xsd:enumeration value="BA"></xsd:enumeration>
                    <xsd:enumeration value="CE"></xsd:enumeration>
                    <xsd:enumeration value="DF"></xsd:enumeration>
                    <xsd:enumeration value="ES"></xsd:enumeration>
                    <xsd:enumeration value="GO"></xsd:enumeration>
                    <xsd:enumeration value="MA"></xsd:enumeration>
                    <xsd:enumeration value="MG"></xsd:enumeration>
                    <xsd:enumeration value="MS"></xsd:enumeration>
                    <xsd:enumeration value="MT"></xsd:enumeration>
                    <xsd:enumeration value="PA"></xsd:enumeration>
                    <xsd:enumeration value="PB"></xsd:enumeration>
                    <xsd:enumeration value="PE"></xsd:enumeration>
                    <xsd:enumeration value="PI"></xsd:enumeration>
                    <xsd:enumeration value="PR"></xsd:enumeration>
                    <xsd:enumeration value="RJ"></xsd:enumeration>
                    <xsd:enumeration value="RN"></xsd:enumeration>
                    <xsd:enumeration value="RO"></xsd:enumeration>
                    <xsd:enumeration value="RR"></xsd:enumeration>
                    <xsd:enumeration value="RS"></xsd:enumeration>
                    <xsd:enumeration value="SC"></xsd:enumeration>
                    <xsd:enumeration value="SE"></xsd:enumeration>
                    <xsd:enumeration value="SP"></xsd:enumeration>
                    <xsd:enumeration value="TO"></xsd:enumeration>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="CidadePrestador">
                <xsd:annotation>
                  <xsd:documentation>Código do Município na Tabela IBGE do Prestador de Serviço</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:int">
                    <xsd:pattern value="[0-9]{7}"></xsd:pattern>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="EnderecoPrestador">
                <xsd:annotation>
                  <xsd:documentation>Endereço do Prestador de Serviço</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:minLength value="0"></xsd:minLength>
                    <xsd:maxLength value="60"></xsd:maxLength>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="NumeroPrestador">
                <xsd:annotation>
                  <xsd:documentation>Número do Prestador de Serviço</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:minLength value="0"></xsd:minLength>
                    <xsd:maxLength value="10"></xsd:maxLength>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="ComplementoPrestador">
                <xsd:annotation>
                  <xsd:documentation>Complemento do Prestador de Serviço</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:minLength value="0"></xsd:minLength>
                    <xsd:maxLength value="60"></xsd:maxLength>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="BairroPrestador">
                <xsd:annotation>
                  <xsd:documentation>Bairro do Prestador de Serviço</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:minLength value="0"></xsd:minLength>
                    <xsd:maxLength value="40"></xsd:maxLength>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="CEPPrestador">
                <xsd:annotation>
                  <xsd:documentation>CEP do Prestador de Serviço</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:pattern value="[0-9]{5}-[0-9]{3}"></xsd:pattern>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="EmailPrestador">
                <xsd:annotation>
                  <xsd:documentation>E-mail do Prestador de Serviço</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:minLength value="0"></xsd:minLength>
                    <xsd:maxLength value="50"></xsd:maxLength>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="Observacao">
                <xsd:annotation>
                  <xsd:documentation>Observações da Nota Fiscal</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:minLength value="0"></xsd:minLength>
                    <xsd:maxLength value="200"></xsd:maxLength>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="MotivoCancelamento">
                <xsd:annotation>
                  <xsd:documentation>Descrição do Motivo de Cancelamento da Nota Fiscal</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:string">
                    <xsd:minLength value="0"></xsd:minLength>
                    <xsd:maxLength value="200"></xsd:maxLength>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
			  <xsd:element name="TipoDocumento">
                <xsd:annotation>
                  <xsd:documentation>Código do Tipo de Nota Fiscal (verificar com a Prefeitura a lista de códigos válidos)</xsd:documentation>
                </xsd:annotation>
                <xsd:simpleType>
                  <xsd:restriction base="xsd:integer">
                    <xsd:pattern value="[0-9]{3}"></xsd:pattern>
                  </xsd:restriction>
                </xsd:simpleType>
              </xsd:element>
              <xsd:element name="DadosItensNotaFiscal" minOccurs="1" maxOccurs="1">
                <xsd:complexType>
                  <xsd:sequence>
                    <xsd:element name="ItemAtividade" type="xsd:string">
                      <xsd:annotation>
                        <xsd:documentation>Código do Item da Atividade prestado (Obtido no serviço ConsultaItensAtividade)</xsd:documentation>
                      </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="TextoItem">
                      <xsd:annotation>
                        <xsd:documentation>Texto do Item da Nota Fiscal</xsd:documentation>
                      </xsd:annotation>
                      <xsd:simpleType>
                        <xsd:restriction base="xsd:string">
                          <xsd:minLength value="10"></xsd:minLength>
                          <xsd:maxLength value="1800"></xsd:maxLength>
                        </xsd:restriction>
                      </xsd:simpleType>
                    </xsd:element>
                    <xsd:element name="ValorItem" type="xsd:decimal">
                      <xsd:annotation>
                        <xsd:documentation>Valor do Item da Nota Fiscal</xsd:documentation>
                      </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="ValorDeducao" type="xsd:decimal">
                      <xsd:annotation>
                        <xsd:documentation>Valor das Deduções da Nota Fiscal</xsd:documentation>
                      </xsd:annotation>
                    </xsd:element>
                    <xsd:element name="Retido">
                      <xsd:annotation>
                        <xsd:documentation>
                          Identifica se o imposto do serviço foi retido na fonte pelo Tomador
                          S - para Imposto Retido pelo Tomador
                          N - para Imposto Não Retido pelo Tomador
                        </xsd:documentation>
                      </xsd:annotation>
                      <xsd:simpleType>
                        <xsd:restriction base="xsd:string">
                          <xsd:enumeration value="S"></xsd:enumeration>
                          <xsd:enumeration value="N"></xsd:enumeration>
                        </xsd:restriction>
                      </xsd:simpleType>
                    </xsd:element>
                    <xsd:element name="Pais">
                      <xsd:simpleType>
                        <xsd:restriction base="xsd:string">
                          <xsd:minLength value="0"></xsd:minLength>
                          <xsd:maxLength value="50"></xsd:maxLength>
                        </xsd:restriction>
                      </xsd:simpleType>
                    </xsd:element>
                  </xsd:sequence>
                </xsd:complexType>
              </xsd:element>
              <xsd:element name="DadosImpostosNotaFiscal" minOccurs="0" maxOccurs="5">
                <xsd:complexType>
                  <xsd:sequence>
                    <xsd:element name="Imposto">
                      <xsd:annotation>
                        <xsd:documentation>Sigla do Imposto utilizado na Dedução</xsd:documentation>
                      </xsd:annotation>
                      <xsd:simpleType>
                        <xsd:restriction base="xsd:string">
                          <xsd:minLength value="3"></xsd:minLength>
                          <xsd:maxLength value="6"></xsd:maxLength>
                        </xsd:restriction>
                      </xsd:simpleType>
                    </xsd:element>
                    <xsd:element name="ValorImposto" type="xsd:decimal">
                      <xsd:annotation>
                        <xsd:documentation>Valor do Imposto utilizado na Dedução</xsd:documentation>
                      </xsd:annotation>
                    </xsd:element>
                  </xsd:sequence>
                </xsd:complexType>
              </xsd:element>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>