Introducción a la web semántica
Artículo introducturio a la web semántica.
La Web Semántica es una extensión de la Web actual, en donde se añade la semántica que falta para hacer la experiencia del usuario en Internet más fácil y eficiente.
La Web Semántica podemos decir que es una tecnología transversal, ya que está influenciada por otras áreas de la informática, y por tanto en ella convergen ideas de múltiples fuentes: Inteligencia Artificial, Metadatos, Ontologías y otros conceptos, son en la Web Semántica los pilares básicos de trabajo y conocerlos resulta fundamental para poder llegar a sacar el máximo partido a esta tecnología.
En el árbol de navegación que tenéis en esta página, encontrareis explicados estos conceptos y veremos ejemplos de aplicación concreto en diferentes entornos de trabajo particulares.Espero que os resulte de interés y utilidad.
De la web actual a la web semántica
Para llegar a comprender que se entiende por Web Semántica, conviene tener muy claro como funciona la web actual de hoy en día. Es por este motivo, por lo que antes de adentrarnos en los conceptos de la Web Semántica, vamos a tratar de dar en este capítulo una panorámica, muy general eso si, de los conceptos fundamentales de la Web actual.
De la Web que usamos a diario, es importante que sepamos como surge y cuales fueron las motivaciones que la originaron, y como a lo largo del tiempo ha evolucionado y se ha adaptado a las necesidades del momento, cuales son sus características, y por ende cuales son las limitaciones que presenta y que hace necesario la aparición de la Web Semántica.
Los puntos de estudio en donde abordaremos las ideas anteriormente expuestas son los siguientes:
- Los orígenes de la Web
- Arquitectura de la Web. Características básicas del protocolo HTTP
- Generaciones de la Web
- Problemas que presenta el modelo de Web actual
Los orígenes de la web
La World Wide Web o simplemente Web como comúnmente se la denomina, tiene su origen haya por el año 1989 en los laboratorios del CERN, por tanto, y al contrario de lo que generalmente se cree, la Web no fue un invento americano, sino europeo.
El padre de la Web fue Tim Berners-Lee quien en 1990 completó el primer servidor web y el primer cliente, para al año siguiente publicar el primer borrador de las especificaciones del HTML y del protocolo HTTP.Originalmente la idea de la Web era disponer de un sistema, que permitiera servir como base para el intercambio de información entre investigadores, de forma que resultase cómodo y sencillo el proceso.
No obstante, no es hasta la publicación del navegador Mosaic en el año 1993 por parte de la NCSA, cuando la Web se conoce a nivel mundial, extendiéndose como suele suceder en estos casos, primero por universidades y laboratorios y seguidamente al gran público.
Mosaic fue un excelente programa, y gran parte de su éxito sin duda se debió a su disponibilidad en diversas plataformas (apareció para Unix, Windows y Macintosh) y el ser completamente gratuito, además fue la base de otros navegadores como el popular Mozilla. Mosaic desapareció de manera oficial en el año 1997, aunque alguno de los miembros que lo desarrollaron crearon otro navegador que fue durante mucho tiempo el líder indiscutible del mercado, nos referimos a Netscape.
Hemos dicho, que la idea original de Tim Berners-Lee, era crear un sistema que sirviese de base para el intercambio de información entre investigadores, así como permitir la revisión de referencias que existiesen en el documento original mientras este se leía y siempre y cuando el usuario quisiera hacerlo, es así como tenemos la que sea probablemente la primera aplicación real de los conceptos de hipertexto.
Decimos primera aplicación real de hipertexto, porque los primeros intentos en los años sesenta, por parte del desarrollador original de la idea, Ted Nelson, no pasaron de ser un mero juguete de universidad.
Técnicamente, un documento de hipertexto consta de los elementos siguientes: por un lado tenemos los denominados nodos o secciones, que son las partes del texto que contiene información accesible para el usuario. Por otro lado, tenemos los enlaces o hipervínculos, que se establecen entre los nodos y permiten que el usuario realice una lectura secuencial o no de los mismos.
Finalmente, el último elemento de un hipertexto son los anclajes, o puntos de activación de los enlaces. Como curiosidad indicar que aparte de estos tres elementos pueden aparecer otros (por ejemplo un resumen o un índice del documento), en función de los cuales los hipertexto tienen un grado (grado 1, 2, etc.).
Una vez que la web fue un hecho, su crecimiento fue, como hemos dicho, imparable, de manera que enseguida las posibilidades del hipertexto se quedaron cortas, el usuario empezó a demandar cada vez más la posibilidad de interactuar con las páginas, de manera que éstas pudiesen responder a las características particulares de cada uno de ellos.
Es así como aparecen la creación de páginas web de manera automática (o dinámica), que permiten al usuario modificar el contenido de las páginas que visualiza en base a los datos que introduce en formularios y a una serie de procesos implementados, siguiendo alguna de las tecnologías disponibles, que en general, e interactuando con bases de datos generan la respuesta pedida. Las tecnologías que posibilitaron esto han sido de lo más variadas aunque conviene recordar las siguientes:
- CGIs (Common Gateway Interface): o Interface de Pasarela Común, es un mecanismo que permite establecer una comunicación entre un servidor web y una aplicación, permitiendo de esta manera que la aplicación pueda interactuar con Internet. El fundamento de la programación CGI es muy simple y puede resumirse en lo siguiente: cuando un navegador solicita una petición a un servidor web, éste genera un proceso (tantos como peticiones reciba) al que pasa los datos que el usuario envíe (si los hay), el proceso realiza su misión en función de estos datos (por ejemplo consulta a una base de datos) más otros denominados de ambiente y representados por lo que se conoce como variables CGI, el servidor web captura la salida del CGI y la envía de vuelta al navegador del usuario en donde se muestra la salida correspondiente. El lenguaje más popular en el que se solían escribir este tipo de aplicaciones era el lenguaje C o el lenguaje Perl[4].
- ASP y ASP .NET (Active Server Pages): Ambas tecnologías son la respuesta de Microsoft a la creación de páginas dinámicas. ASP apareció junto con el servidor Web de Microsoft Internet Information Server (o IIS), y ha pasado por cuatro generaciones diferentes que son: la versión 1.0 (sobre IIS 3.0), la versión 2.0 (sobre IIS 4.0), la versión 3.0 (sobre IIS 5.0) y la última generación que funciona sobre la plataforma .NET. La ventaja fundamental que tenemos con ASP y ASP.NET respecto a los CGIs es que cuando varios usuarios realizan peticiones sobre una misma página, no se crean n-instancias de la misma para dar respuesta a cada cliente (como sucede con los CGIs en donde hay n aplicaciones corriendo, una por cada cliente). Por otro lado, la programación de este tipo de aplicaciones, resulta mucho más fácil e intuitiva ya que siguen una sintaxis muy similar a la del HTML estándar, diferenciándose de éste en la existencia de etiquetas especiales con comportamientos específicos ya establecidos. ASP, tiene una limitación importante ya que solamente funciona en servidores Windows.
- JSP (Java Server Pages): Es un desarrollo de la compañía Sun Microsystems y funciona de manera similar a las páginas ASP pero en este caso basándose fundamentalmente en el uso del lenguaje Java en donde reside su mayor potencial, ya que permite la integración con clases de este lenguaje de una manera natural. Gracias a esto se consigue una gran independencia entre la capa de presentación y la de negocio. Cuando se realiza una petición a una página JSP, está se compila y se transforma en un servlet que es el que se encargará de realizar el trabajo y generar la salida que el servidor web enviará al cliente. JSP es multiplataforma y puede ejecutarse en multitud de servidores web.
- PHP (Hipertext Preprocessor Pages): Originalmente escrito en el lenguaje Perl, su autor original fue el programador Rasmus Lerdof[5]. Además de la creación de aplicaciones Web dinámicas PHP permite la programación en consola, al estilo del shell scripting, así como la creación de aplicaciones gráficas independientes del navegador mediante la combinación de PHP y GTK [6](GIMP Tool Kit). Entre las características más importantes de PHP radican la de ser un lenguaje multiplataforma, ser completamente gratuito, poseer grandes posibilidades de conexión a múltiples bases de datos y poderse expandir mediante la programación de sus propias extensiones.
Hoy día, la mayor parte de los sitios web disponibles en Internet se encuentran desarrollados siguiendo alguno de los tres últimos lenguajes siendo la combinación JSP + Java, el paradigma más impuesto. La aparición de Java a principios de los años 90 supuso una gran revolución por su carácter multiplataforma, y la rápida expansión del uso de la tecnología JSP junto con el desarrollo por parte de Sun de la especificación J2EE, han sido sin duda determinantes para tener la posición dominante que ostentan.
No obstante, más adelante veremos que a pesar de todos estos esfuerzos por hacer la vida del usuario más fácil y agradable, aun quedan bastantes dificultades por resolver y que la Web Semántica no es más que otro intento por conseguir que la experiencia del usuario en su viaje por la Web sea mucho más placentera











