View
111
Download
3
Category
Preview:
Citation preview
Tecnologias XML e Aplicações
DOMDocument Objetc Model
Construção de documentos XML.
Manipulação do conteúdo de documentos.
Documentos são representados como uma estrutura de árvore hierárquica.
Adicionar dados, remover dados ou consultar dados.
W3C provê uma recomendação padrão para construir uma estrutura de árvore em memória para documentos XML, chamada DOM.
<? xml version = “1.0” ?>
<message from=“Paul” to=“Tom”>
<body>Hi, Tom!</body>
</message>
Resulta numa árvore DOM.
Árvore DOM
message
body
Hi! Tom
from to
Parsers
Parsers baseados em DOM.
Biblioteca programática chamada DOM API.
Permite dados em um documento XML serem acessados e modificados manipulando os nodos na árvore DOM.
DOM API está disponível em linguagens como C, Java, VBScript, ...
JDOM
Trabalhar documentos XML em Java.
Parsers baseados em DOM são escritos em uma variedade de linguagens e são disponíveis para download.
Internet Explorer 5 tem um parser embutido.
Parsers DOM
JAXP – Sun Microsystems, Java API for XML Parsing, www.java.sun.com/xml
XML4J – IBM’s XML Parser for Java,
www.alphaworks.ibm.com/tech/xml4j
Xerces – Apache’s Xerces Java Parser
www.xml.apache.org/xerces.
msxml – Microsoft’s XML Parser 2.0, embutido no Internet Explorer 5.5. Versão 3.0 em msdn.microsoft.com/xml.
4DOM – Python programming language, em fourthought.com/4Suite/4DOM.
XML:DOM é um módulo Perl para manipular documentos XML usando Perl.
www-4.ibm.com/software/developer/library/
xml-perl2.
Componentes DOM
Para uma lista completa de interfaces e classes DOM, veja a documentação HTML:
( index.html na api folder )
incluído com p JAXP.
Componentes DOM
DOM classes e interfaces
Métodos Document
XMLDocument methods
Node methods
Node Types
Element methods
Partes para um exemplo demonstrativo DOM
Uma aplicação Java que valida um documento XML.Exemplo em Java para substituir um nodo-texto existente no documento XML.Um manipulador de erros.O documento XML de entrada.Saída do documento substituto.Construindo o documento XML com DOM.Usar DOM para percorrer a árvore do documento XML.
SAX Simple API for XML
SAX
DOM – programaticamente para manipular um documento XML.SAX – outro método para acessar um conteúdo de documento XML.Desenvolvido por membros do XML-DEV mailing list, desde Maio de 1998.Método alternativo para parsear documentos XML, que usa um modelo baseado em eventos.
DOM x SAX
DOM e SAX são APIs diferentes para acessar informação em documentos XML.
DOM é um modelo baseado em árvore que armazena os dados de documentos em uma hierarquia de nodos.
Em DOM, todos os dados do documento XML ficam na memória.
DOM x SAX
Assim, em DOM, dados podem ser rapidamente processados.DOM provê facilidades para adicionar ou remover nodos, modificando o documento.SAX invoca métodos quando marcações do documento ( start tag e end tag, ... ) são encontradas.
DOM x SAX
Eventos são marcações.
Em SAX, nenhuma estrutura de árvore é criada para armazenar os dados do documento XML.
Dados são passados à aplicação, a partir do documento XML, como ele é encontrado.
Maior desempenho e menos overhead memória do que DOM.
DOM x SAX
Parsers DOM usam um parser SAX para recuperar dados de um documento, para depois se construir a árvore DOM.
Muitos programadores acham mais fácil percorrer e manipular documentos XML usando a árvore DOM.
DOM x SAX
Parsers SAX são tipicamente usados para lerem documentos XML que não serão modificados.
Parsers baseados em SAX
Disponíveis em uma variedade de linguagens: Java, Python, ...
Diversos parsers baseados em SAX são disponíveis para download. JAXP é um deles. JAXP suporta SAX e DOM.
Xerces suporta SAX e DOM.
MSXML 3.0 suporta SAX e DOM.
XML Path
XPATH
XPath
XML provê um modo de descrever dados.Entretanto, XML não provê um modo para localizar dados estruturados em um dado documento.Um documento XML contendo dados sobre livros necessitaria ser parseado elemento a elemento no sentido de se encontrar um livro específico.Para um documento grande este processo poderia ser ineficiente.
XPath
XML Path Language provê uma sintaxe para localizar partes específicas (por exemplo, valores de atributos) de um documento XML, de uma maneira mais eficiente.
XPath
Xpath não é uma linguagem estrutural, como XML.
É uma linguagem de expressões baseada em string, usada por outras tecnologias XML.
Tal como XSLT (Extensible Stylesheet Language Transformations), que converte documentos XML para outros formatos (por exemplo, para HTML).
XPath
XPointer (XML Pointer Language) que provê um meio de apontar para informação dentro de um documento XML.
Em Xpath um documento XML é visto conceitualmente como uma árvore, na qual cada parte do documento é representada como um nodo.
XPath
Em XPath, o resultado é uma hierarquia de nodos que representam os elementos de um documento XML em uma estrutura propícia à busca.
XPath tem 7 tipos de nodos: root, element, attribute, text, comment, processing instruction, namespace.
Um documento XML
XPath
Os nodos na árvore são similares aqueles de DOM.
XML Query
XQuery
XML Query
Tecnologia relacionada a XML para busca e recuperação de dados XML.
Resource Definition Framework
RDF
RDF
Tecnologia relacionada a XML que habilita autores de documentos a descreverem os dados em documentos XML.
RDF
A disponibilidade da Web e a facilidade de se criar documentos tem conduzido a uma riqueza de informação sobre a Web.
Infelizmente encontrar a informação sobre um tópico específico pode ser difícil e consumir tempo.
RDF
É uma linguagem baseada em XML, para descrever informação contida em um recurso.
Um recurso pode ser uma página Web, um site inteiro ou qualquer item sobre a Web que contenha informação em alguma forma.
RDF
“Informação sobre informação” (metadados) em RDF, pode ser usada por máquinas de busca ou agentes de software inteligentes para listar ou catalogar informação na Web.
RDF
RDF pode também ser usado para avaliar um site Web para “rating purposes” ou para criar assinaturas digitais ( o equivalente de uma assinatura escrita ).
RDF
O modelo e a sintaxe RDF é uma recomendação W3C.
A RDF Schema Specification é ainda uma candidata à recomendação W3C.
RDF
Exemplo simples em RDF.
Ferramenta de Visualização para RDF:
www.w3.org/RDF/Implementations/SiRPAC - para parsear documentos RDF dentro do modelo de dados RDF.
RDF
Um mais substancial documento RDF para descrever um site Web por inteiro.
RDF
Tema de trabalho (A):
1. Descobrir informação na Web, sobre um
tópico específico.
2. Construir agente de software
inteligente para trabalhar como uma
máquina de busca de informação,
através do padrão RDF.
RDF
Tema de trabalho (B)
- Usar RDF para criar assinaturas
digitais.
Tema de trabalho (C)
- Usar RDF para avaliar um site Web para
propósitos de “rating purposes”.
XML Digital Signatures
XML Digital Signatures
Uma recomendação W3C para implementação XML de segurança e tecnologias de autenticação.
DSML – Directory Services Markup Language
Tecnologia relacionada a XML para descrever dados relacionais e metadados (informação sobre informação; elementos são exemplos de metadados) de modo eles possam ser gerenciados por serviços de diretórios (por exemplo, software para gerenciar recursos humanos em uma empresa).
DSML
Serviços de Diretório provêem um método para gerenciar recursos relacionais e metadados.
Além do uso para armazenar registros de bens organizacionais, serviços de diretório podem ser usados com XML, para dinamicamente combinar com dados através de redes.
DSML
É a ponte entre serviços de diretório e XML.
Um vocabulário padrão e esquema apropriado ( XML Schema ) provêem os meios para informação de serviços de diretório ser descrita em um documento XML.
DSML
Com DSML, diretórios podem manipular aplicações distribuídas baseadas na Web, tais como aquelas usadas em e-business, redes e gerenciamento da cadeia de fornecedores.
DSML
É independente de plataforma, requerendo somente que os dados sejam estruturados, de modo que eles possam manipulados
DSML
Referências DSML na Web: www.dsml.org é o site oficial do padrão
DSML.
www.oasis-open.org/cover/dsml.html Introdução à DSML, links relevantes e
artigos.
XML Topic Maps
XTM
XTM
Tecnologia relacionada a XML para mapeamento de informação.
Padrão International Standards Organization (ISO).
Novo modelo para navegar (navigating) e ligar (linking) recursos.
XTM
Esse modelo pode ser pensado como a essência de um índice, glossário, dicionário de sinônimos ou um mapa de conceitos ( concept map ) (por exemplo, a representação gráfica de dados).
XTM
XML separa conteúdo da apresentação.Topic Maps (XTM) separa conteúdo de links.Topic Maps (XTM) existe como níveis de hipertexto (hypertext layers) acima de um conjunto de informação, ao contrário do que dentro desse conjunto.O mesmo como XLink faz.
XTM
Capacidade de ligação (linking).
Habilidade para independentemente referenciar recursos.
O conceito de topic: unidade básica de um mapa de tópicos.
XTM
Um topic é usado para representar um tema, um assunto ou uma matéria sobre alguma coisa e referenciar dados pertinentes a aquele assunto.
Cada topic é descrito por outros topics que detalham: seus nomes, ocorrências e associações.
XTM
As ocorrências de um topic são os vários recursos de informação que se relacionam a ele.
Cada ocorrência tem um certo role (papel) tal como um “chart” ou “article” e um “type” que provê informação adicional sobre o papel exercido.
Ocorrência = (papel, tipo)
XTM
Os vários relacionamentos entre topics (tópicos) são descritos usando-se associações de diferentes tipos, bem como o papel que cada tópico exerce dentro da associação.
XTM
Topic Maps incorporam mecanismos que definem a identidade e escopo de um tópico, bem como as facetas ou propriedades da informação que ele referencia.
Quase todo componente de um mapa de tópico é um tópico, habilitando o mapa de tópico ser auto-documentável (self-documenting) e auto-descrito (self-describing).
XTM
Instruções de processamento, consultas (queries) e esquemas (schemas) para mapas de tópicos podem eles próprios serem expressas como mapas de tópicos.
XTM
Dependendo de sua aplicação, uma mapa de tópico pode considerar diferentes assuntos serem tópicos e tratá-los em diferentes modos.
Múltiplos mapas de tópicos podem ser aplicados a um conjunto de informações e um mapa de tópico pode ser aplicado a múltiplos conjuntos de informações.
XTM
Exemplo de mapa de tópico com: - abordando vários tópicos - suas associações - suas ocorrências - uma aplicação implementada em uma linguagem de programação (por exemplo, Python, Java, ...) usada para consultar o mapa de tópico, conforme comandos do padrão Topic Map.
Virtual HyperGlossary
VHGVHG
VHG
Especificação independente de plataforma, para terminologia.
Provê um método de gerenciamento de conhecimento que liga (attaches) informação semântica extensiva para dados estruturados, habilitando-os, por exemplo, a definições humanas entendíveis para serem ligadas (attached) a tags.
VHG
VHG especifica um framework de glossários “hiperlinkados”, dicionários e tesauros que provêem documentos com um ambiente terminológico.
Documentos podem ser “linkados” a um glossário que tem uma extensiva rede de “hiperlinks” internos
VHG
Usa XML DOM para dar a seus glossários uma estrutura hieráquica que pode ser facilmente buscada e indexada.
VHG tem ferramentas de software que proporcionam capacidades avançadas, incluindo marcação léxica automática de documentos, ... ...
VHG
... ... indexação avançada, geração de mapa de conceitos (concept-map), manipulação taxonômica de glossários e suporte para glossários multilinguísticos usando algoritmos de tradução.
VHG
Recursos Web: www.vhg.org.uk site oficial VHG que
contém informação extensiva sobre VHG.
www.oasis-open.org/cover/vhg.html que contém breve informação e links para recursos relevantes e artigos.
RSS – Rich Site Summary
Também, uma tecnologia relacionada a XML que provê conteúdo dinâmico para assinantes de um serviço na Web.
ICE – Information and Content Exchange
Tecnologia relacionada a XML que gerencia o “content syndication” sobre redes.
P3P – Platform for Privacy Preferences
Tecnologia relacionada a XML em conformidade com uma especificação de políticas de privacidade de sites Web.
BXXP – Bloks Extensible Exchange Protocol
Uma tecnologia relacionada a XML para transferência de dados sobre a Internet.
XrML – Extensible Rights Markup Language
Tecnologia relacionada a XML para licenciamento de conteúdo digital proprietário (licensing property digital content).
XMI – XML Metadata Interchange
Tecnologia XML para o intercâmbio de dados sobre a modelagem de programas (exchanging program-modeling data).
CDF – Channel Definition Format
Tecnologia relacionada a XML que provê conteúdo (informação) dinâmico para assinantes de um serviço na Web.
Recommended