Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Page Properties
 
Target releaseBeta 1.0
Epic
Document status

Status
titleDraft

Last update08-July-2016
Document owner
Designer 
Developers
QA

 


Introduction

Purpose

The purpose of this document is to specify the FAIR Data Point (FDP) software. This document includes requirements, architecture and design of the FDP software. This specification is primarily intended to be a reference for developing the first version (prototype) of the FDP software by the FAIR engineering team.

...

The FDP has initially two usage purposes: (i) to be used as a stand-alone web application, where data owners give access to their datasets in a FAIR manner and, (ii) to be integrated in larger data interoperability systems, such as the FAIRport, providing the dataset accessibility functionality for such systems. Figure 2 depicts (using elements from the technology layer of Archimate's  notation) a FDP as a stand-alone application deployed in a web server, exposing to the Web its API and GUI. Figure 3 depicts a set of FDPs integrated as components in a Data FAIRport platform. In this case, each FDP gives access to the datasets published by a given data owner.

 


 

 

 






 

 

Fig. 2 - FAIR Data Point as a stand alone Web application
Fig. 3 - FAIR Data Point as an application component

...

The details of what each of these metadata object represent are given in the Metadata section below in this document. Also, the details of the FAIR Data Point API are given below in this document at the Application Programming Interface (API) section.

Fig. 4 - FAIR Data Point's Archimate Application layer architecture

...


Metadata

The FAIR Data Point metadata about four entities, namely, the FAIR Data Point itself, the collection of datasets, each one of the offered datasets and the data within each of the dataset

...

Jira Legacy
showSummarytrue
serverJIRA (dtl-fair.atlassian.net)
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverIdcae6b7e0-a4f7-3b38-b0cc-172741024ef9
keyFDP-36

Fig. 5 - FDP metadata
Term Name: identifier
URI:http://purl.org/dc/terms/identifier
Label:Identifier
Definition:An unambiguous and persistent reference to the FDP.
Comment:Recommended best practice is to identify the resource by means of a string conforming to a formal identification system.
Has Range:http://www.w3.org/2000/01/rdf-schema#Literal
Version:http://dublincore.org/usage/terms/history/#identifierT-001
Term Name: license
URI:http://purl.org/dc/terms/license
Label:License
Definition:A document describing the conditions for access and usage of the FDP.
Has Range:http://purl.org/dc/terms/LicenseDocument
Version:http://dublincore.org/usage/terms/history/#license-002
Term Name: title
URI:http://purl.org/dc/terms/title
Label:Title
Definition:The name of the FDP.
Has Range:http://www.w3.org/2000/01/rdf-schema#Literal
Version:http://dublincore.org/usage/terms/history/#titleT-002
Term Name: description
URI:http://purl.org/dc/terms/description
Label:Description
Definition:A human-readable description of the FDP.
Has Range: 
Version:http://dublincore.org/usage/terms/history/#descriptionT-001
Term Name: hasVersion
URI:http://purl.org/dc/terms/hasVersion
Label: 
Definition:The version of the FDP software.
Has Range: 
Version:http://dublincore.org/usage/terms/history/#hasVersion-003
Term Name: Metadata Version
URI:http://purl.org/dc/terms/hasVersion
Label: 
Definition:The version of the FDP API specification implemented in this FDP deployment.
Has Range: 
Version:http://dublincore.org/usage/terms/history/#hasVersion-003
Term Name: issued
URI:http://purl.org/dc/terms/issued
Label:Date Issued
Definition:Date of formal issuance (e.g., deployment) of the FDP.
Has Range:http://www.w3.org/2000/01/rdf-schema#Literal
Version:http://dublincore.org/usage/terms/history/#issued-003
Term Name: modified
URI:http://purl.org/dc/terms/modified
Term Name: publisher
URI:http://purl.org/dc/terms/publisher
Label:Publisher
Definition:The entity responsible for making the FDP available.
Has Range:http://purl.org/dc/terms/Agent
Version:http://dublincore.org/usage/terms/history/#publisherT-001

 


Catalog, Dataset and Distribution metadata

...

List of required and optional predicates for the catalog metadata

 


OntologyTerm nameRequired/Optional
DC termsdct:titleRequired
dct:identifierRequired
dct:issuedRequired
dct:modifiedRequired
dct:hasVersionRequired
dct:descriptionOptional
dct:publisherOptional
dct:languageOptional
dct:licenseOptional
dct:rightsOptional
RDF Schemardfs:labelRequired
FOAFfoaf:homepageOptional
DCATdcat:datasetRequired
dcat:themeTaxonomyRequired

 


Dataset metadata

List of required and optional predicates for the dataset metadata

 


OntologyTerm nameRequired/Optional
DC termsdct:titleRequired
dct:identifierRequired
dct:issuedRequired
dct:modifiedRequired
dct:descriptionOptional
dct:publisherRequired
dct:hasVersionRequired
dct:languageOptional
dct:licenseOptional
dct:rightsOptional
RDF Schemardfs:labelRequired
DCATdcat:distributionRequired
dcat:themeRequired
dcat:contactPointOptional
dcat:keywordOptional
dcat:landingPageOptional

...


Distribution metadata

List of required and optional predicates for the distribution metadata

 


OntologyTerm nameRequired/Optional
DC termsdct:titleRequired
dct:identifierRequired
dct:issuedRequired
dct:modifiedRequired
dct:descriptionOptional
dct:licenseRequired
dct:hasVersionRequired
dct:rightsOptional
RDF Schemardfs:labelRequired
DCAT

dcat:accessURL

(or)

dcat:downloadURL

Required
dcat:mediaTypeRequired
dcat:formatOptional
dcat:byteSizeOptional

...

Figure 6 depicts the HATEOAS RESTful API of FDP. In the figure, the upper-left green box represents the FDP service and responds to requests to the root URL, hereby represented as "/". 

Image Removed

Image Added

Fig. 6 - FDP HATEOAS API

When the FAIR Data Point Service root URL receives an HTTP GET request (e.g., http://145.100.59.120:8082/fdp/), the Metadata Service returns the FDPMetadata resource. This resource contains information about the FDP itself such as the owner (organisation or individual), FDP version, API version, etc. The content of the FDPMetadata resource is based on the Repository concept defined in the Open Initiative Archive Protocol for Metadata Harvesting (OAI-PMH). Following the HATEOAS guidelines, the FDPMetadata resource also provides a link to the CatalogMetadata resource.

...

The DatasetMetadata resource provides information about the each of the offered datasets. Information includes datasets owner, license, distribution, etc. This resource is equivalent to W3C's DCAT Dataset. An example URL: http://fdp.biotools.nl:8080/dataset/breedb .

 


TODO: include a link to the SWAGGER document. Although by adopting HATEOAS guidelines an API specification is not needed because, at any point, a HATEOAS API provides information about how to navigate further from that point, it is still relevant to document the whole FDP API.

...

Fig. 8 - Dataset collection metadata page

...


Once the user select one of the available datasets, the dataset metadata page is displayed. Figure 9 depicts the mockup of a dataset metadata page.

Fig. 9 - Dataset metadata page

 

 

 

 

...






Additional references

https://docs.google.com/document/d/1WSh2y0op97JK3MnF8SRyUa1-UH3OQu4BPvICd4pH0z0/edit?pli=1#heading=h.jx33rm9jeu1h

...