Existen tres tipos de consultas disponibles actualmente:
Ontology: este tipo de consulta busca ontologías de la Web Semántica, i.e. SWDs que tienen definida al menos una clase o propiedad.
Document: Recupera no solo ontologías sino otros tipos de documentos, como instancias, siempre y cuando estén introducidas en la SWDB
Term: se refiere a categorías, que dentro de SWDs, representan conceptos, ya sean de forma referencial (p.e. URLs) o bien literales, por ejemplo, términos de un vocabulario o tesauro, o un número de teléfono. Siempre serán instanciados en Swoogle con sus URIs. Anteriormente esta funcionalidad se ofrecía a través de un Diccionario, el Ontology Dictionary.
Componer una cadena de búsqueda (search string)
Por defecto, Swoogle permite al usuario especificar una cadena de búsqueda arbitraria para encontrar documentos relevantes de la Web Semántica.
En vez de construir un índice a partir del texto completo, Swoogle parsea el documento, es decir, analiza si está bien formado y presenta estructuras semánticas de relevancia para la recuperación semántica según modelos establecidos u ontologías, y solamente indexa la parte que más aporta a la semántica del documento, es decir, URL del documento, los términos que están siendo usados por el documento, y/o siendo definidos en él, descripciones explícitas sobre el documento, y los namespaces o espacios de nombres usados en el código fuente del documento.
Ejemplo de búsqueda de una cadena de texto:
food |
Busca documentos que son relevantes para "food", comida. |
Búsqueda Avanzada utilizando restricciones de
campo
(Advanced Search using
field constraints)
Swoogle también permite a los agentes/usuarios especificar restricciones sobre los siguientes campos de un documento de Web Semántica, que llamaremos abreviadamente D:
url: el URL de D
desc: la descripción de D, obtenida normalmente de la anotación de la ontología de D (i.e., ternas que contienen el URL de D como sujeto y un literal como objeto)
def: términos que son definidos por D (para cada uno de estos términos, Swoogle indexa su local-name o nombre tal como se encuentra en D y su tipo, es decir si es una clase o propiedad)
ref: términos que son referenciados por D (para cada uno de estos términos Swoogle indexa solo su local-name)
pop: términos que son usados por primera vez en ese sentido concreto por un D
ns: los namespaces utilizados por D
Ejemplos de búsqueda avanzada de metadatos:
url:foaf |
Busca documentos que tienen “foaf” como parte de su URL |
url:"http://www.w3.org/2000/01/rdf-schema" |
Busca un SWD concreto que utilice el URL "http://www.w3.org/2000/01/rdf-schema" |
hasGrammar:n3 |
Busca documentos que son determinados utilizando "N3" |
desc:timbl |
Busca documentos que tienen "timbl" en su anotación de ontología |
def:food |
Busca documentos que contienen términos definidos relacionados con "food" |
ref:ObjectProperty |
Busca documentos que contienen términos que hacen referencia a "ObjectProperty" |
ns:foaf |
Busca documentos que utilizan namespaces que contienen la subcadena "foaf" |
ns:"http://xmlns.com/foaf/0.1/" |
Busca documentos que utilizan el namespace "http://xmlns.com/foaf/0.1/" |
hasEncoding: el charset o conjunto de caracteres fuente de codificación de D, por ejemplo, "utf-8","iso-8859-1"
hasLength: tamaño del documento en bytes
hasMd5sum: la suma md5 del documento
hasFiletype: el tipo de archivo o formato analizado desde el propio URL del documento, por ejemplo, owl, rdf.
hasGrammar: la gramática RDF de D, su valor podría ser:
(i) rx - RDF/XML;
(ii) n3 – notación 3, y
(iii) nt – Ntriples, ternas
hasCntTriple: el número de triples o ternas
hasOntoRatio: porcentaje de ternas que contribuyen a la definición
hasCntInstance: número de instancias de una clase (class-instances) excluyendo la definición de clase o de propiedad
Búsqueda Avanzada utilizando características
Lucene
(Advanced Search using Lucene
features)
Este servicio de búsqueda está impulsado por Lucene[1], y por tanto los agentes-usuario pueden también usar directamente sintaxis de consulta Lucene.
Ejemplos de algunas de las características más comunes de búsqueda:
food web |
Busca documentos relevantes para "food' y "web". Por defecto, dos palabras clave de búsqueda están conectadas por la semántica AND. |
food OR web |
Busca documentos relevantes para "food' or "web". OR debe escribirse en mayúscula. |
food NOT web |
Busca documentos relevantes para food pero no para web. NOT debe escribirse en mayúscula. |
modify~ |
fuzzy match recupera documentos que contiene exactamente esta cadena o variantes similares utilizando lógica borrosa |
Ejemplo de búsqueda y visualización de
resultados.
Figura 3. Ejemplo de la vista de la lista de ontologías recuperadas
[1] Lucene es un producto desarrollado por Apache. Se trata de un IRS desarrollado íntegramente en JAVA especializado en la gestión de grandes colecciones documentales. Sintaxis de consulta de Lucene: http://lucene.apache.org/java/docs/queryparsersyntax.html [Consulta: 14-05-06]