Elemento any do XML Schema

Definição e uso

O elemento any permite que qualquer elemento de espaço de nomes especificado seja exibido dentro de elementos sequence ou choice.

Este elemento permite que o criador expanda o documento XML através de elementos não especificados pelo schema.

Informações do elemento

Item Descrição
Número de ocorrências Ilimitado
Elemento pai escolha, sequência
Conteúdo anotação

Sintaxe

<any
id=ID
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
namespace=namespace
processContents=lax|skip|strict
qualquer atributo
>
(anotação?)
</any>

(? O elemento de declaração de símbolo pode aparecer em qualquer elemento zero ou uma vez.)

Atributo

id

Opcional. Define um ID único para esse elemento.

maxOccurs

Opcional. Define o número máximo de vezes que o elemento any pode aparecer no pai. O valor pode ser um inteiro maior ou igual a zero. Para não estabelecer nenhum limite para o número máximo, use a string "unbounded". O valor padrão é 1.

minOccurs

Opcional. Define o número mínimo de vezes que o elemento any pode aparecer no pai. O valor pode ser um inteiro maior ou igual a zero. Para especificar que o grupo any é opcional, defina essa propriedade como zero. O valor padrão é 1.

namespace

Opcional. Define o espaço de nomes que contém os elementos que podem ser usados. Se o espaço de nomes não for especificado, o valor padrão é ##any. Se o espaço de nomes for especificado, deve ser um dos seguintes valores:

  • ##any - Elementos provenientes de qualquer espaço de nomes podem aparecer (padrão).
  • ##other - Elementos provenientes de qualquer espaço de nomes além do espaço de nomes do pai do elemento podem aparecer.
  • ##local - Elementos não limitados por espaço de nomes podem aparecer.
  • ##targetNamespace - Elementos provenientes do espaço de nomes do pai do elemento que contém este elemento podem aparecer.
  • lista de {referências de URI de espaços de nomes, ##targetNamespace, ##local} - Elementos provenientes de uma lista de espaços de nomes separados por espaço podem aparecer. A lista pode conter o seguinte conteúdo: referências de URI para os espaços de nomes ##targetNamespace e ##local.

processContents

Opcional. Um indicador que indica como o aplicativo ou o processador XML deve lidar com a validação do documento XML com base no elemento especificado pelo elemento any. Se a propriedade processContents não for especificada, o valor padrão é strict. Se processContents for especificado, deve ser um dos seguintes valores:

  • strict - O processador XML deve obter o esquema necessário do espaço de nomes e deve verificar todos os elementos provenientes desses espaços de nomes. (Padrão)
  • lax - Idêntico ao strict; no entanto, mesmo que não seja possível obter o esquema, não ocorrerá nenhum erro.
  • ignorar - O processador XML não verifica a validade de todos os elementos provenientes do espaço de nomes especificado.

qualquer atributo

Opcional. Define qualquer outra propriedade com o espaço de nomes non-schema.

Exemplo

O exemplo a seguir mostra uma declaração do elemento "person". Ao usar o elemento <any>, o criador pode usar qualquer elemento para expandir o conteúdo do "person" (depois do <lastname>):

<xs:element name="person">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="firstname" type="xs:string"/>
      <xs:element name="lastname" type="xs:string"/>
      <xs:any minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>