Difference between revisions of "Study JSON v2"

From ECRIN-MDR Wiki
Jump to navigation Jump to search
Line 7: Line 7:
 
     "$id": "http://ecrin.org/json_schemas/mdrstudy/v2.json",
 
     "$id": "http://ecrin.org/json_schemas/mdrstudy/v2.json",
 
     "title": "XDC Study definition",
 
     "title": "XDC Study definition",
     "description": "ECRIN Metadata Repository for clinical research objects, Study JSON definition, version 2 February 2019",
+
     "description": "ECRIN Metadata Repository for clinical research objects, Study JSON definition, version 1 January 2019",
  
 
     "type": "object",
 
     "type": "object",
     "required": ["id", "scientific_title"],
+
     "required": ["Id", "ScientificTitle"],
 
     "additionalProperties": false,
 
     "additionalProperties": false,
 
     "properties": {
 
     "properties": {
  
         "id": {
+
         "Id": {
 
             "type": "integer",
 
             "type": "integer",
 
             "description": "Internal accession number of the study within MDR database"
 
             "description": "Internal accession number of the study within MDR database"
 
         },
 
         },
  
         "scientific_title": {
+
         "ScientificTitle": {
             "type": "object",
+
             "type": "string",
            "properties": {
+
"description": "The full scientific title, as used on the protocol document"
                "title": {
 
                    "type": "string",
 
                    "description": "The full scientific title, as used on the protocol document"
 
                },
 
                "lang_code": {
 
                    "$ref": "#/definitions/lang_code"
 
                }
 
            }
 
 
         },
 
         },
  
         "study_identifiers": {
+
         "StudyIdentifiers": {
 
             "type": "array",
 
             "type": "array",
 
             "items": {
 
             "items": {
 
                 "type": "object",
 
                 "type": "object",
 
                 "description": "A composite object that indicates the value and type of the identifier, and optionally its date and organisation of origin",
 
                 "description": "A composite object that indicates the value and type of the identifier, and optionally its date and organisation of origin",
                 "required": ["id", "value", "type"],
+
                 "required": ["Id", "IdentifierValue", "IdentifierTypeId"],
 
                 "properties": {
 
                 "properties": {
                     "id": {
+
                     "Id": {
 
                         "type": "integer",
 
                         "type": "integer",
                         "description": "study identifier record primary key, generated automatically in database"
+
                         "description": "Study identifier record primary key, generated automatically in database"
 
                     },
 
                     },
                     "value": {
+
                     "IdentifierValue": {
 
                         "type": "string",
 
                         "type": "string",
                         "description": "the identifier value, in a standardised format (for each identifier type)"
+
                         "description": "The identifier value, in a standardised format (for each identifier type)"
 
                     },
 
                     },
                     "type": {
+
                     "IdentifierTypeId": {
                         "type": "object",
+
                         "type": "integer",
                        "properties": {
+
                        "description": "An integer referencing the relevant record in the identifier_types enumeration / lookup table"
                            "id": {
 
                                "type": "integer",
 
                                "description": "An integer referencing the relevant record in the identifier_types enumeration / lookup table"
 
                            },
 
                            "name": {
 
                                "type": "string",
 
                                "description": "One of the allowed types, from the identifier_types enumeration, e.g. 'Trial Registry ID', or 'Sponsor ID'"
 
                            }
 
                        }
 
 
                     },
 
                     },
                     "date": {
+
                     "DateApplied": {
 
                         "type": "string",
 
                         "type": "string",
 
                         "format": "date",
 
                         "format": "date",
 
                         "description": "The date the identifier was allocated, if known"
 
                         "description": "The date the identifier was allocated, if known"
 
                     },
 
                     },
                     "organisation": {
+
                     "OrgId": {
                         "$ref": "#/definitions/organisation"
+
                         "type": "integer",
 +
                        "description": "An integer referencing an organisation record in the ECRIN context database"
 
                     }
 
                     }
 
                 }
 
                 }
Line 72: Line 56:
 
         },
 
         },
  
         "study_topics": {
+
         "StudyTopics": {
 
             "type": "array",
 
             "type": "array",
 
             "items": {
 
             "items": {
 
                 "type": "object",
 
                 "type": "object",
                 "description": "A composite object that indicates the topic name or keyword, and - if applicable - how it was classified in the source data, the controlled terminology system used, and the code for the topic in that system",
+
                 "description": "A composite object that indicates the topic name or keyword, and - if applicable - how it was classified in the source data",
                 "required": ["id", "value"],
+
                 "required": ["Id", "Topic"],
 
                 "properties": {
 
                 "properties": {
                     "id": {
+
                     "Id": {
 
                         "type": "integer",
 
                         "type": "integer",
 
                         "description": "Study topic record primary key, generated automatically in database"
 
                         "description": "Study topic record primary key, generated automatically in database"
 
                     },
 
                     },
                     "value": {
+
                     "Topic": {
 
                         "type": "string",
 
                         "type": "string",
 
                         "description": "The topic name, as provided in the source data"
 
                         "description": "The topic name, as provided in the source data"
 
                     },
 
                     },
                     "topic_source_type": {
+
                     "TopicTypeId": {
                         "type": "object",
+
                         "type": "integer",
                        "description": "How the topic was categorised in the source documentation, or using the controlled terminology, or using a category matching service"
+
                        "description": "An integer referencing the relevant record in the topic_source_types enumeration / lookup table"
                        "properties": {
+
}
                            "id": {
+
}
                                "type": "integer",
 
                                "description": "An integer referencing the relevant record in the topic_source_types enumeration / lookup table"
 
                            },
 
                            "name": {
 
                                "type": "string",
 
                                "description": "One of the allowed types, from the topic_source_types enumeration, e.g. 'Condition', or 'Organism'"
 
                            }
 
                        }
 
                    },
 
                    "topic_ct": {
 
                        "type": "object",
 
                        "description": "If applicable, the controlled terminology system from which the topic name was taken",
 
                        "properties": {
 
                            "id": {
 
                                "type": "integer",
 
                                "description": "An integer referencing the relevant record in the topic_controlled_terminologies enumeration / lookup table"
 
                            },
 
                            "name": {
 
                                "type": "string",
 
                                "description": "One of the allowed types, from the topic_controlled_terminologies enumeration, e.g. 'MESH', or 'Cochrane PICO terminology'"
 
                            }
 
                        }
 
                    },
 
                    "topic_ct_code": {
 
                        "type": "string",
 
                        "description": "The code for the topic within the designated controlled terminology scheme"
 
                    },
 
                }
 
 
             }
 
             }
 
         },
 
         },
  
         "study_other_titles": {
+
         "StudyOtherTitles": {
 
             "type": "array",
 
             "type": "array",
 
             "items": {
 
             "items": {
 
                 "type": "object",
 
                 "type": "object",
 
                 "description": "A composite object that indicates the type and value of the 'other title'",
 
                 "description": "A composite object that indicates the type and value of the 'other title'",
                 "required": ["id", "title_type", "title_text"],
+
                 "required": ["Id", "TitleTypeId", "TitleText"],
 
                 "properties": {
 
                 "properties": {
                     "id": {
+
                     "Id": {
 
                         "type": "integer",
 
                         "type": "integer",
 
                         "description": "Other title record primary key, generated automatically in database"
 
                         "description": "Other title record primary key, generated automatically in database"
 
                     },
 
                     },
                     "title_type": {
+
                     "TitleTypeId": {
                        "type": "object",
+
"type": "integer",
                         "properties": {
+
                         "description": "An integer referencing the relevant record in the title_types enumeration / lookup table"
                            "id": {
 
                                "type": "integer",
 
                                "description": "An integer referencing the relevant record in the title_types enumeration / lookup table"
 
                            },
 
                            "name": {
 
                                "type": "string",
 
                                "description": "One of the allowed types, from the title_types enumeration, e.g. 'Abbreviation or Acronym', or 'Translated Title'"
 
                            }
 
                        }
 
 
                     },
 
                     },
                     "title_text": {
+
                     "TitleText": {
 
                         "type": "string"
 
                         "type": "string"
                    },
 
                    "lang_code": {
 
                        "$ref": "#/definitions/lang_code"
 
 
                     }
 
                     }
 
                 }
 
                 }
 
             }
 
             }
 
         },
 
         },
 
+
        "study_type": {
+
"StudyRelationships": {
             "type": "object",
+
             "type": "array",
            "properties": {
+
            "items": {
                "id": {
+
                "type": "object",
                     "type": "integer",
+
                "description": "A composite object that indicates the type and value of the 'other title'",
                     "description": "An integer referencing the relevant record in the study_types enumeration / lookup table"
+
                "required": ["Id", "StudyBId", "RelationshipId"],
                },
+
                "properties": {
                "name": {
+
                    "Id": {
                    "type": "string",
+
                        "type": "integer",
                    "description": "One of the allowed types, from the study_types enumeration, e.g. 'Interventional', or 'Observational'"
+
                        "description": "Study relationships record primary key, generated automatically in database"
 +
                    },
 +
                     "StudyBId": {
 +
"type": "integer",
 +
                        "description": "An integer referencing the id, i.e. internal accession number, of the related study"
 +
                     },
 +
"RelationshipId": {
 +
"type": "integer",
 +
                        "description": "An integer referencing the relevant record in the study_relationship_types enumeration / lookup table"
 +
                    },
 +
                    "Comments": {
 +
                        "type": "string"
 +
"description": "Optional comments providing further details of the relationship"
 +
                    }
 
                 }
 
                 }
 
             }
 
             }
 
         },
 
         },
 
+
        "study_status": {
+
            "type": "object",
+
         "LinkedDataObjects": {
            "properties": {
 
                "id": {
 
                    "type": "integer",
 
                    "description": "An integer referencing the relevant record in the study_statuses enumeration / lookup table"
 
                },
 
                "name": {
 
                    "type": "string",
 
                    "description": "One of the allowed types, from the study_statuses enumeration, e.g. 'Active, not recruiting', or 'Completed'"
 
                }
 
            }
 
        },
 
 
 
         "linked_data_objects": {
 
 
             "type": "array",
 
             "type": "array",
 
             "items": {
 
             "items": {
 
                 "type": "object",
 
                 "type": "object",
 
                 "properties": {
 
                 "properties": {
                     "id": {
+
                     "DataObjectId": {
 
                         "type": "integer",
 
                         "type": "integer",
 
                         "description": "The id, i.e. internal accession number, of the linked data object"
 
                         "description": "The id, i.e. internal accession number, of the linked data object"
Line 197: Line 141:
 
             }
 
             }
 
         }
 
         }
    },
+
 
 
    "definitions": {
 
 
 
        "lang_code": {
 
            "type": "string",
 
            "minLength" = 2,
 
            "maxLength" = 2,
 
            "description": "A two letter ISO 369-1 code indicating the language of the study",
 
            "default": "en"
 
        },
 
 
 
        "organisation": {
 
            "type": "object",
 
            "required": ["name"],
 
            "properties": {
 
                "id": {
 
                    "type": "integer",
 
                    "description": "The id of the organisation within the ECRIN contextual database, if that id exists"
 
                }
 
                "name": {
 
                    "type": "array",
 
                    "description": "Either the name of the organisation as supplied by the source data, or the names (may be multiple) of the organisation within the ECRIN contextual database",
 
                    "minItems" = 1,
 
                    "items": {
 
                        "type": "string"
 
                    }
 
                }
 
            }
 
        }
 
 
 
 
     }
 
     }
 
}
 
}
 +
 
</pre>
 
</pre>
 
</div>
 
</div>

Revision as of 12:16, 8 September 2019


{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "$id": "http://ecrin.org/json_schemas/mdrstudy/v2.json",
    "title": "XDC Study definition",
    "description": "ECRIN Metadata Repository for clinical research objects, Study JSON definition, version 1 January 2019",

    "type": "object",
    "required": ["Id", "ScientificTitle"],
    "additionalProperties": false,
    "properties": {

        "Id": {
            "type": "integer",
            "description": "Internal accession number of the study within MDR database"
        },

        "ScientificTitle": {
            "type": "string",
			"description": "The full scientific title, as used on the protocol document"
        },

        "StudyIdentifiers": {
            "type": "array",
            "items": {
                "type": "object",
                "description": "A composite object that indicates the value and type of the identifier, and optionally its date and organisation of origin",
                "required": ["Id", "IdentifierValue", "IdentifierTypeId"],
                "properties": {
                    "Id": {
                        "type": "integer",
                        "description": "Study identifier record primary key, generated automatically in database"
                    },
                    "IdentifierValue": {
                        "type": "string",
                        "description": "The identifier value, in a standardised format (for each identifier type)"
                    },
                    "IdentifierTypeId": {
                        "type": "integer",
                         "description": "An integer referencing the relevant record in the identifier_types enumeration / lookup table"
                    },
                    "DateApplied": {
                        "type": "string",
                        "format": "date",
                        "description": "The date the identifier was allocated, if known"
                    },
                    "OrgId": {
                        "type": "integer",
                         "description": "An integer referencing an organisation record in the ECRIN context database"
                    }
                }
            }
        },

        "StudyTopics": {
            "type": "array",
            "items": {
                "type": "object",
                "description": "A composite object that indicates the topic name or keyword, and - if applicable - how it was classified in the source data",
                "required": ["Id", "Topic"],
                "properties": {
                    "Id": {
                        "type": "integer",
                        "description": "Study topic record primary key, generated automatically in database"
                    },
                    "Topic": {
                        "type": "string",
                        "description": "The topic name, as provided in the source data"
                    },
                    "TopicTypeId": {
                        "type": "integer",
                         "description": "An integer referencing the relevant record in the topic_source_types enumeration / lookup table"
					}
				}
            }
        },

        "StudyOtherTitles": {
            "type": "array",
            "items": {
                "type": "object",
                "description": "A composite object that indicates the type and value of the 'other title'",
                "required": ["Id", "TitleTypeId", "TitleText"],
                "properties": {
                    "Id": {
                        "type": "integer",
                        "description": "Other title record primary key, generated automatically in database"
                    },
                    "TitleTypeId": {
						"type": "integer",
                        "description": "An integer referencing the relevant record in the title_types enumeration / lookup table"
                    },
                    "TitleText": {
                        "type": "string"
                    }
                }
            }
        },
		
		"StudyRelationships": {
            "type": "array",
            "items": {
                "type": "object",
                "description": "A composite object that indicates the type and value of the 'other title'",
                "required": ["Id", "StudyBId", "RelationshipId"],
                "properties": {
                    "Id": {
                        "type": "integer",
                        "description": "Study relationships record primary key, generated automatically in database"
                    },
                    "StudyBId": {
						"type": "integer",
                        "description": "An integer referencing the id, i.e. internal accession number, of the related study"
                    },
					"RelationshipId": {
						"type": "integer",
                        "description": "An integer referencing the relevant record in the study_relationship_types enumeration / lookup table"
                    },
                    "Comments": {
                        "type": "string"
						"description": "Optional comments providing further details of the relationship"
                    }
                }
            }
        },
		
		
        "LinkedDataObjects": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "DataObjectId": {
                        "type": "integer",
                        "description": "The id, i.e. internal accession number, of the linked data object"
                    }
                }
            }
        }
		
    }
}