Introduccion a OpenData

Preview:

Citation preview

Introducción al OpendataFrancisco Cifuentes Silva

Sistemas y Servicios de Información en Red – BCN20-12-2013

Objetivos del curso

• Revisar distintos conceptos asociados al mundo de la Web, Web Semántica, datos enlazados y datos abiertos

• Reconocer y utilizar diversos formatos de datos

• Identificar diversos componentes y sus funciones asociados al diseño, generación, publicación y consumo de datos abiertos

Competencias a adquirir

• Poder identificar correctamente conceptos asociados a la temática del OpenData tales como XML, Web Semántica, Ontologías, Datos Abiertos, entre otras.

• Reconocer en contexto distintos estándares y modelos asociados al concepto de OpenData

• Conocer y utilizar herramientas y sitios que publican datos de manera abierta

• Comprender el modelo de OpenData utilizado en la BCN

Qué es el OpenData

Qué es OpenData o Datos Abiertos

• Es una filosofía de publicación de datos que busca brindar libre acceso y uso de estos a todo el mundo

• Incorpora buenas prácticas necesarias para la explotación de estos

• Fundamentalmente están publicados sobre la Web de manera gratuita y sin restricciones

• OpenData se asocia directamente con la Web

• Único medio para brindar disponibilidad universal libre

La importancia del OpenData

Beneficios:

• Generan confianza promoviendo la transparencia en la información

• Facilitan estudios e investigación

• Los datos públicos pertenecen a la nación, son concebidos gracias a los impuestos de la ciudadanía

En el caso de la BCN

• Aseguran que la legislación y su proceso sea conocida

OpenData en la BCN

• La BCN implementa todos las las fases del ciclo de Linked Data

OpenData en la BCN

Datos abiertos disponibles (Modelos y datos):

• Normas Legales

• Parlamentarios

• Sesiones parlamentarias

• Proyectos de Ley

• Lugares geográficos

• Transparencia BCN

Disponibles bajo las 5 estrellas de Linked Open Data

Qué son las 5 estrellas de Linked Data

Qué son las 5 estrellas de Linked Data

★ Bajo licencia abierta

•Se puede ver e imprimir•Se puede almacenar localmente•Se puede ingresar los datos a otro sistema•Se pueden cambiar los datos•Se pueden compartir con otros•Fácil de publicar

★ Bajo licencia abierta

•Se puede ver e imprimir•Se puede almacenar localmente•Se puede ingresar los datos a otro sistema•Se pueden cambiar los datos•Se pueden compartir con otros•Fácil de publicar

Qué son las 5 estrellas de Linked Data

★★ Estructurados (Machine-readable)

•Todo lo de 1 estrella más•Procesar directamente con software propio para agregarlo, realizar cálculos, visualizar etc.•Exportar a otro formato estructurado•Aun es fácil de publicar

★★ Estructurados (Machine-readable)

•Todo lo de 1 estrella más•Procesar directamente con software propio para agregarlo, realizar cálculos, visualizar etc.•Exportar a otro formato estructurado•Aun es fácil de publicar

Qué son las 5 estrellas de Linked Data

★★★ En formato libre

•Todo lo de 2 estrellas más•Se pueden manipular los datos con el programa que el usuario determine, sin requerir software propietario

★★★ En formato libre

•Todo lo de 2 estrellas más•Se pueden manipular los datos con el programa que el usuario determine, sin requerir software propietario

Qué son las 5 estrellas de Linked Data

★★★★ Usar URIs

•Todo lo de 3 estrellas más•Se pueden enlazar desde cualquier parte•Reusar partes de los datos•Reusar herramientas existentes•Combinar datos de manera segura con otros•Se tiene el control granular de los datos•Requiere mayor esfuerzo de publicación

★★★★ Usar URIs

•Todo lo de 3 estrellas más•Se pueden enlazar desde cualquier parte•Reusar partes de los datos•Reusar herramientas existentes•Combinar datos de manera segura con otros•Se tiene el control granular de los datos•Requiere mayor esfuerzo de publicación

Qué son las 5 estrellas de Linked Data

★★★★★ Enlazar a otros datos

•Todo lo de 4 estrellas más•Descubrir más datos relacionados•Aprender sobre el esquema de datos•Incrementar el valor de los datos

•Mayor costo de publicación y mantención

★★★★★ Enlazar a otros datos

•Todo lo de 4 estrellas más•Descubrir más datos relacionados•Aprender sobre el esquema de datos•Incrementar el valor de los datos

•Mayor costo de publicación y mantención

Datos abiertos y enlazados

• http://datos.bcn.cl/recurso/pais/chile/datos.html

• http://www.ted.com/talks/tim_berners_lee_the_year_open_data_went_worldwide.html

• http://www.youtube.com/watch?v=qZ-I_pqXUHM

Iniciativas OpenData

Iniciativas OpenData

• Gobierno– Transparencia

– Biblitotecas

– Municipios

• Universidades– DBLP

– Opencourseware

– DBPedia

Iniciativas OpenData

• Centros científicos– CERN

– NASA

– USGS

– NCBI

• Empresas– Renault

– Google

– Yahoo

– Euroalert: licitaciones y contratos públicos

Conceptos clave

Sintaxis

“Parte de la gramática que estudia las reglas que gobiernan la combinatoria de elementos.”

Desde la RAE

“Parte de la gramática que enseña a coordinar y unir las palabras para formar las oraciones y expresar conceptos.”

“Conjunto de reglas que definen las secuencias correctas de los elementos de un lenguaje de programación.”

Metamodelo

Conjunto de elementos relacionados bajo cierta semántica que combinados permitirán especificar, construir y documentar un modelo

El metamodelo ofrecerá los elementos para construir un modelo

Modelo

Conjunto de elementos definidos en el metamodelo que combinados permitirán especificar, construir y documentar elementos del dominio (conceptualización del mundo real) denominadas instancias

Instancias de un modelo

Elementos definidos en un modelo que representan una entidad “del mundo real”

Metemodelo – modelo - instancias

Elementos del mundo real (dominio)

Elementos del mundo real (dominio)

ModeloModelo MetamodeloMetamodelodescribedescribe describedescribe

Dato

Representación simbólica (número, texto, valor de verdad, fecha, etc.) que permite describir un hecho relativo a una entidad.

Una estructura de datos permite describir una entidad mediante atributos o características.

Tipo de dato

Atributo de un dato que indica su naturaleza.

Ejemplo:

Dato Valor Tipo de dato

año 2012 Numero entero

Probabilidad de ganar el loto

0.000000000000000000000000001

Número real

Soy humano sí booleano

La inicial de mi nombre

“F” Carácter de texto

Mi nombre “Francisco” Cadena de caracteres

HTTP

Hyper Text Transfer Protocol• Primera versión por Tim Berners-Lee 1990

• Especificación RFC2616 (1.1)

• Base de lo que conocemos como “la Web”

clienteservidorInternet

Petición HTTP

Respuesta HTTP

URL - URI- IRI

URL

• Uniform Resource Locator

• Universal Resource Locator

• Cadena de caracteres que permite referenciar un recurso sobre Internet.

Ejemplos:

• http://www.bcn.cl/index.html

• ftp://documentos.bcn.cl/publicaciones/articulo1.pdf

URL - URI- IRI

URI

• Uniform Resource Identifier

• Cadena de caracteres que permite identificar un recurso unívocamente, algo similar a una clave primaria universal.

• El uso de URI’s permite separar el recurso de sus múltiples representaciones.

• Adicionalmente, una URI permite identificar segmentos

Ejemplo de URI:• http://datos.bcn.cl/recurso/cl/ley/18010/

Representaciones de este recurso:• http://www.leychile.cl/Navegar?idNorma=29438

• http://datos.bcn.cl/recurso/cl/ley/18010/datos.rdf

URL - URI- IRI

IRI

• Internationalized Resource Identifier

• Es una URI, pero que permite cualquier tipo de carácter Unicode (como japonés, Chino, Cyrílico, Español).

Ejemplo de IRI:

http://biografias.bcn.cl/wiki/Néstor_Jofré_Núñez

http://www.w3.org/2003/Talks/0904-IUC-IRI/slide11-0.html

URI HTTP

Una URI HTTP es una URI sobre la Web

Ejemplo:

http://datos.bcn.cl/recurso/persona/123

Y la URL de una página

http://datos.bcn.cl/recurso/persona/123/datos.html

Negociación de Contenido

Mecanismo que permite a un servidor de datos entregar contenido el correcto a quien lo solicita

GET /recurso/Francisco.rdfAccept: application/rdf+xml

GET /recurso/FranciscoAccept: application/rdf+xml

303 See OtherLocation:

200 OKContent-type:

Application/rdf+xml;charset=utf-8

XML

• Lenguaje de Marcas Extensible

• Desarrollado por W3C para estructurar archivos de texto

• Importante rol como estándar de intercambio en Internet

• Permite a cada usuario definir esquemas de marcas propias

• Permite definir estructuras de datos propias

Ejemplos:

• http://lod-cloud.net/versions/2011-09-19/lod-cloud.svg

• http://hley-dev.bcn.cl/recurso.php/cl/doc-publicado/1093349/es@2012-05-05,session3132.xml

XML - ejemplo

Versión XML Versión Texto

<Documento><Titulo>Protección a los deudores de créditos en dinero</Titulo><Cuerpo>Ya fue publicada la Ley 20.715 que busca evitar que se cobren tasas de interés abusivas a las personas que acceden a los mercados formales de crédito, mediante una rebaja de la Tasa Máxima Convencional (TMC), específicamente para las operaciones de crédito de dinero. Revise el texto completo de la norma y la Historia de la Ley.</Cuerpo><Fecha>16 de diciembre 2013</Fecha>

</Documento>

Protección a los deudores de créditos en dineroYa fue publicada la Ley 20.715 que busca evitar que se cobren tasas de interés abusivas a las personas que acceden a los mercados formales de crédito, mediante una rebaja de la Tasa Máxima Convencional (TMC), específicamente para las operaciones de crédito de dinero. Revise el texto completo de la norma y la Historia de la Ley.

16 de diciembre 2013

XML

Múltiples usos:

• Bases de datos

• Definición de configuraciones

• Estructuración de documentos de texto

• Servicios Web

• Páginas Web

• Interoperabilidad

• Representación en árbol de documento

Qué es la Web

Qué NO es la Web:

• No son los computadores en Red

• No son los programas de mensajería ni el torrent

• No es lo mismo que la Internet

• Google?

Qué es la Web

• Es un espacio donde convive el total de documentos publicados sobre protocolo HTTP/HTTPS el relacionados entre sí por enlaces (también conocidos como links)

La Web Semántica

“Es una extensión de la Web actual en donde la información es entregada de manera bien definida, habiltando que computadores y personas puedan trabajar mejor en cooperación”

Berners-Lee T. 2001

Basada en una pila de tecnologías

(Semantic Web Stack)

La Web Semántica

Activar un nuevo modelo mental, posibilita nuevos tipos de búsqueda en la Web.

¿cómo obtenemos el siguiente resultado de búsqueda?

“Todas las novelas de autores nacidos en América del sur antes de 1950 que hablen sobre viajes a alguna ciudad

Europea”

La Web de DatosLa Web

La Web como BD

LimitantesLimitantesOrientada al usuarioEnlaces sin significadoDifícil extraer información

Cómo mejorarCómo mejorarAgregar metadatos Leíbles por máquinas

Datos enlazados

Documentos etiquetadoscon metadatos

Cómo mejorarCómo mejorarPublicar datos enFormatos interoperables

Mucha información

Mucha información

Cómo llegar a una Web de datos

Ciclo de vida de los datos abiertos

1. Modelado

2. Generación

3. Publicación

4. Consumo de datos

Por qué modelar: el gran problema

• Personas, organizaciones y sistemas de software necesitan comunicarse

• Cada uno tiene diferente conocimiento previo, contexto y puntos de vista

• Visión compartida dificulta la construcción de sistemas

Un ejemplo: ¿qué es la leche?

Personas Alimento

Software Códigobinario

Empresa Producto

Diseñar y modelar

Un modelo permitirá:• Comunicación: unificar puntos de vista

• Interoperabilidad: un lenguaje común para todos

Beneficios Reusabilidad: podrá usarse en múltiples contextos, tiempo, etc.

Fiabilidad: cierta certeza de los datos respecto a un modelo

Especificación: homogeneizar realidad, puntos de vista, acuerdo

Tecnologías asociadas al modelado

• Ontologías

• Taxonomías

• Tesauros

• Jerarquías de conceptos

• Esquemas

• DTD

• WSDL

¿Qué es una ontología?

Nace en la filosofía, rama de la metafísica que estudia la existencia de las entidades.

En informática

“Es una especificación de una conceptualización”

Thomas Gruber, 1993

¿Qué es una ontología?

“Las ontologías son modelos conceptuales que capturan y hacen explícito el vocabulario usado en un dominio o en una aplicación semántica, de forma de garantizar la ausencia de ambigüedades”

Breitman et al., 2007

“Una ontología es leíble tanto por humanos como por máquinas. En conjunto con una sintaxis y semántica, provee el lenguaje por el que sistemas basados en conocimiento pueden interoperar (ej. Intercambiar aserciones, consultas y respuestas). Una ontología determina lo que existe para un sistema.”

Gruber, 1992

Usos y aplicaciones de las ontologías Web

Modelo de datos compartido Definición de un sistema complejo Estructura jerárquica de elementos y sus relaciones Validación de datos

Folksonomías

• Sistema de indexación social

• Clasificación colectiva por medio de etiquetas o palabras clave

• Sin jerarquía

• Sin relaciones

Sitios Web representativos

• Flickr

• Del.icio.us

• Bibsonomy

Vocabularios controlados

• Lista selecta de palabras y frases para etiquetado

• Permite uniformar un mismo concepto que aparece en diferentes palabras, garantizando coherencia

• En Web Semántica, un vocabulario es similar a una ontología pero sin reglas (menor expresividad)

Taxonomías

• Nace en las ciencias biológicas para la clasificación de organismos.

• Utilizada para categorizar y clasificar elementos.

• Incorporan una estructura y jerarquización de estos conceptos.

Tesauros

Listas de términos orientados a la normalización terminológica

• Permiten Interrelaciones:• Jerárquica (parte de, general,

particular)• Polijerárquica (pertenecer a más

de una parte)• Equivalencia (sinónimos,

polisemia, homonimia, antonimia, • Asociativas (dos elementos que

se relacionan de alguna forma)

http://www.visualthesaurus.com

Esquemas DTD - XSD

Ambas tecnologías permiten describir modelos para definir la estructura de un documento XML

DTD: Definición de tipo de documentoDefine elementos permitidos, sintaxis y

estructura de un documento

XSD: XML Schema DefinitionAdemás de definir lo mismo que DTD,

agrega tipos de datos, estructuras de datos complejas y distintas fuentes de definición de etiquetas (espacios de nombre)

Tecnologías asociadas a la generación

• Ofimática: Archivos Excel, SPSS, Word, PDF

• ETL: Herramientas de extracción, transformación y carga

• OCR: Reconocimiento Óptico de Caracteres

• NLP: Procesamiento del lenguaje Narural

• Web Scraping: Extraer información desde sitios Web (raspado Web)

Fase de publicación

Tecnologías asociadas a la publicación

• Formatos de archivo: HTML, JSON, XLS, TXT, CSV, XML

• Tecnologías de Web Semántica: RDF, SPARQL

• Bases de datos

• No solo texto, múltiples API en diferentes tipos de media (imágenes, audio, video)

• Microdatos (Schema.org), Microformatos, RDFa

• BigData

Formatos de archivo

HTML, JSON, XLS, TXT, CSV, XML, PDF, RSS

• Cada uno permite representar la información ya sea desde 1 estrella hasta las 5

• Distintas narutalezas para distintos propósitos

Ejemplo

• HTML: Páginas Web vistas en un navegador

• CSV/XLS: Hojas de cálculo

• PDF: Documentos finales

• JSON: Representación Javascript

• RSS: Compartir contenido en la Web

Tecnologías de Web Semántica

RDF: Resource Description Framework• Recomendación W3c en 1999

• Método para describir recursos– Recurso: algo que pueda identificarse mediante una URI

– Propiedad: una característica o atributo de un recurso

• Recursos se describen basados en el concepto de tripleta:

sujeto – propiedad – objeto

http://ejemplo.org#Pedrohttp://ejemplo.org#Pedro http://ejemplo.org#Juanhttp://ejemplo.org#Juan

http://ejemplo2.org#tieneHijo

Tecnologías de Web Semántica

PREFIX bcnnorms: <http://datos.bcn.cl/ontologies/bcn-norms#>PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>PREFIX dc: <http://purl.org/dc/elements/1.1/>

select distinct ?titulo ?norma ?nombreOrg where {?norma rdf:type ?clase .?norma bcnnorms:createdBy ?org .?org bcnnorms:hasName ?nombreOrg.?norma dc:title ?titulo.?norma bcnnorms:isTreatyWith ?pais.?pais bcnnorms:hasName "España".?norma bcnnorms:type ?tipo .?tipo bcnnorms:hasName "Decreto".?norma bcnnorms:publishDate ?pub_date .FILTER (xsd:dateTime(?pub_date) >= "1990-01-01T00:00:00Z"^^xsd:dateTime && xsd:dateTime(?pub_date) <= "2000-12-31T00:00:00Z"^^xsd:dateTime) . }

Tecnologías de Web Semántica

Bases de datos

Muchas proveen mecanismos de publicación de datos:

• Endpoint SPARQL como: http://datos.bcn.cl/sparql

• Linked data Frontend: negociador de contenido para mostrar datos

• Servicios Web

Algunas de ellas• Openlink Virtuoso

• OWL Lim

• Oracle

Tecnologías de Web Semántica

API’s: Interfaz de Programación de Aplicaciones

Son puntos de conexión que ofrece una aplicación para que otras aplicaciones se conecten y utilicen sus datos o procesamiento.

Miles de APIs disponibles para utilizar datos, ejemplo:

http://www.programmableweb.com/

Tecnologías de Web Semántica

Bases de datos

Muchas proveen mecanismos de publicación de datos:

• Endpoint SPARQL como: http://datos.bcn.cl/sparql

• Linked data Frontend: negociador de contenido para mostrar datos

• Servicios Web

Algunas de ellas• Openlink Virtuoso

• OWL Lim

• Oracle

Tecnologías de Web Semántica

Microdatos (Schema.org)

• Modelo normalizado de metadatos generado por los buscadores Google, Yahoo y Bing

• Es un gran vocabulario que permite mejorar las búsquedasEjemplo: Vocabulario GoodRelations:

http://www.heppnetz.de/projects/goodrelations/

MicroformatosMetadatos basados en atributos HTML

Permite incrustar metadatos básicos como titulo, fecha en texto html

RDFa

RDF Attributes – es una versión de RDF que puede ser incrustada en páginas HTML mediante atributos presentes en este

Tecnologías de Web Semántica

BigData

Aunque no es siempre OpenData, este concepto hace referencia a grandes volúmenes de datos. Ejemplos:

• Base de datos del genoma

• Búsqueda sobre la Web

• Procesamiento de datos para la predicción del clima

• Análisis de datos en empresas

• Análisis de texto

Tecnologías asociadas al consumo

• Herramientas de visualización

• Herramientas de análisis y cruzamiento de datos

• Sitios Web

• Open refine

• Agentes de software

Tecnologías asociadas al consumo

• Herramientas de visualización– http://datos.bcn.cl/es/informacion/bcn-en-linked-open-data

• Herramientas de análisis y cruzamiento de datos

• Sitios Web– http://thewebindex.org

• Open refine

• Agentes de software

Vocabularios y ontologías

Existen vocabularios de uso general que ya modelan ciertos dominios, algunas de las más conocidas son:

– FOAF: Friend of a friend

– DC: Dublin Core

– GN: Geonames

– GEO: Información geográfica

– SDMX: Información estadística

– XBRL: Información financiera y económica

– Datacube / Scovo: Estadísticas y OLAP

– TIME: Tiempo, fechas, periodos

– BIO: Información biográfica

– FRBR: Información bibliográfica

Vocabularios y ontologías

Para buscar vocabularios existentes relacionados con nuestro dominio, algunas herramientas (http://www.w3.org/wiki/Search_engines):

http://kmi-web05.open.ac.uk/WatsonWUI/

http://swoogle.umbc.edu/

http://ws.nju.edu.cn/falcons/objectsearch/

Validación de nuestra ontología

Verificación de integridad y consistencia:

http://swse.deri.org/RDFAlerts/

Validación RDF y visualización en SVG:

http://www.w3.org/RDF/Validator/

Generación de documentación:

http://ontorule-project.eu/parrot/parrot