如何使用扩展来扩展 FHIR 中的原始数据类型?

Bas*_*htl 3 hl7 hl7-fhir

我正在尝试整合FHIR KBV_PR_Base_Observation_Heart_Rate个人资料。在FHIR资源的编码段中,配置文件规定显示段应提供德语区的扩展。

https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Observation_Heart_Rate

我怎样才能满足个人资料的要求?我不明白我现在应该如何包含扩展名?

我尝试了以下操作,但验证器似乎不喜欢它(这也是合乎逻辑的,因为不再有原始数据类型):

    code: {
        coding: [{
            system: 'http://loinc.org',
            version: '2.69',
            code: '8867-4',
            display: {
                value: 'Heart rate',
                extension: {
                    url: 'https://fhir.kbv.de/StructureDefinition/KBV_EX_Base_Terminology_German',
                    anzeigenameCodeLoinc: {
                        extension: {
                            content: {
                                url: 'content',
                                valueString: 'Herzfrequenz',
                            },
                        },
                    },
                },
            },
        }, {
            system: 'http://snomed.info/sct',
            version: '1.1.3',
            code: '364075005',
            display: {
                value: 'Heart rate (observable entity)',
                extension: {
                    url: 'https://fhir.kbv.de/StructureDefinition/KBV_EX_Base_Terminology_German',
                    anzeigenameCodeLoinc: {
                        extension: {
                            content: {
                                url: 'content',
                                valueString: 'Herzfrequenz',
                            },
                        },
                    },
                },
            },
        }],
        text: 'Heart rate',
   },
Run Code Online (Sandbox Code Playgroud)

验证器的输出:

  Error @ Observation.code.coding[0].display (line 24, col25) : This property must be a simple value, not an object 
  Error @ Observation.code.coding[1].display (line 43, col25) : This property must be a simple value, not an object 
Run Code Online (Sandbox Code Playgroud)

没有扩展名:

    code: {
        coding: [{
            system: 'http://loinc.org',
            version: '2.69',
            code: '8867-4',
            display: 'Heart rate'
        }, { 
                ...
        }],
        text: 'Heart rate',
   },
Run Code Online (Sandbox Code Playgroud)

验证器输出:

  Error @ Observation.code.coding[0].display (line 28, col8) : Observation.code.coding:loinc.display.extension:anzeigenameCodeLoinc: at least required = 1, but only found 0 
  Error @ Observation.code.coding[1].display (line 34, col8) : Observation.code.coding:codeSnomed.display.extension:anzeigenameCodeSnomed: at least required = 1, but only found 0 
Run Code Online (Sandbox Code Playgroud)

Nik*_*sen 5

_JSON 原语在属性名称之前使用https://hl7.org/fhir/json.html#primitive进行扩展。这是一个独立于显示值本身的字段。所以你的观察结果会是这样的

{
    "code": {
        "coding": [
            {
                "system": "http://loinc.org",
                "version": "2.69",
                "code": "8867-4",
                "display": "Heart rate",
                "_display": {
                    "extension": [{
                        "url": "https://fhir.kbv.de/StructureDefinition/KBV_EX_Base_Terminology_German",
                        "extension": [{
                            "url": "content",
                            "valueString": "Herzfrequenz"
                        }]
                    }]
                }
            },
            {
                "system": "http://snomed.info/sct",
                "version": "1.1.3",
                "code": "364075005",
                "display": "Heart rate (observable entity)",
                "_display": {
                    "extension": [{
                        "url": "https://fhir.kbv.de/StructureDefinition/KBV_EX_Base_Terminology_German",
                        "extension": [{
                            "url": "content",
                            "valueString": "Herzfrequenz"
                        }]
                    }]
                }
            }
        ],
        "text": "Heart rate"
    }
}
Run Code Online (Sandbox Code Playgroud)