XSD - como eu posso assegurar a existência de um determinado elemento com um determinado atributo?

StackOverflow https://stackoverflow.com/questions/283616

  •  08-07-2019
  •  | 
  •  

Pergunta

Eu estou tentando adicionar extra de validação para jdpl processo -definição arquivos usando XSD.

Nós temos um par de regras que deseja adicionar; mas o que está me causando problemas é que deve existir um elemento "nó" com o atributo que é "nome" = "Problema".

então isso é válido:

<process-definition name='sample'>
    <node name="Problem">
    </node>
    <node name="Do Work">
    </node>
</process-definition>

e isso não é

<process-definition name='sample'>
    <node name="Do Work">
    </node>
</process-definition>

Assim, para resumir, as regras que eu preciso para fazer cumprir são

  • atributo nó com o valor "problema"
  • existência de um nó com name = "Problema"
  • permitindo que qualquer número de nós com outros nomes

Todas as idéias lá fora?

Foi útil?

Solução

Lamentamos que não é possível com XSD.

Devido a razões de desempenho XML-Schema é projetado para nunca olhar em frente e nunca olhar para trás para além do nó atual. Isso significa que ele deve ser sempre definidos, onde o validador está no esquema-árvore. E que os requisitos faz semelhantes a este impossível definir com XSD.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top