Download - Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho [email protected] gEPL - DI - UM
![Page 2: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/2.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 2
Conteúdos• Anotação
– O que é? Anotar para quê?
• SGML - a história e o passado– ciclo de vida dos documentos
• A Evolução forçada pela Web– HTML e SGML: Web SGML
• XML– Conceitos– Ciclo de vida e Aplicações
![Page 3: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/3.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 3
O que é um documento?
• uma imagem• uma sequência de palavras• informação estruturada• um ser vivo (não no nosso caso)
Dublin Core - "Metadata Workshop"
![Page 4: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/4.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 4
O que é que fazemos com eles?
• Eu quero imprimir o meu relatório• O meu chefe quer pô-lo na Internet (WWW)• O meu colega quer refazer alguns dos cálculos na folha de cálculo• Todos querem que fique seguramente arquivado
Começa a surgir um probema ...
![Page 5: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/5.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 5
Que "suportes" utilizamos?
• Eu utilizo o LaTeX na minha NeXT• O meu colega usa o MSWinWord no seu PC• O nosso chefe ainda usa o WordPerfect no DOS• As nossas secretárias utilizam o Word no MacIntosh• Ainda há alguém no departamento a usar o troff
Temos um problema!!!
![Page 6: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/6.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 6
O Problema:
O que é que necessitamos?
O que é que o mercado oferecia?
Um suporte neutro para a nossa informação Independente de plataformas SW e HW
StandardGeneralized
MarkupLanguage
SGML
![Page 7: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/7.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 7
Motivação• Maioria da informação em suporte digital:
tradicionalmente em MSWord, Wordperfect, Access, Excel, Acrobat.
• Transferência e manipulação de documentos entre plataformas dispendiosa
• Manutenção difícil implica uma baixa longevidade
• Normalização muito difícil
• Custos de distribuição podem ser altos
• A migração para a nova tecnologia que se vai apresentar pode não ser uma opção!...
![Page 8: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/8.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 8
SGML: O que é?• Uma linguagem para definir linguagens
específicas de anotação: SMDL, HTML, EAD, DocBook, TEI.
• É independente do suporte (HW e SW).– Implica a separação do conteúdo e da forma.
• É um standard ISO– ideal para armazenamento e intercâmbio
![Page 9: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/9.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 9
O que é a Anotação dum texto?
Um meio de tornar explícita uma interpretação desse texto.
Exemplo1: sinais de pontuaçãoOlá. Tudo bem.Olá! Tudo bem?
Exemplo2: anotações"O rei <nome>Afonso Henriques</nome>queria ..."
![Page 10: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/10.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 10
Anotar um documento• A tarefa de anotar um documento num
sistema de processamento compreende as seguintes fases:– analisar a estrutura da informação e os
atributos que a caracterizam– determinar quais as funções de proces-
samento que produzirão o formato desejado para cada elemento
– inserir as etiquetas/anotações no texto
![Page 11: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/11.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 11
Pausa para pensar• Exercício: anotar o poema
• Exercício: anotar o texto dum sumário
• Exercíco: anotar página de livro
• ...
![Page 12: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/12.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 12
O Poema "Soneto Já Antigo" (Álvaro de Campos)
Olha, Daisy: quando eu morrer tu hás-de dizer aos meus amigos aí de Londres, embora não o sintas, que tu escondes a grande dor da minha morte. Irás de
Londres p'ra Iorque, onde nasceste (dizes que eu nada que tu digas acredito), contar áquele pobre rapazito que me deu horas tão felizes,
embora não o saibas, que morri... Mesmo ele, a quem eu tanto julguei amar, nada se importará... Depois vai dar
a notícia a essa estranha Cecily que acreditava que eu seria grande... Raios partam a vida e quem lá ande!
(1922)
![Page 13: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/13.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 13
Poema: elementos estruturais"Soneto Já Antigo"
(Álvaro de Campos)
Olha, Daisy: quando eu morrer tu hás-de
dizer aos meus amigos aí de Londres,
embora não o sintas, que tu escondes
a grande dor da minha morte. Irás de
Londres p'ra Iorque, onde nasceste (dizes
que eu nada que tu digas acredito),
contar àquele pobre rapazito
que me deu horas tão felizes,
em bora não o saibas, que morri...
Mesmo ele, a quem eu tanto julguei amar,
nada se importará... Depois vai dar
a notícia a essa estranha Cecily
que acreditava que eu seria grande...
Raios partam a vida e quem lá ande!
(1922)
Poema: título, autor, corpo, dataCorpo: quadra, quadra, terno,
terno.Quadra: verso, verso, verso,
versoTerno: verso, verso, versoVerso: (texto | nome)+Nome: texto
![Page 14: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/14.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 14
Os SumáriosProcessamento Estruturado de Documentos
José Carlos [email protected]://www.di.uminho.pt/~jcr
[2000.10.02]Anotação de Documentos: um pouco de história.Linguagens de Anotação como meta-linguagens:o SGML e o XML.Anotação Descritiva. Ciclo de vida dosdocumentos estruturados....
[2000.10.18]Resolução da ficha teórico práticanúmero 2 no laboratório.
![Page 15: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/15.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 15
Tipos de Anotação
Procedimental - define qual o processamento a ser realizado em determinados pontos do documento.
Caros senhores,.esp_vert 4Escrevo-vos a ... items:.indent 41. Qual a qualificação necessária.indent 42. Datas....esp_vert 4Obrigado
![Page 16: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/16.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 16
Tipos de Anotação 2 (cont.)
Descritiva - utiliza etiquetas para apenas classificar as componentes do documento.
<abre>Caros senhores,</abre><corpo>Escrevo-vos a ... items:<listan><item> Qual a qualificação necessária<item> Datas</listan>...</corpo><fecha>Obrigado</fecha>
![Page 17: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/17.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 17
Funções da Anotação• representar todos os caracteres de um
texto
• identificar a estrutura do texto
• reduzir o texto a uma ordem linear (árvore)
• representar informação contextual
• distinguir o que é texto do que é anotação
![Page 18: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/18.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 18
Linguagem de Anotação• Especifica como distinguir a anotação do
texto
• Especifica que anotações são necessárias e quais são permitidas
• Especifica onde as anotações são neces-sárias e onde são permitidas
• Define o significado da anotação
O SGML tem estas características todas ... excepto a última
![Page 19: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/19.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 19
Documentos• Tradicionalmente: um bloco indivisível
• Nesta abordagem: uma estrutura
![Page 20: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/20.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 20
Documentação Estruturada• Vantagens (c/ anotação descritiva)
– Portabilidade e intercâmbio entre plataformas
– reutilização– armazenamento e consulta– baixos custos de distribuição– manutenção e acesso– longevidade– reconfiguração do aspecto visual
![Page 21: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/21.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 21
Documentação Estruturada• Desvantagens
– grande investimento inicial• capital
• tempo
– o XML veio aligeirar estes parâmetros...
![Page 22: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/22.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 22
SGML: premissa heurística• Os documentos têm estrutura que se quer
preservar e manipular:– na sua criação– no seu processamento– na sua interrogação (=> armazenamento)
• Select EXCERTO with NOME=“Ana*”
• Select TITULO with parent EXCERTO
![Page 23: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/23.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 23
BD
Doc. SGML Válido
SGML: Ciclo de vida
DTD
Design Edição
Validação
OK / erros
Doc. SGML
Doc. SGMLVálido
FormataçãoTransformação
OUTPUTEditor Editor
Parser
Processador
EspecificaçãoEstilo
Armazenamento
![Page 24: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/24.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 24
SGML: conceitos element - definição de tipo de um obje-
cto, componente estrutural do documento attribute - propriedade de um elemento entity - "stream" de dados notation - notação/formato externo document type - conjunto de objectos e
entidades, semelhante a uma gramática ou esquema de base de dados
![Page 25: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/25.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 25
novela série de episódios televisivos, inventada no Brasil.
Os documentos têm estrutura!Uma definição contém um termo técnico
seguido dum texto descritivo
definição
texto descritivo
termo técnico
<!ELEMENT definicao - - (termo, descricao)><!ELEMENT definicao - - (termo, descricao)>
![Page 26: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/26.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 26
. . .
cap .1
cab eça lh o p ará g ra fo
p ará g ra fo lis ta ...
secçã o 1
cap .2
...
cap .3
p arte 1
...
p a rte 2
livro
. . .
cap .1
cab eça lh o p ará g ra fo
p ará g ra fo lis ta ...
secçã o 1
cap .2
...
cap .3
p arte 1
...
p a rte 2
livro
O texto forma uma hierarquia ordenada
![Page 27: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/27.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 27
Indicadores de estruturano texto...• espaço, fontes diferentes, gráficos...
• derivados da semântica: nomes, datas, lugares, ...
em SGML...• delimitadores explícitos
• inferida do contexto
![Page 28: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/28.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 28
SGML: exemplo
<lista> <cabec>Os delimitadores podem ser: </cabec> <item> explícitos <item> inferidos do contexto</lista>
<lista> <cabec>Os delimitadores podem ser: </cabec> <item> explícitos <item> inferidos do contexto</lista>
O elemento do tipo LISTA é formado por um
elemento CABEC, seguido por dois elementos do
tipo ITEM.
![Page 29: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/29.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 29
Ocorrência de um elemento
<lista>
<cabec> em SGML... <item> delimitadores explícitos <item> inferidos do contexto </lista>
etiqueta de inícioetiqueta de início
etiqueta de fimetiqueta de fim
No meio fica o CONTEÙDO do
elemento
![Page 30: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/30.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 30
<!ELEMENT lista - - (cabec,item+) ><!ELEMENT item - o (#PCDATA) > <!ELEMENT lista - - (cabec,item+) ><!ELEMENT item - o (#PCDATA) >
Definição de um elemento
nome do elemento (GI)nome do elemento (GI)
definição do conteúdodefinição do conteúdo
omissãoomissão
![Page 31: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/31.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 31
Definição do CONTEÚDO• outros elementos especificados
• ANY (qq elemento especificado)• EMPTY (nada, vazio)
• #PCDATA (texto)• uma mistura de elementos com #PCDATA
![Page 32: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/32.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 32
Expressão de Conteúdo: sintaxe• sequência
a,b a seguido de b
a|b a ou b mas não ambos
a&b equivalente a (a,b) | (b,a)
• ocorrênciaa um e apenas um
a? opcionalmente um (0 ou 1)
a* zero ou mais
a+ um ou mais
![Page 33: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/33.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 33
Exemplo: o poemaPoema: título, autor, corpo, dataCorpo: quadra, quadra, terno,
terno.Quadra: verso, verso, verso,
versoTerno: verso, verso, versoVerso: (texto | nome)+Nome: texto<!ELEMENT poema (titulo,autor,corpo,data) >
<!ELEMENT corpo (quadra,quadra,terno,terno) ><!ELEMENT quadra (verso,verso,verso,verso) ><!ELEMENT terno (verso,verso,verso) ><!ELEMENT verso (#PCDATA |nome)* >
<!ELEMENT poema (titulo,autor,corpo,data) ><!ELEMENT corpo (quadra,quadra,terno,terno) ><!ELEMENT quadra (verso,verso,verso,verso) ><!ELEMENT terno (verso,verso,verso) ><!ELEMENT verso (#PCDATA |nome)* >
![Page 34: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/34.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 34
Exercício (pausa)
Especificar o DTD para os Sumários
![Page 35: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/35.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 35
<lista tipo=bola id=L123> <item id=L123.1> delimitadores explícitos <item id=L123.2> inferidos do contexto </lista>
<lista tipo=bola id=L123> <item id=L123.1> delimitadores explícitos <item id=L123.2> inferidos do contexto </lista>
Um elemento pode ter atributos• para conter informação para além do tipo e do
contexto
• para identificação de ocorrências específicas de elementos
• para fazer algumas validações (poucas)
nome do atributonome do atributo valor do atributovalor do atributo
![Page 36: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/36.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 36
Ex: anotação morfo-sintáctica
<quadra><verso><verbo tempo="imperativo" pessoa="2s">Olha</verbo>,<nome> Daisy</nome>: quando eu morrer tu hás-de</verso><verso><verbo tempo="infinitivo">dizer</verbo> aos meus amigos aí de <nome>Londres</nome>,</verso><verso>embora não o sintas, que tu escondes</verso><verso>a grande dor da minha morte. Irás de</verso></quadra>
<quadra><verso><verbo tempo="imperativo" pessoa="2s">Olha</verbo>,<nome> Daisy</nome>: quando eu morrer tu hás-de</verso><verso><verbo tempo="infinitivo">dizer</verbo> aos meus amigos aí de <nome>Londres</nome>,</verso><verso>embora não o sintas, que tu escondes</verso><verso>a grande dor da minha morte. Irás de</verso></quadra>
![Page 37: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/37.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 37
Definição de um atributo
os identificadores de nomes e tipos devem ser únicos dentro dum elemento
<!ATTLIST lista id ID #IMPLIED tipo (simplea|bola) bola >
<!ATTLIST lista id ID #IMPLIED tipo (simplea|bola) bola >
nomenome tipotipo valor por omissãovalor por omissão
![Page 38: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/38.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 38
Tipos de atributo
• ID um identificador único dentro o documento actual
• IDREF referência a um identificador definido algures no documento corrente
• CDATA texto
• NAME, NUMBER, NMTOKEN
• ENTITY o nome duma entidade definida no documento corrente
• uma enumeração/lista de valores específicos (não pode haver repetições na lista)
![Page 39: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/39.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 39
Valores possíveis• #REQUIRED (obrigatório)
• #FIXED (constante)
• #IMPLIED (opcional)
• valor explícito
![Page 40: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/40.jpg)
40Linguagens de Anotação - jcr - UM - 2001.03.09
A estrutura do nosso poema
P oem a
títu lo au to r
verso verso verso verso
q u ad ra
...
q u ad ra
verso verso verso
te rn o
...
te rn o
corp o d a ta
son eto
![Page 41: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/41.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 41
Definição: DTD<!-- declarações para os elementos --><!ELEMENT poema - - (titulo, autor, corpo, data) ><!ELEMENT titulo - - (#PCDATA)><!ELEMENT autor - - (#PCDATA)><!ELEMENT corpo - - ((quadra|terno)+)><!ELEMENT quadra) - - (verso, verso, verso, verso)><!ELEMENT terno - - (verso, verso, verso)><!ELEMENT verso - - (#PCDATA|nome)+><!ELEMENT nome - - (#PCDATA)><!ELEMENT data - - (#PCDATA)>
Se poema fosse soneto:<!ELEMENT corpo - - (quadra, quadra, terno, terno)>
![Page 42: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/42.jpg)
42Linguagens de Anotação - jcr - UM - 2001.03.09
<poema><titulo>Soneto Já Antigo</titulo>
<autor>Álvaro de Campos</autor>
<quadra>
<verso>Olha,<nome> Daisy</nome>: quando eu morrer tu hás-de</verso>
<verso>dizer aos meus amigos aí de <nome>Londres</nome>,</verso>
<verso>embora não o sintas, que tu escondes</verso>
<verso>a grande dor da minha morte. Irás de</verso>
</quadra><quadra>
<verso><nome>Londres</nome> p'ra <nome>Iorque</nome>, onde nasceste (dizes</verso>
<verso>que eu nada que tu digas acredito),</verso>
<verso>contar àquele pobre rapazito</verso>
<verso>que me deu horas tão felizes,</verso>
</quadra><terno>
<verso>em bora não o saibas, que morri...</verso>
...</terno>
<data>1922</data></poema>
Poema anotado
![Page 43: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/43.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 43
software SGML• parsers: NSGMLS, SP
– validam um DTD– verificam se um documento está de acordo com o
DTD– devolvem como output o documento em formato esis
• editores: AuthorEditor,Emacs,Adept,...– usam o DTD para controlar a edição do texto
• tradutores: Omnimark, Balise, Perl– up/down translation entre SGML e outro formato
• motores IR: InfoManager, Altavista, ...– utilisam a estrutura do SGML para optimizar as
procuras
![Page 44: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/44.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 44
Instruções de Processamento• Indicações para processadores externos
<?xml version="1.0" encoding="ISO-8859-1"?>
<?Tex \newpage?>
<?HTML <HR>?>
![Page 45: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/45.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 45
Notações
• Apenas se podem declarar
• Permitem suportar dados não-SGML
<!NOTATION TeX SYSTEM “formatos/texto"><!NOTATION GIF SYSTEM “formatos/imagem"><!NOTATION TeX SYSTEM “formatos/texto"><!NOTATION GIF SYSTEM “formatos/imagem">
![Page 46: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/46.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 46
Secções Marcadas• Úteis para incluir exemplos de SGML
• E para processamentos condicionais
<![ CDATA [The <p> tag is used for paragraphs]]>
<![ CDATA [The <p> tag is used for paragraphs]]>
<!ENTITY % RTF "INCLUDE"><!ENTITY % HTML "IGNORE">
<![ %RTF; [%my-wmf;]]>
<![ %HTML; [%my-gif;]]>
<!ENTITY % RTF "INCLUDE"><!ENTITY % HTML "IGNORE">
<![ %RTF; [%my-wmf;]]>
<![ %HTML; [%my-gif;]]>
![Page 47: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/47.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 47
Tipos de Entidade• geral
– apenas usada no documento– a sua expansão está definida no DTD
• externa– apenas usada no documento– a sua expansão é o identificador dum objecto
externo• paramétrica
– apenas usada no DTD– a expansão pode ser qq coisa
![Page 48: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/48.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 48
Entidades GeraisUtilização: abreviaturas, caracteres especiais e símbolos etc.
Exemplo:
Definição:
Isto devia ser um curso de &xml;
dado pelo José Carlos
Isto devia ser um curso de &xml;
dado pelo José Carlos
<!ENTITY xml "eXtended Markup Language"><!ENTITY eacute "é" ><!ENTITY eacute “„” ><!ENTITY eacute SDATA “[eacute]”>
<!ENTITY xml "eXtended Markup Language"><!ENTITY eacute "é" ><!ENTITY eacute “„” ><!ENTITY eacute SDATA “[eacute]”>
![Page 49: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/49.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 49
Entidades Gerais (2)• Também podem incluir texto anotado:
<!ENTITY rodape ‘<hr size=“1”/><p>Copywright 2001 by <a href=“http://www.di.uminho.pt/~jcr> </p>‘>
![Page 50: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/50.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 50
Entidades externasUtilização: incluir ou referenciar um ou mais objectos
externos (ficheiros, imagens)
Exemplo:
Definição:
&chap1; &chap1fig; <!-- preciso escrever chap 2 --> <p>Eis uma referência para <xref doc=myHome>a minha home page</xref>
&chap1; &chap1fig; <!-- preciso escrever chap 2 --> <p>Eis uma referência para <xref doc=myHome>a minha home page</xref>
<!ENTITY chap1 SYSTEM “chap1.sgm”><!ENTITY chap1fig SYSTEM “gifs/chap1fig.jpg” NDATA JPG><!ENTITY myHome SYSTEM "http://orunner.di.uminho.pt/~jcr" NDATA HTML>
<!ENTITY chap1 SYSTEM “chap1.sgm”><!ENTITY chap1fig SYSTEM “gifs/chap1fig.jpg” NDATA JPG><!ENTITY myHome SYSTEM "http://orunner.di.uminho.pt/~jcr" NDATA HTML>
![Page 51: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/51.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 51
Entidades paramétricasUtilização: parametrização de declarações e control
de secções marcadasExemplo:
Definição:<!ENTITY % ISOLat1 PUBLIC “ISO 8879-1986//ENTITIES Added Latin 1//EN”><!ENTITY % a.glob “ident ID #IMPLIED”><!ENTITY % HTML “INCLUDE”>
<!ENTITY % ISOLat1 PUBLIC “ISO 8879-1986//ENTITIES Added Latin 1//EN”><!ENTITY % a.glob “ident ID #IMPLIED”><!ENTITY % HTML “INCLUDE”>
%ISOLat1;
<!ATTLIST exemplo %a.glob>
<![ %HTML [ ...
]]>
%ISOLat1;
<!ATTLIST exemplo %a.glob>
<![ %HTML [ ...
]]>
![Page 52: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/52.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 52
Entidades paramétricas (exs)
<!ENTITY % para-content “(#PCDATA | imagem
| nome | lugar | ... )*”>
<!ELEMENT paragrafo %para-content;>
<!ENTITY % para-content “(#PCDATA | imagem
| nome | lugar | ... )*”>
<!ELEMENT paragrafo %para-content;>
![Page 53: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/53.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 53
Juntando as peçasUm documento XML compreende:
• uma declaração XML– <?xml version=“1.0” ... ?>
• um DTD (opcional)
• a instância do documento
![Page 54: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/54.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 54
A Declaração do Tipo de Documento• contém as declarações para
– elementos, atributos, entidades
• define uma hierarquia única de elementos
• é normalmente invocada por referência
• pode ser modificada por um subset do DTD
![Page 55: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/55.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 55
Alguns exemplos
<!DOCTYPE poema PUBLIC “-//jcr//DTD poema 1.0”><!DOCTYPE poema PUBLIC “-//jcr//DTD poema 1.0”>
<!DOCTYPE poema [<!ELEMENT poema - o (quadra+)><!ELEMENT quadra - o (#PCDATA)>]>
<!DOCTYPE poema [<!ELEMENT poema - o (quadra+)><!ELEMENT quadra - o (#PCDATA)>]>
<!DOCTYPE poema SYSTEM “poema.dtd” [...]><!DOCTYPE poema SYSTEM “poema.dtd” [...]>
![Page 56: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/56.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 56
Declarações múltiplasPara elementos
– não é permitida
Para entidades– é permitido: a primeira é que prevalece– a declaração tem que preceder o uso
![Page 57: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/57.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 57
Processamento Condicionalno dtd
na parametrização do dtd
<!ENTITY % my-gifs “IGNORE”><!ENTITY % my-wmfs “IGNORE”><![ %my-gifs [<!-- imagens para o HTML -->]]><![ %my-wmfs [<!-- imagens para RTF, PDF, MIF -->]]>
<!ENTITY % my-gifs “IGNORE”><!ENTITY % my-wmfs “IGNORE”><![ %my-gifs [<!-- imagens para o HTML -->]]><![ %my-wmfs [<!-- imagens para RTF, PDF, MIF -->]]>
<!ENTITY % my-wmfs “INCLUDE”><!ENTITY % my-wmfs “INCLUDE”>
![Page 58: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/58.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 58
Até ao SGML ...• A ideia de que a documentação estruturada podia ser
trocada e manipulada se fosse produzida de uma forma standard vem dos anos 60:– GCA GenCode
– IBM GML
• Em 1980 é formado o comité ANSI para as linguagens de processamento de texto com o objectivo de encontrar uma norma para a especificação, a definição e a utilização de anotações em documentos.
• Em 1986, é lançado o SGML como o ISO 8879
![Page 59: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/59.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 59
SGML (the beginning)• Apesar de todo o poder expressivo e
versatilidade não se conseguiu impôr
• Grande complexidade
• Grande investimento inicial de capital e de tempo
![Page 60: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/60.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 60
O HTML é SGML ...
Será que descende de ?
No fim dos anos 80 Tim Berners-Lee misturou:• um conjunto de tags dum DTD utilizado no CERN• juntou-lhe uma especificação de estilo• e mais um elemento revolucionário: os links
O que deu origem ao HTML
![Page 61: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/61.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 61
HTML: exemplo<HTML><HEAD> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> <META NAME="Author" CONTENT="Jose Carlos Ramalho"> <META NAME="GENERATOR" CONTENT="Mozilla/4.01 [en] (Win95; I) [Netscape]"> <TITLE>soneto de Álvaro de Campos</TITLE></HEAD><BODY>
<H2>"Soneto Já Antigo"</H2>
<H3>(Álvaro de Campos)</H3>
<P>Olha, <I><FONT COLOR="#3333FF">Daisy</FONT></I>: quando eu morrer tuhás-de<BR>dizer aos meus amigos aí de <I><FONT COLOR="#3366FF">Londres</FONT></I>,<BR>embora não o sintas, que tu escondes<BR>a grande dor da minha morte. Irás de...
![Page 62: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/62.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 62
HTML (the beginning)• A sua grande simplicidade foi o factor
determinante para a grande adesão que teve
• A sua grande simplicidade foi também o início de uma época problemática– atingiu-se rapidamente o seu limite– começaram a proliferar extensões não
normalizadas
![Page 63: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/63.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 63
O sentido ecuménico do HTML
• o HTML representa a linguagem de anotação que as pessoas podem tomar como certa(!!!).
• quanto mais universal fôr uma linguagem menos específica se torna, quanto maior fôr o contexto de aplicação menor será a capacidade de expressão semântica.
![Page 64: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/64.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 64
XML (como surgiu?)
Uma linguagem de anotação aberta
![Page 65: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/65.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 65
XML (conceitos)
Doc. XML
Bem formado Válido
• pertence a uma classe (DTD)• não há cruzamento de tags <A>olá <B>estás </A> ...
• pode-se inferir um DTD• torna o pós-processamentomais específico.
![Page 66: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/66.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 66
SGML XML• Fechar todas as "tags" que se abrirem
• Converter os elementos vazios – <HR> ==> <HR/>
– def. SGML: <!ELEMENT HR -o EMPTY>
– def. XML: <!ELEMENT HR EMPTY>
• Colocar os valores dos atributos dentro de aspas– <IMG SRC="foto.jpg"/>
![Page 67: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/67.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 67
XML: exemplo - dtd do poema<!-- declarações para os elementos --><!ELEMENT poema (titulo, autor, corpo, data) ><!ELEMENT titulo (#PCDATA)><!ELEMENT autor (#PCDATA)><!ELEMENT corpo ((quadra|terno)+)><!ELEMENT quadra (verso, verso, verso, verso)><!ELEMENT terno (verso, verso, verso)><!ELEMENT verso (#PCDATA|nome)+><!ELEMENT nome (#PCDATA)><!ELEMENT data (#PCDATA)>
![Page 68: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/68.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 68
XML: exemplo - instância<?xml version="1.0"?><?xml-stylesheet type="text/css" href="poema.css"?><!DOCTYPE poema SYSTEM "poema.dtd"><poema> <titulo>"Soneto Já Antigo</titulo> <autor>(Álvaro de Campos)</autor> <corpo> <quadra> <verso>Olha, <nome>Daisy</nome>: quando eu morrer tu hás-de</verso> <verso>dizer aos meus amigos aí de <nome>Londres</nome>,</verso> <verso>embora não o sintas, que tu escondes</verso> <verso>a grande dor da minha morte. Irás de</verso> </quadra> <quadra> <verso><nome>Londres</nome> p'ra <nome>Iorque</nome>, onde nasceste (dizes</verso> <verso>que eu nada que tu digas acredito),</verso> <verso>contar àquele pobre rapazito</verso> <verso>que me deu horas tão felizes,</verso> </quadra> ...
![Page 69: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/69.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 69
XML (áreas de utilização)• Produção de documentação em geral
• Produção de corpora anotado
• Registos Clínicos: H7
• Arquivos: EAD
• Química: CML
• Xadrez: ChessML
• Música: MusicML
• ...
![Page 70: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/70.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 70
Casos reais• Linguagens definidas em SGML/XML
– DocBook XML 1.5– SMDL - música– CML - química– SMIL - multimedia e interface– MathML - matemática– H7 - medicina– XML-EDI - comércio electrónico
![Page 71: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/71.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 71
Problema interessante• Normalização de conteúdos:
– Afonso– Aphonso– Affonso– o Rei
![Page 72: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/72.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 72
Conclusão
![Page 73: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/73.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 73
1760Em 14 de Junho deste anno foi mandado sahirimmediatamente da Corte o cardeal Accioalolli e dentro em 4dias do Reino, para o que se lhe deu decente transporte e acompanhamento. Era Nuncio de sua Santidade o Papa Clemente 13.Aqui principiou a rotura com a Sé Appostolica. Fes-sepublico o motivo pela informação que se mandou a Franciscode Almada residente na Corte de Roma, dando-se porfundamento maior o não pôr luminarias por ocasiãodo cazamento que se fes no dia seis de Junho do Senhor InfanteD. Pedro com sua sobrinha a Excelentissima Senhora D. Maria,princesa do Brasil, o que o dito Cardeal não fizera, porquelho não fizerão a saber por carta de officio, quando os maisembaixadores sem isso o fizerão. O caso he que queriãoafasta-lo da Corte e tambem elle não seguia aconduta dellapor aquelles tempos.... Extraído de “Memórias de Inácio Peixoto dos Santos”
Documento como um todo
![Page 74: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/74.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 74
Documento estruturado
<EXCERTO><TITULO>1760</TITULO><PARAG>Em 14 de Junho deste anno foi mandado sahirimmediatamente da Corte o cardeal <NOME>Accioalolli</NOME> e dentro em 4dias do Reino, para o que se lhe deu decente transporte e acompanhamento. Era Nuncio de sua Santidade o Papa Clemente 13.</PARAG><PARAG>Aqui principiou a rotura com a <LUGAR>Sé Appostolica</LUGAR>. Fes-sepublico o motivo pela informação que se mandou a <NOME>Franciscode Almada</NOME> residente na Corte de Roma, dando-se porfundamento maior o não pôr luminarias por ocasiãodo cazamento que se fes no dia seis de Junho do Senhor <NOME>InfanteD. Pedro</NOME> com sua sobrinha a Excelentissima Senhora D. Maria,princesa do Brasil, o que o dito Cardeal não fizera, porquelho não fizerão a saber por carta de officio, quando os maisembaixadores sem isso o fizerão. O caso he que queriãoafasta-lo da Corte e tambem elle não seguia aconduta dellapor aquelles tempos.</PARAG></EXCERTO>
![Page 75: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/75.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 75
Estrutura do documento
parag
excerto
título parag
nome lugartexto texto
???
![Page 76: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/76.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 76
Processamento EstruturadoELEMENT excerto OUTPUT “%c”
ELEMENT titulo OUTPUT “<H2>%c</H2>”
ELEMENT parag OUTPUT “%c<P>” ELEMENT nome OUTPUT ”<I>%c</I>”
ELEMENT lugar OUTPUT “<B>%c</B>”
Geração da página HTMLcorrespondente
![Page 77: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/77.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 77
Fase de Design• Análise Documental
– Desenho da estrutura tentando prever todos os ângulos do problema.
– Levantamento dos requisitos de aparência visual junto dos futuros utilizadores.
• Resultados– Especificação do DTD– Especificação do Estilo
![Page 78: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/78.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 78
Fase de Edição• Preparar um editor “especializado”
– compilar o DTD– preparar uma formatação automática para o
documento
• Anotar o Documento– na sua inserção– posteriormente à sua inserção
• Validar o Documento anotado
• Exportar o Documento válido em SGML
![Page 79: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/79.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 79
Fase de Validação• Está integrada nos editores SGML
• É invisível para o utilizador, excepto na sua invocação
• Dá feedback na forma de mensagens que indicam os erros se os houver
![Page 80: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/80.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 80
Fase de Formatação ou Transformação• Processador:
– Doc. SGML válido + Estilo = OUTPUT
• Processamento– Standard
• DSSSL: jade
• XSL: saxon, xt, Xalan, ...
– Pessoal: desenvolvimento de scripts Perl ou Omnimark
![Page 81: Linguagens de Anotação XML, SGML,... José Carlos L. Ramalho jcr@di.uminho.pt gEPL - DI - UM](https://reader036.vdocuments.pub/reader036/viewer/2022062318/552fc11a497959413d8c97c0/html5/thumbnails/81.jpg)
Linguagens de Anotação - jcr - UM - 2001.03.09 81
Fase de Armazenamento• O Documento é armazenado juntamente
com a sua estrutura
• Tipos de solução:– Armazenamento individual usando o
sistema de directorias.– Bases de Dados orientadas a objectos e
desenvolvidas a pensar no SGML: Astoria, InfoManager, Documentor.
– Implementação sobre Bases de Dados Relacionais baseada em MDA.