SlideShare ist ein Scribd-Unternehmen logo
1 von 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

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Json
JsonJson
Json
 
XML Schema
XML SchemaXML Schema
XML Schema
 
JavaScript: Variables and Functions
JavaScript: Variables and FunctionsJavaScript: Variables and Functions
JavaScript: Variables and Functions
 
Querying XML: XPath and XQuery
Querying XML: XPath and XQueryQuerying XML: XPath and XQuery
Querying XML: XPath and XQuery
 
14 Curso de POO en java - estructuras condicionales
14 Curso de POO en java - estructuras condicionales14 Curso de POO en java - estructuras condicionales
14 Curso de POO en java - estructuras condicionales
 
DOM ( Document Object Model )
DOM ( Document Object Model )DOM ( Document Object Model )
DOM ( Document Object Model )
 
Json
JsonJson
Json
 
Transacciones
TransaccionesTransacciones
Transacciones
 
Ejercicios de XSD
Ejercicios de XSDEjercicios de XSD
Ejercicios de XSD
 
Boxing & unboxing
Boxing & unboxingBoxing & unboxing
Boxing & unboxing
 
Php Tutorials for Beginners
Php Tutorials for BeginnersPhp Tutorials for Beginners
Php Tutorials for Beginners
 
Ejercicio - Personal de departamentos (XSD - XML Schema)
Ejercicio - Personal de departamentos (XSD - XML Schema)Ejercicio - Personal de departamentos (XSD - XML Schema)
Ejercicio - Personal de departamentos (XSD - XML Schema)
 
FIWARE Training: NGSI-LD Introduction
FIWARE Training: NGSI-LD IntroductionFIWARE Training: NGSI-LD Introduction
FIWARE Training: NGSI-LD Introduction
 
Intro to JSON
Intro to JSONIntro to JSON
Intro to JSON
 
Introduction to RDF
Introduction to RDFIntroduction to RDF
Introduction to RDF
 
Json
JsonJson
Json
 
polymorphism
polymorphism polymorphism
polymorphism
 
XML, DTD & XSD Overview
XML, DTD & XSD OverviewXML, DTD & XSD Overview
XML, DTD & XSD Overview
 
PHP - Introduction to Object Oriented Programming with PHP
PHP -  Introduction to  Object Oriented Programming with PHPPHP -  Introduction to  Object Oriented Programming with PHP
PHP - Introduction to Object Oriented Programming with PHP
 
SHACL Overview
SHACL OverviewSHACL Overview
SHACL Overview
 

Andere mochten auch

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
 

Andere mochten auch (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
 

Ähnlich wie 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
 

Ähnlich wie 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
 

Mehr von 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
 

Mehr von 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
 
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
 
RDF validation tutorial
RDF validation tutorialRDF validation tutorial
RDF validation tutorial
 

Kürzlich hochgeladen

Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenadanielaerazok
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenajuniorcuellargomez
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdflauradbernals
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdfedwinmelgarschlink2
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfisrael garcia
 
COMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfCOMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfOscarBlas6
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAdanielaerazok
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webDecaunlz
 

Kürzlich hochgeladen (8)

Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalena
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalena
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdf
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
 
COMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfCOMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdf
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la web
 

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