• Nenhum resultado encontrado

DTD

N/A
N/A
Protected

Academic year: 2021

Share "DTD"

Copied!
28
0
0

Texto

(1)

Tecnologia Web

Tecnologia Web

DTD

DTD

Anna Izabel João Tostes Ribeiro

Pontifícia Universidade Católica de Minas Gerais

(2)

Sumário

● Introdução

● Criando Elementos

● Criando Atributos

(3)

Introdução

● O que é o DTD?

o Document Type Definition;

o Especifica a estrutura correta do documento XML.

● Permite definir: o Elementos o Atributos o Entidades o PCDATA o CDATA

(4)

Introdução

<?xml version="1.0"?> <!DOCTYPE professor[

<!ELEMENT professor (nome,disciplinas)> <!ELEMENT nome (prim_nome,sobrenome)> <!ELEMENT prim_nome (#PCDATA)>

<!ELEMENT sobrenome (#PCDATA)>

<!ELEMENT disciplinas (disciplina)+> <!ELEMENT disciplina (#PCDATA)>

<!ATTLIST disciplina cargaHoraria CDATA #REQUIRED> ]> <professor> <nome> <prim_nome>Kleber</prim_nome> <sobrenome>Jacques</sobrenome> </nome> <disciplinas> <disciplina cargaHoraria=“64”> Tecnologias Web </disciplina> </disciplinas> </professor>

(5)

Introdução

<?xml version="1.0"?>

<!DOCTYPE professor SYSTEM “professor.dtd“> <professor> <nome> <prim_nome>Kleber </prim_nome> <sobrenome>Jacques</sobrenome> </nome> <disciplinas> <disciplina cargaHoraria=“64”> Tecnologias Web </disciplina> </disciplinas> </professor>

(6)

Introdução

● Relembrando:

o Elementos compõem as informações principais do documento;  Nome do professor.

o Atributos são informações adicionais;  Carga horária da disciplina.

o Entidades: Informações que não podem ser processadas pelo leitor do XML

o PCDATA: Parsed Character Data

o CDATA: Unparsed Character Data

&lt; < &gt; > &amp; & &apos; &quot;

(7)

Blocos de Construção de XML

● Visto de um ponto de DTD de vista, todos os documentos

XML (e HTML) são compostos pelos seguintes blocos:

o PCDATA

o CDATA

o Elementos

o Atributos

(8)

PCDATA

● Significa dados de caracteres analisados.

● Pense em dados de caracteres como o texto encontrado

entre a tag de início e o fim da tag de um elemento XML.

● É o texto que será analisado por um analisador. O texto

será examinado pelo analisador para entidades e marcação.

● Palavras-chave dentro do texto será tratado como

marcação e entidades será expandido.

● No entanto, dados de caracteres analisados não deve

conter &, <,> ou caracteres, estes devem ser

(9)

CDATA

● Significa que os dados de caracteres.

● É um texto que não será analisado por um analisador.

(10)

Criando Elementos

● Declaração: <!ELEMENT nome_elemento categoria> ou <! ELEMENT nome_elemento (conteudo)>

● Elemento vazio:

o <!ELEMENT br EMPTY> <br />

● Elemento com texto:

o <!ELEMENT disciplina (#PCDATA)>

● Elementos com seqüência elementos filhos:

o <!ELEMENT nome_elemento(filho1,filho2,...,filhon)>

o <!ELEMENT nome (prim_nome,sobrenome)>

● Elementos com qualquer conteúdo:

o <!ELEMENT disciplina ANY>

(11)

Criando Elementos

● Elementos são os principais blocos de construção de

documentos XML e HTML

● Exemplos de elementos HTML são body e table

● Exemplos de elementos XML poderia ser note e message

● Os elementos podem conter texto, outros elementos, ou

estar vazio

o Exemplo: br, img

o Uma vez que o próprio elemento é vazio, ele é fechado pelo caractere "/".

(12)

Criando Elementos

● Ocorrência única de elementos filhos:

o <!ELEMENT professor (nome,disciplinas)>

o Ocorrência de zero ou um elemento filho:

o <!ELEMENT professor (nome,disciplinas?)>

● Ocorrência de pelo menos um elemento filho:

o <!ELEMENT disciplinas (disciplina)+>

● Ocorrência de zero ou mais elementos filhos:

o <!ELEMENT disciplinas (disciplina)*>

● Ocorrência de exclusiva de elementos:

o <!ELEMENT nome (nome_completo|(prim_nome,sobrenome))>

● Ocorrência de elementos em qualquer ordem e em

qualquer quantidade:

(13)

Criando Atributos

● Atributos fornecem informações adicionais sobre os

elementos

● Os atributos são sempre colocados dentro da tag de

abertura de um elemento

● Atributos sempre vêm em pares nome/valor

● O seguinte elemento img tem informações adicionais sobre um arquivo de origem:

(14)

Criando Atributos

● Declaração:

o <!ATTLIST nome_elemento nome_atributo tipo_atributo valor_default>

o <!ATTLIST disciplina cargaHoraria CDATA #REQUIRED>

● Atributos podem ser definidos como: o CDATA

o Enumeração: (valor1|valor2|...|valorn)

o ID: Especifica o atributo como identificador único

o IDREF: Especifica o atributo para receber o identificador de um elemento específico.

o IDREFS: Lista de referência para outros elementos.

o ENTITY: O atributo só recebe como valor uma entidade.

(15)

Criando Atributos

● O valor_padrao do atributo pode ser:

o Um valor específico:

cargaHoraria=“64”

o #REQUIRED: Indica que é um atributo obrigatório;

o #IMPLIED: Indica que é um atributo não obrigatório;

o #FIXED: Indica que o atributo é uma constante. Neste caso o atributo tem de ser declarado com um valor padrão:

 <!ATTLIST disciplina org CDATA #FIXED

“PUCMINAS">

● Existem ainda os atributos enumerados:

(16)

Criando Atributos

● Alguns dos problemas com atributos são:

o Atributos não podem conter múltiplos valores (elementos filhos podem)

o Atributos não são facilmente expansível (para futuras mudanças)

o Atributos não podem descrever estruturas (elementos filhos podem)

o Atributos são mais difíceis de manipular por código de programa

o Valores de atributos não são fáceis de testar contra um DTD

o Se você usar atributos como recipientes de dados, você acaba com os documentos que são difíceis de ler e manter.

• Recomendações:

o Tente usar elementos para descrever dados.

o Use atributos apenas para fornecer informações que não são relevantes para os dados.

(17)

Deve-se evitar o uso de atributos?

(18)

Deve-se evitar o uso de atributos?

• Mas toda regra possui exceção:

• Às vezes pode-se atribuir referências de identificação aos elementos.

• Essas referências de identificação pode ser usado para acessar os elementos XML da mesma maneira como o nome ou atributos de identificação em HTML.

(19)

Deve-se evitar o uso de atributos?

(20)

Criando Entidades

● Entidades em XML são variáveis que fornecem recurso

para abreviar valores ou substituir caracteres especiais da linguagem;

● Declaração:

o Interna

 <!ENTITY entity-name "entity-value">

 <!ENTITY tecweb “Tecnologias Web">

o Externa:

 <!ENTITY entity-name SYSTEM "uri">

<!ENTITY entity-name SYSTEM "entidades.dtd"> ● Utilização:

<disciplina cargaHoraria=“60”> &tecweb;

(21)

Criando Entidades

(22)

Criando Entidades

(23)

Criando Entidades

● Com o Internet Explorer você pode validar seu XML em

relação a um DTD.

● Se você tentar abrir um documento XML, o parser XML

pode gerar um erro.

o Ao acessar o objeto parseError, você pode recuperar o código de erro, o texto do erro, ou até mesmo a linha que causou o erro.

● Ou então você pode acessar:

(24)
(25)

Criando Entidades

● Nota: O método load () é usado para arquivos, enquanto

(26)
(27)
(28)

Referências

● Recommended list of DTDs

o http://www.w3.org/QA/2002/04/valid-dtd-list.htmlTutorial de XML

● DTD Tutorial

Referências

Documentos relacionados

497, parágrafo único, do CPC, a fim de fazer cessar o ilícito cometido, determinando-se a SUSPENSÃO dos efeitos da Portaria nº 547, de 07 de agosto de 2020, de lavra do Ministro

Para saber como o amostrador Headspace 7697A da Agilent pode ajudar a alcançar os resultados esperados, visite www.agilent.com/chem/7697A Abund.. Nenhum outro software

apresentar documentação falsa para o certame, ensejar o retardamento da execução de seu objeto, não mantiver a proposta, não celebrar o contrato ou instrumento equivalente, falhar

A taxa de regeneração natural relativa para toda floresta foi menor que zero (-31,3%), confirmando a inferioridade de ingresso em relação à saída de árvores do sistema no período

A Administração da Companhia é responsável pela elaboração e adequada apresentação dessas demonstrações contábeis de acordo com as práticas contábeis

Serviço temporariamente indisponível Parâmetro inacessível devido ao atual estado da aplicação do dispositivo.

A menor proporção de uso do SUS para exames preventivos e de diagnóstico precoce, em especial os cânceres de mama e próstata, sugere baixa cobertura populacional que pode

Como irá trabalhar com JavaServer Faces voltado para um container compatível com a tecnologia Java EE 5, você deverá baixar a versão JSF 1.2, a utilizada nesse tutorial.. Ao baixar