Agencia Marketing Branding Google Workspace Deployment Services Credential Fe...
Como crear aplicaciones basadas en linked data usando lods pea kr
1. Parte 2: ¿Cómo crear
aplicaciones basadas en
Linked Data?
(Usando LODSPeaKr )
2. LODSPeaKr
• Framework para crear aplicaciones basadas en
Linked Data
• Permite publicación de datos en pocos minutos
• Simplifica la exploración de datos
• Permite crear APIs, webapps móviles, portales de
datos, etc.
• Requisito: Tener datos en un SPARQL endpoint
5. Instancias de una clase
LODSPeaKr lista todas las instancias
de una clase.
6. Exploración de una instancia
Cualquier recurso que sea
derreferenceable por LODSPeaKr es
desplegado como una tabla de triples
7. Módulos
• Existen varios módulos
• Al servir una URI, LODSPeaKr chequea en
orden cuál va a ser ejecutado, dependiendo
de distintas variables
• Sólo se ejecuta un por cada URI
8. Módulo: Type
• Principio: Todas las URIs del mismo tipo
debiesen ser servidas similarmente
• Ej: Todas las personas tienen apellido,
mientras que todos los computadores
tienen RAM
• Queremos mostrar a las personas de
manera uniforme, y no necesariamente
igual a los computadores
9. Módulo: Type (2)
• Cuando se pide una URI, LODSPeaKr busca
su rdf:type en triple store
• En base al tipo se pueden definir multiples
consultas SPARQL y templado de cómo
mostrar los datos (en HTML u otro)
• Si no tiene tipo, se asume rdfs:Resource
• Si una URI pertenece a más de una clase, se
puede establecer prioridad sobre
componentes y sólo se usa uno.
11. Módulo: Service
• Principio: Entregar información agregada
debiese ser fácil
• Service permite crear URIs que entreguen
información agregada (Ej. lista de personas
cuyo nombre empiece con “A”)
12. Módulo: Service (2)
• Si URI es un servicio, se ejecutan las
consultas definidas por el usuario
• Ej: “/classes” muestra todas las clases en
endpoint
• Service acepta argumentos en la URI de la
forma
/servicio/arg0/arg1/.../argn
14. Multiples formatos
• Usuario define qué y cómo entregar datos en HTML,
LODSPeaKr se encarga del resto usando Content Negotiation
• Reescritura de consultas SPARQL (SELECT ->
CONSTRUCT)
• RDF/XML, Turtle, N-Triples, RDF/JSON
• Es posible definir consultas para cada formato (pero es mala
idea)
• Es posible definir vistas para cada formato (pero es mala
idea, excepto JSON)
• Ej: Servir BIBTEX desde Linked Data
15. Otras características
• ¿Cómo usar URIs http://otrodominio/... en mi sitio http://
midominio/?
• LODSPeaKr provee espejado (mirroring) de URIs
• ¿Cómo usar multiples endpoints?
• LODSPeaKr permite ejecutar consultas SPARQL en
diferentes endpoints
• Es posible usar resultados intermedios en nuevas
consultas
• Templado basado en Haanga, similar a pseudo código
16. Conclusiones
• LODSPeaKr es un framework Open Source
con múltiples funcionalidades para crear
aplicaciones basadas en Linked Data
• Las cosas simples debiesen ser simples
• Publicar datos en 5 estrellas
• Las cosas difíciles debiesen ser posibles
• Módulos por tipos, servicios
• Templado por tipo, usando Haanga
• Multiples endpoints, múltiples formatos
17. Trabajo futuro
• Portar a Python (posiblemente)
• rdflib > ARC2
• Aplicaciones Read/Write
• Reusar aplicaciones
18. Ejemplos
http://lodspeakr.org
• Global Hunger Index:
• http://graves.cl/ghi
• Linking Open Government Data portal
• http://logd.tw.rpi.edu
• Farmers Market
• http://graves.cl/farmersmarket
• ESSI-LOD webapp
• http://aquarius.tw.rpi.edu/essi-lod/
20. Se pueden crear componentes para todas las instancias
de un clase (definida via rdf:type)
Bash
$ utils/lodspk.sh create type ex:Professor
components/
|
->types/
File directory
|
->ex:Professor/
|
->html.template
|
->queries/
|
->sp.query
|
->po.query