O analisador XMLNSC oferece validação de Esquema XML compatível com padrões e de alto desempenho em qualquer ponto em um fluxo de mensagens.
A validação da mensagem XML de entrada ou da árvore de mensagens é executada em relação a Esquemas XML que são implementados.
Validação não é o mesmo que análise. Ao analisar, o analisador XMLNSC sempre verifica se o documento de entrada é um XML bem formado, de acordo com a especificação XML. Se a validação estiver ativada, o analisador XMLNSC também verifica se o documento XML obedece as regras no Esquema XML.
Você deve executar as seguintes tarefas para construir um fluxo de mensagens que valida um documento XML de acordo com um Esquema XML:
Esquemas XML podem ser implementados em um aplicativo, em uma biblioteca referenciada por um aplicativo ou em um conjunto de mensagens.
Se os esquemas forem implementados como parte do aplicativo, deverão ser incluídos em um dos projetos referenciados pelo aplicativo.
Se os esquemas forem implementados na biblioteca, o aplicativo deverá fazer referência à biblioteca, mesmo se implementado como parte de um aplicativo diferente.
Se os esquemas forem implementados em um conjunto de mensagens, você deverá concluir as seguintes etapas.
Todos os Esquemas XML que forem usados pelo WebSphere Message Broker deverão ser criados como arquivos de definição de mensagens em um conjunto de mensagens.
Para criar e implementar um conjunto de mensagens para validação do Esquema XML:
A validação de XMLNSC está em conformidade integral com o Esquema XML v1.0, conforme definido nas especificações disponíveis em http://www.w3.org/TR/xmlschema-1/ e http://www.w3.org/TR/xmlschema-2/, com as seguintes exceções secundárias:
Você pode validar os documentos que estão em conformidade com a especificação XML v1.1, mas o suporte está limitado pelo fato de que os documentos do Esquema XML v1.0 devem estar em conformidade com XML v1.0.
Como exemplo, você não pode sempre declarar um nome de marcação XML v1.1 no Esquema XML v1.0. Essa limitação não é imposta pela implementação do analisador XMLNSC; é uma limitação do Esquema XML v1.0.
Um erro de validação é um erro resultante quando o documento XML quebrar as regras que estão definidas no esquema XML. O padrão do Esquema XML especifica exatamente quais são essas regras e como elas devem ser aplicadas. Os erros de validação que o analisador XMLNSC emite contém as informações que vinculam o erro à regra de Esquema XML que foram violadas.
XML schema validation error '[cvc-error key: error description]'
'cvc-minInclusive-valid: O valor "2" não é válido com respeito à faceta
minInclusive com o valor "3" para o tipo "po:itemCountType".'
'cvc-complex-type.2.4.a: Esperando elemento com nome local "numItems", mas encontrou "totalValue".'
Para localizar a regra do Esquema XML que foi violada, abra a especificação do Esquema XML e procure a chave de erro.Exemplo 1: Abra http://www.w3.org/TR/xmlschema-1/ e procure ‘cvc-minInclusive-valid'. Siga o link para as regras do Esquema XML para a faceta minInclusive.
Exemplo 2: Abra http://www.w3.org/TR/xmlschema-1/ e procure ‘cvc-complex-type'. Siga o link para as regras do Esquema XML para validar o conteúdo de um tipo complexo. Nesse caso, a chave de erro contém informações extras. O ‘2.4.a' refere-se à sub-regra exata que foi violada. Ele não deve ser incluído ao procurar pela regra.
Se a especificação do Esquema XML não fornecer informações suficientes, é possível localizar informações adicionais utilizando um mecanismo de procura. O padrão do Esquema XML é muito amplamente utilizado e muitos tutorias on-line e outros recursos estão disponíveis.