NCPI FHIR Implementation Guide v2
0.2.0 - ci-build

NCPI FHIR Implementation Guide v2 - Local Development build (v0.2.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Data Type Profile: DRS Attachment

Official URL: https://nih-ncpi.github.io/ncpi-fhir-ig-2/StructureDefinition/ncpi-drs-attachment Version: 0.2.0
Draft as of 2025-12-03 Computable Name: DRSAttachment

A FHIR Attachment with a DRS url.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Attachment C 0..* Attachment Content in a format defined elsewhere
Constraints: att-1, must-be-drs-uri

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
att-1 error Attachment If the Attachment has data, it SHALL have a contentType data.empty() or contentType.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
must-be-drs-uri error Attachment attachment.url must start with ^drs://. A drs:// hostname-based URI, as defined in the DRS documentation, that tells clients how to access this object. The intent of this field is to make DRS objects self-contained, and therefore easier for clients to store and pass around. For example, if you arrive at this DRS JSON by resolving a compact identifier-based DRS URI, the `self_uri` presents you with a hostname and properly encoded DRS ID for use in subsequent `access` endpoint calls. $this.url.matches('^drs://.*')

This structure is derived from Attachment

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Attachment C 0..* Attachment Content in a format defined elsewhere
Constraints: must-be-drs-uri

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
must-be-drs-uri error Attachment attachment.url must start with ^drs://. A drs:// hostname-based URI, as defined in the DRS documentation, that tells clients how to access this object. The intent of this field is to make DRS objects self-contained, and therefore easier for clients to store and pass around. For example, if you arrive at this DRS JSON by resolving a compact identifier-based DRS URI, the `self_uri` presents you with a hostname and properly encoded DRS ID for use in subsequent `access` endpoint calls. $this.url.matches('^drs://.*')
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Attachment C 0..* Attachment Content in a format defined elsewhere
Constraints: att-1, must-be-drs-uri
... id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... contentType Σ 0..1 code Mime type of the content, with charset etc.
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
Example General: text/plain; charset=UTF-8, image/png
... data 0..1 base64Binary Data inline, base64ed
... url Σ 0..1 url Uri where the data can be found
Example General: http://www.acme.com/logo-small.png
... size Σ 0..1 unsignedInt Number of bytes of content (if url provided)
... hash Σ 0..1 base64Binary Hash of the data (sha-1, base64ed)
... title Σ 0..1 string Label to display in place of the data
Example General: Official Corporate Logo
... creation Σ 0..1 dateTime Date attachment was first created

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Attachment.contentType Base required MimeType 📍4.0.1 FHIR Std.
Attachment.language Base preferred Common Languages 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
att-1 error Attachment If the Attachment has data, it SHALL have a contentType data.empty() or contentType.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()
must-be-drs-uri error Attachment attachment.url must start with ^drs://. A drs:// hostname-based URI, as defined in the DRS documentation, that tells clients how to access this object. The intent of this field is to make DRS objects self-contained, and therefore easier for clients to store and pass around. For example, if you arrive at this DRS JSON by resolving a compact identifier-based DRS URI, the `self_uri` presents you with a hostname and properly encoded DRS ID for use in subsequent `access` endpoint calls. $this.url.matches('^drs://.*')

This structure is derived from Attachment

Summary

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Attachment C 0..* Attachment Content in a format defined elsewhere
Constraints: att-1, must-be-drs-uri

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
att-1 error Attachment If the Attachment has data, it SHALL have a contentType data.empty() or contentType.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
must-be-drs-uri error Attachment attachment.url must start with ^drs://. A drs:// hostname-based URI, as defined in the DRS documentation, that tells clients how to access this object. The intent of this field is to make DRS objects self-contained, and therefore easier for clients to store and pass around. For example, if you arrive at this DRS JSON by resolving a compact identifier-based DRS URI, the `self_uri` presents you with a hostname and properly encoded DRS ID for use in subsequent `access` endpoint calls. $this.url.matches('^drs://.*')

Differential View

This structure is derived from Attachment

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Attachment C 0..* Attachment Content in a format defined elsewhere
Constraints: must-be-drs-uri

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
must-be-drs-uri error Attachment attachment.url must start with ^drs://. A drs:// hostname-based URI, as defined in the DRS documentation, that tells clients how to access this object. The intent of this field is to make DRS objects self-contained, and therefore easier for clients to store and pass around. For example, if you arrive at this DRS JSON by resolving a compact identifier-based DRS URI, the `self_uri` presents you with a hostname and properly encoded DRS ID for use in subsequent `access` endpoint calls. $this.url.matches('^drs://.*')

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Attachment C 0..* Attachment Content in a format defined elsewhere
Constraints: att-1, must-be-drs-uri
... id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... contentType Σ 0..1 code Mime type of the content, with charset etc.
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
Example General: text/plain; charset=UTF-8, image/png
... data 0..1 base64Binary Data inline, base64ed
... url Σ 0..1 url Uri where the data can be found
Example General: http://www.acme.com/logo-small.png
... size Σ 0..1 unsignedInt Number of bytes of content (if url provided)
... hash Σ 0..1 base64Binary Hash of the data (sha-1, base64ed)
... title Σ 0..1 string Label to display in place of the data
Example General: Official Corporate Logo
... creation Σ 0..1 dateTime Date attachment was first created

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Attachment.contentType Base required MimeType 📍4.0.1 FHIR Std.
Attachment.language Base preferred Common Languages 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
att-1 error Attachment If the Attachment has data, it SHALL have a contentType data.empty() or contentType.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()
must-be-drs-uri error Attachment attachment.url must start with ^drs://. A drs:// hostname-based URI, as defined in the DRS documentation, that tells clients how to access this object. The intent of this field is to make DRS objects self-contained, and therefore easier for clients to store and pass around. For example, if you arrive at this DRS JSON by resolving a compact identifier-based DRS URI, the `self_uri` presents you with a hostname and properly encoded DRS ID for use in subsequent `access` endpoint calls. $this.url.matches('^drs://.*')

This structure is derived from Attachment

Summary

 

Other representations of profile: CSV, Excel, Schematron