2.4 El objetivo de la interoperabilidad semántica
3.1.2 Ontologías
La tecnología semántica base para la Web Semántica es la ontología, que representa una visión común, compartible y reutilizable del conocimiento de un dominio de aplicación [98]. Este concepto se ha tomado prestado de la losofía, donde ontología es una teoría sobre la naturaleza de la existencia. En ciencias de la información se han dado varias deniciones formales de ontología, siendo la más famosa la de Gruber, que dene una ontología co- mo la representación de una vista común, compartible y reutilizable de un dominio de aplicación [18] o la de Guarino, que dene una ontología como un conjunto de axiomas lógicos que explican el signicado de un vocabulario formal [99]. En general, en las ciencias de la información podemos ver una ontología como un modelo que representa formalmente estructuras de cono-
cimiento, que incluye conceptos, sus propiedades, sus atributos, las relaciones con otros conceptos y los axiomas relacionados con estos.
En la Web Semántica existen varios lenguajes para representar ontologías, siendo RDFS y Web Ontology Language (OWL) [100] los más utilizados. RDFS, como se ha dicho anteriormente, presenta una extensión de RDF y proporciona un lenguaje mínimo, con clases, propiedades, jerarquías y res- tricciones de dominio y rango. OWL proporciona un lenguaje más complejo que veremos en detalle en la siguiente sección.
3.1.2.1 RDF Schema (RDFS)
RDFS es una extensión de RDF que permite expresar ontologías simples uti- lizando la sintaxis RDF. RDFS dene los recursos rdfs:Class, rdfs:Resource y rdf:Property para denir clases (conceptos), recursos y propiedades, respec- tivamente.
RDFS soporta jerarquías de clases y propiedades, y restricciones de do- minio y rango para las propiedades. Para ello aporta el siguiente conjunto de meta-propiedades:
• rdf:type, para denir la relación de instancia de. • rdfs:subClassOf, para modelar las jerarquías de clase.
• rdfs:subPropertyOf, para modelar las jerarquías de propiedades. • rdfs:domain, para restringir las instancias sujeto de una propiedad como
instancias de una clase concreta.
• rdfs:range, para restringir las instancias objeto de una propiedad como instancias de una clase concreta.
3.1.2.2 Web Ontology Language
OWL ha sido diseñado para que las aplicaciones puedan procesar y explotar el contenido de la información. Este lenguaje facilita una mayor interpreta- ción del contenido web por parte del ordenador del que proporcionan XML, RDF y RDFS, pues proporciona vocabulario adicional para describir propie- dades y clases junto con una semántica formal. Al igual que en RDFS, los elementos básicos de OWL son clases, propiedades e individuos, que son ins- tancias de las clases. Sus propiedades son relaciones binarias que se distinguen entre owl:ObjectProperty y owl:DatatypeProperty. Las owl:ObjectProperty relacionan dos individuos mientras que las owl:DatatypeProperty relacionan
3.1. Web Semántica y sus tecnologías 55 un individuo con un valor literal. También dene jerarquías, restricciones de dominio y rango, así como restricciones de cuanticadores universales y existenciales entre otras. En OWL se agrupan varios sublenguajes que se di- ferencian en su nivel de expresividad y que fueron propuestos en la primera versión de OWL (ver gura 3.2 izquierda):
• OWL Lite: es el lenguaje menos expresivo. Fue diseñado para repre- sentar jerarquías de clasicación con restricciones simples. Por ejem- plo, soporta restricciones de cardinalidad pero sólo con valores de 0 o 1. Respecto a RDFS, añade restricciones de rango local, restriccio- nes existenciales, restricciones de cardinalidad simple y varios tipos de propiedades (inversa, transitiva y asimétrica).
• OWL Full: proporciona la máxima expresividad y la libertad sintáctica de RDF sin garantías computacionales. Incorpora los niveles Lite y DL, y permite mezclar libremente OWL y RDF. Por lo tanto, cualquier documento RDF es un documento válido en OWL Full.
• OWL DL: proporciona la mayor expresividad garantizando que todas las conclusiones son computables y nalizarán en un tiempo nito. In- cluye todas los constructores del lenguaje OWL, pero sólo pueden ser usados bajo ciertas restricciones. Su nombre viene de su corresponden- cia con la lógica descriptiva [101], un campo de la investigación que ha estudiado las lógicas que forman la base formal de OWL.
En la versión 2.0 de OWL [102] se introducen tres perles para OWL DL con distinta expresividad orientados a características prácticas para aplicaciones del mundo real (ver gura 3.2 derecha):
OWL 2 EL: perl cercano a la lógica descriptiva EL++ [103] , asegura un tiempo polinomial para todas los problemas estándar de razonamiento. Es adecuado para aplicaciones que requieren on- tologías muy largas y donde se puede sacricar poder de expresi- vidad con tal de obtener mejor rendimiento.
OWL 2 QL: destinado a aplicaciones que utilizan ontologías re- lativamente ligeras para organizar gran numero de individuos y donde es útil acceder a los datos directamente a través de con- sultas relacionales (SQL)). Permite responder a consultas de un modo formal y completo en un tiempo computacional razonable. OWL 2 RL: permite la implementación de algoritmos con tiempo
de razonamiento polinomial usando tecnologías de bases de datos basadas en reglas que operan directamente en tripletas RDF. Es
Figura 3.2: Relación entre los lenguajes y perles OWL
particularmente adecuado para aplicaciones con ontologías relati- vamente ligeras que organizan gran número de individuos y donde es útil manejar directamente datos en forma de tripletas RDF. En este trabajo, cuando hablamos de OWL, nos referiremos a OWL DL que aporta una expresividad y un rendimiento razonable.
3.1.2.3 Razonamiento
En la Web Semántica se dene inferencia como la capacidad de encontrar nuevas relaciones entre recursos a través de procedimientos automáticos de razonamiento basándose en los datos y en información adicional en forma de un conjunto de reglas [104].
Nos centraremos en las ontologías representadas con el lenguaje OWL DL que, como ya mencionamos, proporciona la máxima expresividad garan- tizando completitud computacional y por lo tanto garantiza que cualquier razonamiento se hará en un tiempo nito.
En la comunidad de la lógica descriptiva se considera que cualquier siste- ma de representación de conocimiento basado en lógica descriptiva es capaz de proporcionar un conjunto especíco de razonamientos como mínimo [101]. OWL DL es una variante sintáctica de la lógica descriptiva {SHOIN (D)} [105] por lo que un razonador OWL debe proporcionar al menos el siguiente conjunto de servicios de inferencia de lógica descriptiva:
• Chequeo de consistencia: se asegura de que una ontología no contiene ninguna denición contradictoria.
3.1. Web Semántica y sus tecnologías 57 • Satisfacibilidad de clase: comprueba si es posible que una clase tenga instancias. Si una clase no puede tener instancias, denir instancias para esa clase causa que la ontología sea inconsistente.
• Clasicación: computa las relaciones de subclase entre todas las clases para crear la jerarquía de clases completa.
• Realización: encuentra la clase más especíca a la que un individuo pertenece. Realización sólo se puede realizar después de la clasicación ya que el tipo de un individuo se dene respecto a la jerarquía de clases. Existen varios axiomas en OWL-DL que son relevantes para el razona- miento. El axioma subClassOf se conoce como la condición necesaria. Una condición necesaria es una condición que debe cumplirse para que un in- dividuo pertenezca a una clase, pero no es suciente por sí sola. El axioma equivalentTo se conoce como condición necesaria y suciente. Una condición necesaria y suciente es una condición que si se cumple, basta para garantizar que un individuo pertenece a una clase. Otros axiomas de interés son aquellos que expresan identidad en las entidades en OWL, armando que una entidad dada es diferente a otras. Los axiomas sameAs y differentFrom son usados en individuos, mientras que los axiomas disjointFrom y equivalentTo se utilizan en clases.
Existen varios herramientas de razonamiento disponibles para OWL como son Pellet [106], FaCT++ [107] y Hermit [108].