SlideShare una empresa de Scribd logo
1 de 42
Descargar para leer sin conexión
INICIATIVA BARCELONA OPEN DATA
EL VALOR D’OBRIR LES DADES
Utilización automatizada de
fuentes de datos públicas (I)
curso 2.8
Docents: Victor Pascual
OBJETIVO DE LA SESIÓN
● Al final de la sesión seréis capaces de:
1. Conocer que es una plataforma para publicación y gestión de
Open Data
2. Conocer el concepto de API
3. Conocer principales capacidades de las APIS de SOCRATA,
OpenDataSoft y CKAN
4. Conocer como poder empezar a utilizar algunas herramientas API
de CKAN
Introducir a los participantes en el conocimiento de las principals
plataformas de publicación de datos abiertas y sus APIs.
1. ¿Qué es una API y para qué
sirve?
Actividad Inicial
Tiempo: 5 minutos
¿Sabéis que es una API?
¿Habéis utilizado alguna?
Explicad vuestras experiencias..
(y así nos conocemos)
In computer programming, an application programming interface (API) is a set of
subroutine definitions, protocols, and tools for building application software. ( ….)
An API may be for a web-based system, operating system, database system,
computer hardware, or software library. An API specification can take many forms, but
often includes specifications for routines, data structures, object classes, variables, or
remote calls.
Documentation for the API is usually provided to facilitate usage
Fuente: https://en.wikipedia.org/wiki/Application_programming_interface
API- Application Programming Interface
In computer programming, an application programming interface (API) is a set of
subroutine definitions, protocols, and tools for building application software. ( ….)
An API may be for a web-based system, operating system, database system,
computer hardware, or software library. An API specification can take many forms, but
often includes specifications for routines, data structures, object classes, variables, or
remote calls.
Documentation for the API is usually provided to facilitate usage
API Doc Reference
Documentación de
Request
Response
Direcciones web HTTP
HTTP GET / POST
Entorno WEB o APP Híbridas
o Browser
o HTML
o JavaScript
o CSS
API- Application Programming Interface
API basadas en WEB utilizan HTTP cómo protocolo de
comunicación
The Hypertext Transfer Protocol (HTTP) is designed to enable communications
between clients and servers.
HTTP works as a request-response protocol between a client and server.
A web browser may be the client, and an application on a computer that hosts a web site
may be the server.
Example: A client (browser) submits an HTTP request to the server; then the server returns a
response to the client. The response contains status information about the request and may
also contain the requested content
Fuente: http://www.w3schools.com/Tags/ref_httpmethods.asp
El protocolo HTTP tiene diferentes metodos
de interrogación / inserción
• GET
• POST
• UPDATE
• DELETE
• INSERT
HTTP – GET es el más utilizado en APIs web
Tipos de Peticiones HTTP- GET
http://midominio.com/servidor/enpoint?parametro1=valor1&parametro2=valor=2
KvP : (Key value Pair) Después ? Pasamos parámetro = valor y concatenamos con &
http://midominio.com/servidor/recurso.json
RESTful : La URL define el recurso, dentro de una arquitectura REST
http://midominio.com/servidor/recurso.json?parametro1=valor1
RESTful and KvP : La URL define el recurso, pero podemos filtrar recurso con
parámetros
Utilizada en APIs
Opendata
Activitat individual, temps: 5 minutos
Actividad
Visitamos
https://www.programmableweb.com
Tipos de Respuestas HTTP- GET
Basados en XML (Máquina –Máquina)
RDF stands for Resource Description Framework (RDF –XML)
<?xml version="1.0"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">
<rdf:Description
rdf:about="http://www.recshop.fake/cd/Empire Burlesque">
<cd:artist>Bob Dylan</cd:artist>
<cd:country>USA</cd:country>
<cd:company>Columbia</cd:company>
<cd:price>10.90</cd:price>
<cd:year>1985</cd:year>
</rdf:Description>
<rdf:Description
rdf:about="http://www.recshop.fake/cd/Hide your heart">
<cd:artist>Bonnie Tyler</cd:artist>
<cd:country>UK</cd:country>
<cd:company>CBS Records</cd:company>
<cd:price>9.90</cd:price>
<cd:year>1988</cd:year>
</rdf:Description>
</rdf:RDF>
Tipos de Respuestas HTTP- GET
XML esquema propio (Ejemplo SODA Socrata API)
Basados en XML (Máquina –Máquina)
<response>
<row>
<row _id="554" _uuid="350CEBF4-DCDE-420C-A51A-F21BF541A843"
_position="554" _address="http://open.whitehouse.gov/resource/nmc8-q2uj/554">
<name>Aaron, Henry Jacob</name>
<position_title>Member (Designated Chairman)</position_title>
<agency_name>Social Security Advisory Board</agency_name>
<agency_website description="SSAB" url="http://www.ssab.gov"/>
<nomination_date>2014-01-06T00:00:00</nomination_date>
<renomination>true</renomination>
<confirmation_vote>2014-09-08T00:00:00</confirmation_vote>
<confirmed>true</confirmed>
<holdover>false</holdover>
</row>
</row>
</response>
Tipos de Respuestas HTTP- GET
Basados en JSON (Máquina – Web)
JavaScript Object Notation, is an open standard format that uses human-readable text to transmit data
objects consisting of attribute–value pairs. It is used primarily to transmit data between a server and web
application, as an alternative to XML.
{
"help": "...",
"result": [
"data-explorer",
"department-of-ricky",
"geo-examples",
"geothermal-data",
"reykjavik",
"skeenawild-conservation-trust"
],
"success": true
}
Tipos de Respuestas HTTP- GET
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [125.6, 10.1]
},
"properties": {
"name": "Dinagat Islands"
}
}
GeoJSON : Formato “estándar” para estructurar datos geográficos en JSON
Tipos de Respuestas HTTP- GET
JSON es cada vez más utilizado cómo formato de respuesta ya que es directamente integrable en WEB !!
La técnica de JSONP permite integrar contenido JSON directo entre dominios diferenctes
POR QUE JSON?
JSON se integra directamente en
web, por esa razon se va utilizando
cada vez más en las APIS
Plataformas para publicación y
gestión de Open Data
Contexto
Las nuevas Plataformas de publicación OpenData equilibran la barra entre los
esfuerzos entre representar/exponer y consumir/reutilizar.
Arquitectura Plataformas de publicación
Back-End
Modelo i estructura
BBDD
Un portal de un cliente
puede:
Residir en la nube
En servidores proveedor
En servidores cliente
Estructura Front-End (web)
Generación de portales
Herramientas gestión interna
de datos
Herramientas visualizaciones
de datos.
Plugins, ejemplo para
Geodatos
API
Portal global
Agregador de portales
¿Puedo desarrollar nuevos
Plugins para las
Plataformas?
¿Podría crear una API de
APIs?
Las Plataformas deberían permitir:
• A usuarios no expertos publicar, mantener y gestionar su
información de forma rápida y dentro de su flujo diario de
trabajo.
• Visualizar e interpretar esa información.
• Publicar de forma estructurada la información en abierto ,
acceso a terceros.
• Exponer la información en forma de API. Posibilidad de crear
nueva aplicaciones.
Mejora la gestión interna de un organismo con datos públicos
Facilita la reutilización de los datos via API
Facilita la comprensión y lectura de los datos: tablas, gráficos, mapas
VAMOS INTRODUCIRNOS EN 3 PLATAFORMAS ...
● Socrata
● OpenDatasoft
● Ckan
Sede: Seattle, Washington, USA
Fundada: 2007
Modelo negocio:
Software-as-a-Service bajo
licencia.
API y SDK’s (acceso a datos)
OpenSource.
Socrata is a company that provides cloud-based data visualization and analysis tools for opening government
data. Originally called Blist, Socrata was founded in February 2007. Socrata targets non-technical Internet users
who want to view and share government, healthcare, energy, education, or environment data. Its products are
issued under a proprietary, closed, exclusive license
Fuente: https://en.wikipedia.org/wiki/Socrata
Socrata
Actividad
Visitamos
https://socrata.com/
https://socrata.com/solutions/publica-open-data-
cloud/
https://github.com/socrata
Activitat individual, temps: 5 minutos
SOCRATA : Portal global
https://www.opendatanetwork.com/
https://socrata.com/blog/socrata-introduces-open-data-ne
twork/
SOCRATA APIs:
• DISCOVERY API
• API (SODA)
https://dev.socrata.com/consumers/getting-started.html
http://docs.socratadiscovery.apiary.io/
OPENDATASOFT
Sede: Paris, Fr
Fundada: 2011
Modelo negocio:
Software-as-a-Service bajo
licencia.
API y SDK’s (acceso a datos)
OpenSource
Gratuito para “nonprofit” y ONG
OpenDataSoft is a private software company specialized in transforming structured data into API and
visualizations. Founded in 2011, OpenDataSoft targets non-technical users who wish to share and visualize
government, health, energy and environmental data.
OpenDataSoft allows restricted and open sharing ecosystems like open data portals.
Fuente: https://en.wikipedia.org/wiki/opendatasoft
Actividad
Visitamos
https://www.opendatasoft.com/
https://www.opendatasoft.com/open-data-soluti
ons/
https://github.com/opendatasoft
Activitat individual, temps: 5 minutos
OPENDATASOFT :Portal Global global
https://public.opendatasoft.com/explore/?sort=modified/
OPENDATASOFT : API
https://public.opendatasoft.com/api/v1/console/datasets/1.0/search/
CKAN
Sede: Cambrigde, UK
Fundación : 2004
Modelo negocio:
Fundación Open Knowledge
International
Todo OpenSource pero también
ofrecen servicio (de pago) de
Hosting.
Open Knowledge International (OKI) (known as the Open Knowledge Foundation (OKF) until April 2014,[2] then
Open Knowledge until May 2016[3]) is a global non-profit network that promotes and shares information at no
charge, including both content and data.[4] It was founded by Rufus Pollock on 24 May 2004[5] in Cambridge,
UK.
Fuente: https://en.wikipedia.org/wiki/Open_Knowledge_International
Actividad
Visitamos
https://ckan.org
https://github.com/ckan/ckan
https://datahub.io
Activitat individual, temps: 5 minutos
CKAN : Portal global
http://dataportals.org/
https://datahub.io/
CKAN : API
http://docs.ckan.org/en/latest/api/index.html
CKAN : API NIVELES
GLOBAL “API”:
http://dataportals.org/api/data.json/
Domain “API”:
http://demo.ckan.org/api/3/action/package_search?q=museu
http://opendata-ajuntament.barcelona.cat/data/api/3/action/package_search?q=museu
http://demo.ckan.org/api/3/action/resource_search?query=description:Museu
http://opendata-ajuntament.barcelona.cat/data/api/3/action/resource_search?query=descripti
on:barri
Dataset “API”: (FileStore y DataStore):
Create http://demo.ckan.org/api/action/datastore_create
Update / Insert http://demo.ckan.org/api/action/datastore_upsert
Query http://demo.ckan.org/api/action/datastore_search
Query (via SQL) http://demo.ckan.org/api/action/datastore_search_sql
Prácticas con CKAN API
Activitat individual, temps: 40 minutos
Actividad
Visitamos y no registramos
en:
http://demo.ckan.org/
Descargamos archivo
http://demo.ckan.org/datastore/dump/71e8b
80f-5273-4016-8212-0371c0532c7c.csv
Cargamos este archivo en nuestro
proyecto de CKAN
Test
¿Cuál es nuestra API KEY?
¿Cuál es el ID de nuestro
Dataset?
¿Cuáles son los End Points
de la API CKAN?
Query
Query example (first 5 results)
http://demo.ckan.org/api/action/datastore_search?resource_id=71e8
b80f-5273-4016-8212-0371c0532c7c&limit=5
Query example (results containing 'jones')
http://demo.ckan.org/api/action/datastore_search?resource_id=71e8
b80f-5273-4016-8212-0371c0532c7c&q=jones
Query example (via SQL statement)
http://demo.ckan.org/api/action/datastore_search_sql?sql=SELECT *
from "71e8b80f-5273-4016-8212-0371c0532c7c"
Actividad
Vamos Practicar!!
Descargamos proyecto
ckan_samples
https://github.com/sfggeogis/ckan_samples
Conclusiones
❑ CKAN es OpenSource
❑ Puedo instalarlo en mi servidor o utilizar
datahub.io
❑ Puedo automatizar la gestión de datasets
❑ Todos los Datasets están expuestos via
API

Más contenido relacionado

Similar a Barcelona Open Data Iniciativa

Act1 tecnologiaweb uni1
Act1 tecnologiaweb uni1Act1 tecnologiaweb uni1
Act1 tecnologiaweb uni1fanyto
 
aplicaciones_web_advantage_multimedia.ppt
aplicaciones_web_advantage_multimedia.pptaplicaciones_web_advantage_multimedia.ppt
aplicaciones_web_advantage_multimedia.pptssuser948499
 
aplicaciones_web_advantage_multimedia.ppt
aplicaciones_web_advantage_multimedia.pptaplicaciones_web_advantage_multimedia.ppt
aplicaciones_web_advantage_multimedia.pptssuser948499
 
Presentación html5
Presentación html5Presentación html5
Presentación html5aydimdagam
 
Desarrollando un API con REST
Desarrollando un API con RESTDesarrollando un API con REST
Desarrollando un API con RESTAlex Puig
 
Balotario resuelto
Balotario resueltoBalotario resuelto
Balotario resueltoAlexiToxD
 
Aplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las CosasAplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las CosasJavier García Puga
 
Medallo Bloguero 16/05/07
Medallo Bloguero   16/05/07Medallo Bloguero   16/05/07
Medallo Bloguero 16/05/07Jorge Montoya
 
Kumbia PHP Framework - Inicios, Presente y Futuro
Kumbia PHP Framework - Inicios, Presente y FuturoKumbia PHP Framework - Inicios, Presente y Futuro
Kumbia PHP Framework - Inicios, Presente y FuturoDeivinson Tejeda
 
Estrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepointEstrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepointDaniel Laco
 
Programacion web java
Programacion web javaProgramacion web java
Programacion web javaCésar Ocampo
 

Similar a Barcelona Open Data Iniciativa (20)

Examen Profesional 1
Examen Profesional 1Examen Profesional 1
Examen Profesional 1
 
Repositorio
RepositorioRepositorio
Repositorio
 
Act1 tecnologiaweb uni1
Act1 tecnologiaweb uni1Act1 tecnologiaweb uni1
Act1 tecnologiaweb uni1
 
aplicaciones_web_advantage_multimedia.ppt
aplicaciones_web_advantage_multimedia.pptaplicaciones_web_advantage_multimedia.ppt
aplicaciones_web_advantage_multimedia.ppt
 
aplicaciones_web_advantage_multimedia.ppt
aplicaciones_web_advantage_multimedia.pptaplicaciones_web_advantage_multimedia.ppt
aplicaciones_web_advantage_multimedia.ppt
 
Capitulo1
Capitulo1Capitulo1
Capitulo1
 
Capitulo1
Capitulo1Capitulo1
Capitulo1
 
Taller de arquitectura web
Taller de arquitectura webTaller de arquitectura web
Taller de arquitectura web
 
Glosariosaurio 2
Glosariosaurio 2Glosariosaurio 2
Glosariosaurio 2
 
Presentación html5
Presentación html5Presentación html5
Presentación html5
 
Introducción a la Web Semántica
Introducción a la Web SemánticaIntroducción a la Web Semántica
Introducción a la Web Semántica
 
Desarrollando un API con REST
Desarrollando un API con RESTDesarrollando un API con REST
Desarrollando un API con REST
 
T final modulo_1
T final modulo_1T final modulo_1
T final modulo_1
 
Internet Explorer.R
Internet Explorer.RInternet Explorer.R
Internet Explorer.R
 
Balotario resuelto
Balotario resueltoBalotario resuelto
Balotario resuelto
 
Aplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las CosasAplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las Cosas
 
Medallo Bloguero 16/05/07
Medallo Bloguero   16/05/07Medallo Bloguero   16/05/07
Medallo Bloguero 16/05/07
 
Kumbia PHP Framework - Inicios, Presente y Futuro
Kumbia PHP Framework - Inicios, Presente y FuturoKumbia PHP Framework - Inicios, Presente y Futuro
Kumbia PHP Framework - Inicios, Presente y Futuro
 
Estrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepointEstrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepoint
 
Programacion web java
Programacion web javaProgramacion web java
Programacion web java
 

Más de Iniciativa Barcelona Open Data

Presentació Programa Acadèmic FormacióxDonesxBarris
Presentació Programa Acadèmic FormacióxDonesxBarrisPresentació Programa Acadèmic FormacióxDonesxBarris
Presentació Programa Acadèmic FormacióxDonesxBarrisIniciativa Barcelona Open Data
 
Lourdes m iguel_workshop final de temporada open_datalab tarragona 20200702_sc
Lourdes m iguel_workshop final de temporada open_datalab tarragona 20200702_scLourdes m iguel_workshop final de temporada open_datalab tarragona 20200702_sc
Lourdes m iguel_workshop final de temporada open_datalab tarragona 20200702_scIniciativa Barcelona Open Data
 
Isadora Christel Jiménez i el Valor de les Dades Obertes per als projectes so...
Isadora Christel Jiménez i el Valor de les Dades Obertes per als projectes so...Isadora Christel Jiménez i el Valor de les Dades Obertes per als projectes so...
Isadora Christel Jiménez i el Valor de les Dades Obertes per als projectes so...Iniciativa Barcelona Open Data
 
Workshop Aplicar reutilizacion datos abiertos ambito Social. Alejandro Llorente
Workshop Aplicar reutilizacion datos abiertos ambito Social. Alejandro LlorenteWorkshop Aplicar reutilizacion datos abiertos ambito Social. Alejandro Llorente
Workshop Aplicar reutilizacion datos abiertos ambito Social. Alejandro LlorenteIniciativa Barcelona Open Data
 
Les dades obertes per innovar en la Sociologia i en l'anàlisi de la realitat'
Les dades obertes per innovar en la Sociologia i en l'anàlisi de la realitat'Les dades obertes per innovar en la Sociologia i en l'anàlisi de la realitat'
Les dades obertes per innovar en la Sociologia i en l'anàlisi de la realitat'Iniciativa Barcelona Open Data
 
Jornada Divulgativa per Empreses: Les dades obertes, un valor pel meu projecte
Jornada Divulgativa per Empreses: Les dades obertes, un valor pel meu projecteJornada Divulgativa per Empreses: Les dades obertes, un valor pel meu projecte
Jornada Divulgativa per Empreses: Les dades obertes, un valor pel meu projecteIniciativa Barcelona Open Data
 

Más de Iniciativa Barcelona Open Data (20)

Presentació Programa Acadèmic FormacióxDonesxBarris
Presentació Programa Acadèmic FormacióxDonesxBarrisPresentació Programa Acadèmic FormacióxDonesxBarris
Presentació Programa Acadèmic FormacióxDonesxBarris
 
Programa Acadèmic FormacióxDonesxBarris
Programa Acadèmic FormacióxDonesxBarrisPrograma Acadèmic FormacióxDonesxBarris
Programa Acadèmic FormacióxDonesxBarris
 
Presentacions DATAVIZ La tecnòloga .pdf
Presentacions DATAVIZ La tecnòloga .pdfPresentacions DATAVIZ La tecnòloga .pdf
Presentacions DATAVIZ La tecnòloga .pdf
 
Datos x Comercio
Datos x ComercioDatos x Comercio
Datos x Comercio
 
OpenDataDay2022_IgnasiServià
OpenDataDay2022_IgnasiServiàOpenDataDay2022_IgnasiServià
OpenDataDay2022_IgnasiServià
 
OpenDataDay2022_SusanaGil
OpenDataDay2022_SusanaGilOpenDataDay2022_SusanaGil
OpenDataDay2022_SusanaGil
 
OpenDataDay2022_KarmaPeiro
OpenDataDay2022_KarmaPeiroOpenDataDay2022_KarmaPeiro
OpenDataDay2022_KarmaPeiro
 
OpenDataDay2022_OriolRoselló
OpenDataDay2022_OriolRosellóOpenDataDay2022_OriolRoselló
OpenDataDay2022_OriolRoselló
 
OpenDataDay2022_PepBudi
OpenDataDay2022_PepBudiOpenDataDay2022_PepBudi
OpenDataDay2022_PepBudi
 
OpenDataDay2022_XescaSerra
OpenDataDay2022_XescaSerraOpenDataDay2022_XescaSerra
OpenDataDay2022_XescaSerra
 
Presentació projecte Dades x Comerç
Presentació projecte Dades x ComerçPresentació projecte Dades x Comerç
Presentació projecte Dades x Comerç
 
Roberto Fraile - Proyecto LORD
Roberto Fraile - Proyecto LORDRoberto Fraile - Proyecto LORD
Roberto Fraile - Proyecto LORD
 
Maria Quiles - Inteligencia Artificial Industrial
Maria Quiles - Inteligencia Artificial IndustrialMaria Quiles - Inteligencia Artificial Industrial
Maria Quiles - Inteligencia Artificial Industrial
 
Pol Colomer - Caso de uso Reby
Pol Colomer - Caso de uso RebyPol Colomer - Caso de uso Reby
Pol Colomer - Caso de uso Reby
 
Juantomás - Unir PDP en Inteligencia Artificial 2020
Juantomás - Unir PDP en Inteligencia Artificial 2020Juantomás - Unir PDP en Inteligencia Artificial 2020
Juantomás - Unir PDP en Inteligencia Artificial 2020
 
Lourdes m iguel_workshop final de temporada open_datalab tarragona 20200702_sc
Lourdes m iguel_workshop final de temporada open_datalab tarragona 20200702_scLourdes m iguel_workshop final de temporada open_datalab tarragona 20200702_sc
Lourdes m iguel_workshop final de temporada open_datalab tarragona 20200702_sc
 
Isadora Christel Jiménez i el Valor de les Dades Obertes per als projectes so...
Isadora Christel Jiménez i el Valor de les Dades Obertes per als projectes so...Isadora Christel Jiménez i el Valor de les Dades Obertes per als projectes so...
Isadora Christel Jiménez i el Valor de les Dades Obertes per als projectes so...
 
Workshop Aplicar reutilizacion datos abiertos ambito Social. Alejandro Llorente
Workshop Aplicar reutilizacion datos abiertos ambito Social. Alejandro LlorenteWorkshop Aplicar reutilizacion datos abiertos ambito Social. Alejandro Llorente
Workshop Aplicar reutilizacion datos abiertos ambito Social. Alejandro Llorente
 
Les dades obertes per innovar en la Sociologia i en l'anàlisi de la realitat'
Les dades obertes per innovar en la Sociologia i en l'anàlisi de la realitat'Les dades obertes per innovar en la Sociologia i en l'anàlisi de la realitat'
Les dades obertes per innovar en la Sociologia i en l'anàlisi de la realitat'
 
Jornada Divulgativa per Empreses: Les dades obertes, un valor pel meu projecte
Jornada Divulgativa per Empreses: Les dades obertes, un valor pel meu projecteJornada Divulgativa per Empreses: Les dades obertes, un valor pel meu projecte
Jornada Divulgativa per Empreses: Les dades obertes, un valor pel meu projecte
 

Último

Módulo mapa de riesgos de tienda de abarrotes
Módulo mapa de riesgos de tienda de abarrotesMódulo mapa de riesgos de tienda de abarrotes
Módulo mapa de riesgos de tienda de abarrotessald071205mmcnrna9
 
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfREPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfIrapuatoCmovamos
 
DIPLOMA DE CERTIFICADO EQQW_removed.pptx
DIPLOMA DE CERTIFICADO EQQW_removed.pptxDIPLOMA DE CERTIFICADO EQQW_removed.pptx
DIPLOMA DE CERTIFICADO EQQW_removed.pptxKaterin yanac tello
 
tipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicacióntipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicaciónJonathanAntonioMaldo
 
Mapa de riesgos de un taller mecánico 405
Mapa de riesgos de un taller mecánico 405Mapa de riesgos de un taller mecánico 405
Mapa de riesgos de un taller mecánico 405rodrimarxim
 
HABILESASAMBLEA Para negocios independientes.pdf
HABILESASAMBLEA Para negocios independientes.pdfHABILESASAMBLEA Para negocios independientes.pdf
HABILESASAMBLEA Para negocios independientes.pdfGEINER22
 
que son los planes de ordenamiento predial POP.pptx
que son los planes de ordenamiento predial  POP.pptxque son los planes de ordenamiento predial  POP.pptx
que son los planes de ordenamiento predial POP.pptxSergiothaine2
 
El sistema solar el gran descubrimiento del sistema solar .pptx
El sistema solar el gran descubrimiento del sistema solar .pptxEl sistema solar el gran descubrimiento del sistema solar .pptx
El sistema solar el gran descubrimiento del sistema solar .pptxYoladsCabarcasTous
 
Presentación informe 'Fondos Next Generation European Union destinados a actu...
Presentación informe 'Fondos Next Generation European Union destinados a actu...Presentación informe 'Fondos Next Generation European Union destinados a actu...
Presentación informe 'Fondos Next Generation European Union destinados a actu...Ivie
 
La importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresaLa importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresamerca6
 
PREGUNTA K DE LA CONSULTA POPULAR 21 DE ABRIL
PREGUNTA K DE LA CONSULTA POPULAR 21 DE ABRILPREGUNTA K DE LA CONSULTA POPULAR 21 DE ABRIL
PREGUNTA K DE LA CONSULTA POPULAR 21 DE ABRILeluniversocom
 
PREGUNTA J DE CONSULTA POPULAR 21 DE ABRIL
PREGUNTA J DE CONSULTA POPULAR 21 DE ABRILPREGUNTA J DE CONSULTA POPULAR 21 DE ABRIL
PREGUNTA J DE CONSULTA POPULAR 21 DE ABRILeluniversocom
 
Niveles de organización biologica clase de biologia
Niveles de organización biologica clase de biologiaNiveles de organización biologica clase de biologia
Niveles de organización biologica clase de biologiatongailustraconcienc
 
Análisis de un mapa de riesgos de una tortillería
Análisis de un mapa de riesgos de una tortillería Análisis de un mapa de riesgos de una tortillería
Análisis de un mapa de riesgos de una tortillería yocelynsanchezerasmo
 
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfREPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfIrapuatoCmovamos
 
2024 2024 202420242024PPT SESIÓN 03.pptx
2024 2024 202420242024PPT SESIÓN 03.pptx2024 2024 202420242024PPT SESIÓN 03.pptx
2024 2024 202420242024PPT SESIÓN 03.pptxccordovato
 
Croquis de riesgo de trabajo gasolinera.pdf
Croquis de riesgo de trabajo gasolinera.pdfCroquis de riesgo de trabajo gasolinera.pdf
Croquis de riesgo de trabajo gasolinera.pdfhernestosoto82
 
CUESTIONARIO A ADICCION A REDES SOCIALES.pdf
CUESTIONARIO A ADICCION A REDES SOCIALES.pdfCUESTIONARIO A ADICCION A REDES SOCIALES.pdf
CUESTIONARIO A ADICCION A REDES SOCIALES.pdfEDUARDO MAMANI MAMANI
 
ESTUDIO DE IMPACTO AMBIENTAL de explotación minera.pptx
ESTUDIO DE IMPACTO AMBIENTAL de  explotación minera.pptxESTUDIO DE IMPACTO AMBIENTAL de  explotación minera.pptx
ESTUDIO DE IMPACTO AMBIENTAL de explotación minera.pptxKatherineFabianLoza1
 
17 PRACTICAS - MODALIDAAD FAMILIAAR.docx
17 PRACTICAS - MODALIDAAD FAMILIAAR.docx17 PRACTICAS - MODALIDAAD FAMILIAAR.docx
17 PRACTICAS - MODALIDAAD FAMILIAAR.docxmarthaarroyo16
 

Último (20)

Módulo mapa de riesgos de tienda de abarrotes
Módulo mapa de riesgos de tienda de abarrotesMódulo mapa de riesgos de tienda de abarrotes
Módulo mapa de riesgos de tienda de abarrotes
 
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfREPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
 
DIPLOMA DE CERTIFICADO EQQW_removed.pptx
DIPLOMA DE CERTIFICADO EQQW_removed.pptxDIPLOMA DE CERTIFICADO EQQW_removed.pptx
DIPLOMA DE CERTIFICADO EQQW_removed.pptx
 
tipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicacióntipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicación
 
Mapa de riesgos de un taller mecánico 405
Mapa de riesgos de un taller mecánico 405Mapa de riesgos de un taller mecánico 405
Mapa de riesgos de un taller mecánico 405
 
HABILESASAMBLEA Para negocios independientes.pdf
HABILESASAMBLEA Para negocios independientes.pdfHABILESASAMBLEA Para negocios independientes.pdf
HABILESASAMBLEA Para negocios independientes.pdf
 
que son los planes de ordenamiento predial POP.pptx
que son los planes de ordenamiento predial  POP.pptxque son los planes de ordenamiento predial  POP.pptx
que son los planes de ordenamiento predial POP.pptx
 
El sistema solar el gran descubrimiento del sistema solar .pptx
El sistema solar el gran descubrimiento del sistema solar .pptxEl sistema solar el gran descubrimiento del sistema solar .pptx
El sistema solar el gran descubrimiento del sistema solar .pptx
 
Presentación informe 'Fondos Next Generation European Union destinados a actu...
Presentación informe 'Fondos Next Generation European Union destinados a actu...Presentación informe 'Fondos Next Generation European Union destinados a actu...
Presentación informe 'Fondos Next Generation European Union destinados a actu...
 
La importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresaLa importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresa
 
PREGUNTA K DE LA CONSULTA POPULAR 21 DE ABRIL
PREGUNTA K DE LA CONSULTA POPULAR 21 DE ABRILPREGUNTA K DE LA CONSULTA POPULAR 21 DE ABRIL
PREGUNTA K DE LA CONSULTA POPULAR 21 DE ABRIL
 
PREGUNTA J DE CONSULTA POPULAR 21 DE ABRIL
PREGUNTA J DE CONSULTA POPULAR 21 DE ABRILPREGUNTA J DE CONSULTA POPULAR 21 DE ABRIL
PREGUNTA J DE CONSULTA POPULAR 21 DE ABRIL
 
Niveles de organización biologica clase de biologia
Niveles de organización biologica clase de biologiaNiveles de organización biologica clase de biologia
Niveles de organización biologica clase de biologia
 
Análisis de un mapa de riesgos de una tortillería
Análisis de un mapa de riesgos de una tortillería Análisis de un mapa de riesgos de una tortillería
Análisis de un mapa de riesgos de una tortillería
 
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfREPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
 
2024 2024 202420242024PPT SESIÓN 03.pptx
2024 2024 202420242024PPT SESIÓN 03.pptx2024 2024 202420242024PPT SESIÓN 03.pptx
2024 2024 202420242024PPT SESIÓN 03.pptx
 
Croquis de riesgo de trabajo gasolinera.pdf
Croquis de riesgo de trabajo gasolinera.pdfCroquis de riesgo de trabajo gasolinera.pdf
Croquis de riesgo de trabajo gasolinera.pdf
 
CUESTIONARIO A ADICCION A REDES SOCIALES.pdf
CUESTIONARIO A ADICCION A REDES SOCIALES.pdfCUESTIONARIO A ADICCION A REDES SOCIALES.pdf
CUESTIONARIO A ADICCION A REDES SOCIALES.pdf
 
ESTUDIO DE IMPACTO AMBIENTAL de explotación minera.pptx
ESTUDIO DE IMPACTO AMBIENTAL de  explotación minera.pptxESTUDIO DE IMPACTO AMBIENTAL de  explotación minera.pptx
ESTUDIO DE IMPACTO AMBIENTAL de explotación minera.pptx
 
17 PRACTICAS - MODALIDAAD FAMILIAAR.docx
17 PRACTICAS - MODALIDAAD FAMILIAAR.docx17 PRACTICAS - MODALIDAAD FAMILIAAR.docx
17 PRACTICAS - MODALIDAAD FAMILIAAR.docx
 

Barcelona Open Data Iniciativa

  • 1. INICIATIVA BARCELONA OPEN DATA EL VALOR D’OBRIR LES DADES Utilización automatizada de fuentes de datos públicas (I) curso 2.8 Docents: Victor Pascual
  • 2. OBJETIVO DE LA SESIÓN ● Al final de la sesión seréis capaces de: 1. Conocer que es una plataforma para publicación y gestión de Open Data 2. Conocer el concepto de API 3. Conocer principales capacidades de las APIS de SOCRATA, OpenDataSoft y CKAN 4. Conocer como poder empezar a utilizar algunas herramientas API de CKAN Introducir a los participantes en el conocimiento de las principals plataformas de publicación de datos abiertas y sus APIs.
  • 3. 1. ¿Qué es una API y para qué sirve?
  • 4. Actividad Inicial Tiempo: 5 minutos ¿Sabéis que es una API? ¿Habéis utilizado alguna? Explicad vuestras experiencias.. (y así nos conocemos)
  • 5. In computer programming, an application programming interface (API) is a set of subroutine definitions, protocols, and tools for building application software. ( ….) An API may be for a web-based system, operating system, database system, computer hardware, or software library. An API specification can take many forms, but often includes specifications for routines, data structures, object classes, variables, or remote calls. Documentation for the API is usually provided to facilitate usage Fuente: https://en.wikipedia.org/wiki/Application_programming_interface API- Application Programming Interface
  • 6. In computer programming, an application programming interface (API) is a set of subroutine definitions, protocols, and tools for building application software. ( ….) An API may be for a web-based system, operating system, database system, computer hardware, or software library. An API specification can take many forms, but often includes specifications for routines, data structures, object classes, variables, or remote calls. Documentation for the API is usually provided to facilitate usage API Doc Reference Documentación de Request Response Direcciones web HTTP HTTP GET / POST Entorno WEB o APP Híbridas o Browser o HTML o JavaScript o CSS API- Application Programming Interface
  • 7. API basadas en WEB utilizan HTTP cómo protocolo de comunicación The Hypertext Transfer Protocol (HTTP) is designed to enable communications between clients and servers. HTTP works as a request-response protocol between a client and server. A web browser may be the client, and an application on a computer that hosts a web site may be the server. Example: A client (browser) submits an HTTP request to the server; then the server returns a response to the client. The response contains status information about the request and may also contain the requested content Fuente: http://www.w3schools.com/Tags/ref_httpmethods.asp
  • 8. El protocolo HTTP tiene diferentes metodos de interrogación / inserción • GET • POST • UPDATE • DELETE • INSERT HTTP – GET es el más utilizado en APIs web
  • 9. Tipos de Peticiones HTTP- GET http://midominio.com/servidor/enpoint?parametro1=valor1&parametro2=valor=2 KvP : (Key value Pair) Después ? Pasamos parámetro = valor y concatenamos con & http://midominio.com/servidor/recurso.json RESTful : La URL define el recurso, dentro de una arquitectura REST http://midominio.com/servidor/recurso.json?parametro1=valor1 RESTful and KvP : La URL define el recurso, pero podemos filtrar recurso con parámetros Utilizada en APIs Opendata
  • 10. Activitat individual, temps: 5 minutos Actividad Visitamos https://www.programmableweb.com
  • 11. Tipos de Respuestas HTTP- GET Basados en XML (Máquina –Máquina) RDF stands for Resource Description Framework (RDF –XML) <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cd="http://www.recshop.fake/cd#"> <rdf:Description rdf:about="http://www.recshop.fake/cd/Empire Burlesque"> <cd:artist>Bob Dylan</cd:artist> <cd:country>USA</cd:country> <cd:company>Columbia</cd:company> <cd:price>10.90</cd:price> <cd:year>1985</cd:year> </rdf:Description> <rdf:Description rdf:about="http://www.recshop.fake/cd/Hide your heart"> <cd:artist>Bonnie Tyler</cd:artist> <cd:country>UK</cd:country> <cd:company>CBS Records</cd:company> <cd:price>9.90</cd:price> <cd:year>1988</cd:year> </rdf:Description> </rdf:RDF>
  • 12. Tipos de Respuestas HTTP- GET XML esquema propio (Ejemplo SODA Socrata API) Basados en XML (Máquina –Máquina) <response> <row> <row _id="554" _uuid="350CEBF4-DCDE-420C-A51A-F21BF541A843" _position="554" _address="http://open.whitehouse.gov/resource/nmc8-q2uj/554"> <name>Aaron, Henry Jacob</name> <position_title>Member (Designated Chairman)</position_title> <agency_name>Social Security Advisory Board</agency_name> <agency_website description="SSAB" url="http://www.ssab.gov"/> <nomination_date>2014-01-06T00:00:00</nomination_date> <renomination>true</renomination> <confirmation_vote>2014-09-08T00:00:00</confirmation_vote> <confirmed>true</confirmed> <holdover>false</holdover> </row> </row> </response>
  • 13. Tipos de Respuestas HTTP- GET Basados en JSON (Máquina – Web) JavaScript Object Notation, is an open standard format that uses human-readable text to transmit data objects consisting of attribute–value pairs. It is used primarily to transmit data between a server and web application, as an alternative to XML. { "help": "...", "result": [ "data-explorer", "department-of-ricky", "geo-examples", "geothermal-data", "reykjavik", "skeenawild-conservation-trust" ], "success": true }
  • 14. Tipos de Respuestas HTTP- GET { "type": "Feature", "geometry": { "type": "Point", "coordinates": [125.6, 10.1] }, "properties": { "name": "Dinagat Islands" } } GeoJSON : Formato “estándar” para estructurar datos geográficos en JSON
  • 15. Tipos de Respuestas HTTP- GET JSON es cada vez más utilizado cómo formato de respuesta ya que es directamente integrable en WEB !! La técnica de JSONP permite integrar contenido JSON directo entre dominios diferenctes
  • 16. POR QUE JSON? JSON se integra directamente en web, por esa razon se va utilizando cada vez más en las APIS
  • 17. Plataformas para publicación y gestión de Open Data
  • 19. Las nuevas Plataformas de publicación OpenData equilibran la barra entre los esfuerzos entre representar/exponer y consumir/reutilizar.
  • 20. Arquitectura Plataformas de publicación Back-End Modelo i estructura BBDD Un portal de un cliente puede: Residir en la nube En servidores proveedor En servidores cliente Estructura Front-End (web) Generación de portales Herramientas gestión interna de datos Herramientas visualizaciones de datos. Plugins, ejemplo para Geodatos API Portal global Agregador de portales
  • 21. ¿Puedo desarrollar nuevos Plugins para las Plataformas? ¿Podría crear una API de APIs?
  • 22. Las Plataformas deberían permitir: • A usuarios no expertos publicar, mantener y gestionar su información de forma rápida y dentro de su flujo diario de trabajo. • Visualizar e interpretar esa información. • Publicar de forma estructurada la información en abierto , acceso a terceros. • Exponer la información en forma de API. Posibilidad de crear nueva aplicaciones. Mejora la gestión interna de un organismo con datos públicos Facilita la reutilización de los datos via API Facilita la comprensión y lectura de los datos: tablas, gráficos, mapas
  • 23. VAMOS INTRODUCIRNOS EN 3 PLATAFORMAS ... ● Socrata ● OpenDatasoft ● Ckan
  • 24. Sede: Seattle, Washington, USA Fundada: 2007 Modelo negocio: Software-as-a-Service bajo licencia. API y SDK’s (acceso a datos) OpenSource. Socrata is a company that provides cloud-based data visualization and analysis tools for opening government data. Originally called Blist, Socrata was founded in February 2007. Socrata targets non-technical Internet users who want to view and share government, healthcare, energy, education, or environment data. Its products are issued under a proprietary, closed, exclusive license Fuente: https://en.wikipedia.org/wiki/Socrata Socrata
  • 26. SOCRATA : Portal global https://www.opendatanetwork.com/ https://socrata.com/blog/socrata-introduces-open-data-ne twork/
  • 27. SOCRATA APIs: • DISCOVERY API • API (SODA) https://dev.socrata.com/consumers/getting-started.html http://docs.socratadiscovery.apiary.io/
  • 28. OPENDATASOFT Sede: Paris, Fr Fundada: 2011 Modelo negocio: Software-as-a-Service bajo licencia. API y SDK’s (acceso a datos) OpenSource Gratuito para “nonprofit” y ONG OpenDataSoft is a private software company specialized in transforming structured data into API and visualizations. Founded in 2011, OpenDataSoft targets non-technical users who wish to share and visualize government, health, energy and environmental data. OpenDataSoft allows restricted and open sharing ecosystems like open data portals. Fuente: https://en.wikipedia.org/wiki/opendatasoft
  • 30. OPENDATASOFT :Portal Global global https://public.opendatasoft.com/explore/?sort=modified/
  • 32. CKAN Sede: Cambrigde, UK Fundación : 2004 Modelo negocio: Fundación Open Knowledge International Todo OpenSource pero también ofrecen servicio (de pago) de Hosting. Open Knowledge International (OKI) (known as the Open Knowledge Foundation (OKF) until April 2014,[2] then Open Knowledge until May 2016[3]) is a global non-profit network that promotes and shares information at no charge, including both content and data.[4] It was founded by Rufus Pollock on 24 May 2004[5] in Cambridge, UK. Fuente: https://en.wikipedia.org/wiki/Open_Knowledge_International
  • 34. CKAN : Portal global http://dataportals.org/ https://datahub.io/
  • 36. CKAN : API NIVELES GLOBAL “API”: http://dataportals.org/api/data.json/ Domain “API”: http://demo.ckan.org/api/3/action/package_search?q=museu http://opendata-ajuntament.barcelona.cat/data/api/3/action/package_search?q=museu http://demo.ckan.org/api/3/action/resource_search?query=description:Museu http://opendata-ajuntament.barcelona.cat/data/api/3/action/resource_search?query=descripti on:barri Dataset “API”: (FileStore y DataStore): Create http://demo.ckan.org/api/action/datastore_create Update / Insert http://demo.ckan.org/api/action/datastore_upsert Query http://demo.ckan.org/api/action/datastore_search Query (via SQL) http://demo.ckan.org/api/action/datastore_search_sql
  • 37. Prácticas con CKAN API Activitat individual, temps: 40 minutos
  • 38. Actividad Visitamos y no registramos en: http://demo.ckan.org/ Descargamos archivo http://demo.ckan.org/datastore/dump/71e8b 80f-5273-4016-8212-0371c0532c7c.csv Cargamos este archivo en nuestro proyecto de CKAN
  • 39. Test ¿Cuál es nuestra API KEY? ¿Cuál es el ID de nuestro Dataset? ¿Cuáles son los End Points de la API CKAN?
  • 40. Query Query example (first 5 results) http://demo.ckan.org/api/action/datastore_search?resource_id=71e8 b80f-5273-4016-8212-0371c0532c7c&limit=5 Query example (results containing 'jones') http://demo.ckan.org/api/action/datastore_search?resource_id=71e8 b80f-5273-4016-8212-0371c0532c7c&q=jones Query example (via SQL statement) http://demo.ckan.org/api/action/datastore_search_sql?sql=SELECT * from "71e8b80f-5273-4016-8212-0371c0532c7c"
  • 42. Conclusiones ❑ CKAN es OpenSource ❑ Puedo instalarlo en mi servidor o utilizar datahub.io ❑ Puedo automatizar la gestión de datasets ❑ Todos los Datasets están expuestos via API