Ted k' Postado Dezembro 23, 2008 Denunciar Share Postado Dezembro 23, 2008 (editado) Explicando o que é um SchemaNa realidade o Schema é usado para definir os blocos de construção de um arquivo XML, que pode ser visto como um suplente para DTDs.O elemento é o elemento raiz de todo XMLO XML Schema pode ser traduzido como XSD (XML Schema Definition / XMLs Definidos por Esquemas),segue um exemplo simples para estudo…Vamos chamar esse aquivo de “teste01.xsd”<?xml version="1.0"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> ... aqui colocamos o resto da estrutura Schema </xsd:schema> Depois de criado o Schema pode ser associado a um arquivo XML como no exemplo do código a seguir <?xml version="1.0" ?> <principal xmlns="http://www.tedk.com.br" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.tedk.com.br colocar_schema.xsd">"> <arquivo tid="1"> <item_numeral>COD: 600</item_numeral> <item_nome> <teste_nome>Coloque qualquer coisa 001</teste_nome> <valor_nome>Coloque qualquer coisa 002</valor_nome> </item_nome> <descricao>Aqui você digita qualquer descricao</descricao> <foto>imagem.gif</foto> </arquivo> </principal>o Schema é referenciado logo no inicio do elemento raiz do aquixo XML que está sendo configurado:O xmlns=”http://www.tedk.com.br”'>http://www.tedk.com.br” é uma declaração, uma namespace. Essa namespace diz ao validadorque todos os elementos do que serão utilizados irão vim da url especificada.A segunda parte, xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” indica a localização do Schema, a instância que vai ser utilizada. O segundo valor é a localização do Schema quepretende utilizar para que namespace:xsi:schemaLocation = “http://www.tedk.com.br colocar_schema.xsd”.Nos próximos Posts irei colocar mais a respeito do Schema, foi só uma simples e breve introdução.Bons estudos. Editado Dezembro 23, 2008 por Ted k' Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rljoia Postado Abril 26, 2010 Denunciar Share Postado Abril 26, 2010 Olá amigo,Estamos utilizando o SAX + Validação por Schema XSD em um grande projeto e nos deparamos com um problema que até agora não encontramos uma solução nem mesmo na internet…O problema envolve a tradução das mensagens enviadas pelo parse do SAX quando validamos um arquivo XML utlizando XSD. As mensagens de erro de validação vêm na lingua inglesa, porém queremos informá-las em português. Um exemplo de mensagem:Message: cvc-pattern-valid: Value ‘bvfhdh’ is not facet-valid with respect to pattern ‘\w+([\-+.']\w+)*@\w+([\-.]\w+)*\.\w+([\-.]\w+)*’ for type ‘emailSimpleType’.A questão é que esperávamos que a API tivesse um suporte a multi-línguas, ao invés de ter que nos preocuparmos em montar as mensagens traduzidas, tendo que para isso utilizar subistituição de strings, etc… Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Ted k'
Explicando o que é um Schema
Na realidade o Schema é usado para definir os blocos de construção de um arquivo XML, que pode ser visto como um suplente para DTDs.
O elemento é o elemento raiz de todo XML
O XML Schema pode ser traduzido como XSD (XML Schema Definition / XMLs Definidos por Esquemas),
segue um exemplo simples para estudo…
Vamos chamar esse aquivo de “teste01.xsd”
Depois de criado o Schema pode ser associado a um arquivo XML como no exemplo do código a seguiro Schema é referenciado logo no inicio do elemento raiz do aquixo XML que está sendo configurado:
O xmlns=”http://www.tedk.com.br”'>http://www.tedk.com.br” é uma declaração, uma namespace. Essa namespace diz ao validador
que todos os elementos do que serão utilizados irão vim da url especificada.
A segunda parte, xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” indica a localização do
Schema, a instância que vai ser utilizada. O segundo valor é a localização do Schema que
pretende utilizar para que namespace:xsi:schemaLocation = “http://www.tedk.com.br colocar_schema.xsd”.
Nos próximos Posts irei colocar mais a respeito do Schema, foi só uma simples e breve introdução.
Bons estudos.
Editado por Ted k'Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.