SlideShare a Scribd company logo
LDOW 2013
Describing Customizable Products on the Web of Data
Linked Data On the Web Workshop - Rio de Janeiro - May 14th, 2013
François-Paul Servant (francois-paul.servant@renault.com)
LDOW 2013
01 Publishing descriptions of customizable products
A challenging issue
02
03
Configuration as Linked Data
The Configuration Ontology
Designing sharable vocabularies
Requirements
LDOW 2013LDOW 2013
Publishing product descriptions on the web of data
 has recently gained momentum
 schema.org
 GoodRelations
 Use rich data for Web marketing
 in order to increase the visibility of commercial offers
 talking to all kinds of devices and agents
 search engines, price comparators, recommendation applications
 SEO ("search engine optimization")
LDOW 2013
LDOW 2013
What's about cars?
LDOW 2013
For cars, especially for new cars, results are a bit disappointing...
LDOW 2013
Books
- Completely Defined Products
- Few search criteria
- Comparisons of the offers on a small number of criteria
- ISBN
- <130.000.000 different books*
* http://booksearch.blogspot.com/2010/08/books-of-world-stand-up-and-be-counted.html
- Partially Defined Products
- Many criteria
- Comparisons on many criteria
- No id
- and... a huge diversity
Cars
LDOW 2013
Product ranges in the automotive industry are huge
1020
different cars for sale at Renault
LDOW 2013
Product ranges in the automotive industry are huge
Body styles x Engines x Gearboxes
x Colors
x Air Conditioning systems
x Radios
x Navigation systems
x Electronic Stability System?
x ABS?
x Sun-roof?
x ...
= 1025
LDOW 2013
Huge, and complex
Body styles x Engines x Gearboxes
x Colors
x Air Conditioning systems
x Radios
x Navigation systems
x Electronic Stability System?
x ABS?
x Sun-roof?
x ...
= 1025
Every combination of features is not possible :
technical, industrial and legal constraints, marketing policy
=1020- "Unglazed rear doors exclude rear wipers"
- "Rear electric windows imply front electric windows"
- ...
LDOW 2013
Huge, and complex
Body styles x Engines x Gearboxes
x Colors
x Air Conditioning systems
x Radios
x Navigation systems
x Electronic Stability System?
x ABS?
x Sun-roof?
x ...
= 1025
Every combination of features is not possible :
technical, industrial and legal constraints, marketing policy
=1020- "Unglazed rear doors exclude rear wipers"
- "Rear electric windows imply front electric windows"- ...
1 chance upon 100,000 to get an
existing car,
if you choose its features
without taking the constraints into account.
LDOW 2013
Description of an automotive range
 The range cannot be enumerated: defined "in intention"
 A set of Variables and Constraints between their values:
 a "Constraint Satisfaction Problem" (CSP)
 Computationally hard!
 Reasoning software required
LDOW 2013
How to publish such descriptions?
 The CSP can be represented using Semantic Web languages
 But publishing such data on the web would be too demanding of the clients
 Reasoning better hosted on the server
 So?
LDOW 2013
Configurators: an effective way of presenting a range to human users
LDOW 2013
Configurators: interactive definition of a car, one choice after the other
LDOW 2013
The configuration process
 at each step: list of possible choices, given the choices made so far
Previous selections Possible choices
LDOW 2013
A configurator as a REST service
 ConfigurationService?spec=spec1&spec=spec2&... (*)
 returns:
 = specifications compatible with the previous selections
 to choose specX: append "&spec=specX" to (*)
 (*) identifies a state of the configuration process
 = a "Configuration"
 = a Partially Defined Car
 = a subset of the range
 (*) : URI of configuration
Possible choices
Previous selections
LDOW 2013
Configuration as Linked Data
 ConfigurationService?spec=spec1&spec=spec2&... (*)
 returns the list of (compatible specification, URI of the refined configuration)
 eg. (specX, ConfigurationService?spec=spec1&spec=spec2&...&spec=specX)
 Configuration Process = Traversal of a graph of linked Configurations
 = Linked Data!
 Reasoning handled by the server, complexity hidden to the client
 a GUI just has to display the links
LDOW 2013
Entry point: the list of models
<http://uk.co.rplug.renault.com/docs#this>
a co:Configuration ;
co:possible
[ a co:ConfigurationLink ;
rdfs:label "Laguna Hatchback 2011"@en ;
co:linkedConf <http://uk.co.rplug.renault.com/c/BAv/AAI#this> ;
co:specToBeAdded <http://uk.co.rplug.renault.com/spec/BAv/LA3#this>
] ;
co:possible
[ a co:ConfigurationLink ;
rdfs:label "Mégane Sport Tourer"@en ;
co:linkedConf <http://uk.co.rplug.renault.com/c/BACp/AAI#this> ;
co:specToBeAdded <http://uk.co.rplug.renault.com/spec/BACp/M3K#this>
] ;
...
Renault range (UK)
Possible choices:
the list of models
I want a Laguna Hatchback...
LDOW 2013
The "Laguna Hatchback" configuration
<http://uk.co.rplug.renault.com/c/BAv/AAI#this>
a co:Configuration ;
co:chosenSpec <http://uk.co.rplug.renault.com/spec/BAv/LA3#this> ;
co:possible
[ a co:ConfigurationLink ;
co:linkedConf <http://uk.co.rplug.renault.com/c/BAv/AAMDg#this> ;
co:specToBeAdded <http://uk.co.rplug.renault.com/spec/BAv/PT1633_automatic_gearbox#this>
] ;
co:possible
[ a co:ConfigurationLink ;
...
<http://uk.co.rplug.renault.com/spec/BAv/PT1633_automatic_gearbox#this>
a co:Specification ;
rdfs:label "Automatic Gearbox"@en .
Possible choices
I want an automatic gearbox...
Previous selections
(encoded in the URI,
in clear in the data)
LDOW 2013
The "Laguna Hatchback, automatic gearbox" configuration
<http://uk.co.rplug.renault.com/c/BAv/AAMDg#this>
a co:Configuration ;
co:chosenSpec
<http://uk.co.rplug.renault.com/spec/BAv/LA3#this> ,
<http://uk.co.rplug.renault.com/spec/BAv/PT1633_automatic_gearbox#this>
co:possible
[ a co:ConfigurationLink ;
co:linkedConf <http://uk.co.rplug.renault.com/c/BAv/AAMDg#this> ;
co:specToBeAdded <http://uk.co.rplug.renault.com/spec/BAv/PT1628_diesel#this>
] ;
co:possible
[ a co:ConfigurationLink ;
...
gr:hasPriceSpecification [gr:hasCurrencyValue "21795"^^<http://www.w3.org/2001/XMLSchema#float>...] ;
co:impliedSpec <http://uk.co.rplug.renault.com/spec/BAv/PT1627_direct_common_rail_with_turbo#this>,...
co:impossible
[ a co:ConfigurationLink ;...
Possible choices
More info
Previous selections
(encoded in the URI,
in clear in the data)
LDOW 2013
Configuration ontology
 http://purl.org/configurationontology
 The configuration process as the traversal of a graph of Configurations
 3 main classes: Specification, Configuration and ConfigurationLink
 properties: chosenSpec, impliedSpec, possible, impossible, defaultSpec, etc
 the different kinds of relations between a Configuration and a Specification
 A generic, domain independent ontology
 not limited to the automotive industry
 doesn't depend on the vocabulary used for the specifications
 most online configurator applications could use it
LDOW 2013
Benefits
 Improved Architecture of the configuration server
 Web architecture
 Decreased development costs of web applications
 No need to understand the concepts underlying configuration
 No need to learn an API
 Just "display the data and follow the links"
 Data published on the web of data for e-business
 Accurate description of the range, that can be explored by crawlers
 just a matter of following links.
 Configuration URI: a global identifier for Partially Defined Products
LDOW 2013
Configuration URI: a global identifier for Partially Defined Products
 A Configuration
 = a "Partially Defined Product"
 a commercial offer
 has a "from price"
 can be described using GoodRelations
 a customer’s wish list (constrained by the definition of the range)
 BTW: an important thing, in a marketing point of view!
Conf URI
LDOW 2013
Aggregation of data from different publishers
 Range comparators, market places, etc.
 Companies will publish data using their own terms (URIs of specifications)
 many specifications are unique to a company
 and needs to be described, and therefore identified
 the ultimate goal of the configuration process is an order, defined in the
manufacturing company's terms
 no additional cost
 precision is lost when mapping to other vocabularies
 my:GorgeousPanoramicSunroof is more than a dbpedia:Sunroof
 Mapping required
 Use dbpedia URIs? Hmm...
 Reference thesaurus of specifications
 some shared way to say "diesel" or "CO2 emission level"
LDOW 2013
Reference thesaurus of Specifications
 There's none
 Some vocabularies attempt to describe cars
 but do not support Partially Defined Products (PDP)
 A PDP is not a completely defined one with some properties left undocumented!
 VSO ("Vehicle Sales Ontology")
 provides some terms, but uses a pattern than doesn't work for PDP:
 vso:fuelType rdfs:range vso:FuelTypeValue.
 foo:ACar vso:fuelType dbpedia:Diesel.
 No room left for the kind of the relation between the configuration and the specification (possible,
implied, etc)
 Should be enough to state once for all that: dbpedia:Diesel a vso:FuelTypeValue.
 Shift from vocabularies describing products to vocabularies defining classes
of Specifications
 hierarchies of terms, etc.
LDOW 2013
Conclusion
 Ranges of customizable products can be described as Linked Data
 URIs for Partially Defined Products
 A generic ontology
 Renault publishes data about its range
 10^20 cars (and more configurations) fully described in RDF
 http://{uk,br,fr,de,es,it}.co.rplug.renault.com/docs#this
(set ACCEPT HTTP Header to application/rdf+xml or to text/turtle)
 quick start guide (and a javascript configurator based on this data):
http://purl.org/configurationontology/quickstart
 Agents can crawl and use these data
 a challenge for Search Engines (10^20 is huge!)
 A reference thesaurus of classes of specifications would be helpful for
Range comparators
LDOW 2013
Compiled Range
Range description
(source data)
Compilation
(offline)
Configuration
Engine
Configurator
web app
HTTP
Range as Linked Data
(generated on the fly)
Jersey REST service
Crawler Agent
LDOW 2013
Indexing configurations
 Accurate description of the range, that can be explored by crawlers
 just a matter of following links.
 But 10^20 is huge!
 Partial indexing
 Based on the specifications
 Beware to the semantics of the properties!
 spec1 and spec2 can both be compatible with a given configuration, but not (spec1 and spec2) -
 only way to know: query the configuration service
 Choose the indexing strategy
 some specifications have more value than others
 Sitemap
 which configurations should be included to get the most of it from a marketing
point of view?

More Related Content

Similar to Describing Customizable Products on the Web of Data (LDOW 2013)

Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...
Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...
Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...
HostedbyConfluent
 
ASP.NET Unit-4.pdf
ASP.NET Unit-4.pdfASP.NET Unit-4.pdf
ASP.NET Unit-4.pdf
abiraman7
 
Dive into Angular, part 1: Introduction
Dive into Angular, part 1: IntroductionDive into Angular, part 1: Introduction
Dive into Angular, part 1: Introduction
Oleksii Prohonnyi
 
Primavera integration possibilities Technical overview - Oracle Primavera Col...
Primavera integration possibilities Technical overview - Oracle Primavera Col...Primavera integration possibilities Technical overview - Oracle Primavera Col...
Primavera integration possibilities Technical overview - Oracle Primavera Col...
p6academy
 
Dsl for-soa-artefacts
Dsl for-soa-artefactsDsl for-soa-artefacts
Dsl for-soa-artefacts
Guido Schmutz
 
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB
 
OGSD 7.0 Release Overview
OGSD 7.0 Release OverviewOGSD 7.0 Release Overview
OGSD 7.0 Release Overview
Thorsten Klingspor
 
Webinar on MongoDB BI Connectors
Webinar on MongoDB BI ConnectorsWebinar on MongoDB BI Connectors
Webinar on MongoDB BI Connectors
Sumit Sarkar
 
MongoDB on Azure
MongoDB on AzureMongoDB on Azure
MongoDB on Azure
Norberto Leite
 
Comparison of Cloud Computing Services | Torry Harris Whitepaper
Comparison of Cloud Computing Services | Torry Harris WhitepaperComparison of Cloud Computing Services | Torry Harris Whitepaper
Comparison of Cloud Computing Services | Torry Harris Whitepaper
Torry Harris Business Solutions
 
AngularJS Introduction
AngularJS IntroductionAngularJS Introduction
AngularJS Introduction
Carlos Morales
 
Node: The Integration Fabric of the Future
Node: The Integration Fabric of the FutureNode: The Integration Fabric of the Future
Node: The Integration Fabric of the Future
Albert Tsang
 
MAX 2008: Build collaborative applications with Flex LCDS and Cairngorm
MAX 2008: Build collaborative applications with Flex LCDS and CairngormMAX 2008: Build collaborative applications with Flex LCDS and Cairngorm
MAX 2008: Build collaborative applications with Flex LCDS and CairngormXavier Agnetti
 
In Automotive Environments - HU Michel
In Automotive Environments - HU MichelIn Automotive Environments - HU Michel
In Automotive Environments - HU Michel
mfrancis
 
Dynamics nav 2009 r2 launch iceland technical track external
Dynamics nav 2009 r2 launch iceland technical track externalDynamics nav 2009 r2 launch iceland technical track external
Dynamics nav 2009 r2 launch iceland technical track external
Gunnar Gestsson
 
Alexandr Golyak, Nikolay Chertkov "Automotive Testing vs Test Automatio"
Alexandr Golyak, Nikolay Chertkov  "Automotive Testing vs Test Automatio"Alexandr Golyak, Nikolay Chertkov  "Automotive Testing vs Test Automatio"
Alexandr Golyak, Nikolay Chertkov "Automotive Testing vs Test Automatio"
LogeekNightUkraine
 
Bridging the Gap: Single-Page Apps and AEM
Bridging the Gap: Single-Page Apps and AEMBridging the Gap: Single-Page Apps and AEM
Bridging the Gap: Single-Page Apps and AEM
rbl002
 
Service-Finder presentation at ESTC2008
Service-Finder presentation at ESTC2008Service-Finder presentation at ESTC2008
Service-Finder presentation at ESTC2008servicefinder
 
Realizing Service Finder at ESTC 2008
Realizing Service Finder at ESTC 2008Realizing Service Finder at ESTC 2008
Realizing Service Finder at ESTC 2008
Emanuele Della Valle
 

Similar to Describing Customizable Products on the Web of Data (LDOW 2013) (20)

Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...
Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...
Making your Life Easier with MongoDB and Kafka (Robert Walters, MongoDB) Kafk...
 
Csb(박준성교수 080813)
Csb(박준성교수 080813)Csb(박준성교수 080813)
Csb(박준성교수 080813)
 
ASP.NET Unit-4.pdf
ASP.NET Unit-4.pdfASP.NET Unit-4.pdf
ASP.NET Unit-4.pdf
 
Dive into Angular, part 1: Introduction
Dive into Angular, part 1: IntroductionDive into Angular, part 1: Introduction
Dive into Angular, part 1: Introduction
 
Primavera integration possibilities Technical overview - Oracle Primavera Col...
Primavera integration possibilities Technical overview - Oracle Primavera Col...Primavera integration possibilities Technical overview - Oracle Primavera Col...
Primavera integration possibilities Technical overview - Oracle Primavera Col...
 
Dsl for-soa-artefacts
Dsl for-soa-artefactsDsl for-soa-artefacts
Dsl for-soa-artefacts
 
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
 
OGSD 7.0 Release Overview
OGSD 7.0 Release OverviewOGSD 7.0 Release Overview
OGSD 7.0 Release Overview
 
Webinar on MongoDB BI Connectors
Webinar on MongoDB BI ConnectorsWebinar on MongoDB BI Connectors
Webinar on MongoDB BI Connectors
 
MongoDB on Azure
MongoDB on AzureMongoDB on Azure
MongoDB on Azure
 
Comparison of Cloud Computing Services | Torry Harris Whitepaper
Comparison of Cloud Computing Services | Torry Harris WhitepaperComparison of Cloud Computing Services | Torry Harris Whitepaper
Comparison of Cloud Computing Services | Torry Harris Whitepaper
 
AngularJS Introduction
AngularJS IntroductionAngularJS Introduction
AngularJS Introduction
 
Node: The Integration Fabric of the Future
Node: The Integration Fabric of the FutureNode: The Integration Fabric of the Future
Node: The Integration Fabric of the Future
 
MAX 2008: Build collaborative applications with Flex LCDS and Cairngorm
MAX 2008: Build collaborative applications with Flex LCDS and CairngormMAX 2008: Build collaborative applications with Flex LCDS and Cairngorm
MAX 2008: Build collaborative applications with Flex LCDS and Cairngorm
 
In Automotive Environments - HU Michel
In Automotive Environments - HU MichelIn Automotive Environments - HU Michel
In Automotive Environments - HU Michel
 
Dynamics nav 2009 r2 launch iceland technical track external
Dynamics nav 2009 r2 launch iceland technical track externalDynamics nav 2009 r2 launch iceland technical track external
Dynamics nav 2009 r2 launch iceland technical track external
 
Alexandr Golyak, Nikolay Chertkov "Automotive Testing vs Test Automatio"
Alexandr Golyak, Nikolay Chertkov  "Automotive Testing vs Test Automatio"Alexandr Golyak, Nikolay Chertkov  "Automotive Testing vs Test Automatio"
Alexandr Golyak, Nikolay Chertkov "Automotive Testing vs Test Automatio"
 
Bridging the Gap: Single-Page Apps and AEM
Bridging the Gap: Single-Page Apps and AEMBridging the Gap: Single-Page Apps and AEM
Bridging the Gap: Single-Page Apps and AEM
 
Service-Finder presentation at ESTC2008
Service-Finder presentation at ESTC2008Service-Finder presentation at ESTC2008
Service-Finder presentation at ESTC2008
 
Realizing Service Finder at ESTC 2008
Realizing Service Finder at ESTC 2008Realizing Service Finder at ESTC 2008
Realizing Service Finder at ESTC 2008
 

Recently uploaded

By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
Jen Stirrup
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
Globus
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 

Recently uploaded (20)

By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 

Describing Customizable Products on the Web of Data (LDOW 2013)

  • 1. LDOW 2013 Describing Customizable Products on the Web of Data Linked Data On the Web Workshop - Rio de Janeiro - May 14th, 2013 François-Paul Servant (francois-paul.servant@renault.com)
  • 2. LDOW 2013 01 Publishing descriptions of customizable products A challenging issue 02 03 Configuration as Linked Data The Configuration Ontology Designing sharable vocabularies Requirements
  • 3. LDOW 2013LDOW 2013 Publishing product descriptions on the web of data  has recently gained momentum  schema.org  GoodRelations  Use rich data for Web marketing  in order to increase the visibility of commercial offers  talking to all kinds of devices and agents  search engines, price comparators, recommendation applications  SEO ("search engine optimization")
  • 6. LDOW 2013 For cars, especially for new cars, results are a bit disappointing...
  • 7. LDOW 2013 Books - Completely Defined Products - Few search criteria - Comparisons of the offers on a small number of criteria - ISBN - <130.000.000 different books* * http://booksearch.blogspot.com/2010/08/books-of-world-stand-up-and-be-counted.html - Partially Defined Products - Many criteria - Comparisons on many criteria - No id - and... a huge diversity Cars
  • 8. LDOW 2013 Product ranges in the automotive industry are huge 1020 different cars for sale at Renault
  • 9. LDOW 2013 Product ranges in the automotive industry are huge Body styles x Engines x Gearboxes x Colors x Air Conditioning systems x Radios x Navigation systems x Electronic Stability System? x ABS? x Sun-roof? x ... = 1025
  • 10. LDOW 2013 Huge, and complex Body styles x Engines x Gearboxes x Colors x Air Conditioning systems x Radios x Navigation systems x Electronic Stability System? x ABS? x Sun-roof? x ... = 1025 Every combination of features is not possible : technical, industrial and legal constraints, marketing policy =1020- "Unglazed rear doors exclude rear wipers" - "Rear electric windows imply front electric windows" - ...
  • 11. LDOW 2013 Huge, and complex Body styles x Engines x Gearboxes x Colors x Air Conditioning systems x Radios x Navigation systems x Electronic Stability System? x ABS? x Sun-roof? x ... = 1025 Every combination of features is not possible : technical, industrial and legal constraints, marketing policy =1020- "Unglazed rear doors exclude rear wipers" - "Rear electric windows imply front electric windows"- ... 1 chance upon 100,000 to get an existing car, if you choose its features without taking the constraints into account.
  • 12. LDOW 2013 Description of an automotive range  The range cannot be enumerated: defined "in intention"  A set of Variables and Constraints between their values:  a "Constraint Satisfaction Problem" (CSP)  Computationally hard!  Reasoning software required
  • 13. LDOW 2013 How to publish such descriptions?  The CSP can be represented using Semantic Web languages  But publishing such data on the web would be too demanding of the clients  Reasoning better hosted on the server  So?
  • 14. LDOW 2013 Configurators: an effective way of presenting a range to human users
  • 15. LDOW 2013 Configurators: interactive definition of a car, one choice after the other
  • 16. LDOW 2013 The configuration process  at each step: list of possible choices, given the choices made so far Previous selections Possible choices
  • 17. LDOW 2013 A configurator as a REST service  ConfigurationService?spec=spec1&spec=spec2&... (*)  returns:  = specifications compatible with the previous selections  to choose specX: append "&spec=specX" to (*)  (*) identifies a state of the configuration process  = a "Configuration"  = a Partially Defined Car  = a subset of the range  (*) : URI of configuration Possible choices Previous selections
  • 18. LDOW 2013 Configuration as Linked Data  ConfigurationService?spec=spec1&spec=spec2&... (*)  returns the list of (compatible specification, URI of the refined configuration)  eg. (specX, ConfigurationService?spec=spec1&spec=spec2&...&spec=specX)  Configuration Process = Traversal of a graph of linked Configurations  = Linked Data!  Reasoning handled by the server, complexity hidden to the client  a GUI just has to display the links
  • 19. LDOW 2013 Entry point: the list of models <http://uk.co.rplug.renault.com/docs#this> a co:Configuration ; co:possible [ a co:ConfigurationLink ; rdfs:label "Laguna Hatchback 2011"@en ; co:linkedConf <http://uk.co.rplug.renault.com/c/BAv/AAI#this> ; co:specToBeAdded <http://uk.co.rplug.renault.com/spec/BAv/LA3#this> ] ; co:possible [ a co:ConfigurationLink ; rdfs:label "Mégane Sport Tourer"@en ; co:linkedConf <http://uk.co.rplug.renault.com/c/BACp/AAI#this> ; co:specToBeAdded <http://uk.co.rplug.renault.com/spec/BACp/M3K#this> ] ; ... Renault range (UK) Possible choices: the list of models I want a Laguna Hatchback...
  • 20. LDOW 2013 The "Laguna Hatchback" configuration <http://uk.co.rplug.renault.com/c/BAv/AAI#this> a co:Configuration ; co:chosenSpec <http://uk.co.rplug.renault.com/spec/BAv/LA3#this> ; co:possible [ a co:ConfigurationLink ; co:linkedConf <http://uk.co.rplug.renault.com/c/BAv/AAMDg#this> ; co:specToBeAdded <http://uk.co.rplug.renault.com/spec/BAv/PT1633_automatic_gearbox#this> ] ; co:possible [ a co:ConfigurationLink ; ... <http://uk.co.rplug.renault.com/spec/BAv/PT1633_automatic_gearbox#this> a co:Specification ; rdfs:label "Automatic Gearbox"@en . Possible choices I want an automatic gearbox... Previous selections (encoded in the URI, in clear in the data)
  • 21. LDOW 2013 The "Laguna Hatchback, automatic gearbox" configuration <http://uk.co.rplug.renault.com/c/BAv/AAMDg#this> a co:Configuration ; co:chosenSpec <http://uk.co.rplug.renault.com/spec/BAv/LA3#this> , <http://uk.co.rplug.renault.com/spec/BAv/PT1633_automatic_gearbox#this> co:possible [ a co:ConfigurationLink ; co:linkedConf <http://uk.co.rplug.renault.com/c/BAv/AAMDg#this> ; co:specToBeAdded <http://uk.co.rplug.renault.com/spec/BAv/PT1628_diesel#this> ] ; co:possible [ a co:ConfigurationLink ; ... gr:hasPriceSpecification [gr:hasCurrencyValue "21795"^^<http://www.w3.org/2001/XMLSchema#float>...] ; co:impliedSpec <http://uk.co.rplug.renault.com/spec/BAv/PT1627_direct_common_rail_with_turbo#this>,... co:impossible [ a co:ConfigurationLink ;... Possible choices More info Previous selections (encoded in the URI, in clear in the data)
  • 22. LDOW 2013 Configuration ontology  http://purl.org/configurationontology  The configuration process as the traversal of a graph of Configurations  3 main classes: Specification, Configuration and ConfigurationLink  properties: chosenSpec, impliedSpec, possible, impossible, defaultSpec, etc  the different kinds of relations between a Configuration and a Specification  A generic, domain independent ontology  not limited to the automotive industry  doesn't depend on the vocabulary used for the specifications  most online configurator applications could use it
  • 23. LDOW 2013 Benefits  Improved Architecture of the configuration server  Web architecture  Decreased development costs of web applications  No need to understand the concepts underlying configuration  No need to learn an API  Just "display the data and follow the links"  Data published on the web of data for e-business  Accurate description of the range, that can be explored by crawlers  just a matter of following links.  Configuration URI: a global identifier for Partially Defined Products
  • 24. LDOW 2013 Configuration URI: a global identifier for Partially Defined Products  A Configuration  = a "Partially Defined Product"  a commercial offer  has a "from price"  can be described using GoodRelations  a customer’s wish list (constrained by the definition of the range)  BTW: an important thing, in a marketing point of view! Conf URI
  • 25. LDOW 2013 Aggregation of data from different publishers  Range comparators, market places, etc.  Companies will publish data using their own terms (URIs of specifications)  many specifications are unique to a company  and needs to be described, and therefore identified  the ultimate goal of the configuration process is an order, defined in the manufacturing company's terms  no additional cost  precision is lost when mapping to other vocabularies  my:GorgeousPanoramicSunroof is more than a dbpedia:Sunroof  Mapping required  Use dbpedia URIs? Hmm...  Reference thesaurus of specifications  some shared way to say "diesel" or "CO2 emission level"
  • 26. LDOW 2013 Reference thesaurus of Specifications  There's none  Some vocabularies attempt to describe cars  but do not support Partially Defined Products (PDP)  A PDP is not a completely defined one with some properties left undocumented!  VSO ("Vehicle Sales Ontology")  provides some terms, but uses a pattern than doesn't work for PDP:  vso:fuelType rdfs:range vso:FuelTypeValue.  foo:ACar vso:fuelType dbpedia:Diesel.  No room left for the kind of the relation between the configuration and the specification (possible, implied, etc)  Should be enough to state once for all that: dbpedia:Diesel a vso:FuelTypeValue.  Shift from vocabularies describing products to vocabularies defining classes of Specifications  hierarchies of terms, etc.
  • 27. LDOW 2013 Conclusion  Ranges of customizable products can be described as Linked Data  URIs for Partially Defined Products  A generic ontology  Renault publishes data about its range  10^20 cars (and more configurations) fully described in RDF  http://{uk,br,fr,de,es,it}.co.rplug.renault.com/docs#this (set ACCEPT HTTP Header to application/rdf+xml or to text/turtle)  quick start guide (and a javascript configurator based on this data): http://purl.org/configurationontology/quickstart  Agents can crawl and use these data  a challenge for Search Engines (10^20 is huge!)  A reference thesaurus of classes of specifications would be helpful for Range comparators
  • 28.
  • 29. LDOW 2013 Compiled Range Range description (source data) Compilation (offline) Configuration Engine Configurator web app HTTP Range as Linked Data (generated on the fly) Jersey REST service Crawler Agent
  • 30. LDOW 2013 Indexing configurations  Accurate description of the range, that can be explored by crawlers  just a matter of following links.  But 10^20 is huge!  Partial indexing  Based on the specifications  Beware to the semantics of the properties!  spec1 and spec2 can both be compatible with a given configuration, but not (spec1 and spec2) -  only way to know: query the configuration service  Choose the indexing strategy  some specifications have more value than others  Sitemap  which configurations should be included to get the most of it from a marketing point of view?