View raw Markdown
type: resource-definitionsresource: Library

Library Definitions

<a id="Library"></a>

Library

Represents a library of quality improvement components

Definition: The Library resource is a general-purpose container for knowledge artifact definitions. It can be used to describe and expose existing knowledge artifacts such as logic libraries and information model descriptions, as well as to describe a collection of knowledge artifacts.

Cardinality: 0..*

Constraints: cnl-0 | warning | Name should be usable as an identifier for the module by machine processing applications such as code generation | name.exists() implies name.matches('^A-Z{1,254}$')

Mappings: rim=Act[classCode=GROUPER;moodCode=EVN]; w5=clinical.general

<a id="Library.url"></a>

Library.url

Canonical identifier for this library, represented as a URI (globally unique)

Definition: An absolute URI that is used to identify this library when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this library is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the library is stored on different servers.

Comments: Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.

The determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in Technical and Business Versions.

In some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the meta.source element to indicate where the current master source of the resource can be found.

Requirements: Allows the library to be referenced by a single globally unique identifier.

Cardinality: 0..1

Type: uri

Summary: true

Constraints: cnl-1 | warning | URL should not contain | or # - these characters make processing canonical references problematic | exists() implies matches('^[^|# ]+$')

Mappings: w5=FiveWs.identifier; rim=.identifier[scope=BUSN;reliability=ISS]

<a id="Library.identifier"></a>

Library.identifier

Additional identifier for the library

Definition: A formal identifier that is used to identify this library when it is represented in other formats, or referenced in a specification, model, design or an instance. e.g. CMS or NQF identifiers for a measure artifact. Note that at least one identifier is required for non-experimental active artifacts.

Requirements: Allows externally provided and/or usable business identifiers to be easily associated with the module.

Cardinality: 0..*

Type: Identifier

Summary: true

Mappings: w5=FiveWs.identifier; rim=.identifier; objimpl=no-gen-base

<a id="Library.version"></a>

Library.version

Business version of the library

Definition: The identifier that is used to identify this version of the library when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the library author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge artifacts, refer to the Decision Support Service specification. Note that a version is required for non-experimental active artifacts.

Comments: There may be different library instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the library with the format [url]|[version]. The version SHOULD NOT contain a '#' - see Business Version.

Cardinality: 0..1

Type: string

Summary: true

Mappings: w5=FiveWs.version; rim=N/A (to add?); objimpl=no-gen-base

<a id="Library.versionAlgorithm[x]"></a>

Library.versionAlgorithm[x]

How to compare versions

Definition: Indicates the mechanism used to compare versions to determine which is more current.

Comments: If set as a string, this is a FHIRPath expression that has two additional context variables passed in - %version1 and %version2 and will return a negative number if version1 is newer, a positive number if version2 and a 0 if the version ordering can't be successfully be determined.

Cardinality: 0..1

Type: string, Coding

Binding: extensible:version-algorithm

Summary: true

Mappings: w5=FiveWs.version; rim=N/A (to add?); objimpl=no-gen-base

<a id="Library.name"></a>

Library.name

Name for this library (computer friendly)

Definition: A natural language name identifying the library. This name should be usable as an identifier for the module by machine processing applications such as code generation.

Comments: The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.

Requirements: Support human navigation and code generation.

Conditions: cnl-0

Cardinality: 0..1

Type: string

Summary: true

Mappings: rim=N/A

<a id="Library.title"></a>

Library.title

Name for this library (human friendly)

Definition: A short, descriptive, user-friendly title for the library.

Comments: This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.

Cardinality: 0..1

Type: string

Summary: true

Mappings: rim=.title

<a id="Library.subtitle"></a>

Library.subtitle

Subordinate title of the library

Definition: An explanatory or alternate title for the library giving additional information about its content.

Cardinality: 0..1

Type: string

Mappings: rim=N/A

<a id="Library.status"></a>

Library.status

draft | active | retired | unknown

Definition: The status of this library. Enables tracking the life-cycle of the content.

Comments: Allows filtering of libraries that are appropriate for use vs. not.

See guidance around (not) making local changes to elements here.

Cardinality: 1..1

Type: code

Binding: required:publication-status

Summary: true

Is Modifier: true (Reason: This is labeled as "Is Modifier" because applications should not use a retired {{title}} without due consideration)

Mappings: w5=FiveWs.status; rim=.status

<a id="Library.experimental"></a>

Library.experimental

For testing only - never for real usage

Definition: A Boolean value to indicate that this library is authored for testing purposes (or education/evaluation/marketing) and no version of this resource will ever be intended for genuine usage.

Comments: Allows filtering of librarys that are appropriate for use versus not. Experimental resources might include example instances in implementation guides, instances created solely for testing purposes, etc. If experimental is 'true' for any version of a resource, it should be true for all versions of the resource. (If experimental changes, then it is being misused or a resource that was never intended for real-world use has unexpectedly changed its purpose.).

Experimental resources are not expected to be stable and may well have breaking changes without a corresponding change to the 'version' element.

Requirements: Enables experimental content to be developed following the same lifecycle that would be used for a production-level library.

Meaning if Missing: If absent, this resource is treated as though it is not experimental.

Cardinality: 0..1

Type: boolean

Summary: true

Mappings: w5=FiveWs.class; rim=N/A (to add?)

<a id="Library.type"></a>

Library.type

logic-library | model-definition | asset-collection | module-definition | etc.

Definition: Identifies the type of library such as a Logic Library, Model Definition, Asset Collection, or Module Definition.

Cardinality: 1..1

Type: CodeableConcept

Binding: extensible:library-type

Summary: true

Mappings: w5=FiveWs.what[x]; rim=.code

<a id="Library.subject[x]"></a>

Library.subject[x]

Type of individual the library content is focused on

Definition: A code or group definition that describes the intended subject of the contents of the library.

Meaning if Missing: Patient

Cardinality: 0..1

Type: CodeableConcept, Reference(Group)

Binding: extensible:participant-resource-types

Mappings: rim=N/A

<a id="Library.date"></a>

Library.date

Date last changed

Definition: The date (and optionally time) when the library was last significantly changed. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the library changes.

Comments: The date is often not tracked until the resource is published, but may be present on draft content. Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the library. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.

See guidance around (not) making local changes to elements here.

Aliases: Revision Date

Cardinality: 0..1

Type: dateTime

Summary: true

Mappings: w5=FiveWs.recorded; rim=.participation[typeCode=AUT].time

<a id="Library.publisher"></a>

Library.publisher

Name of the publisher/steward (organization or individual)

Definition: The name of the organization or individual responsible for the release and ongoing maintenance of the library.

Comments: Usually an organization but may be an individual. The publisher (or steward) of the library is the organization or individual primarily responsible for the maintenance and upkeep of the library. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the library. This item SHOULD be populated unless the information is available from context.

Requirements: Helps establish the "authority/credibility" of the library. May also allow for contact.

Cardinality: 0..1

Type: string

Summary: true

Mappings: w5=FiveWs.witness; rim=.participation[typeCode=AUT].role

<a id="Library.contact"></a>

Library.contact

Contact details for the publisher

Definition: Contact details to assist a user in finding and communicating with the publisher.

Comments: May be a web site, an email address, a telephone number, etc.

See guidance around (not) making local changes to elements here.

Cardinality: 0..*

Type: ContactDetail

Summary: true

Mappings: rim=.participation[typeCode=CALLBCK].role

<a id="Library.description"></a>

Library.description

Natural language description of the library

Definition: A free text natural language description of the library from a consumer's perspective.

Comments: This description can be used to capture details such as comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the library as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the library is presumed to be the predominant language in the place the library was created).

Cardinality: 0..1

Type: markdown

Summary: true

Mappings: rim=.text

<a id="Library.useContext"></a>

Library.useContext

The context that the content is intended to support

Definition: The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate library instances.

Comments: When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.

Requirements: Assist in searching for appropriate content.

Cardinality: 0..*

Type: UsageContext

Summary: true

Mappings: rim=N/A (to add?)

<a id="Library.jurisdiction"></a>

Library.jurisdiction

Jurisdiction of the authority that maintains the library (if applicable)

Definition: A legal or geographic region in which the authority that maintains the resource is operating. In general, the jurisdiction is also found in the useContext. The useContext may reference additional jurisdictions because the defining jurisdiction does not necessarily limit the jurisdictions of use.

Comments: It may be possible for the library to be used in jurisdictions other than those for which it was originally designed or intended.

DEPRECATION NOTE: For consistency, implementations are encouraged to migrate to using the new 'jurisdiction' code in the useContext element. (I.e. useContext.code indicating http://terminology.hl7.org/CodeSystem/usage-context-type#jurisdiction and useContext.valueCodeableConcept indicating the jurisdiction.)

Cardinality: 0..*

Type: CodeableConcept

Binding: extensible:jurisdiction

Summary: true

Mappings: rim=N/A (to add?)

<a id="Library.purpose"></a>

Library.purpose

Why this library is defined

Definition: Explanation of why this library is needed and why it has been designed as it has.

Comments: This element does not describe the usage of the library. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this library.

Cardinality: 0..1

Type: markdown

Mappings: w5=FiveWs.why[x]; rim=.reasonCode.text; objimpl=no-gen-base

<a id="Library.usage"></a>

Library.usage

Describes the clinical usage of the library

Definition: A detailed description of how the library is used from a clinical perspective.

Cardinality: 0..1

Type: markdown

Mappings: rim=N/A (to add?)

<a id="Library.copyright"></a>

Library.copyright

Notice about intellectual property ownership, can include restrictions on use

Definition: A copyright statement relating to the library and/or its contents. Copyright statements are notices of intellectual property ownership and can include restrictions on the use and publishing of the library.

Comments: The short copyright declaration (e.g. (c) '2015+ xyz organization') should be sent in the copyrightLabel element without the copyright prefix (i.e., do not include '(c)' or the symbol).

Requirements: Consumers must be able to determine any legal restrictions on the use of the library and/or its content.

Aliases: License, Restrictions

Cardinality: 0..1

Type: markdown

Mappings: rim=N/A (to add?); objimpl=no-gen-base

<a id="Library.copyrightLabel"></a>

Library.copyrightLabel

Copyright holder and year(s)

Definition: A short string (<50 characters), suitable for inclusion in a page footer that identifies the copyright holder, effective period, and optionally whether rights are restricted. (e.g. 'All rights reserved', 'Some rights reserved').

Comments: The copyright symbol and the '(c)' textual representation SHOULD NOT be included in this string. It will be added by software when rendering the notation. Full details about licensing, restrictions, warrantees, etc. goes in the more general 'copyright' element.

Requirements: Defines the content expected to be rendered in all representations of the artifact.

Cardinality: 0..1

Type: string

Mappings: rim=N/A (to add?); objimpl=no-gen-base

<a id="Library.approvalDate"></a>

Library.approvalDate

When the library was approved by publisher

Definition: The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.

Comments: The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.

See guidance around (not) making local changes to elements here.

Cardinality: 0..1

Type: date

Mappings: rim=.outboundRelationship[typeCode="SUBJ"].act[classCode=CACT;moodCode=EVN;code="approval"].effectiveTime; objimpl=no-gen-base

<a id="Library.lastReviewDate"></a>

Library.lastReviewDate

When the library was last reviewed by the publisher

Definition: The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.

Comments: If specified, this date follows the original approval date.

See guidance around (not) making local changes to elements here.

Requirements: Gives a sense of how "current" the content is. Resources that have not been reviewed in a long time may have a risk of being less appropriate/relevant.

Cardinality: 0..1

Type: date

Mappings: rim=.outboundRelationship[typeCode="SUBJ"; subsetCode="RECENT"].act[classCode=CACT;moodCode=EVN;code="review"].effectiveTime; objimpl=no-gen-base

<a id="Library.effectivePeriod"></a>

Library.effectivePeriod

When the library is expected to be used

Definition: The period during which the library content was or is planned to be in active use.

Comments: The effective period for a library determines when the content is applicable for usage and is independent of publication and review dates. For example, a library intended to be used for the year 2016 might be published in 2015.

See guidance around (not) making local changes to elements here.

Requirements: Allows establishing a transition before a resource comes into effect and also allows for a sunsetting process when new versions of the library are or are expected to be used instead.

Cardinality: 0..1

Type: Period

Summary: true

Mappings: rim=N/A (to add?); objimpl=no-gen-base

<a id="Library.topic"></a>

Library.topic

E.g. Education, Treatment, Assessment, etc

Definition: Descriptive topics related to the content of the library. Topics provide a high-level categorization of the library that can be useful for filtering and searching.

Comments: DEPRECATION NOTE: For consistency, implementations are encouraged to migrate to using the new 'topic' code in the useContext element. (I.e. useContext.code indicating http://terminology.hl7.org/CodeSystem/usage-context-type#topic and useContext.valueCodeableConcept indicating the topic)

Requirements: Repositories must be able to determine how to categorize the library so that it can be found by topical searches.

Cardinality: 0..*

Type: CodeableConcept

Binding: example:definition-topic

Mappings: rim=N/A (to add?)

<a id="Library.author"></a>

Library.author

Who authored the content

Definition: An individiual or organization primarily involved in the creation and maintenance of the content.

Cardinality: 0..*

Type: ContactDetail

Mappings: rim=.participation[typeCode=AUT]

<a id="Library.editor"></a>

Library.editor

Who edited the content

Definition: An individual or organization primarily responsible for internal coherence of the content.

Cardinality: 0..*

Type: ContactDetail

Mappings: rim=.participation[typeCode=AUT]

<a id="Library.reviewer"></a>

Library.reviewer

Who reviewed the content

Definition: An individual or organization asserted by the publisher to be primarily responsible for review of some aspect of the content.

Comments: See guidance around (not) making local changes to elements here.

Cardinality: 0..*

Type: ContactDetail

Mappings: rim=.participation[typeCode=VRF] {not clear whether VRF best corresponds to reviewer or endorser}

<a id="Library.endorser"></a>

Library.endorser

Who endorsed the content

Definition: An individual or organization asserted by the publisher to be responsible for officially endorsing the content for use in some setting.

Comments: See guidance around (not) making local changes to elements here.

Cardinality: 0..*

Type: ContactDetail

Mappings: rim=.participation[typeCode=VRF] {not clear whether VRF best corresponds to reviewer or endorser}

<a id="Library.relatedArtifact"></a>

Library.relatedArtifact

Additional documentation, citations, etc

Definition: Related artifacts such as additional documentation, justification, or bibliographic references.

Comments: Each related artifact is either an attachment, or a reference to another resource, but not both. In addition, the successor or predecessor of a Library SHOULD be a Library, and dependencies and components of a Library SHOULD reference a resource.

Requirements: Libraries must be able to provide enough information for consumers of the content (and/or interventions or results produced by the content) to be able to determine and understand the justification for and evidence in support of the content.

Cardinality: 0..*

Type: RelatedArtifact

Constraints: lib-2 | warning | Dependencies and components of a Library should reference a resource | type in ('depends-on' | 'composed-of' | 'part-of') implies ((resource.exists() xor resourceReference.exists()) or (artifact is canonical xor artifact is Reference))

Mappings: rim=.outboundRelationship[typeCode=DOC,RSON,PREV, DRIV, USE, COMP] {successor would be PREV w/ inversionInd=true; No support for citation}

<a id="Library.parameter"></a>

Library.parameter

Parameters defined by the library

Definition: The parameter element defines parameters used by the library.

Cardinality: 0..*

Type: ParameterDefinition

Mappings: rim=N/A (to add?)

<a id="Library.dataRequirement"></a>

Library.dataRequirement

What data is referenced by this library

Definition: Describes a set of data that must be provided in order to be able to successfully perform the computations defined by the library.

Cardinality: 0..*

Type: DataRequirement

Mappings: rim=N/A (to add?)

<a id="Library.content"></a>

Library.content

Contents of the library, either embedded or referenced

Definition: The content of the library as an Attachment. The content may be a reference to a url, or may be directly embedded as a base-64 string. Either way, the contentType of the attachment determines how to interpret the content.

Cardinality: 0..*

Type: Attachment

Summary: true

Mappings: rim=.text