The Web is until now mostly considered to be a Web of documents, more specifically a Web of HTML pages. However, the inventor of the Web Tim Berners Lee considers the Web not to have reached its fullest potential. The Data Web and Linked Data will enable more precise search services transforming the Web into a smarter and richer Web. Google for example uses Linked Data concepts to realize its own knowledge graph to process voice commands and voice queries for users. Linked Data concepts are not limited to the public Web. They can also be used to capture private knowledge in private company Webs making them potentially applicable as the backbone for future PLM solutions.
1. The Data Web and PLM
Transforming PLM through Web Standards and Technologies
PDT Europe 2017
19 October 2017
Brian King - Koneksys
2. About Me
● 20 years experience in industry
● Software development background, consultancy for 8 years
○ Tomtom, Facebook, Microsoft, Zemanta, ….
● Mozilla - 5 yrs Community Manager
NOW...
● Koneksys - Business Development
● OSLC Community Manager
2
8. Data Integration for decision-making
Good overview = Better decisions
Big projects fail because systems
are becoming too complex, and
this is becoming more common in
large engineering organisations
as they handle more and more
data.
9. Benefits of Connecting Data Silos
Recap:
● Integrated dataset
● Traceability
● Transparency
● Collaboration
● Better decisions
● Knowledge sharing
9
*
* Icon by madebyoliver from www.flaticon.com are licensed by CC 3.0 BY
*
*
*
10. Why is Data Integration Complicated?
Different APIs
Different Data Formats Different Data IDs
Java, REST, query languages
XML, JSON, CSV, binary
10
Different Data Models
Relational, Graph, Document
11. Why is Data Integration Expensive?
Your Data Your Data Integration
Solution Vendor
Proprietary APIs
and Data Formats
11
$ $
12. Current Data Integration Solutions in Engineering
Proprietary data integration solutions
end up being new data silos
12
Product Lifecycle
Management
(PLM)/ Mechanical
Engineering
Application
Lifecycle
Management
(ALM)/ Software
Engineering
Business
Intelligence/
Analytics
Enterprise
Resource Planning
(ERP)/
Manufacturing etc.
Where is the
integration?
14. Why Choose the Web for Data Integration?
● No license costs
● No vendor lock-in
● Mature and widely adopted
infrastructure
● Abundance of Web
specialists/developers
○ https://insights.stackoverflow.com/sur
vey/2017 - 73% respondents
● Original vision of Tim Berners Lee,
inventor of the Web
○ Latest - Open Data Institute
14
15. Hypertext + Internet = Web
15
Hypertext System 1 Hypertext System 2
Problem: No Compatibility between
hypertext systems + different protocols to
access and connect documents on the
internet (Gopher, WAIS, etc...)
BEFORE THE WEB
One global hypertext system = Web
One protocol to access and connect documents
WITH THE WEB
16. Private/public
Web
Web Server
Web Server
Requirement
id = 112
text = “Only authorized users shall access the
system”
<!DOCTYPE html>
<html>
<head>
<title>Requirement 112</title>
</head>
<body>
<p>type = Requirement</p>
<p>id = 112</p>
<p>text = “Only authorized users shall
access the system”</p>
</body>
</html>
http://example.com/req112
HTTP
URL
HTML
Doc
16
17. HTTP
URL
RDF
Data
Private/public
Web
Data Web Server
Data Web Server!
Requirement
id = 112
text = “Only authorized users shall
access the system”
Only Change
between
regular Web
and Data Web
17
Requirement
id = 112
text = “Only authorized users shall access the
system”
{
"@context": {
"text": "http://myvocab.com/text",
"id": "http://myvocab.com/id",
"Requirement": "http://myvocab.com/Req"
},
"@id": "http://example.com/req112",
"@type": "Requirement",
"id": "112",
"text": "Only authorized users shall access
the system"
}
http://example.com/req112
18. Linked Data = Next Web = Web of Data = Data Web
Examples
● Engineering: IBM - Jazz applications integrated through OSLC
● Open Initiative: Open Services for Lifecycle Collaboration (OSLC)
● Public knowledge graph: DBpedia
● Improving search results: Schema.org
● Media: BBC Things API
+ more...
18
19. Schema.org: Example of Data Web
Example: Google reuses rating of
IMDB to display in search results
<div class="imdbRating"
itemtype="http://schema.org/AggregateRating"
itemprop="aggregateRating">
<div class="ratingValue">
<span itemprop="ratingValue">8.0</span>
</div>
http://www.imdb.com/title/tt0325980/?ref_=nv_sr_2
Rating in HTML of IMDB page
re-appears in HTML of Google search
result
19
20. Data Web Server Examples
20
Open-source examples at Eclipse Lyo
Open-source examples at Linked Data for
Model-Based Systems Engineering (ld4mbse)
Developed by Koneksys
Magic-
Draw
Simulink
AMESim
PTC
Integrity
FMI
https://commons.wikimedia.org/wiki/File:Bugzilla.jpg
21. Requirement
id = 112
derived_from= “Requirement 113”
"@context": {
"Req113": "http://example.com/Req113"
}
...
"id": "112"
"@derived_from": "Req113"
http://example.com/req112URL
RDF
Data
Reference to
related data
Requirement
id = 113
...
"@type": "Requirement",
"id": "113"
...
http://example.com/req113
HTTP
Navigable
to related data
Link
21
Data Web Integration Example
22. Data Repository 1
OSLC Adapter 1
Private/
public
Data
Web
Distributed
Data Silos
OSLC Adapter 2 OSLC Adapter 3
HTTP
Data Web
Applications
Search Visualize CRUD Analytics Link Creator
Link
HTTP HTTP
Link
RDF
RDF RDF
Data Repository 2 Data Repository 3
27. New Data Management Application Architecture
Traditional
App Logic
Integrated Dataset
Specific API
Data
Multiple Data
Sources
HTTP
New
27
Specific API
App Logic
29. Open Services for Lifecycle Collaboration (OSLC)
● Standard for Linked Data
RESTful APIs
● Domain-specific standards
for data interoperability
● Adopted so far mainly for
Application Lifecycle
Management (ALM),
systems and requirements
engineering
● Open Community
29
Data
OSLC Adapter (Data
Web Server)
REST API (HTTP)
Linked Data (RDF)
Different Data Formats
XML, JSON, CSV, binary
Different Data Models
Relational, Graph, Document
Different Data IDs
integer, path, guid
Different APIs
Java, REST, query languages
Standardized
Web API
30. OSLC Core Specification
Mainly to support
● discovery (Hypermedia REST API)
● delegated dialogs for improved UI
● Response Information (such as for resource paging, or for errors)
● Selective Property Values
● Reuse of existing domain-specific specifications (e.g. Dublin Core)
OSLC v2 spec: http://open-services.net/bin/view/Main/OslcCoreSpecification
v3 in draft, awaiting implementations.
30
33. Data Web Interoperability Example
33
PLM
System
Data Web Server
Data Web Client
RDF
ALM
System
HTTP
GET
HTTP
POST
Reading Data Writing Data
Web-based
Export/Import
Scenario between
data stores
…
"@id":
"http://example.com/req112",
"@type": "Requirement",
"id": "112",
...
Data Web Server
35. Data Web Interoperability Example
35
Bidirectional model
transformation between SysML
and Simulink
Open-source implementation at
ld4mbse
Developed by Koneksys
37. Traditional Schema
Schema
XML Document
Schema describes the structure of an XML
document
The purpose of an XML Schema is to define the
legal building blocks of an XML document:
● the elements and attributes that can appear in
a document
● the number of (and order of) child elements
● data types for elements and attributes
● default and fixed values for elements and
attributes
37
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="requirement">
<xs:complexType>
<xs:sequence>
<xs:element name="identifier" type="xs:string"/>
<xs:element name="description" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
<requirement>
<identifier>123</identifier>
<description>X shall Y</description>
</requirement>
39. Converting Schema types into RDF
Schema element type RDF Resource Type
39
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="requirement">
<xs:complexType>
<xs:sequence>
<xs:element name="identifier" type="xs:string"/>
<xs:element name="description" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
<rdfs:Class
rdf:about="http://open-services.net/ns
/rm#Requirement">
<rdfs:label
xml:lang="en-GB">Requirement</rdf
s:label>
</rdfs:Class>
40. Converting Schema properties into RDF
Schema element property (e.g. of type String) RDF Resource property
40
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="requirement">
<xs:complexType>
<xs:sequence>
<xs:element name="identifier"
type="xs:string"/>
<xs:element name="description" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
<rdf:Description
rdf:about="http://purl.org/dc/terms/ide
ntifier">
<rdfs:label
xml:lang="en">Identifier</rdfs:label>
</rdf:Description>
41. Converting Schema property multiplicities into RDF
Schema element property multiplicity (e.g.
identifier must occur once and only, default
value in XSD for minOccurs and maxOccurs is 1
)
RDF Resource property
41
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="requirement">
<xs:complexType>
<xs:sequence>
<xs:element name="identifier"
type="xs:string"/>
<xs:element name="description" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
<oslc:Property>
<oslc:propertyDefinition
rdf:resource="http://purl.org/dc/terms/
identifier"/>
<oslc:occurs
rdf:resource="http://open-service.net/
ns/core#Exactly-one"/>
</oslc:Property>
42. Converting existing schemas into RDF - Example
SysML metamodel as RDF vocabulary
42
http://www.omg.org/techpr
ocess/experimental-rdf/Sys
ML/1.3/
More details at
http://www.omgwiki.org/O
MGSysML/lib/exe/fetch.ph
p?media=sysml-oslc:mappin
g_sysml_to_rdf_vocabulary_-
_april_28_2014.pdf
43. „Universal“ specs vs Web specs
„Universal“ Standards Web Standards
Example SysML/STEP OSLC Specifications
Scope Large
(Example SysML: approx.
300 concepts)
Minimalistic
(Example OSLC RM Spec: 2
concepts)
Effort until release High Small
Time until release Long Short
Ease of implementation Difficult Easy
Ease of adoption Difficult Easy
43
45. Creating solutions to connect data silos using
the Web for improved traceability,
transparency, collaboration, and analytics
Providing consulting and research services
Creating open-source software
Promoting the Data Web
Koneksys
45
46. Clients Located in San Francisco. In
business since 2012. More at
koneksys.com
Koneksys
46
47. Summary
Data Web = Web-based data integration
● Distributed
● Based on open-standards
● Using standardized REST APIs (e.g. OSLC)
● Using RDF for limitless links between data having URLs as global identifiers
● Data Management Applications with Web as data source
47