Andrey Knupp Vital 136 Denunciar post Postado Dezembro 14, 2011 Bom gente, eu tenho uma dúvida em relação à XMLSchema, .xsd, arquivo que uso para validar alguns XML's que recebo .. porém, preciso impor uma nova regra nos atributos de algumas nodes ? que regra ? trata-se do requerimento desse atributo em tal node, isso eu já resolvi, afinal, de uma maneira bem elegante .. com DTD's :nataldry: Só que ainda assim, eu tive que mudar a pouco tempo, pois ainda tem uma definição de caracteres permitidos nesse atributo, simplesmente .. posso aplicar um 'restriction' na schema, isso resolve um dos meus problemas <xsd:attribute name="environment" use="required"> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:minLength value="3" /> <xsd:maxLength value="19" /> </xsd:restriction> </xsd:simpleType> </xsd:attribute> Agora .. virando o disco, esse atributo porta a referencia de um atributo em uma node, estamos falando de uma coisa parecida com 'IDs' .. <node use="..." /> Esse uso no caso seria o valor do atributo em que a outra node deve conter também 'um link' .. <otherNode name="..." /> O problema, eu preciso validar esse relacionamento, caso não exista essa identificação, o xml é considerado inválido, não vou entrar em detalhes técnicos .. e isso NÃO deve ser validado no PHP, eu já tenho meus esquemas funcionando e não dá pra mecher no soap, se não eu que vou criar mais problemas A primeira idéia minha foi utilizar XPath, SÓ que ainda assim, resta como eu iria pegar o valor desse atributo ( talvez com XSLT ) .. alguém teria idéia de como criar a validação ? Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Dezembro 15, 2011 Podem fechar o tópico, já consegui resolver, utilizei um key-ref .. não sabia desse elemento no XSD, daí com um pouco de pesquisa, acabei achando a solução, não foi somente isso mas .. o resto é coisa que não consta nós problemas mencionados nesse tópico Compartilhar este post Link para o post Compartilhar em outros sites