20/05/2016 Introducción a las Tecnologías de la Web Semántica Contenido El contexto de la Web Semántica Importancia Conceptos básicos Arquitectura Migrando a la Web Semántica Extracción de información Representación de información Lenguajes y herramientas XML y RDF SPARQL Caso práctico Generación de BD RDF Consulta de información en RDF Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 2 1 20/05/2016 El contexto de la Web Semántica Introducción a las Tecnologías de la Web Semántica 3 La Web Origen WWW, World Wide Web, W3, Web, Internet Tim Bernes-Lee, 1989 ( WWW, URIs, HTTP, and HTML) CERN (Conseil Européen pour la Recherche Nucléaire) Sistema de enlaces en el texto, hiperenlaces Enlace → texto en el mismo documento Enlace → texto en otra página (URL, dirección web) HTML (HyperText Markup Language) Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 4 2 20/05/2016 La Web Introducción a las Tecnologías de la Web Semántica 5 La Web Origen WWW, World Wide Web, W3, Web, Internet Tim Bernes-Lee, 1989 ( WWW, URIs, HTTP, and HTML) CERN (Conseil Européen pour la Recherche Nucléaire) Sistema de enlaces en el texto, hiperenlaces Enlace → texto en el mismo documento Enlace → texto en otra página (URL, dirección web) HTML (HyperText Markup Language) Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 6 3 20/05/2016 La Web Contenido Web apto para consumo humano Contenidos dinámicos sin la estructura de la información original Uso típico: buscar información buscar y contactar personas revisar catálogos en línea llenar formularios Uso típico: Introducción a las Tecnologías de la Web Semántica 7 La Web Hipervínculos para conectar recursos documentos, imágenes, audio, video No toda la información indexada Cada día se genera infinidad de páginas web (información) Los motores de búsqueda son la principal herramienta sobre internet No se recibe respuesta acorde a búsqueda Las páginas importantes y relevantes no se recuperan Los resultados son muy sensibles al vocabulario Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 8 4 20/05/2016 La Web Limitaciones de la Web actual Información ruidosa, imprecisa, poco confiable Información NO procesable por computadoras (sintáctica) El tamaño se duplica cada dos meses Búsquedas web en el 25% del total → Páginas indexables → Acceso a bases de datos Sitios con contraseña Intranets Foros Anuncios clasificados Catálogos de bibliotecas Páginas sin enlazar Introducción a las Tecnologías de la Web Semántica 9 La Web Deseable Información procesable por aplicaciones y humanos Necesidad de información Necesidad de razonamiento Aunque tamaño enorme, pero accesible Orden adecuado de la información Estructura adecuada Búsquedas en el ~80% del total Mejor organización → mejores resultados Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 10 5 20/05/2016 Web Semántica Organizar los datos en la Web de manera bien definida bien relacionada no sólo para propósitos de despliegue automatización integración reuso Introducción a las Tecnologías de la Web Semántica 11 Web Semántica SGML (Standard Generalized Markup Language) HTML XML (Extensible Markup Language) Finales de 1980 Inicialmente poca aceptación Auto definible Representación de documentos En formatos: RSS, Atom, SOAP y XHTML Microsoft Office (Office Open (OpenDocument), iWork (Apple) XML), OpenOffice, LibreOffice La Web Semántica consolida la semántica de los sublenguajes XML Mecanismos para que humanos y aplicaciones se interconecten Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 12 6 20/05/2016 Web Semántica Introducción a las Tecnologías de la Web Semántica 13 La Web HTML Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 14 7 20/05/2016 La Web HTML Introducción a las Tecnologías de la Web Semántica 15 La Web título autor fecha lugar resumen biografía host Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 16 8 20/05/2016 La Web <title> </title> <speaker> </speaker> <time> <location> </time> </location> <abstract> </abstract> <biosketch> </biosketch> </host> <host> Introducción a las Tecnologías de la Web Semántica 17 La Web <τιτλε> </τιτλε> <σπεακερ> </σπεακερ> <τιµε> <λοχατιον> </τιµε> </λοχατιον> <αβστραχτ> </αβστραχτ> <βιοσκετχη> </βιοσκετχη> <ηοστ> </ηοστ> Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 18 9 20/05/2016 La Web <?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="book"> <xs:complexType> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="author" type="xs:string"/> <xs:element name="character" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="friend-of" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="since" type="xs:date"/> <xs:element name="qualification" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="isbn" type="xs:string"/> </xs:complexType> </xs:element> </xs:schema> XML Schema <τιτλε> <σπεακερ> <τιµε> <λοχατιον> <αβστραχτ> <βιοσκετχη> <ηοστ> </τιτλε> </σπεακερ> </τιµε> </λοχατιον> </αβστραχτ> <title> <speaker> <time> <location> <abstract> <biosketch> </βιοσκετχη> </ηοστ> </title> </speaker> </time> </location> </abstract> </biosketch> <host> Introducción a las Tecnologías de la Web Semántica </host> 19 Web Semántica Evolución de la Web Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 20 10 20/05/2016 Web Semántica Propuesta Tim Berners-Lee Introducción a las Tecnologías de la Web Semántica 21 Web Semántica Grafo Codificación XML <rdf:RDF ……..> <….> <….> </rdf:RDF> RDF Data Model Legible por Humanos Procesable por computadora Tripletas stmt(docInst, rdf_type, Document) stmt(personInst, rdf_type, Person) stmt(inroomInst, rdf_type, InRoom) stmt(personInst, holding, docInst) stmt(inroomInst, person, personInst) Razonamiento Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 22 11 20/05/2016 Web Semántica Introducción a las Tecnologías de la Web Semántica 23 Web Semántica: Capas Capas de la Web Semántica Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 24 12 20/05/2016 Web Semántica: Capas Capas de la Web Semántica Introducción a las Tecnologías de la Web Semántica 25 Web Semántica: Capas Unicode → texto URI - Uniform Resource Identifier URL - Uniform Resource Locator URN - Uniform Resource Name es un identificador web, inicia con un esquema: ftp://ftp.is.co.za/rfc/rfc1808.txt gopher://spinaltap.micro.umn.edu/Weather/California/Los%20Angeles http://www.math.uio.no/faq/compression-faq/part1.html mailto:[email protected] news:comp.infosystems.www.servers.unix telnet://melvyl.ucop.edu/ Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 26 13 20/05/2016 Web Semántica: XML XML - Extensible Markup Language lenguaje de marcado reglas para representar documentos legible por humanos y computadoras <email> <to>Micky Mouse</to> <from>Donald</from> <body>Hey There!</body> </email> Introducción a las Tecnologías de la Web Semántica 27 Web Semántica: RDF RDF - Resource Description Framework RDF XML – formato estándar de intercambio Modelado de datos de meta-datos Tripletas sujeto-predicado-objeto Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 28 14 20/05/2016 Web Semántica: RDF RDF <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:foaf="http://xmlns.com/0.1/foaf/" > <rdf:Description rdf:about=""> <dc:creator rdf:parseType="Resource"> <foaf:name>Sean B. Palmer</foaf:name> </dc:creator> <dc:title>The Semantic Web: An Introduction</dc:title> </rdf:Description> </rdf:RDF> → <> <http://purl.org/dc/elements/1.1/creator> _:x0 . this <http://purl.org/dc/elements/1.1/title> "The Semantic Web: An Introduction" . _:x0 <http://xmlns.com/0.1/foaf/name> "Sean B. Palmer" . Introducción a las Tecnologías de la Web Semántica 29 Web Semántica: RDFS RDF - Schema Modelo para definición de tipos de dato para RDF "Fido" es un tipo de "Perro", "Perro" es una subclase de "animal" http://www.w3.org/2000/01/rdf-schema# prefijo "rdfs:" :Dog rdf:type rdfs:Class :Fido rdf:type :Dog :name rdf:type rdf:Property :Fido :name "Fido" :Human rdfs:subClassOf :Animal . :Duck rdfs:subClassOf :Animal . Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 30 15 20/05/2016 Web Semántica: SPARQL SPARQL - SPARQL Protocol and RDF Query Language Lenguaje de consulta para información en formato RDF PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?url FROM <bloggers.rdf> WHERE { ?contributor foaf:name "Jon Foobar" . ?contributor foaf:weblog ?url . } Introducción a las Tecnologías de la Web Semántica 31 Web Semántica: Ontologías DAML, DAML+OIL OWL – Ontology Web Language Familia de lenguajes de representación de conocimiento Para generación de ontologías Tienen una semántica bien definida y serializaciones RDF/XML OWL Lite, OWL DL, OWL Full Fido es un Perro Los perros son mascotas La IRI fue adicionada a la ontología por Pepito Perez Peter es padre de Stewie ClassAssertion( a:Perro a:Fido ) ClassAssertion( a:Mascota a:Perro ) AnnotationAssertion( a:addedBy a:Perro "Pepito Perez" ) ObjectPropertyAssertion( a:fatherOf a:Peter a:Stewie ) Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 32 16 20/05/2016 Web Semántica: Ontologías RIF – Rule Interchange Format Representa la capa de reglas, especificaciones Capa de intercambio entre lenguajes de reglas Reglas IF – THEN IF married(?x, ?y) THEN loves (?x, ?y) IF humano(?x) THEN piensa(?x) Dialectos: DTB: Datatypes and Built-Ins Core: subconjunto escencial de reglas FLD: Framework for Logic Dialects BLD: Basic Logic Dialect PRD: Production Rules Dialect Introducción a las Tecnologías de la Web Semántica 33 Web Semántica: Lógica Inferencia y Lógica Derivar nuevo conocimiento a partir del existente Encontrar algo que se desconocía Vigilar verdades que se cumplan para derivar otras Motores de razonamiento: Jena, Pellet, Cyc, KAON, CWM, Drools, FaCT++, Prova, HermiT, etc. Fundamentos de Lógica Clásica Lógica de predicados, Cláusulas Horn Satisfacción de restricciones Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 34 17 20/05/2016 Web Semántica: Lógica Inferencia y Lógica Introducción a las Tecnologías de la Web Semántica 35 Web Semántica: Confianza Trust Conocimiento generado/inferido/deducido Conservar el nuevo conocimiento como válido en el contexto Lo que sea válido en un principio que se conserve Mecanismo de generalización proof checking Sistemas de mantenimiento de la verdad Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 36 18 20/05/2016 Web Semántica: Confianza Trust Veracidad de los datos Confiabilidad de servidores → firmas digitales Certificados web Introducción a las Tecnologías de la Web Semántica 37 Web Semántica contenido web semántico después creador anotaciones semánticas lenguajes soporte lógico ontologías usuarios aplicaciones y servicios contenido web antes creador usuarios Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 38 19 20/05/2016 Web Semántica ¿Qué hacer? Desarrollar aplicaciones para la WS Creación y manejo de ontologías Meta-datos Trasladar aplicaciones web actuales a la WS Integración de recursos Etiquetado de recursos Meta-datos Introducción a las Tecnologías de la Web Semántica 39 Web Semántica Enfoques desarrollo de aplicaciones Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 40 20 20/05/2016 Web Semántica ¿Qué hacer? Desarrollar aplicaciones para la WS Crear páginas mediante RDF Usar ontologías existentes Dominios, contextos, áreas Tipos de datos Estructuras definidas Datos bien organización rastreados, validados que pueden ser procesados, Introducción a las Tecnologías de la Web Semántica 41 Web Semántica ¿Qué hacer? Desarrollar aplicaciones para la WS (herramientas) ambientes de desarrollo, editores, CMS sistemas de almacenamiento RDF ambientes de programación (java, python, C, C++, PHP, etc) razonadores generadores RDF validadores motores de búsqueda módulos SPARQL traductores datos ontológicos navegadores etiquetadores y vocabularios RDF y/o OWL Semantic Web Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 42 21 20/05/2016 Web Semántica ¿Qué hacer? Trasladar aplicaciones web actuales a la WS Screen Scraping Texto plano --> Publicar información en RDF Tomar datos sin organización semántica XSLT (Extensible Stylesheet Language Transformations) modelo XQuery and XPath Data (RDB) lenguaje funcional / lenguaje de reconocimiento de patrones en texto Expresiones regulares (Perl, Python, java) Introducción a las Tecnologías de la Web Semántica 43 Web Semántica etiquetar vocabulari os ontologías Trasladar aplicaciones Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 44 22 20/05/2016 Web Semántica Proyectos DBpedia – organización semántica de Wikipedia FOAF – vocabulario para definir personas (friend of a friend) Dublin Core – términos para describir recursos en línea Freebase – base de datos abierta de diversos temas Powerset – motor de búsqueda basado en lenguaje natural Hakia – motor de búsqueda web semántico Spock - motor de búsqueda semántico de personas SIOC – modelado de espacios web, comunidades Go PubMed – motor de búsqueda de conocimiento médico NextBio – base de datos etiquetada ciencia de la vida Introducción a las Tecnologías de la Web Semántica 45 Web Semántica DBpedia Esfuerzo comunitario para extraer información desde Wikipedia y hacerla accesible en la Web Semántica Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 46 23 20/05/2016 Web Semántica DBpedia • Categorías de Wikipedia • Clases YAGO • WordNet Synset Links Introducción a las Tecnologías de la Web Semántica 47 Web Semántica DBpedia Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 48 24 20/05/2016 Web Semántica FOAF Friend of a Friend (FOAF) es una ontología (diccionario estructurado) simple que describe personas y sus redes sociales http://www.foaf-project.org Aproximadamente 2,000,000 de archivos RDF FOAF válidos http://liveJournal.com <foaf:Person> <foaf:name>Speedy Gonzalez</foaf:name> <foaf:title>Mr</foaf:title> <foaf:firstName>Speedy</foaf:firstName> <foaf:surname>Gonzalez</foaf:surname> <foaf:nick>Speedy</foaf:nick> <foaf:homepage rdf:resource="http://www.spdglz.com"/> <foaf:weblog rdf:resource="http:// www.spdglz.com/blog"/> <foaf:schoolHomepage rdf:resource="http://www.ucheese.edu"/> <foaf:workplaceHomepage rdf:resource="http://www.warner.com"/> <foaf:workInfoHomepage rdf:resource="www.warner.com/~sglz/cheese.html"/> <!-- etc --> </foaf:Person> Introducción a las Tecnologías de la Web Semántica 49 Web Semántica FOAF Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 50 25 20/05/2016 Web Semántica Basics Agent Person name nick title homepage mbox mbox_sha1sum img depiction (depicts) surname family_name givenname firstName Personal Info weblog knows interest currentProject pastProject plan based_near workplaceHomepage workInfoHomepage schoolHomepage topic_interest publications geekcode myersBriggs dnaChecksum FOAF Documents & Images Document Image PersonalProfileDocument topic (page) primaryTopic tipjar sha1 made (maker) thumbnail logo Online Accts OnlineAccount OnlineChatAccount OnlineEcommerceAccount OnlineGamingAccount holdsAccount accountServiceHomepage accountName icqChatID msnChatID aimChatID jabberID yahooChatID Projects & Groups Project Organization Group member membershipClass fundedBy theme Introducción a las Tecnologías de la Web Semántica 51 Web Semántica Dublin Core Conjunto de términos para describir recursos con propósito de descubrimiento. Con los términos se pueden describir: páginas web, imágenes, video, archivos, documentos, libros, etc. Cumple IETF RFC 5013 (Internet Engineering Task Force) ISO Standard 15836-2009 (International Organization for Standardization) NISO Standard Z39.85 (National Information Standards Organization) Dublin Core Metadata Initiative desarrollo de estándares para intercambio de metadatos en línea http://dublincore.org Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 52 26 20/05/2016 Web Semántica Dublin Core Introducción a las Tecnologías de la Web Semántica 53 Web Semántica Dublin Core: propiedades Title Creator Subject Description Publisher Contributor Date Type Format Identifier Source Language Relation Coverage Rights Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 54 27 20/05/2016 Web Semántica Retos 1. Disponibilidad de contenidos 2. Disponibilidad de ontologías, desarrollo y evolución 3. Escalabilidad de los contenidos de la WS existentes 4. Diversidad lingüística 5. Visualización 6. Estandarización de lenguajes de la WS Introducción a las Tecnologías de la Web Semántica Cinvestav-Tamaulipas 2009-2010 55 28