A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

1 FEUPXML Anotação de Documentos Elementos, Atributos, Entidades, Comentários, Declarações e Instruções de Processamento.

Apresentações semelhantes


Apresentação em tema: "1 FEUPXML Anotação de Documentos Elementos, Atributos, Entidades, Comentários, Declarações e Instruções de Processamento."— Transcrição da apresentação:

1 1 FEUPXML Anotação de Documentos Elementos, Atributos, Entidades, Comentários, Declarações e Instruções de Processamento

2 2 FEUPXML Organização de um documento Documentos XML têm estrutura física e estrutura lógica –estrutura física entidades (unidades de armazenamento) –estrutura lógica declarações, comentários, referências, instruções de processamento

3 3 FEUPXML Estrutura Lógica/Física Document Unit Sub-unit elementos entidades Document processador XML = parser + gestor de entidades

4 4 FEUPXML Elementos Um elemento é constituído por uma tag-inicial, um conteúdo (contendo texto e eventualmente outros elementos) e uma tag-final indo eu indo eu a caminho de Viseu, encontrei indo eu indo eu a caminho de *ITAViseu*ROM, encontrei indo eu indo eu a caminho de Viseu, encontrei Um documento XML constitui uma hierarquia de elementos (possivelmente recursiva): pais, antepassados, filhos,... Os elementos possíveis são definidos num DTD Livro Capítulo Secção Livro Capítulo Secção Capítulo

5 5 FEUPXML Declarações Instruções para o processador de XML –Obrigatória –Opcionalmente –Comentários (não fazem parte do documento) UTF-8 é uma codificação do Unicode em caracteres de 8-bit : os primeiros 128 são os mesmos que ASCII, os outros são usados para codificar o resto do Unicode em sequências de 2 a 6 bytes. UTF-8 é incompatível com ISO 8859-1 (ISO Latin-1) acima do 126 decimal (fim do ASCII)

6 6 FEUPXML Estrutura Física de um Documento Entidades

7 7 FEUPXML Distribuição por Componentes Um documento XML pode ser distribuído por vários ficheiros –facilita reutilização de componentes intra e inter-documentos –permite a inclusão de dados que não são XML Cada unidade de informação é uma Entidade –possui um nome (identificador) A entidade documento (root) –não tem nome –seleccionada ou passada ao parser pelo nome do ficheiro document entity

8 8 FEUPXML Entidades São definidas num DTD pelas tags de declaração de entidades São inseridas no texto no local de referência O formato &XML; inclui entidades. O formato eXtensible Markup Language inclui entidades. declaração A "A"

9 9 FEUPXML Entidades Internas (texto) Para evitar redundâncias Declaração Uso O objecto &size; sempre.

10 10 FEUPXML Entidades Externas (texto) Quando o texto vai ser usado em diversos documentos Quando o texto é demasiado grande para estar dentro da declaração Para agrupar entidades internas –declarações de entidades ISO ISOnum (, etc), ISOlat1, ISOgrk1, ISOpub (publishing), ISOtech (symbol) Usar primeiro catálogo local de entidades

11 11 FEUPXML Entidades Binárias (externas) Contendo dados que não são XML –não é verificada pelo parser –a aplicação processa directamente ou lança outra aplicação Uso Foto do J.C.Lopes.

12 12 FEUPXML Outras Entidades Entidades built-in Entidades de carácter <<< Entidades parâmetro –usadas na construção de DTDs –para agrupar declarações &ISOnum; –isonum.ent... << >> &amp:& &apos;' "" declaração referência

13 13 FEUPXML Estrutura Lógica de um Documento DTD

14 14 FEUPXML DTD XML possibilita a criação de templates para anotação de documentos permitindo controlar (e validar!) a posição de elementos e seus atributos DTD é um conjunto (formal) de regras definindo a estrutura do documento –que elementos podem ser usados e qual a sua sequência –especificam portanto a hierarquia e granularidade do documento A estrutura em árvore do documento tem de estar conforme a estrutura do DTD LivroCapítulo +Parágrafo * Sections ? LivroCapítulo Parágrafo Sections

15 15 FEUPXML Componentes de um DTD Um DTD é composto por várias declarações –ELEMENT (definição de marcas) –ATTLIST (definição de atributos) –ENTITY (definição de entidades) –NOTATION (definição de dados do tipo notation) As declarações estão agrupadas dentro da declaração DOCTYPE <!DOCTYPE MyBook [ ]>

16 16 FEUPXML DTD simples <!DOCTYPE saudacao [ ]> Bom dia a quem chegou a horas! Nome do DTD (document type definition) tem que ser o nome do elemento raiz Maiúsculas e minúsculas são significativas O tipo do elemento é PCDATA (parsable character data) o que significa texto simples, sem outros elementos, embora substitua referências a entidades A alternativa são os elementos compostos

17 17 FEUPXML DTD composto Rui Silva 13.6 João Sousa 11.0 João Sousa 11.0 Ana Costa 17.0 <!DOCTYPE escola [ ]> –Sequência (","): um aluno é definido como a sequência de dois elementos, os filhos nome e média –uma turma é uma sequência de dois alunos

18 18 FEUPXML DTD composto (cont.) Rui Silva 13.6 João Sousa 11.0 nocturno João Sousa Ana Costa 17.0 <!DOCTYPE escola [ <!ELEMENT aluno (nome, media?, frequencia?)> ]> –Escolha ("|") Um de entre uma lista de valores –Cardinalidadade ("+") escola tem uma ou mais turmas ("*") turma tem zero ou mais alunos ("?") aluno tem um nome e zero ou uma media (optativa) e frequencia

19 19 FEUPXML Declaração de Elementos Usada para definir um novo elemento e especificar o seu conteúdo As regras podem conter –sequências: A, B –escolhas: A | B –indicadores de quantidade: A?A+A* Um elemento pode ter filhos, conter texto ou ser vazio Há uma imagem neste ponto do texto. –ANY permite a mistura de texto e elementos, o que não é aconselhável, a não ser para documentos muito pouco estruturados –Um elemento vazio não tem conteúdo; pode substituir-se a marca de fecho por "/>" na de abertura –Os parênteses permitem a criação de expressões complexas

20 20 FEUPXML Declaração de Elementos Mistos Texto pode ocorrer em sítios com Parsable Character Data –PCDATA tem de ser o primeiro token do grupo, o grupo deve ser uma escolha e tem de ser opcional e repetitivo H 2 O é água –Só se consegue especificar os elementos admissíveis mas não a sua ocorrência ou ordem –Útil ao começar a anotar um documento legado; no fim, não devem ocorrer situações de mistura

21 21 FEUPXML DTD externo Podem ser incluídos DTD externos <!DOCTYPE MyBook SYSTEM "../dtds/MyBook.dtd" [ ]> –Podem ser assim partilhados por vários documentos –DTD externo não inclui a declaração de DOCTYPE que fica no doc No DOCTYPE o atributo SYSTEM dá o URL onde se encontra o DTD DTD externo público tem, para além do URL, um parâmetro de nome, para facilitar a pesquisa em vários repositórios <!DOCTYPE MyBook PUBLIC "//article//PT" "../dtds/MyBook.dtd" [ –Num documento só existe um DTD Para combinar vários DTDs num mesmo documento é necessário utilizar entidades externas

22 22 FEUPXML Processamento de DTDs Se houver conflito de definições, vence o subconjunto interno A sua inclusão pode ser controlada pela declaração XML subconjunto externo subconjunto interno

23 23 FEUPXML Entidades paramétricas As entidades são declaradas no DTD mas são incluídas no documento propriamente dito Para incluir entidades no DTD é necessário usar o mecanismo da referência a entidades paramétricas Modularizar o DTD %aluno; Constrói-se assim um DTD a partir de vários –Cuidado a ter: não fazer referências circulares nos DTDs –Os documentos importados por entidades externas não podem ter o seu próprio DTD

24 24 FEUPXML Atributos Para além do nome, um elemento pode conter outra informação em atributos (meta-informação) Este parágrafo é secreto Num DTD um atributo é associado a um elemento particular e é-lhe atribuído um dado tipo Alguns atributos são reservados –linguagens Hello Olá –espaços Hello, Champion!

25 25 FEUPXML Declaração de Atributos Usada para associar atributos a um dado elemento Por exemplo: Os valores por omissão, incluem –qualquer valor permitido pelo tipo: "0""true" –deve ser especificado no elemento: #REQUIRED –valor não fornecido e opcional: #IMPLIED –valor fixo: #FIXED Atributos reservados (começados por xml)

26 26 FEUPXML Declaração de Atributos Declarações múltiplas –width por omissão é thin; o autor é optativo

27 27 FEUPXML Tipo dos Atributos O tipo do atributo restringe os valores possíveis CDATA Caracteres que não são markup enumerated lista de valores de onde pode ser escolhido um ENTITY entidade declarada no DTD ENTITIES lista de entidades declaradas no DTD ID identificador (único) de elemento IDREF valor de identificador do tipo ID IDREFS lista de valores de identificadores NMTOKEN XML token NMTOKENS lista de tokens XML NOTATION notação declarada no DTD

28 28 FEUPXML Atributo NMTOKEN NMTOKEN –Trata-se de um tipo para os atributos que segue as regras dos identificadores e está preparado para ligar a linguagens de programação; não admite espaços – –NMTOKENS, forma plural

29 29 FEUPXML Atributo ID ID –Destina-se a identificar univocamente um elemento no documento, portanto não admite repetições –Constituído por uma palavra a começar por uma letra e sem espaços –Usado por programas que manipulem XML <!DOCTYPE DOCUMENT [ ]> Heróis do mar

30 30 FEUPXML Atributo IDREF IDREF –O valor de um atributo com o tipo IDREF é o ID de outro elemento no documento –Exemplo de estabelecimento de relações familiares <!DOCTYPE DOCUMENT [ ]> Susana Joaquim Chico David

31 31 FEUPXML Atributo ENTITY ENTITY –Destina-se a ligar dados binários externos –O seu valor é uma entidade geral não analisada declarada no DTD, que liga para dados externos, por exemplo uma imagem......

32 32 FEUPXML Declaração de Notações Elementos ou entidades podem conter dados em formatos diferentes de XML Uma declaração de elemento deve especificar que formatos podem ser embebidos Uma declaração de entidades deve especificar o formato que está embebido Também podem ser referidas em declarações de atributos <!ATTLIST media player NOTATIONS (mpeg | jpeg | mov) #REQUIRED


Carregar ppt "1 FEUPXML Anotação de Documentos Elementos, Atributos, Entidades, Comentários, Declarações e Instruções de Processamento."

Apresentações semelhantes


Anúncios Google