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__)