SlideShare uma empresa Scribd logo
1 de 13
Espacios de Nombres 
Jose Emilio Labra Gayo 
Departamento de Informática 
Universidad de Oviedo
Problema de la Homonimia 
Homonimia: Mismo nombre con diferentes propósitos 
<país nombre=“Francia”> 
<capital>París</capital> 
</país> 
<país nombre=“Francia”> 
<capital>París</capital> 
</país> 
<inversiones> 
<país nombre=“Francia”> 
<capital>París</capital> 
<capital>1200€</capital> 
</país> 
. . . 
</inversiones> 
Jose Emilio Labra Gayo – Universidad de Oviedo 
<inversión> 
<inversión> 
<capital>7000€</capital> 
<capital>7000€</capital> 
</inversión> 
</inversión> 
¿Cómo combinar en el mismo documento estos vocabularios? 
<inversiones> 
<país nombre=“Francia”> 
<capital>París</capital> 
<capital>1200€</capital> 
</país> 
. . . 
</inversiones> 
Ambigüedad 

Posibles Soluciónes 
Crear una autoridad mundial que asigne nombres... 
... o usar un mecanismo ya existente: URIs 
Una URI es un identificador global único 
Ejemplo: http://www.uniovi.es 
SOLUCIÓN: 
Asociar a cada etiqueta una URI que indica a qué espacio 
de nombres pertenece... 
[http:www.bolsa.com/]:capital 
[http:www.geog.es/]:capital 
Jose Emilio Labra Gayo – Universidad de Oviedo
Solución fácil... 
Asociar a cada etiqueta una URI 
<[http://www.bolsa.com/]:inversiones> 
<[http://www.geog.es/]:país 
[http://www.geog.es/]:nombre=“Francia”> 
<[http://www.geog.es/]:capital>París 
</[http://www.geog.es/]:capital> 
<[http://www.bolsa.com/]:capital>1200€ 
</[http://www.bolsa.com/]:capital> 
</[http://www.bolsa.com/]:país> 
. . . 
</[http://www.bolsa.com/]:inversiones> 
Jose Emilio Labra Gayo – Universidad de Oviedo 
Posibles soluciones 
<[http://www.bolsa.com/]:inversiones> 
<[http://www.geog.es/]:país 
[http://www.geog.es/]:nombre=“Francia”> 
<[http://www.geog.es/]:capital>París 
</[http://www.geog.es/]:capital> 
<[http://www.bolsa.com/]:capital>1200€ 
</[http://www.bolsa.com/]:capital> 
</[http://www.bolsa.com/]:país> 
. . . 
Legibilidad... 
 
</[http://www.bolsa.com/]:inversiones>
<b:inversiones 
xmlns:b=“http://www.bolsa.com/” 
xmlns:g=“http://www.geog.es/”> 
<g:país g:nombre=“Francia”> 
<g:capital>París</g:capital> 
<b:capital>1200€</b:capital> 
</g:país> 
. . . 
</b:inversiones> 
Jose Emilio Labra Gayo – Universidad de Oviedo 
Definición 
Solución: Asociar un alias a los elementos de un espacio de 
nombres dentro de un ámbito 
xmlns:alias define alias en el ámbito de un elemento 
<b:inversiones 
xmlns:b=“http://www.bolsa.com/” 
xmlns:g=“http://www.geog.es/”> 
<g:país g:nombre=“Francia”> 
<g:capital>París</g:capital> 
<b:capital>1200€</b:capital> 
</g:país> 
. . . 
</b:inversiones> 
NOTA: Las URIs sólo se utilizan para que el 
nombre sea único, no son enlaces, ni tienen 
que contener información 
NOTA: Las URIs sólo se utilizan para que el 
nombre sea único, no son enlaces, ni tienen 
que contener información
<b:inversiones 
xmlns:b=“http://www.bolsa.com/”> 
<g:país 
xmlns:g=“http://www.geog.es/” 
g:nombre=“Francia”> 
<g:capital>París</g:capital> 
<b:capital>1200€</b:capital> 
</g:país> 
. . . 
</b:inversiones> 
Jose Emilio Labra Gayo – Universidad de Oviedo 
Asignación Dinámica 
Es posible ir asociando espacios de nombres a los elementos 
según van apareciendo 
<b:inversiones 
xmlns:b=“http://www.bolsa.com/”> 
<g:país 
xmlns:g=“http://www.geog.es/” 
g:nombre=“Francia”> 
<g:capital>París</g:capital> 
<b:capital>1200€</b:capital> 
</g:país> 
. . . 
</b:inversiones>
Espacio de nombres por defecto 
Mediante xmlns=“...” se define un espacio de nombres por defecto 
(sin alias) 
<inversiones 
<inversiones 
xmlns=“http://www.bolsa.com/”> 
xmlns=“http://www.bolsa.com/”> 
<g:país 
<g:país 
xmlns:g=“http://www.geog.es/” 
g:nombre=“Francia”> 
xmlns:g=“http://www.geog.es/” 
g:nombre=“Francia”> 
<g:capital>París</g:capital> 
<capital>1200€</capital> 
<g:capital>París</g:capital> 
<capital>1200€</capital> 
</g:país> 
. . . 
</g:país> 
. . . 
</</inversiones> inversiones> 
Se refiere a 
Jose Emilio Labra Gayo – Universidad de Oviedo 
http://www.bolsa.com/
<mm xmlns:a="http://www.rr.org/" 
xmlns="http://www.ss.org/"> 
<a:nn> 
Jose Emilio Labra Gayo – Universidad de Oviedo 
Ejercicio 
Indicar a qué espacio de nombres corresponde cada etiqueta en el 
siguiente documento XML 
<mm xmlns:a="http://www.rr.org/" 
xmlns="http://www.ss.org/"> 
<a:nn> 
<pp xmlns="http://www.tt.org/" 
xmlns:b="http://www.uu.org/"> 
<b:oo>Hola</b:oo> 
</pp> 
<c:qq xmlns="http://www.vv.org/" 
xmlns:c="http://www.ww.org/"> 
<rr>Adios</rr> 
</c:qq> 
</a:nn> 
</mm> 
<pp xmlns="http://www.tt.org/" 
xmlns:b="http://www.uu.org/"> 
<b:oo>Hola</b:oo> 
</pp> 
<c:qq xmlns="http://www.vv.org/" 
xmlns:c="http://www.ww.org/"> 
<rr>Adios</rr> 
</c:qq> 
</a:nn> 
</mm> 
Herramienta: http://www.di.Herramienta: http://www.di.uunnioiovvi.ie.ess/~/~lalabbrara/c/cuursrsooss/X/XMMLL/s/shhoowwNNaammeessppaacceess
Combinación de espacios de nombres 
http://www.di.uniovi.es/~labra/cursos/http://www.di.uniovi.es/~labra/cursos/XXMMLL/e/ejejemmpploloss/c/coommbbininaaNNaammeessppaacceess.x.xhhttmmll 
Jose Emilio Labra Gayo – Universidad de Oviedo
Ejemplos de espacios de nombres 
XHTML: http://www.w3.org/1999/xhtml 
XSLT: http://www.w3.org/1999/XSL/Transform 
SVG: http://www.w3.org/2000/svg 
XLink: http://www.w3.org/1999/xlink 
RDF: http://www.w3.org/1999/02/22-rdf-syntax-ns# 
Dublin Core: http://purl.org/dc/elements/1.1/ 
Atom: http://www.w3.org/2005/Atom 
Jose Emilio Labra Gayo – Universidad de Oviedo
<!DOCTYPE inversiones [ 
<!ELEMENT inversiones (g:país*)> 
<!ELEMENT g:país (g:capital,capital) > 
<!ELEMENT g:capital (#PCDATA)> 
<!ELEMENT capital (#PCDATA)> 
<!ATTLIST inversiones 
Jose Emilio Labra Gayo – Universidad de Oviedo 
Validación con DTDs 
Posteriores a los DTDs, por tanto, los DTDs no dan soporte a 
Espacios de Nombres 
Hay que definir los espacios de nombre usados 
<!DOCTYPE inversiones [ 
<!ELEMENT inversiones (g:país*)> 
<!ELEMENT g:país (g:capital,capital) > 
<!ELEMENT g:capital (#PCDATA)> 
<!ELEMENT capital (#PCDATA)> 
<!ATTLIST inversiones 
xmlns CDATA #FIXED "http://www.bolsa.com"> 
<!ATTLIST g:país 
g:nombre CDATA #REQUIRED 
xmlns:g CDATA #FIXED "http://www.geog.es"> 
]> 
xmlns CDATA #FIXED "http://www.bolsa.com"> 
<!ATTLIST g:país 
g:nombre CDATA #REQUIRED 
xmlns:g CDATA #FIXED "http://www.geog.es"> 
]>
Jose Emilio Labra Gayo – Universidad de Oviedo 
Valoración 
Ampliamente utilizados para combinar vocabularios 
Facilitan la incorporación de elementos no previstos 
inicialmente 
Sintaxis extraña al principio 
Uso de prefijos 
URIs como elemento diferenciador...pero las URLS también 
sirven para acceder a recursos 
Difícil combinación con DTDs
Jose Emilio Labra Gayo – Universidad de Oviedo 
Fin de la Presentación

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

An Introduction to the DOM
An Introduction to the DOMAn Introduction to the DOM
An Introduction to the DOM
 
PHP - DataType,Variable,Constant,Operators,Array,Include and require
PHP - DataType,Variable,Constant,Operators,Array,Include and requirePHP - DataType,Variable,Constant,Operators,Array,Include and require
PHP - DataType,Variable,Constant,Operators,Array,Include and require
 
Javascript essentials
Javascript essentialsJavascript essentials
Javascript essentials
 
presentation in html,css,javascript
presentation in html,css,javascriptpresentation in html,css,javascript
presentation in html,css,javascript
 
Javascript variables and datatypes
Javascript variables and datatypesJavascript variables and datatypes
Javascript variables and datatypes
 
Chuleta de DTD
Chuleta de DTDChuleta de DTD
Chuleta de DTD
 
Introduction to C++
Introduction to C++ Introduction to C++
Introduction to C++
 
Html form tag
Html form tagHtml form tag
Html form tag
 
JavaScript Arrays
JavaScript Arrays JavaScript Arrays
JavaScript Arrays
 
Php string function
Php string function Php string function
Php string function
 
Loops in java script
Loops in java scriptLoops in java script
Loops in java script
 
modelo er
modelo ermodelo er
modelo er
 
Event In JavaScript
Event In JavaScriptEvent In JavaScript
Event In JavaScript
 
Css colors
Css   colorsCss   colors
Css colors
 
Ejercicios de XSD
Ejercicios de XSDEjercicios de XSD
Ejercicios de XSD
 
JavaScript - Chapter 8 - Objects
 JavaScript - Chapter 8 - Objects JavaScript - Chapter 8 - Objects
JavaScript - Chapter 8 - Objects
 
Php and MySQL
Php and MySQLPhp and MySQL
Php and MySQL
 
javascript objects
javascript objectsjavascript objects
javascript objects
 
Introducción a XML Schema
Introducción a XML SchemaIntroducción a XML Schema
Introducción a XML Schema
 
Html
HtmlHtml
Html
 

Destaque

T4 Sql LMD
T4 Sql  LMDT4 Sql  LMD
T4 Sql LMDrmonago
 
Espacios De Nombres Y Desarrollo De LibreríAs
Espacios De Nombres Y Desarrollo De LibreríAsEspacios De Nombres Y Desarrollo De LibreríAs
Espacios De Nombres Y Desarrollo De LibreríAsMarvin Romero
 
Base de datos unidad 1
Base de datos   unidad 1Base de datos   unidad 1
Base de datos unidad 1islandin
 
Tecnologia Microsoft
Tecnologia  MicrosoftTecnologia  Microsoft
Tecnologia Microsoftbrobelo
 
2 manipulacion de datos..
2 manipulacion de datos..2 manipulacion de datos..
2 manipulacion de datos..alithu1
 
Lenguaje de programacion orientado a eventos
Lenguaje de programacion orientado a eventosLenguaje de programacion orientado a eventos
Lenguaje de programacion orientado a eventosJairo Velasquez Rivera
 
Lenguaje de manipulación de datos (DML)
Lenguaje de manipulación de datos (DML)Lenguaje de manipulación de datos (DML)
Lenguaje de manipulación de datos (DML)Minerva136
 
Tm10 modelo relacional
Tm10 modelo relacionalTm10 modelo relacional
Tm10 modelo relacionalJulio Pari
 
Tópicos avanzados de programación eventos
Tópicos  avanzados  de programación   eventosTópicos  avanzados  de programación   eventos
Tópicos avanzados de programación eventosKanddy Mobylml
 
PROGRAMACION ORIENTADA A OBJETOS
PROGRAMACION ORIENTADA A OBJETOSPROGRAMACION ORIENTADA A OBJETOS
PROGRAMACION ORIENTADA A OBJETOSAbraham Morales
 
Lenguaje de Manipulación de Datos
Lenguaje de Manipulación de DatosLenguaje de Manipulación de Datos
Lenguaje de Manipulación de DatosEduardo Rosas Garcia
 
Programación visual y orientada a eventos
Programación  visual y orientada a eventosProgramación  visual y orientada a eventos
Programación visual y orientada a eventosMario Martinez Alvarez
 
Programacion Orientada a Objetos y a Eventos
Programacion Orientada a Objetos y a EventosProgramacion Orientada a Objetos y a Eventos
Programacion Orientada a Objetos y a EventosNICK
 
Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Whaleejaa Wha
 
Programacion Orientada a Eventos
Programacion Orientada a EventosProgramacion Orientada a Eventos
Programacion Orientada a EventosLaura
 
Programación Orientada a Eventos Java
Programación Orientada a Eventos JavaProgramación Orientada a Eventos Java
Programación Orientada a Eventos JavaJosé Mendoza
 

Destaque (20)

T4 Sql LMD
T4 Sql  LMDT4 Sql  LMD
T4 Sql LMD
 
Espacios De Nombres Y Desarrollo De LibreríAs
Espacios De Nombres Y Desarrollo De LibreríAsEspacios De Nombres Y Desarrollo De LibreríAs
Espacios De Nombres Y Desarrollo De LibreríAs
 
Base de datos unidad 1
Base de datos   unidad 1Base de datos   unidad 1
Base de datos unidad 1
 
Tecnologia Microsoft
Tecnologia  MicrosoftTecnologia  Microsoft
Tecnologia Microsoft
 
Manipulación de datos
Manipulación de datosManipulación de datos
Manipulación de datos
 
Programación III (Java) - 07 Eventos
Programación III (Java) - 07 EventosProgramación III (Java) - 07 Eventos
Programación III (Java) - 07 Eventos
 
2 manipulacion de datos..
2 manipulacion de datos..2 manipulacion de datos..
2 manipulacion de datos..
 
Lenguaje de programacion orientado a eventos
Lenguaje de programacion orientado a eventosLenguaje de programacion orientado a eventos
Lenguaje de programacion orientado a eventos
 
Lenguaje de manipulación de datos (DML)
Lenguaje de manipulación de datos (DML)Lenguaje de manipulación de datos (DML)
Lenguaje de manipulación de datos (DML)
 
Tm10 modelo relacional
Tm10 modelo relacionalTm10 modelo relacional
Tm10 modelo relacional
 
Tópicos avanzados de programación eventos
Tópicos  avanzados  de programación   eventosTópicos  avanzados  de programación   eventos
Tópicos avanzados de programación eventos
 
PROGRAMACION ORIENTADA A OBJETOS
PROGRAMACION ORIENTADA A OBJETOSPROGRAMACION ORIENTADA A OBJETOS
PROGRAMACION ORIENTADA A OBJETOS
 
Lenguaje de Manipulación de Datos
Lenguaje de Manipulación de DatosLenguaje de Manipulación de Datos
Lenguaje de Manipulación de Datos
 
Componentes en-poo
Componentes en-pooComponentes en-poo
Componentes en-poo
 
Programación visual y orientada a eventos
Programación  visual y orientada a eventosProgramación  visual y orientada a eventos
Programación visual y orientada a eventos
 
Eventos en Java
Eventos en JavaEventos en Java
Eventos en Java
 
Programacion Orientada a Objetos y a Eventos
Programacion Orientada a Objetos y a EventosProgramacion Orientada a Objetos y a Eventos
Programacion Orientada a Objetos y a Eventos
 
Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.
 
Programacion Orientada a Eventos
Programacion Orientada a EventosProgramacion Orientada a Eventos
Programacion Orientada a Eventos
 
Programación Orientada a Eventos Java
Programación Orientada a Eventos JavaProgramación Orientada a Eventos Java
Programación Orientada a Eventos Java
 

Semelhante a Espacios de nombres en XML

Twig, el nuevo motor de plantillas de Drupal 8
Twig, el nuevo motor de plantillas de Drupal 8Twig, el nuevo motor de plantillas de Drupal 8
Twig, el nuevo motor de plantillas de Drupal 8Javier Eguiluz
 
Web services restful con JAX-RS
Web services restful con JAX-RSWeb services restful con JAX-RS
Web services restful con JAX-RSVortexbird
 
Introducción a XML: Sintaxis y documentos bien formados
Introducción a XML: Sintaxis y documentos bien formadosIntroducción a XML: Sintaxis y documentos bien formados
Introducción a XML: Sintaxis y documentos bien formadosJose Emilio Labra Gayo
 
Reiniciando el Períodismo
Reiniciando el PeríodismoReiniciando el Períodismo
Reiniciando el PeríodismoManuel14
 
Define y desarrolla tu primera api
Define y desarrolla tu primera apiDefine y desarrolla tu primera api
Define y desarrolla tu primera apiCloudAppi
 
Linked Open Data - Datos Abiertos Enlazados
Linked Open Data - Datos Abiertos EnlazadosLinked Open Data - Datos Abiertos Enlazados
Linked Open Data - Datos Abiertos EnlazadosJose Emilio Labra Gayo
 
Symfony: Domesticando las Vistas - decharlas
Symfony: Domesticando las Vistas - decharlasSymfony: Domesticando las Vistas - decharlas
Symfony: Domesticando las Vistas - decharlasDecharlas
 
Symfony: Domesticando las Vistas
Symfony: Domesticando las VistasSymfony: Domesticando las Vistas
Symfony: Domesticando las VistasJose Antonio Pio
 
Twig avanzado (sf2Vigo)
Twig avanzado (sf2Vigo)Twig avanzado (sf2Vigo)
Twig avanzado (sf2Vigo)Javier Eguiluz
 
11 AgustíN Cuenca
11 AgustíN Cuenca11 AgustíN Cuenca
11 AgustíN Cuencayoulivek
 
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...Pablo Godel
 
Mejora la visibilidad de tu empresa en Internet (SEO-PPC-SMO)
Mejora la visibilidad de tu empresa en Internet (SEO-PPC-SMO)Mejora la visibilidad de tu empresa en Internet (SEO-PPC-SMO)
Mejora la visibilidad de tu empresa en Internet (SEO-PPC-SMO)Antoni Febrer Barber
 
Inf 14 (ventadellantas) rines
Inf 14 (ventadellantas)   rinesInf 14 (ventadellantas)   rines
Inf 14 (ventadellantas) rinesCarlos Guzmán
 

Semelhante a Espacios de nombres en XML (20)

Tecnologias Web Semantica
Tecnologias Web SemanticaTecnologias Web Semantica
Tecnologias Web Semantica
 
Tecnologias Web Semantica
Tecnologias Web SemanticaTecnologias Web Semantica
Tecnologias Web Semantica
 
XML - Introducción
XML - IntroducciónXML - Introducción
XML - Introducción
 
SEO TMRC Madrid Marzo 2011
SEO TMRC Madrid Marzo 2011SEO TMRC Madrid Marzo 2011
SEO TMRC Madrid Marzo 2011
 
Interface de voz
Interface de vozInterface de voz
Interface de voz
 
Twig, el nuevo motor de plantillas de Drupal 8
Twig, el nuevo motor de plantillas de Drupal 8Twig, el nuevo motor de plantillas de Drupal 8
Twig, el nuevo motor de plantillas de Drupal 8
 
Web services restful con JAX-RS
Web services restful con JAX-RSWeb services restful con JAX-RS
Web services restful con JAX-RS
 
Introducción a XML: Sintaxis y documentos bien formados
Introducción a XML: Sintaxis y documentos bien formadosIntroducción a XML: Sintaxis y documentos bien formados
Introducción a XML: Sintaxis y documentos bien formados
 
Reiniciando el Períodismo
Reiniciando el PeríodismoReiniciando el Períodismo
Reiniciando el Períodismo
 
Curso
CursoCurso
Curso
 
Define y desarrolla tu primera api
Define y desarrolla tu primera apiDefine y desarrolla tu primera api
Define y desarrolla tu primera api
 
Linked Open Data - Datos Abiertos Enlazados
Linked Open Data - Datos Abiertos EnlazadosLinked Open Data - Datos Abiertos Enlazados
Linked Open Data - Datos Abiertos Enlazados
 
Symfony: Domesticando las Vistas - decharlas
Symfony: Domesticando las Vistas - decharlasSymfony: Domesticando las Vistas - decharlas
Symfony: Domesticando las Vistas - decharlas
 
Symfony: Domesticando las Vistas
Symfony: Domesticando las VistasSymfony: Domesticando las Vistas
Symfony: Domesticando las Vistas
 
Twig avanzado (sf2Vigo)
Twig avanzado (sf2Vigo)Twig avanzado (sf2Vigo)
Twig avanzado (sf2Vigo)
 
11 AgustíN Cuenca
11 AgustíN Cuenca11 AgustíN Cuenca
11 AgustíN Cuenca
 
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
 
Mejora la visibilidad de tu empresa en Internet (SEO-PPC-SMO)
Mejora la visibilidad de tu empresa en Internet (SEO-PPC-SMO)Mejora la visibilidad de tu empresa en Internet (SEO-PPC-SMO)
Mejora la visibilidad de tu empresa en Internet (SEO-PPC-SMO)
 
Cap8 herencia
Cap8 herenciaCap8 herencia
Cap8 herencia
 
Inf 14 (ventadellantas) rines
Inf 14 (ventadellantas)   rinesInf 14 (ventadellantas)   rines
Inf 14 (ventadellantas) rines
 

Mais de Jose Emilio Labra Gayo

Introducción a la investigación/doctorado
Introducción a la investigación/doctoradoIntroducción a la investigación/doctorado
Introducción a la investigación/doctoradoJose Emilio Labra Gayo
 
Challenges and applications of RDF shapes
Challenges and applications of RDF shapesChallenges and applications of RDF shapes
Challenges and applications of RDF shapesJose Emilio Labra Gayo
 
Legislative data portals and linked data quality
Legislative data portals and linked data qualityLegislative data portals and linked data quality
Legislative data portals and linked data qualityJose Emilio Labra Gayo
 
Validating RDF data: Challenges and perspectives
Validating RDF data: Challenges and perspectivesValidating RDF data: Challenges and perspectives
Validating RDF data: Challenges and perspectivesJose Emilio Labra Gayo
 
Legislative document content extraction based on Semantic Web technologies
Legislative document content extraction based on Semantic Web technologiesLegislative document content extraction based on Semantic Web technologies
Legislative document content extraction based on Semantic Web technologiesJose Emilio Labra Gayo
 
Como publicar datos: hacia los datos abiertos enlazados
Como publicar datos: hacia los datos abiertos enlazadosComo publicar datos: hacia los datos abiertos enlazados
Como publicar datos: hacia los datos abiertos enlazadosJose Emilio Labra Gayo
 
Arquitectura de la Web y Computación en el Servidor
Arquitectura de la Web y Computación en el ServidorArquitectura de la Web y Computación en el Servidor
Arquitectura de la Web y Computación en el ServidorJose Emilio Labra Gayo
 

Mais de Jose Emilio Labra Gayo (20)

Publicaciones de investigación
Publicaciones de investigaciónPublicaciones de investigación
Publicaciones de investigación
 
Introducción a la investigación/doctorado
Introducción a la investigación/doctoradoIntroducción a la investigación/doctorado
Introducción a la investigación/doctorado
 
Challenges and applications of RDF shapes
Challenges and applications of RDF shapesChallenges and applications of RDF shapes
Challenges and applications of RDF shapes
 
Legislative data portals and linked data quality
Legislative data portals and linked data qualityLegislative data portals and linked data quality
Legislative data portals and linked data quality
 
Validating RDF data: Challenges and perspectives
Validating RDF data: Challenges and perspectivesValidating RDF data: Challenges and perspectives
Validating RDF data: Challenges and perspectives
 
Wikidata
WikidataWikidata
Wikidata
 
Legislative document content extraction based on Semantic Web technologies
Legislative document content extraction based on Semantic Web technologiesLegislative document content extraction based on Semantic Web technologies
Legislative document content extraction based on Semantic Web technologies
 
ShEx by Example
ShEx by ExampleShEx by Example
ShEx by Example
 
Introduction to SPARQL
Introduction to SPARQLIntroduction to SPARQL
Introduction to SPARQL
 
Introducción a la Web Semántica
Introducción a la Web SemánticaIntroducción a la Web Semántica
Introducción a la Web Semántica
 
RDF Data Model
RDF Data ModelRDF Data Model
RDF Data Model
 
2017 Tendencias en informática
2017 Tendencias en informática2017 Tendencias en informática
2017 Tendencias en informática
 
RDF, linked data and semantic web
RDF, linked data and semantic webRDF, linked data and semantic web
RDF, linked data and semantic web
 
Introduction to SPARQL
Introduction to SPARQLIntroduction to SPARQL
Introduction to SPARQL
 
19 javascript servidor
19 javascript servidor19 javascript servidor
19 javascript servidor
 
Como publicar datos: hacia los datos abiertos enlazados
Como publicar datos: hacia los datos abiertos enlazadosComo publicar datos: hacia los datos abiertos enlazados
Como publicar datos: hacia los datos abiertos enlazados
 
16 Alternativas XML
16 Alternativas XML16 Alternativas XML
16 Alternativas XML
 
XSLT
XSLTXSLT
XSLT
 
XPath
XPathXPath
XPath
 
Arquitectura de la Web y Computación en el Servidor
Arquitectura de la Web y Computación en el ServidorArquitectura de la Web y Computación en el Servidor
Arquitectura de la Web y Computación en el Servidor
 

Último

Unidad V. Disoluciones quimica de las disoluciones
Unidad V. Disoluciones quimica de las disolucionesUnidad V. Disoluciones quimica de las disoluciones
Unidad V. Disoluciones quimica de las disolucioneschorantina325
 
PPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjj
PPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjjPPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjj
PPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjjNachisRamos
 
¡Descubre el Poder del Masaje Holístico en nuestra Primera Sesión del Seminar...
¡Descubre el Poder del Masaje Holístico en nuestra Primera Sesión del Seminar...¡Descubre el Poder del Masaje Holístico en nuestra Primera Sesión del Seminar...
¡Descubre el Poder del Masaje Holístico en nuestra Primera Sesión del Seminar...CENECOnline
 
Corte de luz 2024 Guayaquil Guayas ecuad
Corte de luz 2024 Guayaquil Guayas ecuadCorte de luz 2024 Guayaquil Guayas ecuad
Corte de luz 2024 Guayaquil Guayas ecuadJonathanHctorSilvaRo
 
PSICOPATOLOGIA I.pptxdhehehehehehehehehe
PSICOPATOLOGIA I.pptxdhehehehehehehehehePSICOPATOLOGIA I.pptxdhehehehehehehehehe
PSICOPATOLOGIA I.pptxdheheheheheheheheheErickRolandoPadillaC1
 
Las redes sociales en el mercado digital
Las redes sociales en el mercado digitalLas redes sociales en el mercado digital
Las redes sociales en el mercado digitalNayaniJulietaRamosRa
 

Último (6)

Unidad V. Disoluciones quimica de las disoluciones
Unidad V. Disoluciones quimica de las disolucionesUnidad V. Disoluciones quimica de las disoluciones
Unidad V. Disoluciones quimica de las disoluciones
 
PPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjj
PPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjjPPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjj
PPT-HISTORIA-6°-ABC.pptxjjjjjjjjjjjjjjjjjjjjjj
 
¡Descubre el Poder del Masaje Holístico en nuestra Primera Sesión del Seminar...
¡Descubre el Poder del Masaje Holístico en nuestra Primera Sesión del Seminar...¡Descubre el Poder del Masaje Holístico en nuestra Primera Sesión del Seminar...
¡Descubre el Poder del Masaje Holístico en nuestra Primera Sesión del Seminar...
 
Corte de luz 2024 Guayaquil Guayas ecuad
Corte de luz 2024 Guayaquil Guayas ecuadCorte de luz 2024 Guayaquil Guayas ecuad
Corte de luz 2024 Guayaquil Guayas ecuad
 
PSICOPATOLOGIA I.pptxdhehehehehehehehehe
PSICOPATOLOGIA I.pptxdhehehehehehehehehePSICOPATOLOGIA I.pptxdhehehehehehehehehe
PSICOPATOLOGIA I.pptxdhehehehehehehehehe
 
Las redes sociales en el mercado digital
Las redes sociales en el mercado digitalLas redes sociales en el mercado digital
Las redes sociales en el mercado digital
 

Espacios de nombres en XML

  • 1. Espacios de Nombres Jose Emilio Labra Gayo Departamento de Informática Universidad de Oviedo
  • 2. Problema de la Homonimia Homonimia: Mismo nombre con diferentes propósitos <país nombre=“Francia”> <capital>París</capital> </país> <país nombre=“Francia”> <capital>París</capital> </país> <inversiones> <país nombre=“Francia”> <capital>París</capital> <capital>1200€</capital> </país> . . . </inversiones> Jose Emilio Labra Gayo – Universidad de Oviedo <inversión> <inversión> <capital>7000€</capital> <capital>7000€</capital> </inversión> </inversión> ¿Cómo combinar en el mismo documento estos vocabularios? <inversiones> <país nombre=“Francia”> <capital>París</capital> <capital>1200€</capital> </país> . . . </inversiones> Ambigüedad 
  • 3. Posibles Soluciónes Crear una autoridad mundial que asigne nombres... ... o usar un mecanismo ya existente: URIs Una URI es un identificador global único Ejemplo: http://www.uniovi.es SOLUCIÓN: Asociar a cada etiqueta una URI que indica a qué espacio de nombres pertenece... [http:www.bolsa.com/]:capital [http:www.geog.es/]:capital Jose Emilio Labra Gayo – Universidad de Oviedo
  • 4. Solución fácil... Asociar a cada etiqueta una URI <[http://www.bolsa.com/]:inversiones> <[http://www.geog.es/]:país [http://www.geog.es/]:nombre=“Francia”> <[http://www.geog.es/]:capital>París </[http://www.geog.es/]:capital> <[http://www.bolsa.com/]:capital>1200€ </[http://www.bolsa.com/]:capital> </[http://www.bolsa.com/]:país> . . . </[http://www.bolsa.com/]:inversiones> Jose Emilio Labra Gayo – Universidad de Oviedo Posibles soluciones <[http://www.bolsa.com/]:inversiones> <[http://www.geog.es/]:país [http://www.geog.es/]:nombre=“Francia”> <[http://www.geog.es/]:capital>París </[http://www.geog.es/]:capital> <[http://www.bolsa.com/]:capital>1200€ </[http://www.bolsa.com/]:capital> </[http://www.bolsa.com/]:país> . . . Legibilidad...  </[http://www.bolsa.com/]:inversiones>
  • 5. <b:inversiones xmlns:b=“http://www.bolsa.com/” xmlns:g=“http://www.geog.es/”> <g:país g:nombre=“Francia”> <g:capital>París</g:capital> <b:capital>1200€</b:capital> </g:país> . . . </b:inversiones> Jose Emilio Labra Gayo – Universidad de Oviedo Definición Solución: Asociar un alias a los elementos de un espacio de nombres dentro de un ámbito xmlns:alias define alias en el ámbito de un elemento <b:inversiones xmlns:b=“http://www.bolsa.com/” xmlns:g=“http://www.geog.es/”> <g:país g:nombre=“Francia”> <g:capital>París</g:capital> <b:capital>1200€</b:capital> </g:país> . . . </b:inversiones> NOTA: Las URIs sólo se utilizan para que el nombre sea único, no son enlaces, ni tienen que contener información NOTA: Las URIs sólo se utilizan para que el nombre sea único, no son enlaces, ni tienen que contener información
  • 6. <b:inversiones xmlns:b=“http://www.bolsa.com/”> <g:país xmlns:g=“http://www.geog.es/” g:nombre=“Francia”> <g:capital>París</g:capital> <b:capital>1200€</b:capital> </g:país> . . . </b:inversiones> Jose Emilio Labra Gayo – Universidad de Oviedo Asignación Dinámica Es posible ir asociando espacios de nombres a los elementos según van apareciendo <b:inversiones xmlns:b=“http://www.bolsa.com/”> <g:país xmlns:g=“http://www.geog.es/” g:nombre=“Francia”> <g:capital>París</g:capital> <b:capital>1200€</b:capital> </g:país> . . . </b:inversiones>
  • 7. Espacio de nombres por defecto Mediante xmlns=“...” se define un espacio de nombres por defecto (sin alias) <inversiones <inversiones xmlns=“http://www.bolsa.com/”> xmlns=“http://www.bolsa.com/”> <g:país <g:país xmlns:g=“http://www.geog.es/” g:nombre=“Francia”> xmlns:g=“http://www.geog.es/” g:nombre=“Francia”> <g:capital>París</g:capital> <capital>1200€</capital> <g:capital>París</g:capital> <capital>1200€</capital> </g:país> . . . </g:país> . . . </</inversiones> inversiones> Se refiere a Jose Emilio Labra Gayo – Universidad de Oviedo http://www.bolsa.com/
  • 8. <mm xmlns:a="http://www.rr.org/" xmlns="http://www.ss.org/"> <a:nn> Jose Emilio Labra Gayo – Universidad de Oviedo Ejercicio Indicar a qué espacio de nombres corresponde cada etiqueta en el siguiente documento XML <mm xmlns:a="http://www.rr.org/" xmlns="http://www.ss.org/"> <a:nn> <pp xmlns="http://www.tt.org/" xmlns:b="http://www.uu.org/"> <b:oo>Hola</b:oo> </pp> <c:qq xmlns="http://www.vv.org/" xmlns:c="http://www.ww.org/"> <rr>Adios</rr> </c:qq> </a:nn> </mm> <pp xmlns="http://www.tt.org/" xmlns:b="http://www.uu.org/"> <b:oo>Hola</b:oo> </pp> <c:qq xmlns="http://www.vv.org/" xmlns:c="http://www.ww.org/"> <rr>Adios</rr> </c:qq> </a:nn> </mm> Herramienta: http://www.di.Herramienta: http://www.di.uunnioiovvi.ie.ess/~/~lalabbrara/c/cuursrsooss/X/XMMLL/s/shhoowwNNaammeessppaacceess
  • 9. Combinación de espacios de nombres http://www.di.uniovi.es/~labra/cursos/http://www.di.uniovi.es/~labra/cursos/XXMMLL/e/ejejemmpploloss/c/coommbbininaaNNaammeessppaacceess.x.xhhttmmll Jose Emilio Labra Gayo – Universidad de Oviedo
  • 10. Ejemplos de espacios de nombres XHTML: http://www.w3.org/1999/xhtml XSLT: http://www.w3.org/1999/XSL/Transform SVG: http://www.w3.org/2000/svg XLink: http://www.w3.org/1999/xlink RDF: http://www.w3.org/1999/02/22-rdf-syntax-ns# Dublin Core: http://purl.org/dc/elements/1.1/ Atom: http://www.w3.org/2005/Atom Jose Emilio Labra Gayo – Universidad de Oviedo
  • 11. <!DOCTYPE inversiones [ <!ELEMENT inversiones (g:país*)> <!ELEMENT g:país (g:capital,capital) > <!ELEMENT g:capital (#PCDATA)> <!ELEMENT capital (#PCDATA)> <!ATTLIST inversiones Jose Emilio Labra Gayo – Universidad de Oviedo Validación con DTDs Posteriores a los DTDs, por tanto, los DTDs no dan soporte a Espacios de Nombres Hay que definir los espacios de nombre usados <!DOCTYPE inversiones [ <!ELEMENT inversiones (g:país*)> <!ELEMENT g:país (g:capital,capital) > <!ELEMENT g:capital (#PCDATA)> <!ELEMENT capital (#PCDATA)> <!ATTLIST inversiones xmlns CDATA #FIXED "http://www.bolsa.com"> <!ATTLIST g:país g:nombre CDATA #REQUIRED xmlns:g CDATA #FIXED "http://www.geog.es"> ]> xmlns CDATA #FIXED "http://www.bolsa.com"> <!ATTLIST g:país g:nombre CDATA #REQUIRED xmlns:g CDATA #FIXED "http://www.geog.es"> ]>
  • 12. Jose Emilio Labra Gayo – Universidad de Oviedo Valoración Ampliamente utilizados para combinar vocabularios Facilitan la incorporación de elementos no previstos inicialmente Sintaxis extraña al principio Uso de prefijos URIs como elemento diferenciador...pero las URLS también sirven para acceder a recursos Difícil combinación con DTDs
  • 13. Jose Emilio Labra Gayo – Universidad de Oviedo Fin de la Presentación