-
Notifications
You must be signed in to change notification settings - Fork 1
links.json
links.json
is a file in a bundle that describes the links between metadata entities in that bundle. Every bundle will contains a links.json
.
There doesn't seem to be any written description of links.json
in the DCP so this page attempts to do that. It may be wrong so please suggest/make corrections as required.
An example:
{
"describedBy": "http://schema.staging.data.humancellatlas.org/system/1.1.1/links",
"schema_type": "link_bundle",
"schema_version": "1.1.1",
"links": [
{
"process": "5addc2af-f236-4c44-9cf2-502ceabdf5fa",
"inputs": [
"cfc572aa-fb6e-4a0e-8d41-8bc54337ddc6"
],
"input_type": "biomaterial",
"outputs": [
"bd31c5a5-62c1-41a5-bbcc-7d4e68d52132",
"3a9aabf5-9775-45bf-8da8-dffbdd820e60"
],
"output_type": "file",
"protocols": [
{
"protocol_type": "library_preparation_protocol",
"protocol_id": "0076f0aa-14c6-4cb9-93f8-97229787be21"
},
{
"protocol_type": "sequencing_protocol",
"protocol_id": "362d9c34-f5c0-4906-955b-61ba0aac58cc"
}
]
},
{
"process": "bbec07bb-2c88-42b6-9e21-ae0f25a78fd6",
"inputs": [
"5fd714dd-e147-4d7e-a816-a1e3d098879a"
],
"input_type": "biomaterial",
"outputs": [
"cfc572aa-fb6e-4a0e-8d41-8bc54337ddc6"
],
"output_type": "biomaterial",
"protocols": [
{
"protocol_type": "dissociation_protocol",
"protocol_id": "40056e47-131d-4c6e-a884-a927bfccf8ce"
},
{
"protocol_type": "enrichment_protocol",
"protocol_id": "b2c4d529-3836-4ee2-9e1f-d2dece992652"
}
]
},
{
"process": "3b0f6b2b-fb79-441c-8b4d-2f4bdc781e9a",
"inputs": [
"35a85fe5-d96d-4cc1-80a9-03659a9656e9"
],
"input_type": "biomaterial",
"outputs": [
"5fd714dd-e147-4d7e-a816-a1e3d098879a"
],
"output_type": "biomaterial",
"protocols": []
}
]
}
All UUIDs here reference metadata entities that currently must be in the same bundle as the links.json
. All the fields that can be in links.json
are described below. They are also described in the describedBy
schema but I think it's worth repeating here for clarity.
describedBy
- the URL of the schema that describes this JSON.
schema_type
- the type of the schema describing this JSON. Also found in the schema itself.
schema_version
- the version of the schema describing this JSON.
links
- the links between the metadata entities in this bundle.
-
process
- the UUID of the process that produced the output metadata from the input. A process contains no specific information about how the process was performed (this is described by the protocol). It contains only generic information such as the time and location at which it was performed. -
inputs
- a list of UUIDs of the inputs to this process -
input_type
- the type of the input metadata -
outputs
- a list of UUIDs of the outputs from this process -
output_type
- the type of the output metadata -
protocols
- the protocols that the process used to produce the output from the inputs-
protocol_type
- the type of the protocol -
protocol_id
- the UUID of the protocol
-
Note that links.json
contains no reference to the project UUID. We probably want this but to do that we need to resolve the question of whether the metadata entities are contained in the project (in which case links.json
is not the most appropriate name) or whether each entity is linked to the project, though in this case one probably wants to avoid having a large number of links just to say that.