Web Semántica de la teoría a la práctica: lecciones aprendidas en ambientes productivos
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Web Semántica de la teoría a la práctica: lecciones aprendidas en ambientes productivos

on

  • 775 views

En el INFOTEC se ha privilegiado la Web Semántica como plataforma de desarrollo por más de 10 años, lo cual ha tenido como resultado la construcción de varios productos Open Source, como lo es el ...

En el INFOTEC se ha privilegiado la Web Semántica como plataforma de desarrollo por más de 10 años, lo cual ha tenido como resultado la construcción de varios productos Open Source, como lo es el SemanticWebBuilder el cual está siendo utilizado en gran parte de los principales portales del gobierno mexicano. En esta presentación deseamos compartir nuestras experiencias y lecciones aprendidas en el uso de las técnicas y tecnologías asociadas a la Web Semántica en entornos productivos, buscando tener un número mayor de casos de éxito en esta tendencia de desarrollo.

Statistics

Views

Total Views
775
Views on SlideShare
757
Embed Views
18

Actions

Likes
0
Downloads
7
Comments
0

2 Embeds 18

http://red.gnoss.com 14
https://twitter.com 4

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Web Semántica de la teoría a la práctica: lecciones aprendidas en ambientes productivos Presentation Transcript

  • 1. Presentación de Web Semántica de la teoría a la práctica lecciones aprendidas en ambientes productivos
  • 2. Agenda 1 ¿Quién es Infotec? 2 Infotec y la Web Semántica 3 Resumen de la Web Semántica 4 En la práctica 5 Ejemplos 6 Conclusiones 7 Preguntas
  • 3. ¿Quién es INFOTEC?
  • 4. ¿Quién es INFOTEC? Somos un Centro Público de Innovación y Desarrollo Tecnológico que contribuye a la competitividad del Gobierno y de las PyMEs, a través del uso estratégico de Tecnologías de Información y Comunicaciones. INFOTEC = I + D + DT x i Oferta Investigación Aplicada y Bajo Demanda Formación de Capital Humano Consultoría Estratégica Sistemas de Información Estratégica Administración Integral de Infraestructura Estrategia basada en Arquitecturas Empresariales
  • 5. INFOTEC y la Web Semántica
  • 6. Evolución de SemanticWebBuilder + Semántica Necesidades de Navegación y Búsqueda SWB Social Command Center, SWB SBELL II, SWB4 Cloud ● 2014 Platfaroma de Datos Abiertos, SWBScoreCard Necesidades de Administración y Publicación SWB CONORG ● 2011 Soluciones Llave en mano (GLD, SWB SIP) ● ● 2009 ● 2007 WB 3.1 ● 2006 ● WB 1.0 ● 2000 ● WB 1.5 ● 2001 WB 2.5 ● 2004 WB 2.1 ● 2003 WB 2.0 2002 2005 2009 ● 2010 ● 2012 2013
  • 7. ¿Qué es SemanticWebBuilder? SemanticWebBuilder es una suite de herramientas para el desarrollo de aplicaciones y portales semánticos.
  • 8. SemanticWebBuilder Suite SWB Process •Modelador de Procesos (BPMN 2.0), Motor de procesos, Administrador de Formas, Monitoreo de Procesos, Repositorio de Documento de Proceso SWB4Cloud •Aprovisionamiento automático de instancias (IaaS) SWB Portal •Servidor de Portales, con administración de múltiples sitios e idioma., Administración de componentes (Portlets) y API de desarrollo, Administración de contenidos, Administración de contextos de información, Administración de Usuarios, Roles, Grupos y Reglas de Negocio, Monitoreo y Seguimiento de Usuarios, Reportes de Accesos, Componentes, Sesiones, FullPageCache (Modo ataque) SWB EndPoint •Punto de acceso para consultas semánticas (SPARQL) SWB Platform •Plataforma Semántica, Integración de Información (Fuentes externas), Generación de código basado en ontologías, Administración de cache de datos, Integración de Modelos Remotos SWB Triple Store • Persistencia de Datos (RDF), Soporte a integración de Base de Datos Semánticas, Relacional y Documentos
  • 9. SemanticWebBuilder Suite SWB4Domotic • Automatización y control de Ambientes Inteligentes SWB Score Card • Administración y Seguimiento de la planeación estrategia corporativa SWB Conorg • Administración del Conocimiento Organizacional Plataforma de Datos Abiertos • Administración y publicación de fuentes de datos SWB Social Media Command Center • Publicación de contenido a redes sociales, Identificación de sentimientos SWB GLD • Plataforma de Gobiernos Locales Digitales
  • 10. SemanticWebBuilder como Código Abierto En INFOTEC por su naturaleza como Centro de Investigación y Desarrollo Tecnológico del CONACYT y buscando como principal objetivo el apoyo a la comunidad más que el beneficio económico, se tomo la decisión de liberar el producto bajo un esquema de código abierto con la finalidad de: – Apoyar al crecimiento de la industria de TI en el país – Abrir una oportunidad de negocia a la iniciativa privada – Buscar el apoyo de la comunidad para crecer y evolucionar la herramienta – Incrementar el potencial de penetración en el mercado Esta decisión esta encaminada a brindar a la sociedad en general la oportunidad de contar con herramientas que le permitan el desarrollo de nuevas oportunidades de negocio en distintos ámbitos.
  • 11. SemanticWebBuilder Portal
  • 12. SemanticWebBuilder Portal
  • 13. Resumen de la Web Semántica
  • 14. La Web Semántica según Tim Berners Lee La 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.
  • 15. El problema… ?
  • 16. Web Semántica
  • 17. Componentes de la Web Semántica
  • 18. En la Práctica
  • 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 Triple: Sujeto – Propiedad – Objeto <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>
  • 20. RDF vs Relacional vs Objetos vs Herarquica
  • 21. Persistencia del RDF (Triple Stores) • Sin persistencia (En memoria) – – Jena GraphCached (SWB) • Base de Datos Relacionales – – – – – Jena RDB Jena SDB SWBTS SWBTSE Sesame • Base de Datos Nativas – – – – – Jena TDB Virtuoso (Jena TS, SWBTS4Virtuoso) BigData (SWBTS4BigData) 4Store AlegroGraph • Base de Datos Documentos – MongoDB (SWBTS4MongoDB)
  • 22. ¿Qué es SPARQL? SPARQL es lenguaje de consulta sobre RDF, que permite hacer búsquedas sobre los recursos de la Web Semántica utilizando distintas fuentes datos.
  • 23. DBPedia.org
  • 24. Transformación de Sparql a SQL SPARQL PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX prop: <http://www.swb.com/prop#> PREFIX onto: <http://www.swb.com/ontology#> PREFIX swb: <http://www.semanticwebbuilder.org/swb4/ontology#> select * where { ?s prop:nombre ?nombre. ?s a onto:Persona. ?s prop:telefono ?telefono. ?s prop:direccion ?direccion. ?direccion prop:estado ?estado. OPTIONAL { ?s prop:empresa ?empresa . ?empresa prop:nombre ?nempresa . ?empresa prop:fake ?fake. ?empresa prop:telefono ?telempresa. } } ORDER BY desc(?nombre) OFFSET 10 LIMIT 100 SQL select t3.subj as s, t0.obj as nombre, t2.obj as telefono, t4.subj as direccion, t4.obj as estado, t5.obj as empresa, t6.obj as nempresa, t7.obj as fake, t8.obj as telempresa from swb_graph_ts3 as t0 inner join swb_graph_ts3 as t1 on (t1.subj=t0.subj and t1.prop='uri|http://www.w3.org/1999/02/22-rdf-syntax-ns#type' and t1.obj='uri|http://www.swb.com/ontology#Persona') inner join swb_graph_ts3 as t2 on (t2.subj=t1.subj and t2.prop='uri|http://www.swb.com/prop#telefono') inner join swb_graph_ts3 as t3 on (t3.subj=t2.subj and t3.prop='uri|http://www.swb.com/prop#direccion') inner join swb_graph_ts3 as t4 on (t4.subj=t3.obj and t4.prop='uri|http://www.swb.com/prop#estado') left join swb_graph_ts3 as t5 on (t5.subj=t3.subj and t5.prop='uri|http://www.swb.com/prop#empresa') left join swb_graph_ts3 as t6 on (t6.subj=t5.obj and t6.prop='uri|http://www.swb.com/prop#nombre') left join swb_graph_ts3 as t7 on (t7.subj=t5.obj and t7.prop='uri|http://www.swb.com/prop#fake') left join swb_graph_ts3 as t8 on (t8.subj=t5.obj and t8.prop='uri|http://www.swb.com/prop#telefono') where t0.prop='uri|http://www.swb.com/prop#nombre' order by t0.obj desc limit 100 offset 10
  • 25. Apis de desarrollo de la Web Semántica • Jena y Sesame Son marcos de desarrollo para almacenamiento, consulta y razonamiento con RDF y RDF Schema. Puede ser usado como base de datos para RDF y RDF Schema, o como una librería de Java para aplicaciones que necesitan trabajar internamente con RDF.
  • 26. ¿SemanticWebBuilder Platform? SemWB Platform es el núcleo de la suite de herramientas, y es el principal componente de la plataforma para la construcción acelerada de aplicaciones basadas en modelos ontológicos. Esta plataforma permite definir en una ontología (OWL), la estructura de información, la arquitectura de objetos, sus dependencias y su representación gráfica, de forma que mediante estos elementos se pueda ejecutar un proceso automatizado que genera el código del modelo de objetos definido y su persistencia en una base de datos semántica (basada en RDF).
  • 27. Desarrollo Dirigido por Ontologías El Desarrollo Dirigido por Ontologías 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
  • 28. Transformación de Modelo Ontológico a Código Generar Código
  • 29. Transformación de Modelo Ontológico a Código Generar Código
  • 30. Web service client SOAP & WSDL XML & HTTP RESTful Web Services Portal Management User: groups, roles External Data LDAP server Monitoring: SWB resources, memory, hits HTML, Servlets, Portlets, JSPs Ajax, DOJO, Xforms SWB Architecture Word Excel Power Point Connection Pool Databases Jena RDF API MySQL, Oracle, DB2, Postgre SQL, Microsoft SQL Server 2005, HSQLDB, Apache Derby, Jena SDB SWB Resources, templates, languages Scheduling pages HTTP/HTTPS Versioning SPARQL queries Error handler Calendars, blogs, Forums, banners, Search engines. RDF repositories JDBC Content: SWB Resources External portlets Databases Navigation Office plug-in User repositories Rules: user, display, RDF repositories Caching Publishing flow Bigdata, Jena TDB, MongoDB Logging Querying tools File systems SPARQL Endpoint Presentation tier Business Logic tier Data access tier Application tier Client tier J2EE Application Server: jBoss, jetty, Apache tomcat, Glasfish, WebLogic Data store tier Model-Driven Code Generation Platform Security 34
  • 31. ¿Qué es Ontology Web Language? 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.
  • 32. Ventajas • Compartir el entendimiento común de la estructura de información entre personas o agentes de software • Permitir la reutilización de conocimiento de un dominio • Separar el conocimiento del dominio del conocimiento operacional • Analizar el conocimiento de un dominio
  • 33. Ontología VisitMexico
  • 34. Ontología SWB Portal
  • 35. Ontología SWB Process
  • 36. Linked Data Linked Data es una propuesta para publicar datos estructurados de tal forma que estos puedan ser conectados entre si y por lo tanto ser más útiles para el usuario. Linked Data propone utilizar tecnologías semánticas para: 1. Publicar datos estructurados en la Web, 2. Crear ligas entre los datos de nuestra aplicación con datos de otras fuentes de datos publicadas en la Web. RDF RDF RDF RDF RDF RDF RDF RDF RDF RDF RDF link A RDF links B RDF links C RDF links D E
  • 37. Linked Data Linked Data puede ser visto como el corazón de La Web Semántica: la integración a gran escala de datos en la Web, la cual pueda ser utilizada para realizar razonamientos y obtener conocimiento a partir de los datos. Tim Berners-Lee's TED talk in Feb 09
  • 38. Ejemplos
  • 39. Conclusiones La Web Semántica es ya una realidad y nos abre las puertas a un nuevo mundo de posibilidades, en donde la integracion de datos de diferentes fuentes es el puento principal. Tenemos que seguir trabajando en bases semanticas nativas que den viabilidad a la vision de la web semántica. Tenemos ya las bases para publicar información semántica, sin embargo hace falta incentivar a la comunidad de desarrollo para que se generen las aplicaciones que provean el valor agregado tanto para los usuarios de los sitios web como para los generadores de contenido.
  • 40. ¿Preguntas? www.infotec.com.mx www.semanticwebbuilder.org.mx ¡ Gracias ! Facebook / SemanticWebBuilder Twitter/ semius_SWB YouTube / semiusinforma SlideShare/ semiusinforma ING. Javier Solís González Gerentede Desarrollo de Nuevos Productosy Servicios javier.solis@infotec.com.mx Facebook/ softjei Twitter/ softjei D.R. © 2012, FONDO DE INFORMACIÓN Y DOCUMENTACIÓN PARA LA INDUSTRIA – INFOTEC Av. San Fernando, No. 37, Colonia Toriello Guerra, Delegación Tlalpan, C.P. 14050, México, D.F Se prohíbe la reproducción parcial o total de este documento