servicios wfs procesos

17
Proceso manual de busqueda de servicios WFS El primer paso para la busqueda de servicios WFS manualmente es identificar el tipo de informacion que se necesita para el proceso de anotacion, posteriormente se procede a realizar un analisis de la validez que tienen estos servicios. Al hablar de validez de los servicios se hace referencia a la informacion que se puede explotar de este servicio con las tecnologias que tenemos para la anotacion de servicios. Y los recurso con los que se cuenta, para hacer esto se decidio realizar la busqueda de servicios siguiendo los pasos que se detallan a continuacion. Encontrar fuentes de servicios Analisis de la estructura de datos del servicio Para encontrar servicios el primer paso es buscar en la web lo cual dio resuñtados mixtos pues por lo general se obtuvieron definiciones de lo que es un WFS, posteriormente se intento con palabras como geoportal con mejores resultados pues es en los geoportales donde se encuentran publicados los servicios WFS. Una vez se tiene un conjunto de servicios con los que se puede trabajar se debe Analizar la estructura de los datos del servicio WFS, para lo cual se ataca la operacion DescribeFeatureType. El problema mas grande que se encontro al analizar la estructura de datos de los servicios WFS fue el tiempo que consume este proceso pues se debe analizar las operaciones DescribeFeatureType de las diferentes capas dentro de un servicio. Con este analisis se encontro que la mayoria de los servicios WFS, mas concretamente la mayoria de las capas publicadas de ntro de un servicio WFS no detallan bien la estructura de datos de la capa ya antes mencionada, por ejemplo las capas cuentan con campos cuyos nombres son inenetendibles tanto para la maquina como para un usuario. Al analizar mas a fondo este probema con los nombres de los campos se descubrio que el nivel de descripcion de los servicios depende en gran parte de la fuente a la que pertenece el servicio WFS y el proceso que se ralizo para publicar el servicio. El saber cual es el proceso mediante el cual se publico una capa dentro de un servicio es casi imposible a menos que se conozca a alquien dentro de la organizacion que publica el servicio WFS, pero por lo general se puede esperar uniformidad en la calidad de los datos dependiendo de la fuente que los publica por ejemplo los datos publicados por el IGM contienen atributos en la mayoria de sus capas que no estan bien descritos por ejemplo en la capa “igm:antena_parabolica” se puede apreciar accediendo a la operacion DescribeFeatureType la lista de los atributos que tiene esta capa. Es por esto que se accede a estos datos con la siguiente url, http://www.geoportaligm.gob.ec/galapagos25/wfs? service=wfs&request=DescribeFeatureType&typeName=igm:antena_parabolica que nos brinda la siguiente lista de atributos: 1. f_code 2. descripcio 3. acc 4. acc_desc 5. use 6. use_desc 7. txt 8. isla

Upload: holgercor

Post on 12-Apr-2016

229 views

Category:

Documents


0 download

DESCRIPTION

procesos de anotacion semantica servicios WFS

TRANSCRIPT

Proceso manual de busqueda de servicios WFS

El primer paso para la busqueda de servicios WFS manualmente es identificar el tipo de informacion que se necesita para el proceso de anotacion, posteriormente se procede a realizar un analisis de la validez que tienen estos servicios. Al hablar de validez de los servicios se hace referencia a la informacion que se puede explotar de este servicio con las tecnologias que tenemos para la anotacion de servicios. Y los recurso con los que se cuenta, para hacer esto se decidio realizar la busqueda de servicios siguiendo los pasos que se detallan a continuacion.

• Encontrar fuentes de servicios• Analisis de la estructura de datos del servicio

Para encontrar servicios el primer paso es buscar en la web lo cual dio resuñtados mixtos pues por lo general se obtuvieron definiciones de lo que es un WFS, posteriormente se intento con palabras como geoportal con mejores resultados pues es en los geoportales donde se encuentran publicados los servicios WFS.

Una vez se tiene un conjunto de servicios con los que se puede trabajar se debe Analizar la estructura de los datos del servicio WFS, para lo cual se ataca la operacion DescribeFeatureType. El problema mas grande que se encontro al analizar la estructura de datos de los servicios WFS fue el tiempo que consume este proceso pues se debe analizar las operaciones DescribeFeatureType de las diferentes capas dentro de un servicio. Con este analisis se encontro que la mayoria de los servicios WFS, mas concretamente la mayoria de las capas publicadas de ntro de un servicio WFS no detallan bien la estructura de datos de la capa ya antes mencionada, por ejemplo las capas cuentan con campos cuyos nombres son inenetendibles tanto para la maquina como para un usuario.

Al analizar mas a fondo este probema con los nombres de los campos se descubrio que el nivel de descripcion de los servicios depende en gran parte de la fuente a la que pertenece el servicio WFS y el proceso que se ralizo para publicar el servicio.

El saber cual es el proceso mediante el cual se publico una capa dentro de un servicio es casi imposible a menos que se conozca a alquien dentro de la organizacion que publica el servicio WFS, pero por lo general se puede esperar uniformidad en la calidad de los datos dependiendo de la fuente que los publica por ejemplo los datos publicados por el IGM contienen atributos en la mayoria de sus capas que no estan bien descritos por ejemplo en la capa “igm:antena_parabolica” se puede apreciar accediendo a la operacion DescribeFeatureType la lista de los atributos que tiene esta capa. Es por esto que se accede a estos datos con la siguiente url, http://www.geoportaligm.gob.ec/galapagos25/wfs?service=wfs&request=DescribeFeatureType&typeName=igm:antena_parabolica que nos brinda la siguiente lista de atributos:

1. f_code2. descripcio3. acc4. acc_desc5. use6. use_desc7. txt8. isla

9. the_geom

Como se puede observar la mayoria de los nombres de la mayoria de los campos no describen de manera adeacuada a que hacen referencia por lo que se vuelve necesario analizar las instancias de esta capa para tener una mejor idea de a que referencia esta capa por lo que es necesario explorar el contenido proporcionado por la operación GetFeature mediante la URL http://www.geoportaligm.gob.ec/galapagos25/wfs?service=wfs&request=GetFeature&typeName=igm:antena_parabolica

Al analizar esta operación nos podemos dar cuenta tan solo en los dos primeros features que el contenido de los campos no es de gran ayuda para entender a que se hace referencia en ellos como se puede observar en la siguiente figura.

Como observar lo unica informacion util que se puede sacar de este servicio es en que isla se encuentra la antena parabolica con el campo isla, y su posicion exacta con el campo the_geom, pero el resto de campos es imposible de decifrar pues no permiten inferenciar al usuario, menos aun a la maquina a que hace referencia ya sea por el nombre del campo como por el contenido del mismo. Por ejemplo en el servicio se puede apreciar que el campo acc_dec siempre contiene EXACTA pero ni el nombre del campo ni su contenido ayudan a inferenciar a que hace referencia este campo, la única manera de averiguarlo seria hablar con la persona que publico la capa ya mencionada o hablando con un experto en antenas parabólicas lo cual tampoco es una garantía de que este experto sepa a que han referencia estos campos pues existe la posibilidad de que la persona que publico este servicio web no haya utilizado ningún tipo de lógica el momento de dar nombres a los campos.

Con el analisis previo se puede dar por sentado que por lo menos esta capa dentro de este servicio

brinda datos de mala calidad, para la misma aceveracion de todo el servicio se debe al menos analizar una capa mas por lo cual para la ilustracion de la metodologia que se utilizo en esta investigacion se detallara la capa igm:anteplaya, la cual al explorar la operación DescribeFeatureType que nos brinda la siguiente lista de campos

1. f_code2. descripcio3. mcc4. mcc_desc5. txt6. isla 7. the_geom

Como se puede apreciar en esta capa los campos tienen nombres parecidos a los de la capa anterior y elnombre de la cama tambien es similar pero los nombres de los campos mas concretamente la metdata nuevamente no es lo suficientemente descriptiva por lo que se procede a analizar la operación GetFeature para ver si se puede obtener informacion que describa a que hace reerencia esta capa pero no se puede observar en la en la siguiente figura se tiene el mismo problema que en la primera capa.

Despues de haber analizado diez capas de este servicio del igm de la manera descrita en los dos ejemplos anteriores y habiendo obtenido resultados practicamente iguales se llega a la conclusion de que este servicio practicamente no proporciona informacion util para la anotacion de un servicio salvo la geometrica pues ta pertenece a un estandar y en la mayoria de los casos el nombre del lugar donde esta el feature al que se hace referencia, por lo que se puede catalogar a este servicio como de poca contribucion para el proceso de anotacion semantica pues se puede inferir y mas adelante en este documento se comprobara con sustento que va a ser dificil de anotar y una vez anotado no brindara

mayor informacion mas alla de la geometrica que sea en verdad de reelevancia, lo maximo que se puede esperar con este servicio es que nos sirva para contrastar datos al menos geometricos con otro servicio que proporcione informacion para un servicio que hable de lo mismo dentro de la misma area.

El caso de estudio anterior sirve para ilustrar como identificar un servicio que no brinda informacion decalidad tanto en su descripcion de datos o metadata como en las intancias de una capa por lo tanto a continuacion se detalla lo contrario un servicio que detalla informacion bastante bien desde la opercion GetCapabilities pues cada capa consta con un abstract que define a que se hace referencia, el servicio alque se hace referencia se puede acceder mediante la url https://rsg.pml.ac.uk/geoserver/ows?service=wfs&request=GetCapabilities y pertenece al remote sensing group.

Al igual que en el caso anterior se procede a analizar la operación DescribeFeatureType de la capa topp:tasmania_water_bodies la cual nos brinda los siguientes campos

1. the_geom2. AREA3. PERIMETER4. WATER_TYPE5. CNTRY_NAME6. CONTINENT

Con el acceso a la operación DescribeFeaturetype de esta capa ya se puede ver una diferencia con las capas del anterior servicio del IGM pues los nombres de los campos de esta capa describen claramente a que se hace referencia en ellos; el area, elperimetro y el tipo de cuerpo de agua a las que hace referencia el poligono descrito en la geometria.

Es un hecho que aunque la metadata de la capa tenga nombres claros de campos es posible que exista informacion que no este correcta dentro de los mismos en la operación GetFeature. Al acceder a la operación ya antes mencionada nos damos cuenta que la informacion proporcionada por este servicio facilitara el proceso de anotacion.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Seleccion de ontologias

La selección de ontologias tambien se realiza siguiendo una metodologia que puede ser resumida en lossiguientes pasos:

1. Listar las capas que se quieren anotar2. Verificar la validez de los datos proporcionados por la capa3. Buscar mediante diferentes formas ontologias4. Verificar la viabilidad para mapear la ontologia seleccionada con las capas seleccionadas

Una vez se tienen servicios escogidos en el paso anterior se procede a atacar el servicio mediante la operación DescribeFeatureType esta vez para tener una idea de que es lo que se necesita que contenga la ontologia que se va a utilizar para realizar el mapping entre las diferentes capas y la ya menciaonada ontologia.

Para la ilustracion del procedimiento que se siguio se utiliza como ejemplo la capa water_bodies del servicio https://rsg.pml.ac.uk/geoserver/ows?service=wfs&request=GetCapabilities. Al acceder a esta capa se obtiene como ya se explico previamente metadata bien definida por lo que nos sea de utilidad para el proceso de búsqueda de ontologías. Una vez se tiene los campos que se van a utilizar para el mapeo se procede a definir si el campo se mapeara a una clase o a una propiedad dentro de una clase enla ontologia que se va a buscar. Para efectos de buscar una ontologia de la manera de la manera mas rápida posible se decidió que la capa se mapearía a la ontología como se puede observar en la siguientefigura.

A continuación se detallara el proceso para la búsqueda de las ontologías en la web. Primero se observo la capa de la cual se puede sacar las palabras claves que van a ayudar en la búsqueda de las ontologías, puesto que se ha decidido que las clases o al menos una clase de la ontología debe tener una relación con la capa.

En el caso antes descrito el nombre de la capa es ontología es topp:tasmania_water_bodies, nos podemos deshacer del prefijo topp pues no aporta un significado ni semántico ni sintáctico. El siguientepaso es eliminar la palabra tasmania pues hace referencia a un lugar y las ontologías hacen referencias a conceptos no ha lugares por lo cual se procede a realizar la búsqueda con las palabras water_bodies junto a la palabra ontology.

Los resultados que se obtienen con esta busqueda en el motor de busqueda Google se puede apreciar en los primeros resultados que se hace referencia mas que nada a papers. Dentro de los papers en ocaciones se hace referencia a ontologias pero no se especifica en donde se puede acceder a esta ontologia como se puede observar enel presente paper http://ceur-ws.org/Vol-1063/paper3.pdf. En el paper ya antes mencionado se describe la ontologia con la que se va a trabajar pero no hay ningun enlace hacia la ontología, como este son la mayoria de los casos de los papers que se obtienen en la busqueda con buscadores como Google.

Por lo expuesto previamente se decidio no seguir con esta metodologia para buscar las ontologias, se prosiguio a realizar la busqueda en sitios web diseñados especificamente para buscar ontologías como lo son http://swoogle.umbc.edu/ y http://watson.kmi.open.ac.uk/WatsonWUI/ con las mismas palabras que se intento en el motor de busqueda google.

Los resultados obtenidos en estos motores de busqueda especializados son mucho mejores que los anteriores pues hacen referencia directa a las URLs donde se puede acceder a la ontologia. De esto se

Listado de Campos WEB Ontologia

puede sacar las clases que estarian relacionadas con la capa, el proximo paso seria ver que propiedades son las que se podria relacionar con los campos de la capa a le que estaremos haciendo referencia. Es en este punto donde se genera uno de los inconvenientes mas grandes del proceso de la selección de la ontologia pues al no estar los servicios WFS estructurados de ninguna manera pues como ya se dijo anteriormente incluso hay ocaciones en las que los nombres de los campos no tienen ninguns sentido por ejemplo en una de las ontologias que de pudo recuperar de el buscador watson con referencia a water bodies o cuerpos de agua la cual puede ser descargada desde la siguiente URL http://lsdis.cs.uga.edu/proj/traks/ontologies/ontology_9.owl. En la ontologia antes descrita se encontro una clase que tiene concordancia con la capa tazmania water_bodies, despues de un recorrido de las clases de la ontología se encontro que en primera instancia podria tener relacion con la capa water_bodies y la clase water_structure pues en en esta primera instancia lo unico que se tiene para relacionar la capa con una ontologia,

Al analizar los campos de la capa se encuentra un campo water_type que en todas las capas dice Lake lago en ingles. Al analizar en la ontología que ya se habia mencionado se encuentra una subclase de water_structure que tiene por nombre Lake, de manera que los capa se deberia relacionar a la clase Lake de la ontologia.

El proximo paso es ver las propiedades de clase en la ontologia y los campos en la capa paraver como se pueden relacionar. Dentro de la capa los nombres de los campos son: AREA, PERIMETER, COUNTRY_NAME y CONTINENT. Las propiedades de la clase Lake se deriva de la clase water_feature que hereda de la clase water_estructure wue hereda de place que tiene las siguientes propiedades: bounding_box, geographic description, elevation, est_population. Como se puede ver ninguna de estas propiedades concuerdan por lo que si se quiere realizar una anotacion se necesita crearla propiedad que haga referencia en este campo por ejemplo en este caso el atributo area se convertiria en la propiedad tieneArea.

El proceso para selecccion de ontologias previamente descritos se puede resumir en el siguiente gráfico.

Invocación del servicios

Al invocar el servicio con una conexión java surgen cierto tipo de inconvenientes como el hecho de quela conexión hacia el servicio web se puede perder, por lo cual fue necesario formar archivos temporales

PROCESO DE BUSQUEDA DE ONTOLOGIA DE DOMINIO

BUSQUEDA DE SERVICIOS

SERVICIOS

CAPAS

ATRIBUTOS

ONTOLOGIA PRESELECCIONADA

PROCESO DE VALIDACION

ONTOLOGIA VALIDADA ONTOLOGIA DESCARTADA

donde se almacenaron los servicios en formato GML de manera temporal para luego proceder a la lectura de los mismos. Se pudo constatar que el proceso de lectura de un servicio WFS con las tecnologias antes descritas es variable dependiendo del tamaño de los features que existan en las capas de un servicio, es decir, es mucho mas rapido leer una capa que esta enteramente compuesta de puntos que una con poligonos bastante detallados.

Otro incoveniente que se encontro mas que en el momento de la invocacion de los servicios WFS sino en la lectura de los mismos es la no homogeneidad de las etiquetas GML pues a pesar que en el presente trabajo de investigacion se decidio leer solo servicios WFS con el estamdar 2.0.0se encontraron ciertas divergencias entre los distintos servicios en algunas etiquetas de suma importancia por ejemplo en la gran mayoria de los servicios se podia acceder a los features dentro de laoperación GetFeature leyendo los nodos que estan dentro de la etiqueta <wfs:member> pero se encontraron casos en los que para acceder a los features nos encontramos con la necesidad de explorar la etiqueta <gml :featuremembers> pues no exitia la version 2.0.0 para el servicio ya mencionado.

Por ultimo al momento de leer los servicios WFS se debio identificar que era el tipo de coordenadas que se manejaba en los servicios WFS pues no todos utilizan la proyeccion ESPG:4326 lo cual no s obliga a realizar conversion de coordenadas cuando necesario para que se pueda trabajar de mejor manera al momento de utilizar los servicios WFS anotados

Mapeo R2RML

Los dos primeros niveles de la anotación del servicio WFS es automático pero el mapeo es manual, para atacar al ultimo nivel del servicio se ha utilizado un mapeo semiautomático que utiliza el lenguaje R2RML para plasmar los mapeos entre las diferentes capas y las clases de las ontologías de dominio. Para iniciar con el proceso de mapeo de las ontologias con los servicios WFS se toma como insumos los resultados obtenidos de la selección de servicio al igual que de la selección de la ontologia de dominio.

De la selección de servicios se puede obtener los nombres de las capas que se van a anotar y los campos dentro de esa capa que se vayan a anotar, mientras que, de la selección de la ontologia de dominio se selecciona la clase y las propiedades existan estas o no pues como ya se explico anteriormente el encontrar relacion entre capas y clases en una ontologia es relativamente sencillo pero esto no siempre significa que tambien exista un a relacion entre los campos de la capa y las propiedadesde la clase. De todas maneras en caso de existir esa relacion se deberia realizar el mapeo correspondiente.

Lo antes mencionado se puede comprender de mejor manera en el siguiente ejemplo, si se tiene una capa de cuerpos de agua mas concretamente lagos y dentro de la ontologia tenemos una clase lago tenemos una correspondencia perfecta entre clase y capa, por lo que se debe realizar un analisis de concordancia entre las campos de la capa y las propiedades de la clase. En este caso las propiedades a ser anotadas serian AREA, PERIMETRO, CONTINENTE, ninguna de las cuales corresponde a alguna de las propiedades de la clase Lago. Al tener esta disyuntiva existen tres opciones: la primera mapear apropiedades inexistentes de manera que sean creadas, la segunda no mapear los atributos que no existan de manera que no se anote nada de esa capa y por ultimo mapear los campos existentes con las propiedades existentes aunque estas no tengan ninguna relacion semantica. Solo la primera opcion devolveria resultados significativos de manera que es la que se ha escogido para realizar el mapeo de elultimo nivel del servicio.

Publicación de resultados

El objetivo de la publicación de Linked Data es liberar la información de sus confines contextuales y habilitar el acceso atravez de la web a la información de algún objeto. Segun Tim Berners Lee los pasospara la correcta publicación de Tim Berners Lee:

• Nombrar cosas utilizando URIs• Utilizar HTTP para construir URIs atravez de la web • Exponer información útil atravez de las URIs• Enriquecer las URIs añadiendo links a otra información atravez de la web

La información que se anota en la ontología WFS son las clases son DescribeFeatureType y GetFeature que estan dentro de la URI http://purl.org/ifgi/wfs. Para ver las propiedades que se tiene dentro de la clase DescribeFeatureType con la siguiente consulta.

SELECT DISTINCT ?propiedad ?tieneValor WHERE { { <http://purl.org/ifgi/wfs#DefaultDescribeFeatureType> ?propiedad ?tieneValor }UNION { ?isValueOf ?propiedad <http://purl.org/ifgi/wfs#DefaultDescribeFeatureType> }}ORDER BY ?propiedad ?tieneValor ?isValueOfLIMIT 1000

propiedad tieneValorhttp://purl.org/ifgi/posm#hasInput http://purl.org/ifgi/wfs#DefaultDescribeFeatureTypeRequest http://purl.org/ifgi/posm#hasOutput http://purl.org/ifgi/wfs#DefaultDescribeFeatureTypeResponse Si se desea ver ls instancias de la clase DescribeFeatureType se lo puede hacer con la consulta que se muestra a continuación

SELECT DISTINCT ?instance WHERE { ?instance a <http://purl.org/ifgi/wfs#DescribeFeatureType>}ORDER BY ?instance LIMIT 1000con el siguiente resultado

instancehttp://purl.org/ifgi/wfs#DefaultDescribeFeatureType http://purl.org/ifgi/wfs#DescribeFeatureTypersg:50m_coastline http://purl.org/ifgi/wfs#DescribeFeatureTypersg:ais_report http://purl.org/ifgi/wfs#DescribeFeatureTypersg:amtctd http://purl.org/ifgi/wfs#DescribeFeatureTypersg:amtctd_days

http://purl.org/ifgi/wfs#DescribeFeatureTypersg:areas http://purl.org/ifgi/wfs#DescribeFeatureTypersg:areas_new http://purl.org/ifgi/wfs#DescribeFeatureTypersg:areas_pw http://purl.org/ifgi/wfs#DescribeFeatureTypersg:discovery_latest http://purl.org/ifgi/wfs#DescribeFeatureTypersg:full_10m_borders

Las entradas del DescribeFeatureType se lo puede sacar con la siguiente consulta

SELECT DISTINCT ?instance ?inobj ?label WHERE { ?instance a <http://purl.org/ifgi/wfs#DescribeFeatureType>. ?instance <http://purl.org/ifgi/posm#hasInput> ?inobj. ?inobj rdfs:label ?label}ORDER BY ?instance

Las salidas con la siguiente consulta

SELECT DISTINCT ?instance ?inobj ?label WHERE { ?instance a <http://purl.org/ifgi/wfs#DescribeFeatureType>. ?instance <http://purl.org/ifgi/posm#hasOutput> ?inobj. ?inobj rdfs:label ?label}ORDER BY ?instanceLIMIT 1000

Después de analizar la información anotada de los servicios con la ontología WFS se procede a realizar el respectivo análisis con la ontología de dominio y la ontología geométrica. Para realizar el análisis de la publicación de la ontología de dominio anotada se utilizara el ejemplo de la capa ya antes mencionada en los puntos previos que es la capa de topp:tazmania_waterbodies lo cual se puede obtener con la siguiente consulta.

SELECT ?a ?url ?area ?perimeter ?continente WHERE { ?a <http://webprotege.stanford.edu/tieneUrl> ?url. ?a <http://webprotege.stanford.edu/hasArea> ?area. ?a <http://webprotege.stanford.edu/hasPerimeter> ?perimeter. ?a <http://webprotege.stanford.edu/fromContinent> ?continente} ORDER BY ?typecon el siguiente resultado

a url area perimeter continente

http://webprotege.stanford.edu/1

https://rsg.pml.ac.uk/geoserver/topp/ows?service=WFS&version=2.0.0&request=GetFeature&typeName=topp:tasmania_water_bodies

1067509088 1073140989 Australia

http://webprotege.stanford.edu/5

https://rsg.pml.ac.uk/geoserver/topp/ows?service=WFS&version=2.0.0&request=GetFeature&typeName=topp:tasmania_water_bodies

1065646817 1071606923 Australia

http://webprotege.stanford.edu/3

https://rsg.pml.ac.uk/geoserver/topp/ows?service=WFS&version=2.0.0&request=GetFeature&typeName=topp:tasmania_water_bodies

1066494066 1071999090 Australia

http://webprotege.stanford.edu/2

https://rsg.pml.ac.uk/geoserver/topp/ows?service=WFS&version=2.0.0&request=GetFeature&typeName=topp:tasmania_water_bodies

1064598241

1071187492 Australia

http://webprotege.stanford.edu/0

https://rsg.pml.ac.uk/geoserver/topp/ows?service=WFS&version=2.0.0&request=GetFeature&typeName=topp:tasmania_water_bodies

1064866676

1071221047 Australia

http://webprotege.stanford.edu/6

https://rsg.pml.ac.uk/geoserver/topp/ows?service=WFS&version=2.0.0&request=GetFeature&typeName=topp:tasmania_water_bodies

1067743969

1073212293 Australia

http://webprotege.stanford.edu/4

https://rsg.pml.ac.uk/geoserver/topp/ows?service=WFS&version=2.0.0&request=GetFeature&typeName=topp:tasmania_water_bodies

1065512599

1071304933 Australia

Como se puede ver en la tabla anterior gracias a la publicación de la información se puede acceder de manera simple a la información de un servicio web que posteriormente habria sido imposible de analizar en una manera estructurada sino solo de manera gráfica o textual analizando las diferentes operaciones del servicio WFS.

En definitiva el proceso de anotación hizo posible pasar de información no estructurada y aislada a un conjunto de información relacionada y ordenada de mucho mayor utilidad para el usuario de manera que este la pueda explotar de mejor manera. La información dentro del servicio no tenia ningún sentido semántico mientras que ahora se puede obtener información con preguntas semánticas.

Previamente para saber como se puede obtener información geográfica acerca de lagos en Australia se debía realizar una búsqueda en la web de los diferentes servicios de una manera empírica con resultados inciertos y poco estructurados e imposibles de relacionar con otras fuentes de información de manera automática. En definitiva se ha logrado transformar un proceso de análisis de información proporcionada por servicios WFS que era completamente dependiente del conocimiento que tenia el usuario de las fuentes de información y los temas a los que estas hacen referencia a un proceso en el que un usuario sin mayor conocimiento podría buscar y acceder a los datos de manera mucho mas mas sencilla.

Problemas encontrados al buscar Ontologia de Dominio

proceso de Mapping manual

Una vez se tiene identificado el servicio mas concretamente la capa que se va a utilizar para el mapeo se debe generar el archivo de mapeo. Para este proceso se definio seguir la siguiente metodologia. Primero se lista los campos que existen en la capa o grupo de capas a los que se va a anotar posteriormente se procede a hacer un analisis de la correspondencia que existe entre los campos de los que ya se hablo previamente y la ontologia que se ha definido para ser anotada. Luego de esto seprocede a realizar las anotaciones que se detallaran mas a detalle en la seccion de anotacion manual del presente capitulo.

El proceso para la creación del archivo de mapeo R2RML se puede visualizar de mejor manera en la siguiente figura

WFS GetCapabilities

DescribefeaturetypeWEB

Descripcion del Proceso de anotacion semantico de Servicoshacer WFS

La anotacion semantica de un servicio WFS ataca a tres niveles de la informacion proporcionada por elservicio WFS. El primer nivel es el de la metadata del servicio WFS. El segundo nivel es el de la estructura de datos del servicio WFS y por ultimo se anotan las instancias que tiene el servicio WFS. Elfin de anotar el servicio atacando estos tres niveles es tener como producto final de el proceso de anotacion un repositorio semantico con toda la informacion antes descrita de los servicios WFS.

Para extraer la informacion necesaria del servicio WFS se hizo una lectura recursiva de las operaciones proporcionadas por este servicio. Este enfoque se puede apreciar de mejor manera en el siguiente grafico.

GetCapabilities

DescribeFeatureType

Ontologia

Archivo R2RML

Resultados

Método

El análisis de los resultados obtenidos del proceso de anotación de los servicios WFS se divide en arias fases. La primera es el registro del servicio WFS, la evaluación de la anotación semántica.

Dentro del proceso de registro de los servicios WFS se tomo un conjunto de 6 servicios de los cuales la totalidad pudieron ser registrados en el sistema. Para el análisis de la aplicación se tomara en cuenta capas y no servicios.

Los pasos que se definieron para la evaluación de los resultados son los siguientesCalificación de servicios WFS.- Como ya se explico previamente el procedimiento que se utilizo para calificar los servicios WFS fue en breves palabras analizar la fuente, analizar los nombres de las capas y finalmente analizar los campos de las capas.

En cuanto a las fuentes se encontraron tres fuentes, el IGM la Universidad de Cuenca, la Universidad del Azuay y el Remote Sensing Group.

El análisis de las capas se dio de la siguiente manera se realizo con el nombre de las capas con las siguientes métricas. El valor semántico que se obtiene de la capa. En cuanto a esto existen parametros objetivos y subjetivos.

Los parametros objetivos para medir el valor semántico de una capa es ver si este proporciona el tituloy Abstract de la capa. Estos parametros son objetivos pues no dependen de la opinión de nadie simplemente existen o no. A partir de esto se puede realizar un análisis mas subjetivo de estos parametros puede realizarse pero desafortunadamente este debe ser hecho manualmente pues no existen las herramientas para realizarlo de manera automática.

Posteriormente se procede a analizar la metadata de las capas y las instancias de la misma, lamentablemente este análisis debe ser subjetivo forzosamente.

El siguiente paso es la evaluación de las ontologías obtenidas con el proceso de búsqueda de las mismas. Las métricas para ver el nivel de validez de una ontología se calcula viendo el nivel de capas que pueden ser anotadas con esta ontología y el nivel de similaridad que hay entre los campos de la capa y la propiedad de la clase.

Finalmente se evaluá el proceso de anotación de los servicios WFS tomando en cuenta las metricas que se detallaran mas delante en el documento.

Registro de Capas

El sistema invoco a 6 servicios WFS, dentro de los cuales existían 700 capas de las cuales se accedieron a 20 capas, dentro de estas 20 capas la aplicación tuvo un porcentaje del 80% de éxito al leer estas capas. La mayoría de los errores en la lectura se suscitaron por las suficientes razones:

• El tamaño de la capa es demasiado grande.20%• La conexión del servicio es intermitente.10%• El servicio no tiene la version 2.0.0 de WFS 30%

Anotación semántica

Este análisis sigue la anotación de los diferentes niveles mediante los cuales se ataca a los servicios WFS. En el primer nivel de los servicios se logro una anotación del 83.3% de este porcentaje el 100% de las entradas o requerimientos fue anotado correctamente al igual que las salidas. El nivel de éxito de anotación de las capas es del 2% pero se debe tomar en cuenta que este porcentaje depende completamente del proceso de búsqueda de los servicios y de las ontologías que dependen de la misma.

Luego se analiza el proceso de enriquecimiento semántico que tiene como resultado de 10% en cuanto a las anotaciones con la ontología de dominio mientras que el enriquecimiento semántico de las geometrías anotadas da un resultado de coincidencia del 70%.

Evaluación de Parametros de entradas

Al hablar de la validación de parametros de entrada nuestro sistema no los evaluá pues el servicio WFSno los tiene. Es por esto que el sistema solo toma la URL de los servicios.

Como ya se dijo anteriormente los parametros que pueden ser clasificados como desconocidos y geoespaciales. Los parametros geoespaciales se refieren a toda la información geométrica acerca del feature que se esta analizando, y los parametros desconocidos son los que no tienen suficiente información descriptiva para encontrar ninguna información descriptiva.

Los parametros de entrada son en su gran mayoría desconocidos por lo menos en los servicios locales por lo cual no sirven de mucho al momento de realizar la anotación semántica. Dado que en la mayoría de ocasiones los parametros desconocidos aportan mas información por su contenido que por su nomenclatura fue esta la que proporcionaba la información necesaria para el mapeo y posteriormente laanotación. Es por la antes mencionado que para la evaluación de estos parametros primero se definió el numero de parametros desconocidos versus el numero de parametros conocidos. Los parametros conocidos fueron mapeados manualmente y anotados semanticamente con un porcentaje de éxito del 100% por lo cual no serán analizados lo que se analizara en ves sera el porcentaje de parametros desconocido versus parametros conocidos dentro de los WFS. Al rededor del 70% de las capas utilizadas para este estudio contenían parametros desconocidos mientras que de este 70% al rededor del80% no aportaba con información en sus instancias que sirvieran para el proceso de anotación.

Evaluación de Parametros de salida

La validación de los parametros de salida se la realiza analizando las siguientes métricas de precisión yrespuesta. La precisión se calcula con el numero de parametros anotados correctamente dividido entre el numero de parametros anotados, en cuanto a esto no se tiene información concluyente dado que no se tiene un método probado para la verificación de si un parámetro ha sido anotado correctamente puesel proceso es totalmente dependiente del proceso de mapeo que es subjetivo al usuario que lo realiza. Por lo tanto no se puede realizar una evaluación cuantitativa sino cualitativa por lo que se puede decir que el nivel de precisión dependiendo de la persona que haga el mapeo puede ser bueno o malo.

Dado que el mapeo fue realizado solo por una personas en este proceso de pruebas los resultados no son comparables. La conclusión que se puede sacar de esto es que se necesita diseñar un método largo para la validación de los parametros de salida ya sea este realizado por un experto o de manera automática.

En cuanto a la métrica de fidelidad es dependiente de la de precisión pues no se puede saber cuantos parametros han sido anotados correctamente como ya de dijo anteriormente.

Conclusiones

Las conclusiones que se ha podido sacar del proceso de evaluación de resultados se puede dividir en lossiguientes puntos:

• Evaluación del proceso utilizado• Proceso de mejora del proceso utilizado

En cuanto a la evaluación del proceso de LOD basándonos en los resultados obtenidos los cuales no son concluyentes se puede llegar a la conclusión de que se necesita un procedimiento semiautomático para realizar un mapeo de las capas. Este proceso debería tener un conjunto de ontologías ya ingresadasen el sistema al igual que un diccionario de palabras que puedan determinar de manera cuantificable el numero de parametros desconocidos y ver la correspondencia que existe entre estos para que el sistema sugiera las posibles correspondencias que existan entre los servicios y las ontologías.

Las ventajas de esta mejora en el proceso seria en el ahorro de tiempo pues la búsqueda de ontologías ymapeo de las mismas es consumidor de tiempo, en este primer intento para definir un proceso de generar LOD con servicios WFS se ha podido constatar que la anotación de el primer nivel de los servicios según la metodología de maue se realiza de una manera correcta en un 100% de los casos estudiados a diferencia de el ultimo nivel por la heterogeneidad de parametros y lo empírico del procedimiento.