メインコンテンツまでスキップ
Version: v2.2.0

Terminology関連カスタムオペレーション

機能概要

  • CSV形式によるCodeSyetemのアップロード機能、及びConceptMapのインポート/エクスポート機能をサポートします。

サポートするオペレーションは以下の通りです。

$upload-code-system

  • CSV形式ファイル、ZIPファイルをアップロードし、CodeSystemリソースとして取込みます。
    ※ ZIPファイルの中身はconcepts.csv と hierarchy.csv(オプション)

リクエスト形式

POST [base]/CodeSystem/$upload-code-system?[parameters]
  • CSVファイルの場合
    • Content-Type:text/csv; charset=CSVファイルの文字コード
  • ZIPファイルの場合
    • Content-Type:application/zip; charset=CSVファイルの文字コード

入力パラメータ

#パラメータ名多重度説明備考
1system1..1コードシステムのURL
2version0..1コードシステムのバージョン指定しない場合、URLが一致しバージョンが存在しないリソースが対象
3kind1..1アップロードするファイルの種類0:CSVファイル(concepts.csv)
1:ZIPファイル(concepts.csv、hierarchy.csv)
2:ICD10対応標準病名マスター(MEDIS)
3:医薬品HOTコードマスター(MEDIS)
  ※HOT13のみ
4category0..1アップロードするファイルの分類ICD10対応標準病名マスターの場合必須
0:病名基本テーブル
1:修飾語テーブル

リクエストボディ

  • CSVファイルの場合
    • テキストデータとして指定
  • ZIPファイルの場合
    • バイナリデータとして指定

※ 必須入力パラメータ(system、kind)、またはリクエストボディが指定されていない場合はエラーが返却されます。

CSVフォーマット

concepts.csv(コード一覧を記載したCSV)
  • CODE:概念を識別するコード
  • DISPLAY:ユーザーに表示するテキスト

#で始まるコメント行および空白行は無視されます。

hierarchy.csv(コードの親子関係を記載したCSV)
  • PARENT:親のコンセプトコード(concept.code)
  • CHILD:子のコンセプトコード(concept.code)

#で始まるコメント行および空白行は無視されます。

ICD10対応標準病名マスター
医薬品HOTコードマスター

CSVファイルの場合

リクエスト
POST [base]/CodeSystem/$upload-code-system?system=http://hl7.org/fhir/CodeSystem/example&kind=0

リクエストボディ

CODE,DISPLAY
F,完治
N,不変
W,悪化
レスポンス
{
"resourceType": "CodeSystem",
"id": "4",
"meta": {
"versionId": "4",
"lastUpdated": "2021-10-27T13:35:46.351+09:00"
},
"url": "http://hl7.org/fhir/CodeSystem/example",
"status": "active",
"content": "complete",
"concept": [
{
"code": "F",
"display": "完治"
},
{
"code": "N",
"display": "不変"
},
{
"code": "W",
"display": "悪化"
}
]
}

ZIPファイルの場合

リクエスト
POST [base]/CodeSystem/$upload-code-system?system=http://hl7.org/fhir/CodeSystem/example&kind=1

リクエストボディ

concepts.csv

CODE,DISPLAY
CHEM,化学
HB,ヘモグロビン
MICRO,微生物学
C&S,培養と感受性
C,培養

hierarchy.csv

PARENT,CHILD
CHEM,HB
MICRO,C&S
C&S,C
レスポンス
{
"resourceType": "CodeSystem",
"id": "14",
"meta": {
"versionId": "2",
"lastUpdated": "2021-10-29T16:22:17.082+09:00"
},
"url": "http://hl7.org/fhir/CodeSystem/example",
"status": "active",
"content": "complete",
"concept": [
{
"code": "CHEM",
"display": "化学",
"concept": [
{
"code": "HB",
"display": "ヘモグロビン"
}
]
},
{
"code": "MICRO",
"display": "微生物学",
"concept": [
{
"code": "C&S",
"display": "培養と感受性",
"concept": [
{
"code": "C",
"display": "培養"
}
]
}
]
}
]
}

$upload-delta-add

  • CSVファイルまたはZIPファイルによる、CodeSystemリソースの差分の追加処理を実行します。
    ※ ZIPファイルの中身はconcepts.csv と hierarchy.csv(オプション)
POST [base]/CodeSystem/$upload-delta-add?[parameters]
  • CSVファイルの場合
    • Content-Type:text/csv; charset=CSVファイルの文字コード
  • ZIPファイルの場合
    • Content-Type:application/zip; charset=CSVファイルの文字コード

入力パラメータ

#パラメータ名多重度説明備考
1system1..1コードシステムのURL
2version0..1コードシステムのバージョン指定しない場合、URLが一致しバージョンが存在しないリソースが対象
3kind1..1アップロードするファイルの種類0:CSVファイル(concepts.csv)
1:ZIPファイル(concepts.csv、hierarchy.csv)

リクエストボディ

  • CSVファイルの場合
    • テキストデータとして指定
  • ZIPファイルの場合
    • バイナリデータとして指定

※ 必須入力パラメータ(system、kind)、またはリクエストボディが指定されていない場合はエラーが返却されます。

CSVフォーマット

concepts.csv(コード一覧を記載したCSV)
  • CODE:概念を識別するコード
  • DISPLAY:ユーザーに表示するテキスト

#で始まるコメント行および空白行は無視されます。

hierarchy.csv(コードの親子関係を記載したCSV)
  • PARENT:親のコンセプトコード(concept.code)
  • CHILD:子のコンセプトコード(concept.code)

#で始まるコメント行および空白行は無視されます。

CSVファイルの場合

リクエスト
POST [base]/CodeSystem/$upload-delta-add?system=http://hl7.org/fhir/CodeSystem/example&kind=0

リクエストボディ

concepts.csv

CODE,DISPLAY
R,軽快
S,後遺症残
レスポンス
{
"resourceType": "CodeSystem",
"id": "4",
"meta": {
"versionId": "5",
"lastUpdated": "2021-10-27T13:37:43.015+09:00"
},
"url": "http://hl7.org/fhir/CodeSystem/example",
"status": "active",
"content": "complete",
"concept": [
{
"code": "F",
"display": "完治"
},
{
"code": "N",
"display": "不変"
},
{
"code": "W",
"display": "悪化"
},
{
"code": "R",
"display": "軽快"
},
{
"code": "S",
"display": "後遺症残"
}
]
}

ZIPファイルの場合

リクエスト
POST [base]/CodeSystem/$upload-delta-add?system=http://hl7.org/fhir/CodeSystem/example&kind=1

リクエストボディ

concepts.csv

CODE,DISPLAY
NEUT,好中球
S,感受性

hierarchy.csv

PARENT,CHILD
CHEM,NEUT
C&S,S
レスポンス
{
"resourceType": "CodeSystem",
"id": "14",
"meta": {
"versionId": "3",
"lastUpdated": "2021-10-29T16:24:50.012+09:00"
},
"url": "http://hl7.org/fhir/CodeSystem/example",
"status": "active",
"content": "complete",
"concept": [
{
"code": "CHEM",
"display": "化学",
"concept": [
{
"code": "HB",
"display": "ヘモグロビン"
},
{
"code": "NEUT",
"display": "好中球"
}
]
},
{
"code": "MICRO",
"display": "微生物学",
"concept": [
{
"code": "C&S",
"display": "培養と感受性",
"concept": [
{
"code": "C",
"display": "培養"
}
]
}
]
},
{
"code": "C&S",
"concept": [
{
"code": "S",
"display": "感受性"
}
]
}
]
}

$upload-delta-remove

  • CSVファイルまたはZIPファイルによる、CodeSystemリソースの差分の削除処理を実行します。
    ※ZIPファイルの中身はconcepts.csv と hierarchy.csv(オプション)
POST [base]/CodeSystem/$upload-delta-remove?[parameters]
  • CSVファイルの場合
    • Content-Type:text/csv; charset=CSVファイルの文字コード
  • ZIPファイルの場合
    • Content-Type:application/zip; charset=CSVファイルの文字コード

入力パラメータ

#パラメータ名多重度説明備考
1system1..1コードシステムのURL
2version0..1コードシステムのバージョン指定しない場合、URLが一致しバージョンが存在しないリソースが対象
3kind1..1アップロードするファイルの種類0:CSVファイル(concepts.csv)
1:ZIPファイル(concepts.csv、hierarchy.csv)

リクエストボディ

  • CSVファイルの場合
    • テキストデータとして指定
  • ZIPファイルの場合
    • バイナリデータとして指定

※ 必須入力パラメータ(system、kind)、またはリクエストボディが指定されていない場合はエラーが返却されます。

CSVフォーマット

concepts.csv(コード一覧を記載したCSV)
  • CODE:概念を識別するコード
  • DISPLAY:ユーザーに表示するテキスト

#で始まるコメント行および空白行は無視されます。

hierarchy.csv(コードの親子関係を記載したCSV)
  • PARENT:親のコンセプトコード(concept.code)
  • CHILD:子のコンセプトコード(concept.code)

#で始まるコメント行および空白行は無視されます。

CSVファイルの場合

リクエスト
POST [base]/CodeSystem/$upload-delta-remove?system=http://hl7.org/fhir/CodeSystem/example&kind=0

リクエストボディ

concepts.csv

CODE,DISPLAY
N,不変
R,軽快
レスポンス
{
"resourceType": "CodeSystem",
"id": "4",
"meta": {
"versionId": "6",
"lastUpdated": "2021-10-27T13:39:10.206+09:00"
},
"url": "http://hl7.org/fhir/CodeSystem/example",
"status": "active",
"content": "complete",
"concept": [
{
"code": "F",
"display": "完治"
},
{
"code": "W",
"display": "悪化"
},
{
"code": "S",
"display": "後遺症残"
}
]
}

ZIPファイルの場合

リクエスト
POST [base]/CodeSystem/$upload-delta-remove?system=http://hl7.org/fhir/CodeSystem/example&kind=1

リクエストボディ

concepts.csv

CODE,DISPLAY
NEUT,好中球
S,感受性

hierarchy.csv

PARENT,CHILD
CHEM,NEUT
C&S,S
レスポンス
{
"resourceType": "CodeSystem",
"id": "14",
"meta": {
"versionId": "4",
"lastUpdated": "2021-10-29T16:26:29.900+09:00"
},
"url": "http://hl7.org/fhir/CodeSystem/example",
"status": "active",
"content": "complete",
"concept": [
{
"code": "CHEM",
"display": "化学",
"concept": [
{
"code": "HB",
"display": "ヘモグロビン"
}
]
},
{
"code": "MICRO",
"display": "微生物学",
"concept": [
{
"code": "C&S",
"display": "培養と感受性",
"concept": [
{
"code": "C",
"display": "培養"
}
]
}
]
},
{
"code": "C&S"
}
]
}

$import-concept-map

  • CSVファイルによる、ConceptMapリソースのインポート処理を実行します。
POST [base]/ConceptMap/$import-concept-map?[parameters]
  • CSVファイル
    • Content-Type:text/csv; charset=CSVファイルの文字コード

入力パラメータ

#パラメータ名多重度説明備考
1url1..1ConceptMapリソースのURL
(ConceptMap.url)
2version0..1ConceptMapリソースのバージョン
(ConceptMap.version)
指定しない場合、URLが一致しバージョンが存在しないリソースが対象
3source0..1マップされている概念を含むソースバリューセット
(ConceptMap.sourceUri)
4target0..1マッピングのコンテキストを提供するターゲットバリューセット
(ConceptMap.targetUri)

リクエストボディ

  • テキストデータとして指定

※ 必須入力パラメータ(url)、またはリクエストボディが指定されていない場合はエラーが返却されます。

CSVフォーマット

  • GROUP_SOURCE:変換元のコードシステム
  • GROUP_SOURCE_VERSION:変換元のコードシステムのバージョン
  • GROUP_TARGET:変換先のコードシステム
  • GROUP_TARGET_VERSION:変換先のコードシステムのバージョン
  • ELEMENT_CODE:変換元のコード
  • ELEMENT_DISPLAY:変換元の表示名
  • TARGET_CODE:変換先のコード
  • TARGET_DISPLAY:変換先の表示名
  • EQUIVALENCE:変換元と変換先のコードシステムの同等性
  • COMMENT:マッピングの説明
注意

$import-concept-map オペレーションでは、シングル/ダブルクォーテーションで囲んだ場合でも半角カンマ , はエスケープされず、区切り文字として認識されます(エスケープ機能を実装予定)。

リクエスト

POST [base]/ConceptMap/$import-concept-map?url=http://hl7.org/fhir/ConceptMap/101

リクエストボディ

conceptMap.csv

GROUP_SOURCEGROUP_SOURCE_VERSIONGROUP_TARGETGROUP_TARGET_VERSIONELEMENT_CODEELEMENT_DISPLAYTARGET_CODETARGET_DISPLAYEQUIVALENCECOMMENT
http://hl7.org/fhir/address-use4.0.1http://terminology.hl7.org/CodeSystem/v3-AddressUse2.0.0homeHomeHhome addressequivalent
http://hl7.org/fhir/address-use4.0.1http://terminology.hl7.org/CodeSystem/v3-AddressUse2.0.0workWorkWPwork placeequivalent
http://hl7.org/fhir/address-use4.0.1http://terminology.hl7.org/CodeSystem/v3-AddressUse2.0.0oldOld / IncorrectBADbad addressdisjointconcept-map
Comment

レスポンス

{
"resourceType": "ConceptMap",
"id": "13",
"meta": {
"versionId": "1",
"lastUpdated": "2021-10-29T14:54:26.507+09:00"
},
"url": "http://hl7.org/fhir/ConceptMap/101",
"status": "active",
"group": [
{
"source": "http://hl7.org/fhir/address-use",
"sourceVersion": "4.0.1",
"target": "http://terminology.hl7.org/CodeSystem/v3-AddressUse",
"targetVersion": "2.0.0",
"element": [
{
"code": "home",
"display": "Home",
"target": [
{
"code": "H",
"display": "home address",
"equivalence": "equivalent"
}
]
},
{
"code": "work",
"display": "Work",
"target": [
{
"code": "WP",
"display": "work place",
"equivalence": "equivalent"
}
]
},
{
"code": "old",
"display": "Old / Incorrect",
"target": [
{
"code": "BAD",
"display": "bad address",
"equivalence": "disjoint",
"comment": "concept-mapComment"
}
]
}
]
}
]
}

$export-concept-map

  • ConceptMapリソースをCSV形式に変換し、CSV形式またはBinaryリソース形式でエクスポート処理を実行します。
GET [base]/ConceptMap/$export-concept-map?[parameters]
  • CSV形式
    • Accept:text/csv
  • Binaryリソース形式
    • Accept:application/fhir+json

入力パラメータ

#パラメータ名多重度説明備考
1url1..1ConceptMapリソースのURL
(ConceptMap.url)
2version0..1ConceptMapリソースのバージョン
(ConceptMap.version)
指定しない場合、URLが一致しバージョンが存在しないリソースが対象

※ 必須入力パラメータ(url)が指定されていない場合はエラーが返却されます。

リクエスト

GET [base]/ConceptMap/$export-concept-map?url=http://hl7.org/fhir/ConceptMap/101

レスポンス

CSV形式
GROUP_SOURCE,GROUP_SOURCE_VERSION,GROUP_TARGET,GROUP_TARGET_VERSION,ELEMENT_CODE,ELEMENT_DISPLAY,TARGET_CODE,TARGET_DISPLAY,EQUIVALENCE,COMMENT
http://hl7.org/fhir/address-use,4.0.1,http://terminology.hl7.org/CodeSystem/v3-AddressUse,2.0.0,home,Home,H,home address,equivalent,
http://hl7.org/fhir/address-use,4.0.1,http://terminology.hl7.org/CodeSystem/v3-AddressUse,2.0.0,work,Work,WP,work place,equivalent,
http://hl7.org/fhir/address-use,4.0.1,http://terminology.hl7.org/CodeSystem/v3-AddressUse,2.0.0,old,Old / Incorrect,BAD,bad address,disjoint,concept-mapComment
Binaryリソース形式
{
"resourceType": "Binary",
"id": "26c1ec84-7add-4617-947f-9abab237c93b",
"contentType": "text/csv",
"data": "R1JPVVBfU09VUkNFLEd[etc]"
}