2016-11-14 14 views
1

私は、私が作成した次のプロファイルに対するリソースタイプ「基本」のインスタンスを検証しようとしている:https://simplifier.net/Crew/questionResponse私のfhirリソースがプロファイルに対して検証されないのはなぜですか?

私は私の地元のHAPIサーバーにプロファイルをアップロードし、私はそのリソースをアップロードしようそれは次のURLを使用して検証してきた:{{URL}} /ベーシック/ $検証プロファイル= {{URL}}/StructureDefinition/Stelarで/プロファイル/ 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> 

私はそれをうれしくアップロードしますが、番号の付いていないエラーコードが 'Unexpected'というメッセージとともに返されますリソースの検証中に失敗しました。なぜそれが失敗したのかを知る方法はわかりません。

どうすればよいですか?誰でも自分のフォームの問題点を見つけられますか?

+0

エクステンションのIDがちょっと変わっているようです。私は[fhirbase]/StructureDefinition/my-extensionのようなものを期待しています。この工事をした理由はありますか? –

+0

はい、私はfhirに類似の別のシステムからプロファイル/拡張機能を自動生成しています。そのシステムでは、プロファイル/拡張のソースは異なるオブジェクトタイプであるため、同じ名前が付けられている場合はパスの競合はありません。基本的に、プロファイルのソースは、拡張のソースとまったく同じ名前を持つことができます。私は本当になぜそれが問題を引き起こす必要があるか分かりませんが、もしそれらが事を定義するためにuriを使用しているのであれば、フラットな階層を使用するだけに限定されますか? – Andy

+0

必要に応じて階層を設定できますが、FHIR準拠IDの形式は常に[fhirbase]/[リソースタイプ]/[id]です。idはidデータ型です。だから、あなたがFHIRに準拠するためにできることは、 '/'の代わりに ' - 'を使うか、この "stelar/extension /"部分をリソースタイプの前に置くことです。 –

答えて

1

基本リソースには必須のコードフィールドがあります(definitionを参照)。あなたのリソースはこのフィールドを指定していません。 これがHapiが幸せではないのは確かですが、検証エラーです。

+0

私はそれを見逃してしまいましたが、それを追加しましたが、同じ問題がまだ発生しています。どのように失敗しているのかをより詳細に示すログがありますか?私の他の考えはおそらくプロファイル自体が間違っていますか?それはSimplifierで解析しますが、私はSimplifierがHAPIとは異なる検証プロトコルを使用していると思います。私が知っている限り、プロファイルはアップロード時に検証されないため、必要なときにのみ解析されると見なすことができます。 – Andy

+0

Fhirサーバーは、アップロード時に基本定義に対してリソースを検証する必要があります。これはちょうど基本的な種類のバリデーションになります。 IDの設定方法にHapiに問題があると思われます。 Fhirサーバは、[fhirbase]/[リソースタイプ]/IDを有効な技術的IDとして期待します。したがって、サーバーにprofile = {{URL}}/StructureDefinition/stelar/profile/questionResponseを検索するよう要求している場合、IDは '/'を持つことができないため、おそらくサーバーはそれを処理できません。 –

+0

私は{{URL}}/Basic/$ validate?profile = {{URL}}/StructureDefinition/419に変更しましたが、同じ問題がまだ発生しているようです。そのルートを辿ることに対する私の心配は、私はそれらのIDを保証することができないということです。なぜなら、それはサーバが定義するまでですから、異なるfhirサーバインスタンス間で移植可能なfhirバンドルを構築することはできません。 – Andy

関連する問題