Desarrollo Orientado a la Semántica
Agenda1   ¿Quién es INFOTEC?          2   ¿Qué es semántica?                     3   La Web Semántica                     ...
¿Quién es INFOTEC?
Misión de la InstituciónSomos un Centro Público de Investigación,Innovación y Desarrollo Tecnológico delCONACYT      que  ...
¿Qué es Semántica?
¿Qué es Semántica?RAE > Semántico(ca)• Perteneciente o relativo a la significación de las palabras.• Estudio del significa...
¿Qué es Semántica?• Es la manera en que percibimos y entendemos el mundo  que nos rodea.• Siempre se basa en las relacione...
¿Qué es Semántica?Cómo percibimos y describimos el mundo    Una casa es una construcción de piedra y madera que sirve    p...
¿Qué es Semántica?Cómo percibimos y describimos el mundo                                                  hecha de   usada...
¿Qué es Semántica?Cómo Representar el mundo en una máquina (IA)
Qué es SemánticaOntología Ontología (Filosofía / Lógica) • Conjunto de entidades presupuestas en una teoría [1]. Ontología...
La Web Semántica
La Web Semántica según Tim Berners Lee                      Una web semántica es una red de datos que                     ...
Como esta La Web Semántica hoy• Hoyen día, las ideas propuestas por Berners-Lee sobre la Web Semántica [Berners-Lee][Shadb...
El problema…               ?
Web Semántica
DBPedia.org
Componentes de la Web SemánticaNo se trata de una inteligencia artificial mágica que permita a las máquinas entenderlas pa...
¿Qué es Resource Definition Framework? RDF es un modelo de datos para los recursos y las relaciones que se puedan establec...
¿Qué es SPARQL?SPARQL es lenguaje de consulta sobre RDF, que permite hacer búsquedas sobre losrecursos de la Web Semántica...
¿Qué es Ontology Web Language?OWL es un mecanismo para desarrollar temas o vocabularios específicos en los cualesasociar l...
Desarrollo Orientado   a la Semántica
Desarrollo Orientado a la SemánticaEl Desarrollo Orientado a la Semántica es un nuevoparadigma de desarrollo que toma como...
Desarrollo Orientado a la SemánticaEl Desarrollo Orientado a la Semántica tiene como objetivo elproporcionar a los analist...
Evolución de los paradigmas de desarrollo                           Desarrollo Orientado a la Semántica                   ...
Proceso de Desarrollo Orientado a la Semántica
Proceso de Desarrollo Orientado a la SemánticaProgramar Lógica Específica                  • ¿Qué hará el nuevo recurso?  ...
Proceso de Desarrollo Orientado a la Semántica Modelar el Recurso                 • ¿Qué va a ser el nuevo recurso?       ...
Proceso de Desarrollo Orientado a la Semántica Modelar el Recurso
Proceso de Desarrollo Orientado a la Semántica Generar Código                  • ¿Dónde se colocará el nuevo código?      ...
Proceso de Desarrollo Orientado a la Semántica Generar Código
Proceso de Desarrollo Orientado a la Semántica Generar Código
Formatos de representación de ontologíasGenerar Código                              Class, ObjectProperty, InverseOf      ...
Ventajas• Se enfocan los esfuerzos del equipo de desarrollo en el correcto modelado del dominio más  que en la definición ...
¿Qué es SemanticWebBuilder?                          SemanticWebBuilder       es                          una plataforma p...
SemanticWebBuilder Suite                                      SWBProcess              SWBOntology                         ...
Conclusiones
Conclusiones•   El Desarrollo Orientado a la Semántica es un nuevo paradigma que utiliza el    conocimiento como punto de ...
¿Preguntas?
Gracias         http://www.infotec.com.mx   http://www.semanticwebbuilder.org.mx   victor.hernandez@infotec.com.mx   sopor...
Programación orientada a la semántica
Upcoming SlideShare
Loading in …5
×

Programación orientada a la semántica

1,541 views

Published on

¿Cómo podemos desarrollar código orientado a la semántica? En esta presentación podrás conocer cómo y cuáles son las ventajas de hacerlo de esta manera.

Published in: Technology
1 Comment
1 Like
Statistics
Notes
No Downloads
Views
Total views
1,541
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
12
Comments
1
Likes
1
Embeds 0
No embeds

No notes for slide

Programación orientada a la semántica

  1. 1. Desarrollo Orientado a la Semántica
  2. 2. Agenda1 ¿Quién es INFOTEC? 2 ¿Qué es semántica? 3 La Web Semántica 4 Desarrollo Orientado a la Semántica 5 SemanticWebBuilder Suite 6 Preguntas
  3. 3. ¿Quién es INFOTEC?
  4. 4. Misión de la InstituciónSomos un Centro Público de Investigación,Innovación y Desarrollo Tecnológico delCONACYT que contribuye a lacompetitividad del Gobierno y de lasPyME’s, a través del uso estratégico deTecnologías de Información yComunicaciones.
  5. 5. ¿Qué es Semántica?
  6. 6. ¿Qué es Semántica?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 fraseRAE > Significado• Significación o sentido de una palabra o frase• Contenido semántico de cualquier tipo de signo, condicionado por el sistema y el contextoRAE > Sentido• Entendimiento o razón, en cuanto discierne las cosas• Modo particular de entender algo, o juicio que se hace de ello *RAE -- Real Academia Española
  7. 7. ¿Qué es Semántica?• 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.
  8. 8. ¿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.
  9. 9. ¿Qué es Semántica?Cómo percibimos y describimos el mundo hecha de usada para hecha de tiene tiene es una pertenece a tiene
  10. 10. ¿Qué es Semántica?Cómo Representar el mundo en una máquina (IA)
  11. 11. Qué es SemánticaOntologí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)
  12. 12. La Web Semántica
  13. 13. 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.
  14. 14. Como esta La Web Semántica hoy• Hoyen día, las ideas propuestas por Berners-Lee sobre la Web Semántica [Berners-Lee][Shadbolt ] son casi una realidad.• Ladisponibilidad de recursos en la Web, el poder de cómputo, las técnicas y estándaressemánticos como RDF [Klyne] y OWL [Motik] permiten a los grupos de investigación ydesarrollo construir poderosos mecanismos de software para representar y explorar laWeb de manera Semántica.• Actualmente existen herramientas que permiten añadir Semántica a las piezas de códigoo páginas Web existentes [Chiu] [Bizer] [Story] [Cowan et.al], sin embargo, se cuenta conpocas herramientas que permiten la creación de código totalmente semántico desde suconceptualización [Koide ] [Völkel] [Kalyanpur].• Más aún, sólo algunas herramientas integran una metodología y un API de desarrollopara construir aplicaciones semánticas [Solís et.al].
  15. 15. El problema… ?
  16. 16. Web Semántica
  17. 17. DBPedia.org
  18. 18. Componentes de la Web SemánticaNo se trata de una inteligencia artificial mágica que permita a las máquinas entenderlas palabras de los usuarios, es sólo la habilidad de una máquina para resolverproblemas bien definidos, a través de operaciones bien definidas que se llevarána cabo sobre datos existentes bien definidos.Para obtener esa adecuada definición de los datos, la Web Semántica utilizaesencialmente RDF, SPARQL, y OWL, mecanismos que ayudan a convertir la Web enuna infraestructura global en la que es posible compartir, y reutilizar datos ydocumentos entre diferentes aplicaciones y usuarios.
  19. 19. ¿Qué es Resource Definition Framework? 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. TRIPLAS <casa><hecha de><piedra> <casa><hecha de><madera> <casa><usada para><vivir>Triple: <casa><tiene><habitación> <casa><es una><construcción>Sujeto – Propiedad – Objeto <casa><pertenece a><Homero Simpson> < habitación><tiene><puerta> < habitación><tiene><ventana>
  20. 20. ¿Qué es SPARQL?SPARQL es lenguaje de consulta sobre RDF, que permite hacer búsquedas sobre losrecursos de la Web Semántica utilizando distintas fuentes datos.
  21. 21. ¿Qué es Ontology Web Language?OWL es un mecanismo para desarrollar temas o vocabularios específicos en los cualesasociar los recursos. Lo que hace OWL es proporcionar un lenguaje para definirontologí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 yla relación entre ellos.Específicamente OWL es un vocabulario para describir las propiedades y las clases delos recursos RDF, ya que permite establecer jerarquías de generalización entre dichaspropiedades y clases, además de describir relaciones entre clases como disyunción,cardinalidad (por ejemplo "únicamente uno"), igualdad, tipologías de propiedadesmás complejas, caracterización de propiedades (por ejemplo simetría) o clasesenumeradas.
  22. 22. Desarrollo Orientado a la Semántica
  23. 23. Desarrollo Orientado a la SemánticaEl Desarrollo Orientado a la Semántica es un nuevoparadigma de desarrollo que toma como punto departida el conocimiento de un dominio capturado enuna ontología para generar de manera automática laarquitectura y funcionalidad básica de un sistema desoftware cuyos objetos son persistentes de maneranativa en RDF
  24. 24. Desarrollo Orientado a la SemánticaEl Desarrollo Orientado a la Semántica tiene como objetivo elproporcionar a los analistas y desarrolladores los siguienteselementos:• Una metodología de desarrollo basada en un lenguaje flexible y de altonivel para capturar los requerimientos del sistema, soportado por el estándarOWL•Un API Semántica para el desarrollo acelerado y fácil mantenimiento deaplicaciones.•Un mecanismo de transformación de modelos que permita explotar el APIsemántica para la generación automática de aplicaciones.
  25. 25. Evolución de los paradigmas de desarrollo Desarrollo Orientado a la Semántica Modelos Ontológicos (conocimiento) Nivel de complejidad Nivel de abstracción Desarrollo Dirigido por Modelos Modelos orientados a objetos (relaciones) Programación Orientada a Objetos Lenguajes de Programación (objetos)
  26. 26. Proceso de Desarrollo Orientado a la Semántica
  27. 27. Proceso de Desarrollo Orientado a la SemánticaProgramar Lógica Específica • ¿Qué hará el nuevo recurso? • ¿Qué modos de despliegue necesita? • ¿El recurso será administrable? • ¿Qué diseño tendrá el recurso?
  28. 28. Proceso de Desarrollo Orientado a la Semántica Modelar el Recurso • ¿Qué va a ser 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?
  29. 29. Proceso de Desarrollo Orientado a la Semántica Modelar el Recurso
  30. 30. Proceso de Desarrollo Orientado a la Semántica 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?
  31. 31. Proceso de Desarrollo Orientado a la Semántica Generar Código
  32. 32. Proceso de Desarrollo Orientado a la Semántica Generar Código
  33. 33. Formatos de representación de ontologíasGenerar Código Class, ObjectProperty, InverseOf Class, DataType, Relation, SubClass Resource, Literal, Triple Estructura de árbol extensible
  34. 34. 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
  35. 35. ¿Qué es SemanticWebBuilder? SemanticWebBuilder es una plataforma para el desarrollo de aplicaciones y portales semánticos.
  36. 36. SemanticWebBuilder Suite SWBProcess SWBOntology Editor SWBModeler Utilerías SWBP SWBPortal Plug –In Componentes Soluciones (MS Office, Open Office) SWB Llave en mano SWBPlatform
  37. 37. Conclusiones
  38. 38. 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.
  39. 39. ¿Preguntas?
  40. 40. Gracias http://www.infotec.com.mx http://www.semanticwebbuilder.org.mx victor.hernandez@infotec.com.mx soportewb@infotec.com.mx Facebook/HersalVJ Twitter/hersalvjFacebook/Semius.SemanticWebBuilder Twitter/Semius_SWB

×