Premio de la Oficina Española del W3C a la Estandarización Web
Documentación del Proyecto

Versión en PDF | English Version


Proyecto

A mi entender, existen dos puntos especialmente importantes para el lanzamiento y la mejora de la Web Semántica: la existencia de herramientas de soporte y la reutilización de ontologías. El objetivo de este proyecto se centra en estas dos cosas, así como en usar conjuntamente las tecnologías de los Servicios Web y de la Web Semántica, específicamente, en usar los Servicios Web para recuperar ontologías.

El proyecto se puede describir brevemente como una aplicación que une un entorno de desarrollo de aplicaciones para la Web Semántica y un módulo de conexión a Servicios Web para la búsqueda y recuperación de Ontologías. Dicha aplicación se puede llamar SWOWS.

Si se empezara desde cero, inicialmente el entorno de desarrollo sería un simple editor de texto con syntax highlighting y soporte para RDF, RDFS y OWL. Pero, más adelante, se le podrían añadir características de visualización gráfica y de soporte a la programación, convirtiéndolo en una IDE para aplicaciones de la Web Semántica.

El módulo de conexión a Servicios Web para la búsqueda de ontologías debería estar en el entorno desde la primera versión, lo que no debería suponer un gran problema, ya que todos los lenguajes de programación más comunes e importantes ofrecen soporte para trabajar con Servicios Web.

Por supuesto, para que SWOWS sea útil, es necesario que existan ontologías y servicios web que las sirvan como respuesta a palabras clave o algún otro tipo de petición. Por otra parte, la realización de una herramienta como SWOWS de forma que fuese útil para desarrolladores de aplicaciones para la Web Semántica, podría también animar a la creación de más ontologías y de tales servicios web, así como a una mayor integración entre la Web Semántica y los Servicios Web, cosa que también es importante.


Descripción tecnológica

Una descripción tecnológica detallada va más allá del ámbito de esta documentación, pero parsers para los lenguajes de la Web Semántica y motores de inferencia, son ejemplos de lo que se podría necesitar, aunque algunas de las necesidades tecnológicas dependerían de las características soportadas por el entorno de desarrollo en cada versión. Por supuesto, como se ha mencionado anteriormente, se requiere soporte para trabajar con Servicios Web y sus tecnologías (SOAP, WSDL…).

Debido a esto, a la necesidad de una interfaz gráfica con el usuario y a la naturaleza propia de la aplicación, se puede decir que lenguajes como C++, Java o C# son buenos candidatos para la implementación de SWOWS.


Descripción funcional

Las principales características funcionales de SWOWS son las siguientes:

Como caso práctico para mostrar la funcionalidad del proyecto, imaginemos que un desarrollador de aplicaciones para la Web Semántica está desarrollando una aplicación para un vendedor de vino. Dicho desarrollador ha estado creando una aplicación realmente estupenda gracias al soporte de SWOWS, cuando se da cuenta de que la ontología de vinos, seguramente una parte importante de la aplicación, aun no está hecha. Por suerte, recuerda que en los documentos del W3C para la especificación de OWL, hay una ontología de vinos que podría reutilizar o al menos usar como base o de ejemplo para la suya. Pero por alguna razón (no puedo imaginar ninguna) no puede conseguirla. Mientras cae en la desesperación, empieza a jugar con los botones y los menús de la interfaz del módulo de conexión a Servicios Web de SWOWS y … de repente encuentra la solución: podría usar el módulo para acceder al nuevo Repositorio de Ontologías del W3C. Cinco minutos después ha revisado las ontologías recuperadas del repositorio con el entorno de visualización gráfica de SWOWS y ha encontrado una que, con algunos añadidos, puede reutilizar.

Toda esta descripción cubre la idea básica del proyecto y lo que pienso que es más factible como punto de partida y con el estado actual de las tecnologías. Pero si no se para aquí y se mira más allá se abren muchas más posibilidades.

Con respecto a la extensibilidad y la interoperabilidad, las siguientes posibilidades se pueden tener en consideración:

La portabilidad de toda la aplicación dependería del lenguaje de implementación, aunque el acceso a Servicios Web no debería ser un problema. De todas maneras, se podrían hacer diferentes distribuciones, como se ha hecho en el caso de Amaya.


Fundación CTIC ¡XHTML válido 1.1!

Webmaster · Última modificación:04/03/2005 10:25AM