Learn OWL and RDFS

OWL 101

Introduction

OWL (or Web Ontology Language) is the ontology (think «schema») language of the Semantic Web. It is one of the core Semantic Web standards you must be familiar with, along with RDF and SPARQL.

Its two primary uses are:

  1. Fast and flexible data modeling
  2. Efficient automated reasoning

This lesson gives a high level introduction to OWL and is suitable for beginners. A more detailed nuts & bolts lesson on creating your first ontology will come next.

Objectives

After completing this lesson, you will know:

  • The four main kinds of modern computing languages, y de qué tipo es OWL
  • Tres ventajas de OWL sobre otros lenguajes de su tipo
  • Algunas de las herramientas disponibles para crear ontologías utilizando OWL
    • Requisitos previos

      • RDF 101
      • Introducción a RDFS

      Lección de hoy

      En la actualidad se utilizan cuatro tipos principales de lenguajes informáticos.

  1. Los lenguajes imperativos, como C/C++, Java, Javascript, Lisp y Perl. Estos lenguajes están diseñados para permitirle proporcionar fácilmente una secuencia de instrucciones que le digan al ordenador cómo hacer algo. Por ejemplo, estos lenguajes pueden utilizarse para indicar a un ordenador cómo calcular el centésimo dígito de PI, cómo dibujar un monstruo en la pantalla o cómo procesar un pedido de libros en línea.
  2. Lenguajes de consulta, como SQL y XQuery. Estos lenguajes suponen la existencia de una base de datos de algún tipo y se utilizan simplemente para pedir una información específica.
  3. Lenguajes de datos, como XML, HTML y JSON. Estos lenguajes no hacen nada y no piden nada. Son simplemente un formato estándar para transmitir datos de una máquina o persona a otra.
  4. Lenguajes de modelado, como XSD, UML y (en cierto modo) SQL. Estos lenguajes no hacen necesariamente nada ni piden nada, y no transmiten realmente ningún dato real. Más bien, dicen algo sobre los datos.
    1. OWL entra en la última categoría: es un lenguaje de modelado.

      Aunque OWL es un lenguaje de modelado en el sentido clásico, tiene muchas ventajas en comparación con los lenguajes de modelado que le precedieron.

      Ventaja 1: OWL es expresivo

      Los lenguajes de legado como XSD, UML y SQL son adecuados para enumerar un número de clases y propiedades y construir algunas relaciones jerárquicas simples. Por ejemplo, SQL permite construir una nueva tabla para cada clase, añadir una nueva columna para cada propiedad y especificar algunas relaciones básicas utilizando claves foráneas.

      Sin embargo, SQL no permite representar fácilmente las relaciones de subclase (por ejemplo, «todos los Pedidos de Libros Electrónicos son una clase de Transacción Financiera»).

      Lenguajes más expresivos como UML facilitan las subclases estáticas, pero ni siquiera ellos pueden representar fácilmente las relaciones dinámicas (por ejemplo, «Todas las Transacciones Financieras de menos de 1000 dólares son Transacciones Libres de Impuestos»).

      Una de las características distintivas de OWL es que se puede utilizar para expresar ideas extremadamente complicadas y sutiles sobre sus datos.

      Ventaja 2: OWL es flexible

      Actualmente, la mayoría de las tecnologías que emplean lenguajes de modelado de datos están diseñadas con una mentalidad rígida de «Construir el modelo, luego usar el modelo».

      Por ejemplo, suponga que quiere cambiar una propiedad en una base de datos relacional. Anteriormente había pensado que la propiedad era de un solo valor, pero ahora necesita ser multivaluada. Para casi todas las bases de datos relacionales modernas, este cambio requeriría eliminar toda la columna para esa propiedad y luego crear una tabla completamente nueva que contenga todos esos valores de la propiedad más una referencia de clave externa.

      Esto no sólo es mucho trabajo, sino que también invalidará cualquier índice que tenga que ver con la tabla original. También invalidará cualquier consulta relacionada que sus usuarios hayan escrito. En resumen, hacer ese único cambio puede ser muy difícil y complicado. A menudo, tales cambios son tan problemáticos que simplemente nunca se hacen.

      Por el contrario, todas las declaraciones de modelado de datos (junto con todo lo demás) en OWL son triplas RDF y por lo tanto son incrementales, por su propia naturaleza. La mejora o modificación de un modelo de datos a posteriori puede realizarse fácilmente modificando la tripleta correspondiente. La mayoría de las tecnologías basadas en OWL se aprovechan de la flexibilidad de OWL soportando tales cambios directos.

      Ventaja 3: OWL es eficiente

      OWL le permite utilizar su modelo de datos para soportar muchos tipos diferentes de tareas de razonamiento. Esta poderosa capacidad de soportar el razonamiento de datos permite a los desarrolladores minimizar los datos que se almacenan explícitamente y minimizar la complejidad de las consultas necesarias para recuperar esos datos.

      Sin embargo, en los ordenadores actuales, ciertos tipos de razonamiento se pueden realizar mucho más rápido que otros tipos de razonamiento. Por lo tanto, OWL viene con una serie de «perfiles» incorporados que le permiten compensar los tipos de razonamiento que le gustaría hacer con sus objetivos de rendimiento individuales.

      Herramientas OWL

      Ahora hay muchos paquetes de software disponibles para crear ontologías utilizando OWL.

  • Protégé de la Universidad de Stanford, un editor de ontologías gratuito y de código abierto
  • TopBraid Composer de TopQuadrant
  • Cualquier editor de texto que tenga por ahí

A diferencia de otros lenguajes, que siempre tienen el mismo aspecto, OWL en realidad se puede «escribir» de muchas maneras diferentes. OWL -como todo RDF- puede expresarse en un formato canónico OWL/XML así como en un formato RDF/XML. También puede expresarse en formatos más legibles para los humanos, como TRIG, Manchester, Turtle y Functional-Style.

En el sitio web del W3C se pueden encontrar detalles sobre los estándares de sintaxis de OWL, así como algunos ejemplos de cómo cambiar dinámicamente entre varias sintaxis.

Conclusión

La expresividad, flexibilidad y eficiencia de OWL lo convierten en un lenguaje de modelado ideal para crear ontologías web que representen ideas excepcionalmente complejas y refinadas sobre los datos. En la próxima lección, RDFS vs. OWL compararemos RDFS y OWL y discutiremos cuándo se debe usar uno vs. el otro.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *