Está en la página 1de 58

Unidad II.

Modelando la
Información
Taniana Rodríguez
Postgrado en Computación
Facultad de Ingeniería
Universidad de Los Andes
Abril 2016
Concepto de Ontología
“Una ontología es una especificación explícita de una
conceptualización” Gruber (1993)

“Una ontología define los términos y relaciones básicas que comprende


el vocabulario de un área temática, así como las reglas para combinar
términos y relaciones para definir extensiones del vocabulario”
Neches(1991)

“Una ontología es una especificación formal, explícita de una


conceptualización compartida” Gruber (1998)

Postgrado en Computación- Semestre A2016. Prof. Taniana


2
Rodríguez
Componentes de una ontología
Conceptos:
• Ubicación (Ciudades, pueblos, etc.), alojamiento (hoteles, posadas, etc.),
medios_de_transporte (aviones, trenes, carros, barcos, lanchas, motos)
Relaciones:
• Hotel_cuatro_estrellas es una subclase_de Hotel (relación taxonómica entre conceptos).
• Nro_Vuelo es del tipo “Cadena de Caracteres” (propiedad de atributos),
• Una ruta conecta dos diferentes ciudades (relación no taxonómica entre conceptos)
Funciones:
• Como pagar, la cual obtiene el precio de la habitación después de aplicar un descuento.
Pagar(?habitacion, ?descuento) :-> ?Precio_final
Instancias
• AA7462, Hotel la Culata, Mérida.
Axiomas
• No es posible viajar desde Venezuela a USA por tren.

Postgrado en Computación- Semestre A2016. Prof. Taniana


3
Rodríguez
Creación manual de ontologías
• Se recomienda una serie de pasos a la hora de crear una ontología
• Determinar el ámbito de actuación
• El objetivo de este desarrollo, qué es lo que queremos modelar y con qué finalidad
• Reutilización
• Localizar posibles ontologías pre-existentes y que se pueda reutilizar
• Enumeración de los términos relevantes
• Identificar una lista de los términos que se utilizan en el dominio de actuación
• Definición de una taxonomía
• Establecer una primera relación entre términos a través de la identificación de una
taxonomía

Postgrado en Computación- Semestre A2016. Prof. Taniana


4
Rodríguez
Creación manual de ontologías
• Se recomienda una serie de pasos a la hora de crear una ontología
• Identificar las propiedades de las clases que se identifiquen
• Definir facetas
• Cardinalidad
• Valores Requeridos
• Características relacionales
• Definición de Instancias
• Comprobación de anomalías

Postgrado en Computación- Semestre A2016. Prof. Taniana


5
Rodríguez
Metodología y Métodos para construir una
ontología
Metodología Noy & McGuiness
Uschold and King
Gruninger and Fox
Kactus
Methontology
Sensus
On-To-Knowledge
Ontology Development 101
Postgrado en Computación- Semestre A2016. Prof. Taniana
6
Rodríguez
Ejemplo Metodología
Albarado propone la siguiente metodología tomando como base las metodología Noy & McGuiness y
Methontology

Metodología Paso 1. Determinar los requerimientos de la ontología


Paso 2. Reutilizar las ontologías o metadatos existentes
Paso 3. Elaboración del modelo conceptual
Paso 4. Implementación del modelo conceptual
Paso 5. Evaluación de la ontología
Metodología para el desarrollo de Ontologías.
Ruben Dario Albarado (2010)
http://es.slideshare.net/Iceman1976/metodologia-para-ontologias

Postgrado en Computación- Semestre A2016. Prof. Taniana


7
Rodríguez
Ejemplo Metodología

Metodología para el desarrollo de Ontologías.


Ruben Dario Albarado (2010)
http://es.slideshare.net/Iceman1976/metodologia-para-ontologias

Postgrado en Computación- Semestre A2016. Prof. Taniana


8
Rodríguez
Lenguajes ontológicos: RDF (Resource Description
Framework)
 Sentencia en RDF es la tripleta
<sujeto, predicado, objeto>
 <María, Compro, boleto>
 Se puede representar como un
grafo
10/05/2012

TieneFechaSalida

“María
Carrero”
AA630

TieneNombre
TieneNumeroVuelo
Compro
María boleto

Postgrado en Computación- Semestre A2016. Prof. Taniana


9
Rodríguez
Lenguajes ontológicos: RDF (Resource Description
Framework)
RDF permite
Un mecanismo para anotar datos y recursos
Modelo de datos simple
Consistencia Sintáctica entre URIS

 RDF limitantes
No se puede representar la jerarquía de clases.
No se pueden representar los dominios y rangos de los recursos, solo de
las propiedades.
No se pueden representar las jerarquías de propiedades.
Postgrado en Computación- Semestre A2016. Prof. Taniana
10
Rodríguez
Lenguajes ontológicos: RDF Schema
 RDF Schema extiende RDF con
un vocabulario que permite
definir conceptos básicos y
relación entre esos conceptos
 Class, type, subClassOF
 Property, subPoperty,
range y domain

 RDFS permite
 Uso de un vocabulario
simple para describir los
recursos
 Vocabulario consistente y
compartido
 Simple inferencia

Definición de la clase Viaje en RDFs. [Gómez, Fernández, Corcho]


Postgrado en Computación- Semestre A2016. Prof. Taniana
11
Rodríguez
Lenguajes ontológicos: RDF Schema

• RDF (S) es muy débil para describir los recursos con detalles
• Restricciones de rango y dominio
• Restricciones de cardinalidad
• Propiedades transitivas, simétrica o inversa
• Dificultad de soporte de razonamiento

Postgrado en Computación- Semestre A2016. Prof. Taniana


12
Rodríguez
Lenguajes ontológicos: OWL (Ontology Web Language)

OWL permite
 Definición de clases o conceptos mediante restricciones sobre propiedades, valores o cardinalidad.

 Definición de clases mediante operaciones booleanas sobre otras clases: intersección, unión y
complemento.

 Relaciones entre clases (p. ej. Inclusión, disyunción, equivalencia).

 Propiedades de las relaciones (p. ej. inversa, simétrica, transitiva).

 Cardinalidad (p. ej. “únicamente una”).

 Igualdad y desigualdad de clases.

Definición de la clase Viaje en owl. [Rodriguez/Aguilar]

Postgrado en Computación- Semestre A2016. Prof. Taniana


13
Rodríguez
Lenguajes ontológicos: Owl dl

Lógica Descriptiva y OWL. [Fuente: Oscar Corcho García. Representación de Conocimiento: Lógica Descriptiva]

Postgrado en Computación- Semestre A2016. Prof. Taniana


14
Rodríguez
Lenguajes ontológicos: Owl y Reglas
El lenguaje basado en reglas para la Web Semántica

 Combinando OWL DL y OWL Lite con el lenguaje RuleML


 Las reglas están compuestas por una implicación entre un antecedente (cuerpo) y un consecuente
(cabecera), que se interpreta de la siguiente forma:

 Si las condiciones especificadas en el antecedente se cumplen, entonces las condiciones


indicadas en el consecuente deben también verificarse

Definición de reglas en OWL. [Rodriguez/Aguilar]


Postgrado en Computación- Semestre A2016. Prof. Taniana
15
Rodríguez
Resource Description
Framework (RDF)
RDF

RDF

Permite especificar

Recursos Relaciones
Una especificacion

Sujeto Verbo/Predicado Objeto


Juan vende libros

Postgrado en Computación- Semestre A2016. Prof. Taniana


17
Rodríguez
Características de RDF

RDF es la propuesta del Word Wide Web Consortium (W3C) para


representar la información sobre los recursos de la Web
RDF es un lenguaje para especificar relaciones entre recursos en la
Web
RDF está basado en el uso de grafo dirigidos y etiquetados.
Una especificación RDF puede ser procesado por el computador

Postgrado en Computación- Semestre A2016. Prof. Taniana


18
Rodríguez
Resource Description Framework (RDF)
Recursos

Taniana knows Jacinto . Relación


Taniana surname “Taniana Rodríguez”. literales
Jacinto knows Jose .
Jose work Junior
Jose

knows
work
knows
Taniana Jacinto

surname
Junior

Taniana Rodríguez

Postgrado en Computación- Semestre A2016. Prof. Taniana


19
Rodríguez
Nodos: Recursos y literales
Los nodos del grafo RDF son los sujetos y los objetos de una
declaración.
Hay dos clases de nodos: recursos y literales
Los literales representa un tipo de datos, (enteros, fecha, cadena de
caracteres, etc).
Los literales no pueden ser sujeto de la declaracion.

Postgrado en Computación- Semestre A2016. Prof. Taniana


20
Rodríguez
Nodos: Recursos y literales
Lo recursos representa cualquier cosa que puede ser nombrada
Persona
Institución
Organizaciones
Conceptos abstractos
Etc.
Los recursos puede ser sujeto y objeto de una declaracion

Postgrado en Computación- Semestre A2016. Prof. Taniana


21
Rodríguez
Nodos: Recursos y literales

Taniana hasJob Ingeniero_de_Software .

hasJob
Taniana Ingeniero_de_Software

Recurso Persona Recurso Concepto

Postgrado en Computación- Semestre A2016. Prof. Taniana


22
Rodríguez
URI (Uniform Resources Identifier)
 Un URI es un identificador de un recurso de la Web

camino

Autoridad del URI


htpp: protocolo de acceso al
recurso

Postgrado en Computación- Semestre A2016. Prof. Taniana


23
Rodríguez
Nodos: Recursos y literales

http://www.semanticweb.org/seminariowebsemantica/Persona#Taniana
http://www.semanticweb.org/seminariowebsemantica#hasJob
http://www.semanticweb.org/seminariowebsemantica/Trabajo#Ingeniero_de_Software

http://www.semanticweb.org/seminariowebsemantica#hasJob

http://www.semanticweb.org/se http://www.semanticweb.org/seminario
minariowebsemantica/Persona# websemantica/Trabajo#Ingeniero_de_Sof
Taniana tware

Postgrado en Computación- Semestre A2016. Prof. Taniana


24
Rodríguez
Ejes: Predicados
Los predicados, son llamados propiedades y
representa la conexión entre dos recursos
http://www.semanticweb.org/seminariowebsemantica/persona#Taniana
http://xmlns.com/foaf/0.1/knows
http://www.semanticweb.org/seminariowebsemantica/persona#Jacinto .
http://www.semanticweb.org/seminariowebsemantica/persona#Taniana
http://xmlns.com/foaf/0.1/surname “Taniana Rodríguez”. http://www.sema
http://www.semanticweb.org/seminariowebsemantica/persona#Jacinto nticweb.org/semin
http://xmlns.com/foaf/0.1/knows ariowebsemantica
/persona#Jose
http://www.semanticweb.org/seminariowebsemantica/persona#Jose .
http://www.semanticweb.org/seminariowebsemantica/persona#Jose
http://xmlns.com/foaf/0.1/work
http://www.semanticweb.org/seminariowebsemantica/persona#Junior
http://xmlns.com/foaf/0.1/knows

http://xmlns.com/foaf/0.1/works
http://xmlns.com/foaf/0.1/knows http://www.sema
nticweb.org/semin
http://www.semanticweb.org/seminario ariowebsemantica
websemantica/persona#Taniana /persona#Jacinto

http://xmlns.com/foaf/0.1/surname http://www.sema
nticweb.org/semin
ariowebsemantica
/persona#Junior

Taniana Rodríguez

Postgrado en Computación- Semestre A2016. Prof. Taniana


25
Rodríguez
Ejes: Predicados
@PREFIX sem: <http://www.semanticweb.org/seminariowebsemantica/persona#>
@PREFIX foaf: <http://xmlns.com/foaf/0.1/>
sem:Taniana foaf:knows sem:Jacinto .
sem:Taniana foaf:surname “Taniana Rodríguez”.
sem:Jacinto foaf:knows sem:Jose .
sem:Jose foaf:work sem:Junior

sem:Jose

foaf:knows

foaf:works
foaf:knows
sem:Taniana sem:Jacinto

foaf::surname
sem:Junior

Taniana Rodríguez

Postgrado en Computación- Semestre A2016. Prof. Taniana


26
Rodríguez
Predicado rdf:type Un especial tipo de predicado
definido por RDF es type . El
PREFIX sem: <http://www.semanticweb.org/seminariowebsemantica/persona#>
PREFIX foaf: <http://xmlns.com/foaf/0.1/> predicado rdf:type es para
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
sem:Taniana rdf:type foaf:Person . agrupar recursos
sem:Taniana foaf:knows sem:Jacinto .
sem:Jacinto rdf:type foaf:Person .
sem:Taniana foaf:surname “Taniana Rodríguez”. foaf:Person
sem:Jacinto foaf:knows sem:Jose .
sem:Jose rdf:type foaf:Person .
sem:Jose foaf:work sem:Junior .
sem:Junior rdf:type foaf:Person rdf:type

sem:Jose

foaf:Person
foaf:Person

rdf:type foaf:knows foaf:works


rdf:type

foaf:knows
sem:Taniana sem:Jacinto
sem:Junior

foaf::surname rdf:type

foaf:Person
Postgrado en Computación- Taniana
SemestreRodríguez
A2016. Prof. Taniana
27
Rodríguez
Un ejemplo de un archivo RDF
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:foaf="http://xmlns.com/foaf/0.1/"
xmlns:admin="http://webns.net/mvcb/">
<foaf:PersonalProfileDocument rdf:about="">
<foaf:maker rdf:resource="#me"/>
<foaf:primaryTopic rdf:resource="#me"/>
<admin:generatorAgent rdf:resource="http://www.ldodds.com/foaf/foaf-a-matic"/>
<admin:errorReportsTo rdf:resource="mailto:leigh@ldodds.com"/>
</foaf:PersonalProfileDocument>
<foaf:Person rdf:ID="me">
<foaf:name>Taniana Josefina Rodríguez de Paredes </foaf:name>
<foaf:title>Dr.</foaf:title>
<foaf:givenname>Taniana Josefina</foaf:givenname>
<foaf:family_name>Rodríguez de Paredes </foaf:family_name>
<foaf:mbox_sha1sum>c8245d1b7db2951276eb1ecf5c39f890f7aa61c9</foaf:mbox_sha1sum>
<foaf:homepage rdf:resource="http://taniana.novacorp.co/"/>
<foaf:workplaceHomepage rdf:resource="http://www.pgcomp.ula.ve/"/>
<foaf:knows>
<foaf:Person>
<foaf:name>Jose Aguilar</foaf:name>
<foaf:mbox_sha1sum>1c8eac591d1e1122c57405bd442417b2cf3bce89</foaf:mbox_sha1sum>
</foaf:Person>
</foaf:knows>
</foaf:Person>
</rdf:RDF>

Postgrado en Computación- Semestre A2016. Prof. Taniana


28
Rodríguez
Validando el archivo RDF
https://www.w3.org/RDF/Validator/

Postgrado en Computación- Semestre A2016. Prof. Taniana


29
Rodríguez
Validando el archivo RDF
https://www.w3.org/RDF/Validator/

Postgrado en Computación- Semestre A2016. Prof. Taniana


30
Rodríguez
RDF Vocabulario
https://www.w3.org/1999/02/22-rdf-syntax-ns

Postgrado en Computación- Semestre A2016. Prof. Taniana


31
Rodríguez
En resumen
RDF permite
Un mecanismo para anotar datos y recursos
Modelo de datos simple
Consistencia Sintáctica entre URIs
Permite a agentes de software compartir e intercambiar conocimiento
 RDF limitantes
No se puede representar la jerarquía de clases.
No se pueden representar los dominios y rangos de los recursos, solo de las
propiedades.
No se pueden representar las jerarquías de propiedades.
Dos documentos pueden usar definiciones diferentes del mismo concepto y
no se puede decidir que son equivalentes.
Postgrado en Computación- Semestre A2016. Prof. Taniana
32
Rodríguez
RDF Schema (RDFS)

Postgrado en Computación- Semestre A2016. Prof. Taniana


33
Rodríguez
RDF Schema (RDFS)
https://www.w3.org/2000/01/rdf-schema
RDFs es un vocabulario RDF,
donde cada palabra tiene un
significado bien definido y
estandarizado

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .


@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
Postgrado en Computación- Semestre A2016. Prof. Taniana
34
Rodríguez
RDF Schema (RDFS)

RDFS esta compuesto por:

 Clases → rdfs:Class. Grupos de recursos con características comunes.


 Propiedades → rdf:Property. Representa las características de un recurso o la relación entre
dos recursos
 Instancias y tipos → rdf:type. Instancia, representa a un elemento de la clase

Postgrado en Computación- Semestre A2016. Prof. Taniana


35
Rodríguez
rdfs:Class.
Grupos de recursos con características
comunes.
Persona
Organización Individuos
Software
Etc.
Un recursos que es miembro de una clase
@PREFIX sem: <http://www.semanticweb.org/seminariowebsemantica#> .
Clase
@PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
es llamado individuos y representan una
@PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
sem:Persona rdf:type rdfs:Class .

instancia de la clase.
sem:Taniana rdf:type sem:Persona .
sem:Jacinto rdf:type sem:Persona .
sem:Jose rdf:type sem:Persona .
sem:Junior rdf:type sem:Persona .

Postgrado en Computación- Semestre A2016. Prof. Taniana


36
Rodríguez
Sub clases: rdfs:subClassOf
 La clase1 es subclase de la clase2
 Clase1 rdfs:subClassOf Clase2
Profesor es de tipo persona ,
estamos, diciendo que profesor
es una subclase de la Persona

Jose rdf:type :Profesor


Profesor rdfs:subclassOf Persona

Se infiere que
Jose rdf:type Persona

Postgrado en Computación- Semestre A2016. Prof. Taniana


37
Rodríguez
Propiedades
 Una propiedad en OWL es un recurso que es usado como un predicado en la declaración que describe
individuos
 Hay dos tipos de propiedades en OWL
 ObjectProperties que relaciona un individuo con otro individuo
 DataProperties que relaciona un individuo con un valor literal (entero, fecha, tiempo, cadena de caracteres, etc.
ObjectProperties

foaf:knows
sem:Taniana sem:Jacinto

DataProperties

foaf::surname
foaf::surname

Jacinto Dávila
Taniana Rodríguez

Postgrado en Computación- Semestre A2016. Prof. Taniana 38


Rodríguez
rdf:Property
@PREFIX sem: <http://www.semanticweb.org/seminariowebsemantica/persona#> .
@PREFIX foaf: <http://xmlns.com/foaf/0.1/> .
@PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
sem:Taniana rdf:type foaf:Person .
sem:Taniana foaf:knows sem:Jacinto .
sem:Jacinto rdf:type foaf:Person .
sem:Taniana foaf:surname “Taniana Rodríguez”.
sem:Jacinto foaf:knows sem:Jose .
sem:Jose rdf:type foaf:Person .
sem:Jose foaf:knows sem:Junior .
sem:Junior rdf:type foaf:Person

Postgrado en Computación- Semestre A2016. Prof. Taniana


39
Rodríguez
Restricciones sobre propiedades
 Dominio → rdfs:Domain, especifica el tipo de todos los individuos que son sujeto en la declaración
 Rango → rdfs:Range, especifica el tipo de todos los individuos o tipos de datos que son objeto en la
declaración

Dominio

Rango

Postgrado en Computación- Semestre A2016. Prof. Taniana


40
Rodríguez
Sub propiedad: rdfs:subPropertyOf
 La Propiedad1 es sub propiedad de la Propiedad2
 Propiedad1 rdfs:subPropertyOf Propiedad2

Postgrado en Computación- Semestre A2016. Prof. Taniana


41
Rodríguez
Sub propiedad: rdfs:subPropertyOf

Postgrado en Computación- Semestre A2016. Prof. Taniana


42
Rodríguez
Sub propiedad: rdfs:subPropertyOf

Postgrado en Computación- Semestre A2016. Prof. Taniana


43
Rodríguez
Sub propiedad: rdfs:subPropertyOf

Postgrado en Computación- Semestre A2016. Prof. Taniana


44
Rodríguez
En resumen

RDF (S) permite


Especificar clases, jerarquías de clases
Especificar propiedades, jerarquías de
propiedades
Especificar restricciones de dominio y Rango
RDFS limitantes
Restricciones de cardinalidad
Propiedades transitivas, simétrica o inversa
Dificultad de soporte de razonamiento

Postgrado en Computación- Semestre A2016. Prof. Taniana


45
Rodríguez
Ontology Web Lenguage
(OWL)
Web Ontology Language
OWL es un vocabulario RDF, cada termino tiene un significado bien
definido y estandarizado
OWL provee elementos para la descripción
OWL provee de un sistema de razonamiento
OWL permite construir reglas para la descripción del dominio
OWL extiende a RDFS en axiomas y restricciones

Postgrado en Computación- Semestre A2016. Prof. Taniana


47
Rodríguez
Componentes básicos de OWL
Clases → owl:Class
Instancias y tipos → rdf:type
Propiedades entre valores de datos → owl:DataTypeProperty
Propiedades entre clases → owl:ObjectPropierty
Axiomas o restricciones (sobre clases y propiedades) → Se utilizan
predicados especiales

Postgrado en Computación- Semestre A2016. Prof. Taniana


48
Rodríguez
OWL Vocabulario
https://www.w3.org/2002/07/owl#

Postgrado en Computación- Semestre A2016. Prof. Taniana


49
Rodríguez
Clases en OWL

Postgrado en Computación- Semestre A2016. Prof. Taniana


50
Rodríguez
Propiedades en OWL

Postgrado en Computación- Semestre A2016. Prof. Taniana


51
Rodríguez
Restricción de dominio y Rango

:es_dictado_por rdf:type owl:ObjectProperty


:es_dictado_por rdfs:domain :Curso
:es_dictado_por rdfs:range :Persona

:edad rdf:type owl:DataTypeProperty


:edad rdfs:range xsd:nonNegativeInteger

:nombre rdf:type owl:DataTypeProperty


:nombre rdfs:range rdfs:Literal

Postgrado en Computación- Semestre A2016. Prof. Taniana


52
Rodríguez
Propiedades Transitivas
B Si A está relacionado con B y
B esta relacionado con C

A C Entonces A esta relacionado con C

Postgrado en Computación- Semestre A2016. Prof. Taniana


53
Rodríguez
Propiedades Simétrica
B
Si A está relacionado con B
Entonces B esta relacionado con a
A

Postgrado en Computación- Semestre A2016. Prof. Taniana


54
Rodríguez
Propiedades inversa

Postgrado en Computación- Semestre A2016. Prof. Taniana


55
Rodríguez
Propiedades disjuntas

Postgrado en Computación- Semestre A2016. Prof. Taniana


56
Rodríguez
En resumen
OWL extiende a RDFS en axiomas y restricciones
Los elementos básicos de OWL son las clases, las propiedades, los
individuos y los axiomas
OWL permite las propiedades transitivas, Simétrica, inversa,
disjuntas, etc.
OWL permite realizar restricciones entre clases
OWL permite crear un modelo de datos más preciso

Postgrado en Computación- Semestre A2016. Prof. Taniana


57
Rodríguez
A las flores les pedimos que tengan perfume. A
los hombres, educación. Proverbio inglés

Postgrado en Computación- Semestre A2016. Prof. Taniana


58
Rodríguez

También podría gustarte