Gerência de Dados da Web - DCC922 -



Documentos relacionados
Dados Semi-Estruturados e XML

Introdução de XML. Dados da Web. Gerência de Dados da Web. A Web representa, nos dias de hoje, um repositório universal de dados, onde:

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) XML Origens. HTML Problemas

Dados Semi-Estruturados e XML

Recapitular XML... Gestão e Tratamento de Informação DEI IST

XML: uma introdução prática X100. Helder da Rocha

Bases de dados semi-estruturadas, XML

Dados Semi-Estruturados e XML. Alberto Laender - DCC/UFMG

XML XML. XML extensible Markup Language HTML. Motivação. W3C: World Wide Web Consortium XML 1.0. Mário Meireles Teixeira DEINF-UFMA

Banco de Dados. Gerenciamento de Dados e Informação Fernando Fonseca, Ana Carolina Salgado & Robson Fidalgo

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi

XML. 1. XML: Conceitos Básicos. 2. Aplicação XML: XHTML 3. Folhas de Estilo em Cascata XML

XML Schema. Vanessa de Paula Braganholo ftp://metropole/pub/curso/xml/index.html. Janeiro de XML Schema

GERÊNCIA DE DADOS SEMIESTRUTURADOS -DTD. Prof. Angelo Augusto Frozza, M.Sc.

Um documento XML possui Unidade lógica - os elementos Usuário "inventa" as marcas através de DTDs

L A C Laboratory for Advanced Collaboration

extensible Markup Language (XML) XML é uma linguagem de anotação. XML utiliza tags para descrever informação.

Introdução XML. Vanessa Braganholo

Introdução. Definição. Validação. Universo XML. Apresentação. Processamento. Prof. Enzo Seraphim. Banco de Dados

Controle de Restrições de Integridade de Domínio em Documentos XML

XML extensible Markup Language. Prof. Fellipe Aleixo

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA

Este relatório tem por objetivo, abordar a sintaxe XML.

Sintaxe XML. César Vittori Outubro de Resumo Introdução à sintaxe XML. Marcação tradicional x marcação de documentos

Introdução ao XML. Extensible Markup Language

XML (extensible Markup Language)

Tópicos. Apresentando a família XML HTML HTML. XML extesible Markup Language. Problemas com o HTML

Sistemas de Gerência de Bancos de Dados. 7 - Outras Arquiteturas para SGBDs SGBDs e a Web

XML. Prof. Júlio Machado

Keli Cristina Manini Susane Schmidt. Uma Ferramenta para Geração de Esquemas XML a partir de Documentos XML

XML (extensible Markup Language) por. Rafael Port da Rocha. (Notas de Aula)

XML XML. Motivação. Mário Meireles Teixeira DEINF-UFMA

GERÊNCIA DE DADOS SEMI ESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc.

Dados Semi-Estruturados

XDocValidator: Uma Interface Gráfica Para Atualização e Validação Incremental de Documentos XML

XML. Prof. Júlio Machado

introdução principais componentes

Uma Abordagem Alternativa para o Armazenamento Electrónico de Dados: O Papel da Norma XML

Desmistificando XML: da Pesquisa à Prática Industrial

Esquemas para Dados XML

XML para transferência de dados Estrutura hierárquica do XML DTDs e XML Schema Consultas de documentos XML: XPath e XQuery Transformação de

Série Desenvolvimento de Sistemas. Curso de XML. Conceito básicos, XML Schema, Namespaces, DOM/SAX, XPath, XSLT, XLink e XPointer.

MAPEAMENTO DE CONSULTAS SQL EM XML ENTRE SISTEMAS GERENCIADORES DE BANCO DE DADOS RELACIONAIS

XML. Introdução Ferramentas para Internet Marx Gomes Van der Linden. ( Material baseado no original de Marcelo José Siqueira Coutinho de Almeida )

GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc.

Um estudo sobre esquemas para documentos XML

Dados na Web integrar irregular ausente não conhecida completamente evoluem Fernando Fonseca Ana Carolina Robson Fidalgo

Uma Abordagem para o Mapeamento de Definições XML Schema para SQL:1999

A Linguagem XML (& Markup Languages)

GERÊNCIA DE DADOS SEMI ESTRUTURADOS - XQUERY. Prof. Angelo Augusto Frozza

Web de hoje (2.0) Porquê WEB 2.0?

GERÊNCIA DE DADOS SEMIESTRUTURADOS -XML. Prof. Angelo Augusto Frozza, M.Sc.

Dados na Web. Gerenciamento de Dados e Informação. Web X Banco de Dados. Representação de Dados para Web/BD. Estrutura dos Dados. Web X Banco de Dados

Sumário. XML (extensible Markup Language)

Linguagens de interrogação de dados XML - XPath. Gestão e Tratamento de Informação DEI IST

Roteiro para Transmissão Ambiente de Testes da Guias Online

Leiaute-IMPORTAÇÃO-Plano de Contas - XML

XHTML 1.0 DTDs e Validação

Padrões, Ferramentas e Boas Práticas no Desenvolvimento de Software para Web Semântica

Módulo III Introdução a XML

XML (extensible Markup Language)

extensible Stylesheet Language (XSL) XSL descreve como fazer o display de um documento XML. XSL é uma espécie de style sheets para XML...

BREVE INTRODUÇÃO À LINGUAGEM XML

Web Semântica. Web Semântica. uma

Keli Cristina Manini Susane Schmidt. Uma Ferramenta para Geração de Esquemas XML a partir de Documentos XML

IMPLEMENTANDO WRAPPERS XML E RELACIONAL PARA O CoDIMS

Folhas de estilo. Jomi Fred Hübner (XSL e XPath) FURB / DSC

XML para transferência de dados Estrutura hierárquica do XML DTDs e XML Schema Consultas de documentos XML: XPath e XQuery Transformação de

XML - Extensible Markup Language

Linguagem XML. Linguagem XML

XSLT e recursividade estrutural. Gestão e Tratamento de Informação DEI IST

Sumário. Gerência de Dados da Web - DCC922 - Linguagens de Consulta. Características Desejáveis de uma LC/DSE. Linguagens de Consulta

UM MODELO DE MAPEAMENTO DE ESTRUTURAS E DADOS RELACIONAIS PARA DOCUMENTOS XML

XPath e XSLT. Ferramentas para Internet Marx Gomes Van der Linden. ( Material baseado no original de Marcelo José Siqueira Coutinho de Almeida )

Bruno Ribeiro de F. Machado DESENVOLVIMENTO DE UMA FERRAMENTA PARA DOCUMENTAÇÃO DE CÓDIGOS-FONTE BASEADA EM XML

Algoritmia e Programação APROG HTML. Introdução. Nelson Freire (ISEP DEI-APROG 2014/15) 1/15

MARCUS BARBOSA PINTO UMA PROPOSTA PARA INTEGRAÇÃO DE ESQUEMAS PARA DOCUMENTOS XML

XML Básico. Murillo Vasconcelos Henriques B. Castro. 17 de maio de 2011

O Modelo de Entidades e Relacionamentos (MER) é um modelo conceitual usado para projeto de aplicações de banco de dados.

XSL - extemsible Stylesheet Language. Prof. Antonio Almeida de Barros Jr.

O que é XML? A Linguagem de Marcação Extensível (Extensible Markup Language - XML) é:

Introdução à Tecnologia Web 2010 HTML HyperText Markup Language XHTML extensible HyperText Markup Language Elementos da Seção do Cabeçalho

XML Schema. Vanessa Braganholo. Curso baseado em mini-cursos apresentados no SBBD. Autores: Carlos Heuser, Carina Dorneles e Vanessa Braganholo

DTD. Vanessa Braganholo.

Introdução à Dados Semiestruturados e XML

Introdução à Tecnologia Web HTML HyperText Markup Language XHTML extensible HyperText Markup Language Estrutura Básica do Documento HTML

Exercícios Aula 2 BR 2013

Desenvolvimento Web Introdução a XHTML. Prof. Bruno Gomes

Compiladores. Análise léxica. Plano da aula. Vocabulário básico. Motivação para análise léxica. Estrutura de um compilador

Processamento de dados XML

Introdução e motivação SGBD XML Nativo Consultas em SGBDs XML Prática. Bancos de dados XML. Conceitos e linguagens de consulta

Um Estudo das Abordagens para Extração de Esquemas XML

Histórico de Revisões

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

5a. Aula - XML

Transcrição:

Gerência de Dados da Web - DCC922 - XML Fundamentos Alberto H. F. Laender Evolution of Data Management What Who How Long Rel. model a theoretician one paper DBMS system people one book XML W3C committee 15 standards (Dan Suciu, 2001) 2015 Sumário XML (extensible Markup Language) Motivação XML: Sintaxe Básica Elementos Atributos Outras construções Documentos XML Bem Formados Ordem e Referências em Documentos XML XML e Dados Semi-Estruturados Document Type Definitions (DTDs) XML Schema Acessórios XML Padrão W3C que complementa HTML para intercâmbio de dados na Web www.w3c.org/tr/rec-xml Origem: SGML Motivação: HTML descreve apresentação XML descreve conteúdo Aplicações ainda necessitam de componentes de software especiais (wrappers) para extração de dados da Web 1

De HTML para XML HTML <h1> Bibliography </h1> <p> <i> Foundations of Databases </i> Abiteboul, Hull, Vianu <br> Addison Wesley, 1995 <p> <i> Data on the Web </i> Abiteoul, Buneman, Suciu <br> Morgan Kaufmann, 1999 Descreve a apresentação XML <bibliography> <book> <title> Foundations </title> <author> Abiteboul </author> <author> Hull </author> <author> Vianu </author> <publisher> Addison Wesley </publisher> <year> 1995 </year> </book> </bibliography> Descreve o conteúdo XML vs. HTML Marcadores ( tags ) são definidos pelo usuário para indicar estrutura Estruturas podem ser aninhadas em um nível de profundidade arbitrário Um documento XML pode conter uma descrição opcional de sua gramática (ex., DTD Document Type Definition) 2

Exemplo de um Documento XML <bibliography> <description> SSD papers </description> <papers> <paper> <author> Serge Abiteboul </author> <author> Victor Vianu </author> <title> Regular path queries with constraints </title> <year> 1977 </year> <page> <first> 122 </first> <last> 133 </last> </page> </paper> <paper> <author> Serge Abiteboul </author> <title> Querying semistructured data </title> <year> 1977 </year> </paper> </papers> </bibliography> XML: Sintaxe Básica Elementos Componentes básicos de um documento XML <author> Serge Abiteboul </author> <title> Regular path queries with constraints </title> Pares <author> </author> são denominados marcadores Marcadores são definidos pelo usuário Podem ser decompostos em sub-elementos <page> <first> 122 </first> <last> 133 </last> </page> Podem ser repetidos para representar uma coleção <authors> <author> Serge Abiteboul </author> <author> Victor Vianu </author> </authors> Dados tratados como texto: PCDATA - Parsed Character Data XML: Sintaxe Básica Atributos Definem propriedades dos elementos Definidos como pares (nome, valor) <product > <name language = French > trompete six trous </name> <price currency = Euro > 420.12 </price> <address format = XLB56 language = French > <street> 31 rue Croix-Basset </street> <zip> 92310 </zip> <city> Sevres </city> <country> France </country> </address> </product > Introduzem ambigüidade na representação de dados <paper year = 1977 author = Serge Abiteboul > <title> Querying semistructured data </title> </paper> XML: Sintaxe Básica Atributos Uso comum: expressão da dimensão ou tipo do dado representado Só podem ocorrer uma vez para o mesmo elemento <picture> <height dim= cm > 2400 </height> <width dim= in > 96 </width> <data encoding = gif compression = zip > M05-.+C$@02!G96YE<FEC </data> </picture> Do ponto de vista de modelagem, nem sempre é claro quando se deve usar atributos ou não 3

XML: Sintaxe Básica Atributos <pessoa cpf= 123456789 > <nome> João Guimarães Rosa </nome> <email> rosa@sertoes.org.br </email> </pessoa> <pessoa> <cpf>123456789</cpf> <nome> João Guimarães Rosa </nome> <email> rosa@sertoes.org.br </email> </pessoa> Outras Construções XML Exemplos Comentários: <! -- this is a comment -- > Instruções de processamento (PI): <?xml - stylesheet href = book.css type = text/css?> Indicador de versão: <?xml version = 1.0?> CDATA (character data): <![CDATA [<start> this is an incorrect element </end>]]> DTD - Document Type Definition <!DOCTYPE name [markup-declarations]> Um Documento XML Indicador de versão Elemento book Atributo year Elemento editor <?xml version="1.0" encoding="iso-8859-1"?> <bib> <book year="1994"> <title>tcp/ip Illustrated</title> <author><last>stevens</last><first>w.</first></author> <publisher>addison-wesley</publisher> <price>65.95</price> </book> <book year="1992"> <title>advanced Programming in the Unix environment</title> <author><last>stevens</last><first>w.</first></author> <publisher>addison-wesley</publisher> <price>65.95</price> </book> <book year="2000"> <title>data on the Web</title> <author><last>abiteboul</last><first>serge</first></author> <author><last>buneman</last><first>peter</first></author> <author><last>suciu</last><first>dan</first></author> <publisher>morgan Kaufmann Publishers</publisher> <price>39.95</price> </book> <book year="1999"> <title>the Technology and Content for Digital TV</title> <editor> <last>gerbarg</last><first>darcy</first> <affiliation>citi</affiliation> </editor> <publisher>kluwer Academic Publishers</publisher> <price>129.95</price> </book> </bib> Documentos XML Bem Formados Um documento XML é considerado bem formado se: todos os marcadores estiverem corretamente aninhados os atributos forem únicos O fato de um documento XML ser bem formado apenas garante que os seus dados podem ser representados por uma árvore rotulada 4

Ordem em Documentos XML Referências em Documentos XML Um documento XML é uma coleção ordenada de elementos: <person> <fname> John </fname > <lname> Smith </lname > <person> <lname> Smith </lname> <fname> John </fname> não são documentos equivalentes Entretanto, atributos não são ordenados em um documento XML: <person fname = John lname = Smith /> <person lname = Smith fname = John /> são documentos equivalentes Ordem em documentos XML está relacionada à sua origem (SGML) Referências permitem a criação de documentos cuja representação interna corresponde a um grafo <state id= s2 > <scode> NE </scode> <sname> Nevada </sname> </state> <city id= c2 > <ccode> CCN </ccode> <cname> Carson City </cname> <state-of-city idref= s2 /> </city> IDs e IDREFs ID Atributo usado para identificar univocamente um elemento em um documento XML IDREF Atributo que referencia um elemento através do valor de seu atributo ID IDREFS Atributo que referencia um conjunto de elementos através dos valores de seus atributos ID IDs e IDREFs: Exemplo <geography> <states> <state id= s2 > <scode> NE </scode> <sname> Nevada </sname> <capital ideref= c2 /> </state> </states> <cities> <city id= c2 > <ccode> CCN </ccode> <cname> Carson City </cname> <state idref= s2 /> </city> </cities> </geography> 5

IDs e IDREFs: Consistência Se um atributo é declarado como ID: Os valores associados devem ser todos distintos Se um atributo é declarado como IDREF: O valor associado deve existir como valor de algum atributo ID O mesmo acontece para todos os valores associados aos atributos declarados como IDREFS Atributos ID e IDREF(S) não são tipados : Referências nem sempre são feitas ao mesmo tipo de elemento XML e Dados Semi-Estruturados A sintaxe XML se presta perfeitamente para a representação de dados semi-estruturados <person id= o123 > <name> Alan </name> <age> 42 </age> <email> ab@com </email> <person father= o123 > person father name age email Alan 42 ab@com { person: &o123 { name: Alan, age: 42, email: ab@com } } { person: { father: &o123 } } person name age email Alan father 42 ab@com Document Type Definitions (DTDs) Uma DTD serve como uma gramática para o documento XML correspondente à pode ser vista também como um esquema para os dados representados pelo documento XML <db> <!DOCTYPE db [ <person> <!ELEMENT db (person*)> <name> Alan </name> <!ELEMENT person (name,age, <age> 42 </age> email+)> <email> agb@abc.com </email> <!ELEMENT name (#PCDATA)> <!ELEMENT age (#PCDATA)> <person> <!ELEMENT email (#PCDATA)> ]> </db> Document Type Definitions (DTDs) DTDs são gramáticas livres de contexto <!DOCTYPE node [ <!ELEMENT node (leaf (node,node))> <!ELEMENT leaf (#PCDATA)> ]> Elementos definidos por meio de expressões regulares: e* (zero, um ou mais) ex.: person* e+ (um ou mais) ex.: email+ e? (zero ou um) ex.: age? e1,e2 (concatenação) ex.: name,age,email+ e1 e2 (alternativa) ex.: email phone 6

DTDs como Esquemas <db><r1> <a> a1 </a> <b> b1 </b> <c> c1 </c> </r1> <r1> <a> a2 </a> <b> b2 </b> <c> c2 </c> </r1> <r2> <c> c2 </c> <d> d2 </d> </r2> <r2> <c> c3 </c> <d> d3 </d> </r2> <r2> <c> c4 </c> <d> d4 </d> </r2> </db> <!DOCTYPE db [ <!ELEMENT db (r1*, r2*)> <!ELEMENT r1 (a,b,c)> <!ELEMENT r2 (c,d)> <!ELEMENT a (#PCDATA)> <!ELEMENT b (#PCDATA)> <!ELEMENT c (#PCDATA)> <!ELEMENT d (#PCDATA)> ]> Declaração de Atributos em DTDs <product> <name language = French department = Music > trompete six trous </name> <price currency = Euro > 420.12 </price> </product> <!ATTLIS name language CDATA #REQUIRED department CDATA #IMPLIED> <!ATTLIS price currency CDATA #IMPLIED> Declaração de ID, IDREF e IDREFS <!DOCTYPE family [ <!ELEMENT family (person)*> <!ELEMENT person (name)> <!ELEMENT name (#PCDATA)> <!ATTLIST person id ID #REQUIRED mother IDREF #IMPLIED father IDREF #IMPLIED children IDREFS #IMPLIED>]> <family> <person id="jane" mother="mary" father="john"> <name> Jane Doe </name> <person id="john" children="jane jack"> <name> John Doe </name> <mother/> <person id="mary" children="jane jack"> <name> Mary Doe </name> <person id="jack" mother="mary" father="john"> <name> Jack Doe </name> </family> Documentos XML Válidos Um documento XML é considerado válido se, além de bem formado, possuir uma DTD e estiver estruturado de acordo com ela. Para identificadores e referências, requer-se apenas que os valores de atributos do tipo ID sejam únicos e que as referências do tipo IDREF e IDREFS sejam para identificadores válidos. 7

DTDs como Esquemas Limitações Imposição de ordem entre os elementos Inexistência de tipos atômicos Não impõem restrições de integridade Tipos (associados aos elementos) são globais Não há distinção entre referências Não permitem a utilização de namespaces Reusabilidade e extensibilidade limitadas Outras propostas: DCD (Document Content Description) XDR (XML-Data Reduced) SOX (Schema for Object-Oriented XML) XML Schema XML Schema Recomendação W3C aprovada em maio de 2001 para definição de esquemas (XSDs XML Schema Definitions) para documentos XML XSDs definem a estrutura, o conteúdo e a semântica de documentos XML Generalizam as DTDs Usam a sintaxe XML Expressam vocabulários compartilhados Dois documentos definem a linguagem XML Schema XML Schema Part 1: Structures http://www.w3.org/tr/xmlschema-1 XML Schema Part 2: Datatypes http://www.w3.org/tr/xmlschema-2 XSDs vs. DTDs XSDs vs. DTDs Suporte a mais de 40 tipos de dados Suporte ao uso de namespaces Modelagem de dados orientada a objetos Tipos de dados podem ser derivados de outros tipos de dados e herdam suas características Restrições de integridade e valores válidos podem ser especificadas para os elementos Comentários são realmente comentários (documentação) e não especificações de requisitos <!ELEMENT Person (First, Middle?, Last, Age)> <!ELEMENT First (#PCDATA)> <!ELEMENT Middle (#PCDATA)> <!ELEMENT Last (#PCDATA)> <!ELEMENT Age (#PCDATA)> <xs:schema xmlns:xs="http:///xmlschema"> <xs:element name="person"> <xs:complextype> <xs:sequence> <xs:element name="first type="xs:string"/> <xs:element name="middle type="xs:string minoccurs="0"/> <xs:element name="last type="xs:string"/> <xs:element name="age type="xs:integer"/> </xs:sequence> </xs:complextype> </xs:element> </xs:schema> 8

XSDs vs. DTDs XML Schema: Limitações <!ELEMENT Product (Model, Dealer+, Price?)> <!ELEMENT Model (#PCDATA)> <!ELEMENT Dealer (#PCDATA)> <!ELEMENT Price (#PCDATA)> <complextype name=product> <element name= model type= string occurs= REQUIRED /> <element name= dealer occurs= ONEORMORE /> <simpletype> <restriction base= string > <enumeration value= Boils Electronics /> <enumeration value= Nextbest Buy /> <enumeration value= Ed s Mini Mart /> </restriction base> </simpletype> <element name= price type= decimal > <mininclusive value= 0 /> <maxinclusive value= 1000 /> </complextype> XSDs não são definidas para consumo humano! São extremamente verbosas Devem ser geradas automaticamente e processadas por programas (parsers) A especificação XML Schema é bastante extensa contendo centenas de páginas Declaração de componentes não é ortogonal Diversas maneiras de se declarar elementos e atributos Diferentes maneiras de se utilizar namespaces XML Schema: Componentes Tipos Simples e Complexos Definições de Tipo (Type) <simpletype> <complextype> <element> <group> <all> <choice> <sequence> <attribute> <attributegroup> Declaração de Elemento (Element) <element> <simpletype> <complextype> Declaração de Atributos (Attribute) <attribute> <simpletype> Definição de Grupos de Atributos (Attribute Group) <attributegroup> <attribute> Declaração de Notações (Notation) <notation> Anotações (Annotations) <annotation> <appinfo> <documentation> Tipos simples Elementos que contêm apenas texto Sem elementos filhos e sem atributos Podem representar dados numéricos, datas, URLs, etc. <xs:element name= sobrenome" type="xs:string"/> <xs:element name= idade" type="xs:integer"/> <xs:element name= datanascimento" type="xs:date"/> Tipos complexos Elementos que contêm outros elementos ou atributos <xs:element name="empregado"> <xs:complextype> <xs:sequence> <xs:element name="nome" type="xs:string"/> <xs:element name="sobrenome type="xs:string"/> </xs:sequence> </xs:complextype> </xs:element> 9

Outros Exemplos Estatísticas de Uso dos Construtores <xs:element name="pessoa"> <xs:complextype> <xs:all> <xs:element name="nome" type="xs:string"/> <xs:element name="sobrenome" type="xs:string"/> </xs:all> </xs:complextype> </xs:element> <xs:element name="pessoa"> <xs:complextype> <xs:choice> <xs:element name="empregado"/> <xs:element name="socio"/> </xs:choice> </xs:complextype> </xs:element> <xs:element name="pessoa"> <xs:complextype> <xs:sequence> <xs:element name="nomecompleto" type="xs:string"/> <xs:element name="apelido" type="xs:string" maxoccurs="10" minoccurs="0"/> </xs:sequence> </xs:complextype> </xs:element> Laender, A.H.F.; Moro, M.M.; Nascimento, C.; Martins, P. An X-ray on Web-available XML Schemas. SIGMOD Record, 38(1): 37-42, 2009. Acessórios XML Resumo XPath XML Path Language Padrão W3C que permite a navegação em documentos XML XML Links (XLink) e XML Pointers (XPointer) Permitem a navegação pela Web através de apontadores para posições arbitrárias de documentos XML XML: padrão W3C para troca de dados na Web Motivação: HTML descreve apresentação XML descreve conteúdo Propriedades gerais de um documento XML RDF (Resource Description Framework) Ordem dos elementos é irrelevante Permite a representação de metadados em XML à Web Semâtica Deve ser bem formado XSL extensible Stylesheet Language Permite definir apresentações e transformações para documentos XML XSL = XSLT + XPath + XSL-FO Processadores ( parsers ) para XML: SAX (Simple API for XML) DOM (Document Object Model) Referências devem ser consistentes Deve ser válido em relação a uma DTD XML Schema Recomendação W3C para definição de esquemas (XSDs) para documentos XML XSDs: generalizam as DTDs permitindo maior flexibilidade para definir a estrutura dos documentos 10

Referências Abiteboul, S.; Buneman, P.; Suciu, D. Data on the Web: From Relations to Semistructured Data and XML. Morgan Kaufmann, San Francisco, CA, 2000 (Cap. 3). Extensible Markup Language (XML) 1.0 (Fifth Edition) (W3C Recommendation 26 November 2008) http://www.w3.org/tr/xml Lee, D.; Chu, W.W. Comparative Analysis of Six XML Schema Languages. SIGMOD Record, 29(3): 76-87, 2000. 11