D 2.3 Integración de folksonomías y ontologías
De MorfeoWiki
PROFIT
Morfeo-EzWeb
Área Temática: 350405 Strategic Action on Open Source Software
TSI-020301-2009-13 EzWeb
Entregable:
D 2.3 Integración de folksonomías y ontologías
| Versión: | 3.0 (1.0, 2.0) |
| Fecha de preparación: | 22 de Diciembre de 2009 |
| Editores: | Sergio Fernández, Emilio Rubiera, Diego Berrueta, Luis Polo (Fundación CTIC) |
| Revisores: | Javier de la Rosa (Yaco) |
T 2.3.1 Modelo formal para el mapeado entre folksonomías y ontologías
Definiciones previas
Para comprender el objeto de este documento, es recomendable tener presentes y conocer ciertos conceptos de base:
Vocabularios controlados
Los vocabularios controlados son vocabularios pensados para evitar la reiteración de términos. Su eficacia aumenta a medida que la redundancia es eliminada o sometida a cierto grado de control. Por ello, este tipo de lenguajes documentales deben regirse por el principio de entropía que, como concepto opuesto a la redundancia, se corresponde con la mayor cantidad de información aportada por un solo signo o mensaje. Precisamente, el carácter entrópico del lenguaje documental es lo que lo diferencia del natural que, al ser fundamentalmente oral, requiere mucha redundancia, es decir, genera casos de sinonimia: accidente lingüístico que puede distorsionar la comunicación. Los vocabularios controlados deben por tanto hacerse cargo de esa redundancia o sinonimia de la lengua natural aplicando sobre ella cierto control.
La definición de los vocabularios controlados en el entorno digital tiene como prioridad la mejora de la navegación y el desarrollo de sistemas de búsqueda basados en la exploración y en la recuperación. Las definiciones que vinculan este tipo de vocabularios al entorno corporativo destacan el valor estratégico de éstos en áreas como la gestión del capital intelectual y, en general, del conocimiento.
Los vocabularios controlados son principalmente de cuatro tipos[1]: las listas, los anillos de sinónimos, las taxonomías y los tesauros. La diferencia entre los cuatro tipos de vocabularios controlados está determinada por la menor o mayor complejidad estructural que presentan. Por un lado, los listados y los anillos de sinónimos se limitan a incorporar la relación de equivalencia; por el otro, las taxonomías incorporan relaciones de jerarquía y los tesaurus incorporan relaciones de equivalencia, jerarquía y asociativas.
Definición de taxonomía
Una taxonomía es un conjunto organizado de términos utilizado para organizar información y pensado principalmente para poder navegar por él. En otras palabras, una taxonomía simplemente exige que sus componentes estén organizados de manera que se puedan "recorrer". Su rasgo fundamental y definitorio es, por tanto, su finalidad de exploración. Son usadas, por ejemplo, para la categorización y la organización de la información en sitios web[1].
La definición de taxonomía en el entorno digital tiene como prioridad la mejora de la navegación y el desarrollo de sistemas de búsqueda basados en la exploración y en la recuperación. Las definiciones que vinculan las taxonomías al entorno corporativo destacan su valor estratégico en áreas como la gestión del capital intelectual y, en general, del conocimiento.
Definición de tesauro
Un tesauro es un conjunto de palabras con términos equivalentes explícitamente identificados y con las posibles ambigüedades eliminadas. Este conjunto de términos incluye también normalmente relaciones semánticas de jerarquía y asociativas.
Es, por tanto, un conjunto estructurado de términos seleccionados por su capacidad de facilitar la descripción de un dominio y por armonizar, a su vez, la comunicación y el tratamiento de la información de que trata. Se trata de un instrumento de control terminológico que permite convertir el lenguaje natural de los documentos en un vocabulario controlado, ya que representa, de manera unívoca, el contenido de estos, con el fin de servir tanto para la indexación, como para la recuperación de los documentos.
Vocabularios no controlados
A diferencia de los vocabularios controlados, los vocabularios no controlados basan esa falta de control en la descentralización. Es decir, no hay control porque no hay un grupo de especialistas que se encarguen de normalizar esa falta de jerarquía, de control de sinonimia y de la precisión semántica.
Definición de folksonomía
Las “folksonomías” son un tipo de vocabulario que conocen un notable auge hoy en día, sobre todo gracias a las posibilidades que ofrecen para efectuar búsquedas utilizando toda la potencia de las comunidades y de las “redes sociales” que se crean cada día en la Web. El término folksonomía es un neologismo que designa un sistema de clasificación mediante etiquetado. Como se puede entrever observando el término, folksonomía procede de una combinación entre las palabras folk (pueblo, gente) y taxonomía, y fue acuñado por Thomas Vander Wal[1].
Una folksonomía es un sistema de clasificación abierto, generado y ampliado por sus usuarios, y cuyos elementos (en lo que sigue, tags) se utilizan para etiquetar recursos (documentos, servicios, etc.). Típicamente, las folksonomías carecen de estructura jerárquica, y se reducen a colecciones de símbolos no documentados.
El gran potencial de eficacia de las folksonomías se alcanza porque el etiquetado es colaborativo, descentralizado y espontáneo. A diferencia de otros sistemas jerárquicos de clasificación, los contribuyentes a una folksonomía no están obligados a usar una terminología predefinida sino que pueden adoptar los términos que desean para clasificar sus recursos. Estos términos se denominan a menudo palabras-clave o tags, en español, etiquetas.
El interés de las folksonomías procede de su carácter colaborativo[1]: un recurso dado (documento, página web, foto, canción, autor, etc) puede ser etiquetado por cada individuo según sus gustos o preferencias; así las etiquetas destacadas corresponden a las más frecuentes otorgadas por los diferentes contribuyentes. De este modo, partiendo de un documento etiquetado y siguiendo de cerca las terminologías de los otros contribuyentes es posible explorar y descubrir otros documentos conexos relacionados con éste.
El concepto de folksonomía se considera que forma parte integrante de la llamada Web 2.0, siendo un mecanismo muy apto para la categorización colectiva. Muchos sitios sociales de Internet que forman parte de esta Web 2.0 hacen uso activo de este tipo de etiquetados colaborativos. En los últimos años las folksonomías han cobrado gran popularidad gracias a la aparición de sistemas que permiten el etiquetado colaborativo de distintos tipos de recursos en la Web: del.icio.us (enlaces), flickr (fotos) o last.fm (música).
Un aspecto importante de una folksonomía es su carácter plano: es decir, no hay jerarquía, ni relaciones directamente especificadas de jerarquía (tipo broader o narrower) o de asociación (related terms) entre esos términos. Sí se generan involuntariamente, sin embargo, related tags que se agrupan de manera automática basándose en métodos estadísticos. Todo esto separa las folksonomías de las taxonomías formales y los vocabularios controlados donde hay numerosas maneras de explicitar las relaciones entre los términos, como ya hemos dicho. Por tanto, las folksonomías son un conjunto simple de términos que un grupo de usuarios construye etiquetando un tipo de recurso determinado, y no son, así, clasificaciones predeterminadas de términos.
Los problemas inherentes de un vocabulario no controlado como son las folksonomías saltan a la vista. Las limitaciones y puntos débiles se basan sobre todo en la ambigüedad de las etiquetas. Por ejemplo, una misma etiqueta puede ser usada por los usuarios de diferentes maneras, lo que desvirtuaría una búsqueda basada en esa etiqueta. En el otro plato de la balanza tendríamos la ausencia de control de los sinónimos que puede llevar a que diferentes etiquetas se usen para un mismo concepto.
Definición de ontología
Una ontología es la especificación de una conceptualización compartida, es decir, una descripción formal de los conceptos y relaciones que intervienen en un dominio. La definición más aceptada de ontología en el ámbito de la representación del conocimiento (y por tanto, de la web semántica) es la que aportó Gruber[1]: "an ontology is a specification of a conceptualization" (una ontología es una especificación de una conceptualización).
En lugar de basarse en la teoría conjuntos como las folksonomías, las ontologías se basan en la teoría de grafos. A los efectos de este documento, las únicas ontologías que se van a considerar son aquellas que pueden expresarse utilizando OWL, el lenguaje definido por el W3C para la formalización de ontologías en la web[1]. Una característica de OWL que va a resultar de gran importancia es la asignación a cada recurso de un identificador universal (URI[1]).
Análisis comparativo y motivaciones
Cada tecnología presenta cualidades diferentes, que hace a una o a otra más adecuada dependiendo de ámbito al que necesiten aplicarse.
Diferencias entre ontologías y folksonomías
Las principales diferencias entre ontologías y folksonomías[1] se resumen en la siguiente tabla:
| Ontología | Folksonomía | |
| Estructura | Compleja | Plana |
| Orientación | Vertical | Horizontal |
| Agente creador | Grupo reducido de expertos | Grupo amplio y abierto de usuarios, no requiere conocimientos avanzados |
| Evolución | Puntual, controlable | Continua, permanente e indefinida |
| Sustrato lógico o formal | Potencialmente complejo y expresivo (p.e.: Lógica Descriptiva) | Virtualmente inexistente: una mera colección de símbolos |
| Razonamiento | Capaz de razonamiento (deducción de nuevo conocimiento, chequeo de consistencia, etc.) | Imposible. Sólo se puede tratar estadísticamente (detección de clusters, correlaciones, etc.) |
| Ambigüedad | Idealmente inexistente | Inherentemente inevitable |
| Polisemia y sinonimia | Tratables | Difícil de controlar |
| Documentación | Documentable, propiedades de anotación, representación mediante diagramas | Habitualmente no documentada |
| Separación de significante y significado | Posible | Imposible, sólo existe el significante |
| Cobertura del dominio | Probablemente incompleta | Completa, gracias a su extensibilidad |
| Coste de creación | Elevado. Debe ser asumido por unos pocos agentes | Coste inicial nulo. El coste de su progresiva construcción se distribuye entre los usuarios |
| Potencial para su reutilización | Dependiente del dominio y el nivel de abstracción | Reducido, los símbolos no tienen significado más allá del documento al que se asocian |
| Adaptación ante cambios en el dominio | Difícil, requiere un nuevo estudio | Natural, adaptativa |
Motivaciones
Evidentemente las folksonomías y las ontologías deben coexistir. Se pretende aprovechar la flexibilidad que ofrecen las folksonomías para proveer un mecanismo sencillo para que los usuarios de la plataforma EzWeb etiqueten todo tipo de recursos y situaciones; utilizando internamente ontologías para modelar el conocimiento, de manera que toda la complejidad del modelo nunca le sea expuesta a los usuarios.
Escenarios de integración
Existen numerosos proyectos que ofrecen a sus usuarios servicios basados en folksonomías. Sin extenderse excesivamente en su descripción, esta reseña se centrará en casos considerados relevantes, para los que una integración con tecnologías semánticas mejoraría notablemente el servicio y la experiencia de usuario. Algunos servicios ofertados por estas plataformas, especialmente la catalogación y búsqueda, se basan en el uso de métodos estadísticos sobre las folksonomías creadas por sus usuarios. El uso de estos métodos implica que la integración se lleve a cabo de manera plana, es decir, sin ahondar en la semántica de cada término que compone la folksonomía. De esta manera, no se le extrae todo el potencial al conocimiento colectivo generado de forma colaborativa por los usuarios, especialmente cuando aspectos como la diversidad lingüística y/o cultural entran en juego.
Dado que la plataforma EzWeb dispondrá de una descripción semántica de los recursos (contenidos, servicios y gadgets). La interacción con estos recursos por parte de los usuarios será principalmente para realizar tareas de búsqueda y de catalogación. Por tanto hay varias acciones dentro de la plataforma a las que es necesario proveer de un mecanismo de integración entre folksonomías y ontologías:
- Búsqueda: la búsqueda facetada por los términos de la folksonomía debe ocultar las búsquedas semánticas que la plataforma realice sobre el modelo descrito en una ontología.
- Catalogación: el etiquetado de recursos por los diferentes usuarios debe traducirse automáticamente a instancias de la ontología.
Formalización de folksonomías
Formalmente una folksonomía se compone de un conjunto de anotaciones, cada una relacionada con tres entidades (usuarios, tags y recursos) que se relacionan entre sí de diferentes maneras. Formalmente:
- una folksonomía
es una tupla tal que
- donde
es un conjunto de usuarios
-
es un conjunto de tags
-
es un conjunto de recursos
- y
es un conjunto de anotaciones tal que
Las posibles combinaciones de una folksnomía según estos términos se muestran de manera exhaustiva e ilustrativa en la siguiente tabla:
| U (usuario) | T (tag) | R (recurso) | Descripción |
| 1 | 1 | 1 | Un usuario etiqueta con un tag un recurso |
| 1 | 1 | 2 | Un usuario etiqueta con la misma tag dos recursos diferentes |
| 1 | 2 | 1 | Un usuario etiqueta con dos tags un mismo recurso |
| | | | no aplicable |
| 2 | 1 | 1 | Dos usuarios etiquetan con la misma tag un mismo recurso |
| 2 | 1 | 2 | Dos usuarios etiquetan con la misma tag dos recursos diferentes |
| 2 | 2 | 1 | Dos usuarios etiquetan con diferentes tags el mismo recurso |
| | | | no aplicable |
Y todos estos casos se representan gráficamente en la siguiente imagen:
Formalizaciones existentes
Tratar de formalizar las folksonomías mediante una ontología es una necesidad/solución ya detectada con anterioridad a este documento, por lo que la técnica actual dispone de algunas alternativas[1] que procederán a ser estudiadas y analizadas a continuación:
- SKOS (Simple Knowledge Organization System[1]) es un modelo de vocabulario formal que permite una representación estándar de tesauros, clasificaciones y otros tipos de vocabularios controlados y estructurados sobre RDF. La formalización de una folksonomía usando SKOS podría parecer sencilla, mecánica e inmediata, pero se tropieza con un problema fundamental: modelar cada símbolo de una folksonomía mediante un skos:Concept no es semánticamente correcto por diversas razones. La principal de ellas es que la clase skos:Concept sobre la que se construye primordialmente SKOS, debe referirse a una idea o noción abstracta, es decir, a un concepto bien definido formalmente con un significado de consenso para todos sus usuarios. Esta clase permite declarar que un recurso es conceptual. Un símbolo de una folksonomía sin embargo, no llega a serlo porque cada usuario le asigna uno o varios significados. Los símbolos de una folksonomía, además, son dependientes de la lengua del usuario, mientras que un skos:Concept es una clase abstracta, independiente de las lenguas (aunque esté etiquetado en diversos idiomas). Recientemente en SKOS han decidido resolver de otra manera el problema de la relación entre etiquetas. Lamentablemente este nuevo mecanismo ya no es válido para modelar un folksonomía. Por tanto adoptar la solución propuesta sería una solución propietaria que no se encontraría bajo el amparo de lo estandarizado e implementado en SKOS. De todos modos SKOS podría parecer un buen enfoque para modelar una folksonomía, aunque quizás utilizar skos:Concept no sea lo más correcto. Por tanto puede ser interesante reciclar algunas de las intenciones de la anterior propuesta del equipo de SKOS Core.
- TagOntology[1] es una propuesta de Tom Gruber para agregar semántica a los tags mediante el uso de una ontología
tal que: 
Por tanto Gruber sugiere acompañar de una valoración (positiva o negativa, por defecto se considera positiva) en cada aserto que se realice en la folksononomía. Este detalle no ha sido contemplado cuando se expuso el modelo formal de una folksonomía, aunque no parece demasiado relevante. Aún así la propuesta de Gruber se considera interesante y, a excepción del pequeño detalle de las valoraciones, totalmente compatible con lo formalizado hasta el momento. - Tag ontology[1] también contempla los tres elementos (recursos, usuarios y tags) básicos en una folksonomía. Esta ontología es usada, junto con SKOS[1] y SIOC[1], en Gnizr, una nueva plataforma de mashup libre para el etiquetado social de bookmarks. Es quizás la opción que mejor se ajusta a las necesidades analizadas.
- TagOnt[1] propone otra formalización, quizás demasiado compleja para los objetivos a resolver.
- FolksOntology[1] es la última aproximación publicada, aunque no se trata de una formalización como las anteriormente comentadas. Aunque si recicla las aportaciones más interesantes de anteriores propuestas, de manera que aplica una serie de técnicas para facilitar la obtención de ontologías de folksonomías particulares de manera casi automática.
- MOAT (Meaning of a Tag[1]) más que una ontología es un framework que reutiliza otras ontologías (principalmente Tag ontology) para relacionar una tag con su/s significados (concepto).
- SCOT (Social Semantic Cloud Of Tags[1]): es una ontología para representar la estructura y la semántica de una coleccion de tags, así como para representar redes sociales basandose en el etiquetado de los usuarios.
Posiblemente exista alguna iniciativa más con similar propósito a las aquí analizadas, pero se considera que ya no aporta ninguna característica respecto a las cinco ontologías aquí estudiadas.
Propuesta de formalización de las folksonomías en EzWeb
Como se ha descrito previamente en este entregable, las propuestas para formalizar semánticamente una folksonomía son muchas y variadas. Dado que no tendría sentido no atender a lo que ya existe previamente en el estado del arte, se ha enfocado esta formalización de manera que alinee lo mejor de las propuestas más populares y completas, adaptándolas para las necesidades concretas del proyecto EzWeb. El resultado de esta propuesta ha dado como resultado lo que llamamos EzTag [1], un pequeño vocabulario RDF que extiende y adapta alguna de las formalizaciones anteriormente descritas.
La siguiente imagen ilustra el diseño de la ontología:
Como se puede ver, EzTag ha sido construida sobre Tag Ontology[1]: extiende dos de sus clases y reutiliza sus propiedades. La clase ezt:Annotation representa cada anotación con un tag que realiza un usuario sobre un recurso. El tag esta representado por una instancia de la clase ezt:Tag; dada una restricción de cardinalidad con el literal del tag (rdfs:label), el string identificará el objeto RDF (en definitiva, su URI depende del literal).
En el siguiente fragmento de código se muestra un ejemplo (el mismo que en la figura anterior) de como pueden ser usados en RDF los términos propuesto en EzTag:
<ezt:Annotation rdf:about="http://example.org/annotations/1"> <tag:associatedTag> <ezt:Tag rdf:about="http://example.org/tags/python"> <rdfs:label>python</rdfs:label> </ezt:Tag> </tag:associatedTag> <tag:taggedBy rdf:resource="http://example.org/users/23" /> <tag:taggedResource rdf:resource="http://dbpedia.org/resource/Django_(web_framework)" /> </ezt:Annotation>
Convergencia hacia otras propuestas
Recientemente, diversas compañías han comenzado a utilizar las potencialidades de la marcación semántica en sus productos, como es el caso de los buscadores de Google o Yahoo. En esta línea, el estándar propuesto por el W3C (RDFa) está jugando un papel muy relevante. En un intento de formalizar los vocabularios utilizados, estas compañías están alineando posturas. En este contexto han lanzado la iniciativa Common Tag[1] para homogeneizar el modelado RDF de las folksonomías.
Common Tag ofrece un modelo estructural simple, que establece que cualquier tipo de información accesible mediante una URL puede ser etiquetado con una o más estructuras de etiquetas. Cada etiqueta contiene un puntero hacia otro recurso que identifica los conceptos descritos por el contenido, indicando de manera inambigua lo que el contenido significa. Alternativamente, la etiqueta puede asimismo contener información sobre la fecha de creación de la misma y que tipo de referencia "humanamente comprensible" debe usarse cuando se muestren los conceptos cubiertos por el contenido. Véase en la figura de la derecha un esquema del modelo propuesto.
En este sentido, es lógico pensar que la propuesta definida en este entregable (EzTag) debería en un futuro cercano converger hacia Common Tag, puesto que no hay grandes divergencias estructurales de diseño entre ambas.
Enriquecimiento de folksonomías
La folksonomías de por sí son planas, es decir, cada símbolo sólo contempla el nivel de la expresión y no del contenido. Lo que parece una limitación de las folksonomías, es una de sus principales virtudes. Aún así, en determinados escenarios sería de utilidad enriquecer la folksonomía para ir un paso más allá, y que los términos de la folksonomía tengan asociados uno o varios significados. SKOS[1], y principalmente su clase skos:Concept, proporciona la posibilidad de tener conceptos bien definidos que poder usar para enriquecer una folksonomía. Alineado con SKOS, MOAT[1] ofrece un marco idóneo para asociar significados a las tags. La idea es usar los datasets públicos desarrollados dentro de la iniciativa Linking Open Data para extender la semántica de las tags.
Un ejemplo ilustrativo de como usar MOAT (extraído de su propia página) en conjunción con DBpedia sería:
<moat:Tag rdf:about="http://tags.moat-project.org/tag/apple"> <moat:name>apple</moat:name> <moat:hasMeaning> <moat:Meaning> <moat:meaningURI rdf:resource="http://dbpedia.org/resource/Apple_Records"/> <foaf:maker rdf:resource="http://apassant.net/alex"/> <foaf:maker rdf:resource="http://example.org/user/foaf/1"/> </moat:Meaning> </moat:has_meaning> <moat:hasMeaning> <moat:Meaning> <moat:meaningURI rdf:resource="http://dbpedia.org/resource/Apple"/> <foaf:maker rdf:resource="http://example.org/user/foaf/1"/> </moat:Meaning> </moat:has_meaning> <moat:hasMeaning> <moat:Meaning> <moat:meaningURI rdf:resource="http://dbpedia.org/resource/Apple_Inc."/> <foaf:maker rdf:resource="http://apassant.net/alex"/> </moat:Meaning> </moat:has_meaning> </moat:Tag>
Aún así es complicado proveer un mecanismo definitivo para enriquecer las folksonomías en EzWeb, dado el alto grado de incertidumbre actual acerca de cómo será utilizada esta tecnología dentro de la plataforma. Por tanto, una vez el proyecto vaya evolucionando y madurando, se estará en condiciones de proveer la mejor solución.
Definición y formalización de mapeos entre vocabularios
Los mapeos entre ontologías quedan fuera del ámbito de este documento (además OWL provee mecanismos para esta labor), por lo que se procederá únicamente al estudio de mapeos entre folksonomías y mapeos entre folksonomías y ontologías.
Los mecanismos contemplados podrían ser varios:
- Mapeo manual: Una tarea que, si bien garantizaría en buena media la calidad de la integración, sería inviable para integrar vocabularios de mediano y gran tamaño.
- Mapeo automático: Actualmente no sería viable técnicamente realizar el mapeo de forma totalmente automática, aunque hay tecnología que no habría que perder de vista:
- Análisis estadístico: Este tipo de técnicas se basan en el análisis de la frecuencia de utilización de símbolos, la detección de correlaciones entre símbolos y la identificación de clusters.
- Análisis lingüístico: la lingüística proporciona técnicas con las que puede resultar posible extraer relaciones entre símbolos de una folksonomía y una ontología. Algunas de las más relevantes son:
- Contraste de bases de datos: En ocasiones, los símbolos que forman parte de una ontología son susceptibles de aparecer en alguna base de datos. Encontrar una coincidencia entre un símbolo y un registro de una base de datos permite clasificar el símbolo.
- Mapeo semi-automático: Aunque la aproximación totalmente automática no sea viable, sí puede ser un buen punto de partida para después completar la integración bajo supervisión manual.
- Mapeo colaborativo: Un enfoque colaborativo de integración que ya ha sido explotado con mucho éxito en el caso de las folksonomías (por ejemplo en The ESP Game para el etiquetado de imágenes). Utilizar el mismo enfoque en la integración de vocabularios puede arrojar también excelentes resultados. Además se podría mejorar la calidad utilizando métodos estadísticos complementarios para eliminar el ruido.
Mapeos entre folksonomías
Es complicado realizar el mapeo entre los términos de varias folksonomías, sobre todo si se pretende abordar el problema desde un enfoque completamente automático.
Basándonos en la formalización alcanzada anteriormente en este documento, tenemos bien identificadas las tags mediante instancias de la clase ezweb:Tag. Al igual que se ha hecho para enriquecer las folksonomías con SKOS, se podrían utilizar algunas de esas propiedades para establecer relaciones entre términos de varias ontologías, teniendo mucho cuidado en no introducir inconsistencias entre distintos esquemas conceptuales.
Pero lo semánticamente interesante sería agrupar todas las tags bajo el concepto (skos:Concept) al que se refieren y establecer mapeos a nivel de concepto. Evidentemente este mecanismo requeriría de una importante componente personal a la hora de agrupar conceptos.
Centrándose ya únicamente en el mapeo, la técnica actual nos provee principalmente de dos mecanismos para realizar los mapeos:
- Utilizar el aserto owl:sameAs para denotar que los dos conceptos son idénticos. Se trata de un mecanismo peligroso si se utiliza indiscriminadamente, sin tener la certeza suficiente al realizar dicha asociación. Es por ejemplo el mecanismo utilizado en GroupMe[1].
- Utilizar algunas propiedades de una extensión no oficial de SKOS[1] para indicar la relación de igualdad (skosMapping:exactMatch), superconcepto (skosMapping:broadMatch), subconcepto (skosMapping:narrowMatch), correlación (skosMapping:majorMatch, skosMapping:minorMatch).
Mapeos entre ontologías y folksonomías
La orientación horizontal de las folksonomías hacen que carezcan de la profundidad semántica de las ontologías. Es por ello que el mapeo entre ambos modelos de conocimiento es importante para enriquecer a ambos. Hay varias aproximaciones interesantes:
- Alexandre Passant propone[1] una sencilla interfaz para delegar en el usuario la responsabilidad de relacionar los tags con los conceptos de la ontología mediante la propiedad sioc:topic. La propuesta es completamente compatible con la formalización propuesta previamente en este documento.
- En [1] los autores proponen hacer explícitas las relaciones semánticas entre los tags de una folksonomía. Una interesante propuesta que habrá que estudiar con mas detalle.
Federación de vocabularios
Uno de los grandes problemas de las folksonomías viene dado precisamente por esa libertad que tiene el usuario a la hora de etiquetar. Por tanto, un mismo usuario que esté implicado en dos o más folksonomías puede verse perjudicado por la falta consistencia a la hora de escoger las tags. Puede darse el caso que el mismo literal tenga diferente significado dependiendo de la folksonomía en la que esté. Para algunos casos el mapeo entre folksonomías puede ayudar, pero deja sin resolver algunos detalles, como por ejemplo realizar búsquedas y referencias cruzadas entre diferentes folksonomías.
Todo esto podría ser resuelto federando las distintas folksonomías que maneja un usuario. FIXME
El caso mínimo en que tengamos dos folksonomías, si se enfrenta el tipo de recursos y el dominio de esos recursos se da la siguiente casuística:
| F (folksnomía) | R (recurso) | D (dominio) |
| 2 | 1 | 1 |
| 2 | 1 | 2 |
| 2 | 2 | 1 |
| 2 | 2 | 2 |
- En el primer caso es bastante complicado para el usuario, pues tiene que manejar dos folksonomías sobre el mismo tipo de recurso y el mismo dominio. Por ejemplo, el caso en que el usuario use del.icio.us para sus enlaces personales y el scuttle de su empresa para los enlaces relativos a temas laborales.
- El segundo caso FIXME (¿es aplicable?) (¿es el anterior?)
- El tercero es más sencillo, pues se pueden utilizar dos folksonomías para etiquetar distintos tipos de recursos pero pertenecientes al mismo dominio. Por ejemplo, dentro del dominio de la música, el usuario puede etiquetar canciones en last.fm y las páginas web de cantantes en su del.icio.us.
- Pero el cuarto caso es aún más complicado, pues se usan dos folksonomías para dos dominios completamente diferentes.
En [1] se propone en base a la información semántica de los usuarios de una comunidad. También podria ser interesante aplicar el mismo concepto basandose en la identidad proveida por OpenID[1], como añadido a la información proveída por FOAF.
T 2.3.2 Algoritmos de aprendizaje para el mapeo entre folksonomías y ontologías
Introducción
Este documento aborda dos desafíos diferentes aunque relacionados:
- Cómo obtener automáticamente un mapeo entre una folksonomía y una ontología previamente existentes.
- Cómo derivar automáticamente una nueva ontología a partir de una folksonomía existente.
Para una mejor comprensión de cada uno de estos retos, conviene resaltar sus similitudes y diferencias. En ambos casos se asume la existencia previa de una folksonomía. Sin embargo, en el primer caso se asume también la existencia de una ontología, mientras que en el segundo la ontología no es un "dato de entrada" sino un "resultado". El resultado en el primer caso es la especificación de un mapeo (correspondencia) entre las dos estructuras dadas (la folksonomía y la ontología).
¿Por qué resulta interesante abordar estas cuestiones? Para responder a esta pregunta, hay que tener en cuenta que tanto las folksonomías como las ontologías son esquemas conceptuales que se utilizan fundamentalmente para "anotar" recursos, muy especialmente para facilitar su posterior recuperación. La definición precisa de estos conceptos se encuentra en el entregable D.2.3.1. La motivación para aproximar folksonomías y ontologías es la de aunar sus respectivas ventajas (también analizadas en el documento citado). Debido a que estas estructuras pueden alcanzar un gran tamaño resulta crítico poder realizar estos procesos de forma completamente automática (caso ideal) o con el mayor grado de automatismo posible (caso pragmático).
Estado del arte y casos de éxito
La anotación mediante folksonomías es un proceso en el que se pierde información en el momento de introducir la anotación. Esto sucede porque en ese momento el usuario que anota tiene claros los conceptos con los que desea anotar el recurso, pero al expresarlos en forma de símbolos (palabras), está exponiéndolos a los problemas ya conocidos de las folksonomías (sinonimia, polisemia, etc.). Por eso varios trabajos se concentran en mejorar el procedimiento de anotación para que retenga toda la semántica, lo que puede verse como un mapeo implícito entre los conceptos que maneja el usuario (ontología) y los símbolos que utiliza para expresarlos (folksonomía). Este tipo de técnicas se analizan en el entregable D.2.3.3.
Uno de los casos de éxito más relevantes relacionados con la creación colaborativa de conocimiento es, sin duda, la Wikipedia. Cada uno de sus millones de artículos captura una porción de conocimiento común, a la cual se ha asignado una etiqueta (el título de la entrada o artículo, que aparece en la URL). Estas etiquetas, por tanto, están consensuadas, y forman en sí mismas una folksonomía respaldada por una gran cantidad de usuarios. Se ha demostrado[1] que estos símbolos son muy estables, es decir, su significado (semántica) muy pocas veces cambia con el tiempo, por lo que en la práctica las URIs de la Wikipedia pueden ser utilizadas con confianza como identificadores semánticos.
Extracción de mapeos entre vocabularios
El mapeo entre ontologías y folksonomías pretende establecer correspondencias entre las primeras y las segundas, de forma que sea posible aprovechar la mayor flexibilidad de las segundas pero conservar al mismo tiempo las propiedades formales de las primeras. Se trata de una línea de investigación aún poco explorada.
Por otra parte, en el ámbito de los mapeos entre ontología y ontología se pueden encontrar más publicaciones, si bien no está claro hasta qué punto pueden ser extendidas al mapeo entre ontología y folksonomía. Así, por ejemplo, en [1], la operación de extracción de mapeos se denomina alineamiento, paso previo al merging o mapping, y es un proceso mediante el cual se descubren las similaridades entre los conceptos de dos ontologías. El resultado es una especificación de las correspondencias entre conceptos también conocida como un operación de Match[1].
Continuando con los mapeos ontología-ontología, se han propuesto los siguientes enfoques, que pueden ser combinados, para abordar este proceso:
- Utilización de medidas de similaridad entre conceptos (con sus relaciones) o instancias para determinar las posibles correspondencias.
- Atendiendo a la jerarquía, similaridades a nivel de elementos (por ejemplo: nombres de las relaciones o de los conceptos) o a nivel estructural (por ejemplo: partiendo de dos conceptos alineados ver si el mismo camino conecta los mismos conceptos a través de las jerarquías).
La ventaja de estas técnicas es que resultan aplicables en cualquier dominio y con un mínimo de intervención manual[1].
Dentro aún de los mapeos ontología-ontología, se pueden encontrar diferentes implementaciones, según enfoque, como Anchor-PROMPT, GLUE[1], Semantic Matching o QOM.
¿Cómo extender lo estudiado al mapeo entre ontologías y folksonomías? En el ámbito de las folksonomías, el enfoque a seguir podría ser un proceso híbrido, en el cual se determinará en una primera etapa las posibles correspondencias, por ejemplo con algoritmos de procesamiento de cadenas, y en un segundo paso, utilizando esas potenciales correspondencias, se verificará su validez utilizando un enfoque estructural.
En cuanto a la validación del proceso, no existe una forma automática para comprobar la corrección del proceso. Por lo que, aunque los mapeos se puedan realizar de forma automática la validación de los mismos debería ser una tarea (sólo una vez) de carácter humano. Obviamente las técnicas anteriormente estudiadas (véase el epígrafe definición y formalización de mapeos entre vocabularios) también tendrían validez en este punto.
Herramientas de aprendizaje para mapeos
La extracción automática de la semántica de las folksonomías es un problema difícil. Se ha señalado[1] que las aproximaciones clásicas de extracción de semántica de textos no son aplicables, dado que en una folksonomía se carece del "contexto" en su sentido convencional, es decir, de un conjunto de palabras que rodeen al símbolo y que puedan servir para ayudar a interpretarlo. Se ha experimentado[1] con la extracción de características de los recursos anotados para tratar de interpretar los símbolos, en concreto en el dominio de las imágenes de Flickr. No obstante, se trata de técnicas muy específicas que no pueden ser generalizadas, y que requieren interacción con el usuario.
Se puede destacar también la propuesta folk2onto[1]. El acrónimo no debe inducir a confusión, porque en realidad no se trata de una conversión de folksonomías en ontologías, sino un proceso de aprendizaje automático que permite clasificar los símbolos como valores de propiedades básicas de descripción de recursos (en concreto, las propiedades de Dublin Core). Por ejemplo, el sistema puede "aprender" que el símbolo "spanish" suele hacer referencia al idioma ("dc:language") de un recurso. Como cualquier otro proceso de aprendizaje automático, folk2onto requiere una fase manual de entrenamiento, en la cual el sistema va almacenando información sobre los usos más frecuentes de los símbolos. También es necesario un proceso manual de desambiguación de símbolos, para lo cual se utilizan bases de datos como WordNet. Por ese motivo, los símbolos que pueden ser reconocidos son sólo aquellos recogidos en esas bases de datos, que son una minoría.
Uno de los objetivos del proyecto EzWeb es obtener herramientas que permitan analizar folksonomías y determinar de manera automática o semi-automática su mapeo con otras folksonomías y con ontologías. Hasta ahora se ha realizado un estudio del estado de la cuestión para determinar el alcance de las propuestas actuales. En próximas versiones de este entregable se plantearán nuevas propuestas que tratarán de avanzar en esta dirección.
T 2.3.3 Algoritmos de aprendizaje de las ontologías a partir de las folksonomías
En primer lugar cabe considerar cuál es exactamente la relación entre ontologías y folksonomías, es decir, cuáles son las diferencias entre cada uno de estos dos mecanismos de representación de información, y si las folksonomías son, en realidad, un caso particular de ontología o una "ontología ligera". Peter Mika sugiere[1] que las folksonomías son un caso particular de ontologías enriquecidas con una dimensión social (es decir, con usuarios). A partir de ahí apunta que -idealmente- es posible obtener relaciones broader/narrower entre símbolos de la folksonomía mediante teoría de conjuntos y subsunción. Para estudiar esta cuestión se basa en un experimento con la folksonomía de del.icio.us. Resulta muy llamativo el descubrimiento de ciertos clusters de símbolos que claramente definen los intereses de los usuarios de este portal.
Una aproximación al problema de la extracción de ontologías pasa por el análisis algebraico de las folksonomías. En [1] se sugiere la utilización de una técnica de knowledge discovery denominada association rules. Sin embargo, esta técnica trabaja en espacios bidimensionales, mientras que las folksonomías son, al menos, tridimensionales (usuario, recurso, símbolo). Por esa razón es necesario realizar una proyección, es decir, eliminar una variable. Esto da lugar a proyecciones en los tres planos, que posteriormente pueden estudiarse para localizar relaciones de subsunción mediante técnicas que proceden del mundo de las bases de datos (por tanto, mucho más antiguas que las folksonomías).
En [1] se profundiza en el análisis algebraico de las folksonomías. Los autores, creadores también de BibSonomy, señalan que muchos usuarios demandan la capacidad de introducir ciertas relaciones entre los símbolos, para dotar de mayor riqueza a la folksonomía. Han incorporado esta posibilidad en BibSonomy. No obstante, también apuntan que resulta interesante poder extraer automáticamente las reglas asociativas, aunque difícilmente se pueden obtener matices de relación (sólo que existe, o no, una relación entre dos símbolos). En este trabajo se realiza un análisis de un fragmento de la folksonomía de del.icio.us, donde se encuentran distintas relaciones con diferentes grados de confianza. Las relaciones son dirigidas, pero en ocasiones aparecen relaciones cruzadas. Los autores apuntan a que se trata de "frases", es decir, símbolos que aparecen ligados pero no necesariamente relacionados semánticamente, como "open source".
Otra aproximación algebraica a la cuestión es la presentada en [1]. En este caso se utilizan vectores de símbolos: por cada símbolo se crea un vector, en el cual cada elemento indica la frecuencia de uso del símbolo como anotación de un recurso. Posteriormente se calcula la similaridad entre estos vectores (mediante la función coseno u otra). Esta información se representa en un grafo, donde cada símbolo es un nodo, y se crea un arco no dirigido para unir los pares de símbolos cuya similitud supera un umbral. Los autores proponen un algoritmo que refina este grafo hasta convertirlo en un árbol, que puede interpretarse como una taxonomía. No obstante, no hay ninguna garantía de que la taxonomía sea correcta, puesto que la "similitud" de dos símbolos se basa sólo en su concurrencia y puede no responder a ningún tipo de relación semántica entre ellos. En el artículo citado, los autores ensayan su algoritmo utilizando las folksonomías de del.icio.us y CiteULike. También introducen terminología como "nivel de acuerdo" entre usuarios o "densidad" de la folksonomía.
Un primer paso para derivar una ontología a partir de una folksonomía consiste en reconocer la existencia de distintos tipos de símbolos en las folksonomías. Más concretamente, los autores de [1] analizaron un fragmento de del.icio.us y llegaron a la conclusión de que hay siete tipos (o "roles") de símbolos:
- Los que identifican el tema del recurso (los más habituales).
- Los que identifican el tipo del recurso: "artículo", "libro", "video"...
- Los que identifican al propietario o creador del recurso.
- Los que refinan las categorías, y que no tienen significado por sí mismos.
- Los que identifican cualidades o características subjetivas, como "interesante", "divertido", "estúpido"...
- Los que posicionan al usuario respecto al recurso: "mis_cosas", "mis_fotos"...
- Los que organizan tareas: "pendiente_lectura", "búsqueda_trabajo"...
Los mismos autores también advirtieron que los usuarios utilizan en primer lugar las etiquetas más genéricas (y por tanto, más comunes). Sin embargo, muchas aplicaciones basadas en folksonomías reordenan las etiquetas por orden alfabético, por lo que esta información se pierde.
Un estudio de los laboratorios de investigación de Yahoo![1] ha determinado empíricamente que es posible extraer taxonomías a partir del análisis de la co-ocurrencia de símbolos. En concreto, utilizando un fragmento de las anotaciones de Flickr, han obtenido un árbol taxonómico, que posteriormente han revisado manualmente para determinar su exactitud. Aunque sus resultados mejoran los obtenidos hasta entonces, aún presentan un 23% de "deducciones" erróneas. En realidad, el único tipo de relación que se puede "deducir" con esta técnica es la de subsunción (un símbolo "subsume" a otro). Por otra parte, hay que tener en cuenta que la estructura de la folksonomía de Flickr presenta particularidades; como cabría esperar y resalta el autor del artículo, una gran proporción de los símbolos son topónimos. No está claro qué significado tiene la relación de subsunción entre topónimos (o en general, entre nombres propios). No obstante, otro estudio[1], esta vez basado en del.icio.us, indica que una gran mayoría de símbolos de las folksonomías son susceptibles de formar parte de taxonomías, o dicho de otra forma, que las folksonomías son estructuras "planas" sólo en apariencia.
La propuesta más completa para obtener ontologías a partir de folksonomías se denomina FolksOntology[1]. Esta propuesta recicla muchas de las aportaciones anteriores, organizándolas en un proceso ordenado. En primer lugar, se explota al máximo la información generada por los usuarios al etiquetar, y que no sólo es un conjunto de símbolos, sino la construcción implícita de redes sociales (en algunos casos también es explícita, a través de "grupos de usuarios" o de FOAF). Esto puede ayudar a localizar usuarios con intereses comunes, es decir, que comparten un dominio, a partir de cuyas anotaciones se puede extraer más fácilmente una ontología. Para reducir el ruido se aplican técnicas de procesamiento léxico como el stemming (reducción de las palabras a sus raíces). Durante el segundo paso se aplica un análisis estadístico para localizar clusters (de usuarios, de recursos, de símbolos, etc.) y derivar taxonomías a partir de la subsunción de símbolos. En un tercer paso se aprovechan los recursos léxicos existentes, como WordNet, Google y la Wikipedia, para desambiguar los símbolos o simplemente verificar su ortografía. Finalmente se contrasta la información con ontologías ya creadas, que se localizan a través de buscadores especializados como Swoogle, y se tratan de localizar mapeos. Una vez obtenidos los resultados, esta metodología indica que deben someterse a verificación mediante un proceso colaborativo, similar al que se usa para generar las folksonomías.
T 2.3.4 Mejoras de la interoperabilidad entre diferentes sistemas de etiquetado: diseño y especificación de la actividad de etiquetado y de la ontología para la Tagosphere
Dentro de la familias de tecnologías semánticas que se usan para el tagging, anteriormente se ha introducido SCTO[1]. Debido a sus características no fue una de las tecnologías candidatas para formalizar las folksonomías en EzWeb; pero esas características hacen de SCOT un candidato ideal para solventar esta tarea. Usando SIOC[1] como marco base de partida, SCOT provee un modelo semántico para la interoperabilidad entre diferentes folksonomías y los recursos que han sido etiquetados.
T 2.3.5 Informe sobre un estándar de datos abierto y extensible para interoperar
Introducción
A lo largo del entregable D.2.3., se describe el proceso de traduccción de la folksonomía generada por los usuarios a una ontología, que permita explotar de manera más sencilla el conocimiento generado por los usuarios. El presente capítulo pretende mostrar un estándar de datos que modelice esta información permitiendo ser exportada a otros sistemas. Si la comunidad Web acordara un estándar de datos para las folksonomías, sería posible interoperar entre sistemas heterogéneos que utilicen mecanismos de etiquetado (se podrían buscar, al mismo tiempo, recursos de EzWeb, URLs en del.icio.us, fotos en flikr, etc. con el mismo tag) La plataforma EzWeb pretende establecer un hito en este aspecto, ofreciendo la folksonomía generada por los usuarios, siguiendo un estándar de datos abierto y extensible. Si se pretende interoperar con otros sistemas, es fundamental recalcar estos dos aspectos, abierto (por razones obvias, si el estándar no es abierto, no todos los sistemas podrán adoptarlo, y es exactamente el objetivo perseguido) y extensible (el estándar de datos que se propondrá ha de seguir la modelización acordada, sin embargo otros sistemas podrían tener en cuenta más información, que deberá poder incorporarse de manera sencilla al estándar)
Por tanto, en este capítulo, se centrarán primero los requisitos fundamentales que ha de tener el formato de datos propuesto. Posteriormente se analizará un estado del arte tanto en otras aproximaciones a la modelización del proceso de etiquetado, así como los formatos de datos más adecuados para permitir interoperar. Por último, se mostrará la solución elegida para EzWeb, describiendo las limitaciones de las aproximaciones actuales.
Captura de requisitos para el lenguaje del mapeo entre folksonomías y ontologías, e interoperabilidad entre sistemas de etiquetado
Requisitos detectados:
- El lenguaje elegido ha de capturar el modelo de datos de etiquetado identificado.
- Ha de tener la expresividad suficiente para representar conceptos y relaciones entre ellos.
- Ha de ser un lenguaje estándar, ya que se pretende interoperar entre distintos sistemas de etiquetado.
- El acceso a los datos de un etiquetado tiene que ser lo más sencillo y automático posible, para facilitar la remezclabilidad.
- El almacenamiento y recuperación ha de ser transparente al usuario. Un usuario sabe de etiquetas pero no conoce qué hay por debajo.
Análisis de alternativas
Si se pretende interoperar con otros sistemas, es necesario llegar a un acuerdo sobre la semántica de los elementos que componen el proceso de etiquetado, es decir, estandarizar el proceso de etiquetado. De ello de ocupa el entregable D.2.3.1 bajo el epígrafe formalización de folksonomías mediante ontologías.
Tecnologías disponibles
Una vez determinada la semántica del tagging, es necesario elegir el o los formatos de representación de esa información. En el presente capítulo se muestra un resumen de las posibilidades más adecuadas, analizando pros y contras. La elección de los lenguajes y metalenguajes más adecuados se delega al siguiente capítulo.
XML
XML (eXtensible Markup Language, Lenguaje Extensible de Marcado) es un formato de marcado estructurado para la representación de información muy usado y extendido hoy en día, hasta tal punto de ser considerado el lenguaje universal para el intercambio de información. Desarrollado por el W3C a partir de SGML29 con el objetivo que fuera fácilmente procesable por una máquina y legible por un humano.
Basándose en una definición abstracta (XML Schema), permite extender su gramática de una forma muy fácil y sencilla de procesar (XSL/XSLT, XPath, XPointer, etc). Es usado en múltiples tecnologías hoy en día, sobre todo en la web (XHTML, XForms, SVG, etc), aunque también para documentación (DocBook), interfaces de usuario (XUL, Glade, XAML, etc), protocolos (Jabber), etc. Se utilizan espacios de nombres (namespace), identificados por URI’s, para permitir utilizar etiquetas pertenecientes a diferentes vocabularios en un mismo documento.
Pero XML, a pesar de ser un lenguaje estructurado que es muy fácil de procesar, de por sí sólo dispone de una semántica relativamente débil. Aún así no se descarta su uso como formato de intercambio de datos entre folksonomías, dado que existen múltiples tecnologías basdas en XML para tal propósito (SOAP, WSDL, etc.), y los lenguaje que se están barajando para la descripción demántica de la plataforma (básicamente RDF y OWL) disponen de serializaciones en XML.
W3C esta trabajando en EXI[1] (Efficient XML Interchange), una representación compacta de XML especialmente diseñada para optimizar el rendimiento del uso e intercambio de recursos.
RDF
RDF (Resource Description Framework) es el modelo de datos básico para la Web Semántica, un lenguaje lógico simple que permite especificar propiedades binarias y describir recursos a partir de éstas.
Este mecanismo para describir recursos es un componente fundamental dentro de la evolución propuesta por el W3C para evolucionar la World Wide Web hacia un medio distribuido para que los agentes software almacenen, usen e intercambien información. De hecho el modelo viene desde hace años funcionando en tecnologías con RSS, que tiene su origen en RDF, aunque sólo la versión 1.0 de la especificación sea realmente RDF/XML. Además la comunidad científica esta desarrollando una serie de tecnologías alrededor de RDF para mejorar algunos asuntos como las consultas (SPARQL end-points), la sincronización (a través de iniciativas como Semantic Web Pipes[1] o RDFSync[1]), etc, sobre el protocolo HTTP.
OWL
OWL (Web Ontology Language) es un lenguaje para modelar y definir ontologías Web y es la recomendación oficial del W3C para publicar ontologías en la Web. Se trata de un lenguaje de gran expresividad para describir conceptos y relaciones entre conceptos, con un compromiso entre expresividad y tratabilidad, y se basa en dos lenguajes más viejos para la definición de ontologías como son DAML37 y OIL38 (lo llamado DAML+OIL39 ).
Una ontología modelada con OWL suele incluir clases así como propiedades e instancias, y según su complejidad y expresividad, hay tres versiones de OWL:
- OWL Full, íntimamente ligado a la lógica de RDF, pero que puede resultar no computable.
- OWL DL, un subconjunto del anterior basado en la lógica descriptiva SHOIN (D).
- OWL Lite, subconjunto de OWL DL que se basa en la lógica descriptiva de menor expresividad SHIF (D).
SKOS
SKOS o Simple Knowledge Organisation System (sistema simple de organización del conocimiento) es un modelo de vocabulario formal que permite una representación estándar de tesauros, clasificaciones y cualquier otro tipo de vocabulario controlado y estructurado. El principal objetivo de SKOS es permitir la adaptación de manera sencilla de vocabularios estructurados para su posterior utilización en contextos de la Web Semántica, es decir, de manera que esa información llegue a ser accesible y reutilizable. Se trata de un vocabulario que se construye sobre la base del lenguaje RDF.
JSON
JSON[1] (JavaScript Object Notation) es un formato ligero para el intercambio de datos, pensando explícitamente para simplificar la serialización/deserialización de objetos. Existe una gran diversidad de implementaciones para casi todos los lenguajes de programación, dada la sencillez para escribir un parser de JSON (una de las principales ventajas respecto a XML).
Recientemente han sido publicadas dos propuestas (RDFON[1] y RDF/JSON[1]) para serializar RDF en JSON, pero ninguna de ellas merece mayor mención dada la nula aportación respecto a otras tecnologías más maduras como N3.
YAML
YAML[1] (acrónimo recursivo de YAML, es decir Ain't Markup Language) es un formato de serialización propuesto por Clark Evans en 2001. Se centra fundamentalmente en los datos, por lo que es más ligero que XML, y está pensado para ser muy fácilmente procesable, tanto para serializar como para parsear.
Microformatos
Los Microformatos[1] (a veces abreviados como μF) es una iniciativa nacida en 2004 para dotar a documentos (X)HTML de semántica. Se parte de la perceptiva de que esta semántica debe ser legible por los humanos. Pero esta supuesta humanización da lugar a una semántica muy pobre con apenas ningún fundamento lógico, lo que en la realidad la convierte en muy poco útil. Actualmente los grupos de trabajo de W3C están trabajando en otra tecnología, RDFa[1], que persigue similares objetivos pero desde una aproximación más rigurosa.
Dentro de la amalgama de diferentes (y amenudo incompatibles) microformatos disponibles, existe uno llamado xFolk[1] que podría estudiarse su uso en el caso de usarse algún tipo de XML como lenguaje base para interoperar.
Selección de solución
Dada la temprana fase en que todavía se encuentra el proyecto, tanto desde una perceptiva general como desde la particular de este entregable concreto, es imposible llegar a una conclusión consensuada y argumentada en este punto. Aún hay que evolucionar y estudiar muchos factores distintos para poder aportar un lenguaje para interorperar entre las folksonomías del front-end a las ontologías del back-end.




