2016-11-14 88 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

相关问题