2016-11-14 99 views
1

我想驗證我已經創建了針對以下配置的資源類型「基本」的一個實例:https://simplifier.net/Crew/questionResponse爲什麼我的fhir資源不能根據配置文件進行驗證?

我已經上傳了個人資料,我的本地服務器高致病性禽流感,我再嘗試上傳資源並有驗證它使用以下網址:{{URL}} /基本/ $驗證配置= {{URL}}/StructureDefinition /中柱/資料/ questionResponse

這是資源:

<Basic> 
    <meta> 
     <versionId value="1.0"/> 
     <lastUpdated value="2016-11-04T16:54:45Z"/> 
     <profile value="http://stelar.org/StructureDefinition/stelar/profile/questionResponse"/> 
    </meta> 
    <text> 
     <status value="generated"/> 
    </text> 
    <extension url="http://stelar.org/StructureDefinition/stelar/extension/subjectNo"> 
     <valueString value="ABCDE"/> 
    </extension> 
    <extension url="http://stelar.org/StructureDefinition/stelar/extension/followUp"> 
     <valueCoding value="FollowUp.1Y"/> 
    </extension> 
    <extension url="http://stelar.org/StructureDefinition/stelar/extension/methodOfFollowUp"> 
     <valueCoding value="FollowUpMethod.ClinicVisit"/> 
    </extension> 
    <extension url="http://stelar.org/StructureDefinition/stelar/extension/variableLabel"> 
     <valueString value="Has your child had bronchiolitis? At what age?"/> 
    </extension> 
    <extension url="http://stelar.org/StructureDefinition/stelar/extension/quName"> 
     <valueString value="Questionnaire 1"/> 
    </extension> 
    <extension url="http://stelar.org/StructureDefinition/stelar/extension/aIW"> 
     <valueInteger value="564"/> 
    </extension> 
    <extension url="http://stelar.org/StructureDefinition/stelar/extension/respondent"> 
     <valueCoding value="Person"/> 
    </extension> 
    <extension url="http://stelar.org/StructureDefinition/stelar/extension/dateID"> 
     <valueDate value="1989-06-02"/> 
    </extension> 
    <extension url="http://stelar.org/StructureDefinition/stelar/extension/quSubject"> 
     <valueCoding value="Person.StudySubject"/> 
    </extension> 
    <extension url="http://stelar.org/StructureDefinition/stelar/extension/dataSource"> 
     <valueCoding value="DataSource.Questionnaire"/> 
    </extension> 
    <extension url="http://stelar.org/StructureDefinition/stelar/extension/dataResponse"> 
     <valueDouble value="6.7"/> 
    </extension> 
</Basic> 

當我上傳到開心我得到一個未編號的錯誤代碼與消息'意外返回驗證資源時失敗「。我不確定如何找出它爲什麼失敗。

我該如何解決這個問題?任何人都可以發現我的表單有什麼問題嗎?

+0

我認爲你的擴展的ID看起來有點奇怪。我期望像[fhirbase]/StructureDefinition/my-extension這樣的東西,沒有這個子部分。你有這個建築的原因嗎? –

+0

是的,我從另一個類似系統自動生成配置文件/擴展到fhir。在該系統中,配置文件/擴展名的來源是不同的對象類型,因此當它們被命名爲相同的事物時不會有路徑衝突。基本上,配置文件的來源可以具有與擴展名的來源完全相同的名稱。我不明白爲什麼這會導致問題,如果他們使用uri來定義事情,爲什麼你只能使用平面層次? – Andy

+0

您可以根據需要設置您的層次結構,但符合FHIR標識的ID格式始終爲[fhirbase]/[resource type]/[id],其中id爲id數據類型。所以你可以做成符合FHIR標準的是使用' - '而不是'/',或者在資源類型之前放置這個「stelar/extension /」部分。 –

回答

1

基本資源具有強制性的代碼字段,請參閱definition。您的資源不指定此字段。 不知道這是爲什麼Hapi不開心,但這是一個驗證錯誤。

+0

我確實錯過了,只是添加了它,但仍然遇到同樣的問題。有沒有一個日誌,我可能會找到一個更詳細的如何失敗的打印?我的另一個想法可能是配置文件本身不正確?它在Simplifier中解析,但我認爲Simplifier對HAPI使用不同的驗證協議。據我所知,配置文件未在上傳中驗證,所以我只能假設他們在需要時被解析。 – Andy

+0

Fhir服務器應根據上載的基本定義驗證資源。這可能只是一種基本的驗證。 我確實認爲Hapi可能在設置ID的方式上存在問題。 Fhir服務器期望[fhirbase]/[資源類型]/ID作爲有效的技術ID。因此,如果您要求服務器查找profile = {{URL}}/StructureDefinition/stelar/profile/questionResponse,則服務器可能無法處理它,因爲ID中不能包含'/'。 –

+0

我剛剛將其更改爲{{URL}}/Basic/$ validate?profile = {{URL}}/StructureDefinition/419,但似乎仍然出現同樣的問題。我擔心這條路線是因爲我無法保證這些id,因爲它是由服務器來定義的,所以我不能構建可在不同的fhir服務器實例之間移植的fhir包。 – Andy

相關問題