CINF0033 - Estruturas e Linguagens da Informação 1
Linguagens de Marcação
Linguagens de Marcação - Roteiro
•
Definições
•
Características das LM
•
Estruturas usadas nas LM
´
s
•
Vantagens das LM
´
s
•
Sobre HTML
•
Sobre XML
•
HTML
vs.
XML
•
Aplicações da XML
CINF0033 - Estruturas e Linguagens da Informação 3
Linguagens de Marcação (LM´s)
•
Definição: Conjunto de convenções utilizadas
para a codificação de textos.
• A “marcação” consiste em utilizar anotações
ou marcas em um texto, com o objetivo definir
a maneira como parte do texto deve ser
representada.
•
Cada LM:
– Define o significado de cada marcação;
– Especifica quais marcas são exigidas e quais são
opcionais;
Onde as LM´s são usadas?
•
Em processadores de texto (Word);
•
Em compiladores de texto (Latex);
CINF0033 - Estruturas e Linguagens da Informação 5
Quem define as LM´s?
Objetiva manter
abordagens mais
eficientes e
padronizadas para a
manipulação de
Linguagens de Marcação
•
O objetivo principal é fornecer uma descrição
detalhada de como o documento deve ser
estruturado independente de um software
processador de dados.
•
Componentes das linguagens de marcação:
–
Estrutura - organiza componentes numa estrutura de árvore
–
Entidade - declara um apelido para um conteúdo
–
Marca ou elemento - declara um elemento ou item de dado
–
Atributo - dão clareza ao elemento
Exemplo de estrutura
•
Sobre esta estrutura
hierárquica conteúdo e
formatação são construídos e
processados.
•
O documento pode ser
redesenhado, dados podem
ser extraídos,diferentes
visualizações podem ser
definidas.
–
Exemplo: Hipertexto
Entidade
•
Entidade é utilizada para definir um conteúdo
que será inserido onde for referenciada.
•
Exemplo de definição:
<!Entity
eComercial
“&”
>
•
Exemplo de uso:
<P> Ciência
&eComercial;
Tecnologia </P>
Marcas
•
Marcas são colocadas no início e fim de cada item do
documento.
•
Todas as marcas são envolvidas por < >
•
Para cada marca aberta deve existir uma marca de
fechamento composta do nome da marca de abertura
seguido de /
•
As marcas de abertura e fechamento são conhecidas
coletivamente como elementos.
•
Exemplos:
–
<P> Este é um parágrafo </P>
–
<P/> <!-- Este é um parágrafo vazio -->
Atributos
•
Fornecem detalhes ou instruções de formatação
ou processamento para um elemento.
•
Exemplo:
<P>
<FONT FACE=“
Bookman
” SIZE=“12”> Texto
Comentário
•
Permite instruir o usuário do documento. Não
•
será processado.
•
Exemplo:
–
<!-- Isto é um comentário -->
Estrutura usadas nas LM´s
•
Identificam, de forma descritiva, cada
“entidade informacional” (parágrafos, títulos,
tabelas).
– A partir destas descrições, os programas de
computador podem melhor compreender e, em conseqüência, melhor tratar ou processar a
informação contida em documentos eletrônicos;
•
Usam etiquetas (
tags)
para qualificar cada
objeto do texto, para transformá-los em
informação tratável por computador;
•
Uma boa prática é separar conteúdo do
documento do estilo usado em sua
CINF0033 - Estruturas e Linguagens da Informação 13
Vantagens de utilização das LM´s
•
Minimizam o problema de transferência de um
formato de representação para outro e
libertam a informação das tecnologias de
informação proprietárias e dos formatos
proprietários;
– A utilização de padrões de marcação internacionais
abertos, permite a criação de documentos portáveis, isto é, documentos que não são dependentes de um determinado software, hardware, ou sistema
Oportunidades das LM´s para
a Ciência da Informação
•
Melhor aproveitar a massa de informações
disponível na Internet, transformando-a em
algo mais gerenciável e útil;
•
Permite conferir elementos
estruturais/semânticos à Internet;
•
A ciência de informação, como campo
CINF0033 - Estruturas e Linguagens da Informação 15
Sobre HTML
• Criada por Tim Berners Lee em 1990
– em 1992, Marc Anderson criou o MOSAIC, o primeiro navegador web com interface gráfica, que evoluiu para o Netscape.
• Padrão aberto (não tem dono);
• Baseada na SGML (ISO 8879);
• Formato texto e Independente de plataforma;
• Permite embutir diversos objetos no documento;
• Conjunto fixo de tags (não permite criar tags);
• Descreve apenas a formatação do documento
(apresentação);
• Fácil aprendizado;
• Usada em milhões de Web sites
Estrutura dos Documentos
•
É constituída por três componentes, distintos
e separados:
1. Conteúdo:
a informação propriamente dita.2. Estrutura:
define a organização do documento.3. Estilo (ou formatação):
define o visual de apresentação das informações ao usuário.CINF0033 - Estruturas e Linguagens da Informação 17
Exemplo de estrutura em
HTML
1. Conteúdo
2. Estrutura
3. Estilo
<HTML>
<HEAD><TITLE> Relação de notas</TITLE> </HEAD> <BODY bgcolor="beige">
<TABLE border=1 cellspacing=0><CAPTION>
Resultado final dos alunos</CAPTION> <TR bgcolor="#dddddd">
<TH>Nome do aluno</TH>
<TH>Nome da disciplina</TH> <TH>Média</TH>
<TH>Resultado</TH></TR> <TR>
<TD>Joana</TD>
<TD>Matemática</TD> <TD>7,0</TD>
HTML
• <HTML> - elemento principal
• <HEAD> - cabeçalho do documento
• <TITLE> - título do documento
• <META> - metadados do documento
• <BODY> - corpo do documento
• <H1> até <H6> - título das seções do documento
• <P> - parágrafo
• <A> - link
• <TABLE> - tabela
• <IMG> - imagem
• Referência do HTML: http://www.w3schools.com/tags/default.asp
• Tutorial HTML: http://www.w3schools.com/html/default.asp
CINF0033 - Estruturas e Linguagens da Informação 19
Limitações do HTML
•
Muitas organizações e empresas começaram
a perceber que estavam bastante limitadas
pela falta de flexibilidade de HTML
no tocante
às suas possibilidades em promover a troca
mais efetiva de informações pela Web
;
•
A introdução da formatação de estilo HTML
começou a tornar os documentos de difícil
leitura para o homem.
Sobre XML
• Criada por Jon Bosac da Sun;
• Padrão aberto (não tem dono);
• Baseada na SGML (ISO 8879)
• Formato texto e Independente de plataforma;
• As etiquetas (tags) não estão pré-definidas. Permite ao
desenvolvedor criar suas próprias tags, ou seja, permite definir outras linguagens;
• XML foi desenhado para descrever dados
• Não fornece instruções de como o conteúdo deve ser
apresentado;
• Pode ser usada para a criação de sites;
• Pode atuar em conjunto com a HTML ou XHTML
(eXtensible Hypertext Markup Language);
CINF0033 - Estruturas e Linguagens da Informação 21
Sobre
XML
•
Permite criar informação semi-estruturada;
•
Pode ser facilmente interpretada por seres
humanos ou sistemas de software.
•
Cria uma estrutura
para representação
da informação
<?xml version="1.0" encoding="ISO-8859-1"?>
<livro isbn="85-352-1304-X" >
Sobre XML
•
Permite descrever a estrutura das
informações por meio de metadados bem
como as próprias informações.
•
Devemos definir as nossas tags.
CINF0033 - Estruturas e Linguagens da Informação 23
Como criar um arquivo XML
•
Criando
um documento de texto Unicode a
partir de qualquer editor de textos
•
Gerando
um documento a partir de uma
á
rvore
montada dinamicamente
•
Gerando
um documento através de programas
Como criar um arquivo XML
•
Regras do XML
–
Defina um elemento raiz;
–
Os elementos devem seguir as regras de nomeação:
•
Nomes podem conter letras, números, e outros caracteres
•
Nomes não devem começar com um número ou
caractere de pontuação
•
Nomes não devem começar com as letras xml (ou XML
ou Xml ..)
•
Nomes não podem conter espaços
•
Por convenção evite "-
" e "." nos nomes. Use “_”.
• O “:”, “<“, “>” não podem ser usados.
CINF0033 - Estruturas e Linguagens da Informação 25
Elementos XML
•
Elementos são denotados por tags de marcação
•
<
foo
attr1
=“
value
”>
o_texto
</
foo
>
–
Tag inicial do elemento:
foo
– Atributo: attr1
–
O dado textual:
o_texto
CINF0033 - Estruturas e Linguagens da Informação 26
Estrutura básica
•
Um documento XML é uma
árvore ordenada
e rotulada
•
Nós folha de
dado textual
contém os dados
reais (strings de texto)
•
Nós
elemento
, são rotulados com
–
Um nome (frequentemente chamados de elemento
type
), e
–
Um conjunto de
atributos
, cada um composto por
um nome e um valor,
CINF0033 - Estruturas e Linguagens da Informação 27
Exemplo XML
<chapter id="cmds">
<chaptitle>FileCab</chaptitle>
<para>This chapter describes the commands
that manage the <tm>FileCab</tm>
CINF0033 - Estruturas e Linguagens da Informação 29
XML: Objetivos de projeto
•
Framework comum para estruturação da informação
•
Permite
marcação feita sob medida
para qualquer
domínio de aplicação imaginável
•
Suporta
internacionalização
(Unicode) e
independência de plataforma
•
Ser a ferramenta mais importante para
Por que usar XML?
•
Representa dados semi-estruturados (dados são
estruturados, mas não encaixam no modelo relacional)
•
XML é mais flexível que BDs
•
XML é mais estruturado do que texto livre ou HTML
•
Permite fazer uso de uma gigantesca infra-estrutura
CINF0033 - Estruturas e Linguagens da Informação 31
XML Schemas
•
Schema = definição de sintaxe da linguagem XML
–
Fornece controle sintático à linguagem XML, por meio de
restrições à estrutura, bem como da definição de tipos de
dados para documentos XML.
•
Linguagem Schema = linguagem formal para
expressar schemas XML
–
Exemplos
• Document Type Definition - DTD
• XMLSchema (padrão W3C)
•
Relevância para RI: permite a realização de busca
XML Schemas
•
Utiliza-se DTD ou um XMLSchema para garantir a
integridade sintática e semântica de um documento
XML, isto é definir um documento válido.
–
A estrutura do documento é especificada em termos de
elementos, atributos e tipos de dados que tal documento
pode conter.
–
Um documento XML é
valido
se ele obedece às restrições
sintáticas especificadas na estrutura da linguagem XML,
conforme as especificações do W3C.
–
Um documento XML é
bem formado
se a ele estão
CINF0033 - Estruturas e Linguagens da Informação 33
Exemplo de DTD para Livros
<DOCTYPE livros [
<!ELEMENT livro (titulo, autor+, keywords, editora, ano, preco*, disponivel)> <!ATTLIST livro isbn CDATA #REQUIRED>
<!ELEMENT titulo (#PCDATA )> <!ELEMENT autor (#PCDATA)> <!ELEMENT keywords (key*)> <!ELEMENT key (#PCDATA )>
<!ELEMENT editora (#PCDATA )> <!ELEMENT ano (#PCDATA )> <!ELEMENT preco (#PCDATA )>
<!ELEMENT disponivel (#PCDATA )> ]>
Apesar do DTD apresentar regras rígidas, é possível construir estruturas
flexíveis.
Por exemplo, Nem todos os livros precisam ter preço.
<?xml version="1.0" encoding="ISO-8859-1"?>
<livro isbn="85-352-1304-X" > <titulo>Guia Completo de Cabeamento</titulo>
<autor>José Pinheiro</autor> <keywords>
<key>redes </key>
<key>cabeamento </key> <key>cabos </key>
<key>protocolos</key> </keywords>
<editora>Campus</editora> <ano>2003</ano>
<preco>59,00</preco>
CINF0033 - Estruturas e Linguagens da Informação 35
Exemplo de XML Schema para Leis
<?xml version=“1.0”?> <xsd:schema xmlns:xsd=“http://www.w3.org/2001/XMLSchema” xmlns=“http://www.cl.df.gov.br”> <xsd:element name=“lei”> <xsd:complex Type> <xsd:sequence><xsd:element name=“numero” type=“xsd:string”/>
<xsd:element name=“data” type=“xsd:string”/>
<xsd:element name=“autor” type=“xsd:string”/>
<xsd:element name=“ementa” type=“xsd:string”/>
</xsd:sequence> </xsd:complex Type> </xsd:element>
</xsd:schema>
XML Schema
fornece controle fino sobre o formato e
tipos de dados dos elementos e seus atributos.
<?xml version=“1.0” encoding=“ISO-8859-1”?>
<lei xmlns=“http://www.cl.df.gov.br”
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=“http://www.cl.df.gov.br lei.xsd”>
<numero> 426 <numero/> <data> 06/04/1993 <data/>
<autor> Governo do Distrito Federal <autor/>
<ementa> Cria a subsecretaria de Defesa do Consumidor PROCON na estrutura da Secretaria do Governo do Distrito Federal e dá outras providências
CINF0033 - Estruturas e Linguagens da Informação 37
Exemplo de validação XML
• Download EditiX: http://www.editix.com/download.html
• Instale-o
• Faça download dos exemplos didáticos no site da disciplina e extraia-os em uma pasta.
• Execute o programa
– Abra o arquivo XML a ser validado (livro-dtd.xml)
– Acesse o menu XML > check this document
– Aparece uma mensagem informando que o documento está correto (válido).
– Repare que o arquivo dtd (livro.dtd )deve estar na mesma pasta do arquivo xml a ser validado (livro-dtd.xml)
•
Veja também:
https://www.w3schools.com/xml/xml_validator.asp
CINF0033 - Estruturas e Linguagens da Informação 39
Correspondente em XML documento em HTML
<html> <body>
<p> ISBN: 85-352-1304-X <br>
Livro "Guia Completo de Cabeamento", autor José Pinheiro, editora Campus, publicado em 2003. Preço atual R$59,00. No momento temos estoque disponível. </p>
</body> </html>
<livro isbn="85-352-1304-X">
<titulo>Guia Completo de Cabeamento</titulo>
<autor>José Pinheiro</autor>
<editora>Campus</editora>
<ano>2003</ano> <preco>59,00</preco>
<disponivel>sim</disponivel>
</livro>
HTML vs XML
•
HTML é uma linguagem de marcação para um
propósito específico de exibição em browsers
•
XML é um framework para definir linguagens
de marcação
•
HTML pode ser formalizado como uma
linguagem XML (XHTML)
•
XML define estrutura lógica apenas
CINF0033 - Estruturas e Linguagens da Informação 41
Vantagens da XML em relação a
HTML
• XML fornece liberdade na criação de marcas,
possibilitando a representação dos mais diversos tipos de informação;
• Em vez de descrever como os dados devem ser
mostrados, as marcas indicam o que cada dado
significa;
• Em XML as marcas podem ser embutidas umas dentro
de outras, fato que permite determinar uma informação
com significado mais específico dentro do texto;
• HTML é limitada, apenas indica como as informações
Aplicações do XML
Versão do Distribuidor
Versão da Matriz
1. Intercâmbio de informação entre
organizações;
CINF0033 - Estruturas e Linguagens da Informação 43
Aplicações do XML
2. Intercâmbio de metadados entre sistemas
documentais;
Exemplos:
– Registros Dublin Core/XML via protocolo
OAI-PMH
– www.repositorio.ufpe.br/oai/request?verb=GetRecord&metadataPrefix= oai_dc&identifier=oai:repositorio.ufpe.br:123456789/387
– Registros no formato MARCXML
– https://lccn.loc.gov/2012027181/marcxml – https://lccn.loc.gov/n79026451/marcxml
Governo
Empresa
Consumidor
Governo
G2G
coordenação
G2B
informaçãoG2C
informaçãoEmpresa
B2G
Aquisição informaçãoB2B
e-BusinessB2C
e-CommerceConsumidor
C2G
imposto
C2B
Comparação de preçosC2C
Leilão Ebay.comAplicações do XML
CINF0033 - Estruturas e Linguagens da Informação 45
Aplicações do XML
4. Na manutenção e gerenciamento de conteúdo de sites (integração HTML com XML);
5. Na integração de plataformas ou dispositivos de
hardware, tais como Windows, Linux, MAC, palmtops, handhelds etc;
6. RSS – Divulgação de informações;
7. Criação de Ontologias (RDF e OWL);
8. Configuração de WebServices;
9. Banco de dados.
10. Construção de outras linguagens como: CML
Restrições da XML
• Capacidade semântica limitada, já que tags com
nomes iguais podem possuir significados diferentes e tags com nomes diferentes podem possuir significados iguais em diferentes contextos;
• Difícil de descrever relações entre as informações (por
não permitir dar significado interpetrável por máquina às marcas nem deixar explícitas relações entre
marcas);
• Para representação do conhecimento na Web é
CINF0033 - Estruturas e Linguagens da Informação 47
Vantagens do XML para a CI
• XML é um conjunto de regras e convenções de sintaxe
que podem ser utilizadas para a criação de conjuntos personalizados de elementos de marcação, com vistas à descrição do conteúdo de um documento eletrônico.
• A definição de tags próprias confere à linguagem XML
“habilidades estruturais/semânticas”, que possibilitam
melhorias significativas em processos de recuperação e disseminação da informação;
• Para criar uma estrutura compreendida por todos é
necessário se definir um DTD ou XML Schema (um tipo de gramática para a estrutura);
• Se todos os envolvidos com o documento XML
reconhecerem sua estrutura de forma padronizada eles poderão fazer intercâmbio de dados
Conclusões
• As linguagens de Marcas formam um importante
suporte para a Ciência da Informação;
• São relevantes os estudos que possam verificar os
benefícios reais para processos de recuperação da informação, a partir das possibilidades
estruturais/semânticas com o uso da XML;
• Pode-se dizer que a passagem de uma marcação de
apresentação com HTML para uma marcação
estrutural com XML é uma fase importante no esforço para se transformar a Web de um espaço global de
CINF0033 - Estruturas e Linguagens da Informação 49
Referências
•
Artigos de (Almeida,2002) e (Bax, 2001)
•
(FEITOSA, 2006)
–
Seções 4.4, 4.4.1 e 4.4.2
•
Tutorial XML
–
http://www.brics.dk/~amoeller/XML/index.html
–
Anders Møller and Michael Schwartzbach, 2003.
–
Parte dos slides são baseados neste tutorial.
•
http://www.w3.org/standards/semanticweb/
Referências sobre XML
•
World Wide Web Consortium (W3C).
eXtensible Markup
Language
. http://www.w3.org/XML/.
Aborda XML e suastecnologias. Contém as últimas especificações de XML, XPath, XMLSchema, XSLT, XSL-FO, XQuery, XLink, XPointer, SVG, XHTML ...
•
Tutoriais do W3Schools
– http://www.w3schools.com/xml/default.asp
CINF0033 - Estruturas e Linguagens da Informação 51
Referências sobre XML
•
Existem vários livros sobre XML
• PITTS-MOULTIS, N.; KIRK, C. XML Black Book. São Paulo:
MAKRON Books, 2000. ISBN 85-346-1262-5. Aborda o básico de XML com profundidade.
• Elliotte Rusty Harold. XML 1.1 Bible, Third Edition, 2004.
Capítulos em: http://cafeconleche.org/books/bible3/chapters/