NCPI FHIR Implementation Guide
0.2.0 - ci-build
NCPI FHIR Implementation Guide - Local Development build (v0.2.0). See the Directory of published versions
Official URL: https://nih-ncpi.github.io/ncpi-fhir-ig/StructureDefinition/ncpi-research-consortium | Version: 0.2.0 | |||
Draft as of 2023-08-08 | Computable Name: ResearchConsortium |
A FHIR Organization representing a single consortium of which one or more NCPI Research Studies is a member.
For those studies which are a part of a research consortium, a single NCPI Research Consortium resource should be used to represent the consortium and all related studies should point to the consortium using the sponsor property.
Each Consortium must have:
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 | |
name | 1..1 | string | Name used for the organization | |
Documentation for this format |
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 |
active | ?!Σ | 0..1 | boolean | Whether the organization's record is still in active use |
name | ΣC | 1..1 | string | Name used for the organization |
Documentation for this format |
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 |
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 | ||||
identifier | ΣC | 0..* | Identifier | Identifies this organization across multiple systems | ||||
active | ?!Σ | 0..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 | Σ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 | C | 0..* | ContactPoint | A contact detail for the organization | ||||
address | C | 0..* | Address | An address for the organization | ||||
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.type | example | OrganizationType | ||||
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() |
This structure is derived from Organization
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 | |
name | 1..1 | string | Name used for the organization | |
Documentation for this format |
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 |
active | ?!Σ | 0..1 | boolean | Whether the organization's record is still in active use |
name | ΣC | 1..1 | string | Name used for the organization |
Documentation for this format |
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 |
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 | ||||
identifier | ΣC | 0..* | Identifier | Identifies this organization across multiple systems | ||||
active | ?!Σ | 0..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 | Σ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 | C | 0..* | ContactPoint | A contact detail for the organization | ||||
address | C | 0..* | Address | An address for the organization | ||||
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.type | example | OrganizationType | ||||
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() |
This structure is derived from Organization
Other representations of profile: CSV, Excel, Schematron
The ResearchConsortium provides a clean organizational component to represent studies’ participation in a Consortium through the study’s sponsor property. This permits consortium member studies to be more easily found via standard FHIR searches.