Release 5 Draft Ballot

This page is part of the FHIR Specification (v4.6.0: R5 Draft Ballot - see ballot notes). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions

Clinical Decision Support Work Group Maturity Level: 0Trial Use Use Context: Country: World

The official URL for this profile is:

http://hl7.org/fhir/StructureDefinition/elmlibrary

Represents an executable CQL logic library in translated ELM format

This profile was published on Thu, Jan 1, 1970 00:00+1000 as a draft by HL7.

Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

This structure is derived from LogicLibrary.

Summary

Mandatory: 0 element (+2 nested mandatory elements)
Must-Support: 7 elements
Fixed Value: 2 elements

Slices

This structure defines the following Slices:

  • The element Library.content is sliced based on the value of value:contentType

This structure is derived from LogicLibrary.

NameFlagsCard.TypeDescription & Constraintsdoco
.. Library 1..1LogicLibraryRepresents a library of quality improvement components
... content S0..*(Slice Definition)Contents of the library, either embedded or referenced
Slice: Unordered, Open by value:contentType
.... content:elmXmlContent S0..*AttachmentELM XML Content
..... contentType S0..1codeMime type of the content, with charset etc.
Fixed Value: application/elm+xml
..... data S1..1base64BinaryData inline, base64ed
.... content:elmJsonContent S0..*AttachmentELM JSON Content
..... contentType S0..1codeMime type of the content, with charset etc.
Fixed Value: application/elm+json
..... data S1..1base64BinaryData inline, base64ed

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Library I1..1LogicLibraryRepresents a library of quality improvement components
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (preferred)
Max Binding: All Languages: IETF language tag

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... cqf-knowledgeCapability S0..*codeshareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: Knowledge Capability (required)
... cqf-knowledgeRepresentationLevel S0..*codenarrative | semi-structured | structured | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeRepresentationLevel
Binding: Knowledge Representation Level (required)
... cqf-artifactComment S0..*(Complex)Additional documentation, review, or usage guidance
URL: http://hl7.org/fhir/StructureDefinition/cqf-artifactComment
... cqf-directReferenceCode S0..*CodingA code directly referenced by the artifact
URL: http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url Σ1..1uriCanonical identifier for this library, represented as a URI (globally unique)
... identifier SΣ0..*IdentifierAdditional identifier for the library
... version Σ1..1stringBusiness version of the library
... name ΣI1..1stringName for this library (computer friendly)
... title SΣ0..1stringName for this library (human friendly)
... subtitle 0..1stringSubordinate title of the library
... status ?!Σ1..1codedraft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... experimental Σ1..1booleanFor testing purposes, not real usage
... type Σ1..1CodeableConceptlogic-library | model-definition | asset-collection | module-definition
Binding: LibraryType (extensible): The type of knowledge asset this library contains.


Required Pattern: At least the following
.... id0..1stringUnique id for inter-element referencing
.... extension0..*ExtensionAdditional content defined by implementations
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/library-type
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: module-definition
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text0..1stringPlain text representation of the concept
... subject[x] S0..1Type of individual the library content is focused on
Binding: Subject type (extensible): The possible types of subjects for a library (E.g. Patient, Practitioner, Organization, Location, etc.).

.... subjectCodeableConceptCodeableConcept
.... subjectReferenceReference(Group)
... date SΣ0..1dateTimeDate last changed
... publisher Σ1..1stringName of the publisher (organization or individual)
... contact SΣ0..*ContactDetailContact details for the publisher
... description Σ1..1markdownNatural language description of the library
... useContext SΣ0..*UsageContextThe context that the content is intended to support
... jurisdiction SΣ0..*CodeableConceptIntended jurisdiction for library (if applicable)
Binding: Jurisdiction (extensible): Countries and regions within which this artifact is targeted for use.


... purpose 0..1markdownWhy this library is defined
... usage 0..1stringDescribes the clinical usage of the library
... copyright 0..1markdownUse and/or publishing restrictions
... approvalDate 0..1dateWhen the library was approved by publisher
... lastReviewDate 0..1dateWhen the library was last reviewed
... effectivePeriod Σ0..1PeriodWhen the library is expected to be used
... topic 0..*CodeableConceptE.g. Education, Treatment, Assessment, etc.
Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering.


... author 0..*ContactDetailWho authored the content
... editor 0..*ContactDetailWho edited the content
... reviewer 0..*ContactDetailWho reviewed the content
... endorser 0..*ContactDetailWho endorsed the content
... relatedArtifact S0..*(Slice Definition)Additional documentation, citations, etc.
Slice: Unordered, Open by value:type
.... relatedArtifact:dependency S0..*RelatedArtifactAdditional documentation, citations, etc.
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... type SΣ1..1codedocumentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of
Binding: RelatedArtifactType (required)
Fixed Value: depends-on
..... label Σ0..1stringShort label
..... display Σ0..1stringBrief description of the related artifact
..... citation Σ0..1markdownBibliographic citation for the artifact
..... url Σ0..1urlWhere the artifact can be accessed
..... document Σ0..1AttachmentWhat document is being referenced
..... resource SΣ1..1canonical(CodeSystem | ValueSet | Library)What resource is being referenced
... parameter S0..*ParameterDefinitionParameters defined by the library
... dataRequirement S0..*DataRequirementWhat data is referenced by this library
... content SΣ0..*(Slice Definition)Contents of the library, either embedded or referenced
Slice: Unordered, Open by value:contentType
.... content:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType SΣ0..1codeMime type of the content, with charset etc.
Binding: MimeType (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)


Example General: text/plain; charset=UTF-8, image/png
..... language Σ0..1codeHuman language of the content (BCP-47)
Binding: Common Languages (preferred)
Max Binding: All Languages: IETF language tag


Example General: en-AU
..... data S0..1base64BinaryData inline, base64ed
..... url Σ0..1urlUri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size Σ0..1integer64Number of bytes of content (if url provided)
..... hash Σ0..1base64BinaryHash of the data (sha-1, base64ed)
..... title Σ0..1stringLabel to display in place of the data
Example General: Official Corporate Logo
..... creation Σ0..1dateTimeDate attachment was first created
..... height 0..1positiveIntHeight of the image in pixels (photo/video)
..... width 0..1positiveIntWidth of the image in pixels (photo/video)
..... frames 0..1positiveIntNumber of frames if > 1 (photo)
..... duration 0..1decimalLength in seconds (audio / video)
..... pages 0..1positiveIntNumber of printed pages
.... content:elmXmlContent SΣ0..*AttachmentELM XML Content
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType SΣ0..1codeMime type of the content, with charset etc.
Binding: MimeType (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)


Fixed Value: application/elm+xml
..... language Σ0..1codeHuman language of the content (BCP-47)
Binding: Common Languages (preferred)
Max Binding: All Languages: IETF language tag


Example General: en-AU
..... data S1..1base64BinaryData inline, base64ed
..... url Σ0..1urlUri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size Σ0..1integer64Number of bytes of content (if url provided)
..... hash Σ0..1base64BinaryHash of the data (sha-1, base64ed)
..... title Σ0..1stringLabel to display in place of the data
Example General: Official Corporate Logo
..... creation Σ0..1dateTimeDate attachment was first created
..... height 0..1positiveIntHeight of the image in pixels (photo/video)
..... width 0..1positiveIntWidth of the image in pixels (photo/video)
..... frames 0..1positiveIntNumber of frames if > 1 (photo)
..... duration 0..1decimalLength in seconds (audio / video)
..... pages 0..1positiveIntNumber of printed pages
.... content:elmJsonContent SΣ0..*AttachmentELM JSON Content
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType SΣ0..1codeMime type of the content, with charset etc.
Binding: MimeType (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)


Fixed Value: application/elm+json
..... language Σ0..1codeHuman language of the content (BCP-47)
Binding: Common Languages (preferred)
Max Binding: All Languages: IETF language tag


Example General: en-AU
..... data S1..1base64BinaryData inline, base64ed
..... url Σ0..1urlUri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size Σ0..1integer64Number of bytes of content (if url provided)
..... hash Σ0..1base64BinaryHash of the data (sha-1, base64ed)
..... title Σ0..1stringLabel to display in place of the data
Example General: Official Corporate Logo
..... creation Σ0..1dateTimeDate attachment was first created
..... height 0..1positiveIntHeight of the image in pixels (photo/video)
..... width 0..1positiveIntWidth of the image in pixels (photo/video)
..... frames 0..1positiveIntNumber of frames if > 1 (photo)
..... duration 0..1decimalLength in seconds (audio / video)
..... pages 0..1positiveIntNumber of printed pages

doco Documentation for this format
<!-- ELMLibrary -->doco

<Library xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <id value="[id]"/><!-- 0..1 Logical id of this artifact -->
 <meta><!-- ?? 0..1 Meta Metadata about the resource --></meta>
 <implicitRules value="[uri]"/><!-- ?? 0..1 A set of rules under which this content was created -->
 <language value="[code]"/><!-- ?? 0..1 Language of the resource content   -->
 <text><!-- ?? 0..1 Narrative 
     Text summary of the resource, for human interpretation --></text>
 <contained><!-- 0..* Resource Contained, inline Resources --></contained>
 <modifierExtension><!-- ?? 0..* Extension  Extensions that cannot be ignored  --></modifierExtension>
 <url value="[uri]"/><!-- ?? 1..1 Canonical identifier for this library, represented as a URI (globally unique) -->
 <identifier><!-- ?? 0..* Identifier Additional identifier for the library --></identifier>
 <version value="[string]"/><!-- ?? 1..1 Business version of the library -->
 <name value="[string]"/><!-- ?? 1..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]"/><!-- ?? 1..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]"/><!-- ?? 1..1 Name of the publisher (organization or individual) -->
 <contact><!-- ?? 0..* ContactDetail Contact details for the publisher --></contact>
 <description value="[markdown]"/><!-- ?? 1..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>
 <author><!-- ?? 0..* ContactDetail Who authored the content --></author>
 <editor><!-- ?? 0..* ContactDetail Who edited the content --></editor>
 <reviewer><!-- ?? 0..* ContactDetail Who reviewed the content --></reviewer>
 <endorser><!-- ?? 0..* ContactDetail Who endorsed the content --></endorser>
 <-- relatedArtifact sliced by value:type  in the specified orderOpen-->
 <relatedArtifact> ?? 0..* RelatedArtifact  <!-- ?? 0..* Additional documentation, citations, etc. -->
  <type value="[code]"/><!-- ?? 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of   -->
  <label value="[string]"/><!-- ?? 0..1 Short label -->
  <display value="[string]"/><!-- ?? 0..1 Brief description of the related artifact -->
  <citation value="[markdown]"/><!-- ?? 0..1 Bibliographic citation for the artifact -->
  <url value="[url]"/><!-- ?? 0..1 Where the artifact can be accessed -->
  <document><!-- ?? 0..1 Attachment 
      What document is being referenced --></document>
  <resource value="[canonical]"/><!-- ?? 1..1 What resource is being referenced -->
 </relatedArtifact>
 <parameter><!-- ?? 0..* ParameterDefinition 
     Parameters defined by the library --></parameter>
 <dataRequirement><!-- ?? 0..* DataRequirement 
     What data is referenced by this library --></dataRequirement>
 <-- content sliced by value:contentType  in the specified orderOpen-->
 <content> ?? 0..* Attachment  <!-- ?? 0..* ELM XML Content -->
  <contentType value="[code]"/><!-- ?? 0..1 Mime type of the content, with charset etc.   -->
  <language value="[code]"/><!-- ?? 0..1 Human language of the content (BCP-47)   -->
  <data value="[base64Binary]"/><!-- ?? 1..1 Data inline, base64ed -->
  <url value="[url]"/><!-- ?? 0..1 Uri where the data can be found -->
  <size value="[integer64]"/><!-- ?? 0..1 Number of bytes of content (if url provided) -->
  <hash value="[base64Binary]"/><!-- ?? 0..1 Hash of the data (sha-1, base64ed) -->
  <title value="[string]"/><!-- ?? 0..1 Label to display in place of the data -->
  <creation value="[dateTime]"/><!-- ?? 0..1 Date attachment was first created -->
  <height value="[positiveInt]"/><!-- ?? 0..1 Height of the image in pixels (photo/video) -->
  <width value="[positiveInt]"/><!-- ?? 0..1 Width of the image in pixels (photo/video) -->
  <frames value="[positiveInt]"/><!-- ?? 0..1 Number of frames if > 1 (photo) -->
  <duration value="[decimal]"/><!-- ?? 0..1 Length in seconds (audio / video) -->
  <pages value="[positiveInt]"/><!-- ?? 0..1 Number of printed pages -->
 </content>
 <content> ?? 0..* Attachment  <!-- ?? 0..* ELM JSON Content -->
  <contentType value="[code]"/><!-- ?? 0..1 Mime type of the content, with charset etc.   -->
  <language value="[code]"/><!-- ?? 0..1 Human language of the content (BCP-47)   -->
  <data value="[base64Binary]"/><!-- ?? 1..1 Data inline, base64ed -->
  <url value="[url]"/><!-- ?? 0..1 Uri where the data can be found -->
  <size value="[integer64]"/><!-- ?? 0..1 Number of bytes of content (if url provided) -->
  <hash value="[base64Binary]"/><!-- ?? 0..1 Hash of the data (sha-1, base64ed) -->
  <title value="[string]"/><!-- ?? 0..1 Label to display in place of the data -->
  <creation value="[dateTime]"/><!-- ?? 0..1 Date attachment was first created -->
  <height value="[positiveInt]"/><!-- ?? 0..1 Height of the image in pixels (photo/video) -->
  <width value="[positiveInt]"/><!-- ?? 0..1 Width of the image in pixels (photo/video) -->
  <frames value="[positiveInt]"/><!-- ?? 0..1 Number of frames if > 1 (photo) -->
  <duration value="[decimal]"/><!-- ?? 0..1 Length in seconds (audio / video) -->
  <pages value="[positiveInt]"/><!-- ?? 0..1 Number of printed pages -->
 </content>
</Library>
{ // ELMLibrary
  // from Element: extension
    "meta" : { Meta }, // C?Metadata about the resource
    "implicitRules" : "<uri>", // C?A set of rules under which this content was created
    "language" : "<code>", // C?Language of the resource content
    "text" : { Narrative }, // C?Text summary of the resource, for human interpretation
    "contained" : [{ Resource }], //Contained, inline Resources
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // shareable | computable | publishable | executable // C?
        // from Element: extension
      },
      { // narrative | semi-structured | structured | executable // C?
        // from Element: extension
      },
      { // Additional documentation, review, or usage guidance // C?
        // from Element: extension
      },
      { // A code directly referenced by the artifact // C?
        // from Element: extension
      }
    ],
    "modifierExtension" : [{ Extension }], // C?Extensions that cannot be ignored
    "url" : "<uri>", // C? R! Canonical identifier for this library, represented as a URI (globally unique)
    "identifier" : [{ Identifier }], // C?Additional identifier for the library
    "version" : "<string>", // C? R! Business version of the library
    "name" : "<string>", // C? R! Name for this library (computer friendly)
    "title" : "<string>", // C?Name for this library (human friendly)
    "subtitle" : "<string>", // C?Subordinate title of the library
    "status" : "<code>", // C? R! draft | active | retired | unknown
    "experimental" : <boolean>, // C? R! For testing purposes, not real usage
    "type" : { CodeableConcept }, // C? R! logic-library | model-definition | asset-collection | module-definition
// value[x]: Type of individual the library content is focused on. One of these 2:
    "subjectCodeableConcept" : { CodeableConcept }, // C?Type of individual the library content is focused on
    "subjectReference" : { Reference(Group) }, // C?Type of individual the library content is focused on
    "date" : "<dateTime>", // C?Date last changed
    "publisher" : "<string>", // C? R! Name of the publisher (organization or individual)
    "contact" : [{ ContactDetail }], // C?Contact details for the publisher
    "description" : "<markdown>", // C? R! Natural language description of the library
    "useContext" : [{ UsageContext }], // C?The context that the content is intended to support
    "jurisdiction" : [{ CodeableConcept }], // C?Intended jurisdiction for library (if applicable)
    "purpose" : "<markdown>", // C?Why this library is defined
    "usage" : "<string>", // C?Describes the clinical usage of the library
    "copyright" : "<markdown>", // C?Use and/or publishing restrictions
    "approvalDate" : "<date>", // C?When the library was approved by publisher
    "lastReviewDate" : "<date>", // C?When the library was last reviewed
    "effectivePeriod" : { Period }, // C?When the library is expected to be used
    "topic" : [{ CodeableConcept }], // C?E.g. Education, Treatment, Assessment, etc.
    "author" : [{ ContactDetail }], // C?Who authored the content
    "editor" : [{ ContactDetail }], // C?Who edited the content
    "reviewer" : [{ ContactDetail }], // C?Who reviewed the content
    "endorser" : [{ ContactDetail }], // C?Who endorsed the content
    "relatedArtifact" : [ //  sliced by value:type  in the specified order, Open 
      { // Additional documentation, citations, etc. // C?
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "type" : "depends-on", // C? R! 
        "label" : "<string>", // C?Short label
        "display" : "<string>", // C?Brief description of the related artifact
        "citation" : "<markdown>", // C?Bibliographic citation for the artifact
        "url" : "<url>", // C?Where the artifact can be accessed
        "document" : { Attachment }, // C?What document is being referenced
        "resource" : "<canonical>" // C? R! What resource is being referenced
      }
    ],
    "parameter" : [{ ParameterDefinition }], // C?Parameters defined by the library
    "dataRequirement" : [{ DataRequirement }], // C?What data is referenced by this library
    "content" : [ //  sliced by value:contentType  in the specified order, Open 
      { // ELM XML Content // C?
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "contentType" : "application/elm+xml", // C?
        "language" : "<code>", // C?Human language of the content (BCP-47)
        "data" : "<base64Binary>", // C? R! Data inline, base64ed
        "url" : "<url>", // C?Uri where the data can be found
        "size" : "<integer64>", // C?Number of bytes of content (if url provided)
        "hash" : "<base64Binary>", // C?Hash of the data (sha-1, base64ed)
        "title" : "<string>", // C?Label to display in place of the data
        "creation" : "<dateTime>", // C?Date attachment was first created
        "height" : "<positiveInt>", // C?Height of the image in pixels (photo/video)
        "width" : "<positiveInt>", // C?Width of the image in pixels (photo/video)
        "frames" : "<positiveInt>", // C?Number of frames if > 1 (photo)
        "duration" : <decimal>, // C?Length in seconds (audio / video)
        "pages" : "<positiveInt>" // C?Number of printed pages
      },
      { // ELM JSON Content // C?
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "contentType" : "application/elm+json", // C?
        "language" : "<code>", // C?Human language of the content (BCP-47)
        "data" : "<base64Binary>", // C? R! Data inline, base64ed
        "url" : "<url>", // C?Uri where the data can be found
        "size" : "<integer64>", // C?Number of bytes of content (if url provided)
        "hash" : "<base64Binary>", // C?Hash of the data (sha-1, base64ed)
        "title" : "<string>", // C?Label to display in place of the data
        "creation" : "<dateTime>", // C?Date attachment was first created
        "height" : "<positiveInt>", // C?Height of the image in pixels (photo/video)
        "width" : "<positiveInt>", // C?Width of the image in pixels (photo/video)
        "frames" : "<positiveInt>", // C?Number of frames if > 1 (photo)
        "duration" : <decimal>, // C?Length in seconds (audio / video)
        "pages" : "<positiveInt>" // C?Number of printed pages
      }
    ],
  }

This structure is derived from LogicLibrary.

Summary

Mandatory: 0 element (+2 nested mandatory elements)
Must-Support: 7 elements
Fixed Value: 2 elements

Slices

This structure defines the following Slices:

  • The element Library.content is sliced based on the value of value:contentType

Differential View

This structure is derived from LogicLibrary.

NameFlagsCard.TypeDescription & Constraintsdoco
.. Library 1..1LogicLibraryRepresents a library of quality improvement components
... content S0..*(Slice Definition)Contents of the library, either embedded or referenced
Slice: Unordered, Open by value:contentType
.... content:elmXmlContent S0..*AttachmentELM XML Content
..... contentType S0..1codeMime type of the content, with charset etc.
Fixed Value: application/elm+xml
..... data S1..1base64BinaryData inline, base64ed
.... content:elmJsonContent S0..*AttachmentELM JSON Content
..... contentType S0..1codeMime type of the content, with charset etc.
Fixed Value: application/elm+json
..... data S1..1base64BinaryData inline, base64ed

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Library I1..1LogicLibraryRepresents a library of quality improvement components
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (preferred)
Max Binding: All Languages: IETF language tag

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... cqf-knowledgeCapability S0..*codeshareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: Knowledge Capability (required)
... cqf-knowledgeRepresentationLevel S0..*codenarrative | semi-structured | structured | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeRepresentationLevel
Binding: Knowledge Representation Level (required)
... cqf-artifactComment S0..*(Complex)Additional documentation, review, or usage guidance
URL: http://hl7.org/fhir/StructureDefinition/cqf-artifactComment
... cqf-directReferenceCode S0..*CodingA code directly referenced by the artifact
URL: http://hl7.org/fhir/StructureDefinition/cqf-directReferenceCode
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url Σ1..1uriCanonical identifier for this library, represented as a URI (globally unique)
... identifier SΣ0..*IdentifierAdditional identifier for the library
... version Σ1..1stringBusiness version of the library
... name ΣI1..1stringName for this library (computer friendly)
... title SΣ0..1stringName for this library (human friendly)
... subtitle 0..1stringSubordinate title of the library
... status ?!Σ1..1codedraft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... experimental Σ1..1booleanFor testing purposes, not real usage
... type Σ1..1CodeableConceptlogic-library | model-definition | asset-collection | module-definition
Binding: LibraryType (extensible): The type of knowledge asset this library contains.


Required Pattern: At least the following
.... id0..1stringUnique id for inter-element referencing
.... extension0..*ExtensionAdditional content defined by implementations
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/library-type
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: module-definition
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text0..1stringPlain text representation of the concept
... subject[x] S0..1Type of individual the library content is focused on
Binding: Subject type (extensible): The possible types of subjects for a library (E.g. Patient, Practitioner, Organization, Location, etc.).

.... subjectCodeableConceptCodeableConcept
.... subjectReferenceReference(Group)
... date SΣ0..1dateTimeDate last changed
... publisher Σ1..1stringName of the publisher (organization or individual)
... contact SΣ0..*ContactDetailContact details for the publisher
... description Σ1..1markdownNatural language description of the library
... useContext SΣ0..*UsageContextThe context that the content is intended to support
... jurisdiction SΣ0..*CodeableConceptIntended jurisdiction for library (if applicable)
Binding: Jurisdiction (extensible): Countries and regions within which this artifact is targeted for use.


... purpose 0..1markdownWhy this library is defined
... usage 0..1stringDescribes the clinical usage of the library
... copyright 0..1markdownUse and/or publishing restrictions
... approvalDate 0..1dateWhen the library was approved by publisher
... lastReviewDate 0..1dateWhen the library was last reviewed
... effectivePeriod Σ0..1PeriodWhen the library is expected to be used
... topic 0..*CodeableConceptE.g. Education, Treatment, Assessment, etc.
Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering.


... author 0..*ContactDetailWho authored the content
... editor 0..*ContactDetailWho edited the content
... reviewer 0..*ContactDetailWho reviewed the content
... endorser 0..*ContactDetailWho endorsed the content
... relatedArtifact S0..*(Slice Definition)Additional documentation, citations, etc.
Slice: Unordered, Open by value:type
.... relatedArtifact:dependency S0..*RelatedArtifactAdditional documentation, citations, etc.
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... type SΣ1..1codedocumentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of
Binding: RelatedArtifactType (required)
Fixed Value: depends-on
..... label Σ0..1stringShort label
..... display Σ0..1stringBrief description of the related artifact
..... citation Σ0..1markdownBibliographic citation for the artifact
..... url Σ0..1urlWhere the artifact can be accessed
..... document Σ0..1AttachmentWhat document is being referenced
..... resource SΣ1..1canonical(CodeSystem | ValueSet | Library)What resource is being referenced
... parameter S0..*ParameterDefinitionParameters defined by the library
... dataRequirement S0..*DataRequirementWhat data is referenced by this library
... content SΣ0..*(Slice Definition)Contents of the library, either embedded or referenced
Slice: Unordered, Open by value:contentType
.... content:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType SΣ0..1codeMime type of the content, with charset etc.
Binding: MimeType (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)


Example General: text/plain; charset=UTF-8, image/png
..... language Σ0..1codeHuman language of the content (BCP-47)
Binding: Common Languages (preferred)
Max Binding: All Languages: IETF language tag


Example General: en-AU
..... data S0..1base64BinaryData inline, base64ed
..... url Σ0..1urlUri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size Σ0..1integer64Number of bytes of content (if url provided)
..... hash Σ0..1base64BinaryHash of the data (sha-1, base64ed)
..... title Σ0..1stringLabel to display in place of the data
Example General: Official Corporate Logo
..... creation Σ0..1dateTimeDate attachment was first created
..... height 0..1positiveIntHeight of the image in pixels (photo/video)
..... width 0..1positiveIntWidth of the image in pixels (photo/video)
..... frames 0..1positiveIntNumber of frames if > 1 (photo)
..... duration 0..1decimalLength in seconds (audio / video)
..... pages 0..1positiveIntNumber of printed pages
.... content:elmXmlContent SΣ0..*AttachmentELM XML Content
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType SΣ0..1codeMime type of the content, with charset etc.
Binding: MimeType (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)


Fixed Value: application/elm+xml
..... language Σ0..1codeHuman language of the content (BCP-47)
Binding: Common Languages (preferred)
Max Binding: All Languages: IETF language tag


Example General: en-AU
..... data S1..1base64BinaryData inline, base64ed
..... url Σ0..1urlUri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size Σ0..1integer64Number of bytes of content (if url provided)
..... hash Σ0..1base64BinaryHash of the data (sha-1, base64ed)
..... title Σ0..1stringLabel to display in place of the data
Example General: Official Corporate Logo
..... creation Σ0..1dateTimeDate attachment was first created
..... height 0..1positiveIntHeight of the image in pixels (photo/video)
..... width 0..1positiveIntWidth of the image in pixels (photo/video)
..... frames 0..1positiveIntNumber of frames if > 1 (photo)
..... duration 0..1decimalLength in seconds (audio / video)
..... pages 0..1positiveIntNumber of printed pages
.... content:elmJsonContent SΣ0..*AttachmentELM JSON Content
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType SΣ0..1codeMime type of the content, with charset etc.
Binding: MimeType (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)


Fixed Value: application/elm+json
..... language Σ0..1codeHuman language of the content (BCP-47)
Binding: Common Languages (preferred)
Max Binding: All Languages: IETF language tag


Example General: en-AU
..... data S1..1base64BinaryData inline, base64ed
..... url Σ0..1urlUri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size Σ0..1integer64Number of bytes of content (if url provided)
..... hash Σ0..1base64BinaryHash of the data (sha-1, base64ed)
..... title Σ0..1stringLabel to display in place of the data
Example General: Official Corporate Logo
..... creation Σ0..1dateTimeDate attachment was first created
..... height 0..1positiveIntHeight of the image in pixels (photo/video)
..... width 0..1positiveIntWidth of the image in pixels (photo/video)
..... frames 0..1positiveIntNumber of frames if > 1 (photo)
..... duration 0..1decimalLength in seconds (audio / video)
..... pages 0..1positiveIntNumber of printed pages

doco Documentation for this format

XML Template

<!-- ELMLibrary -->doco

<Library xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <id value="[id]"/><!-- 0..1 Logical id of this artifact -->
 <meta><!-- ?? 0..1 Meta Metadata about the resource --></meta>
 <implicitRules value="[uri]"/><!-- ?? 0..1 A set of rules under which this content was created -->
 <language value="[code]"/><!-- ?? 0..1 Language of the resource content   -->
 <text><!-- ?? 0..1 Narrative 
     Text summary of the resource, for human interpretation --></text>
 <contained><!-- 0..* Resource Contained, inline Resources --></contained>
 <modifierExtension><!-- ?? 0..* Extension  Extensions that cannot be ignored  --></modifierExtension>
 <url value="[uri]"/><!-- ?? 1..1 Canonical identifier for this library, represented as a URI (globally unique) -->
 <identifier><!-- ?? 0..* Identifier Additional identifier for the library --></identifier>
 <version value="[string]"/><!-- ?? 1..1 Business version of the library -->
 <name value="[string]"/><!-- ?? 1..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]"/><!-- ?? 1..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]"/><!-- ?? 1..1 Name of the publisher (organization or individual) -->
 <contact><!-- ?? 0..* ContactDetail Contact details for the publisher --></contact>
 <description value="[markdown]"/><!-- ?? 1..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>
 <author><!-- ?? 0..* ContactDetail Who authored the content --></author>
 <editor><!-- ?? 0..* ContactDetail Who edited the content --></editor>
 <reviewer><!-- ?? 0..* ContactDetail Who reviewed the content --></reviewer>
 <endorser><!-- ?? 0..* ContactDetail Who endorsed the content --></endorser>
 <-- relatedArtifact sliced by value:type  in the specified orderOpen-->
 <relatedArtifact> ?? 0..* RelatedArtifact  <!-- ?? 0..* Additional documentation, citations, etc. -->
  <type value="[code]"/><!-- ?? 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of   -->
  <label value="[string]"/><!-- ?? 0..1 Short label -->
  <display value="[string]"/><!-- ?? 0..1 Brief description of the related artifact -->
  <citation value="[markdown]"/><!-- ?? 0..1 Bibliographic citation for the artifact -->
  <url value="[url]"/><!-- ?? 0..1 Where the artifact can be accessed -->
  <document><!-- ?? 0..1 Attachment 
      What document is being referenced --></document>
  <resource value="[canonical]"/><!-- ?? 1..1 What resource is being referenced -->
 </relatedArtifact>
 <parameter><!-- ?? 0..* ParameterDefinition 
     Parameters defined by the library --></parameter>
 <dataRequirement><!-- ?? 0..* DataRequirement 
     What data is referenced by this library --></dataRequirement>
 <-- content sliced by value:contentType  in the specified orderOpen-->
 <content> ?? 0..* Attachment  <!-- ?? 0..* ELM XML Content -->
  <contentType value="[code]"/><!-- ?? 0..1 Mime type of the content, with charset etc.   -->
  <language value="[code]"/><!-- ?? 0..1 Human language of the content (BCP-47)   -->
  <data value="[base64Binary]"/><!-- ?? 1..1 Data inline, base64ed -->
  <url value="[url]"/><!-- ?? 0..1 Uri where the data can be found -->
  <size value="[integer64]"/><!-- ?? 0..1 Number of bytes of content (if url provided) -->
  <hash value="[base64Binary]"/><!-- ?? 0..1 Hash of the data (sha-1, base64ed) -->
  <title value="[string]"/><!-- ?? 0..1 Label to display in place of the data -->
  <creation value="[dateTime]"/><!-- ?? 0..1 Date attachment was first created -->
  <height value="[positiveInt]"/><!-- ?? 0..1 Height of the image in pixels (photo/video) -->
  <width value="[positiveInt]"/><!-- ?? 0..1 Width of the image in pixels (photo/video) -->
  <frames value="[positiveInt]"/><!-- ?? 0..1 Number of frames if > 1 (photo) -->
  <duration value="[decimal]"/><!-- ?? 0..1 Length in seconds (audio / video) -->
  <pages value="[positiveInt]"/><!-- ?? 0..1 Number of printed pages -->
 </content>
 <content> ?? 0..* Attachment  <!-- ?? 0..* ELM JSON Content -->
  <contentType value="[code]"/><!-- ?? 0..1 Mime type of the content, with charset etc.   -->
  <language value="[code]"/><!-- ?? 0..1 Human language of the content (BCP-47)   -->
  <data value="[base64Binary]"/><!-- ?? 1..1 Data inline, base64ed -->
  <url value="[url]"/><!-- ?? 0..1 Uri where the data can be found -->
  <size value="[integer64]"/><!-- ?? 0..1 Number of bytes of content (if url provided) -->
  <hash value="[base64Binary]"/><!-- ?? 0..1 Hash of the data (sha-1, base64ed) -->
  <title value="[string]"/><!-- ?? 0..1 Label to display in place of the data -->
  <creation value="[dateTime]"/><!-- ?? 0..1 Date attachment was first created -->
  <height value="[positiveInt]"/><!-- ?? 0..1 Height of the image in pixels (photo/video) -->
  <width value="[positiveInt]"/><!-- ?? 0..1 Width of the image in pixels (photo/video) -->
  <frames value="[positiveInt]"/><!-- ?? 0..1 Number of frames if > 1 (photo) -->
  <duration value="[decimal]"/><!-- ?? 0..1 Length in seconds (audio / video) -->
  <pages value="[positiveInt]"/><!-- ?? 0..1 Number of printed pages -->
 </content>
</Library>

JSON Template

{ // ELMLibrary
  // from Element: extension
    "meta" : { Meta }, // C?Metadata about the resource
    "implicitRules" : "<uri>", // C?A set of rules under which this content was created
    "language" : "<code>", // C?Language of the resource content
    "text" : { Narrative }, // C?Text summary of the resource, for human interpretation
    "contained" : [{ Resource }], //Contained, inline Resources
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // shareable | computable | publishable | executable // C?
        // from Element: extension
      },
      { // narrative | semi-structured | structured | executable // C?
        // from Element: extension
      },
      { // Additional documentation, review, or usage guidance // C?
        // from Element: extension
      },
      { // A code directly referenced by the artifact // C?
        // from Element: extension
      }
    ],
    "modifierExtension" : [{ Extension }], // C?Extensions that cannot be ignored
    "url" : "<uri>", // C? R! Canonical identifier for this library, represented as a URI (globally unique)
    "identifier" : [{ Identifier }], // C?Additional identifier for the library
    "version" : "<string>", // C? R! Business version of the library
    "name" : "<string>", // C? R! Name for this library (computer friendly)
    "title" : "<string>", // C?Name for this library (human friendly)
    "subtitle" : "<string>", // C?Subordinate title of the library
    "status" : "<code>", // C? R! draft | active | retired | unknown
    "experimental" : <boolean>, // C? R! For testing purposes, not real usage
    "type" : { CodeableConcept }, // C? R! logic-library | model-definition | asset-collection | module-definition
// value[x]: Type of individual the library content is focused on. One of these 2:
    "subjectCodeableConcept" : { CodeableConcept }, // C?Type of individual the library content is focused on
    "subjectReference" : { Reference(Group) }, // C?Type of individual the library content is focused on
    "date" : "<dateTime>", // C?Date last changed
    "publisher" : "<string>", // C? R! Name of the publisher (organization or individual)
    "contact" : [{ ContactDetail }], // C?Contact details for the publisher
    "description" : "<markdown>", // C? R! Natural language description of the library
    "useContext" : [{ UsageContext }], // C?The context that the content is intended to support
    "jurisdiction" : [{ CodeableConcept }], // C?Intended jurisdiction for library (if applicable)
    "purpose" : "<markdown>", // C?Why this library is defined
    "usage" : "<string>", // C?Describes the clinical usage of the library
    "copyright" : "<markdown>", // C?Use and/or publishing restrictions
    "approvalDate" : "<date>", // C?When the library was approved by publisher
    "lastReviewDate" : "<date>", // C?When the library was last reviewed
    "effectivePeriod" : { Period }, // C?When the library is expected to be used
    "topic" : [{ CodeableConcept }], // C?E.g. Education, Treatment, Assessment, etc.
    "author" : [{ ContactDetail }], // C?Who authored the content
    "editor" : [{ ContactDetail }], // C?Who edited the content
    "reviewer" : [{ ContactDetail }], // C?Who reviewed the content
    "endorser" : [{ ContactDetail }], // C?Who endorsed the content
    "relatedArtifact" : [ //  sliced by value:type  in the specified order, Open 
      { // Additional documentation, citations, etc. // C?
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "type" : "depends-on", // C? R! 
        "label" : "<string>", // C?Short label
        "display" : "<string>", // C?Brief description of the related artifact
        "citation" : "<markdown>", // C?Bibliographic citation for the artifact
        "url" : "<url>", // C?Where the artifact can be accessed
        "document" : { Attachment }, // C?What document is being referenced
        "resource" : "<canonical>" // C? R! What resource is being referenced
      }
    ],
    "parameter" : [{ ParameterDefinition }], // C?Parameters defined by the library
    "dataRequirement" : [{ DataRequirement }], // C?What data is referenced by this library
    "content" : [ //  sliced by value:contentType  in the specified order, Open 
      { // ELM XML Content // C?
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "contentType" : "application/elm+xml", // C?
        "language" : "<code>", // C?Human language of the content (BCP-47)
        "data" : "<base64Binary>", // C? R! Data inline, base64ed
        "url" : "<url>", // C?Uri where the data can be found
        "size" : "<integer64>", // C?Number of bytes of content (if url provided)
        "hash" : "<base64Binary>", // C?Hash of the data (sha-1, base64ed)
        "title" : "<string>", // C?Label to display in place of the data
        "creation" : "<dateTime>", // C?Date attachment was first created
        "height" : "<positiveInt>", // C?Height of the image in pixels (photo/video)
        "width" : "<positiveInt>", // C?Width of the image in pixels (photo/video)
        "frames" : "<positiveInt>", // C?Number of frames if > 1 (photo)
        "duration" : <decimal>, // C?Length in seconds (audio / video)
        "pages" : "<positiveInt>" // C?Number of printed pages
      },
      { // ELM JSON Content // C?
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "contentType" : "application/elm+json", // C?
        "language" : "<code>", // C?Human language of the content (BCP-47)
        "data" : "<base64Binary>", // C? R! Data inline, base64ed
        "url" : "<url>", // C?Uri where the data can be found
        "size" : "<integer64>", // C?Number of bytes of content (if url provided)
        "hash" : "<base64Binary>", // C?Hash of the data (sha-1, base64ed)
        "title" : "<string>", // C?Label to display in place of the data
        "creation" : "<dateTime>", // C?Date attachment was first created
        "height" : "<positiveInt>", // C?Height of the image in pixels (photo/video)
        "width" : "<positiveInt>", // C?Width of the image in pixels (photo/video)
        "frames" : "<positiveInt>", // C?Number of frames if > 1 (photo)
        "duration" : <decimal>, // C?Length in seconds (audio / video)
        "pages" : "<positiveInt>" // C?Number of printed pages
      }
    ],
  }

 

Alternate definitions: Master Definition (XML, JSON), Schematron

PathNameConformanceValueSet
Library.languageCommon LanguagespreferredCommon Languages
Library.statusPublicationStatusrequiredPublicationStatus
Library.typeLibraryTypeextensibleLibraryType
Library.subject[x]Subject typeextensibleSubject type
Library.jurisdictionJurisdictionextensibleJurisdiction
Library.topicDefinitionTopicexampleDefinitionTopic
Library.relatedArtifact.typeRelatedArtifactTyperequiredRelatedArtifactType
Library.content.contentTypeMimeTyperequiredMimeType
Library.content.languageCommon LanguagespreferredCommon Languages
Library.content.contentTypeMimeTyperequiredMimeType
Library.content.languageCommon LanguagespreferredCommon Languages
Library.content.contentTypeMimeTyperequiredMimeType
Library.content.languageCommon LanguagespreferredCommon Languages
.