Ir para o conteúdo
Ferreira

XML Schema: xs:all dentro de xs:sequence

Mensagens Recomendadas

Ferreira    0
Ferreira

Preciso de definir um XML Schema, em que alguns dos elementos podem estar por uma ordem arbitrária, mas na mesma ordem no conjunto de todos os elementos.

A minha primeira ideia foi uma o xs:all, mas percebi que não o posso fazer dentro do xs:sequence que já tenho.

Qual é a melhor maneira de dar a volta a isto?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Ferreira    0
Ferreira

Mas com o xs:complexType não preciso de criar um elemento novo para corresponder a esse tipo?

A ideia era ter alguns elementos a poderem aparecer por qualquer ordem entre eles. Não é essa a ideia do xs:all?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Rui Carlos    311
Rui Carlos

Precisas de criar um elemento novo (provavelmente até já o criaste), que corresponderá ao pai desses elementos.

<xs:element name="a">
  <xs:complexType>
    <xs:all>
      <xs:element name="b"/>
      <xs:element name="c"/>
      <xs:element name="d"/>
    </xs:all>
  </xs:complexType>
</xs:element>

Por exemplo, no caso acima, os filhos de a podem ser b, c, ou d, e podem ocorrer por qualquer ordem.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Ferreira    0
Ferreira

Mas o que eu quero não é isso, é ter b, c e d por qualquer ordem sem que estejam dentro de outro elemento (i.e., devem estar no nível em que nesse exemplo está a).

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Rui Carlos    311
Rui Carlos

Um documento XML tem sempre uma raiz, por isso irão sempre estar dentro de qualquer coisa.

Agora se pretendes ter mais elementos fora do xs:all ao mesmo nível, não me parece que seja possível.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Ferreira    0
Ferreira

Sim, o documento tem uma raíz.

A ideia era mesmo ter mais elementos fora do xs:all, mas parece que vou ter de arranjar outra maneira de fazer isto.

Obrigado pela ajuda de qualquer forma. :thumbsup:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade