2017-04-10 55 views
0

我試圖在我的Swagger文件的請求部分中創建一個示例。在我的請求下面的(非常簡化的)片段中,描述了患者和臨牀醫生之間的關係。這兩個實體都使用相同的Identifier模型。在swagger中的同一模型的不同示例

但是,我似乎無法解決如何傳遞示例數據,這些數據在patientIdentifierclinicianIdentifier之間會有所不同,同時仍然使用常見的Identifier模型。我發佈的片段在語法上是正確的,但顯然在兩個標識符的示例數據中是相同的,這遠非理想。

我知道我可以從Identifer模型提取字段並將它們複製到patientIdentifierclinicianIdentfier沒有在這種情況下太多功夫,但我想知道是否有一個更優雅的方式來實現這一目標。

Relationship: 
    properties: 
    patientIdentifier: 
     $ref: '#/definitions/Identifier' 
    clinicianIdentifier: 
     $ref: '#/definitions/Identifier' 

Identifier: 
    type: object 
    properties: 
    id: 
     type: string 
     example: "Jane Doe" 
    group: 
     type: string 
     example: "WD7" 

如果有人可以用正確的方向指向我的文檔或示例中的某些東西,這將非常感激。

謝謝!

+1

不知道爲什麼我被downvote擊中 - 很樂意改變/添加/刪除的東西,如果它有幫助 - 但我實際上並不知道我在這裏做錯了什麼。 – xyzen

回答

2

您需要爲Relationship提供架構級示例。架構級示例優先於屬性級示例。

Relationship: 
    type: object 
    properties: 
    patientIdentifier: 
     $ref: '#/definitions/Identifier' 
    clinicianIdentifier: 
     $ref: '#/definitions/Identifier' 
    example: 
    patientIdentifier: 
     id: Jane Doe 
     group: WD7 
    clinicianIdentifier: 
     id: Bob Smith 
     group: ABCDE 

注意,對於patientIdentifierclinicianIdentifier屬性級別的例子是行不通的,因爲使用$ref時,一個$ref的兄弟姐妹都被忽略。

# This won't work - examples will be ignored 

Relationship: 
    type: object 
    properties: 
    patientIdentifier: 

     $ref: '#/definitions/Identifier' 
     example: 
     id: Jane Doe 
     group: WD7 

    clinicianIdentifier: 

     $ref: '#/definitions/Identifier' 
     example: 
     id: Bob Smith 
     group: ABCDE 
+0

啊哈!沒意識到你可以做到這一點。這是我所尋找的。謝謝 :) – xyzen

相關問題