2017-01-30 20 views
1

Как добавить расширение с несколькими полями? Например, если у меня есть расширение, связанное с посещением мотивов, которые структурированы, как это в моем приложении:Расширение комплекса FHIR

"visit_motive": 
    { 
      "id": "1", 
      "label": "Visit motive name", 
      "color": "#000000", 
      "duration": 5 
    } 

У меня есть что-то вроде этого на данный момент:

"extension": [ 
    { 
     "url": "https://api.test.com/fhir/StructureDefinition/schedule-visit_motives", 
     "valueIdentifier": "visit_motive1_id", 
     "valueString" : "visit motive name", 
     "valueString" : "#000", 
     "valueInteger" : 5, 
    }, 
    { 
     "url": "https://api.test.com/fhir/StructureDefinition/schedule-visit_motives", 
     "valueIdentifier": "visit_motive2_id", 
     "valueString" : "visit motive name 2", 
     "valueString" : "#111", 
     "valueInteger" : 10, 
    } 
] 

Но я уверен, это неверно, так как я не могу назвать поля, так как каждый раз нужно точное значение [x].

Как я могу это сделать?

ответ

2

Вы сделали бы это со сложным расширением, которое в основном является расширением, содержащим расширения. Вы можете увидеть more information about extensions в спецификации. Прокрутите вниз немного для сложного. Или посмотрите пример структуры сложного расширения here.

Использование вашего расширения будет выглядеть примерно так:

"extension" : [{ 
    "url" : "https://api.test.com/fhir/StructureDefinition/schedule-visit_motives", 
    "extension" : [{ 
     "url" : "id", 
     "valueIdentifier": "visit_motive1_id" 
    }, { 
     "url" : "label", 
     "valueString" : "visit motive name" 
    }, { 
     "url" : "color", 
     "valueString" : "#000" 
    }, { 
     "url" : "duration", 
     "valueInteger" : 5, 
    }] 
}]