SlideShare a Scribd company logo
1 of 32
Download to read offline
D O C U M E N T T Y P E D E F I N I T I O N
DTD
Objectivos
 O DTD define a estrutura do documento
 Com o DTD as aplicações podem verificar se os
documentos estão correctos.
Declarações
 Um DTD é constituído por um conjunto de
declarações:
 ELEMENT para anotações de elementos
 ATTLIST definição de atributos
 ENTITY definição de entidades
 NOTATION definição de dados e formatos
 PCDATA
 CDATA
Declarações
 Elementos
 Elementos são os principais blocos.
 Atributos
 Atributos fornecem informação adicional sobre elementos.
Atributos são sempre colocados entre aspas. Por exemplo <img
src="computer.gif" />
Declarações
 Entidades
 Alguns caracteres por terem significado especial e precisam de
uma forma especial de representação, como por exemplo o
carácter "&nbsp;" que representa "no-breaking-space" no
HTML.
 &lt; < less than(menor do que)
 &gt; > greater than(maior do que)
 &amp; & ampersand
 &apos; ' apostrophe(apóstrofe)
 &quot; " quotation mark(aspas)
Declarações
 PCDATA
 PCDATA significa Parsed Character DATA.
 Entenda “Character Data” como o texto compreendido entre as
“tags” de um elemento.
 No PCDATA o texto será analisado sintacticamente e se houver
entidades estas serão expandidas. As “tags” dentro do texto, se
houver, serão processadas
 CDATA
 CDATA significa Character DATA. No CDATA o texto não
será analisado sintacticamente.
Declarações
 ( ... ) Delimita o grupo
 A Deve ter A somente
 A+ Deve ter 1 ou mais A
 A? Deve ter ZERO ou UM A
 A* Pode ter ZERO ou mais A
 +(A) Pode ter A
 -(A) Não deve ter A
 A | B Pode ter um ou outro
 A , B Deve ter um e outro e a ordem é importante
 A & B Ambos devem existir, e a ordem não é
importante
Elementos
 A declaração ELEMENT serve para declarar
elementos, com a seguinte sintaxe:
<!ELEMENT element-name category>
or
<!ELEMENT element-name (element-content)>
 Elementos vazios
 Elementos vazios são declarados com a palavra reservada
EMPTY:
<!ELEMENT element-name EMPTY>
Ex: <!ELEMENT br EMPTY>
Elementos
 Elementos com PCDATA
 Elementos com apenas dados que serão analisados são
declarados com o parâmetro #PCDATA dentro do parenteses:
<!ELEMENT element-name (#PCDATA)>
 Elementos com conteúdo
 Elementos declarados com a palavra reservada ANY, poderá
conter qualquer combinação de dados.
<!ELEMENT element-name ANY>
Elementos
 Elementos com filhos (sequências)
 Elementos com um ou mais filhos são declarados com o nome
dos elementos filhos.
<!ELEMENT element-name (child1)>
ou
<!ELEMENT element-name (child1,child2,...)>
Elementos
 Declarando apenas uma ocorrência de um elemento
<!ELEMENT element-name (child-name)>
 Declarando pelo menos uma ocorrência do elemento.
<!ELEMENT element-name (child-name+)>
 Declarando zero ou mais ocorrências de um
Elemento
<!ELEMENT element-name (child-name*)>
 Declarando zero ou uma ocorrências de um
Elemento
<!ELEMENT element-name (child-name?)>
Declarando um ou outro conteúdo
<!ELEMENT element-name (child-name-1 | child-name-2)>
Elementos
 O elemento A tem zero ou mais elementos B seguidos de
um único elemento C:
<!ELEMENT A (B* , C)>
 O elemento A tem um ou mais elementos B seguidos de
um único elemento C:
<!ELEMENT A (B+ , C)>
 O elemento A tem o elemento A opcional:
<!ELEMENT A (A? , B)>
 O elemento A pode conter qualquer combinação de texto
e do elemento B
<!ELEMENT A (#PCDATA | B )*>
Elementos
 Outras formas de declarar os elementos que se
encontra em várias especificações:
<!ELEMENT element-name - - (element-child)+>
 O elemento-name deve ser uma tag de início <element.name>
e uma tag de fecho </element-name>
<!ELEMENT element-name – O EMPTY>
 O elemento-name deve ser uma tag de início <element.name>
e tag de fecho </element-name> é opcional.
 Com a palavra-chave EMPTY reforça a ideia que o bloco não
teve ter conteúdo!
Atributos
 Servem para atribuir pares nome-valor com elementos.
 Atributos só podem aparecer em etiquetas de início e em
etiquetas vazias.
 A declaração de atributos inicia com o nome ATTLIST,
seguido do nome do elemento e da lista de seus atributos.
<!ATTLIST element-name attribute-name attribute-type
default-value>
 DTD Exemplo:
<!ATTLIST A type CDATA "check">
 XML Exemplo:
<A type="check" />
Atributos
 O tipo do atributo pode ser:
 CDATA O valor é “character data”
 (en1|en2|..) O valor deve ser de uma lista enumerada
 ID O valor é um único “id”
 IDREF O valor é o id de um outro elemento
 IDREFS O valor é uma lista de outros “ids”
 NMTOKEN O valor é um nome válido
 NMTOKENS O valor é uma lista de nomes válidos
 ENTITY O valor é uma entidade
 Entidades O valor é uma lista de Entidades
 NOTATION O valor é o nome de uma “notation”
Atributos
 O default-value pode ser um dos seguintes:
 value O valor default do atributo
 #REQUIRED O atributo é obrigatório
 #IMPLIED O atributo é não obrigatório
 #FIXED value O valor do atributo é fixo
 EX:
<!ELEMENT A EMPTY>
<!ATTLIST A width CDATA "0">
<A width="100" />
No exemplo acima, o elemento “A" é definido para ser um
elemento vazio com um atributo "width”. Se nenhum
“width” for definido o seu valor default será “0”.
Atributos
<!ELEMENT A(#PCDATA)>
<!ATTLIST attributes
aaa CDATA #REQUIRED
bbb CDATA #IMPLIED>
 A ordem dos atributos não importa
 Atributos CDATA: permite qualquer caracter de acordo
com as regras de boa formação
 #REQUIRED: obrigatório
 #IMPLIED: Opcional
Atributos
 #REQUIRED
 O #REQUIRED é usado se não há um valor default a ser
definido e deseja-se forçar a presença do atributo.
<!ATTLIST element-name attribute-name attribute-
type #REQUIRED>
 Exemplo:
<!ATTLIST person number CDATA #REQUIRED>
 Valido: <person number="5677" />
 Invalido: <person />
Atributos
 #FIXED
 Usar #FIXED quando o atributo deve ter valores fixado que
não pode ser mudados pelo autor
<!ATTLIST element-name attribute-name attribute-
type #FIXED "value">
 Exemplo
<!ATTLIST sender company CDATA #FIXED
"Microsoft">
 Válido : <sender company="Microsoft" />
 Inválido: <sender company="IBM" />
Atributos
 #IMPLIED
 Usar #IMPLIED quando não se deseja forçar a existência do
atributo e não tem um valor default definido.
<!ATTLIST element-name attribute-name attribute-
type #IMPLIED>
 Exemplo
<!ATTLIST contact fax CDATA #IMPLIED>
 Valido: <contact fax="555-667788" />
 Valido: <contact />
Atributos
 Enumerated Attribute Values
 Usar “enumerated attribute” quando é desejado que o atributo
seja um entre vários valores definidos.
<!ATTLIST element-name attribute-name (en1|en2|..)
default-value>
 Exemplo:
<!ATTLIST payment type (check|cash) "cash">
<payment type="check" />
<payment type="cash" />
Atributos
 NMTOKEN: letras, dígitos, ponto [ . ] , hífen [ - ], underline [ _ ] dois
pontos [ : ] .
 NMTOKENS: NMTOKEN mais o espaço em branco: um ou mais
espaços em branco, return, fim de linha e tabulações.
<!ELEMENT attributes (#PCDATA)>
<!ATTLIST attributes
aaa CDATA #IMPLIED
bbb NMTOKEN #REQUIRED
ccc NMTOKENS #REQUIRED>
Atributos
 Tipo ID
 Um atributo do tipo ID pode conter apenas caracteres permitidos pelo tipo NMTOKEN e devem
iniciar por uma letra.
 Nenhum tipo de elemento deve conter mais de um atributo do tipo ID
 O valor de um atributo do tipo ID deve ser único dentre todos atributos ID das instâncias do
elemento.
<!ELEMENT X(A+ , B+ , C+)>
<!ELEMENT A (#PCDATA)>
<!ELEMENT B (#PCDATA)>
<!ELEMENT C (#PCDATA)>
<!ATTLIST A
id ID #REQUIRED>
<!ATTLIST B
code ID #IMPLIED
list NMTOKEN #IMPLIED>
<!ATTLIST C
X ID #REQUIRED
Y NMTOKEN #IMPLIED>
Atributos
 IDREF
 Um atributo IDREF deve referencia algum ID existente no documento. IDREFS referencia um
sequência de Ids
<!ELEMENT X (A+ , B+, C+, D+)>
<!ELEMENT A (#PCDATA)>
<!ELEMENT B (#PCDATA)>
<!ELEMENT C (#PCDATA)>
<!ELEMENT D (#PCDATA)>
<!ATTLIST A
mark ID #REQUIRED>
<!ATTLIST B
id ID #REQUIRED>
<!ATTLIST C
ref IDREF #REQUIRED>
<!ATTLIST D
ref IDREFS #REQUIRED>
Atributos
<X>
<A mark="a1"/>
<A mark="a2"/>
<A mark="a3"/>
<B id="b001" />
<C ref="a3" />
<D ref="a1 b001 a2" />
</X>
Atributos
 Especificando valores de atributo permitidos
<!ELEMENT X(A+, B+)>
<!ELEMENT A (#PCDATA)>
<!ELEMENT B (#PCDATA)>
<!ATTLIST A
true ( yes | no ) #REQUIRED>
<!ATTLIST B
month (1|2|3|4|5|6|7|8|9|10|11|12) #IMPLIED>
Atributos
 Valores permitidos
<X>
<A true="yes"/>
<A true="no"/>
<A true="yes"/>
<B month="8" />
<B month="2" />
<B month="12" />
</X>
 Valores default
<!ATTLIST A
true ( yes | no ) "yes">
Atributos
 Elemento só com atributos, sem texto (Vazio)
<!ELEMENT A EMPTY>
Exemplo:
<X>
<A true="yes"/>
<A true="no"></A>
</X>
Entidades
 Entidades são variáveis usadas para definir atalhos
para textos padrão ou caracteres especiais.
 “Entity references” são referências a Entidades.
 Entidades podem ser declaradas internamente ou
externamente ou parametrizadas.
 Nota: Uma entidade possui três partes: o
ampersand (&), o nome e um ponto
vírgula(;).
Entidades
 Entidades Declaradas Internamente
<!ENTITY entity-name "entity-value">
<!ENTITY writer "Donald Duck.">
<!ENTITY copyright "Copyright W3Schools.">
<author>&writer;&copyright;</author>
 Entidades Declaradas Externamente
<!ENTITY entity-name SYSTEM "URI/URL">
<!ENTITY writer SYSTEM "http://www.w3schools.com/Entidades.dtd">
<!ENTITY copyright SYSTEM "http://www.w3schools.com/Entidades.dtd">
<author>&writer;&copyright;</author>
Entidades
 Entidades parametrizadas
 As entidades de parâmetro ou parametrizadas são válidas
somente em DTDs, funcionam como abreviaturas de
declarações e são declaradas na DTD por meio do símbolo %
precedido ao nome da entidade.
 Por exemplo:
<!ENTITY % livro “(titulo, autor, editora, preco)”>
<!ELEMENT exemplo %livro;>
 Esse exemplo determina que um elemento livro pode ter somente
filhos do tipo titulo, autor, editora e preço.
Notações
 Descrevem o formato dos objectos de dados
 São normalmente usadas para descrever o formato dos objectos
binários, como arquivos gráficos
 Mecanismo para associar entidades unparsed ou não analisáveis
com a ferramenta apropriada
 Em caso de uma imagem, pode ser um visualizador
<!NOTATION GIF89a PUBLIC
“-/CompuServe//NOTATION Graphics Interchange Format 89a//EN”
“c:windowskodakprv.exe”>
 Pode-se usar associações de arquivos
<!NOTATION GIF89a SYSTEM “GIF”>
<!NOTATION GIF89a SYSTEM “image/gif”>

More Related Content

Viewers also liked

Rania Rasmy Resume
Rania Rasmy ResumeRania Rasmy Resume
Rania Rasmy ResumeRania Rasmy
 
Nokia research center
Nokia research center Nokia research center
Nokia research center Marcos Ruiz
 
Donor Driven AG Strategies
Donor Driven AG StrategiesDonor Driven AG Strategies
Donor Driven AG StrategiesMeredith Blair
 
OpenAIRE - apresentação nas Jornadas da FCCN 2012 (relatório 2011 RCAAP)
OpenAIRE - apresentação nas Jornadas da FCCN 2012 (relatório 2011 RCAAP)OpenAIRE - apresentação nas Jornadas da FCCN 2012 (relatório 2011 RCAAP)
OpenAIRE - apresentação nas Jornadas da FCCN 2012 (relatório 2011 RCAAP)Pedro Príncipe
 
Tomo-Mobile During Install
Tomo-Mobile During InstallTomo-Mobile During Install
Tomo-Mobile During InstallDavid Brooker
 
Informe tecnico sthefani y karen ramos
Informe tecnico sthefani y karen ramosInforme tecnico sthefani y karen ramos
Informe tecnico sthefani y karen ramosJenny Osorio Rodriguez
 
Thesis Succes in je zaak! (samenvatting)
Thesis Succes in je zaak! (samenvatting)Thesis Succes in je zaak! (samenvatting)
Thesis Succes in je zaak! (samenvatting)Dave Beker
 
Bibliotecas, Web e Literacia: construir recursos e serviços em comunidade
Bibliotecas, Web e Literacia: construir recursos e serviços em comunidadeBibliotecas, Web e Literacia: construir recursos e serviços em comunidade
Bibliotecas, Web e Literacia: construir recursos e serviços em comunidadePedro Príncipe
 
SILC Testimonials 092015
SILC Testimonials 092015SILC Testimonials 092015
SILC Testimonials 092015Victoria Ross
 
Inhibitor Table
Inhibitor TableInhibitor Table
Inhibitor TableJacob Yu
 
OAK COOKBOOK RECIPES small
OAK COOKBOOK RECIPES smallOAK COOKBOOK RECIPES small
OAK COOKBOOK RECIPES smallHelena Buchmann
 

Viewers also liked (20)

Programming 1 full
Programming 1 fullProgramming 1 full
Programming 1 full
 
PM_46 FINAL 2-1
PM_46 FINAL 2-1PM_46 FINAL 2-1
PM_46 FINAL 2-1
 
Rania Rasmy Resume
Rania Rasmy ResumeRania Rasmy Resume
Rania Rasmy Resume
 
Nokia research center
Nokia research center Nokia research center
Nokia research center
 
Final transcripts
Final transcriptsFinal transcripts
Final transcripts
 
Presentacion Nubefone-USA
Presentacion Nubefone-USAPresentacion Nubefone-USA
Presentacion Nubefone-USA
 
Donor Driven AG Strategies
Donor Driven AG StrategiesDonor Driven AG Strategies
Donor Driven AG Strategies
 
OpenAIRE - apresentação nas Jornadas da FCCN 2012 (relatório 2011 RCAAP)
OpenAIRE - apresentação nas Jornadas da FCCN 2012 (relatório 2011 RCAAP)OpenAIRE - apresentação nas Jornadas da FCCN 2012 (relatório 2011 RCAAP)
OpenAIRE - apresentação nas Jornadas da FCCN 2012 (relatório 2011 RCAAP)
 
yourprezi
yourpreziyourprezi
yourprezi
 
cgc-ug-pg-brochure15
cgc-ug-pg-brochure15cgc-ug-pg-brochure15
cgc-ug-pg-brochure15
 
Tomo-Mobile During Install
Tomo-Mobile During InstallTomo-Mobile During Install
Tomo-Mobile During Install
 
party pad aus
party pad ausparty pad aus
party pad aus
 
Informe tecnico sthefani y karen ramos
Informe tecnico sthefani y karen ramosInforme tecnico sthefani y karen ramos
Informe tecnico sthefani y karen ramos
 
tomas bjornsson
tomas bjornssontomas bjornsson
tomas bjornsson
 
Thesis Succes in je zaak! (samenvatting)
Thesis Succes in je zaak! (samenvatting)Thesis Succes in je zaak! (samenvatting)
Thesis Succes in je zaak! (samenvatting)
 
Bibliotecas, Web e Literacia: construir recursos e serviços em comunidade
Bibliotecas, Web e Literacia: construir recursos e serviços em comunidadeBibliotecas, Web e Literacia: construir recursos e serviços em comunidade
Bibliotecas, Web e Literacia: construir recursos e serviços em comunidade
 
SILC Testimonials 092015
SILC Testimonials 092015SILC Testimonials 092015
SILC Testimonials 092015
 
Inhibitor Table
Inhibitor TableInhibitor Table
Inhibitor Table
 
OAK COOKBOOK RECIPES small
OAK COOKBOOK RECIPES smallOAK COOKBOOK RECIPES small
OAK COOKBOOK RECIPES small
 
Rev. Marinha_Artig.
Rev. Marinha_Artig.Rev. Marinha_Artig.
Rev. Marinha_Artig.
 

Similar to DTD Definição e Declarações

3 - Modelo Entidade Relacionamento
3 - Modelo Entidade Relacionamento3 - Modelo Entidade Relacionamento
3 - Modelo Entidade RelacionamentoCris Fidelix
 
Unidade4.1 Oracle Or
Unidade4.1 Oracle OrUnidade4.1 Oracle Or
Unidade4.1 Oracle OrUFU
 
Aula II - Criação de sites I
Aula II - Criação de sites IAula II - Criação de sites I
Aula II - Criação de sites Iinfo_cimol
 
Aplicando Transformação em XML usando XSLT e XSL-FO - 1
Aplicando Transformação em XML usando XSLT e XSL-FO - 1Aplicando Transformação em XML usando XSLT e XSL-FO - 1
Aplicando Transformação em XML usando XSLT e XSL-FO - 1Vivian Motti
 
EXTREME LDAP - GABRIEL STEIN
EXTREME LDAP - GABRIEL STEINEXTREME LDAP - GABRIEL STEIN
EXTREME LDAP - GABRIEL STEINTchelinux
 
XML e Banco de Dados XML Nativo
XML e Banco de Dados XML NativoXML e Banco de Dados XML Nativo
XML e Banco de Dados XML NativoGPrimola
 

Similar to DTD Definição e Declarações (15)

Aula de DTD Definição do Tipo de Documento
Aula de DTD Definição do Tipo de DocumentoAula de DTD Definição do Tipo de Documento
Aula de DTD Definição do Tipo de Documento
 
3 - Modelo Entidade Relacionamento
3 - Modelo Entidade Relacionamento3 - Modelo Entidade Relacionamento
3 - Modelo Entidade Relacionamento
 
Introdução HTML_CSS.pptx
Introdução  HTML_CSS.pptxIntrodução  HTML_CSS.pptx
Introdução HTML_CSS.pptx
 
Aprenda jQuery 1.3
Aprenda jQuery 1.3Aprenda jQuery 1.3
Aprenda jQuery 1.3
 
Unidade4.1 Oracle Or
Unidade4.1 Oracle OrUnidade4.1 Oracle Or
Unidade4.1 Oracle Or
 
Banco de Dados XML
Banco de Dados XMLBanco de Dados XML
Banco de Dados XML
 
Aula II - Criação de sites I
Aula II - Criação de sites IAula II - Criação de sites I
Aula II - Criação de sites I
 
Aula 7 pc - estrutura
Aula 7   pc - estruturaAula 7   pc - estrutura
Aula 7 pc - estrutura
 
O que é html
O que é htmlO que é html
O que é html
 
Beagajs
BeagajsBeagajs
Beagajs
 
Aplicando Transformação em XML usando XSLT e XSL-FO - 1
Aplicando Transformação em XML usando XSLT e XSL-FO - 1Aplicando Transformação em XML usando XSLT e XSL-FO - 1
Aplicando Transformação em XML usando XSLT e XSL-FO - 1
 
EXTREME LDAP - GABRIEL STEIN
EXTREME LDAP - GABRIEL STEINEXTREME LDAP - GABRIEL STEIN
EXTREME LDAP - GABRIEL STEIN
 
Aula de XHTML
Aula de XHTMLAula de XHTML
Aula de XHTML
 
XML e Banco de Dados XML Nativo
XML e Banco de Dados XML NativoXML e Banco de Dados XML Nativo
XML e Banco de Dados XML Nativo
 
XHTML Básico
XHTML BásicoXHTML Básico
XHTML Básico
 

More from Arlindo Santos

Marketing Digital: tendências e estratégias
Marketing Digital: tendências e estratégiasMarketing Digital: tendências e estratégias
Marketing Digital: tendências e estratégiasArlindo Santos
 
Temas dos trabalhos práticos
Temas dos trabalhos práticosTemas dos trabalhos práticos
Temas dos trabalhos práticosArlindo Santos
 
Documento sobre o curso técnico superior profissional de Comunicação Digital
Documento sobre o curso técnico superior profissional de Comunicação DigitalDocumento sobre o curso técnico superior profissional de Comunicação Digital
Documento sobre o curso técnico superior profissional de Comunicação DigitalArlindo Santos
 
Conhecer os clientes e influenciadores
Conhecer os clientes e influenciadoresConhecer os clientes e influenciadores
Conhecer os clientes e influenciadoresArlindo Santos
 
Workshop sobre o Prezi na Escola Secundária de Valpaços
Workshop sobre o Prezi na Escola Secundária de ValpaçosWorkshop sobre o Prezi na Escola Secundária de Valpaços
Workshop sobre o Prezi na Escola Secundária de ValpaçosArlindo Santos
 
Gestão web sites - visão para além das questões técnicas
Gestão web sites  - visão para além das questões técnicasGestão web sites  - visão para além das questões técnicas
Gestão web sites - visão para além das questões técnicasArlindo Santos
 
Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPArlindo Santos
 
Frameworks de desenvolvimento web
Frameworks de desenvolvimento webFrameworks de desenvolvimento web
Frameworks de desenvolvimento webArlindo Santos
 
Motivação para a multimédia
Motivação para a multimédiaMotivação para a multimédia
Motivação para a multimédiaArlindo Santos
 
Guia da Gestão de Projectos Web
Guia da Gestão de Projectos WebGuia da Gestão de Projectos Web
Guia da Gestão de Projectos WebArlindo Santos
 

More from Arlindo Santos (12)

Marketing Digital: tendências e estratégias
Marketing Digital: tendências e estratégiasMarketing Digital: tendências e estratégias
Marketing Digital: tendências e estratégias
 
Mobile marketing
Mobile marketingMobile marketing
Mobile marketing
 
Temas dos trabalhos práticos
Temas dos trabalhos práticosTemas dos trabalhos práticos
Temas dos trabalhos práticos
 
Documento sobre o curso técnico superior profissional de Comunicação Digital
Documento sobre o curso técnico superior profissional de Comunicação DigitalDocumento sobre o curso técnico superior profissional de Comunicação Digital
Documento sobre o curso técnico superior profissional de Comunicação Digital
 
Conhecer os clientes e influenciadores
Conhecer os clientes e influenciadoresConhecer os clientes e influenciadores
Conhecer os clientes e influenciadores
 
Workshop sobre o Prezi na Escola Secundária de Valpaços
Workshop sobre o Prezi na Escola Secundária de ValpaçosWorkshop sobre o Prezi na Escola Secundária de Valpaços
Workshop sobre o Prezi na Escola Secundária de Valpaços
 
Gestão web sites - visão para além das questões técnicas
Gestão web sites  - visão para além das questões técnicasGestão web sites  - visão para além das questões técnicas
Gestão web sites - visão para além das questões técnicas
 
Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHP
 
Frameworks de desenvolvimento web
Frameworks de desenvolvimento webFrameworks de desenvolvimento web
Frameworks de desenvolvimento web
 
Motivação para a multimédia
Motivação para a multimédiaMotivação para a multimédia
Motivação para a multimédia
 
Arduino
ArduinoArduino
Arduino
 
Guia da Gestão de Projectos Web
Guia da Gestão de Projectos WebGuia da Gestão de Projectos Web
Guia da Gestão de Projectos Web
 

Recently uploaded

Recurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasRecurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasCasa Ciências
 
A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.silves15
 
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxSlides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxLuizHenriquedeAlmeid6
 
Universidade Empreendedora como uma Plataforma para o Bem comum
Universidade Empreendedora como uma Plataforma para o Bem comumUniversidade Empreendedora como uma Plataforma para o Bem comum
Universidade Empreendedora como uma Plataforma para o Bem comumPatrícia de Sá Freire, PhD. Eng.
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasRosalina Simão Nunes
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxLuizHenriquedeAlmeid6
 
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VERELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VERDeiciane Chaves
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxLuizHenriquedeAlmeid6
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManuais Formação
 
Governo Provisório Era Vargas 1930-1934 Brasil
Governo Provisório Era Vargas 1930-1934 BrasilGoverno Provisório Era Vargas 1930-1934 Brasil
Governo Provisório Era Vargas 1930-1934 Brasillucasp132400
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Mary Alvarenga
 
Slides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSlides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSilvana Silva
 
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -Aline Santana
 
Programa de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasPrograma de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasCassio Meira Jr.
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasCassio Meira Jr.
 
Simulado 2 Etapa - 2024 Proximo Passo.pdf
Simulado 2 Etapa  - 2024 Proximo Passo.pdfSimulado 2 Etapa  - 2024 Proximo Passo.pdf
Simulado 2 Etapa - 2024 Proximo Passo.pdfEditoraEnovus
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfAdrianaCunha84
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavrasMary Alvarenga
 

Recently uploaded (20)

Recurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasRecurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de Partículas
 
Em tempo de Quaresma .
Em tempo de Quaresma                            .Em tempo de Quaresma                            .
Em tempo de Quaresma .
 
CINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULACINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULA
 
A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.
 
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxSlides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
 
Universidade Empreendedora como uma Plataforma para o Bem comum
Universidade Empreendedora como uma Plataforma para o Bem comumUniversidade Empreendedora como uma Plataforma para o Bem comum
Universidade Empreendedora como uma Plataforma para o Bem comum
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
 
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VERELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envio
 
Governo Provisório Era Vargas 1930-1934 Brasil
Governo Provisório Era Vargas 1930-1934 BrasilGoverno Provisório Era Vargas 1930-1934 Brasil
Governo Provisório Era Vargas 1930-1934 Brasil
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
 
Slides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSlides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptx
 
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -
 
Programa de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasPrograma de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades Motoras
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e Específicas
 
Simulado 2 Etapa - 2024 Proximo Passo.pdf
Simulado 2 Etapa  - 2024 Proximo Passo.pdfSimulado 2 Etapa  - 2024 Proximo Passo.pdf
Simulado 2 Etapa - 2024 Proximo Passo.pdf
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdf
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavras
 

DTD Definição e Declarações

  • 1. D O C U M E N T T Y P E D E F I N I T I O N DTD
  • 2. Objectivos  O DTD define a estrutura do documento  Com o DTD as aplicações podem verificar se os documentos estão correctos.
  • 3. Declarações  Um DTD é constituído por um conjunto de declarações:  ELEMENT para anotações de elementos  ATTLIST definição de atributos  ENTITY definição de entidades  NOTATION definição de dados e formatos  PCDATA  CDATA
  • 4. Declarações  Elementos  Elementos são os principais blocos.  Atributos  Atributos fornecem informação adicional sobre elementos. Atributos são sempre colocados entre aspas. Por exemplo <img src="computer.gif" />
  • 5. Declarações  Entidades  Alguns caracteres por terem significado especial e precisam de uma forma especial de representação, como por exemplo o carácter "&nbsp;" que representa "no-breaking-space" no HTML.  &lt; < less than(menor do que)  &gt; > greater than(maior do que)  &amp; & ampersand  &apos; ' apostrophe(apóstrofe)  &quot; " quotation mark(aspas)
  • 6. Declarações  PCDATA  PCDATA significa Parsed Character DATA.  Entenda “Character Data” como o texto compreendido entre as “tags” de um elemento.  No PCDATA o texto será analisado sintacticamente e se houver entidades estas serão expandidas. As “tags” dentro do texto, se houver, serão processadas  CDATA  CDATA significa Character DATA. No CDATA o texto não será analisado sintacticamente.
  • 7. Declarações  ( ... ) Delimita o grupo  A Deve ter A somente  A+ Deve ter 1 ou mais A  A? Deve ter ZERO ou UM A  A* Pode ter ZERO ou mais A  +(A) Pode ter A  -(A) Não deve ter A  A | B Pode ter um ou outro  A , B Deve ter um e outro e a ordem é importante  A & B Ambos devem existir, e a ordem não é importante
  • 8. Elementos  A declaração ELEMENT serve para declarar elementos, com a seguinte sintaxe: <!ELEMENT element-name category> or <!ELEMENT element-name (element-content)>  Elementos vazios  Elementos vazios são declarados com a palavra reservada EMPTY: <!ELEMENT element-name EMPTY> Ex: <!ELEMENT br EMPTY>
  • 9. Elementos  Elementos com PCDATA  Elementos com apenas dados que serão analisados são declarados com o parâmetro #PCDATA dentro do parenteses: <!ELEMENT element-name (#PCDATA)>  Elementos com conteúdo  Elementos declarados com a palavra reservada ANY, poderá conter qualquer combinação de dados. <!ELEMENT element-name ANY>
  • 10. Elementos  Elementos com filhos (sequências)  Elementos com um ou mais filhos são declarados com o nome dos elementos filhos. <!ELEMENT element-name (child1)> ou <!ELEMENT element-name (child1,child2,...)>
  • 11. Elementos  Declarando apenas uma ocorrência de um elemento <!ELEMENT element-name (child-name)>  Declarando pelo menos uma ocorrência do elemento. <!ELEMENT element-name (child-name+)>  Declarando zero ou mais ocorrências de um Elemento <!ELEMENT element-name (child-name*)>  Declarando zero ou uma ocorrências de um Elemento <!ELEMENT element-name (child-name?)> Declarando um ou outro conteúdo <!ELEMENT element-name (child-name-1 | child-name-2)>
  • 12. Elementos  O elemento A tem zero ou mais elementos B seguidos de um único elemento C: <!ELEMENT A (B* , C)>  O elemento A tem um ou mais elementos B seguidos de um único elemento C: <!ELEMENT A (B+ , C)>  O elemento A tem o elemento A opcional: <!ELEMENT A (A? , B)>  O elemento A pode conter qualquer combinação de texto e do elemento B <!ELEMENT A (#PCDATA | B )*>
  • 13. Elementos  Outras formas de declarar os elementos que se encontra em várias especificações: <!ELEMENT element-name - - (element-child)+>  O elemento-name deve ser uma tag de início <element.name> e uma tag de fecho </element-name> <!ELEMENT element-name – O EMPTY>  O elemento-name deve ser uma tag de início <element.name> e tag de fecho </element-name> é opcional.  Com a palavra-chave EMPTY reforça a ideia que o bloco não teve ter conteúdo!
  • 14. Atributos  Servem para atribuir pares nome-valor com elementos.  Atributos só podem aparecer em etiquetas de início e em etiquetas vazias.  A declaração de atributos inicia com o nome ATTLIST, seguido do nome do elemento e da lista de seus atributos. <!ATTLIST element-name attribute-name attribute-type default-value>  DTD Exemplo: <!ATTLIST A type CDATA "check">  XML Exemplo: <A type="check" />
  • 15. Atributos  O tipo do atributo pode ser:  CDATA O valor é “character data”  (en1|en2|..) O valor deve ser de uma lista enumerada  ID O valor é um único “id”  IDREF O valor é o id de um outro elemento  IDREFS O valor é uma lista de outros “ids”  NMTOKEN O valor é um nome válido  NMTOKENS O valor é uma lista de nomes válidos  ENTITY O valor é uma entidade  Entidades O valor é uma lista de Entidades  NOTATION O valor é o nome de uma “notation”
  • 16. Atributos  O default-value pode ser um dos seguintes:  value O valor default do atributo  #REQUIRED O atributo é obrigatório  #IMPLIED O atributo é não obrigatório  #FIXED value O valor do atributo é fixo  EX: <!ELEMENT A EMPTY> <!ATTLIST A width CDATA "0"> <A width="100" /> No exemplo acima, o elemento “A" é definido para ser um elemento vazio com um atributo "width”. Se nenhum “width” for definido o seu valor default será “0”.
  • 17. Atributos <!ELEMENT A(#PCDATA)> <!ATTLIST attributes aaa CDATA #REQUIRED bbb CDATA #IMPLIED>  A ordem dos atributos não importa  Atributos CDATA: permite qualquer caracter de acordo com as regras de boa formação  #REQUIRED: obrigatório  #IMPLIED: Opcional
  • 18. Atributos  #REQUIRED  O #REQUIRED é usado se não há um valor default a ser definido e deseja-se forçar a presença do atributo. <!ATTLIST element-name attribute-name attribute- type #REQUIRED>  Exemplo: <!ATTLIST person number CDATA #REQUIRED>  Valido: <person number="5677" />  Invalido: <person />
  • 19. Atributos  #FIXED  Usar #FIXED quando o atributo deve ter valores fixado que não pode ser mudados pelo autor <!ATTLIST element-name attribute-name attribute- type #FIXED "value">  Exemplo <!ATTLIST sender company CDATA #FIXED "Microsoft">  Válido : <sender company="Microsoft" />  Inválido: <sender company="IBM" />
  • 20. Atributos  #IMPLIED  Usar #IMPLIED quando não se deseja forçar a existência do atributo e não tem um valor default definido. <!ATTLIST element-name attribute-name attribute- type #IMPLIED>  Exemplo <!ATTLIST contact fax CDATA #IMPLIED>  Valido: <contact fax="555-667788" />  Valido: <contact />
  • 21. Atributos  Enumerated Attribute Values  Usar “enumerated attribute” quando é desejado que o atributo seja um entre vários valores definidos. <!ATTLIST element-name attribute-name (en1|en2|..) default-value>  Exemplo: <!ATTLIST payment type (check|cash) "cash"> <payment type="check" /> <payment type="cash" />
  • 22. Atributos  NMTOKEN: letras, dígitos, ponto [ . ] , hífen [ - ], underline [ _ ] dois pontos [ : ] .  NMTOKENS: NMTOKEN mais o espaço em branco: um ou mais espaços em branco, return, fim de linha e tabulações. <!ELEMENT attributes (#PCDATA)> <!ATTLIST attributes aaa CDATA #IMPLIED bbb NMTOKEN #REQUIRED ccc NMTOKENS #REQUIRED>
  • 23. Atributos  Tipo ID  Um atributo do tipo ID pode conter apenas caracteres permitidos pelo tipo NMTOKEN e devem iniciar por uma letra.  Nenhum tipo de elemento deve conter mais de um atributo do tipo ID  O valor de um atributo do tipo ID deve ser único dentre todos atributos ID das instâncias do elemento. <!ELEMENT X(A+ , B+ , C+)> <!ELEMENT A (#PCDATA)> <!ELEMENT B (#PCDATA)> <!ELEMENT C (#PCDATA)> <!ATTLIST A id ID #REQUIRED> <!ATTLIST B code ID #IMPLIED list NMTOKEN #IMPLIED> <!ATTLIST C X ID #REQUIRED Y NMTOKEN #IMPLIED>
  • 24. Atributos  IDREF  Um atributo IDREF deve referencia algum ID existente no documento. IDREFS referencia um sequência de Ids <!ELEMENT X (A+ , B+, C+, D+)> <!ELEMENT A (#PCDATA)> <!ELEMENT B (#PCDATA)> <!ELEMENT C (#PCDATA)> <!ELEMENT D (#PCDATA)> <!ATTLIST A mark ID #REQUIRED> <!ATTLIST B id ID #REQUIRED> <!ATTLIST C ref IDREF #REQUIRED> <!ATTLIST D ref IDREFS #REQUIRED>
  • 25. Atributos <X> <A mark="a1"/> <A mark="a2"/> <A mark="a3"/> <B id="b001" /> <C ref="a3" /> <D ref="a1 b001 a2" /> </X>
  • 26. Atributos  Especificando valores de atributo permitidos <!ELEMENT X(A+, B+)> <!ELEMENT A (#PCDATA)> <!ELEMENT B (#PCDATA)> <!ATTLIST A true ( yes | no ) #REQUIRED> <!ATTLIST B month (1|2|3|4|5|6|7|8|9|10|11|12) #IMPLIED>
  • 27. Atributos  Valores permitidos <X> <A true="yes"/> <A true="no"/> <A true="yes"/> <B month="8" /> <B month="2" /> <B month="12" /> </X>  Valores default <!ATTLIST A true ( yes | no ) "yes">
  • 28. Atributos  Elemento só com atributos, sem texto (Vazio) <!ELEMENT A EMPTY> Exemplo: <X> <A true="yes"/> <A true="no"></A> </X>
  • 29. Entidades  Entidades são variáveis usadas para definir atalhos para textos padrão ou caracteres especiais.  “Entity references” são referências a Entidades.  Entidades podem ser declaradas internamente ou externamente ou parametrizadas.  Nota: Uma entidade possui três partes: o ampersand (&), o nome e um ponto vírgula(;).
  • 30. Entidades  Entidades Declaradas Internamente <!ENTITY entity-name "entity-value"> <!ENTITY writer "Donald Duck."> <!ENTITY copyright "Copyright W3Schools."> <author>&writer;&copyright;</author>  Entidades Declaradas Externamente <!ENTITY entity-name SYSTEM "URI/URL"> <!ENTITY writer SYSTEM "http://www.w3schools.com/Entidades.dtd"> <!ENTITY copyright SYSTEM "http://www.w3schools.com/Entidades.dtd"> <author>&writer;&copyright;</author>
  • 31. Entidades  Entidades parametrizadas  As entidades de parâmetro ou parametrizadas são válidas somente em DTDs, funcionam como abreviaturas de declarações e são declaradas na DTD por meio do símbolo % precedido ao nome da entidade.  Por exemplo: <!ENTITY % livro “(titulo, autor, editora, preco)”> <!ELEMENT exemplo %livro;>  Esse exemplo determina que um elemento livro pode ter somente filhos do tipo titulo, autor, editora e preço.
  • 32. Notações  Descrevem o formato dos objectos de dados  São normalmente usadas para descrever o formato dos objectos binários, como arquivos gráficos  Mecanismo para associar entidades unparsed ou não analisáveis com a ferramenta apropriada  Em caso de uma imagem, pode ser um visualizador <!NOTATION GIF89a PUBLIC “-/CompuServe//NOTATION Graphics Interchange Format 89a//EN” “c:windowskodakprv.exe”>  Pode-se usar associações de arquivos <!NOTATION GIF89a SYSTEM “GIF”> <!NOTATION GIF89a SYSTEM “image/gif”>