SlideShare a Scribd company logo
1 of 50
An Introduction to  the Semantic Web Dr. Harry Chen CMSC 491S/691S
Agenda ,[object Object],[object Object],[object Object],[object Object]
Revisiting Our Previous Discussion Slides from our class on  Feb 6, 2008
Who is reading your profile? ,[object Object],Got it! Contact, school, favorites… HTML detected. But, what’s in the page? In order to help computer programs to better understand our profiles and social relationships, we need to express information in an explicit representation.
A More Dramatic Example Adopted from Frank van Harmelen and Jim Hendler
A typical HTML web page
What it looks like to a machine
Okay, so HTML is not helpful Maybe we can tell the machine what the different parts of the text represent? title time speaker location abstract biosketch host
XML to rescue? XML fans propose creating a XML tag set to use for each application. For talks, we can choose <title>, <speaker>, etc. <title> <time> <speaker> <location> <abstract> <biosketch> <host> </host> </biosketch> </abstract> </location> </time> </speaker> </title>
XML    machine accessible meaning But, to your machine,  the tags still look like this…. The tag names carry no meaning. XML DTDs and Schemas have little or no semantics.              
XML Schema helps ,[object Object],<?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> XML Schema file                            
But there are many schemas <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> XML Schema file 42 <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> XML Schema file 1                <title> <time> <speaker> <location> <abstract> <biosketch> <host> </host> </biosketch> </abstract> </location> </time> </speaker> </title>
There’s no way to relate schema <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> Either manually or automatically. XML Schema is weak on semantics. XML Schema file 42 XML Schema file 1                <title> <time> <speaker> <location> <abstract> <biosketch> <host> </host> </biosketch> </abstract> </location> </time> </speaker> </title>
An Ontology level is needed We need a way to define ontologies in XML So we can relate them So machines can understand (to some degree) their meaning <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> XML Ontology 256  imports imports = <> ,[object Object],[object Object],[object Object],[object Object],<?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> XML Ontology 1  <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> XML Ontology 42
What did we learn from the example? ,[object Object],[object Object]
The Semantic Web, a Brief History
Origins ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],http://www.w3.org/History/1989/proposal.html
W3C’s Semantic Web Goals ,[object Object],[object Object],[object Object]
The Semantic Web Layer Cake Do you think this view is still valid in today’s Web?
Some history up till 2003
Latest in the Semantic Web ,[object Object],Online: http://www.docstoc.com/docs/document-preview.aspx?doc_id=271645 The Semantic Web in Action ; December 2007; Scientific American Magazine; by Lee Feigenbaum, Ivan Herman, Tonya Hongsermeier, Eric Neumann and Susie Stephens; 8 Page(s)
Potentials in the Semantic Web Vision ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ontology
Ontology in Organized Societies ,[object Object],[object Object],[object Object],[object Object],[object Object]
Why is this Funny? ,[object Object],(i) frenzied,  (j) innumerable,  (k) drawn with a very fine camelhair brush,  (l) et cetera,  (m) having just broken the water pitcher,  (n) that from a long way off look like flies. (a) belonging to the emperor,  (b) embalmed,  (c) tame,  (d) sucking pigs,  (e) sirens,  (f) fabulous,  (g) stray dogs,  (h) included in the present classification,  * http://agents.umbc.edu/misc/johnWilkins.html
Ontology in Philosophy ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Aristotle described an ontology of basic categories of predicates to des-cribe the world (Sowa, after Brentano)
EPA’s “Terms of Environment”
Ontology in Information Systems ,[object Object],[object Object],[object Object],[object Object]
UML diagrams as Ontologies
DB schemas as Ontologies
Our Focus ,[object Object],[object Object],[object Object],[object Object],[object Object]
Importance of Ontologies ,[object Object],[object Object],[object Object],[object Object],[object Object]
Teach Ontology to Machines
Let’s start with XML “ XML is Lisp's bastard nephew, with uglier syntax and no semantics. Yet XML is poised to enable the creation of a Web of data that dwarfs anything since the Library at Alexandria.” -- Philip Wadler,  Et tu XML? The fall of    the relational empire , VLDB, Rome,    September 2001.
Semantic Web Languages ,[object Object],[object Object]
URIs are a foundation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The RDF Data Model ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The RDF Graphs
RDF is the first SW language <rdf:RDF ……..> <….> <….> </rdf:RDF> XML Encoding Graph stmt(docInst, rdf_type, Document) stmt(personInst, rdf_type, Person) stmt(inroomInst, rdf_type, InRoom) stmt(personInst, holding, docInst) stmt(inroomInst, person, personInst) Triples RDF Data Model Good for  Machine Processing Good For  Human Viewing Good For  Reasoning RDF is a simple language for building graph based representations
RDF Schema (RDFS) ,[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],RDFS Vocabulary ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
RDF and RDF Schema <rdf:RDF   xmlns:g=“http://schema.org/gen”   xmlns:u=“http://schema.org/univ”> <u:Chair rdf:ID=“john”> <g:name>John Smith</g:name>   </u:Chair> </rdf:RDF> <rdfs:Property rdf:ID=“name”> <rdfs:domain rdf:resource=“Person”> </rdfs:Property> <rdfs:Class rdf:ID=“Chair”> <rdfs:subclassOf  rdf:resource= “ http://schema.org/gen#Person”> </rdfs:Class> u:Chair John Smith rdf:type g:name g:Person g:name rdfs:Class rdfs:Property rdf:type rdf:type rdf:type rdfs:subclassOf rdfs:domain
RDFS supports simple inferences ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],parent a property. person a class. woman subClass person. mother a property. eve a person; a woman; parent cain. cain a person. New and  Improved! 100% Better than XML!!
[object Object],[object Object],Web Ontology Language (OWL) OWL
OWL    RDF ,[object Object],[object Object],[object Object],[object Object],[object Object]
OWL Class Constructors borrowed from Ian Horrocks
OWL Axioms borrowed from Ian Horrocks
Summary ,[object Object],[object Object],[object Object],[object Object]
What we haven’t touched … ,[object Object],[object Object],[object Object],[object Object]
Homework ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

More Related Content

More from hchen1

Semantic HTML
Semantic HTMLSemantic HTML
Semantic HTMLhchen1
 
Geonames
GeonamesGeonames
Geonameshchen1
 
Google Maps API
Google Maps APIGoogle Maps API
Google Maps APIhchen1
 
Geospatial Web
Geospatial WebGeospatial Web
Geospatial Webhchen1
 
OpenSearch
OpenSearchOpenSearch
OpenSearchhchen1
 
RSS and Atom in the Social Web
RSS and Atom in the Social WebRSS and Atom in the Social Web
RSS and Atom in the Social Webhchen1
 
An Introduction to Ajax Programming
An Introduction to Ajax ProgrammingAn Introduction to Ajax Programming
An Introduction to Ajax Programminghchen1
 
Machine Tags
Machine TagsMachine Tags
Machine Tagshchen1
 
Web 2.0 Mashups
Web 2.0 MashupsWeb 2.0 Mashups
Web 2.0 Mashupshchen1
 
Gnizr Architecture (for developers)
Gnizr Architecture (for developers)Gnizr Architecture (for developers)
Gnizr Architecture (for developers)hchen1
 
Folksonomy and Tagging in the Social Web
Folksonomy and Tagging in the Social WebFolksonomy and Tagging in the Social Web
Folksonomy and Tagging in the Social Webhchen1
 
Developing Java Web Applications
Developing Java Web ApplicationsDeveloping Java Web Applications
Developing Java Web Applicationshchen1
 
Inside Gnizr
Inside GnizrInside Gnizr
Inside Gnizrhchen1
 
Social Web Technologies
Social Web TechnologiesSocial Web Technologies
Social Web Technologieshchen1
 

More from hchen1 (14)

Semantic HTML
Semantic HTMLSemantic HTML
Semantic HTML
 
Geonames
GeonamesGeonames
Geonames
 
Google Maps API
Google Maps APIGoogle Maps API
Google Maps API
 
Geospatial Web
Geospatial WebGeospatial Web
Geospatial Web
 
OpenSearch
OpenSearchOpenSearch
OpenSearch
 
RSS and Atom in the Social Web
RSS and Atom in the Social WebRSS and Atom in the Social Web
RSS and Atom in the Social Web
 
An Introduction to Ajax Programming
An Introduction to Ajax ProgrammingAn Introduction to Ajax Programming
An Introduction to Ajax Programming
 
Machine Tags
Machine TagsMachine Tags
Machine Tags
 
Web 2.0 Mashups
Web 2.0 MashupsWeb 2.0 Mashups
Web 2.0 Mashups
 
Gnizr Architecture (for developers)
Gnizr Architecture (for developers)Gnizr Architecture (for developers)
Gnizr Architecture (for developers)
 
Folksonomy and Tagging in the Social Web
Folksonomy and Tagging in the Social WebFolksonomy and Tagging in the Social Web
Folksonomy and Tagging in the Social Web
 
Developing Java Web Applications
Developing Java Web ApplicationsDeveloping Java Web Applications
Developing Java Web Applications
 
Inside Gnizr
Inside GnizrInside Gnizr
Inside Gnizr
 
Social Web Technologies
Social Web TechnologiesSocial Web Technologies
Social Web Technologies
 

Recently uploaded

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Recently uploaded (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

An Introduction to the Semantic Web

  • 1. An Introduction to the Semantic Web Dr. Harry Chen CMSC 491S/691S
  • 2.
  • 3. Revisiting Our Previous Discussion Slides from our class on Feb 6, 2008
  • 4.
  • 5. A More Dramatic Example Adopted from Frank van Harmelen and Jim Hendler
  • 6. A typical HTML web page
  • 7. What it looks like to a machine
  • 8. Okay, so HTML is not helpful Maybe we can tell the machine what the different parts of the text represent? title time speaker location abstract biosketch host
  • 9. XML to rescue? XML fans propose creating a XML tag set to use for each application. For talks, we can choose <title>, <speaker>, etc. <title> <time> <speaker> <location> <abstract> <biosketch> <host> </host> </biosketch> </abstract> </location> </time> </speaker> </title>
  • 10. XML  machine accessible meaning But, to your machine, the tags still look like this…. The tag names carry no meaning. XML DTDs and Schemas have little or no semantics.              
  • 11.
  • 12. But there are many schemas <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> XML Schema file 42 <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> XML Schema file 1               <title> <time> <speaker> <location> <abstract> <biosketch> <host> </host> </biosketch> </abstract> </location> </time> </speaker> </title>
  • 13. There’s no way to relate schema <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;> <xs:element name=&quot;book&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;title&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;author&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;character&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;> <xs:complexType> <xs:sequence> <xs:element name=&quot;name&quot; type=&quot;xs:string&quot;/> <xs:element name=&quot;friend-of&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/> <xs:element name=&quot;since&quot; type=&quot;xs:date&quot;/> <xs:element name=&quot;qualification&quot; type=&quot;xs:string&quot;/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name=&quot;isbn&quot; type=&quot;xs:string&quot;/> </xs:complexType> </xs:element> </xs:schema> Either manually or automatically. XML Schema is weak on semantics. XML Schema file 42 XML Schema file 1               <title> <time> <speaker> <location> <abstract> <biosketch> <host> </host> </biosketch> </abstract> </location> </time> </speaker> </title>
  • 14.
  • 15.
  • 16. The Semantic Web, a Brief History
  • 17.
  • 18.
  • 19. The Semantic Web Layer Cake Do you think this view is still valid in today’s Web?
  • 20. Some history up till 2003
  • 21.
  • 22.
  • 24.
  • 25.
  • 26.
  • 27. EPA’s “Terms of Environment”
  • 28.
  • 29. UML diagrams as Ontologies
  • 30. DB schemas as Ontologies
  • 31.
  • 32.
  • 33. Teach Ontology to Machines
  • 34. Let’s start with XML “ XML is Lisp's bastard nephew, with uglier syntax and no semantics. Yet XML is poised to enable the creation of a Web of data that dwarfs anything since the Library at Alexandria.” -- Philip Wadler, Et tu XML? The fall of the relational empire , VLDB, Rome, September 2001.
  • 35.
  • 36.
  • 37.
  • 39. RDF is the first SW language <rdf:RDF ……..> <….> <….> </rdf:RDF> XML Encoding Graph stmt(docInst, rdf_type, Document) stmt(personInst, rdf_type, Person) stmt(inroomInst, rdf_type, InRoom) stmt(personInst, holding, docInst) stmt(inroomInst, person, personInst) Triples RDF Data Model Good for Machine Processing Good For Human Viewing Good For Reasoning RDF is a simple language for building graph based representations
  • 40.
  • 41.
  • 42. RDF and RDF Schema <rdf:RDF xmlns:g=“http://schema.org/gen” xmlns:u=“http://schema.org/univ”> <u:Chair rdf:ID=“john”> <g:name>John Smith</g:name> </u:Chair> </rdf:RDF> <rdfs:Property rdf:ID=“name”> <rdfs:domain rdf:resource=“Person”> </rdfs:Property> <rdfs:Class rdf:ID=“Chair”> <rdfs:subclassOf rdf:resource= “ http://schema.org/gen#Person”> </rdfs:Class> u:Chair John Smith rdf:type g:name g:Person g:name rdfs:Class rdfs:Property rdf:type rdf:type rdf:type rdfs:subclassOf rdfs:domain
  • 43.
  • 44.
  • 45.
  • 46. OWL Class Constructors borrowed from Ian Horrocks
  • 47. OWL Axioms borrowed from Ian Horrocks
  • 48.
  • 49.
  • 50.