1. プリミティブ型
プリミティブ型は、FHIR における単純な「アトミック」値です。
| 種類 | 説明 | たとえば |
|---|---|---|
| ブール値 | 真/偽 | 本当の |
| 整数 | 32ビット整数 | 42 |
| 整数64 | 64 ビット整数 (新しい R5) | 9223372036854775807 |
| 文字列.文字列 | Unicode 文字列 (≤ 1MB) | 「グエン・ヴァン・A」 |
| 10進数 | 実数(任意精度) | 3.14159 |
| ウリ | URI (RFC 3986) | 」http://loinc.org」 |
| URL | URL | 」https://fhir.example.com」 |
| 正規の | 適合リソースへの URL | 」http://hl7.org/fhir/StructureDefinition/Patient」 |
| uuid | UUID (RFC 4122) | 「urn:uuid:c757873d-ec9a-4326-a141-556f43239520」 |
| ID | リソース ID (1 ~ 64 文字、[A-Za-z0-9\-.]) | 「患者-001」 |
| 日付。日付 | 日付 (YYYY、YYYY-MM、YYYY-MM-DD) | 「2025-01-15」 |
| 日付時刻 | タイムゾーン付きの日付と時刻 | 「2025-01-15T10:30:00+07:00」 |
| インスタント。インスタント | 正確な時刻 (xs:dateTime) | 「2025-01-15T10:30:00.000Z」 |
| 時間。時間 | 時間帯 | 「10時30分00秒」 |
| コード | ValueSet からの値 | 「男性」 |
| オイド | OID (ISO) | 「urn:oid:2.16.840.1.113883.6.1」 |
| 値下げ | マークダウンテキスト | 「**太字**と*斜体*」 |
| Base64バイナリ | Base64エンコード | バイナリデータ |
| 正の整数 | 整数 > 0 | 1 |
| unsignedInt | 整数 ≥ 0 | 0 |
プリミティブの拡張機能
プリミティブでも拡張子を付けることができます (アンダースコア規則を使用)。
{
"birthDate": "1990-05-15",
"_birthDate": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/patient-birthTime",
"valueDateTime": "1990-05-15T14:30:00+07:00"
}
]
}
}
2. 複合型 — 汎用
識別子
{
"use": "official",
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "NI",
"display": "National unique individual identifier"
}
],
"text": "CCCD"
},
"system": "http://cccd.gov.vn",
"value": "012345678901",
"period": {
"start": "2021-01-01",
"end": "2036-01-01"
},
"assigner": {
"display": "Bộ Công an"
}
}
人間の名前
{
"use": "official",
"text": "Nguyễn Văn A",
"family": "Nguyễn",
"given": ["Văn", "A"],
"prefix": ["BS."],
"suffix": ["ThS."],
"period": {
"start": "1990-05-15"
}
}
住所
{
"use": "home",
"type": "physical",
"text": "123 Đường Lê Lợi, Phường Bến Nghé, Quận 1, TP.HCM",
"line": ["123 Đường Lê Lợi"],
"city": "Hồ Chí Minh",
"district": "Quận 1",
"state": "TP.HCM",
"postalCode": "700000",
"country": "VN"
}
連絡先
[
{
"system": "phone",
"value": "+84901234567",
"use": "mobile",
"rank": 1
},
{
"system": "email",
"value": "[email protected]",
"use": "home"
}
]
コーディングとコーディング可能なコンセプト
// Coding — một mã duy nhất
{
"system": "http://loinc.org",
"version": "2.77",
"code": "8480-6",
"display": "Systolic blood pressure"
}
// CodeableConcept — nhiều Codings + text
{
"coding": [
{
"system": "http://hl7.org/fhir/sid/icd-10",
"code": "I10",
"display": "Essential (primary) hypertension"
},
{
"system": "http://snomed.info/sct",
"code": "38341003",
"display": "Hypertensive disorder"
}
],
"text": "Tăng huyết áp nguyên phát"
}
コード可能なコンセプト 異なるコードシステムで同じ概念を表現できるようになり、相互運用性がサポートされます。
数量
{
"value": 145,
"comparator": ">=",
"unit": "mmHg",
"system": "http://unitsofmeasure.org",
"code": "mm[Hg]"
}
期間とタイミング
// Period
{
"start": "2025-01-15T08:00:00+07:00",
"end": "2025-01-15T08:45:00+07:00"
}
// Timing (cho medication dosage)
{
"repeat": {
"frequency": 2,
"period": 1,
"periodUnit": "d",
"when": ["ACM", "ACV"],
"boundsPeriod": {
"start": "2025-01-15",
"end": "2025-02-15"
}
},
"code": {
"text": "Ngày 2 lần, sáng và tối sau ăn"
}
}
参考資料
{
"reference": "Patient/patient-001",
"type": "Patient",
"identifier": {
"system": "http://hospital.vn/mrn",
"value": "MRN12345"
},
"display": "Nguyễn Văn A"
}
参照には以下が含まれる可能性があります 参考。参照 (リテラル URL)、 識別子 (論理参照)、またはその両方。
3. 物語 (人間が読める)
{
"text": {
"status": "generated",
"div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p>Bệnh nhân: Nguyễn Văn A, Nam, sinh ngày 15/05/1990</p></div>"
}
}
| ステータス | 説明 |
|---|---|
| 生成された | 構造化データから自動作成 |
| 拡張子 | 構造化データにない拡張機能からの情報があります |
| 追加。追加の | 構造化データに含まれていない追加情報がある |
| 空の | テキストなし (空の物語) |
4.バックボーン要素
BackboneElement は複合型です リソース内にのみ存在します お父さん、他の場所で再利用することはできません。たとえば: 患者連絡先、 出会い・参加者、 出会い・診断。
{
"resourceType": "Patient",
"contact": [
{
"relationship": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0131",
"code": "N",
"display": "Next-of-Kin"
}
]
}
],
"name": {
"text": "Nguyễn Thị B (vợ)"
},
"telecom": [
{
"system": "phone",
"value": "+84907654321"
}
]
}
]
}
5. 選択肢の種類 [x]
一部の要素では複数のデータ型が許可されます - イコール記号 [×]:
| 要素の定義 | 実用化 |
|---|---|
| 値[x] | valueQuantity、valueString、valueCodeableConcept、valueBoolean、... |
| 発症[x] | onsetDateTime、onsetAge、onsetPeriod、onsetRange、onsetString |
| 有効[x] | 有効な日付時刻、有効な期間、有効なインスタント、有効なタイミング |
| 故人[x] | 死亡ブール値、死亡日時 |
| 複数の誕生[x] | multipleBirthBoolean、multipleBirthInteger |
// Observation value dạng Quantity
{"valueQuantity": {"value": 37.2, "unit": "°C"}}
// Observation value dạng CodeableConcept
{"valueCodeableConcept": {"coding": [{"code": "positive"}]}}
// Observation value dạng string
{"valueString": "Bình thường"}
6. まとめ
プリミティブ型 — 20 以上の基本タイプ (文字列、日付、コード、URI など)、拡張機能をサポート
複合型 — HumanName、住所、識別子、CodeableConcept、数量、参照など
コード可能なコンセプト — 最も重要なのは、相互運用性のためにマルチコーディングを許可することです
物語 — すべての DomainResources 内の人間が判読できる XHTML
バックボーン要素 — 複合型内部リソース
選択肢の種類 [x] — 適切なデータ型を柔軟に選択