FHIR 개요

1. HL7

  • HL7의 이름은 Open System Connectivity 7계층 모델을 기반으로 한 Health Level 7을 나타냅니다.
  • HL7은 보건의료 정보의 전자적 교환을 위한 표준을 개발하기 위해 1987년에 설립된 비영리 단체입니다.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Figure 1.HL7 웹사이트

2. FHIR의 개요

2.1 FHIR란?

  • FHIR는 Fast Healthcare Interoperability Resource ‘퐈이어, [faɪə®]’로 발음.
  • FHIR은 HL7에서 개발한 최신 표준으로, RESTful API 및 JSON 데이터 형식과 같은 최신 웹 기술을 사용합니다.
  • FHIR 리소스는 모듈식입니다. 즉, 환자의 건강 정보의 다른 부분에 독립적으로 접근할 수 있으며 OAuth 및 OpenID과 같은 다른 보건 IT 표준과 함께 사용할 수 있습니다.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Figure 1. Structure

2.2 Resource (리소스)

  • FHIR 솔루션은 "리소스"라는 모듈식 구성 요소 집합으로 구축됩니다.
  • 리소스 인스턴스(Resource Instance)는 XML, JSON 또는 RDF로 표시되며 리소스 타입 (Resource Type)으로 추상화된 데이터 모델로 정의되며 157여 개의 표준 리소스 타입이 제공되고 있다.
  • FHIR 리소스의 역할
    Image Not Showing Possible Reasons
    • The image file may be corrupted
    • The server hosting the image is unavailable
    • The image path is incorrect
    • The image format is not supported
    Learn More →
  • Reource Type 리스트
    • General jSON type
{
  "resourceType" : "[Resource Type]",
  // from Source: property0
  "property1" : "<[primitive]>", // short description
  "property2" : { [Datatype] }, // short description
  "property3" : { // Short Description
    "propertyA" : { CodeableConcept }, // Short Description (Example)
  },
  "property4" : [{ // Short Description
    "propertyB" : { Reference(ResourceType) } // R!  Short Description
  }]
}

  • Patient JSON type
{
  "resourceType" : "Patient",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // An identifier for this patient
  "active" : <boolean>, // Whether this patient's record is in active use
  "name" : [{ HumanName }], // A name associated with the patient
  "telecom" : [{ ContactPoint }], // A contact detail for the individual
  "gender" : "<code>", // male | female | other | unknown
  "birthDate" : "<date>", // The date of birth for the individual
  // deceased[x]: Indicates if the individual is deceased or not. One of these 2:
  "deceasedBoolean" : <boolean>,
  "deceasedDateTime" : "<dateTime>",
  "address" : [{ Address }], // An address for the individual
  "maritalStatus" : { CodeableConcept }, // Marital (civil) status of a patient
  // multipleBirth[x]: Whether patient is part of a multiple birth. One of these 2:
  "multipleBirthBoolean" : <boolean>,
  "multipleBirthInteger" : <integer>,
  "photo" : [{ Attachment }], // Image of the patient
  "contact" : [{ // A contact party (e.g. guardian, partner, friend) for the patient
    "relationship" : [{ CodeableConcept }], // The kind of relationship
    "name" : { HumanName }, // I A name associated with the contact person
    "telecom" : [{ ContactPoint }], // I A contact detail for the person
    "address" : { Address }, // I Address for the contact person
    "gender" : "<code>", // male | female | other | unknown
    "organization" : { Reference(Organization) }, // I Organization that is associated with the contact
    "period" : { Period } // The period during which this contact person or organization is valid to be contacted relating to this patient
  }],
  "communication" : [{ // A language which may be used to communicate with the patient about his or her health
    "language" : { CodeableConcept }, // R!  The language which can be used to communicate with the patient about his or her health
    "preferred" : <boolean> // Language preference indicator
  }],
  "generalPractitioner" : [{ Reference(Organization|Practitioner|
   PractitionerRole) }], // Patient's nominated primary care provider
  "managingOrganization" : { Reference(Organization) }, // Organization that is the custodian of the patient record
  "link" : [{ // Link to a Patient or RelatedPerson resource that concerns the same actual individual
    "other" : { Reference(Patient|RelatedPerson) }, // R!  The other patient or related person resource that the link refers to
    "type" : "<code>" // R!  replaced-by | replaces | refer | seealso
  }]
}

2.3 왜 FHIR 필요할까?

  • 도입 효과 및 주요 특징 FHIR는 기존 프레임워크의 문제점을 보완하고 아래와 같은 다양한 장점을 제공합니다.
  1. 쉽고 빠른 의료기스템 구현 가능
  2. 웹 기반 기술로 사용 환경이 편리하다( XML, JSON, HTTP, Atom, OAuth, etc.)
  3. 메시징, 문서 교환 등 기존 페러다임에 유연한 아키텍처를 지원합니다.

2.4 대체 기술

참고 문서