Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Desarrollo orientado a la semántica - Encuentro de la Industria en el Tecnológico Universitario del Valle de Chalco Febrero 2016

1,166 views

Published on

Conferencia impartida por LSCA Víctor Jesús Hernández Salinas en el evento Encuentro de la Industria del Tecnológico Universitario del Valle de Chalco

Published in: Technology
  • Be the first to comment

Desarrollo orientado a la semántica - Encuentro de la Industria en el Tecnológico Universitario del Valle de Chalco Febrero 2016

  1. 1. Desarrollo Orientado a la Semántica LSCA Victor Jesús Hernández Salinas victor.hernandez@Infotec.mx @hersalvj hersalvj
  2. 2. Somos un Centro de Investigación, Innovación y Desarrollo de Tecnologías de Información y Comunicación del CONACYT que contribuye a la competitividad del Gobierno y de las PyME’s, a través del uso estratégico de las TIC.
  3. 3. Web 3.0 ¿Que es la Semántica?
  4. 4. Yo amo la tecnología! I love technology! I technology! Orgullo Geek! ¿Qué es Semántica?
  5. 5. RAE > Semántico(ca) Perteneciente o relativo a la significación de las palabras. Estudio del significado de los signos lingüísticos y de sus combinaciones, desde un punto de vista sincrónico o diacrónico. RAE > Significación Sentido de una palabra o frase RAE > Significado Significación o sentido de una palabra o frase Contenido semántico de cualquier tipo de signo, condicionado por el sistema y el contexto RAE > Sentido Entendimiento o razón, en cuanto discierne las cosas Modo particular de entender algo, o juicio que se hace de ello ¿Qué es Semántica? *RAE -- Real Academia Española
  6. 6. Es la manera en que percibimos y entendemos el mundo que nos rodea. Siempre se basa en las relaciones entre los objetos que conocemos del mundo. Si no conocemos algo, para nosotros no existe. Cuando descubrimos algo nuevo, lo relacionamos con lo que conocemos. Nuestra semántica es conocimiento y tiene construcciones comunes a nuestro contexto. ¿Qué es Semántica?
  7. 7. ¿Qué es Semántica? Cómo percibimos y describimos el mundo Una casa es una construcción de piedra y madera que sirve para vivir. Está dividida en habitaciones con puertas y ventanas para el acceso de los habitantes.
  8. 8. hecha de tien e hecha de usada para es una tien e tiene pertenece a Cómo percibimos y describimos el mundo ¿Qué es Semántica?
  9. 9. Ontología Ontología (Filosofía / Lógica) Conjunto de entidades presupuestas en una teoría [1]. Ontología (Ciencias de la Computación) Modelo de datos que representa un conjunto de conceptos dentro de un dominio y sus relaciones [1]. Ontología (Ciencias de la Computación) En teoría, una ontología es “una especificación formal y explícita de una conceptualización compartida”. Provee un vocabulario compartido que puede usarse para modelar un dominio – esto es, el tipo de objetos y/o conceptos que existen, sus propiedades y relaciones [2]. [1] Traducción de The free dictionary. http://www.thefreedictionary.com [2] Wikipedia, the free encyclopedia. http://en.wikipedia.org/wiki/Ontology_(information_science) ¿Qué es Semántica?
  10. 10. ¿Que es la Web Semántica? Web 3.0
  11. 11. Evolución de la Web • Web 1.0 Personas conectándose a la Web “Web Solo Lectura” •Web 2.0 Personas conectándose a personas “Web Social” •Web 3.0 Aplicaciones Web conectándose a Aplicaciones web “Web Semántica”
  12. 12. La Web Semántica según Tim Berners Lee Una web semántica es una red de datos que pueden ser procesados directa o indirectamente por máquinas. Es una web extendida que permitirá a humanos y máquinas trabajar en cooperación mutua.
  13. 13. • Hoy en día, las ideas propuestas por Berners-Lee sobre la Web Semántica [Berners-Lee] [Shadbolt ] son casi una realidad. • La disponibilidad de recursos en la Web, el poder de cómputo, las técnicas y estándares semánticos como RDF [Klyne] y OWL [Motik] permiten a los grupos de investigación y desarrollo construir poderosos mecanismos de software para representar y explorar la Web de manera Semántica. • Actualmente existen herramientas que permiten añadir Semántica a las piezas de código o páginas Web existentes [Chiu] [Bizer] [Story] [Cowan et.al], sin embargo, se cuenta con pocas herramientas que permiten la creación de código totalmente semántico desde su conceptualización [Koide ] [Völkel] [Kalyanpur]. • Más aún, sólo algunas herramientas integran una metodología y un API de desarrollo para construir aplicaciones semánticas [Solís et.al]. Como esta La Web Semántica hoy
  14. 14. ? El problema…
  15. 15. El problema…
  16. 16. El objetivo detrás de darle significado a la información es crecer al Internet a un plano de conocimiento. Visión de la Web Semántica
  17. 17. Los resultados obtenidos a través de un buscador semántico ofrecen al usuario la información exacta que estaba buscando. ¿Cómo funciona?
  18. 18. DBPedia.org
  19. 19. No se trata de una inteligencia artificial mágica que permita a las máquinas entender las palabras de los usuarios, es sólo la habilidad de una máquina para resolver problemas bien definidos, a través de operaciones bien definidas que se llevarán a cabo sobre datos existentes bien definidos. Para obtener esa adecuada definición de los datos, la Web Semántica utiliza esencialmente RDF, SPARQL, y OWL, mecanismos que ayudan a convertir la Web en una infraestructura global en la que es posible compartir, y reutilizar datos y documentos entre diferentes aplicaciones y usuarios. Componentes de la Web Semántica
  20. 20. RDF es un modelo de datos para los recursos y las relaciones que se puedan establecer entre ellos. Aporta una semántica básica para este modelo de datos que puede representarse mediante XML. RDF proporciona información descriptiva simple sobre los recursos que se encuentran en la Web y que se utiliza, por ejemplo, en catálogos de libros, directorios, colecciones personales de música, fotos, eventos, etc. Triple: Sujeto – Propiedad – Objeto ¿Qué es Resource Definition Framework? <casa><hecha de><piedra> <casa><hecha de><madera> <casa><usada para><vivir> <casa><tiene><habitación> <casa><es una><construcción> <casa><pertenece a><Homero Simpson> < habitación><tiene><puerta> < habitación><tiene><ventana> TRIPLAS
  21. 21. SPARQL es lenguaje de consulta sobre RDF, que permite hacer búsquedas sobre los recursos de la Web Semántica utilizando distintas fuentes datos. ¿Qué es SPARQL?
  22. 22. OWL es un mecanismo para desarrollar temas o vocabularios específicos en los cuales asociar los recursos. Lo que hace OWL es proporcionar un lenguaje para definir ontologías estructuradas que pueden ser utilizadas a través de diferentes sistemas. Las ontologías incluyen definiciones de conceptos básicos en un campo determinado y la relación entre ellos. Específicamente OWL es un vocabulario para describir las propiedades y las clases de los recursos RDF, ya que permite establecer jerarquías de generalización entre dichas propiedades y clases, además de describir relaciones entre clases como disyunción, cardinalidad (por ejemplo "únicamente uno"), igualdad, tipologías de propiedades más complejas, caracterización de propiedades (por ejemplo simetría) o clases enumeradas. ¿Qué es Ontology Web Language?
  23. 23. Desarrollo Orientado a la Semántica Web 3.0
  24. 24. Desarrollo Orientado a la Semántica El Desarrollo Orientado a la Semántica es un nuevo paradigma de desarrollo que toma como punto de partida el conocimiento de un dominio capturado en una ontología para generar de manera automática la arquitectura y funcionalidad básica de un sistema de software cuyos objetos son persistentes de manera nativa en RDF
  25. 25. Desarrollo Orientado a la Semántica El Desarrollo Orientado a la Semántica tiene como objetivo el proporcionar a los analistas y desarrolladores los siguientes elementos: Una metodología de desarrollo basada en un lenguaje flexible y de alto nivel para capturar los requerimientos del sistema, soportado por el estándar OWL Un API Semántica para el desarrollo acelerado y fácil mantenimiento de aplicaciones. Un mecanismo de transformación de modelos que permita explotar el API semántica para la generación automática de aplicaciones.
  26. 26. Evolución de los paradigmas de desarrollo Desarrollo Orientado a la Semántica Modelos Ontológicos (conocimiento) Desarrollo Dirigido por Modelos Modelos orientados a objetos (relaciones) Programación Orientada a Objetos Lenguajes de Programación (objetos) Niveldeabstracción Niveldecomplejidad
  27. 27. Proceso de Desarrollo Orientado a la Semántica
  28. 28. Programar Lógica Específica ¿Qué hará el nuevo recurso? ¿Qué modos de despliegue necesita? ¿El recurso será administrable? ¿Qué diseño tendrá el recurso? Proceso de Desarrollo Orientado a la Semántica
  29. 29. Modelar el Recurso ¿Qué va a hacer el nuevo recurso? ¿Qué objetos se relacionan con el recurso? ¿Que propiedades necesita tener el recurso? ¿Es necesaria una jerarquía de recursos? ¿Existen objetos que pueden ser reutilizados? Proceso de Desarrollo Orientado a la Semántica
  30. 30. Modelar el Recurso Proceso de Desarrollo Orientado a la Semántica
  31. 31. Generar Código ¿Dónde se colocará el nuevo código? ¿Qué paquete se va a crear? ¿Qué prefijo de la ontología se usará para generar código? ¿Qué otras ontologías se requieren? Proceso de Desarrollo Orientado a la Semántica
  32. 32. Generar Código Proceso de Desarrollo Orientado a la Semántica
  33. 33. Generar Código Proceso de Desarrollo Orientado a la Semántica
  34. 34. Formatos de representación de ontologías Estructura de árbol extensible Resource, Literal, Triple Class, DataType, Relation, SubClass Class, ObjectProperty, InverseOf Generar Código
  35. 35. Ventajas Se enfocan los esfuerzos del equipo de desarrollo en el correcto modelado del dominio más que en la definición y programación del sistema El modelo del sistema es comprensible por todas las partes involucradas en el desarrollo, pues se usan conceptos en un alto nivel de abstracción Un cambio en el modelo afecta al código base del sistema, pero un cambio en el código extendido no afecta al modelo, lo que permite mantener y reutilizar la funcionalidad existente El API se programación semántica permite a los programadores trabajar con ontologías, RDF y TripleStores sin requerir conocimientos profundos en esos tópicos Los recursos humanos y el tiempo necesarios para el desarrollo se reducen considerablemente Los datos de la aplicación se almacenan de manera semántica, por lo que es posible realizar consultas complejas y muy específicas
  36. 36. Linked Data Web 3.0
  37. 37. ¿Linked Data? Linked Data es una propuesta para ayudar a construir la Web Semántica. Linked Data describe la forma de exponer, compartir y conectar piezas de datos, información y conocimiento a través de la web
  38. 38. 1. Utiliza URIs como nombres para objetos 2. Utiliza URIs HTTP para que las personas pueda buscar esos nombres. 3. Cuando alguien busque un URI, proporcionar información útil, utilizando las normas (RDF, SPARQL) 4. Incluir enlaces a otros URIs para que puedan descubrir más cosas (Datos enlazados). Reglas para construir datos enlazados (Linked Data)
  39. 39. Open Data es una forma de publicar datos de organizaciones públicas y privadas, en formatos que sean reutilizables por personas e instituciones. En su planteamiento, Open Data se asemeja al movimiento Open Source, pero a diferencia de éste no apunta a desarrollar software sino a posibilitar el acceso y reutilización de datos. Wikipedia: Open Data es una filosofía y práctica que persigue que determinados datos estén disponibles de forma libre a todo el mundo, sin restricciones de copyright, patentes u otros mecanismos de control. Tiene una ética similar a otros movimientos y comunidades abiertos como el código abierto (open source en inglés) y el acceso libre (open access en inglés). ¿Open Data?
  40. 40. Una estrella: ofrecer los datos en cualquier formato, aunque sean difíciles de manipular, como un pdf por ejemplo o una imagen escaneada.. Dos estrellas: entregar los datos de manera estructurada, como en un archivo excel con extension xls. Tres estrellas: entregar los datos en un formato que no sea propietario, como csv en vez de excel, xml, rdf, etc. Las cinco estrellas del Open Linked Data
  41. 41. Cuatro estrellas: usar URI (que es una dirección web de un dato que sirve para enlazarlo con otros datos) para identificar cosas y propiedades, de manera que se pueda apuntar a los datos. De preferencia usar el estándar de RDF Cinco estrellas: vincular sus datos con los de otras personas, dotándolos de contexto. En la práctica, a que la información entregada también apunte a otras fuentes de datos. Por ejemplo, si coloco un país dentro de mis datos, puedo agregar una URI de referencia que apunte a los datos de ese país en Dbpedia o a Geonames. Las cinco estrellas del Open Linked Data
  42. 42. Crecimiento de la nube de Linked Data Mayo 2007 (12 Datasets) Linking Open Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/
  43. 43. Septiembre 2008 (45 Datasets) Linking Open Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/ Crecimiento de la nube de Linked Data
  44. 44. Julio 2009 (95 Datasets) Linking Open Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/ Crecimiento de la nube de Linked Data
  45. 45. Septiembre 2010 (203 Datasets) Linking Open Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/ Crecimiento de la nube de Linked Data
  46. 46. Septiembre 2011 (295 Datasets, 31 billions de triples) Linking Open Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/ Crecimiento de la nube de Linked Data
  47. 47. La tecnología para una Ciudad Digital Web 3.0
  48. 48. Internet de las cosas Una visión desde el mundo de la Web semántica, se centra en hacer que todas las cosas (no sólo las electrónicas, inteligentes o RFID) tengan una dirección basada en alguno de los protocolos existentes, como URI. Los objetos, las cosas, no conversan, pero de esta forma podrían ser referenciados por otros agentes, tales como potentes servidores centralizados que actúen para sus propietarios humanos. 1.Internet de las cosas creará oportunidades y la combinación de mayores beneficios y bajos costes ayudará a empresas e industrias hacia la década de 2020. 2.Los 5 principales factores que alimentan a Internet de las Cosas son: a)Utilización de activos (reducción de costes) b)Productividad de los empleados c) Cadena de aprovisionamiento y logística (eliminación de gastos) d)Experiencia de usuarios (aumento de clientes) e)Innovación (reducción del tiempo de llegada al mercado) 3.Las tendencias tecnológicas, que incluyen la nube, la movilidad, Big data, el incremento de capacidad de proceso, y las económicas están dirigiendo la economía.
  49. 49. 4. Esas tecnologías y tendencias en los negocios están impulsando a Internet de las Cosas, creando una oportunidad sin precedentes para conectar lo desconectado: personas, procesos, información y cosas. 5.Para obtener el mayor valor las empresas deben transformarse basándose en los casos de uso clave que constituyen la mayoría del valor. Estos casos incluyen edificios inteligentes, sanidad y monitorización de pacientes, industrias, educación, flotas comerciales de vehículos, marketing y publicidad, juegos y entretenimiento, entre otros. 6.Las capacidades de seguridad robustas (tanto lógicas como físicas) y las políticas de privacidad son características críticas de esta economía. Este crecimiento podría ser inhibido si las capacidades de seguridad de la tecnología no son combinadas con políticas y procesos diseñados para proteger la privacidad tanto de las compañías como de los particulares. 7.La siguiente oleada del imparable crecimiento de Internet vendrá de la confluencia entre personas, procesos, información y cosas. Todo ello sin olvidarnos de la Sustentabilidad. Internet de las cosas
  50. 50. Palabra clave: «Apps»
  51. 51. Facebook Open Graph Protocol
  52. 52. Cada objeto en el social graph tiene un único ID Cualquier sitio puede ser parte del ecosistema de Facebook
  53. 53. Google Knowledge Graph Google está mejorando su enfoque de búsqueda para hacerla más semántica implementando su knowledge graph (semantic Web en vocabulario de Google).
  54. 54. SemanticWebBuilder es una plataforma para el desarrollo de aplicaciones y portales semánticos.
  55. 55. Conclusiones El Desarrollo Orientado a la Semántica es un nuevo paradigma que utiliza el conocimiento como punto de partida en el desarrollo de sistemas semánticos. En lugar de agregar metadatos o anotaciones al código de los desarrolladores, el código es generado de manera automática a partir de un modelo ontológico y la persistencia en RDF es asegurada de manera nativa. La suite de productos de SemanticWebBuilder® permite aplicar de manera eficiente el proceso de Desarrollo Orientado a la Semántica, que consiste en a) modelar los recursos; b) generar código y c) programar la lógica específica. Con el Desarrollo Orientado a la Semántica de SemanticWebBuilder® se pueden desarrollar de manera rápida aplicaciones y Sitios Web Semánticos, cuya información es almacenada en un modelo de triplas y puede ser consultada a través de un endpoint.
  56. 56. Conclusiones Linked Data es ya una realidad y nos abre las puertas a un nuevo mundo de posibilidades, en donde la integración de datos de diferentes fuentes es el punto principal. Actualmente existen muchas fuentes de datos accesibles por medio de APIs de la Web 2.0 como eBay, Amazon, Yahoo, Google. Comparado con estas, Linked Data tiene la ventaja de proveer una solo mecanismo estándar para el intercambio de datos, permitiendo a las fuentes de datos sea: • Más fácil para indexar por los buscadores • Es accesible por los navegadores genéricos • Permite ligar datos de diferentes fuentes.
  57. 57. Síguenos en nuestras redes sociales: www.infotec.mx www.semanticwebbuilder.org.mx clienteswb@infotec.com.mx @SemWebBuilder SemanticWebBuilder SemanticWebBuilder SemWebBuilder SemanticWebBuilder +SemanticwebbuilderOrgMx LSCA VICTORJESUSHERNANDEZSALINAS victor.hernandez@infotec.mx Twitter/@hersalvj

×