FHIR Extensions Pack
5.3.0-ballot-tc1 - (September 2025 Ballot) International flag

This page is part of the FHIR Core Extensions Registry (v5.3.0-ballot-tc1: Release 5.3) based on FHIR (HL7® FHIR® Standard) v5.0.0. This version is a pre-release. The current official version is 5.2.0. For a full list of available versions, see the Directory of published versions

Extension: RenderingStyle - Detailed Descriptions

Page standards status: Trial-use Maturity Level: 3

Definitions for the rendering-style extension.

Guidance on how to interpret the contents of this table can be foundhere

0. Extension
Definition

Indicates an HTML style that should be applied when rendering this element.


Optional Extension Element - found in all resources.

ShortHtml style valueOptional Extensions Element
Comments

This extension would be equivalent to setting the HTML "style" attribute on the root element for the element containing the extension.

NOTE: HTML styles can include references to external content (images, fonts, etc.), which may constitute a security issue, as resolving the link can allow tracking. See here for more detail.

For questionnaires, see additional guidance and examples in the SDC implementation guide. This style applies to the base string. If there is also a rendering-xhtml or rendering-markdown extension, they must declare any relevant styles within those extension values.

Setting styles on elements can be risky. It presumes knowledge of how elements are rendered "by default". For example, setting the color of an element to 'blue' to highlight it might be fine - unless the default background color for a particular renderer is already blue. As well, it's not a given that all elements will be represented by a single HTML element. One element might be referenced by a collection of table cells that span rows and columns. Setting a border style on all of those cells wouldn't give the desired results and auto-tweaking the border style on each cell (deciding whether the border is top,left, right, etc.) would require complex coding. Finally, systems might not be using HTML for their UI at all and will need to map the specified styles to their own UI mechanism. For this reason, this element is best used when: a) the default UI characteristics are already well understood (because the specification applies to a single system or to a set of systems that are already required to comply with specific UI expectations b) the set of allowed style values is tightly controlled to only those that are necessary and sensible in that context

Control0..1*
Is Modifierfalse
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
2. Extension.extension
Definition

An Extension


May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

ShortExtensionAdditional content defined by implementations
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Control0..0*
TypeExtension
Is Modifierfalse
Summaryfalse
Alternate Namesextensions, user content
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
SlicingThis element introduces a set of slices on Extension.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ url
  • 4. Extension.url
    Definition

    Source of the definition for the extension code - a logical name or a URL.

    Shortidentifies the meaning of the extension
    Comments

    The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.

    Control1..1
    Typeuri
    Is Modifierfalse
    XML FormatIn the XML format, this property is represented as an attribute.
    Summaryfalse
    Fixed Valuehttp://hl7.org/fhir/StructureDefinition/rendering-style
    6. Extension.value[x]
    Definition

    Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).

    ShortValue of extension
    Control10..1
    This element is affected by the following invariants: ext-1
    Typestring, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, id, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, code, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time
    [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))

    Guidance on how to interpret the contents of this table can be foundhere

    0. Extension
    Definition

    Indicates an HTML style that should be applied when rendering this element.

    ShortHtml style value
    Comments

    icon Changed:

    This extension would be equivalent to setting the HTML "style" attribute on the root element for the element containing the extension.

    NOTE: HTML styles can include references to external content (images, fonts, etc.), which may constitute a security issue, as resolving the link can allow tracking. See here for more detail.

    For questionnaires, see additional guidance and examples in the SDC implementation guide. This style applies to the base string. If there is also a rendering-xhtml or rendering-markdown extension, they must declare any relevant styles within those extension values.

    Setting styles on elements can be risky. It presumes knowledge of how elements are rendered "by default". For example, setting the color of an element to 'blue' to highlight it might be fine - unless the default background color for a particular renderer is already blue. As well, it's not a given that all elements will be represented by a single HTML element. One element might be referenced by a collection of table cells that span rows and columns. Setting a border style on all of those cells wouldn't give the desired results and auto-tweaking the border style on each cell (deciding whether the border is top,left, right, etc.) would require complex coding. Finally, systems might not be using HTML for their UI at all and will need to map the specified styles to their own UI mechanism. For this reason, this element is best used when: a) the default UI characteristics are already well understood (because the specification applies to a single system or to a set of systems that are already required to comply with specific UI expectations b) the set of allowed style values is tightly controlled to only those that are necessary and sensible in that context

    Control0..1
    2. Extension.extension
    Control0..0
    4. Extension.url
    Fixed Valuehttp://hl7.org/fhir/StructureDefinition/rendering-style
    6. Extension.value[x]
    Control1..?
    Typestring, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, id, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, code, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time
    [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension

    Guidance on how to interpret the contents of this table can be foundhere

    0. Extension
    Definition

    Indicates an HTML style that should be applied when rendering this element.

    ShortHtml style value
    Comments

    icon Changed:

    This extension would be equivalent to setting the HTML "style" attribute on the root element for the element containing the extension.

    NOTE: HTML styles can include references to external content (images, fonts, etc.), which may constitute a security issue, as resolving the link can allow tracking. See here for more detail.

    For questionnaires, see additional guidance and examples in the SDC implementation guide. This style applies to the base string. If there is also a rendering-xhtml or rendering-markdown extension, they must declare any relevant styles within those extension values.

    Setting styles on elements can be risky. It presumes knowledge of how elements are rendered "by default". For example, setting the color of an element to 'blue' to highlight it might be fine - unless the default background color for a particular renderer is already blue. As well, it's not a given that all elements will be represented by a single HTML element. One element might be referenced by a collection of table cells that span rows and columns. Setting a border style on all of those cells wouldn't give the desired results and auto-tweaking the border style on each cell (deciding whether the border is top,left, right, etc.) would require complex coding. Finally, systems might not be using HTML for their UI at all and will need to map the specified styles to their own UI mechanism. For this reason, this element is best used when: a) the default UI characteristics are already well understood (because the specification applies to a single system or to a set of systems that are already required to comply with specific UI expectations b) the set of allowed style values is tightly controlled to only those that are necessary and sensible in that context

    Control0..1
    Is Modifierfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    2. Extension.id
    Definition

    Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

    ShortUnique id for inter-element referencing
    Control0..1
    This element is affected by the following invariants: ele-1
    Typeid
    Is Modifierfalse
    XML FormatIn the XML format, this property is represented as an attribute.
    Summaryfalse
    4. Extension.extension
    Definition

    An Extension

    ShortExtension
    Control0..0
    TypeExtension
    Is Modifierfalse
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    SlicingThis element introduces a set of slices on Extension.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
    • value @ url
    • 6. Extension.url
      Definition

      Source of the definition for the extension code - a logical name or a URL.

      Shortidentifies the meaning of the extension
      Comments

      The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.

      Control1..1
      Typeuri
      Is Modifierfalse
      XML FormatIn the XML format, this property is represented as an attribute.
      Summaryfalse
      Fixed Valuehttp://hl7.org/fhir/StructureDefinition/rendering-style
      8. Extension.value[x]
      Definition

      Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).

      ShortValue of extension
      Control1..1
      This element is affected by the following invariants: ext-1
      Typestring
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summaryfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))