This page is part of the FHIR Specification (v3.3.0: R4 Ballot 2). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3
Clinical Decision Support Work Group | Maturity Level: 2 | Trial Use | Compartments: Not linked to any defined compartments |
The Library resource is a general-purpose container for knowledge asset definitions. It can be used to describe and expose existing knowledge assets such as logic libraries and information model descriptions, as well as to describe a collection of knowledge assets.
The Library resource is a general purpose container for clinical knowledge assets. These assets may be defined using a non-FHIR representation, such as a shareable library of clinical logic, written in Clinical Quality Language (CQL), or the XML Schema for an information model, or they may be defined using FHIR resources such as the description of a protocol represented by a PlanDefinition resource. In addition to representing the metadata of the library, the resource has elements for tracking dependencies, as well as for representing the parameters and data requirements for any expression functionality provided by the library.
For non-FHIR assets, the actual content of the library is represented using the Attachment data type, and may either be referenced with a URL, or the content may be embedded as a base-64 encoded string. Either way, the contentType
element of the attachment is used to indicate the representation of the library content.
Note that because the library content may be embedded as well as be retrievable from an external repository via the attachment URL, the possibility exists for the embedded content to be different from the content on the repository. With proper versioning and governance, this should never occur, but to minimize the potential impact of this possibility, implementers SHALL give precedence to the embedded content of a library when it is present.
The Library resource is definitional in nature, meaning it is intended to represent shareable knowledge independent of any particular patient. This is in contrast to the DocumentReference resource, which captures non-FHIR content related to a specific patient, and the Media and Binary resources which capture multimedia content and raw binary content, respectively.
This resource is referenced by ActivityDefinition, Measure and PlanDefinition
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Library | TU | DomainResource | Represents a library of quality improvement components Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
url | Σ | 0..1 | uri | Canonical identifier for this library, represented as a URI (globally unique) |
identifier | Σ | 0..* | Identifier | Additional identifier for the library |
version | Σ | 0..1 | string | Business version of the library |
name | Σ | 0..1 | string | Name for this library (computer friendly) |
title | Σ | 0..1 | string | Name for this library (human friendly) |
subtitle | 0..1 | string | Subordinate title of the library | |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown PublicationStatus (Required) |
experimental | ?!Σ | 0..1 | boolean | For testing purposes, not real usage |
type | Σ | 1..1 | CodeableConcept | logic-library | model-definition | asset-collection | module-definition LibraryType (Extensible) |
subject[x] | 0..1 | Type of individual the library content is focused on SubjectType (Extensible) | ||
subjectCodeableConcept | CodeableConcept | |||
subjectReference | Reference(Group) | |||
date | Σ | 0..1 | dateTime | Date last changed |
publisher | Σ | 0..1 | string | Name of the publisher (organization or individual) |
contact | Σ | 0..* | ContactDetail | Contact details for the publisher |
description | Σ | 0..1 | markdown | Natural language description of the library |
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for library (if applicable) Jurisdiction ValueSet (Extensible) |
purpose | 0..1 | markdown | Why this library is defined | |
usage | 0..1 | string | Describes the clinical usage of the library | |
copyright | 0..1 | markdown | Use and/or publishing restrictions | |
approvalDate | 0..1 | date | When the library was approved by publisher | |
lastReviewDate | 0..1 | date | When the library was last reviewed | |
effectivePeriod | Σ | 0..1 | Period | When the library is expected to be used |
topic | 0..* | CodeableConcept | E.g. Education, Treatment, Assessment, etc. DefinitionTopic (Example) | |
contributor | 0..* | Contributor | A content contributor | |
relatedArtifact | 0..* | RelatedArtifact | Additional documentation, citations, etc. | |
parameter | 0..* | ParameterDefinition | Parameters defined by the library | |
dataRequirement | 0..* | DataRequirement | What data is referenced by this library | |
content | 0..* | Attachment | Contents of the library, either embedded or referenced | |
Documentation for this format |
UML Diagram (Legend)
XML Template
<Library xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <url value="[uri]"/><!-- 0..1 Canonical identifier for this library, represented as a URI (globally unique) --> <identifier><!-- 0..* Identifier Additional identifier for the library --></identifier> <version value="[string]"/><!-- 0..1 Business version of the library --> <name value="[string]"/><!-- 0..1 Name for this library (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this library (human friendly) --> <subtitle value="[string]"/><!-- 0..1 Subordinate title of the library --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage --> <type><!-- 1..1 CodeableConcept logic-library | model-definition | asset-collection | module-definition --></type> <subject[x]><!-- 0..1 CodeableConcept|Reference(Group) Type of individual the library content is focused on --></subject[x]> <date value="[dateTime]"/><!-- 0..1 Date last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the library --> <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for library (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this library is defined --> <usage value="[string]"/><!-- 0..1 Describes the clinical usage of the library --> <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions --> <approvalDate value="[date]"/><!-- 0..1 When the library was approved by publisher --> <lastReviewDate value="[date]"/><!-- 0..1 When the library was last reviewed --> <effectivePeriod><!-- 0..1 Period When the library is expected to be used --></effectivePeriod> <topic><!-- 0..* CodeableConcept E.g. Education, Treatment, Assessment, etc. --></topic> <contributor><!-- 0..* Contributor A content contributor --></contributor> <relatedArtifact><!-- 0..* RelatedArtifact Additional documentation, citations, etc. --></relatedArtifact> <parameter><!-- 0..* ParameterDefinition Parameters defined by the library --></parameter> <dataRequirement><!-- 0..* DataRequirement What data is referenced by this library --></dataRequirement> <content><!-- 0..* Attachment Contents of the library, either embedded or referenced --></content> </Library>
JSON Template
{ "resourceType" : "Library", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "url" : "<uri>", // Canonical identifier for this library, represented as a URI (globally unique) "identifier" : [{ Identifier }], // Additional identifier for the library "version" : "<string>", // Business version of the library "name" : "<string>", // Name for this library (computer friendly) "title" : "<string>", // Name for this library (human friendly) "subtitle" : "<string>", // Subordinate title of the library "status" : "<code>", // R! draft | active | retired | unknown "experimental" : <boolean>, // For testing purposes, not real usage "type" : { CodeableConcept }, // R! logic-library | model-definition | asset-collection | module-definition // subject[x]: Type of individual the library content is focused on. One of these 2: "subjectCodeableConcept" : { CodeableConcept }, "subjectReference" : { Reference(Group) }, "date" : "<dateTime>", // Date last changed "publisher" : "<string>", // Name of the publisher (organization or individual) "contact" : [{ ContactDetail }], // Contact details for the publisher "description" : "<markdown>", // Natural language description of the library "useContext" : [{ UsageContext }], // The context that the content is intended to support "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for library (if applicable) "purpose" : "<markdown>", // Why this library is defined "usage" : "<string>", // Describes the clinical usage of the library "copyright" : "<markdown>", // Use and/or publishing restrictions "approvalDate" : "<date>", // When the library was approved by publisher "lastReviewDate" : "<date>", // When the library was last reviewed "effectivePeriod" : { Period }, // When the library is expected to be used "topic" : [{ CodeableConcept }], // E.g. Education, Treatment, Assessment, etc. "contributor" : [{ Contributor }], // A content contributor "relatedArtifact" : [{ RelatedArtifact }], // Additional documentation, citations, etc. "parameter" : [{ ParameterDefinition }], // Parameters defined by the library "dataRequirement" : [{ DataRequirement }], // What data is referenced by this library "content" : [{ Attachment }] // Contents of the library, either embedded or referenced }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Library; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:Library.url [ uri ]; # 0..1 Canonical identifier for this library, represented as a URI (globally unique) fhir:Library.identifier [ Identifier ], ... ; # 0..* Additional identifier for the library fhir:Library.version [ string ]; # 0..1 Business version of the library fhir:Library.name [ string ]; # 0..1 Name for this library (computer friendly) fhir:Library.title [ string ]; # 0..1 Name for this library (human friendly) fhir:Library.subtitle [ string ]; # 0..1 Subordinate title of the library fhir:Library.status [ code ]; # 1..1 draft | active | retired | unknown fhir:Library.experimental [ boolean ]; # 0..1 For testing purposes, not real usage fhir:Library.type [ CodeableConcept ]; # 1..1 logic-library | model-definition | asset-collection | module-definition # Library.subject[x] : 0..1 Type of individual the library content is focused on. One of these 2 fhir:Library.subjectCodeableConcept [ CodeableConcept ] fhir:Library.subjectReference [ Reference(Group) ] fhir:Library.date [ dateTime ]; # 0..1 Date last changed fhir:Library.publisher [ string ]; # 0..1 Name of the publisher (organization or individual) fhir:Library.contact [ ContactDetail ], ... ; # 0..* Contact details for the publisher fhir:Library.description [ markdown ]; # 0..1 Natural language description of the library fhir:Library.useContext [ UsageContext ], ... ; # 0..* The context that the content is intended to support fhir:Library.jurisdiction [ CodeableConcept ], ... ; # 0..* Intended jurisdiction for library (if applicable) fhir:Library.purpose [ markdown ]; # 0..1 Why this library is defined fhir:Library.usage [ string ]; # 0..1 Describes the clinical usage of the library fhir:Library.copyright [ markdown ]; # 0..1 Use and/or publishing restrictions fhir:Library.approvalDate [ date ]; # 0..1 When the library was approved by publisher fhir:Library.lastReviewDate [ date ]; # 0..1 When the library was last reviewed fhir:Library.effectivePeriod [ Period ]; # 0..1 When the library is expected to be used fhir:Library.topic [ CodeableConcept ], ... ; # 0..* E.g. Education, Treatment, Assessment, etc. fhir:Library.contributor [ Contributor ], ... ; # 0..* A content contributor fhir:Library.relatedArtifact [ RelatedArtifact ], ... ; # 0..* Additional documentation, citations, etc. fhir:Library.parameter [ ParameterDefinition ], ... ; # 0..* Parameters defined by the library fhir:Library.dataRequirement [ DataRequirement ], ... ; # 0..* What data is referenced by this library fhir:Library.content [ Attachment ], ... ; # 0..* Contents of the library, either embedded or referenced ]
Changes since R3
Library | |
Library.subtitle |
|
Library.subject[x] |
|
See the Full Difference for further information
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Library | TU | DomainResource | Represents a library of quality improvement components Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
url | Σ | 0..1 | uri | Canonical identifier for this library, represented as a URI (globally unique) |
identifier | Σ | 0..* | Identifier | Additional identifier for the library |
version | Σ | 0..1 | string | Business version of the library |
name | Σ | 0..1 | string | Name for this library (computer friendly) |
title | Σ | 0..1 | string | Name for this library (human friendly) |
subtitle | 0..1 | string | Subordinate title of the library | |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown PublicationStatus (Required) |
experimental | ?!Σ | 0..1 | boolean | For testing purposes, not real usage |
type | Σ | 1..1 | CodeableConcept | logic-library | model-definition | asset-collection | module-definition LibraryType (Extensible) |
subject[x] | 0..1 | Type of individual the library content is focused on SubjectType (Extensible) | ||
subjectCodeableConcept | CodeableConcept | |||
subjectReference | Reference(Group) | |||
date | Σ | 0..1 | dateTime | Date last changed |
publisher | Σ | 0..1 | string | Name of the publisher (organization or individual) |
contact | Σ | 0..* | ContactDetail | Contact details for the publisher |
description | Σ | 0..1 | markdown | Natural language description of the library |
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for library (if applicable) Jurisdiction ValueSet (Extensible) |
purpose | 0..1 | markdown | Why this library is defined | |
usage | 0..1 | string | Describes the clinical usage of the library | |
copyright | 0..1 | markdown | Use and/or publishing restrictions | |
approvalDate | 0..1 | date | When the library was approved by publisher | |
lastReviewDate | 0..1 | date | When the library was last reviewed | |
effectivePeriod | Σ | 0..1 | Period | When the library is expected to be used |
topic | 0..* | CodeableConcept | E.g. Education, Treatment, Assessment, etc. DefinitionTopic (Example) | |
contributor | 0..* | Contributor | A content contributor | |
relatedArtifact | 0..* | RelatedArtifact | Additional documentation, citations, etc. | |
parameter | 0..* | ParameterDefinition | Parameters defined by the library | |
dataRequirement | 0..* | DataRequirement | What data is referenced by this library | |
content | 0..* | Attachment | Contents of the library, either embedded or referenced | |
Documentation for this format |
XML Template
<Library xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <url value="[uri]"/><!-- 0..1 Canonical identifier for this library, represented as a URI (globally unique) --> <identifier><!-- 0..* Identifier Additional identifier for the library --></identifier> <version value="[string]"/><!-- 0..1 Business version of the library --> <name value="[string]"/><!-- 0..1 Name for this library (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this library (human friendly) --> <subtitle value="[string]"/><!-- 0..1 Subordinate title of the library --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage --> <type><!-- 1..1 CodeableConcept logic-library | model-definition | asset-collection | module-definition --></type> <subject[x]><!-- 0..1 CodeableConcept|Reference(Group) Type of individual the library content is focused on --></subject[x]> <date value="[dateTime]"/><!-- 0..1 Date last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the library --> <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for library (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this library is defined --> <usage value="[string]"/><!-- 0..1 Describes the clinical usage of the library --> <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions --> <approvalDate value="[date]"/><!-- 0..1 When the library was approved by publisher --> <lastReviewDate value="[date]"/><!-- 0..1 When the library was last reviewed --> <effectivePeriod><!-- 0..1 Period When the library is expected to be used --></effectivePeriod> <topic><!-- 0..* CodeableConcept E.g. Education, Treatment, Assessment, etc. --></topic> <contributor><!-- 0..* Contributor A content contributor --></contributor> <relatedArtifact><!-- 0..* RelatedArtifact Additional documentation, citations, etc. --></relatedArtifact> <parameter><!-- 0..* ParameterDefinition Parameters defined by the library --></parameter> <dataRequirement><!-- 0..* DataRequirement What data is referenced by this library --></dataRequirement> <content><!-- 0..* Attachment Contents of the library, either embedded or referenced --></content> </Library>
JSON Template
{ "resourceType" : "Library", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "url" : "<uri>", // Canonical identifier for this library, represented as a URI (globally unique) "identifier" : [{ Identifier }], // Additional identifier for the library "version" : "<string>", // Business version of the library "name" : "<string>", // Name for this library (computer friendly) "title" : "<string>", // Name for this library (human friendly) "subtitle" : "<string>", // Subordinate title of the library "status" : "<code>", // R! draft | active | retired | unknown "experimental" : <boolean>, // For testing purposes, not real usage "type" : { CodeableConcept }, // R! logic-library | model-definition | asset-collection | module-definition // subject[x]: Type of individual the library content is focused on. One of these 2: "subjectCodeableConcept" : { CodeableConcept }, "subjectReference" : { Reference(Group) }, "date" : "<dateTime>", // Date last changed "publisher" : "<string>", // Name of the publisher (organization or individual) "contact" : [{ ContactDetail }], // Contact details for the publisher "description" : "<markdown>", // Natural language description of the library "useContext" : [{ UsageContext }], // The context that the content is intended to support "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for library (if applicable) "purpose" : "<markdown>", // Why this library is defined "usage" : "<string>", // Describes the clinical usage of the library "copyright" : "<markdown>", // Use and/or publishing restrictions "approvalDate" : "<date>", // When the library was approved by publisher "lastReviewDate" : "<date>", // When the library was last reviewed "effectivePeriod" : { Period }, // When the library is expected to be used "topic" : [{ CodeableConcept }], // E.g. Education, Treatment, Assessment, etc. "contributor" : [{ Contributor }], // A content contributor "relatedArtifact" : [{ RelatedArtifact }], // Additional documentation, citations, etc. "parameter" : [{ ParameterDefinition }], // Parameters defined by the library "dataRequirement" : [{ DataRequirement }], // What data is referenced by this library "content" : [{ Attachment }] // Contents of the library, either embedded or referenced }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Library; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:Library.url [ uri ]; # 0..1 Canonical identifier for this library, represented as a URI (globally unique) fhir:Library.identifier [ Identifier ], ... ; # 0..* Additional identifier for the library fhir:Library.version [ string ]; # 0..1 Business version of the library fhir:Library.name [ string ]; # 0..1 Name for this library (computer friendly) fhir:Library.title [ string ]; # 0..1 Name for this library (human friendly) fhir:Library.subtitle [ string ]; # 0..1 Subordinate title of the library fhir:Library.status [ code ]; # 1..1 draft | active | retired | unknown fhir:Library.experimental [ boolean ]; # 0..1 For testing purposes, not real usage fhir:Library.type [ CodeableConcept ]; # 1..1 logic-library | model-definition | asset-collection | module-definition # Library.subject[x] : 0..1 Type of individual the library content is focused on. One of these 2 fhir:Library.subjectCodeableConcept [ CodeableConcept ] fhir:Library.subjectReference [ Reference(Group) ] fhir:Library.date [ dateTime ]; # 0..1 Date last changed fhir:Library.publisher [ string ]; # 0..1 Name of the publisher (organization or individual) fhir:Library.contact [ ContactDetail ], ... ; # 0..* Contact details for the publisher fhir:Library.description [ markdown ]; # 0..1 Natural language description of the library fhir:Library.useContext [ UsageContext ], ... ; # 0..* The context that the content is intended to support fhir:Library.jurisdiction [ CodeableConcept ], ... ; # 0..* Intended jurisdiction for library (if applicable) fhir:Library.purpose [ markdown ]; # 0..1 Why this library is defined fhir:Library.usage [ string ]; # 0..1 Describes the clinical usage of the library fhir:Library.copyright [ markdown ]; # 0..1 Use and/or publishing restrictions fhir:Library.approvalDate [ date ]; # 0..1 When the library was approved by publisher fhir:Library.lastReviewDate [ date ]; # 0..1 When the library was last reviewed fhir:Library.effectivePeriod [ Period ]; # 0..1 When the library is expected to be used fhir:Library.topic [ CodeableConcept ], ... ; # 0..* E.g. Education, Treatment, Assessment, etc. fhir:Library.contributor [ Contributor ], ... ; # 0..* A content contributor fhir:Library.relatedArtifact [ RelatedArtifact ], ... ; # 0..* Additional documentation, citations, etc. fhir:Library.parameter [ ParameterDefinition ], ... ; # 0..* Parameters defined by the library fhir:Library.dataRequirement [ DataRequirement ], ... ; # 0..* What data is referenced by this library fhir:Library.content [ Attachment ], ... ; # 0..* Contents of the library, either embedded or referenced ]
Changes since DSTU2
Library | |
Library.subtitle |
|
Library.subject[x] |
|
See the Full Difference for further information
Alternate definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions & the dependency analysis
Path | Definition | Type | Reference |
---|---|---|---|
Library.status | The lifecycle status of an artifact. | Required | PublicationStatus |
Library.type | The type of knowledge asset this library contains | Extensible | LibraryType |
Library.subject[x] | The possible types of subjects for a library (E.g. Patient, Practitioner, Organization, Location, etc.) | Extensible | SubjectType |
Library.jurisdiction | Countries and regions within which this artifact is targeted for use | Extensible | Jurisdiction ValueSet |
Library.topic | High-level categorization of the definition, used for searching, sorting, and filtering | Example | DefinitionTopic |
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Expression | In Common |
composed-of | reference | What resource is being referenced | Library.relatedArtifact.where(type='composed-of').resource | |
date | date | The library publication date | Library.date | |
depends-on | reference | What resource is being referenced | Library.relatedArtifact.where(type='depends-on').resource | |
derived-from | reference | What resource is being referenced | Library.relatedArtifact.where(type='derived-from').resource | |
description | string | The description of the library | Library.description | |
effective | date | The time during which the library is intended to be in use | Library.effectivePeriod | |
identifier | token | External identifier for the library | Library.identifier | |
jurisdiction | token | Intended jurisdiction for the library | Library.jurisdiction | |
name | string | Computationally friendly name of the library | Library.name | |
predecessor | reference | What resource is being referenced | Library.relatedArtifact.where(type='predecessor').resource | |
publisher | string | Name of the publisher of the library | Library.publisher | |
status | token | The current status of the library | Library.status | |
successor | reference | What resource is being referenced | Library.relatedArtifact.where(type='successor').resource | |
title | string | The human-friendly name of the library | Library.title | |
topic | token | Topics associated with the module | Library.topic | |
type | token | The type of the library (e.g. logic-library, model-definition, asset-collection, module-definition) | Library.type | |
url | uri | The uri that identifies the library | Library.url | |
version | token | The business version of the library | Library.version |