{
  "resourceType": "CapabilityStatement",
  "id": "r4-requirements",
  "text": {
    "status": "generated",
    "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">PIDLink Adapter</div>"
  },
  "url": "http://hedx-pf.com/pidlink/fhir/CapabilityStatement/r4-requirements",
  "version": "1.0.0.0",
  "name": "PIDLinkAdapterR4Requirements",
  "title": "PIDLink Adapter R4 Requirements",
  "status": "active",
  "experimental": false,
  "date": "2023-01-01T00:00:00+00:00",
  "publisher": "SBS Information System Co.,Ltd.",
  "description": "この FHIR CapabilityStatement はぴっどりんく HL7FHIR R4 ファサードAPIとして実装すべき項目を定義するためのものです。",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "urn:iso:std:iso:3166",
          "code": "JP",
          "display": "Japan"
        }
      ]
    }
  ],
  "kind": "requirements",
  "fhirVersion": "4.0.1",
  "format": [
    "json"
  ],
  "messaging": [
    {
      "documentation": "患者情報と保健情報の登録・更新をPIDLinkAPIに要求します。",
      "supportedMessage": [
        {
          "mode": "receiver",
          "definition": "MessageDefinition/pidlink-patient-register"
        }
      ]
    }
  ],
  "rest": [
    {
      "mode": "server",
      "documentation": "PIDLinkのFHIRエンドポイントです。",
      "operation": [
        {
          "name": "everything",
          "definition": "http://hl7.org/fhir/OperationDefinition/Patient-everything"
        },
        {
          "name": "process-message",
          "definition": "http://hl7.org/fhir/OperationDefinition/MessageHeader-process-message"
        },
        {
          "name": "pidlink-everything",
          "definition": "http://hedx-pf.com/pidlink/fhir/OperationDefinition/pidlink-everything"
        }
      ],
      "resource": [
        {
          "type": "MessageDefinition",
          "profile": "http://hl7.org/fhir/StructureDefinition/MessageDefinition",
          "interaction": [
            {
              "code": "read"
            }
          ]
        },
        {
          "type": "Organization",
          "profile": "http://hl7.org/fhir/StructureDefinition/Organization",
          "documentation": "PIDLinkの対象となる医療機関です。Organization.id には 保険医療機関コード（10桁）が設定されています。",
          "interaction": [
            {
              "code": "read"
            },
            {
              "code": "search-type"
            }
          ],
          "searchParam": [
            {
              "name": "_id",
              "type": "token",
              "documentation": "Organization.id（保健医療機関コード）を指定します。"
            }
          ]
        },
        {
          "type": "Patient",
          "profile": "http://hl7.org/fhir/StructureDefinition/Patient",
          "documentation": "Patient.id は \"[施設内患者ID].[保健医療機関コード（Organization.id）]\" の形式です。 統合患者IDは Patient.identifier 要素に含まれます。その際の Patient.identifier.system は \"{{IIntegratedPatientIdSystem}}\" です。R4ではページ・オフセットのパラメータが定義されていないため、ページ・オフセットとして _pagesoffset パラメータを定義します。Bundle-searchset.link(relation=\"next\")に次のページのURL、Bundle-searchset.link(relation=\"previous\")に前のページのURLが設定されます。",
          "interaction": [
            {
              "code": "read"
            },
            {
              "code": "search-type"
            }
          ],
          "searchParam": [
            {
              "name": "_id",
              "type": "token",
              "documentation": "Patient.id を指定します。\"[施設内患者ID].[保健医療機関コード（Organization.id）]\" の形式です。PIDLinkAPIの制限で統合患者IDを指定した場合、サーバは\"400 Bad Request\"を返却します。統合患者IDで検索を行う場合はidentifierを使用します。"
            },
            {
              "name": "birthDate",
              "type": "date",
              "documentation": "生年月日を指定します。等しい値（birthData=yyyy-MM-dd）のみ検索対象です。"
            },
            {
              "name": "address",
              "type": "string",
              "documentation": "住所を指定します。住所テキストのみ検索対象です。PIDLinkAPIと同様の検索を行います。"
            },
            {
              "name": "address-postalcode",
              "type": "string",
              "documentation": "郵便番号を指定します。PIDLinkAPIと同様の検索を行います。"
            },
            {
              "name": "family",
              "type": "string",
              "documentation": "姓を指定します。カナ氏名のみ検索対象です。漢字氏名を検索する場合は [\"IDE|漢字姓\"] を指定します。PIDLinkAPIと同様の検索を行います。"
            },
            {
              "name": "given",
              "type": "string",
              "documentation": "名を指定します。カナ氏名のみ検索対象です。漢字氏名を検索する場合は [\"IDE|漢字名\"] を指定します。PIDLinkAPIと同様の検索を行います。"
            },
            {
              "name": "gender",
              "type": "string",
              "documentation": "性別（male | female | other | unknown）を指定します。"
            },
            {
              "name": "identifier",
              "type": "token",
              "documentation": "識別子を指定します。統合患者IDを指定した場合はシステム上の制約により、[identifier] 以外の検索パラメータは無効になります。Identifier.systemを指定しない場合は施設内患者IDとみなし検索した後、結果が存在しないのであれば統合患者IDとみなし検索します。"
            },
            {
              "name": "link",
              "type": "string",
              "documentation": "Patient.idを指定します。検索結果ではPatient.idにひもづいたPatientリソースの一覧を取得します。このパラメータを指定した場合、PIDLinkAPIの制約により [link] [organization] 以外の検索パラメータ（ページング含む）は無効になります。"
            },
            {
              "name": "organization",
              "type": "reference",
              "documentation": "Organization.id（保健医療機関コード）を指定します。"
            },
            {
              "name": "phone",
              "type": "string",
              "documentation": "電話番号を指定します。用途（自宅、携帯番号など）の区別はできません。PIDLinkAPIと同様の検索を行います。"
            }
          ]
        }
      ]
    }
  ]
}