Напишите правильный JSON о PlanDefinition и ActivityDefinition на FHIR
Я хочу написать JSON для создания PlanDefinition
ресурс с некоторыми ActivityDefinition
ресурсы внутри него, чтобы эти ресурсы сохранялись на сервере FHIR r4.
Мой сервер песочницы - Hapi FHIR
Два вопроса:
Первый: Как мне это написать
Второй: когда я напишу правильный JSON, результатом будет создание одного PlanDefinition
ресурс и некоторые ActivityDefinition
ресурсов, либо будет создана только одна PlanDefinition
ресурс с этой информацией внутри?
Это мой JSON для создания простого PlanDefinition
, но я не знаю, как добавить ActivityDefinition
внутри него
{
"resourceType": "PlanDefinition",
"id": "999999",
"meta": {
"versionId": "1",
"lastUpdated": "2020-04-16T11:10:45.868+00:00",
"source": "#YS2h8QIqvGKHDy4x"
},
"url": "www.myserver.it",
"identifier": [ {
"system": "www.myserver.it",
"value": "jtr-pd1"
} ],
"version": "versione 1",
"status": "active",
"action": [ {
"title": "A",
"definitionCanonical": "#Process_Alex1"
}, {
"title": "B",
"definitionCanonical": "#Process_Alex2"
}, {
"title": "C",
"definitionCanonical": "ActivityDefinition"
} ]
}
1 ответ
Обычно в FHIR мы не храним ресурсы друг в друге. Ссылки вместо этого указывают на другие независимо поддерживаемые экземпляры ресурсов. Например, несколько PlanDefinitions могут указывать на одно и то же ActivityDefinition, потому что это одно действие является "шагом" в нескольких наборах протоколов / порядков.
Если у вас есть ситуация, когда определение действия привязано к одному PlanDefinition и не может существовать независимо от этого PlanDefinition (например, если PlanDefinition был удален, ActivityDefinition тоже будет работать; никакое другое PlanDefinition не может указывать на Activity, любое обновление для действие будет считаться обновлением плана и т. д.), вы можете отправить ActivityDefinition как "содержащийся" ресурс. Ваш экземпляр будет выглядеть так:
{
"resourceType": "PlanDefinition",
"id": "999999",
"meta": {
"versionId": "1",
"lastUpdated": "2020-04-16T11:10:45.868+00:00",
"source": "#YS2h8QIqvGKHDy4x"
},
"contained": [ {
"resourceType": "ActivityDefinition",
"id": "Process_Alex1",
...
},
{
"resourceType": "ActivityDefinition",
"id": "Process_Alex2",
...
} ],
{
"url": "www.myserver.it",
"identifier": [ {
"system": "www.myserver.it",
"value": "jtr-pd1"
} ],
"version": "versione 1",
"status": "active",
"action": [ {
"title": "A",
"definitionCanonical": "#Process_Alex1"
}, {
"title": "B",
"definitionCanonical": "#Process_Alex2"
}, {
"title": "C",
"definitionCanonical": "http://somewhere.org/ActivityDefinition/foo"
} ]
}