240 likes | 311 Vues
Learn about HTML, SGML, and XML for structuring and presenting documents online. Explore the advantages and disadvantages of each language and how to navigate their limitations. Discover XML's adaptable markup language for versatile applications.
E N D
CAP353 – Aplicações Baseadas em Hiperdocumentos N. L. Vijaykumar Sala 18 no Prédio do LAC vijay@lac.inpe.br 3945-6549
Referência • Mini-Curso dado no evento WEBMÍDIA em Salvador em 2003 por Renata Pontin de Mattos Fortes do ICMC (USP-São Carlos)
Documento • Conteúdo • Estrutura • Apresentação • Semântica • Metadados (autor, título, …) • “Links” (índice, rodapé, …)
HTML-HyperText Markup Language • Uma linguagem para especificar como os documentos serão apresentados • Não tem suporte para flexibilizar aplicações • Não tem suporte para tornar aplicações interoperáveis
Desvantagens do HTML • Projetado para apresentar documentos • Definição de novos elementos não é reconhecida pelas aplicações • Não é possível reutilizar (e.g. não pode “processar” para extrair somente um subconjunto de informações)
Como contornar isto? • Extensão de marcadores • Criar próprios marcadores para definir melhor os documentos • Associar significado aos campos (e dados) do documento para poderem ser tratados computacionalmente • SGML (Standard Generalized Markup Language)
SGML • É uma meta-linguagem para especificar estrutura de documentos • Hierarquiza os elementos • Não há regra sobre tipos de elementos e relacionamentos entre si • Especificação formal • Há uma gramática para ser validada • Aplicações para tratar o documento
SGML • Documento pode ser reusado por outras aplicações • Arquivos texto: facilidade de edição • Por que não usar em vez de HTML? • SGML -> poderosa mas cara! • Maior poder de expressão • Maior flexibilidade • Processamento “pesado” na Web • HTML -> prática mas limitada!
SGML • Maior poder de expressão • Maior flexibilidade • Processamento “pesado” na Web • Custo muito alto para processar documentos • Inviabiliza seu uso em aplicações que rodam em ambiente distribuído da Web
XML-Extensible Markup Language • Versão mais compacta para desenvolver aplicações que podem funcionar em dispositivos portáties com poucos recursos • Linguagem de Marcação para representar documentos onde o foco principal é agregar informações • Duas categorias de informações • Conteúdo • Organização deste conteúdo
XML – “Acessórios” • Estrutura e Semântica • DTD • XML Schema • Apresentação • CSS • XSL • XPath, XSLT e XSL-FO
XML – “Acessórios” • Metadados e Semântica • RDF e RDF Schema • Estrutura de Hipertexto • XLink e XPointer • Processamento de Documentos • DOM • SAX • Aplicações, …
XML – “Acessórios” • XML Schema – gramática com forte tipagem de dados • XSLT – converte para outro tipo (PDF, PS, RTF, …) • RDF – descreve metadados e semântica • SOAP – protocolo para comunicar entre ambientes distribuídos
XML • Linguagem • Existem regras para escrever documentos que devem ser obedecidas para estar de acordo com XML • Meta-Linguagem • Gramáticas podem ser definidas para classes específicas de documentos (elementos, atributos e regras de como compor)
XML–Algumas metalinguagens • CML – química • MathML – matemática • WML – wireless • SVG – gráficos • OFX - finanças
XML – seu uso • Troca de dados entre sistemas incompatíveis • Comunicação no sistema financeiro • Compartilhar dados • Disponibilidade de dados para mais usuários
XML - Síntaxe • Caracteres UNICODE • 0 – 127 (Latin básico – ASCII, inglês USA) • 128-255 (Latin-1, português, inglês UK, francês, italiano, espanhol, etc.) • 19966-40959 (Ideogramas – chinês, japonês, etc.) • 57344-63743 (reservado para desenvolvedores) • Comentários, Elementos, Atributos
XML - Síntaxe • Sensível a letras maiúsculas e minúsculas • Nomes começam com letra ou _ • Uso de atributo encoding • <?XML version=“1.0” encoding=“ISO-8859-1”?> • start-tag, end-tag, atributos
XML - Síntaxe • Comentários • <!---Começa nova seção---> • Instruções • <?xml version = “1.0”?> • Raíz e aninhamento (documento bem formado)