El modelo abstracto de RDF: Sentencias

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

RDF no es más que un método general para descomponer información en piezas.  El énfasis es general aquí porque el mismo método puede ser usado para cualquier tipo de información.  El método es este: Expresar información como una lista de sentencias de la forma Sujeto-Predicado-Objeto.  El sujeto y el objeto son nombres para dos cosas en el mundo y el predicado es el nombre de la relación entre esas cosas.  Puedes mirar los predicados como verbos.

Así es como descompondría la información de mi apartamento en oraciones RDF:

Información expresada en sentencias RDF
Información expresada en sentencias RDF

Estas cuatro lineas expresan cuatro hechos, cada linea es llamada sentencia o triple.  Los sujetos, predicados y objetos en RDF son siempre simples nombres para las cosas:  Cosas concretas, como mi_apartamento, o conceptos abstractos como has.  Esos nombres no tienen estructura interna o significado por si solos.  Son como nombres propios o variables  No importa que nombre escojas para algo mientras lo uses constantemente.

Los nombres en las sentencias RDF se usan para referir o denotar cosas en el mundo.  Las cosas que son denotadas por nombres son llamadas recursos (Recordando el uso que se le daba a RDF para metadatos en la web), nodos (De la terminología de grafos) o entidades.  Esos términos  son generalmente sinónimos.  Por ejemplo, el nombre mi_apartamento denota mi apartamento actual, el cual es una entidad en el mundo real.  La distinción entre los nombres y las entidades que ellos denotan es mínima pero importante porque dos nombres pueden ser usados para denotar la misma entidad.

Los predicados son siempre relaciones entre dos cosas.  Own (Poseer) es una relación entre un dueño y su posesión; Has (Tener) es una relación entre el contenedor y lo contenido; is_in (Estar en) es la relación inversa entre el contenido y el contenedor.  En RDF, el orden del sujeto y el objeto es muy importante.

El siguiente aspecto de RDF se sobreentiende, pero quiero dejar todo por escrito: Si alguien se refiere a algo como en un lugar y X es usado en otro lugar, las dos X’s se refieren a la misma entidad.  El apartamento al que me refiero en la primera sentencia, es el mismo del que hablo en las otras tres.

Las reglas mencionadas hasta ahora ya nos han llevado mucho más lejos de lo que podemos imaginar.  Dada esta tabla de sentencias, es posible escribir un simple programa que pueda contestar preguntas como “¿Quién posee mi apartamento?” “¿Que tiene mi apartamento?”.  La pregunta en si tiene la forma de una sentencia RDF excepto que se considerarán comodines tales como Qué, Quién, etc., Un simple programa de preguntas y respuestas puede comparar la pregunta con cada fila de la tabla .  Cada fila que corresponda con el criterio dado será considerada una respuesta.  Aquí está el pseudocódigo:

Pseudocódigo para preguntas y respuestas
Pseudocódigo para preguntas y respuestas

Nota del traductor: He desarrollado una pequeña prueba de ese programa en Javascript (http://ejemplos.netne.net/).  Es un programa bastante sencillo solo para pruebas.  Si desean ver el conocimiento, solo vean el código fuente.

La computadora no necesita saber que significa has. Esto es, se deja al escritor de la aplicación escoger los nombres apropiados para las cosas (mi_apartamento) y usar sus propios predicados (own, has).  Las herramientas RDF son ignorantes de que significan esos nombres, pero aún así pueden procesar útilmente la información (Mostraré más cosas útiles en breve).

Anuncios

6 Comentarios Agrega el tuyo

  1. Luis Miguel dice:

    Amigo no vas a seguir con este tutorial de RDF?

    1. krsarmiento dice:

      Ya publiqué una nueva entrada, te invito a revisarla.

  2. ya1r dice:

    Muchisimas gracias, espero pueda completar el tutorial, Saludos y muchas gracias por información tan valiosa, como podría contactarlo?

    1. krsarmiento dice:

      Si, ya me propuse publicar de manera semanal para poder terminar el tutorial. Te invito a revisar la nueva entrada de ayer.

  3. Nancy Toledo Ramos dice:

    Hola, gracias por el tutorial, una duda: ¿cómo puedo ver el ejemplo
    /prueba que desarrollaste en js?. Gracias, saludos.

    1. krsarmiento dice:

      Buenos días, estoy buscándolo en mi ordenador ya que desconozco su paradero. En cuanto lo encuentre lo subo nuevamente.

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