Validação HTML
W3C
"The World Wide Web Consortium" ou W3C é um consórcio
internacional com o objetivo de reunir desenvolvedores de
todo o mundo para estabelecer padrões e diretrizes para a
Web.
http://www.w3c.org/
Tim Berners-Lee criou o W3C em 1994, como um consórcio
dedicado a construir um consenso sobre as tecnologias
Web. Tim Berners-Lee também inventou a WWW (World
Wide Web) em 1989, enquanto trabalhava no European
Organization for Nuclear Research (CERN).
Um documento HTML válido declara qual versão da
linguagem está sendo usada.
O DTD (Document Type Definition) nomeia a definição do
tipo de documento em uso.
O HTML 4.01 especifica 3 DTDs que podem ser incluídos
na declaração do documento.
HTML 4.01 Strict DTD
Inclui todos os elementos e parâmetros não obsoletos ou
que não aparecem num documento frameset.
Para documentos que utilizam este DTD, incluir na primeira
linha do código HTML esta declaração:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
HTML 4.01 Transitional DTD
Inclui tudo que está no Strict DTD mais os elementos e
parâmetros obsoletos (muitos dos quais diz respeito à
apresentação visual).
Para documentos que utilizam este DTD, incluir na primeira
linha do código HTML esta declaração:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
HTML 4.01 Frameset DTD
Inclui tudo que está no Transitional DTD mais os frames.
Para documentos que utilizam este DTD, incluir na
primeira linha do código HTML esta declaração:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
Exemplo:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>my first HTML document</title>
</head>
<body>
<p>Hello world!</p>
</body>
</html>
XML
eXtensible Markup Language
ou
Linguagem de Marcação Extensível
É uma metalinguagem extensível desenvolvida pela W3C
(World Wide Web Consortium.
É uma simplificação e adaptação da linguagem SGML
(Standard Generalized Markup Language), com
implementação para Web.
Não é apenas uma linguagem de marcação como a HTML.
Possibilita a utilização de vários recursos importantes, com
possibilidade de definir linguagens para diferentes
necessidades:
• SVG (Scalable Vector Graphics), linguagem para
descrever gráficos vetoriais bidimensionais, estáticos
ou animados;
• MathML (Mathemathical Markup Language) para
expressar notações matemáticas em páginas Web;
• Tamino banco de dados baseado em um “engine”
XML.
Surgiu a partir de 1996, quando especialistas em SGML,
sob a chefia de Jon Bosak, da Sun Microsystems, uniramse para definição de um novo padrão de marcação que
pudesse ser utilizado na Internet, constituindo-se em uma
versão simplificada da SGML, cujo objetivo principal era
fornecer aos desenvolvedores da Web maneiras de definir
e criar seus próprios marcadores e atributos quando
necessário, em vez de estarem restritos ao esquema de
marcação da HTML.
No final de 1996, o comitê de trabalho anunciou a primeira
versão preliminar da XML em uma conferência realizada
em Boston, nos Estados Unidos.
Novos recursos foram consolidados no primeiro semestre
de 1997.
Portanto, na XML o desenvolver define marcadores
personalizados, onde o significado de seu conteúdo é
mais compreensível tanto para os seres humanos
quanto para os computadores.
A linguagem XML compreende um conjunto de regras
para definição de tags semânticas que permitem
organizar elaborar um documento, identificando as
partes que o compõe.
Um documente XML é composto de três elementos
distintos:
• Conteúdo dos dados: informações armazenadas
entre as tags.
• Estrutura: organização dos elementos dentro do
documento, que pode possuir diversos tipos de
formato, como um memorando, um contrato, uma
receita, um orçamento conforme as necessidade de
marcação da informação.
• Apresentação: forma como as informações serão
apresentadas ao leitor do documento. Um mesmo
documento pode ser visualizado de diversas formas.
Estrutura do XML
O XML oferece ao seu desenvolvedor a possibilidade
de definir as suas próprias tags à medida e conforme
as suas necessidades.
No entanto, há um conjunto de regras que devem ser
seguidas para se obter um documento "bem formado",
ou seja, um documento que respeita integralmente as
regras gramaticais definidas.
Esta restrição permite o processamento do XML de
forma muito mais eficiente do que no HTML, a
simplificação do software de processamento e a
representação de uma estrutura de dados de forma
inequívoca.
Um documento XML é composto por duas partes distintas:
• Cabeçalho <?xml version="1.0"> (facultativo)
• Árvore de elementos
Ex: <marca>
....
conteúdo
....
</marca>
Além disso, existem mais três gêneros de informação:
• Declaração XML
• Instruções de processamento
• Declaração de tipo de documento (DTD)
Quanto à estrutura deve salientar-se que:
Os documentos XML começam sempre pela declaração do
XML
<?xml version="1.0"?>
A seguir à declaração do XML vem a declaração do tipo
de documento (DTD)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
Só pode existir uma raiz por documento, esta tem que ter
um nome único e deve possuir um significado óbvio
<apresentação>
Os elementos são usados para definir o conteúdo do
documento XML, podem conter outros elementos, texto ou
estar vazios
<aluno>
Quanto à estrutura deve salientar-se que:
Os atributos definem propriedades sobre os elementos e
não podem ser repetidos dentro de um elemento
<dia data="10" assunto="O que é o XML?"/>
Existem uma série de entidades prédefinidas no XML, mas é possível criar as
próprias entidades.
Os comentários não podem aparecer dentro
dos elementos e possuem a mesma sintaxe
do HTML
<!- - isto é um comentário - ->
O XML é case-sensitive
<ELEMENTO> é diferente de <elemento>
Quanto à estrutura deve salientar-se que:
Todos os atributos devem estar entre
aspas
<apresentação título="xml"/>
Todos os elementos devem possuir uma
etiqueta de início e de fim
<título>Estrutura do XML</título>
Todos os elementos devem estar contidos
num elemento raiz que identifica o
domínio. Os elementos XML não podem
começar por números, ou sinais de
pontuação, embora possam incluir
números e os caracteres:
_ (underline)
: (dois pontos)
Um documento XML é considerado bem formado
quando:
• possuir um único elemento raiz, dentro do qual
todos os outros elementos serão inseridos;
• possuir um par de tags, uma inicial e outra final,
para abertura e fechamento, respectivamente, de
um elemento;
• o nome da tag de abertura deverá ser idêntico à tag
de fechamento;
• todo elemento deve ser aninhado, sem
entrelaçamento.
Documentos que
não usam XML
Documentos bem formados
Documentos
válidos
Documentos em
conformidade
com namespace
Documentos
válidos
baseados em
schema
Relações existentes entre níveis de conformidade de XML
Exemplos
<?xml version="1.0" encoding="ISO8859-1"?>
<construcaocivil>
<vasosanitario>
<nome>Vaso sanitário para banheiro</nome>
<descricao>Vaso em Louça</descricao>
<fabricante>Vasolegal</fabricante>
<valor>42,51</valor>
<quantidade>10</quantidade>
</vasosanitario>
<pia>
<nome>Pia para cozinha</nome>
<descricao>Feita em granito</descricao>
<fabricante>Piaboa</fabricante>
<valor>23,40</valor>
<quantidade>5</quantidade>
</pia>
</construcaocivil>
Exemplos
<?xml version="1.0" encoding="ISO8859-1"?>
<!DOCTYPE MENSAGEM SYSTEM "mensagem.dtd">
<mensagem>
<remetente>
<nome>Alfredo Reino</nome>
<mail>[email protected]</mail>
</remetente>
<destinatario>
<nome>Bill Clinton</nome>
<mail>[email protected]</mail>
</destinatario>
<assunto>Ola Bill</assunto>
<texto>
<paragrafo>Olá. Como está? Faz
<enfase>muito</enfase> tempo que você não escreve.
</paragrafo>
</texto>
</mensagem>
DTD
Document Type Definition
ou
Declaração do Tipo de Documento
É um documento tipo texto que contém todas as regras
estabelecidas para a elaboração de um documento XML
qualquer.
A função do DTD é definir todas as tags que um
documento XML pode conter, determinando a ordem em
que elas aparecem, além de indicar todas as partes
obrigatórias e opcionais.
Também é responsável por armazenar diversos elementos
utilizados nos documentos, como os atributos que as tags
podem conter e as entidades utilizadas nos documentos.
Com o DTD é possível realizar a validação de um
documento, verificando se ele foi criado corretamente,
segundo os padrões estabelecidos.
Na XML, ao contrário da HTML, é obrigatório a criação de um
DTD, para que o browser possa verificar a validade das tags
utilizadas.
A declaração do DTD pode ser interna (dentro do próprio
documento XML) ou externa (num arquivo externo).
Basicamente, o DTD deve reconhecer os seguintes blocos de
construção:
• elementos: são blocos de construção utilizados tanto em
HTML quanto em XML.
• tags: são os elementos marcadores que possuem abertura e
encerramento.
• atributos: fornecem informações extras sobre os elementos
e são inseridos nas tags iniciais de um elemento. Possuem
um nome e um conteúdo.
• entidades: são variáveis designadas para conter textos ou
documentos.
• notações: existem duas formas de notação:
• PCDATA – possibilita o armazenamento de texto que
será interpretado pelo analisador do documento
• CDATA – armazena texto não interpretado pelo analisador.
A validação pode ser feita através:
• de uma ferramenta externa, como a XMLValidator;
• de um endereço Web;
• ou por meio do próprio browser (utilizando o parser
XML ou instalando um plug-in).
Além do DTD, que possui sua sintaxe própria, pode-se
verificar a integridade dos dados de um documento XML
através do XML Schema.
Exemplos
Exemplo de documento XML com DTD interno (linhas 111):
<?xml version="1.0" encoding="ISO8859-1"?>
<!DOCTYPE construcaocivil [
<!ELEMENT construcaocivil ANY>
<!ELEMENT vasosanitario (nome, descricao, fabricante, valor,
quantidade)>
<!ELEMENT nome (#PCDATA)>
<!ELEMENT descricao (#PCDATA)>
<!ELEMENT fabricante (#PCDATA)>
<!ELEMENT valor (#PCDATA)>
<!ELEMENT quantidade (#PCDATA)>
<!ELEMENT pia (nome, descricao, fabricante, valor)>
]>
<construcaocivil>
<vasosanitario>
<nome>Vaso sanitário para banheiro</nome>
<descricao>Vaso em Louça</descricao>
<fabricante>Vasolegal</fabricante>
<valor>42,51</valor>
<quantidade>10</quantidade>
</vasosanitario>
<pia>
<nome>Pia para cozinha</nome>
<descricao>Feita em granito</descricao>
<fabricante>Piaboa</fabricante>
<valor>23,40</valor>
<quantidade>5</quantidade>
</pia>
</construcaocivil>
Exemplos
Exemplo de documento XML com DTD externo:
Criar um arquivo texto com a extensão .DTD, com as seguintes
informações:
<!ELEMENT construcaocivil (vasosanitario, pia)>
<!ELEMENT vasosanitario (nome, descricao, fabricante, valor,
quantidade)>
<!ELEMENT pia (nome, descricao, fabricante, valor,
quantidade)>
<!ELEMENT nome (#PCDATA)>
<!ELEMENT descricao (#PCDATA)>
<!ELEMENT fabricante (#PCDATA)>
<!ELEMENT valor (#PCDATA)>
<!ELEMENT quantidade (#PCDATA)>
E acrescentar a seguinte linha de instrução no documento
XML
<!DOCTYPE construcaocivil SYSTEM "construcao.dtd">
Formatação de um
documento XML
Pode ser feita através de:
• CSS
• XSL
XSL
eXtensible Stylesheet Language
É uma linguagem de folhas de estilo.
Um conjunto de instruções destinadas à visualização.
Divide-se em duas partes:
• uma para transformar o documento XML em outro tipo
de documento
• outra para definir objetos de formatação para
apresentação gráfica:
• XSLT – linguagem de transformação
• XSLFO – linguagem de formatação de objetos
O XSL é especialmente conhecido através da sua linguagem
de transformação XSLT.
É com este tipo de aplicação que o XSL está implementado
nos browsers www utilizados na Internet.
O XSLT é uma linguagem XML que respeita as regras de bem
formado e válido.
Define: uma transformação a ser aplicada a um documento
XML; a transformação de um documento original HTML válido
e bem formado, de forma a respeitar as regras do XML.
Os documentos XML são hierárquicos, o que quer dizer que
podem ser vistos como uma árvore onde cada nível possui
vários elementos.
O XSLT tem definidas transformações que podem abarcar
um elemento, um ou vários níveis.
A aplicação XSLT percorre o documento, verificando para
cada nível se existe uma transformação associada. Caso
exista ela é aplicada. A escolha dos elementos a transformar
é feita através de operadores de seleção e de pattern
matching.
Aplicações da XML
Apesar de recente, tem já hoje grande implementação na
área das tecnologias de informação, marcando presença em
grande parte dos sistemas baseados em tecnologias Web e
que tenham sido implementados recentemente.
Exemplos de implementação de soluções XML: operações
bancárias, leilões on-line, pesquisa indexada de
documentos, comércio eletrônico.
A maior parte das soluções de E-Commerce implementadas
em ambientes Web, utilizam precisamente o XML. O objetivo
destas aplicações é a integração de sistemas e tecnologias
diversas, com apenas uma coisa em comum: a utilização do
XML como linguagem de comunicação.
Também no mundo empresarial esta tecnologia é utilizada,
por exemplo, para realizar ações que se repetem
periodicamente, como é o caso dos relatórios estatísticos, em
que o relatório em si, só é produzido uma vez em XML,
depois é visualizado no meio que for desejado, qualquer que
ele seja.
O XML trás igualmente valor acrescentado aos portais na
medida em que pode ser utilizado para selecionar conteúdos,
sendo possível a personalização de uma página em função
do perfil do desenvolver, através de folhas de estilo ou por
aplicação de filtros na pesquisa na base de dados.
No contexto das bibliotecas digitais, a utilização desta
ferramenta é, seguramente, um passo importante numa nova
estruturação e organização do conhecimento e da difusão da
informação.
Referências bibliográficas
FULGERI, Sérgio. Ensino Didático da Linguagem XML.
São Paulo: Ed. Érica, 2001.
WALSH, Norman. A Technical Introduction to XML.
http://www.xml.com/pub/a/98/10/guide0.html. Acesso em
29/10/2006.
Download

PPT