3.3. Servicio REST CRUD
4.3.5. Registro de Parada Frecuente
El proceso de registro de la Parada Frecuente, permite al usuario (estudiante) definir una parada actualmente existente como su preferida, pudiendo de la misma forma cambiarla las veces que se desee. Para ello se mostrarán todas las paradas existentes en el Store de tal manera que se podrá seleccionar la preferida
Cúmar Ramiro Cueva Tacuri 71
de forma gráfica. Anexo 9.10.5
La interfaz de la aplicación cliente puede ser encontrada en el
Anexo: 0
4.4.
Pruebas
El proceso de verificación para el funcionamiento del cliente y la consecuente interacción con el API REST será evaluado mediante casos de prueba que involucrarán todos los casos posibles así como las funciones existentes del cliente.
4.4.1.
CASO 1
Nombre: Cédula Incorrecta
Descripción: Se proporciona al sistema una cédula incorrecta ya sea esta no válida, incompleta o no numérica. Comprobando la reacción del cliente.
Aspectos a Validar: Respuesta del cliente a ingreso de datos erróneos
Datos:
cedula: 1245785612 | 4556 | 45A8
Resultados: Al ingresar una cédula inválida, incompleta o alfanumérica los datos son validados antes de llamar al servicio REST y se presenta un
e saje i di a do Debe ingresar una cédula válida . El e saje
puede ser apreciado en el Anexo 0
4.4.2.
CASO 2
Nombre: Cédula Correcta NO existente en el Store
Descripción: Se proporciona al sistema una cédula válida de un estudiante que no ha sido agregado al store.
Aspectos a Validar: Ingreso automático de estudiantes. Procesos de agregar Parada Frecuente y Vivienda por primera vez a un estudiante.
Datos:
Cúmar Ramiro Cueva Tacuri 72 Resultados: El ingresar una cédula válida pero no existente en el Store, hace que
exista la opción de agregarla al Store o no. En caso de ingresarla se podrá especificar tanto la posición de la vivienda como la Parada Frecuente en el mapa.
Los mensajes visualizados en estos procesos, así como las peticiones HTTP sobre el servicio REST pueden ser encontrados en el Anexo 5.8.2.
4.4.3.
CASO 3
Nombre: Cambiar Parada Frecuente y Vivienda
Descripción: Se proporciona al sistema una cédula válida de un estudiante existente en el Store, el mismo que posee ya definidas su Parada Frecuente y su Vivienda.
Aspectos a Validar: Carga de datos existentes. Cambio de Parada Frecuente y Cambio de Vivienda.
Datos:
cedula: 1104665623
Resultados: El proceso y mensajes presentados son similares a los visualizados al definir tanto la Parada Frecuente como Vivienda, por primera ocasión. Esto determina que el usuario no tenga que realizar procesos diferentes. Además, la aplicación refresca la localización de estas, cada vez que son cambiadas, lo que permite tener una interacción directa con la misma sin necesidad de recargar la página. Mayor detalle puede ser encontrado en el Anexo 5.8.3.
Cúmar Ramiro Cueva Tacuri 73
5.
DISCUSIÓN
La construcción de la plataforma POIS, ha permitido la integración de conceptos en una sola solución funcional según los principios de Linked Data. Lo que demuestra la posibilidad de acceso a datos públicos almacenados en un TripleStore desde un servicio REST.
Constituyendo, la creación del vocabulario, en una de las faces críticas del proyecto. Tanto por la importancia de cumplir con el propósito de representar diversos tipos de Puntos de Interés como de cumplir con el principio de reutilización. Luego del proceso de selección llegué a determinar que solamente se puede reutilizar un elemento de un vocabulario ya existente, como lo es Basic Geo, para la representación de un punto geográfico. Demostrando así, que no existe aún un vocabulario capaz de abarcar atributos de diversos puntos de interés, por su variada heterogeneidad.
De igual manera, el proceso de población del TripleStore en base a datos existentes y almacenados en un ambiente relacional, no requiere de la realización de cambios drásticos en la representación de información relacional para ser almacenada en tripletas. Es más, si la información no hubiera estado en un RDBMS, el proceso de población hubiera tomado más tiempo.
Además, el uso de REST para la interacción entre el cliente y el TripleStore permitió que se integren conceptos de clases e individuos, lo que permitió desarrollar un API acoplado al esquema del vocabulario RDF.
Un tema que requiere mayor análisis es la apertura al cliente de la modificación de los datos en el TripleStore, proceso de modificación que fue solventado con las ventajas de Sparql 1.1, esto debido a que si la información es pública la modificación no necesariamente debería serlo, en especial si la información es relativa a preferencias del usuario (parada frecuente). En el presente trabajo se ha utilizado una autenticación proporcionada por el TripleStore Virtuoso, para evitar la manipulación de información, que si bien resuelve el problema de modificación no autorizada, aún sigue siendo necesario el definir un esquema capaz de permitir el acceso a los datos de forma pública y la modificación de los mismos solo por sus creadores o personas con autorización.
Inconvenientes futuros también se han considerado, como el traslado del TripleStore a una nueva ubicación (cambio de dirección) lo que haría necesario una actualización de todas las aplicaciones que ya lo estén utilizando, solventando esto con la utilización de PURLs.
En definitiva puedo argumentar que el presente trabajo muestra la pauta necesaria para la publicación y consumo de datos según LOD, lo que permite una interacción eficaz con la web actual.
Cúmar Ramiro Cueva Tacuri 74
6.
CONCLUSIONES
Al término del presente trabajo investigativo puedo concluir que:
La construcción de la Plataforma POIS, basada en los principios de Linked Data, demuestra que el acceso y modificación de información localizada en el TripleStores semánticos puede ser realizada de forma transparente para el usuario final (cliente). Sin diferenciar la forma de almacenaje de la misma.
Dentro del proceso de construcción de un vocabulario para la representación de datos, este debe contener la mayor cantidad de elementos reutilizados de vocabularios existentes y ampliamente utilizados, lo que facilita el consumo e integración de estos datos. Uno de los principios de Linked Data.
El proceso de migración de datos actualmente almacenados en ambientes relacionales, es fácilmente transformado a un esquema semántico, considerando primero la equivalencia de relaciones y el significado de los datos en base al vocabulario RDF.
La organización de los datos en el TripleStore de acuerdo al vocabulario RDF, solo es eficaz cuando existe una definición previa y estandarizada de URIs que representarán los elementos, lo que facilita la localización de los mismos.
El uso de REST para el acceso a los datos en un TripleStore, resulta beneficioso puesto que tanto REST como el vocabulario, que define el almacenamiento de los datos, se basan en la definición de recursos (clases).
Sparql 1.1, también conocido como SPARUL permite completar el conjunto de operaciones CRUD que se pueden realizar sobre los grafos del TripleStore y evitar el uso de procesos asistidos.
Cúmar Ramiro Cueva Tacuri 75
7.
RECOMENDACIONES
Durante el proceso de elaboración del presente trabajo investigativo se ha extraído las siguientes recomendaciones:
Es necesario recomendar el uso de PURLs (direcciones URL permanentes) para todas aquellas direcciones que involucren difusión, siendo necesario la creación de las mismas en un servidor confiable.
Considerar siempre que si el valor almacenado como propiedad de una clase del vocabulario es una URL (dirección de una imagen en el caso de POIS), esta debe ser codificada para que no presente problemas al trabajar con navegadores.
Es recomendable validar cada uno de los componentes de la solución en base a los principios de Linked Data que se pudieren aplicar, puesto que esto contribuirá a que nuestros datos sean reutilizados.
Antes de realizar la publicación de datos, es recomendable considerar la clasificación que estos datos tienen para el propietario, puesto que algunos pueden considerarse datos personales que no podrán ser públicos.
Al publicar datos según LOD, se recomienda considerar el tema de modificación de los mismos en el caso que estos dependan de terceras personas (usuario final) como es el caso de la Plataforma POIS, para lo cual es necesario la utilización de un sistema de autentificación.
Cúmar Ramiro Cueva Tacuri 76
8.
BIBLIOGRAFÍA
[1] Miniwatts Marketing Group: Latin American Internet Usage Statistics. (2011) http://www.internetworldstats.com/stats15.htm.
[2] LinkedData.org: Linked Data. Connect Distributed Data across the Web. (2010) http://linkeddata.org/
[3] Wikipedia. Point of interest. (2011). Recuperado 22/02/2011. Disponible http://en.wikipedia.org/wiki/Point_of_interest
[4] W3C.org: Resource Description Framework (RDF). (2004) http://www.w3.org/RDF/ [5] W3C.org: RDF Vocabulary Description Language 1.0: RDF Schema. (2004)
http://www.w3.org/TR/rdf-schema/
[6] Berners-Lee, T.: Linked Data. (2006) http://www.w3.org/DesignIssues/LinkedData.html [7] WEC.org.: SPARQL Query Language for RDF. (2008). http://www.w3.org/TR/rdf-sparql-query/ [8] Wikipedia. SPARUL. (2010). http://en.wikipedia.org/wiki/SPARUL
[9]OpenLink. SPARUL -- an Update Language ForRDF Graphs. (2009) http://docs.openlinksw.com/virtuoso/sparqlextensions.html#rdfsparul [10] ARC. Easy RDF and SPARQL for LAMP systems. (2010) http://arc.semsol.org/ [11] W3C.org: Working Draft :SPARQL 1.1 Update. (14 Octubre 2010).
http://www.w3.org/TR/sparql11-update/
[12]OpenLink. Dbpedia Live Extraction. (2011) http://live.dbpedia.org/
[13] Max, B.: Context-aware Collaborative Creation of Semantic Points of Interest as Linked Data. Thesis, Programa de Grado de Informática, University of Koblenz-Landau. (2009)
[14] Hegde, V. (febrero 2011). POIs in Semantic Web. Ponencia en el International AR Standards Meeting, Barcelona, España
[15] LinkedDataTools. Introducing RDF/XML. (2010) http://www.linkeddatatools.com/introducing- rdf-part-2
[16] INKDROID. The 5 Stars of Open Linked Data. (2010)
http://inkdroid.org/journal/2010/06/04/the-5-stars-of-open-linked-data/
[17] Stadler, C. Martin, M. Lehmann, J. Hellmann, S.: Update Strategies for DBpedia Live. Departamento de Informática, Universidad Leipzig (Alemania)
Cúmar Ramiro Cueva Tacuri 77
[18]Bizer, C., Heath, T., Berners-Lee, T. Linked Data - The Story so Far. Paper presentado en: Heath, T., Hepp, M., and Bizer, C. (eds.). Special Issue on Linked Data, International Journal on Semantic Web and Information Systems (IJSWIS). http://linkeddata.org/docs/ijswis-special- issue
[19] Davis, I.: An Introduction to RDF. (2005) http://research.talis.com/2005/rdf-intro [20] Lamarca, M.: RDF. (2009) http://www.hipertexto.info/documentos/rdf.htm
[21] Gómez, A.: La web de datos enlazados (Web of Linked Data). (2010). Ontología Grupo de Ingeniería, Universidad Politécnica de Madrid. http://www.web-mix.ws/pyme/2010/06/la- web-de-datos-enlazados-web-of-linked-data/
[22] W3C.org.: Guía Breve de Linked Data. (2010)
http://www.w3c.es/divulgacion/guiasbreves/LinkedData [23] Wisman, M.: Bringing Linked Data to the Geo World. (2009)
http://blog.safe.com/2009/07/bringing-linked-data-to-the-geo-world/
[24]W3C.org. Data Model. (2010). http://www.w3.org/2010/POI/wiki/Data_Model [25]W3C.org. Cool URIs for the Semantic Web. (2008). http://www.w3.org/TR/cooluris/ [26] data.gov.uk - Opening up government. Creating URIs. http://data.gov.uk/resources/uris [27] Drummond, Nick. OWLDoc - Plugin for Protégé. The University of Manchester.
http://code.google.com/p/co-ode-owl-plugins/wiki/OWLDoc [28] Purlz.org. PURLs in the Wild. http://www.purlz.org/purls-in-the-wild
[29] Fielding T, Roy.: Architectural Styles and the Design of Network-based Software Architectures. UNIVERSITY OF CALIFORNIA, IRVINE. (2000).
http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm. [30] Wright, Jacob: Simple REST server in PHP – Supports JSON & AMF.
http://jacwright.com/250/simple-rest-server-in-php-supports-json-amf/ [31] SourceForge: Quality Criteria for Linked Data sources.
http://sourceforge.net/apps/mediawiki/trdf/index.php?title=Quality_Criteria_for_Linked_Dat a_sources. (2010)
Cúmar Ramiro Cueva Tacuri 78
Cúmar Ramiro Cueva Tacuri 79
Cúmar Ramiro Cueva Tacuri 80