SlideShare a Scribd company logo
Describing configurations
of software experiments
as Linked Data
Joachim Van Herwegen, Ruben Taelman, Sarven Capadisli, Ruben Verborgh
https://linkedsoftwaredependencies.org/articles/describing-experiments/
Why write research articles?
We want other researchers…
2
Why write research articles?
We want other researchers…
…to re-use our data.
…to re-use our software.
…to build upon our results.
3
Why write research articles?
We want other researchers…
…to re-use our data.
…to re-use our software.
…to build upon our results.
4
Paper evaluation (2014)
“We provide all source code of the implementations, as
well as the full benchmark configuration, at
http://example.com.”
5
Paper evaluation (2014)
“We provide all source code of the implementations, as
well as the full benchmark configuration, at
http://example.com.”
6
Paper evaluation (2014)
“We provide all source code of the implementations, as
well as the full benchmark configuration, at
http://example.com.”
“… is compared to Virtuoso (6.1.8 and 7.1.1) and Jena
Fuseki (TDB 1.0.1 and HDT 1.1.1).”
7
Paper evaluation (2014)
“We provide all source code of the implementations, as
well as the full benchmark configuration, at
http://example.com.”
“… is compared to Virtuoso (6.1.8 and 7.1.1) and Jena
Fuseki (TDB 1.0.1 and HDT 1.1.1).”
8
Paper evaluation (2014)
“We provide all source code of the implementations, as
well as the full benchmark configuration, at
https://github.com/LinkedDataFragments/.”
“… is compared to Virtuoso (6.1.8 and 7.1.1) and Jena
Fuseki (TDB 1.0.1 and HDT 1.1.1).”
9
Improved evaluation description
Exact and complete description of the setup
10
Improved evaluation description
Exact and complete description of the setup
… using Linked Data
11
Improved evaluation description
Exact and complete description of the setup
… using Linked Data
… for automatic instantiation.
12
Describing configurations as Linked Data
Interlinking software modules
Instantiating software components
Updated evaluation
13
Describing configurations as Linked Data
Interlinking software modules
Instantiating software components
Updated evaluation
14
Interlinking software modules
Which software modules were used?
Which evaluations made use of this module?
Which other modules depend on this module?
15
Node Package Manager (npm)
Package manager for JavaScript
16
Node Package Manager (npm)
Package manager for JavaScript
17
http://www.modulecounts.com
Node Package Manager (npm)
Package manager for JavaScript
Convert to
Linked Data
18
http://www.modulecounts.com
Package.json
{
"name": "ldf-server",
"version": "2.2.2",
"license": "MIT",
"repository": {
"type": "git",
"url": "git@github.com:LinkedDataFragments/Server.js.git"
},
"bugs": {
"url": "https://github.com/LinkedDataFragments/Server.js/issues"
},
"dependencies": {
"asynciterator": "^1.1.0",
"jsonld": "^0.4.11",
"lodash": "^2.4.2"
}
}
19
Package.json
{
"name": "ldf-server",
"version": "2.2.2",
"license": "MIT",
"repository": {
"type": "git",
"url": "git@github.com:LinkedDataFragments/Server.js.git"
},
"bugs": {
"url": "https://github.com/LinkedDataFragments/Server.js/issues"
},
"dependencies": {
"asynciterator": "^1.1.0",
"jsonld": "^0.4.11",
"lodash": "^2.4.2"
}
}
20
Package.jsonld
Convert JSON to JSON-LD to generate Linked Data
21
Package.jsonld
Convert JSON to JSON-LD to generate Linked Data
ldf-server:2.2.2 a doap:Version ;
doap:name "ldf-server" ;
doap:revision "2.2.2" ;
spdx:licenseDeclared spdx:MIT ;
doap:repository <git+ssh://git@github.com/…/Server.js.git> ;
npm:dependency asynciterator:^1.1.0 ;
npm:dependency jsonld:^0.4.11 ;
npm:dependency lodash:^2.4.2 .
<git+ssh://git@github.com/…/Server.js.git> a doap:GitRepository .
22
Describing configurations as Linked Data
Interlinking software modules
Instantiating software components
Updated evaluation
23
LDF Server
"datasources": {
"dbpedia": {
"title": "DBpedia 2014",
"type": "HdtDatasource"
"settings": { "file": "data/dbpedia2014.hdt" }
}
}
24
LDF Server
"datasources": {
"dbpedia": {
"title": "DBpedia 2014",
"type": "HdtDatasource"
"settings": { "file": "data/dbpedia2014.hdt" }
}
}
JSON  JSON-LD
ex:myServer ldfs:datasource ex:MyHdtDataSource
ex:MyHdtDataSource a ldfs:DatasourceHdt;
rdfs:label "DBpedia 2014";
ldfs:hdtFile "data/dbpedia2014.hdt".
25
Components.js
Instantiation framework that interprets this config
ex:myServer ldfs:datasource ex:MyHdtDataSource
ex:MyHdtDataSource a ldfs:DatasourceHdt;
rdfs:label "DBpedia 2014";
ldfs:hdtFile "data/dbpedia2014.hdt".
26
Components.js
Instantiation framework that interprets this config
ex:myServer ldfs:datasource ex:MyHdtDataSource
ex:MyHdtDataSource a ldfs:DatasourceHdt;
rdfs:label "DBpedia 2014";
ldfs:hdtFile "data/dbpedia2014.hdt".
How?
27
Object Oriented Ontology
28
Object Oriented Ontology
29
Component description
ldfs:DatasourceHdt a oo:Class ;
rdfs:subClassOf ldfs:Datasource ;
oo:componentPath "datasources.HdtDatasource" ;
oo:parameter ldfs:hdtFile ;
oo:constructorArguments ([
rdfs:subclassOf ldfs:DatasourceConstructor ;
om:field [ om:fieldName "file" ;
om:fieldValue ldfs:hdtFile ]
]) .
ldfs:hdtFile rdfs:range xsd:string .
30
Component description
ldfs:DatasourceHdt a oo:Class ;
rdfs:subClassOf ldfs:Datasource ;
oo:componentPath "datasources.HdtDatasource" ;
oo:parameter ldfs:hdtFile ;
oo:constructorArguments ([
rdfs:subclassOf ldfs:DatasourceConstructor ;
om:field [ om:fieldName "file" ;
om:fieldValue ldfs:hdtFile ]
]) .
ldfs:hdtFile rdfs:range xsd:string .
31
class DatasourceHdt extends Datasource {
file: string;
constructor (input) {
super(input);
this.file = file;
}
}
Component description
ldfs:DatasourceHdt a oo:Class ;
rdfs:subClassOf ldfs:Datasource ;
oo:componentPath "datasources.HdtDatasource" ;
oo:parameter ldfs:hdtFile ;
oo:constructorArguments ([
rdfs:subclassOf ldfs:DatasourceConstructor ;
om:field [ om:fieldName "file" ;
om:fieldValue ldfs:hdtFile ]
]) .
ldfs:hdtFile rdfs:range xsd:string .
External file  can be written for existing code
32
class DatasourceHdt extends Datasource {
file: string;
constructor (input) {
super(input);
this.file = file;
}
}
Components.js
ex:myServer ldfs:datasource ex:MyHdtDataSource
ex:MyHdtDataSource a ldfs:DatasourceHdt;
rdfs:label "DBpedia 2014";
ldfs:hdtFile "data/dbpedia2014.hdt".
Allows users to fully set up the same system by
providing a URI to a config
33
Describing configurations as Linked Data
Interlinking software modules
Instantiating software components
Updated evaluation
34
Updated evaluation
Describe steps using RDFa in HTML paper.
Link to exact versions of all modules used.
Link to RDF config file.
Link to exact evaluation results.
35
Updated evaluation
“5. Install the server software configuration,
implementing the TPF specification, with its
dependencies on the server.”
36
Updated evaluation
“5. Install the server software configuration,
implementing the TPF specification, with its
dependencies on the server.”
ldf:experiment npm:engine node:v6.8.1, npmv:4.2.0;
doap:name "ldf-server";
doap:revision "2.2.1";
doc:dependsOn strftime:0.6.2;
doc:dependsOn asynciterator:1.1.0.
strftime:0.6.2 doap:revision "0.6.2"; doap:name "strftime".
asynciterator:1.1.0 doap:revision "1.1.0"; doap:name "asynciterator".
…
37
Updated evaluation
“5. Install the server software configuration,
implementing the TPF specification, with its
dependencies on the server.”
ex:myServer ldfs:datasource ex:MyHdtDataSource
ex:MyHdtDataSource a ldfs:DatasourceHdt;
rdfs:label "DBpedia 2014";
ldfs:hdtFile "data/dbpedia2014.hdt".
38
Updated evaluation
“5. Install the server software configuration,
implementing the TPF specification, with its
dependencies on the server.”
ex:myServer ldfs:datasource ex:MyCustomDataSource
ex:MyCustomDataSource a ex:CustomDatasource;
rdfs:label "DBpedia 2014";
ex:Uri "http://example.com/custom";
ex:samples 5.
39
Conclusion
Interlinking research allows for…
40
Conclusion
Interlinking research allows for…
… better reproducability.
… better re-use.
… better research.
41

More Related Content

What's hot

ArangoDB
ArangoDBArangoDB
DataBearings: A semantic platform for data integration on IoT, Artem Katasonov
DataBearings: A semantic platform for data integration on IoT, Artem KatasonovDataBearings: A semantic platform for data integration on IoT, Artem Katasonov
DataBearings: A semantic platform for data integration on IoT, Artem Katasonov
VTT Technical Research Centre of Finland Ltd
 
Learning W3C Linked Data Platform with examples
Learning W3C Linked Data Platform with examplesLearning W3C Linked Data Platform with examples
Learning W3C Linked Data Platform with examples
Nandana Mihindukulasooriya
 
W3C Linked Data Platform Overview
W3C Linked Data Platform OverviewW3C Linked Data Platform Overview
W3C Linked Data Platform Overview
Steve Speicher
 
Introduction to Linked Data Platform (LDP)
Introduction to Linked Data Platform (LDP)Introduction to Linked Data Platform (LDP)
Introduction to Linked Data Platform (LDP)
Hector Correa
 
Approaching Join Index: Presented by Mikhail Khludnev, Grid Dynamics
Approaching Join Index: Presented by Mikhail Khludnev, Grid DynamicsApproaching Join Index: Presented by Mikhail Khludnev, Grid Dynamics
Approaching Join Index: Presented by Mikhail Khludnev, Grid Dynamics
Lucidworks
 
Describing LDP Applications with the Hydra Core Vocabulary
Describing LDP Applications with the Hydra Core VocabularyDescribing LDP Applications with the Hydra Core Vocabulary
Describing LDP Applications with the Hydra Core Vocabulary
Nandana Mihindukulasooriya
 
Madrid SPARQL handson
Madrid SPARQL handsonMadrid SPARQL handson
Madrid SPARQL handson
Victor de Boer
 
Formal machines for Streaming XML Querying
Formal machines for Streaming XML QueryingFormal machines for Streaming XML Querying
Formal machines for Streaming XML Querying
JustAnotherAbstraction
 
Querying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern FragmentsQuerying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern Fragments
Ruben Verborgh
 
Import Database Data using RODBC in R Studio
Import Database Data using RODBC in R StudioImport Database Data using RODBC in R Studio
Import Database Data using RODBC in R Studio
Rupak Roy
 
RethinkDB - the open-source database for the realtime web
RethinkDB - the open-source database for the realtime webRethinkDB - the open-source database for the realtime web
RethinkDB - the open-source database for the realtime web
Alex Ivanov
 
Learning spark ch05 - Loading and Saving Your Data
Learning spark ch05 - Loading and Saving Your DataLearning spark ch05 - Loading and Saving Your Data
Learning spark ch05 - Loading and Saving Your Data
phanleson
 
LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...
Nandana Mihindukulasooriya
 
Custom Pregel Algorithms in ArangoDB
Custom Pregel Algorithms in ArangoDBCustom Pregel Algorithms in ArangoDB
Custom Pregel Algorithms in ArangoDB
ArangoDB Database
 
REST meets Semantic Web
REST meets Semantic WebREST meets Semantic Web
REST meets Semantic Web
Steve Speicher
 
CKAN as an open-source data management solution for open data
CKAN as an open-source data management solution for open data CKAN as an open-source data management solution for open data
CKAN as an open-source data management solution for open data
AIMS (Agricultural Information Management Standards)
 
PharoDAYS 2015: Pharo Status - by Markus Denker
PharoDAYS 2015: Pharo Status - by Markus DenkerPharoDAYS 2015: Pharo Status - by Markus Denker
PharoDAYS 2015: Pharo Status - by Markus Denker
Pharo
 
The new CIARD RING , a machine-readable directory of datasets for agriculture
The new CIARD RING, a machine-readable directory of datasets for agricultureThe new CIARD RING, a machine-readable directory of datasets for agriculture
The new CIARD RING , a machine-readable directory of datasets for agriculture
Valeria Pesce
 

What's hot (20)

ArangoDB
ArangoDBArangoDB
ArangoDB
 
DataBearings: A semantic platform for data integration on IoT, Artem Katasonov
DataBearings: A semantic platform for data integration on IoT, Artem KatasonovDataBearings: A semantic platform for data integration on IoT, Artem Katasonov
DataBearings: A semantic platform for data integration on IoT, Artem Katasonov
 
Learning W3C Linked Data Platform with examples
Learning W3C Linked Data Platform with examplesLearning W3C Linked Data Platform with examples
Learning W3C Linked Data Platform with examples
 
W3C Linked Data Platform Overview
W3C Linked Data Platform OverviewW3C Linked Data Platform Overview
W3C Linked Data Platform Overview
 
Introduction to Linked Data Platform (LDP)
Introduction to Linked Data Platform (LDP)Introduction to Linked Data Platform (LDP)
Introduction to Linked Data Platform (LDP)
 
Approaching Join Index: Presented by Mikhail Khludnev, Grid Dynamics
Approaching Join Index: Presented by Mikhail Khludnev, Grid DynamicsApproaching Join Index: Presented by Mikhail Khludnev, Grid Dynamics
Approaching Join Index: Presented by Mikhail Khludnev, Grid Dynamics
 
Describing LDP Applications with the Hydra Core Vocabulary
Describing LDP Applications with the Hydra Core VocabularyDescribing LDP Applications with the Hydra Core Vocabulary
Describing LDP Applications with the Hydra Core Vocabulary
 
Madrid SPARQL handson
Madrid SPARQL handsonMadrid SPARQL handson
Madrid SPARQL handson
 
3 avro hug-2010-07-21
3 avro hug-2010-07-213 avro hug-2010-07-21
3 avro hug-2010-07-21
 
Formal machines for Streaming XML Querying
Formal machines for Streaming XML QueryingFormal machines for Streaming XML Querying
Formal machines for Streaming XML Querying
 
Querying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern FragmentsQuerying federations 
of Triple Pattern Fragments
Querying federations 
of Triple Pattern Fragments
 
Import Database Data using RODBC in R Studio
Import Database Data using RODBC in R StudioImport Database Data using RODBC in R Studio
Import Database Data using RODBC in R Studio
 
RethinkDB - the open-source database for the realtime web
RethinkDB - the open-source database for the realtime webRethinkDB - the open-source database for the realtime web
RethinkDB - the open-source database for the realtime web
 
Learning spark ch05 - Loading and Saving Your Data
Learning spark ch05 - Loading and Saving Your DataLearning spark ch05 - Loading and Saving Your Data
Learning spark ch05 - Loading and Saving Your Data
 
LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...
 
Custom Pregel Algorithms in ArangoDB
Custom Pregel Algorithms in ArangoDBCustom Pregel Algorithms in ArangoDB
Custom Pregel Algorithms in ArangoDB
 
REST meets Semantic Web
REST meets Semantic WebREST meets Semantic Web
REST meets Semantic Web
 
CKAN as an open-source data management solution for open data
CKAN as an open-source data management solution for open data CKAN as an open-source data management solution for open data
CKAN as an open-source data management solution for open data
 
PharoDAYS 2015: Pharo Status - by Markus Denker
PharoDAYS 2015: Pharo Status - by Markus DenkerPharoDAYS 2015: Pharo Status - by Markus Denker
PharoDAYS 2015: Pharo Status - by Markus Denker
 
The new CIARD RING , a machine-readable directory of datasets for agriculture
The new CIARD RING, a machine-readable directory of datasets for agricultureThe new CIARD RING, a machine-readable directory of datasets for agriculture
The new CIARD RING , a machine-readable directory of datasets for agriculture
 

Similar to Describing configurations of software experiments as Linked Data

ExSchema - ICSM'13
ExSchema - ICSM'13ExSchema - ICSM'13
ExSchema - ICSM'13
jccastrejon
 
Organizing the Data Chaos of Scientists
Organizing the Data Chaos of ScientistsOrganizing the Data Chaos of Scientists
Organizing the Data Chaos of Scientists
Andreas Schreiber
 
DEF CON 27 - workshop - ISAAC EVANS - discover exploit and eradicate entire v...
DEF CON 27 - workshop - ISAAC EVANS - discover exploit and eradicate entire v...DEF CON 27 - workshop - ISAAC EVANS - discover exploit and eradicate entire v...
DEF CON 27 - workshop - ISAAC EVANS - discover exploit and eradicate entire v...
Felipe Prado
 
DataFinder: A Python Application for Scientific Data Management
DataFinder: A Python Application for Scientific Data ManagementDataFinder: A Python Application for Scientific Data Management
DataFinder: A Python Application for Scientific Data Management
Andreas Schreiber
 
Operator SDK for K8s using Go
Operator SDK for K8s using GoOperator SDK for K8s using Go
Operator SDK for K8s using Go
CloudOps2005
 
TypeScript - Silver Bullet for the Full-stack Developers
TypeScript - Silver Bullet for the Full-stack DevelopersTypeScript - Silver Bullet for the Full-stack Developers
TypeScript - Silver Bullet for the Full-stack Developers
Rutenis Turcinas
 
Building and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache AirflowBuilding and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache Airflow
Kaxil Naik
 
Top 30 Node.js interview questions
Top 30 Node.js interview questionsTop 30 Node.js interview questions
Top 30 Node.js interview questions
techievarsity
 
Null Mumbai Meet_Android Reverse Engineering by Samrat Das
Null Mumbai Meet_Android Reverse Engineering by Samrat DasNull Mumbai Meet_Android Reverse Engineering by Samrat Das
Null Mumbai Meet_Android Reverse Engineering by Samrat Das
nullowaspmumbai
 
SCAP for openSUSE
SCAP for openSUSESCAP for openSUSE
SCAP for openSUSE
Kazuki Omo
 
Towards Reusable Research Software
Towards Reusable Research SoftwareTowards Reusable Research Software
Towards Reusable Research Software
dgarijo
 
Purdue CS354 Operating Systems 2008
Purdue CS354 Operating Systems 2008Purdue CS354 Operating Systems 2008
Purdue CS354 Operating Systems 2008
guestd9065
 
Javascript mynotes
Javascript mynotesJavascript mynotes
Javascript mynotes
AntoniaSymeonidou1
 
ExSchema
ExSchemaExSchema
ExSchema
jccastrejon
 
FIWARE Global Summit - IDS Implementation with FIWARE Software Components
FIWARE Global Summit - IDS Implementation with FIWARE Software ComponentsFIWARE Global Summit - IDS Implementation with FIWARE Software Components
FIWARE Global Summit - IDS Implementation with FIWARE Software Components
FIWARE
 
Recommender.system.presentation.pjug.05.20.2014
Recommender.system.presentation.pjug.05.20.2014Recommender.system.presentation.pjug.05.20.2014
Recommender.system.presentation.pjug.05.20.2014rpbrehm
 
STAT Requirement Analysis
STAT Requirement AnalysisSTAT Requirement Analysis
STAT Requirement Analysisstat
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
Winston Hsieh
 
SFDX Presentation
SFDX PresentationSFDX Presentation
SFDX Presentation
Bohdan Dovhań
 
Document Summarizer
Document SummarizerDocument Summarizer
Document Summarizer
Aditya Lunawat
 

Similar to Describing configurations of software experiments as Linked Data (20)

ExSchema - ICSM'13
ExSchema - ICSM'13ExSchema - ICSM'13
ExSchema - ICSM'13
 
Organizing the Data Chaos of Scientists
Organizing the Data Chaos of ScientistsOrganizing the Data Chaos of Scientists
Organizing the Data Chaos of Scientists
 
DEF CON 27 - workshop - ISAAC EVANS - discover exploit and eradicate entire v...
DEF CON 27 - workshop - ISAAC EVANS - discover exploit and eradicate entire v...DEF CON 27 - workshop - ISAAC EVANS - discover exploit and eradicate entire v...
DEF CON 27 - workshop - ISAAC EVANS - discover exploit and eradicate entire v...
 
DataFinder: A Python Application for Scientific Data Management
DataFinder: A Python Application for Scientific Data ManagementDataFinder: A Python Application for Scientific Data Management
DataFinder: A Python Application for Scientific Data Management
 
Operator SDK for K8s using Go
Operator SDK for K8s using GoOperator SDK for K8s using Go
Operator SDK for K8s using Go
 
TypeScript - Silver Bullet for the Full-stack Developers
TypeScript - Silver Bullet for the Full-stack DevelopersTypeScript - Silver Bullet for the Full-stack Developers
TypeScript - Silver Bullet for the Full-stack Developers
 
Building and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache AirflowBuilding and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache Airflow
 
Top 30 Node.js interview questions
Top 30 Node.js interview questionsTop 30 Node.js interview questions
Top 30 Node.js interview questions
 
Null Mumbai Meet_Android Reverse Engineering by Samrat Das
Null Mumbai Meet_Android Reverse Engineering by Samrat DasNull Mumbai Meet_Android Reverse Engineering by Samrat Das
Null Mumbai Meet_Android Reverse Engineering by Samrat Das
 
SCAP for openSUSE
SCAP for openSUSESCAP for openSUSE
SCAP for openSUSE
 
Towards Reusable Research Software
Towards Reusable Research SoftwareTowards Reusable Research Software
Towards Reusable Research Software
 
Purdue CS354 Operating Systems 2008
Purdue CS354 Operating Systems 2008Purdue CS354 Operating Systems 2008
Purdue CS354 Operating Systems 2008
 
Javascript mynotes
Javascript mynotesJavascript mynotes
Javascript mynotes
 
ExSchema
ExSchemaExSchema
ExSchema
 
FIWARE Global Summit - IDS Implementation with FIWARE Software Components
FIWARE Global Summit - IDS Implementation with FIWARE Software ComponentsFIWARE Global Summit - IDS Implementation with FIWARE Software Components
FIWARE Global Summit - IDS Implementation with FIWARE Software Components
 
Recommender.system.presentation.pjug.05.20.2014
Recommender.system.presentation.pjug.05.20.2014Recommender.system.presentation.pjug.05.20.2014
Recommender.system.presentation.pjug.05.20.2014
 
STAT Requirement Analysis
STAT Requirement AnalysisSTAT Requirement Analysis
STAT Requirement Analysis
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
 
SFDX Presentation
SFDX PresentationSFDX Presentation
SFDX Presentation
 
Document Summarizer
Document SummarizerDocument Summarizer
Document Summarizer
 

Recently uploaded

Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
manasideore6
 
digital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdfdigital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdf
drwaing
 
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
awadeshbabu
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
Amil Baba Dawood bangali
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
Kerry Sado
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
bakpo1
 
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
ssuser7dcef0
 
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
aqil azizi
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
insn4465
 
sieving analysis and results interpretation
sieving analysis and results interpretationsieving analysis and results interpretation
sieving analysis and results interpretation
ssuser36d3051
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
Rahul
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
ChristineTorrepenida1
 
TOP 10 B TECH COLLEGES IN JAIPUR 2024.pptx
TOP 10 B TECH COLLEGES IN JAIPUR 2024.pptxTOP 10 B TECH COLLEGES IN JAIPUR 2024.pptx
TOP 10 B TECH COLLEGES IN JAIPUR 2024.pptx
nikitacareer3
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
nooriasukmaningtyas
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
obonagu
 
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTSHeap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Soumen Santra
 
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
dxobcob
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
zwunae
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 

Recently uploaded (20)

Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
 
digital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdfdigital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdf
 
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
 
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
 
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
 
sieving analysis and results interpretation
sieving analysis and results interpretationsieving analysis and results interpretation
sieving analysis and results interpretation
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
 
TOP 10 B TECH COLLEGES IN JAIPUR 2024.pptx
TOP 10 B TECH COLLEGES IN JAIPUR 2024.pptxTOP 10 B TECH COLLEGES IN JAIPUR 2024.pptx
TOP 10 B TECH COLLEGES IN JAIPUR 2024.pptx
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
 
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTSHeap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
 
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 

Describing configurations of software experiments as Linked Data

  • 1. Describing configurations of software experiments as Linked Data Joachim Van Herwegen, Ruben Taelman, Sarven Capadisli, Ruben Verborgh https://linkedsoftwaredependencies.org/articles/describing-experiments/
  • 2. Why write research articles? We want other researchers… 2
  • 3. Why write research articles? We want other researchers… …to re-use our data. …to re-use our software. …to build upon our results. 3
  • 4. Why write research articles? We want other researchers… …to re-use our data. …to re-use our software. …to build upon our results. 4
  • 5. Paper evaluation (2014) “We provide all source code of the implementations, as well as the full benchmark configuration, at http://example.com.” 5
  • 6. Paper evaluation (2014) “We provide all source code of the implementations, as well as the full benchmark configuration, at http://example.com.” 6
  • 7. Paper evaluation (2014) “We provide all source code of the implementations, as well as the full benchmark configuration, at http://example.com.” “… is compared to Virtuoso (6.1.8 and 7.1.1) and Jena Fuseki (TDB 1.0.1 and HDT 1.1.1).” 7
  • 8. Paper evaluation (2014) “We provide all source code of the implementations, as well as the full benchmark configuration, at http://example.com.” “… is compared to Virtuoso (6.1.8 and 7.1.1) and Jena Fuseki (TDB 1.0.1 and HDT 1.1.1).” 8
  • 9. Paper evaluation (2014) “We provide all source code of the implementations, as well as the full benchmark configuration, at https://github.com/LinkedDataFragments/.” “… is compared to Virtuoso (6.1.8 and 7.1.1) and Jena Fuseki (TDB 1.0.1 and HDT 1.1.1).” 9
  • 10. Improved evaluation description Exact and complete description of the setup 10
  • 11. Improved evaluation description Exact and complete description of the setup … using Linked Data 11
  • 12. Improved evaluation description Exact and complete description of the setup … using Linked Data … for automatic instantiation. 12
  • 13. Describing configurations as Linked Data Interlinking software modules Instantiating software components Updated evaluation 13
  • 14. Describing configurations as Linked Data Interlinking software modules Instantiating software components Updated evaluation 14
  • 15. Interlinking software modules Which software modules were used? Which evaluations made use of this module? Which other modules depend on this module? 15
  • 16. Node Package Manager (npm) Package manager for JavaScript 16
  • 17. Node Package Manager (npm) Package manager for JavaScript 17 http://www.modulecounts.com
  • 18. Node Package Manager (npm) Package manager for JavaScript Convert to Linked Data 18 http://www.modulecounts.com
  • 19. Package.json { "name": "ldf-server", "version": "2.2.2", "license": "MIT", "repository": { "type": "git", "url": "git@github.com:LinkedDataFragments/Server.js.git" }, "bugs": { "url": "https://github.com/LinkedDataFragments/Server.js/issues" }, "dependencies": { "asynciterator": "^1.1.0", "jsonld": "^0.4.11", "lodash": "^2.4.2" } } 19
  • 20. Package.json { "name": "ldf-server", "version": "2.2.2", "license": "MIT", "repository": { "type": "git", "url": "git@github.com:LinkedDataFragments/Server.js.git" }, "bugs": { "url": "https://github.com/LinkedDataFragments/Server.js/issues" }, "dependencies": { "asynciterator": "^1.1.0", "jsonld": "^0.4.11", "lodash": "^2.4.2" } } 20
  • 21. Package.jsonld Convert JSON to JSON-LD to generate Linked Data 21
  • 22. Package.jsonld Convert JSON to JSON-LD to generate Linked Data ldf-server:2.2.2 a doap:Version ; doap:name "ldf-server" ; doap:revision "2.2.2" ; spdx:licenseDeclared spdx:MIT ; doap:repository <git+ssh://git@github.com/…/Server.js.git> ; npm:dependency asynciterator:^1.1.0 ; npm:dependency jsonld:^0.4.11 ; npm:dependency lodash:^2.4.2 . <git+ssh://git@github.com/…/Server.js.git> a doap:GitRepository . 22
  • 23. Describing configurations as Linked Data Interlinking software modules Instantiating software components Updated evaluation 23
  • 24. LDF Server "datasources": { "dbpedia": { "title": "DBpedia 2014", "type": "HdtDatasource" "settings": { "file": "data/dbpedia2014.hdt" } } } 24
  • 25. LDF Server "datasources": { "dbpedia": { "title": "DBpedia 2014", "type": "HdtDatasource" "settings": { "file": "data/dbpedia2014.hdt" } } } JSON  JSON-LD ex:myServer ldfs:datasource ex:MyHdtDataSource ex:MyHdtDataSource a ldfs:DatasourceHdt; rdfs:label "DBpedia 2014"; ldfs:hdtFile "data/dbpedia2014.hdt". 25
  • 26. Components.js Instantiation framework that interprets this config ex:myServer ldfs:datasource ex:MyHdtDataSource ex:MyHdtDataSource a ldfs:DatasourceHdt; rdfs:label "DBpedia 2014"; ldfs:hdtFile "data/dbpedia2014.hdt". 26
  • 27. Components.js Instantiation framework that interprets this config ex:myServer ldfs:datasource ex:MyHdtDataSource ex:MyHdtDataSource a ldfs:DatasourceHdt; rdfs:label "DBpedia 2014"; ldfs:hdtFile "data/dbpedia2014.hdt". How? 27
  • 30. Component description ldfs:DatasourceHdt a oo:Class ; rdfs:subClassOf ldfs:Datasource ; oo:componentPath "datasources.HdtDatasource" ; oo:parameter ldfs:hdtFile ; oo:constructorArguments ([ rdfs:subclassOf ldfs:DatasourceConstructor ; om:field [ om:fieldName "file" ; om:fieldValue ldfs:hdtFile ] ]) . ldfs:hdtFile rdfs:range xsd:string . 30
  • 31. Component description ldfs:DatasourceHdt a oo:Class ; rdfs:subClassOf ldfs:Datasource ; oo:componentPath "datasources.HdtDatasource" ; oo:parameter ldfs:hdtFile ; oo:constructorArguments ([ rdfs:subclassOf ldfs:DatasourceConstructor ; om:field [ om:fieldName "file" ; om:fieldValue ldfs:hdtFile ] ]) . ldfs:hdtFile rdfs:range xsd:string . 31 class DatasourceHdt extends Datasource { file: string; constructor (input) { super(input); this.file = file; } }
  • 32. Component description ldfs:DatasourceHdt a oo:Class ; rdfs:subClassOf ldfs:Datasource ; oo:componentPath "datasources.HdtDatasource" ; oo:parameter ldfs:hdtFile ; oo:constructorArguments ([ rdfs:subclassOf ldfs:DatasourceConstructor ; om:field [ om:fieldName "file" ; om:fieldValue ldfs:hdtFile ] ]) . ldfs:hdtFile rdfs:range xsd:string . External file  can be written for existing code 32 class DatasourceHdt extends Datasource { file: string; constructor (input) { super(input); this.file = file; } }
  • 33. Components.js ex:myServer ldfs:datasource ex:MyHdtDataSource ex:MyHdtDataSource a ldfs:DatasourceHdt; rdfs:label "DBpedia 2014"; ldfs:hdtFile "data/dbpedia2014.hdt". Allows users to fully set up the same system by providing a URI to a config 33
  • 34. Describing configurations as Linked Data Interlinking software modules Instantiating software components Updated evaluation 34
  • 35. Updated evaluation Describe steps using RDFa in HTML paper. Link to exact versions of all modules used. Link to RDF config file. Link to exact evaluation results. 35
  • 36. Updated evaluation “5. Install the server software configuration, implementing the TPF specification, with its dependencies on the server.” 36
  • 37. Updated evaluation “5. Install the server software configuration, implementing the TPF specification, with its dependencies on the server.” ldf:experiment npm:engine node:v6.8.1, npmv:4.2.0; doap:name "ldf-server"; doap:revision "2.2.1"; doc:dependsOn strftime:0.6.2; doc:dependsOn asynciterator:1.1.0. strftime:0.6.2 doap:revision "0.6.2"; doap:name "strftime". asynciterator:1.1.0 doap:revision "1.1.0"; doap:name "asynciterator". … 37
  • 38. Updated evaluation “5. Install the server software configuration, implementing the TPF specification, with its dependencies on the server.” ex:myServer ldfs:datasource ex:MyHdtDataSource ex:MyHdtDataSource a ldfs:DatasourceHdt; rdfs:label "DBpedia 2014"; ldfs:hdtFile "data/dbpedia2014.hdt". 38
  • 39. Updated evaluation “5. Install the server software configuration, implementing the TPF specification, with its dependencies on the server.” ex:myServer ldfs:datasource ex:MyCustomDataSource ex:MyCustomDataSource a ex:CustomDatasource; rdfs:label "DBpedia 2014"; ex:Uri "http://example.com/custom"; ex:samples 5. 39
  • 41. Conclusion Interlinking research allows for… … better reproducability. … better re-use. … better research. 41