xCaliber healthCare Data Mesh

Person

Overview

The Person API allows creating, managing, and searching user identity profiles for patients, providers, and other people. Healthcare developers can use it to build applications with user management workflows for registration, authentication, authorizations, and identity federations.

Use Cases

  • User Management - Create and manage user accounts for patients, providers, administrators.
  • Identity Management - Maintain user identifiers, credentials, demographics, contacts.
  • Authentication - Validate user identities and enable secure access to applications and data.
  • Authorization - Define user roles and privileges to control access to functionality and information.
  • Single Sign-On - Allow users to access multiple integrated applications using one login.
  • Auditing - Track user activities like logins, data access, and changes for security audits.
  • Patient Matching - Link patient records across applications to the same person.
  • Referrals - Associate referring and referred providers to enable closed loop referrals.
  • Registries - Build master directories of patients, providers or other person identities.
  • Compliance - Adhere to healthcare regulations related to identity management and authorization.

EHR Data Model

EHRSupported?Mapped Source Object
AthenaProviders
ElationStaff User
EpicN/A

Object Definition

{
  "resourceType": "Person",
  "id": "example",
  "text": {
    "status": "generated",
    "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n      <table>\n        <tbody>\n          <tr>\n            <td>Name</td>\n            <td>Peter James <b>Chalmers</b> (&quot;Jim&quot;)</td>\n          </tr>\n          <tr>\n            <td>Address</td>\n            <td>534 Erewhon, Pleasantville, Vic, 3999</td>\n          </tr>\n          <tr>\n            <td>Contacts</td>\n            <td>Home: unknown. Work: (03) 5555 6473</td>\n          </tr>\n          <tr>\n            <td>Id</td>\n            <td>MRN: 12345 (Acme Healthcare)</td>\n          </tr>\n        </tbody>\n      </table>\n    </div>"
  },
  "identifier": [
    {
      "use": "usual",
      "type": {
        "coding": [
          {
            "system": "http://terminology.hl7.org/CodeSystem/v2-0203",
            "code": "MR"
          }
        ]
      },
      "system": "urn:oid:1.2.36.146.595.217.0.1",
      "value": "12345",
      "period": {
        "start": "2001-05-06"
      },
      "assigner": {
        "display": "Acme Healthcare"
      }
    }
  ],
  "name": [
    {
      "use": "official",
      "family": "Chalmers",
      "given": [
        "Peter",
        "James"
      ]
    },
    {
      "use": "usual",
      "given": [
        "Jim"
      ]
    }
  ],
  "telecom": [
    {
      "use": "home"
    },
    {
      "system": "phone",
      "value": "(03) 5555 6473",
      "use": "work"
    },
    {
      "system": "email",
      "value": "Jim@example.org",
      "use": "home"
    }
  ],
  "gender": "male",
  "birthDate": "1974-12-25",
  "address": [
    {
      "use": "home",
      "line": [
        "534 Erewhon St"
      ],
      "city": "PleasantVille",
      "state": "Vic",
      "postalCode": "3999"
    }
  ],
  "active": true,
  "link": [
    {
      "target": {
        "reference": "RelatedPerson/peter",
        "display": "Peter Chalmers"
      }
    },
    {
      "target": {
        "reference": "Patient/example",
        "display": "Peter Chalmers"
      }
    }
  ],
  "meta": {
    "tag": [
      {
        "system": "http://terminology.hl7.org/CodeSystem/v3-ActReason",
        "code": "HTEST",
        "display": "test health data"
      }
    ]
  }
}

Data Fields

Data FieldTypeDescription
resourceTypePersonThis is a Person resource
ididThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
metaMetaThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
implicitRulesuriA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
languagecodeThe base language in which the resource is written.
textNarrativeA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
containedBackboneElementThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
extensionExtensionMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
modifierExtensionExtensionMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
identifierIdentifierIdentifier for a person within a particular scope.
nameHumanNameA name associated with the person.
telecomContactPointA contact detail for the person, e.g. a telephone number or an email address.
gendercodeAdministrative Gender.
birthDatedateThe birth date for the person.
addressAddressOne or more addresses for the person.
photoAttachmentAn image that can be displayed as a thumbnail of the person to enhance the identification of the individual.
managingOrganizationReferenceThe organization that is the custodian of the person record.
activebooleanWhether this person's record is in active use.
linkBackboneElementLink to a resource that concerns the same actual person.
link.idstringUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
link.extensionExtensionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
link.modifierExtensionExtensionMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
link.targetReferenceThe resource to which this actual person is associated.
link.assurancecodeLevel of assurance that this link is associated with the target resource.

Extensions

NameURL
ACCEPTINGNEWPATIENTSYNhttp://xcaliber-fhir/structureDefinition/accepting-new-patients-yn
ANSINAMECODEhttp://xcaliber-fhir/structureDefinition/ansi-name-code
ANSISPECIALTYCODEhttp://xcaliber-fhir/structureDefinition/ansi-specialty-code
BILLABLEhttp://xcaliber-fhir/structureDefinition/billable
CREATEENCOUNTERONCHECKINYNhttp://xcaliber-fhir/structureDefinition/create-encounter-on-checkin-yn
DIRECTADDRESShttp://xcaliber-fhir/structureDefinition/direct-address
ENTITYTYPEhttp://xcaliber-fhir/structureDefinition/entity-type
FEDERALIDNUMBERhttp://xcaliber-fhir/structureDefinition/federal-id-number
HIDEINPORTALYNhttp://xcaliber-fhir/structureDefinition/hide-in-portal-yn
HOMEDEPARTMENThttp://xcaliber-fhir/structureDefinition/home-department
OTHERPROVIDERIDLISThttp://xcaliber-fhir/structureDefinition/other-provider-id-list
PERSONALPRONOUNShttp://xcaliber-fhir/structureDefinition/personal-pronouns
PROVIDERGROUPLISThttp://xcaliber-fhir/structureDefinition/provider-group-list
PROVIDERTYPEhttp://xcaliber-fhir/structureDefinition/provider-type
PROVIDERTYPEIDhttp://xcaliber-fhir/structureDefinition/provider-type-id
PROVIDERUSERNAMEhttp://xcaliber-fhir/structureDefinition/provider-username
SCHEDULERESOURCETYPEhttp://xcaliber-fhir/structureDefinition/schedule-resource-type
SCHEDULINGNAMEhttp://xcaliber-fhir/structureDefinition/scheduling-name
SPECIALTYhttp://xcaliber-fhir/structureDefinition/specialty
SPECIALTYIDhttp://xcaliber-fhir/structureDefinition/specialty-id
SUPERVISINGPROVIDERIDhttp://xcaliber-fhir/structureDefinition/supervising-provider-id
SUPERVISINGPROVIDERUSERNAMEhttp://xcaliber-fhir/structureDefinition/supervising-provider-username
USUALDEPARTMENTIDhttp://xcaliber-fhir/structureDefinition/usual-department-id
CREATEENCOUNTERPROVIDERIDLISThttp://xcaliber-fhir/structureDefinition/create-encounter-provider-id-list

Operations & APIs

Person-GET

Person-POST

Person ID-GET

Person ID-PUT

Person ID-DELETE