SlideShare uma empresa Scribd logo
1 de 114
Taller: Ontologías,
diseño y acceso a datos con
SPARQL. Parte I
SEDIC, 18/05/2018
Ricardo Eito Brun
Web Semántica - Introducción
 El concepto fue propuesto por Tim Berners-Lee, el 17 de mayo del
2001, con un artículo escrito junto a James Hendler y Ora Lassila
en Scientific American: “The Semantic Web: A New Form of Web
Content That Is Meaninguful to Computers Will Unleash a
Revolution of New Possibilities”
 En él se planteaba la necesidad de disponer de una web más
inteligente, formada por documentos que fuesen fácilmente
procesables por programas informáticos capaces de actuar con
independencia de operadores humanos.
 Se planteaba una red distribuida que no fuese legible o
procesablemente únicamente por personas: los datos deberían
estar expuestos para ser procesables por aplicaciones
informáticas de forma desatendida, sin intervención humana.
Web Semántica - Introducción
 En su libro “Tejiendo la web”, Berners-Lee se refiere a la web
semántica como:
“una red de datos que pueden ser procesados directa o indirectamente
por las máquinas”.
 El grupo W3C Semantic Web Activity que se encarga de su
evolución indica que:
“La Web Semántica ofrece un marco común que permite compartir y
reutilizar datos entre aplicaciones, empresas y entre distintas
comunidades”.
Web Semántica
Web Semántica vs. Web convencional
 La web semántica se presenta como una extensión de la web
tradicional.
 La principal diferencia está en que, si la web tradicional contiene
información destinada a personas, en la semántica se gestionan
contenidos dirigidos a programas informáticos y a agentes software
capaces de interpretarlos y deducir información, datos y conocimiento
a partir de ellos.
 En la “web sintáctica”, la responsabilidad de interpretar la información
recae en las personas. En la Web Semántica, se pretende dotar de
esta misma capacidad a los programas informáticos.
 La Web Semántica puede verse como una web para agentes
software, programas capaces de actuar de forma independiente
programados para identificar, capturar y procesar información según
unas reglas.
Web Semántica
Web Semántica vs. Web convencional
 Berners-Lee citaba un ejemplo en el que un agente software busca
un fisioterapeuta en un radio de x millas en torno a un domicilio para
un tratamiento determinado.
 Para que los agentes software puedan identificar y procesar la
información en la web, es necesario que ésta esté etiquetada o
marcada de forma normalizada.
 Los datos deben estar etiquetados y diferenciados de forma explícita.
 En este sentido, la falta de capacidad expresiva del lenguaje HTML
resultaba un obstáculo para el trabajo de los agentes software.
 XML permite incorporar etiquetas que dan significado y estructuran la
información disponible en la web.
Web Semántica
Web Semántica vs. Web convencional
Web Semántica
Web Semántica vs. Web convencional
 La idea de Breitman es similar a la de Yu (2011, p. 15), que define la
Web Semántica como:
“una colección de tecnologías y estándares que permiten a las
máquinas entender el significado (semántica) de la información en la
Web”.
 Este autor también indica la relación entre la Web Semántica y los
datos enlazados o linked data.
 La idea de datos enlazados fue propuesta por Tim Berners-Lee en el
documento Linked Data Principles publicado en 2006.
 La aproximación de los datos enlazados tiene como objetivo dar
buenas prácticas sobre cómo se deben exponer y conectar conjuntos
de datos estructurados en la Web.
 Los datos enlazados se publican utilizando las tecnologías y
estándares de la Web Semántica.
Web Semántica
Fundamentos - URI
 Los URI permiten identificar de forma unívoca a los recursos de los
que se mantiene información, y a sus metadatos o propiedades.
 Un URI es una cadena de caracteres que identifica un recurso en la
web.
 Puede tratase tanto de un recurso físico, tangible, como de una
noción abstracta.
 Los URI pueden confundirse con las URL (Uniform Resource Locator)
que identifican y permite acceder a documentos publicados en la
Web.
 Pero no son conceptos equivalentes: las URL son un tipo particular de
URI que se utiliza para identificar a los documentos disponibles en la
web.
Web Semántica
Fundamentos - URI
 La URL se corresponde con una ubicación física de un fichero.
 Frente a esto, un URI no se corresponde con la ubicación de un
archivo en la red, sino que actúa como un identificador global que se
asigna a un objeto en el contexto de la Web.
 Un URI no tiene por qué tratarse de un documento ni de un recurso
que exista físicamente.
 Son ejemplos de URI:
 http://www.sedic.es
 http://www.sedic.es/curso/inicio.htm
 http://www.sedic.es/curso/websemantica
 http://www.sedic.es/curso/websemantica#modulo1.
Web Semántica
Fundamentos – RDF
 RDF es el estándar más relevante para el intercambio e integración
de metadatos en la Web Semántica.
 Se define como “un lenguaje para representar información sobre
recursos en la World Wide Web”.
 Tiene un propósito general, es decir, es válido para la codificación e
intercambio de cualquier tipo de metadatos en cualquier ámbito de
aplicación.
 Se puede afirmar que RDF es para la Web Semántica lo que HTML
es para la web convencional.
 RDF es un estándar publicado por el W3C, y puede usarse para
representar información y conocimiento distribuido de forma que las
aplicaciones informáticas lo puedan utilizar y procesar de una forma
escalable.
Web Semántica
RDF – Modelo Abstracto
 RDF establece un modelo para declarar metadatos sobre recursos.
 En RDF, la asignación de valores a los metadatos para un recurso se
realiza en forma de declaraciones RDF (traducimos así el término
inglés “RDF statement”.
 A estas declaraciones también se les llama tripletas (triples en inglés),
ya que constan de tres elementos: un sujeto, un predicado y un
objeto.
 el sujeto corresponde al recurso para el que se proveen los
metadatos;
 el predicado es una propiedad de dicho recurso (el elemento o
metadato);
 el objeto es el valor asignado a esa propiedad o metadato..
Web Semántica
RDF – Modelo Abstracto
 Un recurso sería cualquier cosa que puede describirse mediante
declaraciones RDF.
 Por ejemplo, una declaración podría asignar el valor 2012 a la
propiedad fechaPublicacion de un recurso bibliográfico particular.
 El recurso bibliográfico sería el sujeto, el metadato fechaPublicacion
el predicado, y el valor 2012 sería el objeto.
 Cada declaración RDF asigna valor a un metadato o propiedad
particular para un único recurso.
 Si se considera que sujetos y objetos representan o denotan a
recursos existentes, los predicados pueden verse como el nombre de
una relación que conecta a esos dos recursos.
Web Semántica
RDF – Modelo Abstracto
 Para recoger los metadatos correspondientes a un recurso,
tendríamos varias tripletas o declaraciones RDF para ese mismo
recurso (una para cada metadato o propiedad).
 Se dice que RDF facilita un medio para formalizar declaraciones
sobre los recursos.
 Una de las características de RDF es el uso de URIref para hacer
referencia a los recursos (sujetos), a las propiedades (predicados), y
en ciertos casos a los valores que se asignan a éstas (objetos).
 En el caso del sujeto de una declaración, éste siempre estará
identificado mediante un URIref. De esta forma se garantiza que el
recurso se identifica de forma única en el espacio global de la Web,
donde no pueden existir dos recursos o sujetos con el mismo URI.
Web Semántica
RDF – Modelo Abstracto
 Sucede lo mismo con los predicados o propiedades: cada metadato
tendrá un URI único, no repetible, que lo identifica globalmente y lo
diferencia de los demás metadatos existentes..
 En el caso de los objetos (es decir, de los valores que se asignan a
los metadatos), caben dos posibilidades:
 Su valor puede consistir en un literal o en un valor de tipo fecha,
cadena de caracteres, número, etc. Por ejemplo, en el caso de
una fecha de publicación o de un título.
 Su valor puede consistir en el URIref de otro recurso existente. Por
ejemplo, si describimos un recurso bibliográfico (que sería el
sujeto), su propiedad (predicado) autor, podría ser un URIref de
otro recurso que corresponda a la persona que ha escrito ese
libro, y para la cual podríamos contar con metadatos y
declaraciones RDF adicionales.
Web Semántica
RDF – Modelo Abstracto
 Nota: Cuando se dice que RDF es un lenguaje para codificar e
intercambiar metadatos en la web, puede pensarse erróneamente que
RDF es un sistema de metadatos similar a Dublin Core, EAD, MARC,
etc.
 En Dublin Core se definen una serie de metadatos para describir
recursos, como title, creator, date, description, etc.
 RDF no define metadatos concretos, sino que ofrece un método para
codificar cualquier tipo de metadatos (Dublin Core, MARC, o cualquier
otro), de forma normalizada.
 Podríamos decir que RDF ofrece un “sobre” donde podríamos enviar
metadatos tomados de distintos sistemas de metadatos..
Web Semántica
RDF – Modelo Abstracto - Ejemplo
 Para resumir el modelo abstracto de RDF, y los conceptos de
declaración, sujeto, predicado y objeto, incluimos el siguiente ejemplo:
 Disponemos de un recurso en formato electrónico – concretamente un
módulo del curso sobre Web Semántica…
 ¿Cómo analizaríamos la información en tripletas?
Web Semántica
RDF – Modelo Abstracto - Resumen
 Como resumen de este apartado recogemos una serie de reglas
propuestas por Yu (2011), en las que se basa RDF:
 Regla #1: El conocimiento o la información se expresa mediante una lista
de declaraciones, y cada declaración tiene la forma Sujeto-Predicado-
Objeto, y este orden nunca debe cambiarse.
 Regla #2: El nombre de un recurso debe ser global y debería identificarse
mediante un URI (Uniform Resource Identifier).
 Regla #3: Es posible hacer cualquier declaración sobre cualquier recurso,
y i se elige un URI existente para identificar al recurso sobre el cual se
hace la declaración, entonces se cumplirá que:
• El recurso al cual nos referimos es el mismo que ya está siendo identificado por ese
mismo URI. Y
• Todo lo que se declare sobre ese recurso se considerará conocimiento o información
adicional sobre él.
Web Semántica
RDF – Representación gráfica
 Por ejemplo, el siguiente grafo corresponde a dos declaraciones RDF:
Web Semántica
RDF – Representación gráfica
Web Semántica
RDF – Representaciones alternativas
 Los gráficos no son el único método disponible para representar
declaraciones RDF.
 Otra aproximación se basa en el uso de texto plano (sin etiquetas
XML), donde cada declaración se representa en líneas aparte
terminadas con un punto.
 Esta forma de escribir las declaraciones recibe el nombre de sintaxis
Turtle (Terse RDF Triple Laguage).
 En cada declaración se diferencia el sujeto, el predicado y el objeto
mediante espacios en blanco. Los URI se escriben entre los signos
mayor que y menor que, y se puede precisar el tipo de dato de los
objetos:
 <http://www.example.org/staffid#85740>
<http://www.example.org/terms#age>
"27"^^<http://www.w3.org/2001/XMLSchema#integer>.
Web Semántica
RDF – Representaciones XML
 Las declaraciones RDF se pueden agrupar en un único documento
XML, que podrá tener la extensión .xml o .rdf.
 Este documento tendrá un elemento raíz rdf:RDF.
 Todo el contenido del documento RDF estará contenido entre las
etiquetas de inicio y de fin de este elemento raíz.
 El elemento raíz rdf:RDF incluirá uno o más elementos
rdf:Description, normalmente uno para cada recurso del que se
recogen metadatos.
 El elemento rdf:Description irá acompañado por un atributo @rdf:about que tomará
como valor el URI que identifica al recurso en cuestión.
 Cada elemento rdf:Description contendrá un elemento hijo para cada predicado,
propiedad o metadato.
 El nombre de estos elementos será un URI que identificará a cada propiedad, y se
tomará del sistema de metadatos que se esté aplicando.
Web Semántica
RDF – Representaciones XML
Web Semántica
RDF – Representaciones XML
 Otra característica de la serialización de declaraciones RDF en XML
es la forma de recoger los valores para los metadatos, o los objetos
en la terminología RDF.
 Cuando el valor de una propiedad es un literal, éste se escribe entre las
etiquetas de inicio y de fin del elemento correspondiente a la propiedad o
predicado.
En estos casos, se podría añadir a la etiqueta de inicio de la propiedad un
o predicado un atributo @xml:lang para indicar el idioma del texto.
 Cuando las propiedades toman como valor una referencia a otro recurso,
apuntando al URI o URIref que lo identifica, el elemento XML
correspondiente a la propiedad o predicado será un elemento vacío que
incluirá un atributo @rdf:resource.
El valor de este atributo será el URI del recurso que se le asigna como
valor. En el ejemplo anterior, sucede así con el valor para el metadato
mailbox.
Web Semántica
RDF – Representaciones XML
Web Semántica
RDF – Representaciones XML
Web Semántica
RDF – Representaciones XML
Web Semántica
RDF – El elemento rdf:type
 Se trata de un elemento que permite indicar el tipo de un recurso.
 Se podria utilizar para diferenciar, por ejemplo, entre recursos de tipo
“articulo”, “monografía”, “patente”, o cualquier otro tipo que se precise
usar en cualquier tipo de aplicación.
 La importancia de los tipos se describe en el apartado dedicado al
modelado con RDFS.
 Inicialmente, es suficiente recordar que se dispone de la posibilidad
de indicar el tipo de los recursos para los que se codifican metadatos.
 El uso del elemento rdf:type corresponde a una declaración RDF del
tipo:
 Sujeto rdf:type Objeto:.
Web Semántica
RDF – El elemento rdf:type
Web Semántica
RDF – El elemento rdf:type
Web Semántica
RDF – El elemento rdf:type
 Se dice que los recursos RDF que van acompañados por el elemento
rdf:type son “recursos con tipo” o “tipados”.
 Si en lugar de asignar un literal como valor a rdf:type, le asignásemos
el URI de otro recurso, el fragmento y el gráfico equivalentes serían
estos:
Web Semántica
RDF – El elemento rdf:type
Web Semántica
RDF – El elemento rdf:type
Ricardo Eito Brun
Taller: Ontologías,
diseño y acceso a datos con
SPARQL. Parte II
RDFS - Introducción
 RDF ofrece un marco general para codificar cualquier tipo de
metadato sobre cualquier tipo de recurso.
 RDF es un lenguaje independiente de dominios de aplicación o
áreas de conocimiento específicas, que se puede utilizar para
codificar cualquier tipo de metadato.
 Esta flexibilidad nos lleva a formular la pregunta:
 ¿qué declaraciones puedo utilizar en un documento RDF?
 ¿Qué propiedades o predicados puedo utilizar para los distintos tipos
de recursos que son el sujeto de mis declaraciones?
 ¿Qué valores puedo asignar como valores de cada propiedad?
RDFS - Introducción
 RDFS permite crear esquemas para dar respuesta a estas preguntas.
 Un esquema RDFS indicará:
 a) los tipos o clases de entidades de los que se quiere recoger metadatos;
 b) los metadatos o propiedades disponibles para cada tipo de recurso;
 c) los valores que acepta cada propiedad, etc.
 Se puede ver una similitud entre los esquemas RDFS y los modelos
de bases de datos tradicionales, donde se identifican entidades,
campos, tipos de datos, etc.
 Sin embargo, el modelado RDFS se diferencia de estos otros modelos
en un aspecto fundamental: RDFS no tiene una aproximación
restrictiva, ya que debe permitir el principio AAA (Anyone can say
Anything about Any topic) de la Web Semántica.
RDFS - Introducción
 Resulta evidente que RDF debe complementarse con algún método
que permita modelar el área o dominio sobre el que queremos
expresar los metadatos.
 Es necesario contar con alguna herramienta para expresar las
condiciones relativas a:
 Los tipos de recursos o clases con los que se va a trabajar,
 Las propiedades de estos recursos que nos permiten caracterizarlos, y
 Las reglas que se deben aplicar a la hora de asignar valores a estas propiedades.
 RDF Schema, o RDFS, es un lenguaje que permite crear vocabularios
que se utilizarán en las declaraciones RDF.
 RDFS permite declarar tipos de objetos o clases, predicados o
propiedades, e indicar qué predicados pueden usarse con cada tipo
de objeto y qué valores puede tomar cada predicado.
RDFS – Clases y propiedades
 RDFS da la posibilidad de acotar el vocabulario y los términos que
podrán usarse en las declaraciones RDF.
 En RDFS se declaran clases y propiedades.
 Estas últimas se podrán utilizar como predicados en las declaraciones
RDF.
 Un modelo RDFS se expresa también utilizando la sintaxis de RDF
descrita en el módulo anterior.
 Tanto las clases como las propiedades se identifican mediante URI
(recordamos que el uso de URI para identificar cualquier tipo de
elemento es una característica fundamental de la Web Semántica).
RDFS – Clases
 Una clase representa a todos los recursos que comparten unas
características comunes.
 Una clase es una abstracción de los recursos que tienen las
características necesarias para ser considerados miembros de una
clase.
 Serían ejemplos de clases: “Persona”, “Alumno”, “Profesor”, “Curso”,
“Temario”, “Examen”, “Manual”, etc.
 Los recursos que pertenecen a una misma clase comparten
propiedades comunes.
 Las clases se identificarán mediante un URI. Normalmente, se sigue
la pauta de comenzar su nombre con una letra mayúscula.
RDFS – Clases
 Otra característica de las clases es que pueden organizarse
jerárquicamente, para representar clases más genéricas y más
específicas.
 Por ejemplo, la clase Profesor sería una subclase de la clase
Persona, ya que cualquier instancia o miembro de la clase Profesor
es a su vez una instancia o miembro de la clase Persona.
 Una clase puede ser una subclase de más de una clase.
 Por ejemplo, la clase Libro-e podría ser una subclase de las clases
Monografía y Recurso-e.
RDFS – Clases
 En los modelos RDFS se pueden establecer así jerarquías de clases,
con tantos niveles como sean necesarios para expresar las
características del dominio con el que se quiere trabajar.
 Este mecanismo constituye una de las bases del razonamiento que
permite la Web Semántica.
 Nota: En RDF existe una superclase rdf:Resource, que sería la clase
situada en el nivel más alto de la jerarquía, de forma que todos los
demás términos RDFS son subclases de ésta.
RDFS – Clases
RDFS – Clases
RDFS – Clases
 Para simplificar la declaración de clases en un modelo RDFS, es
posible usar una sintaxis alternativa basada en el elemento rdfs:Class.
Para cada clase tendremos un elemento rdfs:Class.
RDFS – Clases
RDFS – Clases
 En este ejemplo anterior se puede apreciar cómo, en la
declaración del esquema RDFS, se combinan etiquetas o
marcas del espacio de nombres RDF con etiquetas o marcas
del espacio de nombres RDFS.
 Por ejemplo, <rdf:RDF>, @rdf:about, @rdf:Resource
provienen del espacio de nombres RDF, y <rdfs:Class> o
<rdfs:subClassOf> provienen del espacio de nombres RDFS. .
RDFS – Clases
RDFS – Propiedades
 Las propiedades representan aspectos o características aplicables a
las clases.
 Todas las instancias o recursos de una clase compartirán esos
aspectos o características comunes.
 Por ejemplo, todas las instancias de la clase Libro-E contarán con
propiedades comunes como el DOI o una URL, todas las instancias
de la clase Monografia contarán con propiedades comunes como el
título, autor, año de publicación, etc.
RDFS – Propiedades
 Las propiedades también se utilizan en RDF para representar
relaciones existentes entre dos clases.
 Por ejemplo, la propiedad esAutor representaría una relación entre las
clases Autor y Monografía; la propiedad editadoPor representaría una
relación entre las clases Monografía y Editor, etc.
 Las propiedades – que se corresponderán con los predicados de las
declaraciones RDF -, se identificarán siempre mediante un URI.
 Normalmente, se sigue la pauta de comenzar su nombre con una letra
minúscula..
RDFS – Propiedades
 En RDF se distinguen dos tipos de propiedades, dependiendo de si su
valor es un dato o literal (cadena de caracteres, fecha, número, etc.) o
una referencia a otro recurso.
 Por ejemplo, la propiedad numeroPaginas tomaría como valor un
número entero. Sin embargo, la propiedad esAutor tomaría como
valor el URI correspondiente a una instancia de la clase Monografía.
 Una propiedad se caracterizará por tener un dominio y un rango.
 El dominio de una propiedad es la clase (o clases) a la cual es aplicable. Por
ejemplo, la propiedad imparteCurso es aplicable a la clase Profesor. Dicho de otra
forma, la clase Profesor sería el dominio de la propiedad imparteCurso.
 El rango de una propiedad es el conjunto de valores que admite. En propiedades
de tipo “tipo de dato”, el rango será un tipo de dato. En propiedades de tipo objeto,
el rango será una clase existente. Por ejemplo, el rango de la propiedad
imparteCurso sería la clase Curso..
RDFS – Propiedades
RDFS - Propiedades
 En RDFS podemos declarar una propiedad sin especificar su
dominio.
 De esta forma, la propiedad podría aplicarse con cualquier tipo de
recurso, no estaría restringida a clases o tipos de recursos
específicos.
 Igualmente, se podría declarar una propiedad sin indicar su rango.
 Otra característica de la declaración de propiedades en RDFS es
que éstas se declaran independientemente de las clases.
 Es decir, al declarar una clase no se especifican cuáles son sus
propiedades.
 La forma de vincular propiedades y clases es, únicamente,
mediante el dominio de las propiedades.
RDFS - Propiedades
 Esto debe recordarse ya que en otros lenguajes o métodos de
modelado lo que suele hacerse es declarar las propiedades como
parte de las declaraciones de las clases. RDFS no sigue esta
aproximación.
 El siguiente fragmento RDFS incluye la definición de tres clases
(Libro, Autor, Editor) y de dos propiedades asignadas a la clase
Libro: escritoPor e isbn. El valor para la primera propiedad debe
ser una instancia de la clase Autor. El valor de la segunda
propiedad puede ser cualquier cadena de caracteres:.
RDFS – Otros elementos RDFS
 Además de los elementos utilizados para declarar clases y
propiedades con sus rangos y dominios, RDFS incorpora otros
elementos que se pueden usar en la creación de esquemas
RDFS. Normalmente, se usarán para documentar la estructura del
esquema RDFS. Estos elementos son:
  <rdfs:seeAlso>
  <rdfs:isDefinedBy>
  <rdfs:label>
  <rdfs:comment>.
RDFS – Otros elementos RDFS
 <rdfs:seeAlso> se utiliza para indicar que existe otro recurso
donde se puede encontrar información sobre un recurso en
particular.
 Podría utilizarse tanto con clases como con instancias de clases.
Por ejemplo:
RDFS – Otros elementos RDFS
 <rdfs:isDefinedBy> es similar a <rdfs:seeAlso>, y se utiliza para
hacer referencia a la fuente principal de información sobre un
recurso determinado.
 De esta forma, apuntará normalmente a un recurso donde se
puede encontrar información relevante sobre el recurso en
cuestión.
Ricardo Eito Brun
Taller: Ontologías,
diseño y acceso a datos con
SPARQL. Parte III
OWL y ontologías
Introducción
 OWL, Web Ontology Language.
 OWL permite diseñar ontologías: vocabularios que modelan el
conocimiento sobre un área de dominio específico, con el fin de
representar datos en la Web Semántica.
 OWL es similar a RDFS, y se basa en los mismos conceptos :
clases, propiedades e instancias o individuos.
 De hecho, OWL es una extensión de RDFS, al que incorpora
capacidades adicionales para poder crear modelos más precisos
(ontologías)
OWL y ontologías
Introducción
 Las ontologías son un elemento clave en la Web Semántica.
 Se definen como “conceptualización de un dominio o área de
conocimiento”.
 Una ontología incluye los conceptos o términos que conforman el
vocabulario utilizado en un área determinada, y las relaciones que
existen entre esos conceptos.
 Esta definición nos puede llevar a considerar un glosario (listado
de términos y definiciones) como una ontología.
 De hecho, en la literatura sobre el tema se encuentran con
frecuencia referencias a “ontologías de mayor o menor
complejidad”, e incluye un abanico de opciones desde simples
listas de términos hasta representaciones más sofisticadas para el
razonamiento lógico.
OWL y ontologías
Introducción
 Si se cotejan distintas definiciones, en la mayoría se indica:
 la necesidad de que la ontología pueda ser procesable por un
programa informático,
 que se pueda utilizar para deducir nuevos conocimientos
aplicando reglas lógicas.
 que represente una conceptualización consensuada (es decir,
una representación de la realidad aceptada como correcta por
un grupo de personas).
OWL y ontologías
Introducción
 “Una ontología es una especificación formal, explícita, de una
conceptualización compartida.
 Conceptualización se refiere a un modelo abstracto de un
fenómeno cualquiera, en el que se han identificado los conceptos
relevantes de ese fenómeno.
 Explícita significa que el tipo de conceptos que se usan, y las
restricciones que afectan a su uso, se han definido explícitamente.
 Formal se refiere al hecho de que la ontología puede ser
procesada por un programa informático.
 Compartida refleja el hecho de que la ontología captura
conocimiento consensuado, no propio de un individuo, sino
aceptado por un grupo.” (Studer, 1998).
OWL y ontologías
Introducción
Se puede concluir señalando que:
una ontología recoge los conceptos más relevantes de un área de
dominio concreto,
así como las relaciones que se establecen entre ellos y las
restricciones que afectan a las mismas.
Las ontologías son el resultado de un proceso de adquisición y
captura de conocimiento
Reflejan el conocimiento consensuado o común que, sobre esa
área, tiene un grupo de personas.
Deben codificarse de una forma que puedan ser procesadas por un
ordenador.)
OWL y ontologías
Elementos de OWL
 En una ontología OWL se utilizan: clases, propiedades e
individuos.
 También se utilizan los términos categorías, relaciones y objetos
para hacer referencia, respectivamente, a las clases, propiedades
y a las instancias o individuos.
 En cualquier caso, los conceptos son equivalentes a los tratados
en RDFS.
 En OWL se utiliza el término axioma para hacer referencia a las
declaraciones. Por ejemplo, decir que una instancia es de una
clase o tipo determinado sería un axioma.
 Se dice también que una ontología OWL es un conjunto de
axiomas. Un axioma equivaldría a una declaración o statement en
RDF.
OWL y ontologías
Elementos de OWL
 OWL incorpora términos o elementos reservados para declarar
clases, propiedades e individuos.
 Estos términos se agrupan en el espacio de nombres identificado
por el URI: http://www.w3.org/2002/07/owl#
 El prefijo para abreviar este espacio de nombres es owl:
 La principal diferencia entre OWL y RDFS es que OWL tiene una
mayor capacidad expresiva ya que permite utilizar expresiones
basadas en la intersección, unión, complemento, etc.
 Otra diferencia entre OWL y RDFS es que en OWL se pueden
utilizar los identificadores IRI (Internationalized Resource
Identifiers), que son equivalentes a los URI con la salvedad de que
permiten utilizar cualquier carácter Unicode, y no sólo los 127
caracteres ASCII.
OWL y ontologías
Elementos de OWL: Clases
 Una clase representa a los individuos, objetos o entidades que
comparten unas características comunes.
 Una clase es una abstracción de los individuos que tienen las
características necesarias para ser considerados miembros de una
clase. Serían ejemplos de clases conceptos como “Persona”,
“Alumno”, “Profesor”, “Curso”, “Temario”, “Examen”, “Manual”, etc.
 Normalmente las clases contarán con un nombre (también es
posible tener en OWL clases abstractas, sin nombrar).
 En OWL existe una superclase – de la cual se derivarán todas las
demás – llamada owl:Thing.
 También existe una clase llamada owl:Nothing que representa la
nada.
OWL y ontologías
Elementos de OWL: Clases
 OWL permite definir jerarquías de clases, o decir que una clase es
una sub-clase de otra existente.
 Para hacer esto, la sintaxis que usaremos es la siguiente:
OWL y ontologías
Elementos de OWL: Propiedades
 Las propiedades representan aspectos o características aplicables
a las clases.
 También representan relaciones existentes entre dos clases.
 Por ejemplo:
 la propiedad “imparteCurso” representaría una relación entre las
clases “Profesor” y “Curso”;
 la propiedad “matriculadoEnCurso” representaría una relación entre
las clases “Alumno” y “Curso”, etc.
 OWL distingue dos tipos de propiedades, dependiendo de si su
valor es un dato (cadena de caracteres, fecha, número, etc.) o un
objeto.
 Se habla así de “propiedades tipo de dato” y de “propiedades
objeto”. Por ejemplo, numeroHoras sería una propiedad tipo de
dato, e imparteCurso de tipo objeto.
OWL y ontologías
Elementos de OWL: Propiedades
 Una propiedad en OWL siempre se caracterizará por tener un
dominio y un rango.
 El dominio de una propiedad es la clase a la cual es aplicable. Por
ejemplo, la propiedad imparteCurso es aplicable a la clase
Profesor. Dicho de otra forma, la clase Profesor sería el dominio
de la propiedad imparteCurso.
 El rango de una propiedad es el conjunto de valores que admite.
En propiedades de tipo “tipo de dato”, el rango será un tipo de
dato, expresado según los tipos de datos de los esquemas XML.
En propiedades de tipo objeto, el rango será una clase existente.
OWL y ontologías
Elementos de OWL: Individuos
 Un individuo representa una ocurrencia o instancia particular de
una clase.
 Por ejemplo, si Juan López es un profesor de la academia
Estudios S.L., Juan López será una instancia o individuo de la
clase Profesor, y Estudios S.L. será un individuo o instancia de la
clase Academia.
 Las instancias o individuos pertenecerán a una clase, y heredarán
todas las propiedades/relaciones de ésta. En OWL, los individuos
se representan mediante el elemento <owl:Thing>, y se
identificarán mediante un URI.
OWL y ontologías
Elementos de OWL: Individuos
 En OWL no se asume de forma explícita que dos individuos
distintos corresponden a entidades diferentes, incluso si los dos
tienen URI diferentes.
 Esta característica hace que, si queremos indicar que dos o más
individuos son diferentes entre sí, debemos indicarlo de forma
explícita como parte de nuestra ontología.
 OWL incorpora unos elementos para poder indicar si dos
individuos son los mismos o si son diferentes.
 Se trata de los elementos <owl:sameAs> y <owl:differentFrom>.
También es posible indicar que un conjunto de individuos son
todos diferentes entre sí mediante el elemento <owl:AllDifferent>..
OWL y ontologías
Definición avanzada de clases
 Restricción owl:cardinality
 Permite indicar el número de veces que puede usarse una
propiedad con una clase, o el número de ocurrencias de la
propiedad en los individuos de ese tipo.
 Por ejemplo, podría limitarse el número de cursos en los que se
puede matricular un alumno estableciendo la cardinalidad de la
propiedad matriculadoEn, o el número de alumnos por curso
fijando una cardinalidad para la propiedad
numeroAlumnosMatriculados.
 Para expresar con más precisión la cardinalidad de una propiedad
para una clase específica, OWL también incorpora los elementos
<owl:minCardinality> y <owl:maxCardinality>
OWL y ontologías
Definición avanzada de clases - conjuntos
 En OWL se pueden declarar nuevas clases mediante operaciones
lógicas (intersección, unión, complemento) sobre otras clases
declaradas previamente.
 Para definir una clase como resultado de la intersección de dos o
más clases, OWL incorpora el elemento <owl:intersectionOf>.
 Este elemento es equivalente a decir que la nueva clase es una
subclase de otras clases existentes.
 El siguiente fragmento declara una clase que representa a los
alumnos con beca que repiten curso:.
OWL y ontologías
Definición avanzada de clases - conjuntos
 OWL incluye también estas opciones: <owl:oneOf>,
<owl:equivalentClass> y <owl:disjointWith>.
 <owl:oneOf> permite definir una clase por su extensión, es decir,
listando todas sus instancias o individuos.
 Cada miembro de la clase se añadirá mediante un elemento
<owl:Thing> independiente, entre las etiquetas de inicio y de fin del
elemento <owl:oneOf>
 Los elementos <owl:equivalentClass> y <owl:disjointWith>
permiten indicar, respectivamente, que:
 Dos clases son equivalentes, es decir, que todas las instancias de una lo serán
también de la otra.
 Dos clases son disjuntas, es decir, no comparten ninguna instancia. Si una
instancia o individuo pertenece a una de las clases, no podrá pertenecer a la
otra. Por ejemplo, las clases Hombre y Mujer serían disjuntas.
OWL y ontologías
Definición avanzada de propiedades
 Entre las propiedades declaradas en la ontología también se
pueden establecer relaciones. Las más habituales son:
 owl:subPropertyOf - indica que una propiedad es un caso
particular de otra más general. Por ejemplo, la propiedad
esHijoDe sería una subpropiedad de esFamiliaDe.
 owl:equivalentProperty - indica que dos propiedades son
equivalentes o sinónimas.
 owl:inverseOf - indica que dos propiedades son inversas. Por
ejemplo, la propiedad imparteCurso sería la inversa de
esImpartidoPor..
OWL y ontologías
Definición avanzada de propiedades
 Las propiedades pueden tener estas características:
 owl:SymmetricProperty – indica que una propiedad establece
una relación que puede leerse en cualquier dirección. Por
ejemplo, la propiedad esVecino.
 owl:TransitiveProperty – indica que una propiedad establece
una relación entre clases que es transitiva. Por ejemplo, la
propiedad esDescendiente. Si Juan es descendiente de Luis, y
Luis lo es de Paco, podemos deducir que Juan será
descendiente de Paco.
 owl:Functional – una propiedad será funcional cuando su
cardinalidad mínima sea 0 y la máxima sea 1. Esto no quiere
decir que el valor de dicha propiedad no pueda ser el mismo en
distintos individuos. Un ejemplo de propiedad funcional sería la
fecha de nacimiento:
OWL y ontologías
Definición avanzada de propiedades
 Las propiedades pueden tener estas características:
 owl:InverseFunctionalProperty –indica que dos instancias
diferentes no pueden tener el mismo valor en una propiedad
marcada de esta forma (funcional inversa).
Un ejemplo característico serían las direcciones de correo-e (una
dirección de correo-e pertenece a una única persona).
 Una propiedad puede ser a la vez funcional y funcional inversa.
Esto sucede por ejemplo con los números de identificación tipo
DNI, pasaporte, o similares.
SKOS
Ricardo EIto Brun
Madrid, Mayo 2018
 SKOS está orientado a la indización y a la recuperación de
información documental, frente a otros sistemas como OWL
orientados a procesamientos más complejos.
 SKOS no debe considerarse únicamente como una forma
de publicar lenguajes de indización, sino como un
mecanismo para representar relaciones entre distintos
esquemas conceptuales.
 Iniciativas que han precedido a SKOS
 LIMBER (Language Independent Metadata Browsing of European
Resources),
 CERES (California Environmental Resources Evaluation System),
 GEM (Gateway to Educational Materials),
 CALL (Center for Army Lessons Learned) Thesaurus,
 ETT (European Treasury Browser) o
 KAON/AGROVOC.
SKOSSKOS
 SKOS está basado en RDF.
 Los conceptos de un lenguaje de indización corresponden
a instancias de clase, y las relaciones entre conceptos y sus
descripciones se tratan como declaraciones sobre dichas
instancias.
 Los conceptos o “unidades de pensamiento” se identifican
mediante URI, a los que se pueden asignar distintas
etiquetas en lenguaje natural, en uno o en distintos idiomas.
 Los conceptos se agrupan en “esquemas de conceptos”.
 Permite asociar notas aclaratorias a los conceptos
 Permite relacionar los conceptos, mediante las relaciones
jerárquicas y asociativas.
 Incorpora funciones avanzadas que permiten establecer
relaciones entre esquemas de conceptos.
SKOSSKOS
 Los elementos SKOS están definidos en el espacio de
nombres http://www.w3.org/2004/02/skos/core#, para el
que se suele usar el prefijo skos:
 Cada concepto se identifica mediante un elemento
<concept>.
 Las etiquetas lingüísticas asociadas a los conceptos se
representan mediante elementos <prefLabel>, <altLabel> o
<hiddenLabel>.
 La primera señala el término autorizado;
 La segunda términos alternativos no autorizados (sinónimos,
cuasi-sinónimos, formas abreviadas o desarrolladas para
siglas, etc.);
 La tercera se utiliza para designaciones que se quieren
registrar pero que deben permanecer ocultas para el
usuario del sistema.
SKOSSKOS
 Las etiquetas asignadas a un concepto irán acompañadas
de un atributo que indicará su idioma (un concepto sólo
podrá tener un único término autorizado en el mismo
idioma).
 Sobre las relaciones entre términos, SKOS define los
siguientes elementos:
 <broader>
 <narrower>
 <related>
 <broader> dirige desde un concepto a otro con un
significado más genérico.
 <narrower> sigue el orden inverso, y dirige de un concepto
a otro más específico.
SKOSSKOS
 Siguiendo las reglas usadas en la construcción de lenguajes
de indización, las relaciones genéricas o específicas
corresponden a casos en los que exista una relación de tipo
“A es un tipo de B”, “A es una instancia de B”, o “A es parte
de B”, es decir, relaciones genérico-específicas o género-
especie y relaciones parte-todo.
 <related> se usará para aquellos conceptos cuyo
significado está relacionado, en aquellos casos en los que
la relación no corresponda con la genérico-específica o
parte-todo.
 Para registrar notas de alcance asociadas a los conceptos,
SKOS define los elementos <scopeContent>, <definition>,
<example>, <historyNote>, <editorialNote> y
<changenote>.
SKOSSKOS
 Los sistemas de conceptos se declaran mediante
<conceptScheme>.
 Los sistemas de conceptos se definen o declaran en primer
lugar, y luego se indica la pertenencia de un concepto a
un sistema u otro mediante el atributo @inScheme que
acompaña al concepto.
 En SKOS se pueden vincular conceptos a sistemas, pero no
sucede así con las relaciones que existen entre los
conceptos y que no se vinculan a un sistema de conceptos
particular.
 Normalmente los sistema de conceptos tendrán una serie
de jerarquías de términos, cada una de ellas con su término
principal que constituye el origen o punto de acceso a la
jerarquía. En SKOS, esto se representa mediante los
elementos <hasTopConcept>.
SKOSSKOS
 Para indicar las relaciones entre conceptos de distintos
sistemas, SKOS incorpora las propiedades:
 exactMatch y closeMatch, que indican distintos niveles de
similitud semántica,
 broadMatch, narrowMatch y relatedMatch, que se utilizarán en
aquellos casos en los que un término tenga un significado más o
menos genérico o específico que el de otro concepto definido
en un sistema de conceptos diferente.
 SKOS no hace mención a cómo se deben relacionar los
conceptos con los recursos indizados.
SKOSSKOS
 Descarga un thesauro disponible en esta URL y comprueba
como usan los distintos elementos SKOS:
 http://skos.um.es/vocabularios/index.php/
 Codifica, mediante etiquetas SKOS, 3 conceptos del
siguiente vocabulario controlado:
 www.cedefop.europa.eu/files/3049_en.pdf
 Consulta los datasets SKOS disponibles en:
 http://www.w3.org/2001/sw/wiki/SKOS/Datasets
SKOS - PrácticaSKOS - Práctica
Ricardo Eito Brun
Taller: Ontologías,
diseño y acceso a datos con
SPARQL. Parte IV
SPARQL
 SPARQL es una especificación del W3C para consultar
repositorios de declaraciones RDF.
 En la visión de la Web Semántica se espera que existan distintos
repositorios y bases de datos que expongan sus metadatos a
agentes software capaces de acceder a ellos y recolectarlos con
distintos propósitos.
 Esta visión necesita otro componente para realizarse en todo su
potencial: un lenguaje de consulta para filtrar y recuperar la
información que necesitan las aplicaciones consumidoras de
metadatos.
SPARQL
 La función de SPARQL se establece en su especificación:
“SPARQL can be used to express queries across diverse data
sources, whether the data is stored natively as RDF or viewed as
RDF via middleware”.
 SPARQL ofrece el lenguaje de consulta, un protocolo de acceso
para transportar las consultas y un formato basado en XML para
enviar los resultados de las consultas.
SPARQL
 SPARQL soportan distintos modos de consulta o “query modes”:
 SELECT – devuelve datos de declaraciones RDF asociados a
variables, en forma de “tabla de variables”.
 CONSTRUCT – devuelve un gráfico RDF como resultado, con el
subconjunto de declaraciones que cumplen las condiciones indicadas
en la consulta. Los resultados se serializan en forma de documentos
RDF/XML.
 ASK – devuelve un valor booleano que indica si hay al menos una
declaración en el repositorio RDF que cumple las condiciones
indicadas en la consulta.
 DESCRIBE – devuelve un gráfico RDF que describe los recursos que
cumplen con las condiciones indicadas en la consulta..
SPARQL
 El principal es SELECT, que presenta grandes similitudes con el
lenguaje SQL para consulta de bases de datos relacionales.
 Una consulta SPARQL incluye cláusulas SELECT, FROM y
WHERE.
 Los datos recuperados del repositorio RDF se vinculan a variables
con nombre. La lista de variables que se incluyan en la cláusula
SELECT serían equivalentes a los nombres de columnas que se
usan en una SELECT SQL.
 Los datos que se recuperan pueden corresponder al URI del
recurso, URI de propiedades o sus valores (es decir, una consulta
SPARQL puede recuperar tanto los sujetos, como los predicados y
los objetos de las declaraciones RDF).
 Consultar ejemplos en: http://bnb.data.bl.uk/flint
SPARQL
SPARQL
SPARQL
SKOS
Introducción
Sus principales características son :
Los conceptos o “unidades de pensamiento” se identifican mediante
URI, a los que se pueden asignar distintas etiquetas en lenguaje
natural, en uno o en distintos idiomas.
Los conceptos se agrupan en “esquemas de conceptos”.
Permite asociar notas aclaratorias a los conceptos
Permite relacionar los conceptos, mediante las relaciones
jerárquicas y asociativas características de los lenguajes de
indización..
SKOS
Estructura
 Los elementos SKOS están definidos en el espacio de nombres
http://www.w3.org/2004/02/skos/core#, para el que se suele usar el
prefijo skos:.
 Cada concepto se identifica mediante un elemento <concept>.
 Las etiquetas lingüísticas asociadas a los conceptos se
representan mediante elementos <prefLabel>, <altLabel> o
<hiddenLabel>.
 Las etiquetas asignadas a un concepto irán acompañadas de un
atributo que indicará su idioma.
 Sobre las relaciones entre términos, SKOS define los siguientes
elementos: <broader>, <narrower> y <related>
SKOS
Estructura
 Para registrar notas de alcance asociadas a los conceptos, SKOS
define los elementos <scopeContent>, <definition>, <example>,
<historyNote>, <editorialNote> y <changenote>.
 Las notas también pueden ir acompañadas por un atributo que
indica el idioma en el que se han redactado.
 Los sistemas de conceptos se declaran mediante
<conceptScheme>. Los sistemas de conceptos se definen o
declaran en primer lugar, y luego se indica la pertenencia de un
concepto a un sistema u otro mediante el atributo @inScheme que
acompaña al concepto.
 En SKOS se vinculan conceptos a sistemas, pero no sucede así
con las relaciones que existen entre los conceptos y que no se
vinculan a un sistema de conceptos particular.
SKOS
Estructura
 Normalmente los sistemas de conceptos tendrán una serie de
jerarquías de términos, cada una de ellas con su término principal
que constituye el origen o punto de acceso a la jerarquía, y que
estará situado en el nivel superior de la misma. En SKOS, esto se
representa mediante los elementos <hasTopConcept>.
 Para indicar las relaciones entre conceptos de distintos sistemas,
SKOS incorpora las propiedades exactMatch y closeMatch,
broadMatch, narrowMatch y relatedMatch
 SKOS no hace mención a cómo se deben relacionar los conceptos
con los recursos indizados.
SKOS
Consultas
http://resource.geolba.ac.at/lithology.html
 PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
 base <http://resource.geolba.ac.at/lithology/>
 SELECT ?main
 WHERE
 {
 ?main skos:prefLabel "Pyroclastics"@en .
 }
SKOS
Consultas
http://resource.geolba.ac.at/lithology.html
 PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
 base <http://resource.geolba.ac.at/lithology/>
 SELECT ?Concept
 WHERE
 {
 <158> skos:narrower ?Concept
 }
SKOS
Consultas
http://resource.geolba.ac.at/lithology.html
 PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
 base <http://resource.geolba.ac.at/lithology/>
 SELECT ?Concept ?nombre
 WHERE
 {
 <158> skos:narrower ?Concept .
 ?Concept skos:prefLabel ?nombre
 }
SKOS
Consultas
http://resource.geolba.ac.at/lithology.html
 PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
 base <http://resource.geolba.ac.at/lithology/>
 SELECT ?Concept ?nombre
 WHERE
 {
 <158> skos:narrower ?Concept .
 ?Concept skos:prefLabel ?nombre .
 filter (lang(?nombre)="en") .
 }
SKOS
Consultas
http://resource.geolba.ac.at/lithology.html
 PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
 base <http://resource.geolba.ac.at/lithology/>
 SELECT ?Concept ?nombre
 WHERE
 {
 ?main skos:narrower ?Concept .
 ?main skos:prefLabel ?var .
 ?Concept skos:prefLabel ?nombre .
 filter regex(?var, "Sedimentary material", "i").
 }
SKOS
Consultas
http://resource.geolba.ac.at/lithology.html
 PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
 base <http://resource.geolba.ac.at/lithology/>
 SELECT ?nombre1 ?Concept ?nombre2
 WHERE
 {
 ?main skos:narrower ?Concept .
 ?main skos:prefLabel ?nombre1 .
 ?Concept skos:prefLabel ?nombre2 .
 filter regex(?nombre1, "Sediment", "i").
 }
SKOS
Consultas
http://resource.geolba.ac.at/lithology.html
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
base <http://resource.geolba.ac.at/lithology/>
SELECT ?Concept ?nombre
WHERE
{
{
<2> skos:narrower ?Concept .
?Concept skos:prefLabel ?nombre .
filter (lang(?nombre)="en") .
}
UNION
{
<2> skos:broader ?Concept .
?Concept skos:prefLabel ?nombre .
filter (lang(?nombre)="en") .
}
}
SKOS
Consultas
http://resource.geolba.ac.at/lithology.html
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
base <http://resource.geolba.ac.at/lithology/>
SELECT ?main ?Concept ?nombre
WHERE
{
?main skos:related ?Concept .
?Concept skos:prefLabel ?nombre .
?main skos:prefLabel ?var .
filter (regex(?var, "^Syenite", "i")) .
}
SKOS
Consultas
http://resource.geolba.ac.at/lithology.html
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
base <http://resource.geolba.ac.at/lithology/>
SELECT ?main ?Concept ?nombre
WHERE
{
?main skos:related ?Concept .
?Concept skos:prefLabel ?nombre .
?main skos:prefLabel ?var .
filter (regex(?var, "^Syenite", "i") || regex(?var, "^Rhyoli", "i")) .
}
SKOS
Consultas
http://resource.geolba.ac.at/lithology.html
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
base <http://resource.geolba.ac.at/lithology/>
SELECT ?main ?Concept ?nombre
WHERE
{
?main skos:related ?Concept .
?Concept skos:prefLabel ?nombre .
?main skos:prefLabel ?var .
filter (regex(?var, "^Syenite", "i") || regex(?var, "^Rhyoli", "i")) .
}
Datos enlazados
Introducción
 Idea propuesta por el inventor de la Web, Tim Berners-Lee en el
año 2006, y consiste en publicar datos en la Web de forma que
sean procesables por programas informáticos.
 Los datos se publicarán en forma de conjuntos de datos o
datasets, que pueden ser enlazados con otros conjuntos de datos
publicados por terceros, estableciendo una red de datos.
 En LOD, se utiliza RDF como formato para exponer y publicar los
datasets.
 LOD, al igual que la Web Semántica, no está asociada a ningún
área de aplicación particular
 En LOD, los objetos de las declaraciones RDF relativas a un sujeto
pueden apuntar a entidades que se han definido en cualquier otro
conjunto de datos..
Datos enlazados
Introducción
 Se pueden obtener datos relativos al volumen de datos publicados
por la comunidad LOD en la URL:
 http://esw.w3.org/topic/TaskForces/CommunityProjects/LinkingOpenD
 http://esw.w3.org/topic/TaskForces/CommunityProjects/LinkingOpenD
 Sobre los datasets publicados en formato LOD, habitualmente se
utiliza el gráfico de la siguiente página (creado y mantenido por
Richard Cyganiak y Anja Jentzsch para mostrar los conjuntos de
datos disponibles. El gráfico está accesible en la págin:
 http://www.w3.org/wiki/TaskForces/CommunityProjects/LinkingOpenD
Datos enlazados
Introducción
Las características que debe cumplir un conjunto de metadatos LOD
para ser incorporados en este registro son las siguientes:
Deben estar disponibles a través de URIs con el protocolo http o
https.
Deben estar expuestos en forma de datos RDF, al menos en uno de
los diferentes métodos de serialización para RDF (RDFa, RDF/XML,
Turtle, N-Triples).
El dataset debe incluir al menos 1000 declaraciones RDF.
El dataset debe contener enlaces al menos a uno de los datasets
que figuran en el diagrama. Se comprueba que al menos hay 50
enlaces entre los dos datasets.
Se debe poder acceder al dataset mediante recolección o descarga
de datos RDF o a través de un punto de consulta SPARQL (SPARQL
endpoint).
Datos enlazados
Introducción
 Los puntos anteriores obligan a configurar ciertas funciones
técnicas del servidor web a través del cual se publiquen los datos
RDF.
 Por ejemplo, el servidor debe ser capaz de reconocer peticiones
que soliciten datos RDF mediante el tipo MIME application/rdf+xml.
 Estos requisitos son de hecho algunas de las reglas que fueron
propuestas por Tim Berners-Lee en su visión de la web de datos
enlazados:
 usar URIs para identificar a las cosas,
 usar el protocolo HTTP,
 incluir enlaces a otros URI para poder descubrir nuevos datos y
explorar la información enlazada
Datos enlazados
Introducción
 Participar en la iniciativa LOD se deben facilitar o exponer datos y
enlazarlos con otros datasets existentes.
 Para hacer esto:
 Se deben seleccionar o crear URI para hacer referencia a los
recursos,
 elegir un vocabulario para etiquetar los datos (predicados o
metadatos),
 generar las declaraciones RDF correspondientes a nuestros datos,
 enlazarlos con datos RDF de otros datasets, y
 dar visibilidad a nuestro dataset publicándolo en la Web.
Datos enlazados
Introducción
 A parte de la DBpedia, una herramienta que se desarrolló en el
contexto académico para comprobar si se habían asignado URIs a
determinadas entidades es el buscador SINDICE, creado por
DERI (Digital Enterprise Research Institute), instituto de la National
University of Ireland, Galway, y que está disponible en:
 http://sindice.com
 Otra herramienta similar es el sitio web SAMEAS.org, donde se
pueden buscar URIs que sean equivalentes a un URI facilitado
como criterio de búsqueda. SAMEAS.org interactúa con SINDICE
para buscar información.
Datos enlazados
Introducción
 Además de comprobar URIs antes de asignarlos (o para poder
declarar que nuestro URI corresponde a la misma entidad que
uno ya existente), se debe elegir el vocabulario RDF para
codificar los metadatos.
 Un sitio donde podemos encontrar información sobre
vocabularios existentes es el Linked Open Vocabularies (LOV),
disponible en: http://lov.okfn.org/dataset/lov/
 LOV incluye un listado de vocabularios donde se indica su URI,
prefijo, y enlaces a las páginas web donde se ofrece la
información detallada.
 Otros buscadores donde se pueden recuperar vocabularios:
 http://watson.kmi.open.ac.uk/WatsonWUI/
 http://swoogle.umbc.edu/
 http://ws.nju.edu.cn/falcons/ontologysearch/index.jsp?query=
Datos enlazados
Introducción
 Además de estos buscadores que permiten buscar en
documentos RDF y en vocabularios y ontologías, también se han
diseñado un tipo de navegador especial para los datos enlazados.
Un listado de estas herramientas se puede consultar en la
página:
 http://www.w3.org/wiki/TaskForces/CommunityProjects/LinkingO
penData/SemWebClients
 Un ejemplo de un navegador para datos enlazados es el
programa SIG.MA, desarrollado por el mismo instituto de
investigación que desarrolló el buscador de URIs SINDICE.
 SIG.MA busca en distintos datasets los términos de búsqueda
propuestos, y agrega los datos en una ventana de resultados
dividida en dos secciones:

Mais conteúdo relacionado

Mais procurados

Rdf data-model-and-storage
Rdf data-model-and-storageRdf data-model-and-storage
Rdf data-model-and-storage灿辉 葛
 
書誌データのLOD化: データソン的デモンストレーション
書誌データのLOD化: データソン的デモンストレーション書誌データのLOD化: データソン的デモンストレーション
書誌データのLOD化: データソン的デモンストレーションKouji Kozaki
 
Introduction To RDF and RDFS
Introduction To RDF and RDFSIntroduction To RDF and RDFS
Introduction To RDF and RDFSNilesh Wagmare
 
The Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF SchemaThe Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF SchemaMyungjin Lee
 
Information_Retrieval_Models_Nfaoui_El_Habib
Information_Retrieval_Models_Nfaoui_El_HabibInformation_Retrieval_Models_Nfaoui_El_Habib
Information_Retrieval_Models_Nfaoui_El_HabibEl Habib NFAOUI
 
Functional requirements for bibliographic records & functional requirements f...
Functional requirements for bibliographic records & functional requirements f...Functional requirements for bibliographic records & functional requirements f...
Functional requirements for bibliographic records & functional requirements f...UDAYA VARADARAJAN
 
Modelagem De Banco De Dados
Modelagem De Banco De DadosModelagem De Banco De Dados
Modelagem De Banco De Dadosmgoberto
 
Introduction to the Semantic Web
Introduction to the Semantic WebIntroduction to the Semantic Web
Introduction to the Semantic WebTomek Pluskiewicz
 
Open Archives Initiatives For Metadata Harvesting
Open Archives Initiatives For Metadata   HarvestingOpen Archives Initiatives For Metadata   Harvesting
Open Archives Initiatives For Metadata HarvestingNikesh Narayanan
 
SHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data MudSHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data MudRichard Cyganiak
 
Chapter 1 semantic web
Chapter 1 semantic webChapter 1 semantic web
Chapter 1 semantic webR A Akerkar
 
Jena – A Semantic Web Framework for Java
Jena – A Semantic Web Framework for JavaJena – A Semantic Web Framework for Java
Jena – A Semantic Web Framework for JavaAleksander Pohl
 

Mais procurados (20)

Rdf data-model-and-storage
Rdf data-model-and-storageRdf data-model-and-storage
Rdf data-model-and-storage
 
RDF Data Model
RDF Data ModelRDF Data Model
RDF Data Model
 
書誌データのLOD化: データソン的デモンストレーション
書誌データのLOD化: データソン的デモンストレーション書誌データのLOD化: データソン的デモンストレーション
書誌データのLOD化: データソン的デモンストレーション
 
Introduction To RDF and RDFS
Introduction To RDF and RDFSIntroduction To RDF and RDFS
Introduction To RDF and RDFS
 
Semantic web
Semantic webSemantic web
Semantic web
 
The Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF SchemaThe Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF Schema
 
Information_Retrieval_Models_Nfaoui_El_Habib
Information_Retrieval_Models_Nfaoui_El_HabibInformation_Retrieval_Models_Nfaoui_El_Habib
Information_Retrieval_Models_Nfaoui_El_Habib
 
Functional requirements for bibliographic records & functional requirements f...
Functional requirements for bibliographic records & functional requirements f...Functional requirements for bibliographic records & functional requirements f...
Functional requirements for bibliographic records & functional requirements f...
 
Modelagem De Banco De Dados
Modelagem De Banco De DadosModelagem De Banco De Dados
Modelagem De Banco De Dados
 
Mini tutorial rdflib
Mini tutorial rdflibMini tutorial rdflib
Mini tutorial rdflib
 
Introduction to the Semantic Web
Introduction to the Semantic WebIntroduction to the Semantic Web
Introduction to the Semantic Web
 
Jena Programming
Jena ProgrammingJena Programming
Jena Programming
 
Tema 2
Tema 2Tema 2
Tema 2
 
Desarrollo actual de RDA (Pilar Tejero López)
Desarrollo actual de RDA (Pilar Tejero López)Desarrollo actual de RDA (Pilar Tejero López)
Desarrollo actual de RDA (Pilar Tejero López)
 
Dspace 7 presentation
Dspace 7 presentationDspace 7 presentation
Dspace 7 presentation
 
Open Archives Initiatives For Metadata Harvesting
Open Archives Initiatives For Metadata   HarvestingOpen Archives Initiatives For Metadata   Harvesting
Open Archives Initiatives For Metadata Harvesting
 
SHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data MudSHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data Mud
 
Xml presentation
Xml presentationXml presentation
Xml presentation
 
Chapter 1 semantic web
Chapter 1 semantic webChapter 1 semantic web
Chapter 1 semantic web
 
Jena – A Semantic Web Framework for Java
Jena – A Semantic Web Framework for JavaJena – A Semantic Web Framework for Java
Jena – A Semantic Web Framework for Java
 

Semelhante a Taller ontologías diseño SPARQL Parte I

Web semántica y sus principales características
Web semántica y sus principales característicasWeb semántica y sus principales características
Web semántica y sus principales característicasPollis Morales
 
Web semántica 2do comunicacion "A"
Web semántica 2do comunicacion "A"Web semántica 2do comunicacion "A"
Web semántica 2do comunicacion "A"Negra Morales
 
Parte 2. web semantica eva mendez - argentina - 301009
Parte 2. web semantica   eva mendez - argentina - 301009Parte 2. web semantica   eva mendez - argentina - 301009
Parte 2. web semantica eva mendez - argentina - 301009izrxrzi
 
Web semantica tarea
Web semantica   tareaWeb semantica   tarea
Web semantica tareaedgartm
 
Web semantica
Web semanticaWeb semantica
Web semantica15heder
 
Web 3.0 y herramientas tecnologicas
Web 3.0 y herramientas tecnologicasWeb 3.0 y herramientas tecnologicas
Web 3.0 y herramientas tecnologicasCarlos Arroyo
 
Web semantica con Jena
Web semantica con JenaWeb semantica con Jena
Web semantica con JenaRichar León
 
Websemantica 1218250849453303 9
Websemantica 1218250849453303 9Websemantica 1218250849453303 9
Websemantica 1218250849453303 9Negra Morales
 
Web semantica
Web semanticaWeb semantica
Web semanticaUniminuto
 
Introducción a la programación de la Web Semántica
Introducción a la programación de la Web Semántica Introducción a la programación de la Web Semántica
Introducción a la programación de la Web Semántica Taniana Rodriguez
 

Semelhante a Taller ontologías diseño SPARQL Parte I (20)

Web semantica
Web semanticaWeb semantica
Web semantica
 
Web semántica y sus principales características
Web semántica y sus principales característicasWeb semántica y sus principales características
Web semántica y sus principales características
 
Web semántica 2do comunicacion "A"
Web semántica 2do comunicacion "A"Web semántica 2do comunicacion "A"
Web semántica 2do comunicacion "A"
 
Parte 2. web semantica eva mendez - argentina - 301009
Parte 2. web semantica   eva mendez - argentina - 301009Parte 2. web semantica   eva mendez - argentina - 301009
Parte 2. web semantica eva mendez - argentina - 301009
 
Web semantica tarea
Web semantica   tareaWeb semantica   tarea
Web semantica tarea
 
Web semantica
Web semanticaWeb semantica
Web semantica
 
Ontología cis
Ontología cisOntología cis
Ontología cis
 
Web Semántica
Web SemánticaWeb Semántica
Web Semántica
 
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
RdfRdf
Rdf
 
Web semántica
Web semánticaWeb semántica
Web semántica
 
Web 3.0 y herramientas tecnologicas
Web 3.0 y herramientas tecnologicasWeb 3.0 y herramientas tecnologicas
Web 3.0 y herramientas tecnologicas
 
Web semantica con Jena
Web semantica con JenaWeb semantica con Jena
Web semantica con Jena
 
Websemantica
WebsemanticaWebsemantica
Websemantica
 
Websemantica 1218250849453303 9
Websemantica 1218250849453303 9Websemantica 1218250849453303 9
Websemantica 1218250849453303 9
 
Web Semántica
Web SemánticaWeb Semántica
Web Semántica
 
Web semantica
Web semanticaWeb semantica
Web semantica
 
Introducción a la programación de la Web Semántica
Introducción a la programación de la Web Semántica Introducción a la programación de la Web Semántica
Introducción a la programación de la Web Semántica
 
Webs 3.0
Webs 3.0Webs 3.0
Webs 3.0
 
Practica Shiderlshare.pdf
Practica Shiderlshare.pdfPractica Shiderlshare.pdf
Practica Shiderlshare.pdf
 

Mais de SEDIC

¿Qué es el Building Block eArchiving de la Unión Europea? / Carlota Bustelo R...
¿Qué es el Building Block eArchiving de la Unión Europea? / Carlota Bustelo R...¿Qué es el Building Block eArchiving de la Unión Europea? / Carlota Bustelo R...
¿Qué es el Building Block eArchiving de la Unión Europea? / Carlota Bustelo R...SEDIC
 
Atrapando jóvenes lectores con YouTube / Diana Mangas Pozo
Atrapando jóvenes lectores con YouTube / Diana Mangas PozoAtrapando jóvenes lectores con YouTube / Diana Mangas Pozo
Atrapando jóvenes lectores con YouTube / Diana Mangas PozoSEDIC
 
XX Jornada de Gestión de la Información de SEDIC. Análisis de impacto en medios
XX Jornada de Gestión de la Información de SEDIC. Análisis de impacto en mediosXX Jornada de Gestión de la Información de SEDIC. Análisis de impacto en medios
XX Jornada de Gestión de la Información de SEDIC. Análisis de impacto en mediosSEDIC
 
XX Jornada de Gestión de la Información de SEDIC - Visual Thinking
XX Jornada de Gestión de la Información de SEDIC - Visual ThinkingXX Jornada de Gestión de la Información de SEDIC - Visual Thinking
XX Jornada de Gestión de la Información de SEDIC - Visual ThinkingSEDIC
 
Gestión documental y de archivos como medida de trasparencia en el marco del ...
Gestión documental y de archivos como medida de trasparencia en el marco del ...Gestión documental y de archivos como medida de trasparencia en el marco del ...
Gestión documental y de archivos como medida de trasparencia en el marco del ...SEDIC
 
Gestión documental y de archivos como medida de trasparencia en el marco del ...
Gestión documental y de archivos como medida de trasparencia en el marco del ...Gestión documental y de archivos como medida de trasparencia en el marco del ...
Gestión documental y de archivos como medida de trasparencia en el marco del ...SEDIC
 
Taller de introducción al SEO para profesionales de la información
Taller de introducción al SEO para profesionales de la informaciónTaller de introducción al SEO para profesionales de la información
Taller de introducción al SEO para profesionales de la informaciónSEDIC
 
El arte de empoderar personas y organizaciones. Ponencia de Emiliano Martín G...
El arte de empoderar personas y organizaciones. Ponencia de Emiliano Martín G...El arte de empoderar personas y organizaciones. Ponencia de Emiliano Martín G...
El arte de empoderar personas y organizaciones. Ponencia de Emiliano Martín G...SEDIC
 
TALLER: En forma para el futuro, por Hannelore vogt
TALLER: En forma para el futuro, por Hannelore vogtTALLER: En forma para el futuro, por Hannelore vogt
TALLER: En forma para el futuro, por Hannelore vogtSEDIC
 
Vente a tu biblioteca. Véndete a ti mismo. Ponencia de Liz keating
Vente a tu biblioteca. Véndete a ti mismo. Ponencia de Liz keatingVente a tu biblioteca. Véndete a ti mismo. Ponencia de Liz keating
Vente a tu biblioteca. Véndete a ti mismo. Ponencia de Liz keatingSEDIC
 
TALLER: Los bibliotecarios ¿vendemos servicios? Cómo lanzar una campaña en RR...
TALLER: Los bibliotecarios ¿vendemos servicios? Cómo lanzar una campaña en RR...TALLER: Los bibliotecarios ¿vendemos servicios? Cómo lanzar una campaña en RR...
TALLER: Los bibliotecarios ¿vendemos servicios? Cómo lanzar una campaña en RR...SEDIC
 
La biblioteca pública: un espacio para la interacción. Ponencia de Carlos Gar...
La biblioteca pública: un espacio para la interacción. Ponencia de Carlos Gar...La biblioteca pública: un espacio para la interacción. Ponencia de Carlos Gar...
La biblioteca pública: un espacio para la interacción. Ponencia de Carlos Gar...SEDIC
 
La biblioteca como marca. Ponencia de Hannelore Vogt
La biblioteca como marca. Ponencia de Hannelore VogtLa biblioteca como marca. Ponencia de Hannelore Vogt
La biblioteca como marca. Ponencia de Hannelore VogtSEDIC
 
Desarrollo profesional en la Administración Pública / Ángel Ramos Arteaga
Desarrollo profesional en la Administración Pública / Ángel Ramos ArteagaDesarrollo profesional en la Administración Pública / Ángel Ramos Arteaga
Desarrollo profesional en la Administración Pública / Ángel Ramos ArteagaSEDIC
 
El proceso selectivo en el ámbito nacional / Luisa Mª Landáburu
El proceso selectivo en el ámbito nacional / Luisa Mª LandáburuEl proceso selectivo en el ámbito nacional / Luisa Mª Landáburu
El proceso selectivo en el ámbito nacional / Luisa Mª LandáburuSEDIC
 
XVIII Jornada de Gestión de la Información de SEDIC. Análisis de impacto en r...
XVIII Jornada de Gestión de la Información de SEDIC. Análisis de impacto en r...XVIII Jornada de Gestión de la Información de SEDIC. Análisis de impacto en r...
XVIII Jornada de Gestión de la Información de SEDIC. Análisis de impacto en r...SEDIC
 
Resumen bae bloque 2
Resumen bae bloque 2Resumen bae bloque 2
Resumen bae bloque 2SEDIC
 
Resumen bae bloque 1
Resumen bae bloque 1Resumen bae bloque 1
Resumen bae bloque 1SEDIC
 
Resumen bae bloque 3
Resumen bae bloque 3Resumen bae bloque 3
Resumen bae bloque 3SEDIC
 
Ovid: Recursos para el aprendizaje, para el uso clínico y de investigación
Ovid: Recursos para el aprendizaje, para el uso clínico y de investigaciónOvid: Recursos para el aprendizaje, para el uso clínico y de investigación
Ovid: Recursos para el aprendizaje, para el uso clínico y de investigaciónSEDIC
 

Mais de SEDIC (20)

¿Qué es el Building Block eArchiving de la Unión Europea? / Carlota Bustelo R...
¿Qué es el Building Block eArchiving de la Unión Europea? / Carlota Bustelo R...¿Qué es el Building Block eArchiving de la Unión Europea? / Carlota Bustelo R...
¿Qué es el Building Block eArchiving de la Unión Europea? / Carlota Bustelo R...
 
Atrapando jóvenes lectores con YouTube / Diana Mangas Pozo
Atrapando jóvenes lectores con YouTube / Diana Mangas PozoAtrapando jóvenes lectores con YouTube / Diana Mangas Pozo
Atrapando jóvenes lectores con YouTube / Diana Mangas Pozo
 
XX Jornada de Gestión de la Información de SEDIC. Análisis de impacto en medios
XX Jornada de Gestión de la Información de SEDIC. Análisis de impacto en mediosXX Jornada de Gestión de la Información de SEDIC. Análisis de impacto en medios
XX Jornada de Gestión de la Información de SEDIC. Análisis de impacto en medios
 
XX Jornada de Gestión de la Información de SEDIC - Visual Thinking
XX Jornada de Gestión de la Información de SEDIC - Visual ThinkingXX Jornada de Gestión de la Información de SEDIC - Visual Thinking
XX Jornada de Gestión de la Información de SEDIC - Visual Thinking
 
Gestión documental y de archivos como medida de trasparencia en el marco del ...
Gestión documental y de archivos como medida de trasparencia en el marco del ...Gestión documental y de archivos como medida de trasparencia en el marco del ...
Gestión documental y de archivos como medida de trasparencia en el marco del ...
 
Gestión documental y de archivos como medida de trasparencia en el marco del ...
Gestión documental y de archivos como medida de trasparencia en el marco del ...Gestión documental y de archivos como medida de trasparencia en el marco del ...
Gestión documental y de archivos como medida de trasparencia en el marco del ...
 
Taller de introducción al SEO para profesionales de la información
Taller de introducción al SEO para profesionales de la informaciónTaller de introducción al SEO para profesionales de la información
Taller de introducción al SEO para profesionales de la información
 
El arte de empoderar personas y organizaciones. Ponencia de Emiliano Martín G...
El arte de empoderar personas y organizaciones. Ponencia de Emiliano Martín G...El arte de empoderar personas y organizaciones. Ponencia de Emiliano Martín G...
El arte de empoderar personas y organizaciones. Ponencia de Emiliano Martín G...
 
TALLER: En forma para el futuro, por Hannelore vogt
TALLER: En forma para el futuro, por Hannelore vogtTALLER: En forma para el futuro, por Hannelore vogt
TALLER: En forma para el futuro, por Hannelore vogt
 
Vente a tu biblioteca. Véndete a ti mismo. Ponencia de Liz keating
Vente a tu biblioteca. Véndete a ti mismo. Ponencia de Liz keatingVente a tu biblioteca. Véndete a ti mismo. Ponencia de Liz keating
Vente a tu biblioteca. Véndete a ti mismo. Ponencia de Liz keating
 
TALLER: Los bibliotecarios ¿vendemos servicios? Cómo lanzar una campaña en RR...
TALLER: Los bibliotecarios ¿vendemos servicios? Cómo lanzar una campaña en RR...TALLER: Los bibliotecarios ¿vendemos servicios? Cómo lanzar una campaña en RR...
TALLER: Los bibliotecarios ¿vendemos servicios? Cómo lanzar una campaña en RR...
 
La biblioteca pública: un espacio para la interacción. Ponencia de Carlos Gar...
La biblioteca pública: un espacio para la interacción. Ponencia de Carlos Gar...La biblioteca pública: un espacio para la interacción. Ponencia de Carlos Gar...
La biblioteca pública: un espacio para la interacción. Ponencia de Carlos Gar...
 
La biblioteca como marca. Ponencia de Hannelore Vogt
La biblioteca como marca. Ponencia de Hannelore VogtLa biblioteca como marca. Ponencia de Hannelore Vogt
La biblioteca como marca. Ponencia de Hannelore Vogt
 
Desarrollo profesional en la Administración Pública / Ángel Ramos Arteaga
Desarrollo profesional en la Administración Pública / Ángel Ramos ArteagaDesarrollo profesional en la Administración Pública / Ángel Ramos Arteaga
Desarrollo profesional en la Administración Pública / Ángel Ramos Arteaga
 
El proceso selectivo en el ámbito nacional / Luisa Mª Landáburu
El proceso selectivo en el ámbito nacional / Luisa Mª LandáburuEl proceso selectivo en el ámbito nacional / Luisa Mª Landáburu
El proceso selectivo en el ámbito nacional / Luisa Mª Landáburu
 
XVIII Jornada de Gestión de la Información de SEDIC. Análisis de impacto en r...
XVIII Jornada de Gestión de la Información de SEDIC. Análisis de impacto en r...XVIII Jornada de Gestión de la Información de SEDIC. Análisis de impacto en r...
XVIII Jornada de Gestión de la Información de SEDIC. Análisis de impacto en r...
 
Resumen bae bloque 2
Resumen bae bloque 2Resumen bae bloque 2
Resumen bae bloque 2
 
Resumen bae bloque 1
Resumen bae bloque 1Resumen bae bloque 1
Resumen bae bloque 1
 
Resumen bae bloque 3
Resumen bae bloque 3Resumen bae bloque 3
Resumen bae bloque 3
 
Ovid: Recursos para el aprendizaje, para el uso clínico y de investigación
Ovid: Recursos para el aprendizaje, para el uso clínico y de investigaciónOvid: Recursos para el aprendizaje, para el uso clínico y de investigación
Ovid: Recursos para el aprendizaje, para el uso clínico y de investigación
 

Último

2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfNancyLoaa
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfJonathanCovena1
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxlupitavic
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...JAVIER SOLIS NOYOLA
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
Éteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesÉteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesLauraColom3
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSYadi Campos
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 

Último (20)

2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdf
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdf
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
Éteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesÉteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reacciones
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 

Taller ontologías diseño SPARQL Parte I

  • 1. Taller: Ontologías, diseño y acceso a datos con SPARQL. Parte I SEDIC, 18/05/2018 Ricardo Eito Brun
  • 2. Web Semántica - Introducción  El concepto fue propuesto por Tim Berners-Lee, el 17 de mayo del 2001, con un artículo escrito junto a James Hendler y Ora Lassila en Scientific American: “The Semantic Web: A New Form of Web Content That Is Meaninguful to Computers Will Unleash a Revolution of New Possibilities”  En él se planteaba la necesidad de disponer de una web más inteligente, formada por documentos que fuesen fácilmente procesables por programas informáticos capaces de actuar con independencia de operadores humanos.  Se planteaba una red distribuida que no fuese legible o procesablemente únicamente por personas: los datos deberían estar expuestos para ser procesables por aplicaciones informáticas de forma desatendida, sin intervención humana.
  • 3. Web Semántica - Introducción  En su libro “Tejiendo la web”, Berners-Lee se refiere a la web semántica como: “una red de datos que pueden ser procesados directa o indirectamente por las máquinas”.  El grupo W3C Semantic Web Activity que se encarga de su evolución indica que: “La Web Semántica ofrece un marco común que permite compartir y reutilizar datos entre aplicaciones, empresas y entre distintas comunidades”.
  • 4. Web Semántica Web Semántica vs. Web convencional  La web semántica se presenta como una extensión de la web tradicional.  La principal diferencia está en que, si la web tradicional contiene información destinada a personas, en la semántica se gestionan contenidos dirigidos a programas informáticos y a agentes software capaces de interpretarlos y deducir información, datos y conocimiento a partir de ellos.  En la “web sintáctica”, la responsabilidad de interpretar la información recae en las personas. En la Web Semántica, se pretende dotar de esta misma capacidad a los programas informáticos.  La Web Semántica puede verse como una web para agentes software, programas capaces de actuar de forma independiente programados para identificar, capturar y procesar información según unas reglas.
  • 5. Web Semántica Web Semántica vs. Web convencional  Berners-Lee citaba un ejemplo en el que un agente software busca un fisioterapeuta en un radio de x millas en torno a un domicilio para un tratamiento determinado.  Para que los agentes software puedan identificar y procesar la información en la web, es necesario que ésta esté etiquetada o marcada de forma normalizada.  Los datos deben estar etiquetados y diferenciados de forma explícita.  En este sentido, la falta de capacidad expresiva del lenguaje HTML resultaba un obstáculo para el trabajo de los agentes software.  XML permite incorporar etiquetas que dan significado y estructuran la información disponible en la web.
  • 6. Web Semántica Web Semántica vs. Web convencional
  • 7. Web Semántica Web Semántica vs. Web convencional  La idea de Breitman es similar a la de Yu (2011, p. 15), que define la Web Semántica como: “una colección de tecnologías y estándares que permiten a las máquinas entender el significado (semántica) de la información en la Web”.  Este autor también indica la relación entre la Web Semántica y los datos enlazados o linked data.  La idea de datos enlazados fue propuesta por Tim Berners-Lee en el documento Linked Data Principles publicado en 2006.  La aproximación de los datos enlazados tiene como objetivo dar buenas prácticas sobre cómo se deben exponer y conectar conjuntos de datos estructurados en la Web.  Los datos enlazados se publican utilizando las tecnologías y estándares de la Web Semántica.
  • 8. Web Semántica Fundamentos - URI  Los URI permiten identificar de forma unívoca a los recursos de los que se mantiene información, y a sus metadatos o propiedades.  Un URI es una cadena de caracteres que identifica un recurso en la web.  Puede tratase tanto de un recurso físico, tangible, como de una noción abstracta.  Los URI pueden confundirse con las URL (Uniform Resource Locator) que identifican y permite acceder a documentos publicados en la Web.  Pero no son conceptos equivalentes: las URL son un tipo particular de URI que se utiliza para identificar a los documentos disponibles en la web.
  • 9. Web Semántica Fundamentos - URI  La URL se corresponde con una ubicación física de un fichero.  Frente a esto, un URI no se corresponde con la ubicación de un archivo en la red, sino que actúa como un identificador global que se asigna a un objeto en el contexto de la Web.  Un URI no tiene por qué tratarse de un documento ni de un recurso que exista físicamente.  Son ejemplos de URI:  http://www.sedic.es  http://www.sedic.es/curso/inicio.htm  http://www.sedic.es/curso/websemantica  http://www.sedic.es/curso/websemantica#modulo1.
  • 10. Web Semántica Fundamentos – RDF  RDF es el estándar más relevante para el intercambio e integración de metadatos en la Web Semántica.  Se define como “un lenguaje para representar información sobre recursos en la World Wide Web”.  Tiene un propósito general, es decir, es válido para la codificación e intercambio de cualquier tipo de metadatos en cualquier ámbito de aplicación.  Se puede afirmar que RDF es para la Web Semántica lo que HTML es para la web convencional.  RDF es un estándar publicado por el W3C, y puede usarse para representar información y conocimiento distribuido de forma que las aplicaciones informáticas lo puedan utilizar y procesar de una forma escalable.
  • 11. Web Semántica RDF – Modelo Abstracto  RDF establece un modelo para declarar metadatos sobre recursos.  En RDF, la asignación de valores a los metadatos para un recurso se realiza en forma de declaraciones RDF (traducimos así el término inglés “RDF statement”.  A estas declaraciones también se les llama tripletas (triples en inglés), ya que constan de tres elementos: un sujeto, un predicado y un objeto.  el sujeto corresponde al recurso para el que se proveen los metadatos;  el predicado es una propiedad de dicho recurso (el elemento o metadato);  el objeto es el valor asignado a esa propiedad o metadato..
  • 12. Web Semántica RDF – Modelo Abstracto  Un recurso sería cualquier cosa que puede describirse mediante declaraciones RDF.  Por ejemplo, una declaración podría asignar el valor 2012 a la propiedad fechaPublicacion de un recurso bibliográfico particular.  El recurso bibliográfico sería el sujeto, el metadato fechaPublicacion el predicado, y el valor 2012 sería el objeto.  Cada declaración RDF asigna valor a un metadato o propiedad particular para un único recurso.  Si se considera que sujetos y objetos representan o denotan a recursos existentes, los predicados pueden verse como el nombre de una relación que conecta a esos dos recursos.
  • 13. Web Semántica RDF – Modelo Abstracto  Para recoger los metadatos correspondientes a un recurso, tendríamos varias tripletas o declaraciones RDF para ese mismo recurso (una para cada metadato o propiedad).  Se dice que RDF facilita un medio para formalizar declaraciones sobre los recursos.  Una de las características de RDF es el uso de URIref para hacer referencia a los recursos (sujetos), a las propiedades (predicados), y en ciertos casos a los valores que se asignan a éstas (objetos).  En el caso del sujeto de una declaración, éste siempre estará identificado mediante un URIref. De esta forma se garantiza que el recurso se identifica de forma única en el espacio global de la Web, donde no pueden existir dos recursos o sujetos con el mismo URI.
  • 14. Web Semántica RDF – Modelo Abstracto  Sucede lo mismo con los predicados o propiedades: cada metadato tendrá un URI único, no repetible, que lo identifica globalmente y lo diferencia de los demás metadatos existentes..  En el caso de los objetos (es decir, de los valores que se asignan a los metadatos), caben dos posibilidades:  Su valor puede consistir en un literal o en un valor de tipo fecha, cadena de caracteres, número, etc. Por ejemplo, en el caso de una fecha de publicación o de un título.  Su valor puede consistir en el URIref de otro recurso existente. Por ejemplo, si describimos un recurso bibliográfico (que sería el sujeto), su propiedad (predicado) autor, podría ser un URIref de otro recurso que corresponda a la persona que ha escrito ese libro, y para la cual podríamos contar con metadatos y declaraciones RDF adicionales.
  • 15. Web Semántica RDF – Modelo Abstracto  Nota: Cuando se dice que RDF es un lenguaje para codificar e intercambiar metadatos en la web, puede pensarse erróneamente que RDF es un sistema de metadatos similar a Dublin Core, EAD, MARC, etc.  En Dublin Core se definen una serie de metadatos para describir recursos, como title, creator, date, description, etc.  RDF no define metadatos concretos, sino que ofrece un método para codificar cualquier tipo de metadatos (Dublin Core, MARC, o cualquier otro), de forma normalizada.  Podríamos decir que RDF ofrece un “sobre” donde podríamos enviar metadatos tomados de distintos sistemas de metadatos..
  • 16. Web Semántica RDF – Modelo Abstracto - Ejemplo  Para resumir el modelo abstracto de RDF, y los conceptos de declaración, sujeto, predicado y objeto, incluimos el siguiente ejemplo:  Disponemos de un recurso en formato electrónico – concretamente un módulo del curso sobre Web Semántica…  ¿Cómo analizaríamos la información en tripletas?
  • 17. Web Semántica RDF – Modelo Abstracto - Resumen  Como resumen de este apartado recogemos una serie de reglas propuestas por Yu (2011), en las que se basa RDF:  Regla #1: El conocimiento o la información se expresa mediante una lista de declaraciones, y cada declaración tiene la forma Sujeto-Predicado- Objeto, y este orden nunca debe cambiarse.  Regla #2: El nombre de un recurso debe ser global y debería identificarse mediante un URI (Uniform Resource Identifier).  Regla #3: Es posible hacer cualquier declaración sobre cualquier recurso, y i se elige un URI existente para identificar al recurso sobre el cual se hace la declaración, entonces se cumplirá que: • El recurso al cual nos referimos es el mismo que ya está siendo identificado por ese mismo URI. Y • Todo lo que se declare sobre ese recurso se considerará conocimiento o información adicional sobre él.
  • 18. Web Semántica RDF – Representación gráfica  Por ejemplo, el siguiente grafo corresponde a dos declaraciones RDF:
  • 19. Web Semántica RDF – Representación gráfica
  • 20. Web Semántica RDF – Representaciones alternativas  Los gráficos no son el único método disponible para representar declaraciones RDF.  Otra aproximación se basa en el uso de texto plano (sin etiquetas XML), donde cada declaración se representa en líneas aparte terminadas con un punto.  Esta forma de escribir las declaraciones recibe el nombre de sintaxis Turtle (Terse RDF Triple Laguage).  En cada declaración se diferencia el sujeto, el predicado y el objeto mediante espacios en blanco. Los URI se escriben entre los signos mayor que y menor que, y se puede precisar el tipo de dato de los objetos:  <http://www.example.org/staffid#85740> <http://www.example.org/terms#age> "27"^^<http://www.w3.org/2001/XMLSchema#integer>.
  • 21. Web Semántica RDF – Representaciones XML  Las declaraciones RDF se pueden agrupar en un único documento XML, que podrá tener la extensión .xml o .rdf.  Este documento tendrá un elemento raíz rdf:RDF.  Todo el contenido del documento RDF estará contenido entre las etiquetas de inicio y de fin de este elemento raíz.  El elemento raíz rdf:RDF incluirá uno o más elementos rdf:Description, normalmente uno para cada recurso del que se recogen metadatos.  El elemento rdf:Description irá acompañado por un atributo @rdf:about que tomará como valor el URI que identifica al recurso en cuestión.  Cada elemento rdf:Description contendrá un elemento hijo para cada predicado, propiedad o metadato.  El nombre de estos elementos será un URI que identificará a cada propiedad, y se tomará del sistema de metadatos que se esté aplicando.
  • 22. Web Semántica RDF – Representaciones XML
  • 23. Web Semántica RDF – Representaciones XML  Otra característica de la serialización de declaraciones RDF en XML es la forma de recoger los valores para los metadatos, o los objetos en la terminología RDF.  Cuando el valor de una propiedad es un literal, éste se escribe entre las etiquetas de inicio y de fin del elemento correspondiente a la propiedad o predicado. En estos casos, se podría añadir a la etiqueta de inicio de la propiedad un o predicado un atributo @xml:lang para indicar el idioma del texto.  Cuando las propiedades toman como valor una referencia a otro recurso, apuntando al URI o URIref que lo identifica, el elemento XML correspondiente a la propiedad o predicado será un elemento vacío que incluirá un atributo @rdf:resource. El valor de este atributo será el URI del recurso que se le asigna como valor. En el ejemplo anterior, sucede así con el valor para el metadato mailbox.
  • 24. Web Semántica RDF – Representaciones XML
  • 25. Web Semántica RDF – Representaciones XML
  • 26. Web Semántica RDF – Representaciones XML
  • 27. Web Semántica RDF – El elemento rdf:type  Se trata de un elemento que permite indicar el tipo de un recurso.  Se podria utilizar para diferenciar, por ejemplo, entre recursos de tipo “articulo”, “monografía”, “patente”, o cualquier otro tipo que se precise usar en cualquier tipo de aplicación.  La importancia de los tipos se describe en el apartado dedicado al modelado con RDFS.  Inicialmente, es suficiente recordar que se dispone de la posibilidad de indicar el tipo de los recursos para los que se codifican metadatos.  El uso del elemento rdf:type corresponde a una declaración RDF del tipo:  Sujeto rdf:type Objeto:.
  • 28. Web Semántica RDF – El elemento rdf:type
  • 29. Web Semántica RDF – El elemento rdf:type
  • 30. Web Semántica RDF – El elemento rdf:type  Se dice que los recursos RDF que van acompañados por el elemento rdf:type son “recursos con tipo” o “tipados”.  Si en lugar de asignar un literal como valor a rdf:type, le asignásemos el URI de otro recurso, el fragmento y el gráfico equivalentes serían estos:
  • 31. Web Semántica RDF – El elemento rdf:type
  • 32. Web Semántica RDF – El elemento rdf:type
  • 33. Ricardo Eito Brun Taller: Ontologías, diseño y acceso a datos con SPARQL. Parte II
  • 34. RDFS - Introducción  RDF ofrece un marco general para codificar cualquier tipo de metadato sobre cualquier tipo de recurso.  RDF es un lenguaje independiente de dominios de aplicación o áreas de conocimiento específicas, que se puede utilizar para codificar cualquier tipo de metadato.  Esta flexibilidad nos lleva a formular la pregunta:  ¿qué declaraciones puedo utilizar en un documento RDF?  ¿Qué propiedades o predicados puedo utilizar para los distintos tipos de recursos que son el sujeto de mis declaraciones?  ¿Qué valores puedo asignar como valores de cada propiedad?
  • 35. RDFS - Introducción  RDFS permite crear esquemas para dar respuesta a estas preguntas.  Un esquema RDFS indicará:  a) los tipos o clases de entidades de los que se quiere recoger metadatos;  b) los metadatos o propiedades disponibles para cada tipo de recurso;  c) los valores que acepta cada propiedad, etc.  Se puede ver una similitud entre los esquemas RDFS y los modelos de bases de datos tradicionales, donde se identifican entidades, campos, tipos de datos, etc.  Sin embargo, el modelado RDFS se diferencia de estos otros modelos en un aspecto fundamental: RDFS no tiene una aproximación restrictiva, ya que debe permitir el principio AAA (Anyone can say Anything about Any topic) de la Web Semántica.
  • 36. RDFS - Introducción  Resulta evidente que RDF debe complementarse con algún método que permita modelar el área o dominio sobre el que queremos expresar los metadatos.  Es necesario contar con alguna herramienta para expresar las condiciones relativas a:  Los tipos de recursos o clases con los que se va a trabajar,  Las propiedades de estos recursos que nos permiten caracterizarlos, y  Las reglas que se deben aplicar a la hora de asignar valores a estas propiedades.  RDF Schema, o RDFS, es un lenguaje que permite crear vocabularios que se utilizarán en las declaraciones RDF.  RDFS permite declarar tipos de objetos o clases, predicados o propiedades, e indicar qué predicados pueden usarse con cada tipo de objeto y qué valores puede tomar cada predicado.
  • 37. RDFS – Clases y propiedades  RDFS da la posibilidad de acotar el vocabulario y los términos que podrán usarse en las declaraciones RDF.  En RDFS se declaran clases y propiedades.  Estas últimas se podrán utilizar como predicados en las declaraciones RDF.  Un modelo RDFS se expresa también utilizando la sintaxis de RDF descrita en el módulo anterior.  Tanto las clases como las propiedades se identifican mediante URI (recordamos que el uso de URI para identificar cualquier tipo de elemento es una característica fundamental de la Web Semántica).
  • 38. RDFS – Clases  Una clase representa a todos los recursos que comparten unas características comunes.  Una clase es una abstracción de los recursos que tienen las características necesarias para ser considerados miembros de una clase.  Serían ejemplos de clases: “Persona”, “Alumno”, “Profesor”, “Curso”, “Temario”, “Examen”, “Manual”, etc.  Los recursos que pertenecen a una misma clase comparten propiedades comunes.  Las clases se identificarán mediante un URI. Normalmente, se sigue la pauta de comenzar su nombre con una letra mayúscula.
  • 39. RDFS – Clases  Otra característica de las clases es que pueden organizarse jerárquicamente, para representar clases más genéricas y más específicas.  Por ejemplo, la clase Profesor sería una subclase de la clase Persona, ya que cualquier instancia o miembro de la clase Profesor es a su vez una instancia o miembro de la clase Persona.  Una clase puede ser una subclase de más de una clase.  Por ejemplo, la clase Libro-e podría ser una subclase de las clases Monografía y Recurso-e.
  • 40. RDFS – Clases  En los modelos RDFS se pueden establecer así jerarquías de clases, con tantos niveles como sean necesarios para expresar las características del dominio con el que se quiere trabajar.  Este mecanismo constituye una de las bases del razonamiento que permite la Web Semántica.  Nota: En RDF existe una superclase rdf:Resource, que sería la clase situada en el nivel más alto de la jerarquía, de forma que todos los demás términos RDFS son subclases de ésta.
  • 43. RDFS – Clases  Para simplificar la declaración de clases en un modelo RDFS, es posible usar una sintaxis alternativa basada en el elemento rdfs:Class. Para cada clase tendremos un elemento rdfs:Class.
  • 45. RDFS – Clases  En este ejemplo anterior se puede apreciar cómo, en la declaración del esquema RDFS, se combinan etiquetas o marcas del espacio de nombres RDF con etiquetas o marcas del espacio de nombres RDFS.  Por ejemplo, <rdf:RDF>, @rdf:about, @rdf:Resource provienen del espacio de nombres RDF, y <rdfs:Class> o <rdfs:subClassOf> provienen del espacio de nombres RDFS. .
  • 47. RDFS – Propiedades  Las propiedades representan aspectos o características aplicables a las clases.  Todas las instancias o recursos de una clase compartirán esos aspectos o características comunes.  Por ejemplo, todas las instancias de la clase Libro-E contarán con propiedades comunes como el DOI o una URL, todas las instancias de la clase Monografia contarán con propiedades comunes como el título, autor, año de publicación, etc.
  • 48. RDFS – Propiedades  Las propiedades también se utilizan en RDF para representar relaciones existentes entre dos clases.  Por ejemplo, la propiedad esAutor representaría una relación entre las clases Autor y Monografía; la propiedad editadoPor representaría una relación entre las clases Monografía y Editor, etc.  Las propiedades – que se corresponderán con los predicados de las declaraciones RDF -, se identificarán siempre mediante un URI.  Normalmente, se sigue la pauta de comenzar su nombre con una letra minúscula..
  • 49. RDFS – Propiedades  En RDF se distinguen dos tipos de propiedades, dependiendo de si su valor es un dato o literal (cadena de caracteres, fecha, número, etc.) o una referencia a otro recurso.  Por ejemplo, la propiedad numeroPaginas tomaría como valor un número entero. Sin embargo, la propiedad esAutor tomaría como valor el URI correspondiente a una instancia de la clase Monografía.  Una propiedad se caracterizará por tener un dominio y un rango.  El dominio de una propiedad es la clase (o clases) a la cual es aplicable. Por ejemplo, la propiedad imparteCurso es aplicable a la clase Profesor. Dicho de otra forma, la clase Profesor sería el dominio de la propiedad imparteCurso.  El rango de una propiedad es el conjunto de valores que admite. En propiedades de tipo “tipo de dato”, el rango será un tipo de dato. En propiedades de tipo objeto, el rango será una clase existente. Por ejemplo, el rango de la propiedad imparteCurso sería la clase Curso..
  • 51. RDFS - Propiedades  En RDFS podemos declarar una propiedad sin especificar su dominio.  De esta forma, la propiedad podría aplicarse con cualquier tipo de recurso, no estaría restringida a clases o tipos de recursos específicos.  Igualmente, se podría declarar una propiedad sin indicar su rango.  Otra característica de la declaración de propiedades en RDFS es que éstas se declaran independientemente de las clases.  Es decir, al declarar una clase no se especifican cuáles son sus propiedades.  La forma de vincular propiedades y clases es, únicamente, mediante el dominio de las propiedades.
  • 52. RDFS - Propiedades  Esto debe recordarse ya que en otros lenguajes o métodos de modelado lo que suele hacerse es declarar las propiedades como parte de las declaraciones de las clases. RDFS no sigue esta aproximación.  El siguiente fragmento RDFS incluye la definición de tres clases (Libro, Autor, Editor) y de dos propiedades asignadas a la clase Libro: escritoPor e isbn. El valor para la primera propiedad debe ser una instancia de la clase Autor. El valor de la segunda propiedad puede ser cualquier cadena de caracteres:.
  • 53. RDFS – Otros elementos RDFS  Además de los elementos utilizados para declarar clases y propiedades con sus rangos y dominios, RDFS incorpora otros elementos que se pueden usar en la creación de esquemas RDFS. Normalmente, se usarán para documentar la estructura del esquema RDFS. Estos elementos son:   <rdfs:seeAlso>   <rdfs:isDefinedBy>   <rdfs:label>   <rdfs:comment>.
  • 54. RDFS – Otros elementos RDFS  <rdfs:seeAlso> se utiliza para indicar que existe otro recurso donde se puede encontrar información sobre un recurso en particular.  Podría utilizarse tanto con clases como con instancias de clases. Por ejemplo:
  • 55. RDFS – Otros elementos RDFS  <rdfs:isDefinedBy> es similar a <rdfs:seeAlso>, y se utiliza para hacer referencia a la fuente principal de información sobre un recurso determinado.  De esta forma, apuntará normalmente a un recurso donde se puede encontrar información relevante sobre el recurso en cuestión.
  • 56. Ricardo Eito Brun Taller: Ontologías, diseño y acceso a datos con SPARQL. Parte III
  • 57. OWL y ontologías Introducción  OWL, Web Ontology Language.  OWL permite diseñar ontologías: vocabularios que modelan el conocimiento sobre un área de dominio específico, con el fin de representar datos en la Web Semántica.  OWL es similar a RDFS, y se basa en los mismos conceptos : clases, propiedades e instancias o individuos.  De hecho, OWL es una extensión de RDFS, al que incorpora capacidades adicionales para poder crear modelos más precisos (ontologías)
  • 58. OWL y ontologías Introducción  Las ontologías son un elemento clave en la Web Semántica.  Se definen como “conceptualización de un dominio o área de conocimiento”.  Una ontología incluye los conceptos o términos que conforman el vocabulario utilizado en un área determinada, y las relaciones que existen entre esos conceptos.  Esta definición nos puede llevar a considerar un glosario (listado de términos y definiciones) como una ontología.  De hecho, en la literatura sobre el tema se encuentran con frecuencia referencias a “ontologías de mayor o menor complejidad”, e incluye un abanico de opciones desde simples listas de términos hasta representaciones más sofisticadas para el razonamiento lógico.
  • 59. OWL y ontologías Introducción  Si se cotejan distintas definiciones, en la mayoría se indica:  la necesidad de que la ontología pueda ser procesable por un programa informático,  que se pueda utilizar para deducir nuevos conocimientos aplicando reglas lógicas.  que represente una conceptualización consensuada (es decir, una representación de la realidad aceptada como correcta por un grupo de personas).
  • 60. OWL y ontologías Introducción  “Una ontología es una especificación formal, explícita, de una conceptualización compartida.  Conceptualización se refiere a un modelo abstracto de un fenómeno cualquiera, en el que se han identificado los conceptos relevantes de ese fenómeno.  Explícita significa que el tipo de conceptos que se usan, y las restricciones que afectan a su uso, se han definido explícitamente.  Formal se refiere al hecho de que la ontología puede ser procesada por un programa informático.  Compartida refleja el hecho de que la ontología captura conocimiento consensuado, no propio de un individuo, sino aceptado por un grupo.” (Studer, 1998).
  • 61. OWL y ontologías Introducción Se puede concluir señalando que: una ontología recoge los conceptos más relevantes de un área de dominio concreto, así como las relaciones que se establecen entre ellos y las restricciones que afectan a las mismas. Las ontologías son el resultado de un proceso de adquisición y captura de conocimiento Reflejan el conocimiento consensuado o común que, sobre esa área, tiene un grupo de personas. Deben codificarse de una forma que puedan ser procesadas por un ordenador.)
  • 62. OWL y ontologías Elementos de OWL  En una ontología OWL se utilizan: clases, propiedades e individuos.  También se utilizan los términos categorías, relaciones y objetos para hacer referencia, respectivamente, a las clases, propiedades y a las instancias o individuos.  En cualquier caso, los conceptos son equivalentes a los tratados en RDFS.  En OWL se utiliza el término axioma para hacer referencia a las declaraciones. Por ejemplo, decir que una instancia es de una clase o tipo determinado sería un axioma.  Se dice también que una ontología OWL es un conjunto de axiomas. Un axioma equivaldría a una declaración o statement en RDF.
  • 63. OWL y ontologías Elementos de OWL  OWL incorpora términos o elementos reservados para declarar clases, propiedades e individuos.  Estos términos se agrupan en el espacio de nombres identificado por el URI: http://www.w3.org/2002/07/owl#  El prefijo para abreviar este espacio de nombres es owl:  La principal diferencia entre OWL y RDFS es que OWL tiene una mayor capacidad expresiva ya que permite utilizar expresiones basadas en la intersección, unión, complemento, etc.  Otra diferencia entre OWL y RDFS es que en OWL se pueden utilizar los identificadores IRI (Internationalized Resource Identifiers), que son equivalentes a los URI con la salvedad de que permiten utilizar cualquier carácter Unicode, y no sólo los 127 caracteres ASCII.
  • 64. OWL y ontologías Elementos de OWL: Clases  Una clase representa a los individuos, objetos o entidades que comparten unas características comunes.  Una clase es una abstracción de los individuos que tienen las características necesarias para ser considerados miembros de una clase. Serían ejemplos de clases conceptos como “Persona”, “Alumno”, “Profesor”, “Curso”, “Temario”, “Examen”, “Manual”, etc.  Normalmente las clases contarán con un nombre (también es posible tener en OWL clases abstractas, sin nombrar).  En OWL existe una superclase – de la cual se derivarán todas las demás – llamada owl:Thing.  También existe una clase llamada owl:Nothing que representa la nada.
  • 65. OWL y ontologías Elementos de OWL: Clases  OWL permite definir jerarquías de clases, o decir que una clase es una sub-clase de otra existente.  Para hacer esto, la sintaxis que usaremos es la siguiente:
  • 66. OWL y ontologías Elementos de OWL: Propiedades  Las propiedades representan aspectos o características aplicables a las clases.  También representan relaciones existentes entre dos clases.  Por ejemplo:  la propiedad “imparteCurso” representaría una relación entre las clases “Profesor” y “Curso”;  la propiedad “matriculadoEnCurso” representaría una relación entre las clases “Alumno” y “Curso”, etc.  OWL distingue dos tipos de propiedades, dependiendo de si su valor es un dato (cadena de caracteres, fecha, número, etc.) o un objeto.  Se habla así de “propiedades tipo de dato” y de “propiedades objeto”. Por ejemplo, numeroHoras sería una propiedad tipo de dato, e imparteCurso de tipo objeto.
  • 67. OWL y ontologías Elementos de OWL: Propiedades  Una propiedad en OWL siempre se caracterizará por tener un dominio y un rango.  El dominio de una propiedad es la clase a la cual es aplicable. Por ejemplo, la propiedad imparteCurso es aplicable a la clase Profesor. Dicho de otra forma, la clase Profesor sería el dominio de la propiedad imparteCurso.  El rango de una propiedad es el conjunto de valores que admite. En propiedades de tipo “tipo de dato”, el rango será un tipo de dato, expresado según los tipos de datos de los esquemas XML. En propiedades de tipo objeto, el rango será una clase existente.
  • 68. OWL y ontologías Elementos de OWL: Individuos  Un individuo representa una ocurrencia o instancia particular de una clase.  Por ejemplo, si Juan López es un profesor de la academia Estudios S.L., Juan López será una instancia o individuo de la clase Profesor, y Estudios S.L. será un individuo o instancia de la clase Academia.  Las instancias o individuos pertenecerán a una clase, y heredarán todas las propiedades/relaciones de ésta. En OWL, los individuos se representan mediante el elemento <owl:Thing>, y se identificarán mediante un URI.
  • 69. OWL y ontologías Elementos de OWL: Individuos  En OWL no se asume de forma explícita que dos individuos distintos corresponden a entidades diferentes, incluso si los dos tienen URI diferentes.  Esta característica hace que, si queremos indicar que dos o más individuos son diferentes entre sí, debemos indicarlo de forma explícita como parte de nuestra ontología.  OWL incorpora unos elementos para poder indicar si dos individuos son los mismos o si son diferentes.  Se trata de los elementos <owl:sameAs> y <owl:differentFrom>. También es posible indicar que un conjunto de individuos son todos diferentes entre sí mediante el elemento <owl:AllDifferent>..
  • 70. OWL y ontologías Definición avanzada de clases  Restricción owl:cardinality  Permite indicar el número de veces que puede usarse una propiedad con una clase, o el número de ocurrencias de la propiedad en los individuos de ese tipo.  Por ejemplo, podría limitarse el número de cursos en los que se puede matricular un alumno estableciendo la cardinalidad de la propiedad matriculadoEn, o el número de alumnos por curso fijando una cardinalidad para la propiedad numeroAlumnosMatriculados.  Para expresar con más precisión la cardinalidad de una propiedad para una clase específica, OWL también incorpora los elementos <owl:minCardinality> y <owl:maxCardinality>
  • 71. OWL y ontologías Definición avanzada de clases - conjuntos  En OWL se pueden declarar nuevas clases mediante operaciones lógicas (intersección, unión, complemento) sobre otras clases declaradas previamente.  Para definir una clase como resultado de la intersección de dos o más clases, OWL incorpora el elemento <owl:intersectionOf>.  Este elemento es equivalente a decir que la nueva clase es una subclase de otras clases existentes.  El siguiente fragmento declara una clase que representa a los alumnos con beca que repiten curso:.
  • 72. OWL y ontologías Definición avanzada de clases - conjuntos  OWL incluye también estas opciones: <owl:oneOf>, <owl:equivalentClass> y <owl:disjointWith>.  <owl:oneOf> permite definir una clase por su extensión, es decir, listando todas sus instancias o individuos.  Cada miembro de la clase se añadirá mediante un elemento <owl:Thing> independiente, entre las etiquetas de inicio y de fin del elemento <owl:oneOf>  Los elementos <owl:equivalentClass> y <owl:disjointWith> permiten indicar, respectivamente, que:  Dos clases son equivalentes, es decir, que todas las instancias de una lo serán también de la otra.  Dos clases son disjuntas, es decir, no comparten ninguna instancia. Si una instancia o individuo pertenece a una de las clases, no podrá pertenecer a la otra. Por ejemplo, las clases Hombre y Mujer serían disjuntas.
  • 73. OWL y ontologías Definición avanzada de propiedades  Entre las propiedades declaradas en la ontología también se pueden establecer relaciones. Las más habituales son:  owl:subPropertyOf - indica que una propiedad es un caso particular de otra más general. Por ejemplo, la propiedad esHijoDe sería una subpropiedad de esFamiliaDe.  owl:equivalentProperty - indica que dos propiedades son equivalentes o sinónimas.  owl:inverseOf - indica que dos propiedades son inversas. Por ejemplo, la propiedad imparteCurso sería la inversa de esImpartidoPor..
  • 74. OWL y ontologías Definición avanzada de propiedades  Las propiedades pueden tener estas características:  owl:SymmetricProperty – indica que una propiedad establece una relación que puede leerse en cualquier dirección. Por ejemplo, la propiedad esVecino.  owl:TransitiveProperty – indica que una propiedad establece una relación entre clases que es transitiva. Por ejemplo, la propiedad esDescendiente. Si Juan es descendiente de Luis, y Luis lo es de Paco, podemos deducir que Juan será descendiente de Paco.  owl:Functional – una propiedad será funcional cuando su cardinalidad mínima sea 0 y la máxima sea 1. Esto no quiere decir que el valor de dicha propiedad no pueda ser el mismo en distintos individuos. Un ejemplo de propiedad funcional sería la fecha de nacimiento:
  • 75. OWL y ontologías Definición avanzada de propiedades  Las propiedades pueden tener estas características:  owl:InverseFunctionalProperty –indica que dos instancias diferentes no pueden tener el mismo valor en una propiedad marcada de esta forma (funcional inversa). Un ejemplo característico serían las direcciones de correo-e (una dirección de correo-e pertenece a una única persona).  Una propiedad puede ser a la vez funcional y funcional inversa. Esto sucede por ejemplo con los números de identificación tipo DNI, pasaporte, o similares.
  • 77.  SKOS está orientado a la indización y a la recuperación de información documental, frente a otros sistemas como OWL orientados a procesamientos más complejos.  SKOS no debe considerarse únicamente como una forma de publicar lenguajes de indización, sino como un mecanismo para representar relaciones entre distintos esquemas conceptuales.  Iniciativas que han precedido a SKOS  LIMBER (Language Independent Metadata Browsing of European Resources),  CERES (California Environmental Resources Evaluation System),  GEM (Gateway to Educational Materials),  CALL (Center for Army Lessons Learned) Thesaurus,  ETT (European Treasury Browser) o  KAON/AGROVOC. SKOSSKOS
  • 78.  SKOS está basado en RDF.  Los conceptos de un lenguaje de indización corresponden a instancias de clase, y las relaciones entre conceptos y sus descripciones se tratan como declaraciones sobre dichas instancias.  Los conceptos o “unidades de pensamiento” se identifican mediante URI, a los que se pueden asignar distintas etiquetas en lenguaje natural, en uno o en distintos idiomas.  Los conceptos se agrupan en “esquemas de conceptos”.  Permite asociar notas aclaratorias a los conceptos  Permite relacionar los conceptos, mediante las relaciones jerárquicas y asociativas.  Incorpora funciones avanzadas que permiten establecer relaciones entre esquemas de conceptos. SKOSSKOS
  • 79.  Los elementos SKOS están definidos en el espacio de nombres http://www.w3.org/2004/02/skos/core#, para el que se suele usar el prefijo skos:  Cada concepto se identifica mediante un elemento <concept>.  Las etiquetas lingüísticas asociadas a los conceptos se representan mediante elementos <prefLabel>, <altLabel> o <hiddenLabel>.  La primera señala el término autorizado;  La segunda términos alternativos no autorizados (sinónimos, cuasi-sinónimos, formas abreviadas o desarrolladas para siglas, etc.);  La tercera se utiliza para designaciones que se quieren registrar pero que deben permanecer ocultas para el usuario del sistema. SKOSSKOS
  • 80.  Las etiquetas asignadas a un concepto irán acompañadas de un atributo que indicará su idioma (un concepto sólo podrá tener un único término autorizado en el mismo idioma).  Sobre las relaciones entre términos, SKOS define los siguientes elementos:  <broader>  <narrower>  <related>  <broader> dirige desde un concepto a otro con un significado más genérico.  <narrower> sigue el orden inverso, y dirige de un concepto a otro más específico. SKOSSKOS
  • 81.  Siguiendo las reglas usadas en la construcción de lenguajes de indización, las relaciones genéricas o específicas corresponden a casos en los que exista una relación de tipo “A es un tipo de B”, “A es una instancia de B”, o “A es parte de B”, es decir, relaciones genérico-específicas o género- especie y relaciones parte-todo.  <related> se usará para aquellos conceptos cuyo significado está relacionado, en aquellos casos en los que la relación no corresponda con la genérico-específica o parte-todo.  Para registrar notas de alcance asociadas a los conceptos, SKOS define los elementos <scopeContent>, <definition>, <example>, <historyNote>, <editorialNote> y <changenote>. SKOSSKOS
  • 82.  Los sistemas de conceptos se declaran mediante <conceptScheme>.  Los sistemas de conceptos se definen o declaran en primer lugar, y luego se indica la pertenencia de un concepto a un sistema u otro mediante el atributo @inScheme que acompaña al concepto.  En SKOS se pueden vincular conceptos a sistemas, pero no sucede así con las relaciones que existen entre los conceptos y que no se vinculan a un sistema de conceptos particular.  Normalmente los sistema de conceptos tendrán una serie de jerarquías de términos, cada una de ellas con su término principal que constituye el origen o punto de acceso a la jerarquía. En SKOS, esto se representa mediante los elementos <hasTopConcept>. SKOSSKOS
  • 83.  Para indicar las relaciones entre conceptos de distintos sistemas, SKOS incorpora las propiedades:  exactMatch y closeMatch, que indican distintos niveles de similitud semántica,  broadMatch, narrowMatch y relatedMatch, que se utilizarán en aquellos casos en los que un término tenga un significado más o menos genérico o específico que el de otro concepto definido en un sistema de conceptos diferente.  SKOS no hace mención a cómo se deben relacionar los conceptos con los recursos indizados. SKOSSKOS
  • 84.  Descarga un thesauro disponible en esta URL y comprueba como usan los distintos elementos SKOS:  http://skos.um.es/vocabularios/index.php/  Codifica, mediante etiquetas SKOS, 3 conceptos del siguiente vocabulario controlado:  www.cedefop.europa.eu/files/3049_en.pdf  Consulta los datasets SKOS disponibles en:  http://www.w3.org/2001/sw/wiki/SKOS/Datasets SKOS - PrácticaSKOS - Práctica
  • 85. Ricardo Eito Brun Taller: Ontologías, diseño y acceso a datos con SPARQL. Parte IV
  • 86. SPARQL  SPARQL es una especificación del W3C para consultar repositorios de declaraciones RDF.  En la visión de la Web Semántica se espera que existan distintos repositorios y bases de datos que expongan sus metadatos a agentes software capaces de acceder a ellos y recolectarlos con distintos propósitos.  Esta visión necesita otro componente para realizarse en todo su potencial: un lenguaje de consulta para filtrar y recuperar la información que necesitan las aplicaciones consumidoras de metadatos.
  • 87. SPARQL  La función de SPARQL se establece en su especificación: “SPARQL can be used to express queries across diverse data sources, whether the data is stored natively as RDF or viewed as RDF via middleware”.  SPARQL ofrece el lenguaje de consulta, un protocolo de acceso para transportar las consultas y un formato basado en XML para enviar los resultados de las consultas.
  • 88. SPARQL  SPARQL soportan distintos modos de consulta o “query modes”:  SELECT – devuelve datos de declaraciones RDF asociados a variables, en forma de “tabla de variables”.  CONSTRUCT – devuelve un gráfico RDF como resultado, con el subconjunto de declaraciones que cumplen las condiciones indicadas en la consulta. Los resultados se serializan en forma de documentos RDF/XML.  ASK – devuelve un valor booleano que indica si hay al menos una declaración en el repositorio RDF que cumple las condiciones indicadas en la consulta.  DESCRIBE – devuelve un gráfico RDF que describe los recursos que cumplen con las condiciones indicadas en la consulta..
  • 89. SPARQL  El principal es SELECT, que presenta grandes similitudes con el lenguaje SQL para consulta de bases de datos relacionales.  Una consulta SPARQL incluye cláusulas SELECT, FROM y WHERE.  Los datos recuperados del repositorio RDF se vinculan a variables con nombre. La lista de variables que se incluyan en la cláusula SELECT serían equivalentes a los nombres de columnas que se usan en una SELECT SQL.  Los datos que se recuperan pueden corresponder al URI del recurso, URI de propiedades o sus valores (es decir, una consulta SPARQL puede recuperar tanto los sujetos, como los predicados y los objetos de las declaraciones RDF).  Consultar ejemplos en: http://bnb.data.bl.uk/flint
  • 93. SKOS Introducción Sus principales características son : Los conceptos o “unidades de pensamiento” se identifican mediante URI, a los que se pueden asignar distintas etiquetas en lenguaje natural, en uno o en distintos idiomas. Los conceptos se agrupan en “esquemas de conceptos”. Permite asociar notas aclaratorias a los conceptos Permite relacionar los conceptos, mediante las relaciones jerárquicas y asociativas características de los lenguajes de indización..
  • 94. SKOS Estructura  Los elementos SKOS están definidos en el espacio de nombres http://www.w3.org/2004/02/skos/core#, para el que se suele usar el prefijo skos:.  Cada concepto se identifica mediante un elemento <concept>.  Las etiquetas lingüísticas asociadas a los conceptos se representan mediante elementos <prefLabel>, <altLabel> o <hiddenLabel>.  Las etiquetas asignadas a un concepto irán acompañadas de un atributo que indicará su idioma.  Sobre las relaciones entre términos, SKOS define los siguientes elementos: <broader>, <narrower> y <related>
  • 95. SKOS Estructura  Para registrar notas de alcance asociadas a los conceptos, SKOS define los elementos <scopeContent>, <definition>, <example>, <historyNote>, <editorialNote> y <changenote>.  Las notas también pueden ir acompañadas por un atributo que indica el idioma en el que se han redactado.  Los sistemas de conceptos se declaran mediante <conceptScheme>. Los sistemas de conceptos se definen o declaran en primer lugar, y luego se indica la pertenencia de un concepto a un sistema u otro mediante el atributo @inScheme que acompaña al concepto.  En SKOS se vinculan conceptos a sistemas, pero no sucede así con las relaciones que existen entre los conceptos y que no se vinculan a un sistema de conceptos particular.
  • 96. SKOS Estructura  Normalmente los sistemas de conceptos tendrán una serie de jerarquías de términos, cada una de ellas con su término principal que constituye el origen o punto de acceso a la jerarquía, y que estará situado en el nivel superior de la misma. En SKOS, esto se representa mediante los elementos <hasTopConcept>.  Para indicar las relaciones entre conceptos de distintos sistemas, SKOS incorpora las propiedades exactMatch y closeMatch, broadMatch, narrowMatch y relatedMatch  SKOS no hace mención a cómo se deben relacionar los conceptos con los recursos indizados.
  • 97. SKOS Consultas http://resource.geolba.ac.at/lithology.html  PREFIX skos:<http://www.w3.org/2004/02/skos/core#>  base <http://resource.geolba.ac.at/lithology/>  SELECT ?main  WHERE  {  ?main skos:prefLabel "Pyroclastics"@en .  }
  • 98. SKOS Consultas http://resource.geolba.ac.at/lithology.html  PREFIX skos:<http://www.w3.org/2004/02/skos/core#>  base <http://resource.geolba.ac.at/lithology/>  SELECT ?Concept  WHERE  {  <158> skos:narrower ?Concept  }
  • 99. SKOS Consultas http://resource.geolba.ac.at/lithology.html  PREFIX skos:<http://www.w3.org/2004/02/skos/core#>  base <http://resource.geolba.ac.at/lithology/>  SELECT ?Concept ?nombre  WHERE  {  <158> skos:narrower ?Concept .  ?Concept skos:prefLabel ?nombre  }
  • 100. SKOS Consultas http://resource.geolba.ac.at/lithology.html  PREFIX skos:<http://www.w3.org/2004/02/skos/core#>  base <http://resource.geolba.ac.at/lithology/>  SELECT ?Concept ?nombre  WHERE  {  <158> skos:narrower ?Concept .  ?Concept skos:prefLabel ?nombre .  filter (lang(?nombre)="en") .  }
  • 101. SKOS Consultas http://resource.geolba.ac.at/lithology.html  PREFIX skos:<http://www.w3.org/2004/02/skos/core#>  base <http://resource.geolba.ac.at/lithology/>  SELECT ?Concept ?nombre  WHERE  {  ?main skos:narrower ?Concept .  ?main skos:prefLabel ?var .  ?Concept skos:prefLabel ?nombre .  filter regex(?var, "Sedimentary material", "i").  }
  • 102. SKOS Consultas http://resource.geolba.ac.at/lithology.html  PREFIX skos:<http://www.w3.org/2004/02/skos/core#>  base <http://resource.geolba.ac.at/lithology/>  SELECT ?nombre1 ?Concept ?nombre2  WHERE  {  ?main skos:narrower ?Concept .  ?main skos:prefLabel ?nombre1 .  ?Concept skos:prefLabel ?nombre2 .  filter regex(?nombre1, "Sediment", "i").  }
  • 103. SKOS Consultas http://resource.geolba.ac.at/lithology.html PREFIX skos:<http://www.w3.org/2004/02/skos/core#> base <http://resource.geolba.ac.at/lithology/> SELECT ?Concept ?nombre WHERE { { <2> skos:narrower ?Concept . ?Concept skos:prefLabel ?nombre . filter (lang(?nombre)="en") . } UNION { <2> skos:broader ?Concept . ?Concept skos:prefLabel ?nombre . filter (lang(?nombre)="en") . } }
  • 104. SKOS Consultas http://resource.geolba.ac.at/lithology.html PREFIX skos:<http://www.w3.org/2004/02/skos/core#> base <http://resource.geolba.ac.at/lithology/> SELECT ?main ?Concept ?nombre WHERE { ?main skos:related ?Concept . ?Concept skos:prefLabel ?nombre . ?main skos:prefLabel ?var . filter (regex(?var, "^Syenite", "i")) . }
  • 105. SKOS Consultas http://resource.geolba.ac.at/lithology.html PREFIX skos:<http://www.w3.org/2004/02/skos/core#> base <http://resource.geolba.ac.at/lithology/> SELECT ?main ?Concept ?nombre WHERE { ?main skos:related ?Concept . ?Concept skos:prefLabel ?nombre . ?main skos:prefLabel ?var . filter (regex(?var, "^Syenite", "i") || regex(?var, "^Rhyoli", "i")) . }
  • 106. SKOS Consultas http://resource.geolba.ac.at/lithology.html PREFIX skos:<http://www.w3.org/2004/02/skos/core#> base <http://resource.geolba.ac.at/lithology/> SELECT ?main ?Concept ?nombre WHERE { ?main skos:related ?Concept . ?Concept skos:prefLabel ?nombre . ?main skos:prefLabel ?var . filter (regex(?var, "^Syenite", "i") || regex(?var, "^Rhyoli", "i")) . }
  • 107. Datos enlazados Introducción  Idea propuesta por el inventor de la Web, Tim Berners-Lee en el año 2006, y consiste en publicar datos en la Web de forma que sean procesables por programas informáticos.  Los datos se publicarán en forma de conjuntos de datos o datasets, que pueden ser enlazados con otros conjuntos de datos publicados por terceros, estableciendo una red de datos.  En LOD, se utiliza RDF como formato para exponer y publicar los datasets.  LOD, al igual que la Web Semántica, no está asociada a ningún área de aplicación particular  En LOD, los objetos de las declaraciones RDF relativas a un sujeto pueden apuntar a entidades que se han definido en cualquier otro conjunto de datos..
  • 108. Datos enlazados Introducción  Se pueden obtener datos relativos al volumen de datos publicados por la comunidad LOD en la URL:  http://esw.w3.org/topic/TaskForces/CommunityProjects/LinkingOpenD  http://esw.w3.org/topic/TaskForces/CommunityProjects/LinkingOpenD  Sobre los datasets publicados en formato LOD, habitualmente se utiliza el gráfico de la siguiente página (creado y mantenido por Richard Cyganiak y Anja Jentzsch para mostrar los conjuntos de datos disponibles. El gráfico está accesible en la págin:  http://www.w3.org/wiki/TaskForces/CommunityProjects/LinkingOpenD
  • 109. Datos enlazados Introducción Las características que debe cumplir un conjunto de metadatos LOD para ser incorporados en este registro son las siguientes: Deben estar disponibles a través de URIs con el protocolo http o https. Deben estar expuestos en forma de datos RDF, al menos en uno de los diferentes métodos de serialización para RDF (RDFa, RDF/XML, Turtle, N-Triples). El dataset debe incluir al menos 1000 declaraciones RDF. El dataset debe contener enlaces al menos a uno de los datasets que figuran en el diagrama. Se comprueba que al menos hay 50 enlaces entre los dos datasets. Se debe poder acceder al dataset mediante recolección o descarga de datos RDF o a través de un punto de consulta SPARQL (SPARQL endpoint).
  • 110. Datos enlazados Introducción  Los puntos anteriores obligan a configurar ciertas funciones técnicas del servidor web a través del cual se publiquen los datos RDF.  Por ejemplo, el servidor debe ser capaz de reconocer peticiones que soliciten datos RDF mediante el tipo MIME application/rdf+xml.  Estos requisitos son de hecho algunas de las reglas que fueron propuestas por Tim Berners-Lee en su visión de la web de datos enlazados:  usar URIs para identificar a las cosas,  usar el protocolo HTTP,  incluir enlaces a otros URI para poder descubrir nuevos datos y explorar la información enlazada
  • 111. Datos enlazados Introducción  Participar en la iniciativa LOD se deben facilitar o exponer datos y enlazarlos con otros datasets existentes.  Para hacer esto:  Se deben seleccionar o crear URI para hacer referencia a los recursos,  elegir un vocabulario para etiquetar los datos (predicados o metadatos),  generar las declaraciones RDF correspondientes a nuestros datos,  enlazarlos con datos RDF de otros datasets, y  dar visibilidad a nuestro dataset publicándolo en la Web.
  • 112. Datos enlazados Introducción  A parte de la DBpedia, una herramienta que se desarrolló en el contexto académico para comprobar si se habían asignado URIs a determinadas entidades es el buscador SINDICE, creado por DERI (Digital Enterprise Research Institute), instituto de la National University of Ireland, Galway, y que está disponible en:  http://sindice.com  Otra herramienta similar es el sitio web SAMEAS.org, donde se pueden buscar URIs que sean equivalentes a un URI facilitado como criterio de búsqueda. SAMEAS.org interactúa con SINDICE para buscar información.
  • 113. Datos enlazados Introducción  Además de comprobar URIs antes de asignarlos (o para poder declarar que nuestro URI corresponde a la misma entidad que uno ya existente), se debe elegir el vocabulario RDF para codificar los metadatos.  Un sitio donde podemos encontrar información sobre vocabularios existentes es el Linked Open Vocabularies (LOV), disponible en: http://lov.okfn.org/dataset/lov/  LOV incluye un listado de vocabularios donde se indica su URI, prefijo, y enlaces a las páginas web donde se ofrece la información detallada.  Otros buscadores donde se pueden recuperar vocabularios:  http://watson.kmi.open.ac.uk/WatsonWUI/  http://swoogle.umbc.edu/  http://ws.nju.edu.cn/falcons/ontologysearch/index.jsp?query=
  • 114. Datos enlazados Introducción  Además de estos buscadores que permiten buscar en documentos RDF y en vocabularios y ontologías, también se han diseñado un tipo de navegador especial para los datos enlazados. Un listado de estas herramientas se puede consultar en la página:  http://www.w3.org/wiki/TaskForces/CommunityProjects/LinkingO penData/SemWebClients  Un ejemplo de un navegador para datos enlazados es el programa SIG.MA, desarrollado por el mismo instituto de investigación que desarrolló el buscador de URIs SINDICE.  SIG.MA busca en distintos datasets los términos de búsqueda propuestos, y agrega los datos en una ventana de resultados dividida en dos secciones: