You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
During validation of a Resource on Create (ProfileValidationOnCreate = true), I get the following error: Internal logic failure: StructureDefinition 'http://nictiz.nl/fhir/StructureDefinition/ext-SOAPReport.SOAPLineCode' has no snapshot component. (Parameter 'sd')
Which is true, but shouldn't profile snapshots be generated?
These are the profiles I'm trying to use:
SoapLine:
{
"resourceType": "StructureDefinition",
"id": "nl-core-SOAPReport.SOAPLine",
"text": {
"status": "empty",
"div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">No narrative is provided for definitional resources. A human-readable rendering can be found in the implementation guide(s) where this resource is used.</div>"
},
"url": "http://nictiz.nl/fhir/StructureDefinition/nl-core-SOAPReport.SOAPLine",
"name": "NlcoreSOAPReportSOAPLine",
"title": "nl core SOAPReport.SOAPLine",
"status": "draft",
"publisher": "Nictiz",
"contact": [
{
"name": "Nictiz",
"telecom": [
{
"system": "url",
"value": "https://www.nictiz.nl",
"use": "work"
}
]
}
],
"description": "A SOAP report is a textual report of a (partial) consult with relation to a single problem according to the SOAP structure. SOAP (acronym for subjective, objective, assessment, plan) is a method used by health professionals to structurally record information that comes up during contact between the patient and a health professionals in the patient's record. The following standardized format is used for reporting:\r\n\r\n* Subjective: the patient's complaint and request for help and the amnesic data\r\n* Objective: the findings from the physical and supplementary examination.\r\n* Assessment: the working hypothesis and the thinking process, for example a differential diagnosis of the healthcare professional.\r\n* Plan: the diagnostic plan or treatment plan and what has been discussed or agreed with the patient.\r\n\r\nThe SOAP report is mainly used in general practice care.\r\n\r\nNote: the zib doesn't state explicitly if zib SOAPReport pertains a consult or a partial consult, but it has become clear that the zib, and thus this profile, should be interpreted as a partial consult with relation to a single problem (see <https://bits.nictiz.nl/browse/ZIB-1474>). The text above has been adjusted according to this insight.",
"purpose": "A derived profile from [zib-SOAPReport.SOAPLine](http://nictiz.nl/fhir/StructureDefinition/zib-SOAPReport.SOAPLine) to provide a version better suited for implementation purposes. This profile augments the base profile with elements found in the various use cases that have adopted the zib.",
"copyright": "Copyright and related rights waived via CC0, https://creativecommons.org/publicdomain/zero/1.0/. This does not apply to information from third parties, for example a medical terminology system. The implementer alone is responsible for identifying and obtaining any necessary licenses or authorizations to utilize third party IP in connection with the specification or otherwise.",
"fhirVersion": "4.0.1",
"mapping": [
{
"identity": "zib-soapreport-v1.0-2020EN",
"uri": "https://zibs.nl/wiki/SOAPReport-v1.0(2020EN)",
"name": "zib SOAPReport-v1.0(2020EN)"
}
],
"kind": "resource",
"abstract": false,
"type": "Observation",
"baseDefinition": "http://nictiz.nl/fhir/StructureDefinition/zib-SOAPReport.SOAPLine",
"derivation": "constraint",
"differential": {
"element": [
{
"id": "Observation",
"path": "Observation",
"comment": "Zib SOAPReport is implemented using two profiles: this profile implements the SOAPLine concept of the zib, while <http://nictiz.nl/fhir/StructureDefinition/nl-core-SOAPReport> represents the SOAPReport concept of the zib.",
"alias": [
"nl-core-SOAPReport.SOAPLine"
]
},
{
"id": "Observation.subject",
"path": "Observation.subject",
"type": [
{
"code": "Reference",
"targetProfile": [
"http://hl7.org/fhir/StructureDefinition/Patient",
"http://hl7.org/fhir/StructureDefinition/Group",
"http://hl7.org/fhir/StructureDefinition/Device",
"http://hl7.org/fhir/StructureDefinition/Location",
"http://nictiz.nl/fhir/StructureDefinition/nl-core-Patient"
]
}
]
}
]
}
}
ZIB SoapLine:
{
"resourceType": "StructureDefinition",
"id": "zib-SOAPReport.SOAPLine",
"text": {
"status": "empty",
"div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">No narrative is provided for definitional resources. A human-readable rendering can be found in the implementation guide(s) where this resource is used.</div>"
},
"url": "http://nictiz.nl/fhir/StructureDefinition/zib-SOAPReport.SOAPLine",
"name": "ZibSOAPReportSOAPLine",
"title": "zib SOAPReport.SOAPLine",
"status": "draft",
"publisher": "Nictiz",
"contact": [
{
"name": "Nictiz",
"telecom": [
{
"system": "url",
"value": "https://www.nictiz.nl",
"use": "work"
}
]
}
],
"description": "A SOAP report is a textual report of a (partial) consult with relation to a single problem according to the SOAP structure. SOAP (acronym for subjective, objective, assessment, plan) is a method used by health professionals to structurally record information that comes up during contact between the patient and a health professionals in the patient's record. The following standardized format is used for reporting:\r\n\r\n* Subjective: the patient's complaint and request for help and the amnesic data\r\n* Objective: the findings from the physical and supplementary examination.\r\n* Assessment: the working hypothesis and the thinking process, for example a differential diagnosis of the healthcare professional.\r\n* Plan: the diagnostic plan or treatment plan and what has been discussed or agreed with the patient.\r\n\r\nThe SOAP report is mainly used in general practice care.\r\n\r\nNote: the zib doesn't state explicitly if zib SOAPReport pertains a consult or a partial consult, but it has become clear that the zib, and thus this profile, should be interpreted as a partial consult with relation to a single problem (see <https://bits.nictiz.nl/browse/ZIB-1474>). The text above has been adjusted according to this insight.",
"purpose": "This Observation resource represents the SOAPLine concept of the Dutch [zib ('Zorginformatiebouwsteen', i.e. Health and Care Information Model) SOAPReport v1.0 (2020)](https://zibs.nl/wiki/SOAPReport-v1.0(2020EN)).",
"copyright": "Copyright and related rights waived via CC0, https://creativecommons.org/publicdomain/zero/1.0/. This does not apply to information from third parties, for example a medical terminology system. The implementer alone is responsible for identifying and obtaining any necessary licenses or authorizations to utilize third party IP in connection with the specification or otherwise.",
"fhirVersion": "4.0.1",
"mapping": [
{
"identity": "zib-soapreport-v1.0-2020EN",
"uri": "https://zibs.nl/wiki/SOAPReport-v1.0(2020EN)",
"name": "zib SOAPReport-v1.0(2020EN)"
}
],
"kind": "resource",
"abstract": true,
"type": "Observation",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation",
"derivation": "constraint",
"differential": {
"element": [
{
"id": "Observation",
"path": "Observation",
"short": "SOAPLine",
"comment": "Zib SOAPReport is implemented using two profiles: this profile implements the SOAPLine concept of the zib, while <http://nictiz.nl/fhir/StructureDefinition/zib-SOAPReport> represents the SOAPReport concept of the zib.",
"alias": [
"SOEPRegel"
],
"constraint": [
{
"key": "zib-SOAPReport-1",
"severity": "error",
"human": "In a SOAP report an ICPC code may be assigned, but only to the S and A line.",
"expression": "extension('http://nictiz.nl/fhir/StructureDefinition/ext-SOAPReport.SOAPLineCode').exists() implies (code.coding.where(code = '255362007' and system = 'http://snomed.info/sct').exists() or code.coding.where(code = '129265001' and system = 'http://snomed.info/sct').exists())"
}
],
"mapping": [
{
"identity": "zib-soapreport-v1.0-2020EN",
"map": "NL-CM:13.6.4",
"comment": "SOAPLine"
}
]
},
{
"id": "Observation.extension:soapLineCode",
"path": "Observation.extension",
"sliceName": "soapLineCode",
"type": [
{
"code": "Extension",
"profile": [
"http://nictiz.nl/fhir/StructureDefinition/ext-SOAPReport.SOAPLineCode"
]
}
],
"condition": [
"zib-SOAPReport-1"
]
},
{
"id": "Observation.extension:soapLineCode.value[x]",
"path": "Observation.extension.value[x]",
"condition": [
"zib-SOAPReport-1"
]
},
{
"id": "Observation.status",
"path": "Observation.status",
"comment": "Unless explicitly recorded, a value of _final_ would be expected."
},
{
"id": "Observation.code",
"path": "Observation.code",
"short": "SOAPLineHeader",
"definition": "The name of the SOAP line as a coded description. In a SOAP report this can be one of the following: subjective, objective, assessment or plan.",
"alias": [
"SOEPRegelNaam"
],
"condition": [
"zib-SOAPReport-1"
],
"binding": {
"strength": "required",
"valueSet": "http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.13.6.2--20200901000000"
},
"mapping": [
{
"identity": "zib-soapreport-v1.0-2020EN",
"map": "NL-CM:13.6.6",
"comment": "SOAPLineHeader"
}
]
},
{
"id": "Observation.code.coding",
"path": "Observation.code.coding",
"condition": [
"zib-SOAPReport-1"
]
},
{
"id": "Observation.value[x]",
"path": "Observation.value[x]",
"slicing": {
"discriminator": [
{
"type": "type",
"path": "$this"
}
],
"rules": "open"
}
},
{
"id": "Observation.value[x]:valueString",
"path": "Observation.value[x]",
"sliceName": "valueString",
"short": "SOAPLineText",
"definition": "The actual content of the section as free formatted text.",
"alias": [
"SOEPRegelTekst"
],
"type": [
{
"code": "string"
}
],
"mapping": [
{
"identity": "zib-soapreport-v1.0-2020EN",
"map": "NL-CM:13.6.7",
"comment": "SOAPLineText"
}
]
}
]
}
}
SoapLineCode Extension:
{
"resourceType": "StructureDefinition",
"id": "ext-SOAPReport.SOAPLineCode",
"text": {
"status": "empty",
"div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">No narrative is provided for definitional resources. A human-readable rendering can be found in the implementation guide(s) where this resource is used.</div>"
},
"url": "http://nictiz.nl/fhir/StructureDefinition/ext-SOAPReport.SOAPLineCode",
"name": "ExtSOAPReportSOAPLineCode",
"title": "ext SOAPReport.SOAPLineCode",
"status": "draft",
"publisher": "Nictiz",
"contact": [
{
"name": "Nictiz",
"telecom": [
{
"system": "url",
"value": "https://www.nictiz.nl",
"use": "work"
}
]
}
],
"description": "An extension to provide the SOAPLine code. The extension can be seen as an addition to the SOAPLineHeader and SOAPLineText concept mapped to the code and text element.",
"purpose": "This extension represents the SOAPLineCode concept of the Dutch [zib ('Zorginformatiebouwsteen', i.e. Health and Care Information Model) SOAPReport v1.0 (2020)](https://zibs.nl/wiki/SOAPReport-v1.0(2020EN)).",
"copyright": "Copyright and related rights waived via CC0, https://creativecommons.org/publicdomain/zero/1.0/. This does not apply to information from third parties, for example a medical terminology system. The implementer alone is responsible for identifying and obtaining any necessary licenses or authorizations to utilize third party IP in connection with the specification or otherwise.",
"fhirVersion": "4.0.1",
"mapping": [
{
"identity": "zib-soapreport-v1.0-2020EN",
"uri": "https://zibs.nl/wiki/SOAPReport-v1.0(2020EN)",
"name": "zib SOAPReport-v1.0(2020EN)"
}
],
"kind": "complex-type",
"abstract": false,
"context": [
{
"type": "element",
"expression": "Observation"
}
],
"type": "Extension",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension",
"derivation": "constraint",
"differential": {
"element": [
{
"id": "Extension",
"path": "Extension",
"max": "1"
},
{
"id": "Extension.url",
"path": "Extension.url",
"fixedUri": "http://nictiz.nl/fhir/StructureDefinition/ext-SOAPReport.SOAPLineCode"
},
{
"id": "Extension.value[x]",
"path": "Extension.value[x]",
"short": "SOAPLineCode",
"definition": "Coded values can be added to a line that describe essential aspects of the line.\r\nIn a SOAP report an ICPC code may be assigned, but only to the S and A line.",
"alias": [
"SOEPRegelCode"
],
"type": [
{
"code": "CodeableConcept"
}
],
"binding": {
"strength": "required",
"valueSet": "http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.13.6.1--20200901000000"
},
"mapping": [
{
"identity": "zib-soapreport-v1.0-2020EN",
"map": "NL-CM:13.6.5",
"comment": "SOAPLineCode"
}
]
},
{
"id": "Extension.value[x].coding",
"path": "Extension.value[x].coding",
"binding": {
"strength": "required",
"valueSet": "http://decor.nictiz.nl/fhir/ValueSet/2.16.840.1.113883.2.4.3.11.60.40.2.13.6.1--20200901000000"
}
}
]
}
}
Describe the bug
During validation of a Resource on Create (ProfileValidationOnCreate = true), I get the following error:
Internal logic failure: StructureDefinition 'http://nictiz.nl/fhir/StructureDefinition/ext-SOAPReport.SOAPLineCode' has no snapshot component. (Parameter 'sd')
Which is true, but shouldn't profile snapshots be generated?
These are the profiles I'm trying to use:
SoapLine:
ZIB SoapLine:
SoapLineCode Extension:
FHIR Version?
R4
Data provider?
SQL Server
To Reproduce
Steps to reproduce the behavior:
Expected behavior
201 Created result.
Actual behavior
400 Bad Request:
The text was updated successfully, but these errors were encountered: