diff --git a/docs/GWDM/1.0.form.json b/docs/GWDM/1.0.form.json index 5a7a726..a374b8e 100644 --- a/docs/GWDM/1.0.form.json +++ b/docs/GWDM/1.0.form.json @@ -309,9 +309,9 @@ }, { "required": false, - "title": "Follow-up", - "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period). In a prospective cohort study, after baseline information is collected, participants are followed \u201clongitudinally\u201d i.e. new information is collected about them for a period of time afterward. This is known as the \u201cfollow up period\u201d. What is the typical time span of follow up, e.g. 1 year, 5 years? If there are multiple cohorts in the dataset with varying follow up periods, please provide the longest follow up period.", - "guidance": "If known, please indicate the typical time span that a patient appears in the dataset (follow up period).\\n-**0 - 6 MONTHS**: Data typically available for a patient over a 0-6 month period.\\n-**6 - 12 MONTHS**: Data typically available for a patient over a 6-12 month period.\\n-**1 - 10 YEARS**: Data typically available for a patient over a 1-10 year period.\\n-**> 10 YEARS**: Data typically available for a patient for over a 10 year period.\\n-**CONTINUOUS**: Data for patients is being regularly added to and updated.\\n-**UNKNOWN**: Timespan is Unknown.\\n-**OTHER**: Data available for a patient over another time period.", + "title": "Followup", + "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period)", + "guidance": "", "examples": null, "is_list": false, "is_optional": true, @@ -550,7 +550,8 @@ "description": "Please provide a brief description of the data access services that are available including: environment that is currently available to researchers; additional consultancy and services; any indication of costs associated. If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers Note: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "guidance": "Please provide a brief description of the data access services that are available including:\\n- environment that is currently available to researchers\\n- additional consultancy and services\\n- any indication of costs associated\\n\\n If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers.\\n **Note**: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "examples": [ - "https://cnfl.extge.co.uk/display/GERE/Research+Environment+User+Guide" + "https://re-docs.genomicsengland.co.uk/tutorials/", + "https://publichealthscotland.scot/services/data-research-and-innovation-services/electronic-data-research-and-innovation-service-edris/national-safe-haven-nsh/" ], "is_list": false, "is_optional": true, @@ -622,7 +623,7 @@ "required": true, "title": "Data Controller", "description": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.", - "guidance": "- Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.\\n- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.\\n- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.\\n- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.\\n- Example: NHS England'", + "guidance": "- Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.\\n- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.\\n- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.\\n- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.\\n- Example: NHS England", "examples": [ "NHS England" ], @@ -956,5 +957,6 @@ }, "location": "observations.measuredProperty" } - ] + ], + "url_regex": "^\\s*((https?:\\/\\/)*([a-zA-Z0-9-]+\\.?)+[a-zA-Z]{2,}(:\\d+)?(\\/[^\\s]*)?(\n)?)+$" } \ No newline at end of file diff --git a/docs/GWDM/1.0.md b/docs/GWDM/1.0.md index 935d986..93f1ede 100644 --- a/docs/GWDM/1.0.md +++ b/docs/GWDM/1.0.md @@ -296,11 +296,11 @@ Please indicate if the dataset is representative of the patient pathway and any ### followup -If known, what is the typical time span that a patient appears in the dataset (follow up period). In a prospective cohort study, after baseline information is collected, participants are followed “longitudinally” i.e. new information is collected about them for a period of time afterward. This is known as the “follow up period”. What is the typical time span of follow up, e.g. 1 year, 5 years? If there are multiple cohorts in the dataset with varying follow up periods, please provide the longest follow up period. +If known, what is the typical time span that a patient appears in the dataset (follow up period) -| title | guidance | is_list | required | type | -|:----------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------|:-----------|:---------------------------------------------------------------------------------------------------------------------| -| Follow-up | If known, please indicate the typical time span that a patient appears in the dataset (follow up period).
-**0 - 6 MONTHS**: Data typically available for a patient over a 0-6 month period.
-**6 - 12 MONTHS**: Data typically available for a patient over a 6-12 month period.
-**1 - 10 YEARS**: Data typically available for a patient over a 1-10 year period.
-**> 10 YEARS**: Data typically available for a patient for over a 10 year period.
-**CONTINUOUS**: Data for patients is being regularly added to and updated.
-**UNKNOWN**: Timespan is Unknown.
-**OTHER**: Data available for a patient over another time period. | False | False | ["Followup['0 - 6 MONTHS','6 - 12 MONTHS','1 - 10 YEARS','> 10 YEARS','UNKNOWN','CONTINUOUS','OTHER',null]", 'null'] | +| title | guidance | is_list | required | type | +|:---------|:-----------|:----------|:-----------|:---------------------------------------------------------------------------------------------------------------------| +| Followup | | False | False | ["Followup['0 - 6 MONTHS','6 - 12 MONTHS','1 - 10 YEARS','> 10 YEARS','UNKNOWN','CONTINUOUS','OTHER',null]", 'null'] | @@ -516,7 +516,8 @@ Please provide a brief description of the data access services that are availabl Examples: - * https://cnfl.extge.co.uk/display/GERE/Research+Environment+User+Guide + * https://re-docs.genomicsengland.co.uk/tutorials/ + * https://publichealthscotland.scot/services/data-research-and-innovation-services/electronic-data-research-and-innovation-service-edris/national-safe-haven-nsh/ #### accessRequestCost @@ -556,9 +557,9 @@ Please use country code from ISO 3166-1 country codes and the associated ISO 316 Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed. -| title | guidance | is_list | required | type | -|:----------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------|:-----------|:-------------------------------------------------------------------------------------------------------------------| -| Data Controller | - Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.
- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.
- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.
- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.
- Example: NHS England' | False | True | ["LongDescription[{'anyOf': [{'maxLength': 50000, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", 'null'] | +| title | guidance | is_list | required | type | +|:----------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------|:-----------|:-------------------------------------------------------------------------------------------------------------------| +| Data Controller | - Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.
- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.
- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.
- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.
- Example: NHS England | False | True | ["LongDescription[{'anyOf': [{'maxLength': 50000, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", 'null'] | Examples: diff --git a/docs/GWDM/1.0.structure.json b/docs/GWDM/1.0.structure.json index 52f4ce6..8e99b26 100644 --- a/docs/GWDM/1.0.structure.json +++ b/docs/GWDM/1.0.structure.json @@ -392,9 +392,9 @@ { "name": "followup", "required": false, - "title": "Follow-up", - "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period). In a prospective cohort study, after baseline information is collected, participants are followed \u201clongitudinally\u201d i.e. new information is collected about them for a period of time afterward. This is known as the \u201cfollow up period\u201d. What is the typical time span of follow up, e.g. 1 year, 5 years? If there are multiple cohorts in the dataset with varying follow up periods, please provide the longest follow up period.", - "guidance": "If known, please indicate the typical time span that a patient appears in the dataset (follow up period).-0 - 6 MONTHS: Data typically available for a patient over a 0-6 month period.-6 - 12 MONTHS: Data typically available for a patient over a 6-12 month period.-1 - 10 YEARS: Data typically available for a patient over a 1-10 year period.-> 10 YEARS: Data typically available for a patient for over a 10 year period.-CONTINUOUS: Data for patients is being regularly added to and updated.-UNKNOWN: Timespan is Unknown.-OTHER: Data available for a patient over another time period.", + "title": "Followup", + "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period)", + "guidance": "", "examples": null, "type": [ "Followup['0 - 6 MONTHS','6 - 12 MONTHS','1 - 10 YEARS','> 10 YEARS','UNKNOWN','CONTINUOUS','OTHER',null]", @@ -696,7 +696,8 @@ "description": "Please provide a brief description of the data access services that are available including: environment that is currently available to researchers; additional consultancy and services; any indication of costs associated. If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers Note: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "guidance": "Please provide a brief description of the data access services that are available including:- environment that is currently available to researchers- additional consultancy and services- any indication of costs associated If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers. Note: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "examples": [ - "https://cnfl.extge.co.uk/display/GERE/Research+Environment+User+Guide" + "https://re-docs.genomicsengland.co.uk/tutorials/", + "https://publichealthscotland.scot/services/data-research-and-innovation-services/electronic-data-research-and-innovation-service-edris/national-safe-haven-nsh/" ], "type": [ "LongDescription[{'anyOf': [{'maxLength': 50000, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", @@ -755,7 +756,7 @@ "required": true, "title": "Data Controller", "description": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.", - "guidance": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.- Example: NHS England'", + "guidance": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.- Example: NHS England", "examples": [ "NHS England" ], diff --git a/docs/GWDM/1.1.form.json b/docs/GWDM/1.1.form.json index c1c6c6a..c9dd331 100644 --- a/docs/GWDM/1.1.form.json +++ b/docs/GWDM/1.1.form.json @@ -341,9 +341,9 @@ }, { "required": false, - "title": "Follow-up", - "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period). In a prospective cohort study, after baseline information is collected, participants are followed \u201clongitudinally\u201d i.e. new information is collected about them for a period of time afterward. This is known as the \u201cfollow up period\u201d. What is the typical time span of follow up, e.g. 1 year, 5 years? If there are multiple cohorts in the dataset with varying follow up periods, please provide the longest follow up period.", - "guidance": "If known, please indicate the typical time span that a patient appears in the dataset (follow up period).\\n-**0 - 6 MONTHS**: Data typically available for a patient over a 0-6 month period.\\n-**6 - 12 MONTHS**: Data typically available for a patient over a 6-12 month period.\\n-**1 - 10 YEARS**: Data typically available for a patient over a 1-10 year period.\\n-**> 10 YEARS**: Data typically available for a patient for over a 10 year period.\\n-**CONTINUOUS**: Data for patients is being regularly added to and updated.\\n-**UNKNOWN**: Timespan is Unknown.\\n-**OTHER**: Data available for a patient over another time period.", + "title": "Followup", + "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period)", + "guidance": "", "examples": null, "is_list": false, "is_optional": true, @@ -383,7 +383,7 @@ "required": false, "title": "Gender", "description": "Cohort description: Male, Female, Other", - "guidance": "Options are limited to Male/Female/Other.", + "guidance": "", "examples": null, "is_list": false, "is_optional": true, @@ -704,7 +704,8 @@ "description": "Please provide a brief description of the data access services that are available including: environment that is currently available to researchers; additional consultancy and services; any indication of costs associated. If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers Note: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "guidance": "Please provide a brief description of the data access services that are available including:\\n- environment that is currently available to researchers\\n- additional consultancy and services\\n- any indication of costs associated\\n\\n If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers.\\n **Note**: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "examples": [ - "https://cnfl.extge.co.uk/display/GERE/Research+Environment+User+Guide" + "https://re-docs.genomicsengland.co.uk/tutorials/", + "https://publichealthscotland.scot/services/data-research-and-innovation-services/electronic-data-research-and-innovation-service-edris/national-safe-haven-nsh/" ], "is_list": false, "is_optional": true, @@ -776,7 +777,7 @@ "required": true, "title": "Data Controller", "description": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.", - "guidance": "- Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.\\n- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.\\n- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.\\n- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.\\n- Example: NHS England'", + "guidance": "- Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.\\n- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.\\n- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.\\n- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.\\n- Example: NHS England", "examples": [ "NHS England" ], @@ -1401,5 +1402,6 @@ }, "location": "tissuesSampleCollection.tissueSampleMetadata.useRestrictions" } - ] + ], + "url_regex": "^\\s*((https?:\\/\\/)*([a-zA-Z0-9-]+\\.?)+[a-zA-Z]{2,}(:\\d+)?(\\/[^\\s]*)?(\n)?)+$" } \ No newline at end of file diff --git a/docs/GWDM/1.1.md b/docs/GWDM/1.1.md index 3bd5c02..c3edbb3 100644 --- a/docs/GWDM/1.1.md +++ b/docs/GWDM/1.1.md @@ -327,11 +327,11 @@ Please indicate if the dataset is representative of the patient pathway and any ### followup -If known, what is the typical time span that a patient appears in the dataset (follow up period). In a prospective cohort study, after baseline information is collected, participants are followed “longitudinally” i.e. new information is collected about them for a period of time afterward. This is known as the “follow up period”. What is the typical time span of follow up, e.g. 1 year, 5 years? If there are multiple cohorts in the dataset with varying follow up periods, please provide the longest follow up period. +If known, what is the typical time span that a patient appears in the dataset (follow up period) -| title | guidance | is_list | required | type | -|:----------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------|:-----------|:---------------------------------------------------------------------------------------------------------------------| -| Follow-up | If known, please indicate the typical time span that a patient appears in the dataset (follow up period).
-**0 - 6 MONTHS**: Data typically available for a patient over a 0-6 month period.
-**6 - 12 MONTHS**: Data typically available for a patient over a 6-12 month period.
-**1 - 10 YEARS**: Data typically available for a patient over a 1-10 year period.
-**> 10 YEARS**: Data typically available for a patient for over a 10 year period.
-**CONTINUOUS**: Data for patients is being regularly added to and updated.
-**UNKNOWN**: Timespan is Unknown.
-**OTHER**: Data available for a patient over another time period. | False | False | ["Followup['0 - 6 MONTHS','6 - 12 MONTHS','1 - 10 YEARS','> 10 YEARS','UNKNOWN','CONTINUOUS','OTHER',null]", 'null'] | +| title | guidance | is_list | required | type | +|:---------|:-----------|:----------|:-----------|:---------------------------------------------------------------------------------------------------------------------| +| Followup | | False | False | ["Followup['0 - 6 MONTHS','6 - 12 MONTHS','1 - 10 YEARS','> 10 YEARS','UNKNOWN','CONTINUOUS','OTHER',null]", 'null'] | @@ -353,9 +353,9 @@ Examples: Cohort description: Male, Female, Other -| title | guidance | is_list | required | type | -|:--------|:------------------------------------------|:----------|:-----------|:----------------------------------------------------------------------------------------------------------| -| Gender | Options are limited to Male/Female/Other. | False | False | ["CommaSeparatedValues[{'anyOf': [{'pattern': '([^,]+)', 'type': 'string'}, {'type': 'null'}]}]", 'null'] | +| title | guidance | is_list | required | type | +|:--------|:-----------|:----------|:-----------|:----------------------------------------------------------------------------------------------------------| +| Gender | | False | False | ["CommaSeparatedValues[{'anyOf': [{'pattern': '([^,]+)', 'type': 'string'}, {'type': 'null'}]}]", 'null'] | @@ -655,7 +655,8 @@ Please provide a brief description of the data access services that are availabl Examples: - * https://cnfl.extge.co.uk/display/GERE/Research+Environment+User+Guide + * https://re-docs.genomicsengland.co.uk/tutorials/ + * https://publichealthscotland.scot/services/data-research-and-innovation-services/electronic-data-research-and-innovation-service-edris/national-safe-haven-nsh/ #### accessRequestCost @@ -695,9 +696,9 @@ Please use country code from ISO 3166-1 country codes and the associated ISO 316 Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed. -| title | guidance | is_list | required | type | -|:----------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------|:-----------|:-------------------------------------------------------------------------------------------------------------------| -| Data Controller | - Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.
- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.
- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.
- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.
- Example: NHS England' | False | True | ["LongDescription[{'anyOf': [{'maxLength': 50000, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", 'null'] | +| title | guidance | is_list | required | type | +|:----------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------|:-----------|:-------------------------------------------------------------------------------------------------------------------| +| Data Controller | - Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.
- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.
- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.
- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.
- Example: NHS England | False | True | ["LongDescription[{'anyOf': [{'maxLength': 50000, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", 'null'] | Examples: diff --git a/docs/GWDM/1.1.structure.json b/docs/GWDM/1.1.structure.json index fb756ff..fb9b233 100644 --- a/docs/GWDM/1.1.structure.json +++ b/docs/GWDM/1.1.structure.json @@ -431,9 +431,9 @@ { "name": "followup", "required": false, - "title": "Follow-up", - "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period). In a prospective cohort study, after baseline information is collected, participants are followed \u201clongitudinally\u201d i.e. new information is collected about them for a period of time afterward. This is known as the \u201cfollow up period\u201d. What is the typical time span of follow up, e.g. 1 year, 5 years? If there are multiple cohorts in the dataset with varying follow up periods, please provide the longest follow up period.", - "guidance": "If known, please indicate the typical time span that a patient appears in the dataset (follow up period).-0 - 6 MONTHS: Data typically available for a patient over a 0-6 month period.-6 - 12 MONTHS: Data typically available for a patient over a 6-12 month period.-1 - 10 YEARS: Data typically available for a patient over a 1-10 year period.-> 10 YEARS: Data typically available for a patient for over a 10 year period.-CONTINUOUS: Data for patients is being regularly added to and updated.-UNKNOWN: Timespan is Unknown.-OTHER: Data available for a patient over another time period.", + "title": "Followup", + "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period)", + "guidance": "", "examples": null, "type": [ "Followup['0 - 6 MONTHS','6 - 12 MONTHS','1 - 10 YEARS','> 10 YEARS','UNKNOWN','CONTINUOUS','OTHER',null]", @@ -464,7 +464,7 @@ "required": false, "title": "Gender", "description": "Cohort description: Male, Female, Other", - "guidance": "Options are limited to Male/Female/Other.", + "guidance": "", "examples": null, "type": [ "CommaSeparatedValues[{'anyOf': [{'pattern': '([^,]+)', 'type': 'string'}, {'type': 'null'}]}]", @@ -884,7 +884,8 @@ "description": "Please provide a brief description of the data access services that are available including: environment that is currently available to researchers; additional consultancy and services; any indication of costs associated. If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers Note: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "guidance": "Please provide a brief description of the data access services that are available including:- environment that is currently available to researchers- additional consultancy and services- any indication of costs associated If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers. Note: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "examples": [ - "https://cnfl.extge.co.uk/display/GERE/Research+Environment+User+Guide" + "https://re-docs.genomicsengland.co.uk/tutorials/", + "https://publichealthscotland.scot/services/data-research-and-innovation-services/electronic-data-research-and-innovation-service-edris/national-safe-haven-nsh/" ], "type": [ "LongDescription[{'anyOf': [{'maxLength': 50000, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", @@ -943,7 +944,7 @@ "required": true, "title": "Data Controller", "description": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.", - "guidance": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.- Example: NHS England'", + "guidance": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.- Example: NHS England", "examples": [ "NHS England" ], diff --git a/docs/GWDM/1.2.form.json b/docs/GWDM/1.2.form.json index 6bd3d92..13ed582 100644 --- a/docs/GWDM/1.2.form.json +++ b/docs/GWDM/1.2.form.json @@ -341,9 +341,9 @@ }, { "required": false, - "title": "Follow-up", - "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period). In a prospective cohort study, after baseline information is collected, participants are followed \u201clongitudinally\u201d i.e. new information is collected about them for a period of time afterward. This is known as the \u201cfollow up period\u201d. What is the typical time span of follow up, e.g. 1 year, 5 years? If there are multiple cohorts in the dataset with varying follow up periods, please provide the longest follow up period.", - "guidance": "If known, please indicate the typical time span that a patient appears in the dataset (follow up period).\\n-**0 - 6 MONTHS**: Data typically available for a patient over a 0-6 month period.\\n-**6 - 12 MONTHS**: Data typically available for a patient over a 6-12 month period.\\n-**1 - 10 YEARS**: Data typically available for a patient over a 1-10 year period.\\n-**> 10 YEARS**: Data typically available for a patient for over a 10 year period.\\n-**CONTINUOUS**: Data for patients is being regularly added to and updated.\\n-**UNKNOWN**: Timespan is Unknown.\\n-**OTHER**: Data available for a patient over another time period.", + "title": "Followup", + "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period)", + "guidance": "", "examples": null, "is_list": false, "is_optional": true, @@ -383,7 +383,7 @@ "required": false, "title": "Gender", "description": "Cohort description: Male, Female, Other", - "guidance": "Options are limited to Male/Female/Other.", + "guidance": "", "examples": null, "is_list": false, "is_optional": true, @@ -704,7 +704,8 @@ "description": "Please provide a brief description of the data access services that are available including: environment that is currently available to researchers; additional consultancy and services; any indication of costs associated. If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers Note: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "guidance": "Please provide a brief description of the data access services that are available including:\\n- environment that is currently available to researchers\\n- additional consultancy and services\\n- any indication of costs associated\\n\\n If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers.\\n **Note**: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "examples": [ - "https://cnfl.extge.co.uk/display/GERE/Research+Environment+User+Guide" + "https://re-docs.genomicsengland.co.uk/tutorials/", + "https://publichealthscotland.scot/services/data-research-and-innovation-services/electronic-data-research-and-innovation-service-edris/national-safe-haven-nsh/" ], "is_list": false, "is_optional": true, @@ -776,7 +777,7 @@ "required": true, "title": "Data Controller", "description": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.", - "guidance": "- Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.\\n- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.\\n- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.\\n- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.\\n- Example: NHS England'", + "guidance": "- Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.\\n- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.\\n- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.\\n- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.\\n- Example: NHS England", "examples": [ "NHS England" ], @@ -1433,5 +1434,6 @@ }, "location": "tissuesSampleCollection.tissueSampleMetadata.useRestrictions" } - ] + ], + "url_regex": "^\\s*((https?:\\/\\/)*([a-zA-Z0-9-]+\\.?)+[a-zA-Z]{2,}(:\\d+)?(\\/[^\\s]*)?(\n)?)+$" } \ No newline at end of file diff --git a/docs/GWDM/1.2.md b/docs/GWDM/1.2.md index 88f0f59..ba3dc8d 100644 --- a/docs/GWDM/1.2.md +++ b/docs/GWDM/1.2.md @@ -327,11 +327,11 @@ Please indicate if the dataset is representative of the patient pathway and any ### followup -If known, what is the typical time span that a patient appears in the dataset (follow up period). In a prospective cohort study, after baseline information is collected, participants are followed “longitudinally” i.e. new information is collected about them for a period of time afterward. This is known as the “follow up period”. What is the typical time span of follow up, e.g. 1 year, 5 years? If there are multiple cohorts in the dataset with varying follow up periods, please provide the longest follow up period. +If known, what is the typical time span that a patient appears in the dataset (follow up period) -| title | guidance | is_list | required | type | -|:----------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------|:-----------|:---------------------------------------------------------------------------------------------------------------------| -| Follow-up | If known, please indicate the typical time span that a patient appears in the dataset (follow up period).
-**0 - 6 MONTHS**: Data typically available for a patient over a 0-6 month period.
-**6 - 12 MONTHS**: Data typically available for a patient over a 6-12 month period.
-**1 - 10 YEARS**: Data typically available for a patient over a 1-10 year period.
-**> 10 YEARS**: Data typically available for a patient for over a 10 year period.
-**CONTINUOUS**: Data for patients is being regularly added to and updated.
-**UNKNOWN**: Timespan is Unknown.
-**OTHER**: Data available for a patient over another time period. | False | False | ["Followup['0 - 6 MONTHS','6 - 12 MONTHS','1 - 10 YEARS','> 10 YEARS','UNKNOWN','CONTINUOUS','OTHER',null]", 'null'] | +| title | guidance | is_list | required | type | +|:---------|:-----------|:----------|:-----------|:---------------------------------------------------------------------------------------------------------------------| +| Followup | | False | False | ["Followup['0 - 6 MONTHS','6 - 12 MONTHS','1 - 10 YEARS','> 10 YEARS','UNKNOWN','CONTINUOUS','OTHER',null]", 'null'] | @@ -353,9 +353,9 @@ Examples: Cohort description: Male, Female, Other -| title | guidance | is_list | required | type | -|:--------|:------------------------------------------|:----------|:-----------|:----------------------------------------------------------------------------------------------------------| -| Gender | Options are limited to Male/Female/Other. | False | False | ["CommaSeparatedValues[{'anyOf': [{'pattern': '([^,]+)', 'type': 'string'}, {'type': 'null'}]}]", 'null'] | +| title | guidance | is_list | required | type | +|:--------|:-----------|:----------|:-----------|:----------------------------------------------------------------------------------------------------------| +| Gender | | False | False | ["CommaSeparatedValues[{'anyOf': [{'pattern': '([^,]+)', 'type': 'string'}, {'type': 'null'}]}]", 'null'] | @@ -655,7 +655,8 @@ Please provide a brief description of the data access services that are availabl Examples: - * https://cnfl.extge.co.uk/display/GERE/Research+Environment+User+Guide + * https://re-docs.genomicsengland.co.uk/tutorials/ + * https://publichealthscotland.scot/services/data-research-and-innovation-services/electronic-data-research-and-innovation-service-edris/national-safe-haven-nsh/ #### accessRequestCost @@ -695,9 +696,9 @@ Please use country code from ISO 3166-1 country codes and the associated ISO 316 Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed. -| title | guidance | is_list | required | type | -|:----------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------|:-----------|:-------------------------------------------------------------------------------------------------------------------| -| Data Controller | - Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.
- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.
- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.
- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.
- Example: NHS England' | False | True | ["LongDescription[{'anyOf': [{'maxLength': 50000, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", 'null'] | +| title | guidance | is_list | required | type | +|:----------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------|:-----------|:-------------------------------------------------------------------------------------------------------------------| +| Data Controller | - Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.
- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.
- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.
- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.
- Example: NHS England | False | True | ["LongDescription[{'anyOf': [{'maxLength': 50000, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", 'null'] | Examples: diff --git a/docs/GWDM/1.2.structure.json b/docs/GWDM/1.2.structure.json index 91db6f3..6136834 100644 --- a/docs/GWDM/1.2.structure.json +++ b/docs/GWDM/1.2.structure.json @@ -431,9 +431,9 @@ { "name": "followup", "required": false, - "title": "Follow-up", - "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period). In a prospective cohort study, after baseline information is collected, participants are followed \u201clongitudinally\u201d i.e. new information is collected about them for a period of time afterward. This is known as the \u201cfollow up period\u201d. What is the typical time span of follow up, e.g. 1 year, 5 years? If there are multiple cohorts in the dataset with varying follow up periods, please provide the longest follow up period.", - "guidance": "If known, please indicate the typical time span that a patient appears in the dataset (follow up period).-0 - 6 MONTHS: Data typically available for a patient over a 0-6 month period.-6 - 12 MONTHS: Data typically available for a patient over a 6-12 month period.-1 - 10 YEARS: Data typically available for a patient over a 1-10 year period.-> 10 YEARS: Data typically available for a patient for over a 10 year period.-CONTINUOUS: Data for patients is being regularly added to and updated.-UNKNOWN: Timespan is Unknown.-OTHER: Data available for a patient over another time period.", + "title": "Followup", + "description": "If known, what is the typical time span that a patient appears in the dataset (follow up period)", + "guidance": "", "examples": null, "type": [ "Followup['0 - 6 MONTHS','6 - 12 MONTHS','1 - 10 YEARS','> 10 YEARS','UNKNOWN','CONTINUOUS','OTHER',null]", @@ -464,7 +464,7 @@ "required": false, "title": "Gender", "description": "Cohort description: Male, Female, Other", - "guidance": "Options are limited to Male/Female/Other.", + "guidance": "", "examples": null, "type": [ "CommaSeparatedValues[{'anyOf': [{'pattern': '([^,]+)', 'type': 'string'}, {'type': 'null'}]}]", @@ -884,7 +884,8 @@ "description": "Please provide a brief description of the data access services that are available including: environment that is currently available to researchers; additional consultancy and services; any indication of costs associated. If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers Note: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "guidance": "Please provide a brief description of the data access services that are available including:- environment that is currently available to researchers- additional consultancy and services- any indication of costs associated If no environment is currently available, please indicate the current plans and timelines when and how data will be made available to researchers. Note: This value will be used as default access environment for all datasets submitted by the organisation. However, there will be the opportunity to overwrite this value for each dataset.", "examples": [ - "https://cnfl.extge.co.uk/display/GERE/Research+Environment+User+Guide" + "https://re-docs.genomicsengland.co.uk/tutorials/", + "https://publichealthscotland.scot/services/data-research-and-innovation-services/electronic-data-research-and-innovation-service-edris/national-safe-haven-nsh/" ], "type": [ "LongDescription[{'anyOf': [{'maxLength': 50000, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", @@ -943,7 +944,7 @@ "required": true, "title": "Data Controller", "description": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.", - "guidance": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.- Example: NHS England'", + "guidance": "Data Controller means a person/entity who (either alone or jointly or in common with other persons/entities) determines the purposes for which and the way any Data Subject data, specifically personal data or are to be processed.- Notes: For most organisations this will be the same as the Data Custodian of the dataset. If this is not the case, please indicate that there is a different controller.- If there is a different controller please complete the Data Processor attribute to indicate if the Data Custodian is a Processor rather than the Data Controller.- In some cases, there may be multiple Data Controllers i.e. GP data. If this is the case, please indicate the fact in a free-text field and describe the data sharing arrangement or a link to it, so that this can be understood by research users.- Example: NHS England", "examples": [ "NHS England" ], diff --git a/docs/GWDM/2.0.form.json b/docs/GWDM/2.0.form.json index 82a72eb..403d29a 100644 --- a/docs/GWDM/2.0.form.json +++ b/docs/GWDM/2.0.form.json @@ -213,9 +213,8 @@ "is_list": false, "is_optional": true, "types": { - "title": "DatasetType", - "maxLength": 100, - "minLength": 2, + "title": "CommaSeparatedValues", + "pattern": "([^,]+)", "type": "string" }, "location": "summary.datasetType" @@ -293,9 +292,8 @@ "is_list": false, "is_optional": true, "types": { - "title": "DatasetType", - "maxLength": 100, - "minLength": 2, + "title": "CommaSeparatedValues", + "pattern": "([^,]+)", "type": "string" }, "location": "summary.datasetSubType" @@ -1594,5 +1592,5 @@ "location": "omics.platform" } ], - "url_regex": "(https?:\\/\\/)?([a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,}(:\\d+)?(\\/[^\\s]*)?$" + "url_regex": "^\\s*((https?:\\/\\/)*([a-zA-Z0-9-]+\\.?)+[a-zA-Z]{2,}(:\\d+)?(\\/[^\\s]*)?(\n)?)+$" } \ No newline at end of file diff --git a/docs/GWDM/2.0.md b/docs/GWDM/2.0.md index 84df875..e4d3a59 100644 --- a/docs/GWDM/2.0.md +++ b/docs/GWDM/2.0.md @@ -202,9 +202,9 @@ Examples: What type of dataset is this? -| title | guidance | is_list | required | type | -|:-------------|:-----------|:----------|:-----------|:-------------------------------------------------------------------------------------------------------------| -| Dataset type | | False | False | ["DatasetType[{'anyOf': [{'maxLength': 100, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", 'null'] | +| title | guidance | is_list | required | type | +|:-------------|:-----------|:----------|:-----------|:----------------------------------------------------------------------------------------------------------| +| Dataset type | | False | False | ["CommaSeparatedValues[{'anyOf': [{'pattern': '([^,]+)', 'type': 'string'}, {'type': 'null'}]}]", 'null'] | @@ -279,9 +279,9 @@ Summary population size of the cohort Placeholder for dataset sub-type -| title | guidance | is_list | required | type | -|:-----------------|:-----------|:----------|:-----------|:-------------------------------------------------------------------------------------------------------------| -| Dataset Sub-type | | False | False | ["DatasetType[{'anyOf': [{'maxLength': 100, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", 'null'] | +| title | guidance | is_list | required | type | +|:-----------------|:-----------|:----------|:-----------|:----------------------------------------------------------------------------------------------------------| +| Dataset Sub-type | | False | False | ["CommaSeparatedValues[{'anyOf': [{'pattern': '([^,]+)', 'type': 'string'}, {'type': 'null'}]}]", 'null'] | diff --git a/docs/GWDM/2.0.structure.json b/docs/GWDM/2.0.structure.json index e7a7c47..8bd3945 100644 --- a/docs/GWDM/2.0.structure.json +++ b/docs/GWDM/2.0.structure.json @@ -263,7 +263,7 @@ "guidance": "", "examples": null, "type": [ - "DatasetType[{'anyOf': [{'maxLength': 100, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", + "CommaSeparatedValues[{'anyOf': [{'pattern': '([^,]+)', 'type': 'string'}, {'type': 'null'}]}]", "null" ], "is_list": false, @@ -368,7 +368,7 @@ "guidance": "", "examples": null, "type": [ - "DatasetType[{'anyOf': [{'maxLength': 100, 'minLength': 2, 'type': 'string'}, {'type': 'null'}]}]", + "CommaSeparatedValues[{'anyOf': [{'pattern': '([^,]+)', 'type': 'string'}, {'type': 'null'}]}]", "null" ], "is_list": false, diff --git a/docs/HDRUK/2.1.2.form.json b/docs/HDRUK/2.1.2.form.json index 3e246e5..109b3f8 100644 --- a/docs/HDRUK/2.1.2.form.json +++ b/docs/HDRUK/2.1.2.form.json @@ -944,5 +944,6 @@ }, "location": "observations.measuredProperty" } - ] + ], + "url_regex": "^\\s*((https?:\\/\\/)*([a-zA-Z0-9-]+\\.?)+[a-zA-Z]{2,}(:\\d+)?(\\/[^\\s]*)?(\n)?)+$" } \ No newline at end of file diff --git a/docs/HDRUK/2.1.3.form.json b/docs/HDRUK/2.1.3.form.json index 12980df..f58ebbd 100644 --- a/docs/HDRUK/2.1.3.form.json +++ b/docs/HDRUK/2.1.3.form.json @@ -944,5 +944,6 @@ }, "location": "observations.measuredProperty" } - ] + ], + "url_regex": "^\\s*((https?:\\/\\/)*([a-zA-Z0-9-]+\\.?)+[a-zA-Z]{2,}(:\\d+)?(\\/[^\\s]*)?(\n)?)+$" } \ No newline at end of file diff --git a/docs/HDRUK/2.2.0.form.json b/docs/HDRUK/2.2.0.form.json index 0e3c85c..63d2500 100644 --- a/docs/HDRUK/2.2.0.form.json +++ b/docs/HDRUK/2.2.0.form.json @@ -1209,5 +1209,6 @@ }, "location": "tissuesSampleCollection.collectionType" } - ] + ], + "url_regex": "^\\s*((https?:\\/\\/)*([a-zA-Z0-9-]+\\.?)+[a-zA-Z]{2,}(:\\d+)?(\\/[^\\s]*)?(\n)?)+$" } \ No newline at end of file diff --git a/docs/HDRUK/2.2.1.form.json b/docs/HDRUK/2.2.1.form.json index b0e8c13..0c4e92f 100644 --- a/docs/HDRUK/2.2.1.form.json +++ b/docs/HDRUK/2.2.1.form.json @@ -1280,5 +1280,6 @@ }, "location": "tissuesSampleCollection.collectionType" } - ] + ], + "url_regex": "^\\s*((https?:\\/\\/)*([a-zA-Z0-9-]+\\.?)+[a-zA-Z]{2,}(:\\d+)?(\\/[^\\s]*)?(\n)?)+$" } \ No newline at end of file diff --git a/docs/HDRUK/3.0.0.form.json b/docs/HDRUK/3.0.0.form.json index 258aa93..b8fe386 100644 --- a/docs/HDRUK/3.0.0.form.json +++ b/docs/HDRUK/3.0.0.form.json @@ -65,9 +65,8 @@ "is_list": false, "is_optional": true, "types": { - "title": "Url", - "format": "uri", - "minLength": 1, + "title": "UrlV2", + "pattern": "^\\s*((https?:\\/\\/)*([a-zA-Z0-9-]+\\.?)+[a-zA-Z]{2,}(:\\d+)?(\\/[^\\s]*)?(\\n)?)+$", "type": "string" }, "location": "revisions.url" diff --git a/docs/HDRUK/3.0.0.md b/docs/HDRUK/3.0.0.md index 0e05c89..facc8d0 100644 --- a/docs/HDRUK/3.0.0.md +++ b/docs/HDRUK/3.0.0.md @@ -52,9 +52,9 @@ Examples: Some url with a reference to the record of a previous version of this dataset -| title | guidance | is_list | required | type | -|:-------------|:-----------|:----------|:-----------|:----------------------------------------------------------------------------------------------------| -| revision url | | False | False | ["Url[{'anyOf': [{'format': 'uri', 'minLength': 1, 'type': 'string'}, {'type': 'null'}]}]", 'null'] | +| title | guidance | is_list | required | type | +|:-------------|:-----------|:----------|:-----------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| revision url | | False | False | ["UrlV2[{'anyOf': [{'pattern': '^\\\\s*((https?:\\\\/\\\\/)*([a-zA-Z0-9-]+\\\\.?)+[a-zA-Z]{2,}(:\\\\d+)?(\\\\/[^\\\\s]*)?(\\
)?)+$', 'type': 'string'}, {'type': 'null'}]}]", 'null'] | Examples: diff --git a/docs/HDRUK/3.0.0.structure.json b/docs/HDRUK/3.0.0.structure.json index aa60ec0..36ac2b2 100644 --- a/docs/HDRUK/3.0.0.structure.json +++ b/docs/HDRUK/3.0.0.structure.json @@ -73,7 +73,7 @@ "https://api.service.nhs.uk/health-research-data-catalogue/datasetrevisions/841f7da2-b018-41f6-b4ae-2e0aadab6561" ], "type": [ - "Url[{'anyOf': [{'format': 'uri', 'minLength': 1, 'type': 'string'}, {'type': 'null'}]}]", + "UrlV2[{'anyOf': [{'pattern': '^\\\\s*((https?:\\\\/\\\\/)*([a-zA-Z0-9-]+\\\\.?)+[a-zA-Z]{2,}(:\\\\d+)?(\\\\/[^\\\\s]*)?(\\\\n)?)+$', 'type': 'string'}, {'type': 'null'}]}]", "null" ], "is_list": false, diff --git a/hdr_schemata/definitions/HDRUK/Url.py b/hdr_schemata/definitions/HDRUK/Url.py index c740c8d..99d7f20 100644 --- a/hdr_schemata/definitions/HDRUK/Url.py +++ b/hdr_schemata/definitions/HDRUK/Url.py @@ -1,7 +1,10 @@ from typing import Optional -from pydantic import AnyUrl, RootModel +from pydantic import AnyUrl, constr, RootModel class Url(RootModel): root: Optional[AnyUrl] +class UrlV2(RootModel): + root: Optional[constr(pattern=r'^\s*((https?:\/\/)*([a-zA-Z0-9-]+\.?)+[a-zA-Z]{2,}(:\d+)?(\/[^\s]*)?(\n)?)+$')] + diff --git a/hdr_schemata/definitions/HDRUK/__init__.py b/hdr_schemata/definitions/HDRUK/__init__.py index a7cad8a..098832e 100644 --- a/hdr_schemata/definitions/HDRUK/__init__.py +++ b/hdr_schemata/definitions/HDRUK/__init__.py @@ -54,5 +54,5 @@ from .TissueCollectionTypeEnum import TissueCollectionTypeEnum from .TissueDataCategoriesEnum import TissueDataCategoriesEnum from .TwoHundredFiftyFiveCharacters import TwoHundredFiftyFiveCharacters -from .Url import Url +from .Url import Url, UrlV2 from .Uuidv4 import Uuidv4 diff --git a/hdr_schemata/models/HDRUK/3.0.0/schema.json b/hdr_schemata/models/HDRUK/3.0.0/schema.json index 9310515..566b543 100644 --- a/hdr_schemata/models/HDRUK/3.0.0/schema.json +++ b/hdr_schemata/models/HDRUK/3.0.0/schema.json @@ -1934,7 +1934,7 @@ "url": { "anyOf": [ { - "$ref": "#/$defs/Url" + "$ref": "#/$defs/UrlV2" }, { "type": "null" @@ -2351,6 +2351,18 @@ ], "title": "Url" }, + "UrlV2": { + "anyOf": [ + { + "pattern": "^\\s*((https?:\\/\\/)*([a-zA-Z0-9-]+\\.?)+[a-zA-Z]{2,}(:\\d+)?(\\/[^\\s]*)?(\\n)?)+$", + "type": "string" + }, + { + "type": "null" + } + ], + "title": "UrlV2" + }, "Usage": { "additionalProperties": false, "properties": { diff --git a/hdr_schemata/models/HDRUK/v3_0_0/Revision.py b/hdr_schemata/models/HDRUK/v3_0_0/Revision.py index 243a183..63fcdb6 100644 --- a/hdr_schemata/models/HDRUK/v3_0_0/Revision.py +++ b/hdr_schemata/models/HDRUK/v3_0_0/Revision.py @@ -1,7 +1,7 @@ from typing import Optional from pydantic import BaseModel, Field -from hdr_schemata.definitions.HDRUK import Semver, Url +from hdr_schemata.definitions.HDRUK import Semver, UrlV2 from .annotations import annotations @@ -13,4 +13,4 @@ class Config: extra = "forbid" version: Semver = Field(..., **an.version.__dict__) - url: Optional[Url] = Field(None, **an.url.__dict__) + url: Optional[UrlV2] = Field(None, **an.url.__dict__)