Gerar um esquema XML de um arquivo DTD permite criar um esquema XML que é automaticamente preenchido com elementos e atributos do arquivo DTD. Isso pode economizar tempo, se desejar utilizar um esquema XML em vez de um arquivo DTD para validar seu arquivo XML, mas desejar utilizar as regras já configuradas no arquivo DTD.
Por Que e Quando Desempenhar Esta Tarefa
As seguintes instruções foram gravadas para a perspectiva Recurso, mas também funcionarão para várias outras perspectivas.
Para gerar um arquivo de esquema XML de um arquivo DTD, siga estas etapas:
- Na visualização Navigator (Navegador), clique com o botão direito no DTD e clique em .
- Selecione o projeto ou pasta que conterá o esquema.
- Aceite o nome padrão ou digite um novo e clique em Avançar (Next).
- Se desejar criar um esquema XML que conterá o arquivo DTD e qualquer arquivo DTD referenciado, clique no botão de rádio Criar um esquema XML que inclui todos os arquivos DTD (Create one XML
schema that includes all the DTD files).
- Caso contrário, se desejar criar um esquema individual para seu arquivo
DTD e cada arquivo DTD referenciado, clique no botão de rádio Criar um esquema XML para cada arquivo DTD (Create an XML
schema for each DTD file). Se você selecionar esta opção, cada esquema XML terá o mesmo nome do DTD referenciado do qual foi gerado. Por exemplo, se o DTD for denominado Greetings.dtd e referenciar Hello.dtd e Goodbye.dtd, você terá um esquema gerado de
Greetings.dtd (com o nome especificado para ele) e dois outros esquemas denominados
Hello.xsd e Goodbye.xsd.
- Clique em Concluir.
Resultados
Seus esquemas aparecerem na visualização Navigator (Navegador).
Eles terão o mesmo nome do arquivo DTD do qual foram gerados (se você aceitou o valor padrão no campo Nome do Arquivo (File name) ao gerar o esquema XML).
Nenhuma das entidades que estavam no arquivo DTD estarão no esquema XML (visto que as entidades não são suportadas nos esquemas XML). Entretanto, todos os elementos ou atributos que referenciem uma entidade levarão este valor a um esquema XML.
Exemplo
Por exemplo, você possui um DTD denominado "Legal" que contém uma entidade denominada "Copyright". O valor da entidade é "Copyright 2004. MyCompany
Publishing" . No DTD, há um elemento denominado "MyCopyright", que refere-se à entidade Copyright. Após criar o esquema XML, a entidade Copyright não aparecerá no esquema XML, entretanto, o valor é carregado
(isto é, MyCopyright terá o valor: Copyright 2004. MyCompany Publishing
).
Todos os elementos e atributos que existiram no arquivo DTD existirão no arquivo de esquema XML.
Os elementos no DTD com um modelo de conteúdo
(#PCDATA) (e sem atributos) aparecem vazios no editor de esquemas XML.
Eles estão marcados como tendo
Tipos simples incorporados (Built-in simple types) de cadeia (string).
Isto é, um elemento DTD com um valor (#PCDATA) mapeará a um esquema XML com um tipo primitivo de esquema XML cadeia (string).
Nota: Ao gerar um esquema XML de um arquivo DTD que contém os elementos Hebrew ou Arabic, determinados nomes de elementos podem estar codificados com os valores de codificação hexadecimais equivalentes a
Hebrew e Arabic. Para evitar este problema, altere o atributo de codificação do DTD ou arquivo de esquema XML original para UTF-8 antes de desempenhar a geração: Isto é, a declaração XML deve ser: <?xml
version="1.0" encoding="UTF-8"?> A lista de valores de codificação afetados é: ISO-8859-8-I, ISO-8859-8, Windows-1256 e ISO-8859-6.