©2015 Eric Axel Franzon
SEO Meets Semantic Web(Meets St. Patrick’s Day)
Welcome!
©2015 Eric Axel Franzon
Eric FranzonManaging PartnerSemantic Fuse
A Roadmap for SEO Today and Tomorrow
SemanticWeb:
©2015 Eric Axel Franzon
Semantic Webis like the harmonica
©2015 Eric Axel Franzon
Easy to play
©2015 Eric Axel Franzon
Easy to play; takes work to master.
©2015 Eric Axel Franzon
What we’ll discuss
• What is Semantic Web?• Who’s using it?• What makes it work?
©2015 Eric Axel Franzon
What Is Semantic Web?
• A Web-scale architecture• A metadata technology• A layer of meaning on the Web• In use TODAY!
©2015 Eric Axel Franzon
What Is it Not?• A software package
• Something that will everbe “done”
• A replacement for thecurrent Web
©2015 Eric Axel Franzon
What Is it Not?• Limited to the public WWW
• A pipe dream
• A silver bullet
• HAL 9000 or Skynet
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
©2015 Eric Axel FranzonIoT Enhancements by Eric Franzon
IoT
©2015 Eric Axel Franzon
• Globally• Inexpensively• In Real-Time
(public)WorldWideWeb
HTTP
HTML
Based on W3C Standards
©2015 Eric Axel Franzon
• Globally• Inexpensively• In Real-Time
Behind the Firewall
(public)WorldWideWeb
HTTP
HTML
Based on W3C Standards
©2015 Eric Axel Franzon
• Globally• Inexpensively• In Real-Time
SemanticWeb
RDF
SPARQL
OWL
Based on W3C Standards
©2015 Eric Axel Franzon
• Globally• Inexpensively• In Real-Time
Behind the Firewall
SemanticWeb
RDF
SPARQL
OWL
Based on W3C Standards
©2015 Eric Axel Franzon
• to connect DATA• to make information
interpretable by machines
Semantic Web Standardsare used…
©2015 Eric Axel Franzon
Machine Interpretationas the Web Evolves…
©2015 Eric Axel Franzon
Web 1.0 – Linking Documents
©2015 Eric Axel Franzon
Web 1.0
“I see: characters + formatting + images”--my Computer
©2015 Eric Axel Franzon
Web 1.0 – Linking DocumentsWeb 2.0 – Linking People
©2015 Eric Axel Franzon
Web 2.0
“I see: characters + formatting + images”--my Computer
©2015 Eric Axel Franzon
It’s hard to interpret meaning when all you see are characters,
images, and formatting.
Context is critical.
©2015 Eric Axel Franzon
Web 1.0 – Linking DocumentsWeb 2.0 – Linking PeopleWeb 3.0 – Linking Data
©2015 Eric Axel Franzon
Web 3.0 – Linking DataTitle
Price
Format
Cover
Band
©2015 Eric Axel Franzon
Web 3.0 – Linking DataTitle
Price
Format
Cover
Band“I see: things + relationships. This is about a collection of music.”
©2015 Eric Axel Franzon
Q: What does “Linked Data” have to do with Semantic Web?
©2015 Eric Axel Franzon
A Quick word of disambiguation…
Semantic Web- A vision for a web of data
Semantic Web Standards- A specific set of standards
Linked Data- One application area of those
standards
©2015 Eric Axel Franzon
Semantic WebStandards
SemanticWeb
LinkedOpenData
©2015 Eric Axel Franzon
Semantic WebStandards
SemanticWeb
LinkedOpenData
LinkedData
©2015 Eric Axel Franzon
Linking Open Data ProjectMay, 2007
©2015 Eric Axel Franzon July 2009
©2015 Eric Axel Franzon
September 2011
©2015 Eric Axel Franzon
August 2014
©2015 Eric Axel Franzon
Data from these trusted sourcesis available for you
to use in your applications TODAY.
Data you can LINK to.
©2015 Eric Axel Franzon
Semantic Data that is machine READABLE.
…and machine INTERPRETABLE!
©2015 Eric Axel Franzon
Who’s Using Semantic Web Standards?
©2015 Eric Axel Franzon
• Healthcare / Life Sciences• Financial Services• Manufacturing / Retail• Marketing, Advertising• SEO/SEM• Libraries• Archives• Museums • Governments
Who’s Using Sem Web?
©2015 Eric Axel Franzon
Who’s Using Sem Web?
©2015 Eric Axel Franzon
Who’s Using Sem Web?
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
What it looks like
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
• Activities• Businesses• Groups• Organizations• People• Places• Products and Entertainment• Websites
Used to Describe
©2015 Eric Axel Franzon
What it looks like
©2015 Eric Axel Franzon
What it looks like<meta property='og:image' content="http://ia.media-imdb.com/images/M/MV5BMjA0MDYyNzczN15BMl5BanBnXkFtZTYwNjMzNjMz._V1_.jpg" />
<meta property='og:type' content="actor" /><meta property='fb:app_id' content='115109575169727' /><meta property='og:title' content="Peter O'Toole" /><meta property='og:site_name' content='IMDb' /><meta property="og:description" content="Peter O'Toole,
Actor: Lawrence of Arabia. A leading man of prodigious talents, Peter O'Toole was raised in Leeds, England, the son of Constance Jane Eliot (Ferguson), a Scottish nurse, and Patrick Joseph O'Toole, an Irish bookie. As a boy, he decided to become a journalist, beginning as a newspaper copy boy. Although he succeeded in becoming a reporter, he discovered the theater and made his stage debut at 17. He served as a radioman in ..." />
©2015 Eric Axel Franzon
Who’s Using Sem Web?
©2015 Eric Axel Franzon
What is schema.org?
“…A collection of schemas, i.e., html tags, that webmasters can use to markup their pages in ways recognized by major search providers.”
©2015 Eric Axel Franzon
e.g. Product Markup
©2015 Eric Axel Franzon
What it looks like
©2015 Eric Axel Franzon
e.g. TV Episode Markup
©2015 Eric Axel Franzon
What it looks like
©2015 Eric Axel Franzon
What it looks like
©2015 Eric Axel Franzon
e.g. Company
©2015 Eric Axel Franzon
What it looks like
©2015 Eric Axel Franzon
What it looks like
©2015 Eric Axel Franzon
Based on a sample of 12 billion web pages:
• ~5 million domains (6% of domains)
• 15 billion entities
• 65 billion triples
• 2.5 billion pages (~21% of pages)-Reported in an August 2014 SemTechBiz Keynote by R. V. Guha, Google Fellow
Schema.org Adoption
©2015 Eric Axel Franzon
A work in progress
©2015 Eric Axel Franzon
Growing Up• ~ 100 categories at launch in 2011• ~1200 by Sept. 2014
• Bibliographic Relationships & Periodicals (Sept. 2, 2014)
• Music, Video Games, Sports, breadcrumbs, itemList (Dec. 11, 2014)
• VisualArtwork, Invoices (Feb. 5, 2015)• Fixes to documentation, examples, &
general bugs (ongoing)
©2015 Eric Axel Franzon
Growing Pains
• Immature tools for• Publishing• Parsing• Evaluating
• Lack of understanding/Misinformation
©2015 Eric Axel Franzon
• Incorrect Signals being sent
• Global companies showing as local• Old data• Entities mismatched to concepts
Feeling the Pain
©2015 Eric Axel Franzon
When it does work, though…
©2015 Eric Axel Franzon
When it does work, though…
©2015 Eric Axel Franzon
When it does work, though…
©2015 Eric Axel Franzon
What makes SemWeb work?
©2015 Eric Axel Franzon
The Technologies of SemWeb
• Data• Schemas• Query Language
©2015 Eric Axel Franzon
The Data Language
ResourceDescriptionFramework
©2015 Eric Axel Franzon
“RDF is good for distributing dataacross the Web and pretendingit’s in one place.”
-Dean Allemang, Author, Semantic Web for the Working Ontologist
©2015 Eric Axel Franzon
• to connect DATA• to make it interpretable
by machines
RDF is used…
RDF is made up of triples!
©2015 Eric Axel Franzon
1. By uniquely identifying THINGS2. By uniquely identifying RELATIONSHIPS3. By using TRIPLES
Machine Interpretable - How?
©2015 Eric Axel Franzon
So, what’s a THING?
1. By uniquely identifying THINGS
©2015 Eric Axel Franzon
A THING is anything that can be uniquely identified by a URI or a literal (string)
Me
My postal code
The White House
L.A. County’s sales tax rate
http://ericaxel.com/eric.rdf#me
http://www.city-data.com/zips/59801.html
Lat: 38.89859 Long: -77.035971
9.750 %
http://ericfranzon.com/harpcase.jpg
©2015 Eric Axel Franzon
This is a collection of THINGS:
t_peopleName City State Post codeBill Carlsbad CA 92008Eric Missoula MT 59801
©2015 Eric Axel Franzon
Who’s your daddy?
1. By uniquely identifying THINGS2. By uniquely identifying RELATIONSHIPS
©2015 Eric Axel Franzon
Is Father of
©2015 Eric Axel Franzon
Is Father ofhttp://ericaxel.com/eric.rdf#me
©2015 Eric Axel Franzon
<owl:ObjectProperty rdf:ID="isFather"><rdfs:domain rdf:resource="#Person"/><rdfs:range rdf:resource="#Person"/>
</owl:ObjectProperty>
http://ericaxel.com/eric.rdf#mens:isFather
©2015 Eric Axel Franzon
Is Father of
<owl:ObjectProperty rdf:ID="isFather"><rdfs:domain rdf:resource="#Person"/><rdfs:range rdf:resource="#Person"/>
</owl:ObjectProperty>
http://ericaxel.com/eric.rdf#mens:isFather
©2015 Eric Axel Franzon
<owl:ObjectProperty rdf:ID="isFather"><rdfs:domain rdf:resource="#Person"/><rdfs:range rdf:resource="#Person"/>
</owl:ObjectProperty>
http://ericaxel.com/eric.rdf#mens:isFather
©2015 Eric Axel Franzon
<owl:ObjectProperty rdf:ID="isFather"><rdfs:domain rdf:resource="#Person"/><rdfs:range rdf:resource="#Person"/>
</owl:ObjectProperty>
ns:isFather
©2015 Eric Axel Franzon
1. By uniquely identifying THINGS2. By uniquely identifying RELATIONSHIPS3. By using TRIPLES
What’s a triple?
©2015 Eric Axel Franzon
The Building block of RDF
The Triple
©2015 Eric Axel Franzon
Triples? It’s Elementary! (School)
song has title.
©2015 Eric Axel Franzon
Triples? It’s Elementary! (School)
song has title.
Relationship
©2015 Eric Axel Franzon
Predicate
Triples? It’s Elementary! (School)
song has title.
©2015 Eric Axel Franzon
Triples? It’s Elementary! (School)
song has title.
That is a Triple!
©2015 Eric Axel Franzon
“This band recorded a song.”
“This recording is part of a collection.”
“This item has a barcode.”
“I like blues.”
“I like B.L.U.E.S.”
“This image can be used non-commercially.”
“My email address is [email protected].”
Triples? It’s Elementary!
©2015 Eric Axel Franzon
Song Has Title “Title”
Eric Created Webpage
Image Has License CC Non-Commercial
Make AssertionsSu
bjec
ts
Obj
ects
Predicates
©2015 Eric Axel Franzon
Song
Author Title
PublisherLyrics
A Simple Graph
©2015 Eric Axel Franzon
The Trouble with Triples
©2015 Eric Axel Franzon
Visualization of graph from Pharma space- Cytoscape.org
©2015 Eric Axel Franzon
Where does one store triples?
In a “triple store”
©2015 Eric Axel Franzon
Where does one store triples?
• Native Semantic Web stores• RDBMS databases• As native files (.rdf)• Woven into documents (RDFa)• Generated on the fly
©2015 Eric Axel Franzon
Just so you know…There are many ways of representing RDF:
• RDF/XML• N3• JSON-LD• N-Triples
• Turtle• RDFa• Microdata• Microformats
Each has pros and cons, but they all connect THINGS and RELATIONSHIPS into TRIPLES
©2015 Eric Axel Franzon
The Technologies of SemWeb
• Data• Schemas• Query Language
©2015 Eric Axel Franzon
The Schemata
Linked Data schemas consist of:
Your RDF relationships (predicates)+
Relationship descriptions
©2015 Eric Axel Franzon
SemWeb Schemata
id First Name Last Name
1 Barbara Starr
Schema
Data
Initial Schema
hasIDhasFirstName hasLastName
Barbara Starr1
owl:sameAs
hasSurname
Relationshipdescription
©2015 Eric Axel Franzon
Choosing Relationships
• Reuse popular vocabularies– FOAF (Friend-of-a-friend)– Dublin Core (library/publisher metadata)– SIOC (Semantically-Interlinked Online
Communities)– Schema.org
• ...or make up your own!
©2015 Eric Axel Franzon
1. Resource Description Framework Schema (RDFS): Simple, hierarchical classes
2. Simple Knowledge Organization System (SKOS): Port taxonomies to the Semantic Web
3. Web Ontology Language (OWL): Complex logical relationships
Relationship Descriptions
©2015 Eric Axel Franzon
Worldcat.org
• A project of the OCLC
©2015 Eric Axel Franzon
Vocabulary Combination “in the wild”
©2015 Eric Axel Franzon
Vocabulary Combination “in the wild”
©2015 Eric Axel Franzon
The Technologies of SemWeb
• Data• Schemas• Query Language
©2015 Eric Axel Franzon
The query language
SPARQLProtocolAndRDFQueryLanguage
SPARQL
©2015 Eric Axel Franzon
SPARQL allows us to:
• Pull values from structured & semi-structured data
• Explore data by querying unknown relationships
• Perform complex joins of disparate databases in a single, simple query
• Transform RDF data from one vocabulary to another
--Lee Feigenbaum, Cambridge Semantics
©2015 Eric Axel Franzon
Eric
©2015 Eric Axel Franzon
<hasDepiction>
Eric
©2015 Eric Axel Franzon
<hasLicense>
<hasDepiction>
Eric
©2015 Eric Axel Franzon
<hasLicense>
<hasDepiction>
<likes>
Eric
©2015 Eric Axel Franzon
<hasLicense>
<hasDepiction>
<likes>
<likes>
©2015 Eric Axel Franzon
<hasLicense>
<hasDepiction>
<likes>
<likes>
<likes>
Eric
©2015 Eric Axel Franzon
Chicago, Illinois
On the shores of Lake Michigan, Chicago is one of the major…
<hasLicense>
<wrote><hasDepiction>
<likes>
<likes>
<likes>
Eric
Bob
©2015 Eric Axel Franzon
Chicago, Illinois
On the shores of Lake Michigan, Chicago is one of the major…
<hasLicense>
<wrote>
<isAbout>
<hasDepiction>
<likes>
<likes>
<likes>
Eric
Bob
©2015 Eric Axel Franzon
Chicago, Illinois
On the shores of Lake Michigan, Chicago is one of the major…
<hasLicense>
<wrote>
<isAbout>
<livedIn>
<hasDepiction>
<likes>
<likes>
<likes>
Eric
Bob
©2015 Eric Axel Franzon
Chicago, Illinois
On the shores of Lake Michigan, Chicago is one of the major…
<hasLicense>
<hasLicense> <wrote>
<isAbout>
<livedIn>
<hasDepiction>
<likes>
<likes>
<likes>
Eric
Bob
©2015 Eric Axel Franzon
What can we ask of a system like this?
©2015 Eric Axel Franzon
Chicago, Illinois
On the shores of Lake Michigan, Chicago is one of the major…
<hasLicense>
<hasLicense> <wrote>
<isAbout>
<livedIn>
<hasDepiction>
<likes>
<likes>
<likes>
Bob
Eric
©2015 Eric Axel Franzon
Chicago, Illinois
On the shores of Lake Michigan, Chicago is one of the major…
<hasLicense>
<hasLicense> <wrote>
<isAbout>
<livedIn>
<hasDepiction>
<likes>
<likes>
<likes>
What does Eric Like?
Bob
Eric
©2015 Eric Axel Franzon
Chicago, Illinois
On the shores of Lake Michigan, Chicago is one of the major…
<hasLicense>
<hasLicense> <wrote>
<isAbout>
<livedIn>
<hasDepiction>
<likes>
<likes>
<likes>
What has a Creative Commons License?
Bob
Eric
©2015 Eric Axel Franzon
Chicago, Illinois
On the shores of Lake Michigan, Chicago is one of the major…
<hasLicense>
<hasLicense> <wrote>
<isAbout>
<livedIn>
<hasDepiction>
<likes>
<likes>
<likes>
What license does THIS document have?
Bob
Eric
©2015 Eric Axel Franzon
Chicago, Illinois
On the shores of Lake Michigan, Chicago is one of the major…
<hasLicense>
<hasLicense> <wrote>
<isAbout>
<livedIn>
<hasDepiction>
<likes>
<likes>
<likes>
What is liked by anyone who has lived somewhere that is the subject of a document Bob has written?
Bob
Eric
©2015 Eric Axel Franzon
SPARQL Queries
©2015 Eric Axel Franzon
SPARQL Example #1(specific endpoint – dbPedia)
Artists/Albums produced by PharrellPREFIX d: <http://dbpedia.org/ontology/>SELECT ?artistName ?albumNameWHERE {
?album d:producer :Pharrell_Williams .?album d:musicalArtist ?artist .?album rdfs:label ?albumName .?artist rdfs:label ?artistName .FILTER ( lang(?artistName) = "en" )FILTER (lang(?albumName) = "en" )
}
©2015 Eric Axel Franzon
SPARQL Example #1
©2015 Eric Axel Franzon
SPARQL Example #1
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
SPARQL Example #2(specific endpoint – dbPedia)
Musical artists who were born in or have a hometown in Irelandand the acts they performed with.
©2015 Eric Axel Franzon
SPARQL Example #2(specific endpoint – dbPedia)
PREFIX dbo: <http://dbpedia.org/ontology/>
SELECT DISTINCT ?name ?person ?artist WHERE {?person foaf:name ?name .?person rdf:type <http://dbpedia.org/ontology/MusicalArtist> .?person <http://dbpedia.org/ontology/associatedMusicalArtist>
?artist .{?person dbo:hometown
<http://dbpedia.org/resource/Republic_of_Ireland> .}UNION {?person dbo:birthPlace
<http://dbpedia.org/resource/Republic_of_Ireland> .}
}ORDER BY ?name
©2015 Eric Axel Franzon
SPARQL Example #2
©2015 Eric Axel Franzon
SPARQL Example #2
A major retailer ran this query…
associated it with the catalog of albums it sells…
and delivered a set of recommended purchases for St. Patrick’s Day!
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
SPARQL Query #3
• Show me all landlocked countries• With populations > 50,000• Display the country names in English• Eliminate duplicates
©2015 Eric Axel Franzon
SPARQL Query #3
• Show me all landlocked countries• With populations > 50,000• Display the country names in English• Eliminate duplicates
PREFIX type: <http://dbpedia.org/class/yago/>PREFIX prop: <http://dbpedia.org/property/>SELECT ?country_name ?populationWHERE {
?country a type:LandlockedCountries ;rdfs:label ?country_name ;prop:populationEstimate ?population .
FILTER (?population > 15000000 && langMatches(lang(?country_name), "EN")) .} ORDER BY DESC(?population)
©2015 Eric Axel Franzon
SPARQL Query #3 Results
©2015 Eric Axel Franzon
SPARQL Query #3
• Show me all landlocked countries• With populations > 50,000• Display the country names in English• Eliminate duplicates
PREFIX type: <http://dbpedia.org/class/yago/>PREFIX prop: <http://dbpedia.org/property/>SELECT ?country_name ?populationWHERE {
?country a type:LandlockedCountries ;rdfs:label ?country_name ;prop:populationEstimate ?population .
FILTER (?population > 15000000 && langMatches(lang(?country_name), "RU")) .} ORDER BY DESC(?population)
©2015 Eric Axel Franzon
SPARQL Query #3 Results
©2015 Eric Axel Franzon
• 8 KB text file with the .rdf extension• Hosted on my website• Information on me, my interests, and
people I know
My FOAF Profile
©2015 Eric Axel Franzon
SPARQL Example #4(generic endpoint)
FOAF (some people that Eric Franzon knows)
PREFIX foaf: <http://xmlns.com/foaf/0.1/>SELECT ?nameFROM <http://ericaxel.com/eric.rdf>WHERE {
?knower foaf:knows ?known .?known foaf:name ?name .
}
©2015 Eric Axel Franzon
SPARQL Example #4
©2015 Eric Axel Franzon
Example #4 - Results
©2015 Eric Axel Franzon
2 Disparate Data Sources:2 FOAF Profiles
©2015 Eric Axel Franzon
SPARQL Example #5Querying two FOAF Profiles
PREFIX foaf: <http://xmlns.com/foaf/0.1/>PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>SELECT ?nameFROM <http://ericaxel.com/eric.rdf>FROM <http://bosatsu.net/foaf/brian.rdf>WHERE {
?x rdf:type foaf:Person .?x foaf:name ?name .
}
©2015 Eric Axel Franzon
Where’s the Data?
What’sThe
Question?
©2015 Eric Axel Franzon
Example #5 - Results
©2015 Eric Axel Franzon
Another Benefit of querying Linked Data…
Data link to other data!
SPARQL Example #6
©2015 Eric Axel Franzon
1. Find these pieces of information:• Episode number• Airdate • Guest star • Chalkboard gag • Couch gag
2. Order them by Episode number
SPARQL Example #6
©2015 Eric Axel Franzon
SPARQL Example #6Bart Simpson's Linked Data (DBPedia)
SELECT ?epnum ?airdate ?guest_star ?chalkboard_gag?couch_gag WHERE {?s dbpedia2:airdate ?airdate .?s dbpedia2:blackboard ?chalkboard_gag .?s dbpedia2:guestStar ?guest_star .?s dbpedia2:episodeNo ?epnum .?s dbpedia2:couchGag ?couch_gag .} order by ?epnum
©2015 Eric Axel Franzon
SPARQL Example #6
©2015 Eric Axel Franzon
Example #6 - Results
©2015 Eric Axel Franzon
Following the Trail…
©2015 Eric Axel Franzon
©2015 Eric Axel Franzon
One More Thing…
©2015 Eric Axel Franzon
A little bit can be powerful!
©2015 Eric Axel Franzon
Questions? Operators are standing by.
THANK YOU!
[email protected]@EricAxelhttp://linkedin.com/in/ericfranzonhttps://plus.google.com/+EricFranzon
©2015 Eric Axel Franzon
• Semantic Markup Infusion• Semantic Data Fusion• Semantic SEO• Semantic Roadmap/Audit• Semantic Streamlining of Product Feeds/Catalogs• Semantic Consulting/Training• Semantic Interest Graph Generation
©2015 Eric Axel Franzon
Resourceshttps://flic.kr/p/6krdsM
https://flic.kr/p/p9jiDK
https://flic.kr/p/3q8afL
https://flic.kr/p/brJs4G
https://flic.kr/p/78rsTc
https://flic.kr/p/bpSeR2
http://www.flickr.com/photos/dawnmanser/3532853278/
http://www.flickr.com/photos/artolog/3983764041/
http://www.flickr.com/photos/97964364@N00/59780745/
http://www.flickr.com/photos/starwarsblog/
http://aldobucchi.com
http://www.addletters.com/pictures/bart-simpson-generator/3024046.htm
http://richard.cyganiak.de/2007/10/lod/