Leyendo y escribiendo RDF | N3

Tutorial¿Qué es RDF y para que es bueno?

Notation 3

Notation 3 (“N3”), o el subconjunto llamado Turtle, es un estándar de facto para escribir RDF. No es un estándar de la W3C pero es ampliamente usado, en su mayoría en los foros de discusión sobre la Web Semántica; además de ser la notación más importante de RDF para entenderlo, ya que captura de manera clara el grafo abstracto.

Aquí tenemos un ejemplo, y debería ser fácil de entender que se trata de codificar en este documento.

Ejemplo de N3
Ejemplo de N3

De forma tabular (en realidad es un estándar llamado NTriples), esto es:

NTriples
NTriples

Con esto queremos expresar las coordenadas geográficas que la Universidad de Princeton, que esta tiene un departamento, y que ese departamento se llama “Departamento de Ciencias Computacionales”.

En N3 y Turtle, las sentencias son escritas como la URI del sujeto (Entre paréntesis angulares “<>” o de forma abreviada usando namespaces), seguida de la URI del predicado, seguida por la URI del objeto o un valor literal, seguida de un punto. Se deben declarar los espacios de nombre en la parte superior usando la directiva @prefix. La URIs completas son reensambladas desde la notación abreviada, por ejemplo geo:lat, cconcatenando el namespace correspondiente con la segunda parte de la abreviación:

geohttp://www.w3.org/2003/01/geo/wgs84_pos#

geo:lat = http://www.w3.org/2003/01/geo/wgs84_pos#lat

N3 tiene algunas bondades que permiten varias abreviaciones. Si muchas sentencias repiten el mismo sujeto y predicado, solo basta con separar los objetos con comas:

Bondades de N3: Comas
Bondades de N3: Comas

Y si el mismo sujeto se repite pero con diferentes predicados, podemos utilizar ‘;’ para separarlos:

Bondades de N3 : Punto y Coma
Bondades de N3 : Punto y Coma

El predicado común rdf:type puede ser abreviado simplemente como la letra ‘a’ (‘is a‘ en inglés).

Además, los nodos en blanco son representados en N3 de dos maneras. En la primera, se le dan nombres locales usando un guión bajo ‘_’ como prefijo:

Nodos en blanco en N3 – Método uno
Nodos en blanco en N3 – Método uno

La segunda manera implica el uso de corchetes y recursividad. Los corchetes representan un nodo en blanco, y dentro de estos puedes poner pares de predicados y objetos separados por puntos y coma ‘;’ para codificar propiedades de tal nodo:

Nodos en blanco en N3 – Método dos
Nodos en blanco en N3 – Método dos

Los dos últimos ejemplos presentados anteriormente codifican la misma información solo que usando diferentes métodos. Se debe tener en cuenta que no es la forma la que importa, sino la información que se codifique usando los triples en el documento. Si desea encontrar más ejemplos, es recomendable leer el siguiente documento (En inglés).

Anuncios

Un comentario Agrega el tuyo

  1. jose maria martinez dice:

    hola, estoy realizando un proyecto para una universidad. y estoy interesado en el tema rdf. Pero al igual que mucha gente en estos temas tengo mis dudas. me gustaría saber si podemos contactar y comentarte unas dudas.

    un saludo.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s