Como podeis ver por el post anterior ando enredando un poco con protégé.
Sobre OWL y ontologías tengo un post anterior.
El motivo de estar mirando esto, no es por estar ahora mismo involucrado en algo; es simplemente que en mi anterior proyecto, usabamos protégé como herramienta, y teníamos una base de datos de conocimiento en formato OWL.
Mas que una ontología, teníamos varias: una taxonomía genérica, una taxonomía léxica y gramátical, reglas para clasificar documentos, y alguna cosilla mas.
Este paper está muy bien, para ver de que va el tema este de las ontologías junto a protégé. Es un poco antiguo, con lo que el GUI ha cambiado, pero sigue siendo válido.
Para complementarlo no estaría mal hechar un vistazo a rdf-primer y a owl-overview.
Pero vamos... todo depende del nivel que querais profundizar...
La primera vez que ves un archivo OWL, piensas.... ¿pero este cristo que es? Tiene el problema del XML, que es muy verboso. Pero es que el OWL lo es brutalmente. El tema es que no está pensado para un lector humano, sino para ser interpretado por una máquina.
El ser tan verboso, puede tener como problema lo que nos pasó a nosotros, y es que la ontología que manejabamos ya no se podía cargar si la manteniamos en formato OWL. Tuvimos que pasar a usar una BD (en en el fondo para un entorno multiusuario es lo correcto). Y cuanto se requiera, pues exportar a OWL. Para las exportaciones, usabamos el API de Protégé (Java).
La ventaja es que es algo estándard.
Ojo! he visto que las versiones mas recientes de protegé se comportan mejor con ficheros grandes. Por ejemplo la 3.4 es capaz de cargar un fichero que la 3.1 no puede.
Paso de OWL a DRL
Una de las cosas que hicimos, fue pasar de OWL a DRL. Inicialmente trabajamos directamente con el OWL, y mediante un script en python generabamos un fichero DRL para Drools (o JBoss Rules). Osea... Java.
Posteriormente esto se hizo en Java, tirando del API.
Bueno... sobre esto quería comentar que parsear el OWL en python fue un poco jaleoso, ya que se hizo a pelo. Creo recordar que en su momento ni siquiera miramos si había algun parser específico para OWL y usamos uno genérico para XML.
Bueno esto empezó como muchas cosas... un trabajo rápido para ayudar a un compañero, y al final el marrón que lo quedas tu...
Bueno sobre esto y python, en un post futuro...
Poniendolo en contexto
Con los recursos que ya he enlazado, son suficientes para meterse en este tema, pero faltaría poner todo esto en contexto. Y el contexto no es mas que la Web Semántica, que es una de las 'ramas' de la Web 3.0.
Me he encontrado un par de artículos en eslomas.com, que os pueden servir muy bien, para poner todo esto en contexto:
Su autor, Francisco Echarte, ha estado investigando sobre folksonomías: [paper][memoria]
Como no podía ser de otro manera en hipertexto, también teneis una entrada.
1 comentario:
Lo de poner en contexto es para ver de donde viene el OWL..., pero vamos. Para usarlo no hace falta que estemos haciendo nada relacionado con Web Semantica.
Publicar un comentario