Canonical Resource Management Infrastructure Implementation Guide, published by HL7 International / Clinical Decision Support. This guide is not an authorized publication; it is the continuous build for version 1.1.0-cibuild built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/crmi-ig/ and changes regularly. See the Directory of published versions
Official URL: http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-moduledefinitionlibrary | Version: 1.1.0-cibuild | |||
Standards status: Trial-use | Maturity Level: 3 | Computable Name: CRMIModuleDefinitionLibrary | ||
Other Identifiers: OID:2.16.840.1.113883.4.642.40.38.42.29 |
The CRMI Module Definition Library profile defines the must support elements for a library that communicates the effective data requirements and dependencies of an artifact (or set of artifacts). This is most commonly used as the result of a $data-requirements operation, but could also be persisted statically as a way to persist the calculation of effective data requirements for a specific artifact and input parameters
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Library
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Library | 0..* | Library | Represents a library of quality improvement components | |
Slices for extension | Content/Rules for all slices | |||
directReferenceCode | S | 0..* | Coding | A code directly referenced by the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode |
logicDefinition | S | 0..* | (Complex) | A logic definition used in the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition |
inputParameters | S | 0..1 | Reference(Parameters) | What parameters URL: http://hl7.org/fhir/StructureDefinition/cqf-inputParameters |
type | S | 1..1 | CodeableConcept | logic-library | model-definition | asset-collection | module-definition Required Pattern: At least the following |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/library-type | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: module-definition | |
subject[x] | S | 0..1 | CodeableConcept, Reference(Group) | Type of individual the library content is focused on |
relatedArtifact | S | 0..* | RelatedArtifact | Dependencies used by the artifact |
parameter | S | 0..* | ParameterDefinition | Parameters defined by the library |
Slices for extension | Content/Rules for all slices | |||
defaultValue | S | 0..1 | string, boolean, integer, decimal, date, dateTime, Coding, CodeableConcept, Period, Range, Quantity, Ratio | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-defaultValue |
dataRequirement | S | 0..* | DataRequirement | What data is referenced by this library |
Slices for extension | Content/Rules for all slices | |||
isSelective | S | 0..1 | boolean | specifies whether a given DataRequirement is "selective" URL: http://hl7.org/fhir/StructureDefinition/cqf-isSelective |
valueFilter | S | 0..* | (Complex) | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-valueFilter |
fhirQueryPattern | 0..* | string | What FHIR query? URL: http://hl7.org/fhir/StructureDefinition/cqf-fhirQueryPattern | |
content | 0..0 | |||
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Library | C | 0..* | Library | Represents a library of quality improvement components lib-0: Name should be usable as an identifier for the module by machine processing applications such as code generation |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | Content/Rules for all slices | |||
directReferenceCode | S | 0..* | Coding | A code directly referenced by the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode |
logicDefinition | S | 0..* | (Complex) | A logic definition used in the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition |
inputParameters | S | 0..1 | Reference(Parameters) | What parameters URL: http://hl7.org/fhir/StructureDefinition/cqf-inputParameters |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
type | SΣ | 1..1 | CodeableConcept | logic-library | model-definition | asset-collection | module-definition Binding: LibraryType (extensible): The type of knowledge asset this library contains. Required Pattern: At least the following |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/library-type | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: module-definition | |
subject[x] | S | 0..1 | Type of individual the library content is focused on Binding: SubjectType (extensible): The possible types of subjects for a library (E.g. Patient, Practitioner, Organization, Location, etc.). | |
subjectCodeableConcept | CodeableConcept | |||
subjectReference | Reference(Group) | |||
relatedArtifact | S | 0..* | RelatedArtifact | Dependencies used by the artifact |
parameter | S | 0..* | ParameterDefinition | Parameters defined by the library |
Slices for extension | Content/Rules for all slices | |||
defaultValue | S | 0..1 | string, boolean, integer, decimal, date, dateTime, Coding, CodeableConcept, Period, Range, Quantity, Ratio | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-defaultValue |
use | Σ | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether the parameter is input or output. |
type | Σ | 1..1 | code | What type of value Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. |
dataRequirement | S | 0..* | DataRequirement | What data is referenced by this library |
Slices for extension | Content/Rules for all slices | |||
isSelective | S | 0..1 | boolean | specifies whether a given DataRequirement is "selective" URL: http://hl7.org/fhir/StructureDefinition/cqf-isSelective |
valueFilter | S | 0..* | (Complex) | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-valueFilter |
fhirQueryPattern | 0..* | string | What FHIR query? URL: http://hl7.org/fhir/StructureDefinition/cqf-fhirQueryPattern | |
type | Σ | 1..1 | code | The type of the required data Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Library.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.0.1 from the FHIR Standard | |
Library.type | extensible | Pattern: module-definitionhttp://hl7.org/fhir/ValueSet/library-type from the FHIR Standard | |
Library.subject[x] | extensible | SubjectTypehttp://hl7.org/fhir/ValueSet/subject-type from the FHIR Standard | |
Library.parameter.use | required | OperationParameterUsehttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
Library.parameter.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | |
Library.dataRequirement.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Library | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Library | 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 | Library | 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 | Library | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Library | 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() | |
lib-0 | warning | Library | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Library | C | 0..* | Library | Represents a library of quality improvement components lib-0: Name should be usable as an identifier for the module by machine processing applications such as code generation | ||||
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 | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
directReferenceCode | S | 0..* | Coding | A code directly referenced by the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode | ||||
logicDefinition | S | 0..* | (Complex) | A logic definition used in the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition | ||||
inputParameters | S | 0..1 | Reference(Parameters) | What parameters URL: http://hl7.org/fhir/StructureDefinition/cqf-inputParameters | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
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 | ΣC | 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 Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage | ||||
type | SΣ | 1..1 | CodeableConcept | logic-library | model-definition | asset-collection | module-definition Binding: LibraryType (extensible): The type of knowledge asset this library contains. Required Pattern: At least the following | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/library-type | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: module-definition | |||||
display | 0..1 | string | Representation defined by the system | |||||
userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |||||
text | 0..1 | string | Plain text representation of the concept | |||||
subject[x] | S | 0..1 | Type of individual the library content is focused on Binding: SubjectType (extensible): The possible types of subjects for a library (E.g. Patient, Practitioner, Organization, Location, etc.). | |||||
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) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use. | ||||
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. Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering. | |||||
author | 0..* | ContactDetail | Who authored the content | |||||
editor | 0..* | ContactDetail | Who edited the content | |||||
reviewer | 0..* | ContactDetail | Who reviewed the content | |||||
endorser | 0..* | ContactDetail | Who endorsed the content | |||||
relatedArtifact | S | 0..* | RelatedArtifact | Dependencies used by the artifact | ||||
parameter | S | 0..* | ParameterDefinition | Parameters defined by the library | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
defaultValue | S | 0..1 | string, boolean, integer, decimal, date, dateTime, Coding, CodeableConcept, Period, Range, Quantity, Ratio | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-defaultValue | ||||
name | Σ | 0..1 | code | Name used to access the parameter value | ||||
use | Σ | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether the parameter is input or output. | ||||
min | Σ | 0..1 | integer | Minimum cardinality | ||||
max | Σ | 0..1 | string | Maximum cardinality (a number of *) | ||||
documentation | Σ | 0..1 | string | A brief description of the parameter | ||||
type | Σ | 1..1 | code | What type of value Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | ||||
profile | Σ | 0..1 | canonical(StructureDefinition) | What profile the value is expected to be | ||||
dataRequirement | S | 0..* | DataRequirement | What data is referenced by this library | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
isSelective | S | 0..1 | boolean | specifies whether a given DataRequirement is "selective" URL: http://hl7.org/fhir/StructureDefinition/cqf-isSelective | ||||
valueFilter | S | 0..* | (Complex) | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-valueFilter | ||||
fhirQueryPattern | 0..* | string | What FHIR query? URL: http://hl7.org/fhir/StructureDefinition/cqf-fhirQueryPattern | |||||
type | Σ | 1..1 | code | The type of the required data Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | ||||
profile | Σ | 0..* | canonical(StructureDefinition) | The profile of the required data | ||||
subject[x] | Σ | 0..1 | E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device Binding: SubjectType (extensible): The possible types of subjects for a data requirement (E.g., Patient, Practitioner, Organization, Location, etc.). | |||||
subjectCodeableConcept | CodeableConcept | |||||||
subjectReference | Reference(Group) | |||||||
mustSupport | Σ | 0..* | string | Indicates specific structure elements that are referenced by the knowledge module | ||||
codeFilter | ΣC | 0..* | Element | What codes are expected drq-1: Either a path or a searchParam must be provided, but not both | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
path | Σ | 0..1 | string | A code-valued attribute to filter on | ||||
searchParam | Σ | 0..1 | string | A coded (token) parameter to search on | ||||
valueSet | Σ | 0..1 | canonical(ValueSet) | Valueset for the filter | ||||
code | Σ | 0..* | Coding | What code is expected | ||||
dateFilter | ΣC | 0..* | Element | What dates/date ranges are expected drq-2: Either a path or a searchParam must be provided, but not both | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
path | Σ | 0..1 | string | A date-valued attribute to filter on | ||||
searchParam | Σ | 0..1 | string | A date valued parameter to search on | ||||
value[x] | Σ | 0..1 | The value of the filter, as a Period, DateTime, or Duration value | |||||
valueDateTime | dateTime | |||||||
valuePeriod | Period | |||||||
valueDuration | Duration | |||||||
limit | Σ | 0..1 | positiveInt | Number of results | ||||
sort | Σ | 0..* | Element | Order of the results | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
path | Σ | 1..1 | string | The name of the attribute to perform the sort | ||||
direction | Σ | 1..1 | code | ascending | descending Binding: SortDirection (required): The possible sort directions, ascending or descending. | ||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
Library.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Library.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.0.1 from the FHIR Standard | ||||
Library.type | extensible | Pattern: module-definitionhttp://hl7.org/fhir/ValueSet/library-type from the FHIR Standard | ||||
Library.subject[x] | extensible | SubjectTypehttp://hl7.org/fhir/ValueSet/subject-type from the FHIR Standard | ||||
Library.jurisdiction | extensible | Jurisdiction ValueSethttp://hl7.org/fhir/ValueSet/jurisdiction from the FHIR Standard | ||||
Library.topic | example | DefinitionTopichttp://hl7.org/fhir/ValueSet/definition-topic from the FHIR Standard | ||||
Library.parameter.use | required | OperationParameterUsehttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
Library.parameter.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
Library.dataRequirement.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
Library.dataRequirement.subject[x] | extensible | SubjectTypehttp://hl7.org/fhir/ValueSet/subject-type from the FHIR Standard | ||||
Library.dataRequirement.sort.direction | required | SortDirectionhttp://hl7.org/fhir/ValueSet/sort-direction|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Library | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Library | 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 | Library | 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 | Library | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Library | A resource should have narrative for robust management : text.`div`.exists() | |
drq-1 | error | Library.dataRequirement.codeFilter | Either a path or a searchParam must be provided, but not both : path.exists() xor searchParam.exists() | |
drq-2 | error | Library.dataRequirement.dateFilter | Either a path or a searchParam must be provided, but not both : path.exists() xor searchParam.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() | |
lib-0 | warning | Library | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') |
This structure is derived from Library
Summary
Mandatory: 1 element
Must-Support: 11 elements
Prohibited: 1 element
Extensions
This structure refers to these extensions:
Maturity: 3
Differential View
This structure is derived from Library
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Library | 0..* | Library | Represents a library of quality improvement components | |
Slices for extension | Content/Rules for all slices | |||
directReferenceCode | S | 0..* | Coding | A code directly referenced by the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode |
logicDefinition | S | 0..* | (Complex) | A logic definition used in the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition |
inputParameters | S | 0..1 | Reference(Parameters) | What parameters URL: http://hl7.org/fhir/StructureDefinition/cqf-inputParameters |
type | S | 1..1 | CodeableConcept | logic-library | model-definition | asset-collection | module-definition Required Pattern: At least the following |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/library-type | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: module-definition | |
subject[x] | S | 0..1 | CodeableConcept, Reference(Group) | Type of individual the library content is focused on |
relatedArtifact | S | 0..* | RelatedArtifact | Dependencies used by the artifact |
parameter | S | 0..* | ParameterDefinition | Parameters defined by the library |
Slices for extension | Content/Rules for all slices | |||
defaultValue | S | 0..1 | string, boolean, integer, decimal, date, dateTime, Coding, CodeableConcept, Period, Range, Quantity, Ratio | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-defaultValue |
dataRequirement | S | 0..* | DataRequirement | What data is referenced by this library |
Slices for extension | Content/Rules for all slices | |||
isSelective | S | 0..1 | boolean | specifies whether a given DataRequirement is "selective" URL: http://hl7.org/fhir/StructureDefinition/cqf-isSelective |
valueFilter | S | 0..* | (Complex) | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-valueFilter |
fhirQueryPattern | 0..* | string | What FHIR query? URL: http://hl7.org/fhir/StructureDefinition/cqf-fhirQueryPattern | |
content | 0..0 | |||
Documentation for this format |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Library | C | 0..* | Library | Represents a library of quality improvement components lib-0: Name should be usable as an identifier for the module by machine processing applications such as code generation |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | Content/Rules for all slices | |||
directReferenceCode | S | 0..* | Coding | A code directly referenced by the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode |
logicDefinition | S | 0..* | (Complex) | A logic definition used in the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition |
inputParameters | S | 0..1 | Reference(Parameters) | What parameters URL: http://hl7.org/fhir/StructureDefinition/cqf-inputParameters |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
type | SΣ | 1..1 | CodeableConcept | logic-library | model-definition | asset-collection | module-definition Binding: LibraryType (extensible): The type of knowledge asset this library contains. Required Pattern: At least the following |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/library-type | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: module-definition | |
subject[x] | S | 0..1 | Type of individual the library content is focused on Binding: SubjectType (extensible): The possible types of subjects for a library (E.g. Patient, Practitioner, Organization, Location, etc.). | |
subjectCodeableConcept | CodeableConcept | |||
subjectReference | Reference(Group) | |||
relatedArtifact | S | 0..* | RelatedArtifact | Dependencies used by the artifact |
parameter | S | 0..* | ParameterDefinition | Parameters defined by the library |
Slices for extension | Content/Rules for all slices | |||
defaultValue | S | 0..1 | string, boolean, integer, decimal, date, dateTime, Coding, CodeableConcept, Period, Range, Quantity, Ratio | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-defaultValue |
use | Σ | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether the parameter is input or output. |
type | Σ | 1..1 | code | What type of value Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. |
dataRequirement | S | 0..* | DataRequirement | What data is referenced by this library |
Slices for extension | Content/Rules for all slices | |||
isSelective | S | 0..1 | boolean | specifies whether a given DataRequirement is "selective" URL: http://hl7.org/fhir/StructureDefinition/cqf-isSelective |
valueFilter | S | 0..* | (Complex) | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-valueFilter |
fhirQueryPattern | 0..* | string | What FHIR query? URL: http://hl7.org/fhir/StructureDefinition/cqf-fhirQueryPattern | |
type | Σ | 1..1 | code | The type of the required data Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Library.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.0.1 from the FHIR Standard | |
Library.type | extensible | Pattern: module-definitionhttp://hl7.org/fhir/ValueSet/library-type from the FHIR Standard | |
Library.subject[x] | extensible | SubjectTypehttp://hl7.org/fhir/ValueSet/subject-type from the FHIR Standard | |
Library.parameter.use | required | OperationParameterUsehttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
Library.parameter.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | |
Library.dataRequirement.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Library | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Library | 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 | Library | 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 | Library | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Library | 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() | |
lib-0 | warning | Library | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Library | C | 0..* | Library | Represents a library of quality improvement components lib-0: Name should be usable as an identifier for the module by machine processing applications such as code generation | ||||
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 | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
directReferenceCode | S | 0..* | Coding | A code directly referenced by the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode | ||||
logicDefinition | S | 0..* | (Complex) | A logic definition used in the artifact URL: http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition | ||||
inputParameters | S | 0..1 | Reference(Parameters) | What parameters URL: http://hl7.org/fhir/StructureDefinition/cqf-inputParameters | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
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 | ΣC | 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 Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage | ||||
type | SΣ | 1..1 | CodeableConcept | logic-library | model-definition | asset-collection | module-definition Binding: LibraryType (extensible): The type of knowledge asset this library contains. Required Pattern: At least the following | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://terminology.hl7.org/CodeSystem/library-type | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: module-definition | |||||
display | 0..1 | string | Representation defined by the system | |||||
userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |||||
text | 0..1 | string | Plain text representation of the concept | |||||
subject[x] | S | 0..1 | Type of individual the library content is focused on Binding: SubjectType (extensible): The possible types of subjects for a library (E.g. Patient, Practitioner, Organization, Location, etc.). | |||||
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) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use. | ||||
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. Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering. | |||||
author | 0..* | ContactDetail | Who authored the content | |||||
editor | 0..* | ContactDetail | Who edited the content | |||||
reviewer | 0..* | ContactDetail | Who reviewed the content | |||||
endorser | 0..* | ContactDetail | Who endorsed the content | |||||
relatedArtifact | S | 0..* | RelatedArtifact | Dependencies used by the artifact | ||||
parameter | S | 0..* | ParameterDefinition | Parameters defined by the library | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
defaultValue | S | 0..1 | string, boolean, integer, decimal, date, dateTime, Coding, CodeableConcept, Period, Range, Quantity, Ratio | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-defaultValue | ||||
name | Σ | 0..1 | code | Name used to access the parameter value | ||||
use | Σ | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether the parameter is input or output. | ||||
min | Σ | 0..1 | integer | Minimum cardinality | ||||
max | Σ | 0..1 | string | Maximum cardinality (a number of *) | ||||
documentation | Σ | 0..1 | string | A brief description of the parameter | ||||
type | Σ | 1..1 | code | What type of value Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | ||||
profile | Σ | 0..1 | canonical(StructureDefinition) | What profile the value is expected to be | ||||
dataRequirement | S | 0..* | DataRequirement | What data is referenced by this library | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
isSelective | S | 0..1 | boolean | specifies whether a given DataRequirement is "selective" URL: http://hl7.org/fhir/StructureDefinition/cqf-isSelective | ||||
valueFilter | S | 0..* | (Complex) | Extension URL: http://hl7.org/fhir/StructureDefinition/cqf-valueFilter | ||||
fhirQueryPattern | 0..* | string | What FHIR query? URL: http://hl7.org/fhir/StructureDefinition/cqf-fhirQueryPattern | |||||
type | Σ | 1..1 | code | The type of the required data Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | ||||
profile | Σ | 0..* | canonical(StructureDefinition) | The profile of the required data | ||||
subject[x] | Σ | 0..1 | E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device Binding: SubjectType (extensible): The possible types of subjects for a data requirement (E.g., Patient, Practitioner, Organization, Location, etc.). | |||||
subjectCodeableConcept | CodeableConcept | |||||||
subjectReference | Reference(Group) | |||||||
mustSupport | Σ | 0..* | string | Indicates specific structure elements that are referenced by the knowledge module | ||||
codeFilter | ΣC | 0..* | Element | What codes are expected drq-1: Either a path or a searchParam must be provided, but not both | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
path | Σ | 0..1 | string | A code-valued attribute to filter on | ||||
searchParam | Σ | 0..1 | string | A coded (token) parameter to search on | ||||
valueSet | Σ | 0..1 | canonical(ValueSet) | Valueset for the filter | ||||
code | Σ | 0..* | Coding | What code is expected | ||||
dateFilter | ΣC | 0..* | Element | What dates/date ranges are expected drq-2: Either a path or a searchParam must be provided, but not both | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
path | Σ | 0..1 | string | A date-valued attribute to filter on | ||||
searchParam | Σ | 0..1 | string | A date valued parameter to search on | ||||
value[x] | Σ | 0..1 | The value of the filter, as a Period, DateTime, or Duration value | |||||
valueDateTime | dateTime | |||||||
valuePeriod | Period | |||||||
valueDuration | Duration | |||||||
limit | Σ | 0..1 | positiveInt | Number of results | ||||
sort | Σ | 0..* | Element | Order of the results | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
path | Σ | 1..1 | string | The name of the attribute to perform the sort | ||||
direction | Σ | 1..1 | code | ascending | descending Binding: SortDirection (required): The possible sort directions, ascending or descending. | ||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
Library.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Library.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.0.1 from the FHIR Standard | ||||
Library.type | extensible | Pattern: module-definitionhttp://hl7.org/fhir/ValueSet/library-type from the FHIR Standard | ||||
Library.subject[x] | extensible | SubjectTypehttp://hl7.org/fhir/ValueSet/subject-type from the FHIR Standard | ||||
Library.jurisdiction | extensible | Jurisdiction ValueSethttp://hl7.org/fhir/ValueSet/jurisdiction from the FHIR Standard | ||||
Library.topic | example | DefinitionTopichttp://hl7.org/fhir/ValueSet/definition-topic from the FHIR Standard | ||||
Library.parameter.use | required | OperationParameterUsehttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
Library.parameter.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
Library.dataRequirement.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
Library.dataRequirement.subject[x] | extensible | SubjectTypehttp://hl7.org/fhir/ValueSet/subject-type from the FHIR Standard | ||||
Library.dataRequirement.sort.direction | required | SortDirectionhttp://hl7.org/fhir/ValueSet/sort-direction|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Library | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Library | 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 | Library | 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 | Library | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Library | A resource should have narrative for robust management : text.`div`.exists() | |
drq-1 | error | Library.dataRequirement.codeFilter | Either a path or a searchParam must be provided, but not both : path.exists() xor searchParam.exists() | |
drq-2 | error | Library.dataRequirement.dateFilter | Either a path or a searchParam must be provided, but not both : path.exists() xor searchParam.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() | |
lib-0 | warning | Library | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') |
This structure is derived from Library
Summary
Mandatory: 1 element
Must-Support: 11 elements
Prohibited: 1 element
Extensions
This structure refers to these extensions:
Maturity: 3
Other representations of profile: CSV, Excel, Schematron