This page is part of the US Core (v6.1.0: STU6 Update) based on FHIR R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
Official URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-organization | Version: 6.1.0 | |||
Active as of 2022-04-20 | Computable Name: USCoreOrganizationProfile | |||
Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License |
This profile sets minimum expectations for the Organization resource to searching for and fetching an Organization associated with a patient or provider to promote interoperability and adoption through common implementation. It identifies which core elements, extensions, vocabularies, and value sets SHALL be present and constrains the way the elements are used and constrains the way the elements are used when using the profile. It provides the floor for standards development for specific use cases.
Example Usage Scenarios:
The following are example usage scenarios for this profile:
The following data-elements must always be present (Mandatory definition) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Views below provides the formal summary, definitions, and terminology requirements.
Each Organization Must Have:
Each Organization Must Support:
*see guidance below
Profile Specific Implementation Guidance:
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Organization
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Organization | 0..* | Organization | A grouping of people or organizations with a common purpose | |
Slices for identifier | S | 0..* | Identifier | Identifies this organization across multiple systems Slice: Unordered, Open by pattern:$this |
identifier:All Slices | Content/Rules for all slices | |||
system | S | 0..1 | uri | The namespace for the identifier value |
value | S | 0..1 | string | The value that is unique |
identifier:NPI | SC | 0..* | Identifier | National Provider Identifier (NPI) us-core-16: NPI must be 10 digits us-core-17: NPI check digit must be valid (Luhn algorithm check) Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: http://hl7.org/fhir/sid/us-npi | |
identifier:CLIA | C | 0..* | Identifier | Clinical Laboratory Improvement Amendments (CLIA) Number for laboratories us-core-18: CLIA number must be 10 digits with a letter "D" in third position Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.4.7 | |
identifier:NAIC | C | 0..* | Identifier | NAIC Code us-core-19: NAIC must be 5 digits Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.6.300 | |
active | S | 1..1 | boolean | Whether the organization's record is still in active use |
name | S | 1..1 | string | Name used for the organization |
telecom | S | 0..* | ContactPoint | A contact detail for the organization |
system | S | 0..1 | code | phone | fax | email | pager | url | sms | other |
value | S | 0..1 | string | The actual contact point details |
address | S | 0..* | Address | An address for the organization |
line | S | 0..4 | string | Street name, number, direction & P.O. Box etc. |
city | S | 0..1 | string | Name of city, town etc. |
state | S | 0..1 | string | Sub-unit of country (abbreviations ok) Binding: USPS Two Letter Alphabetic Codes (extensible): Two letter USPS alphabetic codes. |
postalCode | S | 0..1 | string | US Zip Codes |
country | S | 0..1 | string | Country (e.g. can be ISO 3166 2 or 3 letter code) |
Documentation for this format |
Path | Conformance | ValueSet |
Organization.address.state | extensible | UspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/ ) |
Id | Grade | Path(s) | Details | Requirements |
us-core-16 | error | Organization.identifier:NPI | NPI must be 10 digits : value.matches('^[0-9]{10}$') | |
us-core-17 | error | Organization.identifier:NPI | NPI check digit must be valid (Luhn algorithm check) : (((select(value.substring(0,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(1,1).toInteger())+(select(value.substring(2,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(3,1).toInteger())+(select(value.substring(4,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(5,1).toInteger())+(select(value.substring(6,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(7,1).toInteger())+(select(value.substring(8,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(9,1).toInteger()) + 24)mod 10=0) | |
us-core-18 | error | Organization.identifier:CLIA | CLIA number must be 10 digits with a letter "D" in third position : value.matches('^[0-9]{2}D[0-9]{7}$') | |
us-core-19 | error | Organization.identifier:NAIC | NAIC must be 5 digits : value.matches('^[0-9]{5}$') |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Organization | C | 0..* | Organization | A grouping of people or organizations with a common purpose |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
Slices for identifier | SΣC | 0..* | Identifier | Identifies this organization across multiple systems Slice: Unordered, Open by pattern:$this |
identifier:All Slices | Content/Rules for all slices | |||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . |
system | SΣ | 0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient |
value | SΣ | 0..1 | string | The value that is unique Example General: 123456 |
identifier:NPI | SΣC | 0..* | Identifier | National Provider Identifier (NPI) us-core-16: NPI must be 10 digits us-core-17: NPI check digit must be valid (Luhn algorithm check) Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: http://hl7.org/fhir/sid/us-npi | |
identifier:CLIA | ΣC | 0..* | Identifier | Clinical Laboratory Improvement Amendments (CLIA) Number for laboratories us-core-18: CLIA number must be 10 digits with a letter "D" in third position Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.4.7 | |
identifier:NAIC | ΣC | 0..* | Identifier | NAIC Code us-core-19: NAIC must be 5 digits Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.6.300 | |
active | ?!SΣ | 1..1 | boolean | Whether the organization's record is still in active use |
name | SΣC | 1..1 | string | Name used for the organization |
telecom | SC | 0..* | ContactPoint | A contact detail for the organization |
system | SΣC | 0..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required): Telecommunications form for contact point. |
value | SΣ | 0..1 | string | The actual contact point details |
use | ?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point. |
address | SC | 0..* | Address | An address for the organization |
use | ?!Σ | 0..1 | code | home | work | temp | old | billing - purpose of this address Binding: AddressUse (required): The use of an address. Example General: home |
line | SΣ | 0..4 | string | Street name, number, direction & P.O. Box etc. This repeating element order: The order in which lines should appear in an address label Example General: 137 Nowhere Street |
city | SΣ | 0..1 | string | Name of city, town etc. Example General: Erewhon |
state | SΣ | 0..1 | string | Sub-unit of country (abbreviations ok) Binding: USPS Two Letter Alphabetic Codes (extensible): Two letter USPS alphabetic codes. |
postalCode | SΣ | 0..1 | string | US Zip Codes Example General: 9132 |
country | SΣ | 0..1 | string | Country (e.g. can be ISO 3166 2 or 3 letter code) |
Documentation for this format |
Path | Conformance | ValueSet |
Organization.identifier.use | required | IdentifierUse |
Organization.telecom.system | required | ContactPointSystem |
Organization.telecom.use | required | ContactPointUse |
Organization.address.use | required | AddressUse |
Organization.address.state | extensible | UspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/ ) |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Organization | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Organization | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Organization | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Organization | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Organization | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
org-1 | error | Organization | The organization SHALL at least have a name or an identifier, and possibly more than one : (identifier.count() + name.count()) > 0 | |
org-2 | error | Organization.address | An address of an organization can never be of use 'home' : where(use = 'home').empty() | |
org-3 | error | Organization.telecom | The telecom of an organization can never be of use 'home' : where(use = 'home').empty() | |
us-core-16 | error | Organization.identifier:NPI | NPI must be 10 digits : value.matches('^[0-9]{10}$') | |
us-core-17 | error | Organization.identifier:NPI | NPI check digit must be valid (Luhn algorithm check) : (((select(value.substring(0,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(1,1).toInteger())+(select(value.substring(2,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(3,1).toInteger())+(select(value.substring(4,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(5,1).toInteger())+(select(value.substring(6,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(7,1).toInteger())+(select(value.substring(8,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(9,1).toInteger()) + 24)mod 10=0) | |
us-core-18 | error | Organization.identifier:CLIA | CLIA number must be 10 digits with a letter "D" in third position : value.matches('^[0-9]{2}D[0-9]{7}$') | |
us-core-19 | error | Organization.identifier:NAIC | NAIC must be 5 digits : value.matches('^[0-9]{5}$') |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Organization | C | 0..* | Organization | A grouping of people or organizations with a common purpose | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
Slices for identifier | SΣC | 0..* | Identifier | Identifies this organization across multiple systems Slice: Unordered, Open by pattern:$this | ||||
identifier:All Slices | Content/Rules for all slices | |||||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | SΣ | 0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | ||||
value | SΣ | 0..1 | string | The value that is unique Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
identifier:NPI | SΣC | 0..* | Identifier | National Provider Identifier (NPI) us-core-16: NPI must be 10 digits us-core-17: NPI check digit must be valid (Luhn algorithm check) Required Pattern: At least the following | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
use | 0..1 | code | usual | official | temp | secondary | old (If known) | |||||
type | 0..1 | CodeableConcept | Description of identifier | |||||
system | 1..1 | uri | The namespace for the identifier value Fixed Value: http://hl7.org/fhir/sid/us-npi | |||||
value | 0..1 | string | The value that is unique | |||||
period | 0..1 | Period | Time period when id is/was valid for use | |||||
assigner | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | |||||
identifier:CLIA | ΣC | 0..* | Identifier | Clinical Laboratory Improvement Amendments (CLIA) Number for laboratories us-core-18: CLIA number must be 10 digits with a letter "D" in third position Required Pattern: At least the following | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
use | 0..1 | code | usual | official | temp | secondary | old (If known) | |||||
type | 0..1 | CodeableConcept | Description of identifier | |||||
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.4.7 | |||||
value | 0..1 | string | The value that is unique | |||||
period | 0..1 | Period | Time period when id is/was valid for use | |||||
assigner | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | |||||
identifier:NAIC | ΣC | 0..* | Identifier | NAIC Code us-core-19: NAIC must be 5 digits Required Pattern: At least the following | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
use | 0..1 | code | usual | official | temp | secondary | old (If known) | |||||
type | 0..1 | CodeableConcept | Description of identifier | |||||
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.6.300 | |||||
value | 0..1 | string | The value that is unique | |||||
period | 0..1 | Period | Time period when id is/was valid for use | |||||
assigner | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | |||||
active | ?!SΣ | 1..1 | boolean | Whether the organization's record is still in active use | ||||
type | Σ | 0..* | CodeableConcept | Kind of organization Binding: OrganizationType (example): Used to categorize the organization. | ||||
name | SΣC | 1..1 | string | Name used for the organization | ||||
alias | 0..* | string | A list of alternate names that the organization is known as, or was known as in the past | |||||
telecom | SC | 0..* | ContactPoint | A contact detail for the organization | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
system | SΣC | 0..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required): Telecommunications form for contact point. | ||||
value | SΣ | 0..1 | string | The actual contact point details | ||||
use | ?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point. | ||||
rank | Σ | 0..1 | positiveInt | Specify preferred order of use (1 = highest) | ||||
period | Σ | 0..1 | Period | Time period when the contact point was/is in use | ||||
address | SC | 0..* | Address | An address for the organization | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | home | work | temp | old | billing - purpose of this address Binding: AddressUse (required): The use of an address. Example General: home | ||||
type | Σ | 0..1 | code | postal | physical | both Binding: AddressType (required): The type of an address (physical / postal). Example General: both | ||||
text | Σ | 0..1 | string | Text representation of the address Example General: 137 Nowhere Street, Erewhon 9132 | ||||
line | SΣ | 0..4 | string | Street name, number, direction & P.O. Box etc. This repeating element order: The order in which lines should appear in an address label Example General: 137 Nowhere Street | ||||
city | SΣ | 0..1 | string | Name of city, town etc. Example General: Erewhon | ||||
district | Σ | 0..1 | string | District name (aka county) Example General: Madison | ||||
state | SΣ | 0..1 | string | Sub-unit of country (abbreviations ok) Binding: USPS Two Letter Alphabetic Codes (extensible): Two letter USPS alphabetic codes. | ||||
postalCode | SΣ | 0..1 | string | US Zip Codes Example General: 9132 | ||||
country | SΣ | 0..1 | string | Country (e.g. can be ISO 3166 2 or 3 letter code) | ||||
period | Σ | 0..1 | Period | Time period when address was/is in use Example General: {"start":"2010-03-23","end":"2010-07-01"} | ||||
partOf | Σ | 0..1 | Reference(Organization) | The organization of which this organization forms a part | ||||
contact | 0..* | BackboneElement | Contact for the organization for a certain purpose | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
purpose | 0..1 | CodeableConcept | The type of contact Binding: ContactEntityType (extensible): The purpose for which you would contact a contact party. | |||||
name | 0..1 | HumanName | A name associated with the contact | |||||
telecom | 0..* | ContactPoint | Contact details (telephone, email, etc.) for a contact | |||||
address | 0..1 | Address | Visiting or postal addresses for the contact | |||||
endpoint | 0..* | Reference(Endpoint) | Technical endpoints providing access to services operated for the organization | |||||
Documentation for this format |
Path | Conformance | ValueSet | ||||
Organization.language | preferred | CommonLanguages
| ||||
Organization.identifier.use | required | IdentifierUse | ||||
Organization.identifier.type | extensible | Identifier Type Codes | ||||
Organization.type | example | OrganizationType | ||||
Organization.telecom.system | required | ContactPointSystem | ||||
Organization.telecom.use | required | ContactPointUse | ||||
Organization.address.use | required | AddressUse | ||||
Organization.address.type | required | AddressType | ||||
Organization.address.state | extensible | UspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/ ) | ||||
Organization.contact.purpose | extensible | ContactEntityType |
Id | Grade | Path(s) | Details | Requirements |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
org-2 | error | Organization.address | An address of an organization can never be of use 'home' : where(use = 'home').empty() | |
org-3 | error | Organization.telecom | The telecom of an organization can never be of use 'home' : where(use = 'home').empty() | |
us-core-16 | error | Organization.identifier:NPI | NPI must be 10 digits : value.matches('^[0-9]{10}$') | |
us-core-17 | error | Organization.identifier:NPI | NPI check digit must be valid (Luhn algorithm check) : (((select(value.substring(0,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(1,1).toInteger())+(select(value.substring(2,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(3,1).toInteger())+(select(value.substring(4,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(5,1).toInteger())+(select(value.substring(6,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(7,1).toInteger())+(select(value.substring(8,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(9,1).toInteger()) + 24)mod 10=0) | |
us-core-18 | error | Organization.identifier:CLIA | CLIA number must be 10 digits with a letter "D" in third position : value.matches('^[0-9]{2}D[0-9]{7}$') | |
us-core-19 | error | Organization.identifier:NAIC | NAIC must be 5 digits : value.matches('^[0-9]{5}$') |
This structure is derived from Organization
Summary
Mandatory: 2 elements
Must-Support: 15 elements
Slices
This structure defines the following Slices:
Differential View
This structure is derived from Organization
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Organization | 0..* | Organization | A grouping of people or organizations with a common purpose | |
Slices for identifier | S | 0..* | Identifier | Identifies this organization across multiple systems Slice: Unordered, Open by pattern:$this |
identifier:All Slices | Content/Rules for all slices | |||
system | S | 0..1 | uri | The namespace for the identifier value |
value | S | 0..1 | string | The value that is unique |
identifier:NPI | SC | 0..* | Identifier | National Provider Identifier (NPI) us-core-16: NPI must be 10 digits us-core-17: NPI check digit must be valid (Luhn algorithm check) Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: http://hl7.org/fhir/sid/us-npi | |
identifier:CLIA | C | 0..* | Identifier | Clinical Laboratory Improvement Amendments (CLIA) Number for laboratories us-core-18: CLIA number must be 10 digits with a letter "D" in third position Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.4.7 | |
identifier:NAIC | C | 0..* | Identifier | NAIC Code us-core-19: NAIC must be 5 digits Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.6.300 | |
active | S | 1..1 | boolean | Whether the organization's record is still in active use |
name | S | 1..1 | string | Name used for the organization |
telecom | S | 0..* | ContactPoint | A contact detail for the organization |
system | S | 0..1 | code | phone | fax | email | pager | url | sms | other |
value | S | 0..1 | string | The actual contact point details |
address | S | 0..* | Address | An address for the organization |
line | S | 0..4 | string | Street name, number, direction & P.O. Box etc. |
city | S | 0..1 | string | Name of city, town etc. |
state | S | 0..1 | string | Sub-unit of country (abbreviations ok) Binding: USPS Two Letter Alphabetic Codes (extensible): Two letter USPS alphabetic codes. |
postalCode | S | 0..1 | string | US Zip Codes |
country | S | 0..1 | string | Country (e.g. can be ISO 3166 2 or 3 letter code) |
Documentation for this format |
Path | Conformance | ValueSet |
Organization.address.state | extensible | UspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/ ) |
Id | Grade | Path(s) | Details | Requirements |
us-core-16 | error | Organization.identifier:NPI | NPI must be 10 digits : value.matches('^[0-9]{10}$') | |
us-core-17 | error | Organization.identifier:NPI | NPI check digit must be valid (Luhn algorithm check) : (((select(value.substring(0,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(1,1).toInteger())+(select(value.substring(2,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(3,1).toInteger())+(select(value.substring(4,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(5,1).toInteger())+(select(value.substring(6,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(7,1).toInteger())+(select(value.substring(8,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(9,1).toInteger()) + 24)mod 10=0) | |
us-core-18 | error | Organization.identifier:CLIA | CLIA number must be 10 digits with a letter "D" in third position : value.matches('^[0-9]{2}D[0-9]{7}$') | |
us-core-19 | error | Organization.identifier:NAIC | NAIC must be 5 digits : value.matches('^[0-9]{5}$') |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Organization | C | 0..* | Organization | A grouping of people or organizations with a common purpose |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
Slices for identifier | SΣC | 0..* | Identifier | Identifies this organization across multiple systems Slice: Unordered, Open by pattern:$this |
identifier:All Slices | Content/Rules for all slices | |||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . |
system | SΣ | 0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient |
value | SΣ | 0..1 | string | The value that is unique Example General: 123456 |
identifier:NPI | SΣC | 0..* | Identifier | National Provider Identifier (NPI) us-core-16: NPI must be 10 digits us-core-17: NPI check digit must be valid (Luhn algorithm check) Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: http://hl7.org/fhir/sid/us-npi | |
identifier:CLIA | ΣC | 0..* | Identifier | Clinical Laboratory Improvement Amendments (CLIA) Number for laboratories us-core-18: CLIA number must be 10 digits with a letter "D" in third position Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.4.7 | |
identifier:NAIC | ΣC | 0..* | Identifier | NAIC Code us-core-19: NAIC must be 5 digits Required Pattern: At least the following |
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.6.300 | |
active | ?!SΣ | 1..1 | boolean | Whether the organization's record is still in active use |
name | SΣC | 1..1 | string | Name used for the organization |
telecom | SC | 0..* | ContactPoint | A contact detail for the organization |
system | SΣC | 0..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required): Telecommunications form for contact point. |
value | SΣ | 0..1 | string | The actual contact point details |
use | ?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point. |
address | SC | 0..* | Address | An address for the organization |
use | ?!Σ | 0..1 | code | home | work | temp | old | billing - purpose of this address Binding: AddressUse (required): The use of an address. Example General: home |
line | SΣ | 0..4 | string | Street name, number, direction & P.O. Box etc. This repeating element order: The order in which lines should appear in an address label Example General: 137 Nowhere Street |
city | SΣ | 0..1 | string | Name of city, town etc. Example General: Erewhon |
state | SΣ | 0..1 | string | Sub-unit of country (abbreviations ok) Binding: USPS Two Letter Alphabetic Codes (extensible): Two letter USPS alphabetic codes. |
postalCode | SΣ | 0..1 | string | US Zip Codes Example General: 9132 |
country | SΣ | 0..1 | string | Country (e.g. can be ISO 3166 2 or 3 letter code) |
Documentation for this format |
Path | Conformance | ValueSet |
Organization.identifier.use | required | IdentifierUse |
Organization.telecom.system | required | ContactPointSystem |
Organization.telecom.use | required | ContactPointUse |
Organization.address.use | required | AddressUse |
Organization.address.state | extensible | UspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/ ) |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Organization | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Organization | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Organization | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Organization | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Organization | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
org-1 | error | Organization | The organization SHALL at least have a name or an identifier, and possibly more than one : (identifier.count() + name.count()) > 0 | |
org-2 | error | Organization.address | An address of an organization can never be of use 'home' : where(use = 'home').empty() | |
org-3 | error | Organization.telecom | The telecom of an organization can never be of use 'home' : where(use = 'home').empty() | |
us-core-16 | error | Organization.identifier:NPI | NPI must be 10 digits : value.matches('^[0-9]{10}$') | |
us-core-17 | error | Organization.identifier:NPI | NPI check digit must be valid (Luhn algorithm check) : (((select(value.substring(0,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(1,1).toInteger())+(select(value.substring(2,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(3,1).toInteger())+(select(value.substring(4,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(5,1).toInteger())+(select(value.substring(6,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(7,1).toInteger())+(select(value.substring(8,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(9,1).toInteger()) + 24)mod 10=0) | |
us-core-18 | error | Organization.identifier:CLIA | CLIA number must be 10 digits with a letter "D" in third position : value.matches('^[0-9]{2}D[0-9]{7}$') | |
us-core-19 | error | Organization.identifier:NAIC | NAIC must be 5 digits : value.matches('^[0-9]{5}$') |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Organization | C | 0..* | Organization | A grouping of people or organizations with a common purpose | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
Slices for identifier | SΣC | 0..* | Identifier | Identifies this organization across multiple systems Slice: Unordered, Open by pattern:$this | ||||
identifier:All Slices | Content/Rules for all slices | |||||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | SΣ | 0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | ||||
value | SΣ | 0..1 | string | The value that is unique Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
identifier:NPI | SΣC | 0..* | Identifier | National Provider Identifier (NPI) us-core-16: NPI must be 10 digits us-core-17: NPI check digit must be valid (Luhn algorithm check) Required Pattern: At least the following | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
use | 0..1 | code | usual | official | temp | secondary | old (If known) | |||||
type | 0..1 | CodeableConcept | Description of identifier | |||||
system | 1..1 | uri | The namespace for the identifier value Fixed Value: http://hl7.org/fhir/sid/us-npi | |||||
value | 0..1 | string | The value that is unique | |||||
period | 0..1 | Period | Time period when id is/was valid for use | |||||
assigner | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | |||||
identifier:CLIA | ΣC | 0..* | Identifier | Clinical Laboratory Improvement Amendments (CLIA) Number for laboratories us-core-18: CLIA number must be 10 digits with a letter "D" in third position Required Pattern: At least the following | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
use | 0..1 | code | usual | official | temp | secondary | old (If known) | |||||
type | 0..1 | CodeableConcept | Description of identifier | |||||
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.4.7 | |||||
value | 0..1 | string | The value that is unique | |||||
period | 0..1 | Period | Time period when id is/was valid for use | |||||
assigner | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | |||||
identifier:NAIC | ΣC | 0..* | Identifier | NAIC Code us-core-19: NAIC must be 5 digits Required Pattern: At least the following | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
use | 0..1 | code | usual | official | temp | secondary | old (If known) | |||||
type | 0..1 | CodeableConcept | Description of identifier | |||||
system | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:oid:2.16.840.1.113883.6.300 | |||||
value | 0..1 | string | The value that is unique | |||||
period | 0..1 | Period | Time period when id is/was valid for use | |||||
assigner | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | |||||
active | ?!SΣ | 1..1 | boolean | Whether the organization's record is still in active use | ||||
type | Σ | 0..* | CodeableConcept | Kind of organization Binding: OrganizationType (example): Used to categorize the organization. | ||||
name | SΣC | 1..1 | string | Name used for the organization | ||||
alias | 0..* | string | A list of alternate names that the organization is known as, or was known as in the past | |||||
telecom | SC | 0..* | ContactPoint | A contact detail for the organization | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
system | SΣC | 0..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required): Telecommunications form for contact point. | ||||
value | SΣ | 0..1 | string | The actual contact point details | ||||
use | ?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point. | ||||
rank | Σ | 0..1 | positiveInt | Specify preferred order of use (1 = highest) | ||||
period | Σ | 0..1 | Period | Time period when the contact point was/is in use | ||||
address | SC | 0..* | Address | An address for the organization | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | home | work | temp | old | billing - purpose of this address Binding: AddressUse (required): The use of an address. Example General: home | ||||
type | Σ | 0..1 | code | postal | physical | both Binding: AddressType (required): The type of an address (physical / postal). Example General: both | ||||
text | Σ | 0..1 | string | Text representation of the address Example General: 137 Nowhere Street, Erewhon 9132 | ||||
line | SΣ | 0..4 | string | Street name, number, direction & P.O. Box etc. This repeating element order: The order in which lines should appear in an address label Example General: 137 Nowhere Street | ||||
city | SΣ | 0..1 | string | Name of city, town etc. Example General: Erewhon | ||||
district | Σ | 0..1 | string | District name (aka county) Example General: Madison | ||||
state | SΣ | 0..1 | string | Sub-unit of country (abbreviations ok) Binding: USPS Two Letter Alphabetic Codes (extensible): Two letter USPS alphabetic codes. | ||||
postalCode | SΣ | 0..1 | string | US Zip Codes Example General: 9132 | ||||
country | SΣ | 0..1 | string | Country (e.g. can be ISO 3166 2 or 3 letter code) | ||||
period | Σ | 0..1 | Period | Time period when address was/is in use Example General: {"start":"2010-03-23","end":"2010-07-01"} | ||||
partOf | Σ | 0..1 | Reference(Organization) | The organization of which this organization forms a part | ||||
contact | 0..* | BackboneElement | Contact for the organization for a certain purpose | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
purpose | 0..1 | CodeableConcept | The type of contact Binding: ContactEntityType (extensible): The purpose for which you would contact a contact party. | |||||
name | 0..1 | HumanName | A name associated with the contact | |||||
telecom | 0..* | ContactPoint | Contact details (telephone, email, etc.) for a contact | |||||
address | 0..1 | Address | Visiting or postal addresses for the contact | |||||
endpoint | 0..* | Reference(Endpoint) | Technical endpoints providing access to services operated for the organization | |||||
Documentation for this format |
Path | Conformance | ValueSet | ||||
Organization.language | preferred | CommonLanguages
| ||||
Organization.identifier.use | required | IdentifierUse | ||||
Organization.identifier.type | extensible | Identifier Type Codes | ||||
Organization.type | example | OrganizationType | ||||
Organization.telecom.system | required | ContactPointSystem | ||||
Organization.telecom.use | required | ContactPointUse | ||||
Organization.address.use | required | AddressUse | ||||
Organization.address.type | required | AddressType | ||||
Organization.address.state | extensible | UspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/ ) | ||||
Organization.contact.purpose | extensible | ContactEntityType |
Id | Grade | Path(s) | Details | Requirements |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
org-2 | error | Organization.address | An address of an organization can never be of use 'home' : where(use = 'home').empty() | |
org-3 | error | Organization.telecom | The telecom of an organization can never be of use 'home' : where(use = 'home').empty() | |
us-core-16 | error | Organization.identifier:NPI | NPI must be 10 digits : value.matches('^[0-9]{10}$') | |
us-core-17 | error | Organization.identifier:NPI | NPI check digit must be valid (Luhn algorithm check) : (((select(value.substring(0,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(1,1).toInteger())+(select(value.substring(2,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(3,1).toInteger())+(select(value.substring(4,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(5,1).toInteger())+(select(value.substring(6,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(7,1).toInteger())+(select(value.substring(8,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(9,1).toInteger()) + 24)mod 10=0) | |
us-core-18 | error | Organization.identifier:CLIA | CLIA number must be 10 digits with a letter "D" in third position : value.matches('^[0-9]{2}D[0-9]{7}$') | |
us-core-19 | error | Organization.identifier:NAIC | NAIC must be 5 digits : value.matches('^[0-9]{5}$') |
This structure is derived from Organization
Summary
Mandatory: 2 elements
Must-Support: 15 elements
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron
Below is an overview of the required Server RESTful FHIR interactions for this profile - for example, search and read operations - when supporting the US Core interactions to access this profile’s information (Profile Support + Interaction Support). Note that systems that support only US Core Profiles (Profile Only Support) are not required to support these interactions. See the US Core Server CapabilityStatement for a complete list of supported RESTful interactions for this IG.
The syntax used to describe the interactions is described here.
patient/Organization.rs
).The following search parameters and search parameter combinations SHALL be supported:
SHALL support searching by organization name using the name
search parameter:
GET [base]/Organization?name=[string]
Example:
Implementation Notes: Fetches a bundle of all Organization resources that match the name (how to search by string)
SHALL support searching organization based on text address using the address
search parameter:
GET [base]/Organization?address=[string]
Example:
Implementation Notes: Fetches a bundle of all Organization resources that match the address string (how to search by string)