## Profile Comparison between http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-screening-assessment vs http://hl7.org/fhir/us/uds-plus/StructureDefinition/uds-plus-sexual-orientation-observation

Left: | US Core Observation Screening Assessment Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-screening-assessment)
Right: | De-Identified UDS Plus Sexual Orientation (http://hl7.org/fhir/us/uds-plus/StructureDefinition/uds-plus-sexual-orientation-observation)

### Messages

Error | StructureDefinition.url | Values for url differ: 'http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-screening-assessment' vs 'http://hl7.org/fhir/us/uds-plus/StructureDefinition/uds-plus-sexual-orientation-observation'
Error | StructureDefinition.version | Values for version differ: '9.0.0-ballot' vs '0.1.0'
Information | StructureDefinition.name | Values for name differ: 'USCoreObservationScreeningAssessmentProfile' vs 'UDSPlusSexualOrientation'
Information | StructureDefinition.title | Values for title differ: 'US Core Observation Screening Assessment Profile' vs 'De-Identified UDS Plus Sexual Orientation'
Information | StructureDefinition.date | Values for date differ: '2024-11-16' vs '2026-03-16T10:54:28+00:00'
Information | StructureDefinition.publisher | Values for publisher differ: 'HL7 International / Cross-Group Projects' vs 'HL7 International / Cross Group Projects'
Information | StructureDefinition.short | Values for short differ: 'Survey Observation' vs 'De-Identified UDS Plus Sexual Orientation'
Information | StructureDefinition.definition | Values for definition differ: 'Measurements and simple assertions made about a patient, device or other subject.' vs 'The UDS+ profile is based on the **US Core Sexual Orientation Observation profile and establishes the core elements, extensions, vocabularies and value sets for representing Sexual Orientation for UDS+ program.'
Warning | Observation.category | Elements differ in definition for mustSupport: 'true' vs 'false'
Information | Observation.category | Element minimum cardinalities differ: '1' vs '0'
Information | Observation.code | Example/preferred bindings differ at Observation.code using binding from USCoreObservationScreeningAssessmentProfile
Information | StructureDefinition.definition | Values for definition differ: 'The time or time-period the observed value is asserted as being true. For biological subjects - e.g., human patients - this is usually called the 'physiologically relevant time'.' vs 'The time or time-period the observed value is asserted as being true. For biological subjects - e.g. human patients - this is usually called the 'physiologically relevant time'. This is usually either the time of the procedure or of specimen collection, but very often the source of the date/time is not known, only the date/time itself.'
Information | StructureDefinition.comment | Values for comment differ: 'At least a date should be present unless this observation is a historical report.' vs 'At least a date should be present unless this observation is a historical report. For recording imprecise or 'fuzzy' times (For example, a blood glucose measurement taken 'after breakfast') use the [Timing](http://hl7.org/fhir/R4/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.'
Warning | Observation.effective[x] | Elements differ in definition for mustSupport: 'true' vs 'false'
Warning | Observation.performer | Elements differ in definition for mustSupport: 'true' vs 'false'
Information | StructureDefinition.comment | Values for comment differ: 'An observation may have a value if it represents an individual survey, screening, or assessment question and answer pair. An observation should not have a value if it represents a multi-question or multi-select “check all that apply” responses. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value.' vs 'An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/R4/observation.html#notes) below.'
Warning | Observation.value[x] | Elements differ in definition for mustSupport: 'true' vs 'false'
Information | StructureDefinition.comment | Values for comment differ: ''Null' or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. The alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For a given LOINC question, if the LOINC answer list includes concepts such as 'unknown' or 'not available', they should be used for Observation.value. Where these concepts are not part of the value set for Observation.value, the Observation.dataAbsentReason can be used if necessary and appropriate.' vs 'Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be 'detected', 'not detected', 'inconclusive', or 'specimen unsatisfactory'. The alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code 'error' could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.'
Warning | Observation.dataAbsentReason | Elements differ in definition for mustSupport: 'true' vs 'false'
Information | StructureDefinition.short | Values for short differ: 'Reference to panel members or multi-select responses or multi-select responses' vs 'Related resource that belongs to the Observation group'
Information | StructureDefinition.definition | Values for definition differ: 'Aggregate set of Observations that represent question answer pairs for both multi-question surveys, screenings, and assessments and multi-select questions.' vs 'This observation is a group observation (e.g. a battery, a panel of tests, a set of vital sign measurements) that includes the target as a member of the group.'
Information | StructureDefinition.comment | Values for comment differ: 'This grouping element is used to represent surveys, screenings, and assessments that group several questions together or individual questions with “check all that apply” responses. For example in the simplest case a flat multi-question survey where the 'panel' observation is the survey instrument itself and instead of an `Observation.value` the `hasMember` element references other Observation that represent the individual questions answer pairs. When there is a heirarchical grouping of questions, the observation 'panels' can be nested. Because surveys, screenings, and assessments can be arbitrarily complex structurally, not all structures can be represented using this Observation grouping pattern.' vs 'When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/R4/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/R4/questionnaireresponse.html) into a final score and represent the score as an Observation.'
Warning | Observation.hasMember | Elements differ in definition for mustSupport: 'true' vs 'false'
Information | StructureDefinition.definition | Values for definition differ: 'Observations or or other resource such as a QuestionnaireResponse from which this observation value is derived.' vs 'The target resource that represents a measurement from which this observation value is derived. For example, a calculated anion gap or a fetal measurement based on an ultrasound image.'
Warning | Observation.derivedFrom | Elements differ in definition for mustSupport: 'true' vs 'false'
Error | Observation.derivedFrom | Type Mismatch: Reference([CanonicalType[http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-screening-assessment], CanonicalType[http://hl7.org/fhir/us/core/StructureDefinition/us-core-questionnaireresponse], CanonicalType[http://hl7.org/fhir/us/core/StructureDefinition/us-core-documentreference], CanonicalType[http://hl7.org/fhir/StructureDefinition/ImagingStudy], CanonicalType[http://hl7.org/fhir/StructureDefinition/Media], CanonicalType[http://hl7.org/fhir/StructureDefinition/MolecularSequence]]) vs Reference([CanonicalType[http://hl7.org/fhir/StructureDefinition/DocumentReference|4.0.1], CanonicalType[http://hl7.org/fhir/StructureDefinition/ImagingStudy|4.0.1], CanonicalType[http://hl7.org/fhir/StructureDefinition/Media|4.0.1], CanonicalType[http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse|4.0.1], CanonicalType[http://hl7.org/fhir/StructureDefinition/Observation|4.0.1], CanonicalType[http://hl7.org/fhir/StructureDefinition/MolecularSequence|4.0.1]])

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/Observation |
copyright | Used by permission of HL7 International, all rights reserved Creative Commons License |  | Removed the item 'Used by permission of HL7 International, all rights reserved Creative Commons License'
date | 2024-11-16 | 2026-03-16T10:54:28+00:00 | Values Differ
description | The US Core Observation Screening Assessment Profile inherits from the FHIR [Observation](https://hl7.org/fhir/R4/observation.html) resource; refer to it for scope and usage definitions. Beginning with US Core Version 6.0.0, this profile supersedes the US Core Observation Survey Profile (see the [Changes Between Versions](changes-between-versions.html) page for a summary of cross-version comparisons of US Core Profiles). This profile meets the requirements of the U.S. Core Data for Interoperability (USCDI) *Health Status Assessments* Data Class. It sets the minimum expectations for the Observation Resource to record, search, and fetch observations representing the questions and responses to surveys and screening and assessment tools. For example, a social history status such as education or food insecurity or an assessment of cognitive, functional, or disability status. It can represent a single response, multiple responses, and multi-select "check all that apply" type questions. This profile specifies which core elements, extensions, vocabularies, and value sets **SHALL** be present in the resource and constrains how the elements are used. Providing the floor for standards development for specific use cases promotes interoperability and adoption. Before reviewing this profile, implementers are encouraged to read the Screening and Assessments guidance page, which documents the process of recording responses and capturing assertions/determinations resulting from surveys and questionnaires. | The UDS+ profile is based on the **US Core Sexual Orientation Observation profile and establishes the core elements, extensions, vocabularies and value sets for representing Sexual Orientation for UDS+ program. | Values Differ
experimental |  | false | Added the item 'false'
fhirVersion | 4.0.1 |
jurisdiction |  |
jurisdiction[0] | urn:iso:std:iso:3166#US |
kind | resource |
name | USCoreObservationScreeningAssessmentProfile | UDSPlusSexualOrientation | Values Differ
publisher | HL7 International / Cross-Group Projects | HL7 International / Cross Group Projects | Values Differ
purpose |  |
status | active |
title | US Core Observation Screening Assessment Profile | De-Identified UDS Plus Sexual Orientation | Values Differ
type | Observation |
url | http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-screening-assessment | http://hl7.org/fhir/us/uds-plus/StructureDefinition/uds-plus-sexual-orientation-observation | Values Differ
version | 9.0.0-ballot | 0.1.0 | Values Differ

### Structure

Name | L Flags | L Card. | L Type | L Description & Constraints | R Flags | R Card. | R Type | R Description & Constraints | Comments
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
Observation | C | 0..* | Observation | Survey Observation Constraints: us-core-2 | C | 0..* | Observation | De-Identified UDS Plus Sexual Orientation |
id | Σ | 0..1 | id | Logical id of this artifact | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language |  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
|  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements |
contained |  | 0..* | Resource | Contained, inline Resources |  | 0..* | Resource | Contained, inline Resources |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Business Identifier for observation | Σ | 0..* | Identifier | Business Identifier for observation |
basedOn | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order |
partOf | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Part of referenced event | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) | Part of referenced event |
status | ?!S Σ | 1..1 | code | registered | preliminary | final | amended + Binding: ?? (required): Codes providing the status of an observation. | ?!S Σ | 1..1 | code | registered | preliminary | final | amended + Binding: ?? (required): Codes providing the status of an observation. Fixed Value: final |
Slices for category | S | 1..* | CodeableConcept | Classification of type of observation Slice: Unordered, Open by value:$this Binding: ?? (preferred): Codes for high level observation categories. |  | 0..* | CodeableConcept | Classification of type of observation Binding: ?? (preferred): Codes for high level observation categories. | Elements differ in definition for mustSupport: 'true' vs 'false' Element minimum cardinalities differ: '1' vs '0'
code | S Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: ?? (preferred) | S Σ | 1..1 | CodeableConcept | Type of observation (code / type) Binding: ?? (example): Codes identifying names of simple observations. Required Pattern: {"coding":[{"system":"http://loinc.org","code":"76690-7"}]} | Example/preferred bindings differ at Observation.code using binding from USCoreObservationScreeningAssessmentProfile
subject | S Σ | 1..1 | Reference(US Core Patient Profile S | Group | US Core Device Profile | US Core Location Profile) | Who and/or what the observation is about | S Σ | 1..1 | Reference(De-Identified UDS Plus Patient) | Who and/or what the observation is about |
focus | Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record |
encounter | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made | Σ | 0..1 | Reference(Encounter) | Healthcare event during which this observation is made |
effective[x] | S Σ C | 0..1 | dateTime S, Period, Timing, instant | Clinically relevant time/time-period for observation Constraints: us-core-1 | Σ | 0..1 | dateTime, Period, Timing, instant | Clinically relevant time/time-period for observation Slice: Unordered, Open by type:$this | Elements differ in definition for mustSupport: 'true' vs 'false'
issued | Σ | 0..1 | instant | Date/Time this version was made available | Σ | 0..1 | instant | Date/Time this version was made available |
performer | S Σ | 0..* | Reference(US Core Practitioner Profile S | US Core Patient Profile S | US Core Organization Profile | PractitionerRole | US Core CareTeam Profile | US Core RelatedPerson Profile) | Who is responsible for the observation | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) | Who is responsible for the observation | Elements differ in definition for mustSupport: 'true' vs 'false'
value[x] | S Σ C | 0..1 | Quantity S, CodeableConcept S, string S, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual result Constraints: us-core-3 | Σ C | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual result Slice: Unordered, Open by type:$this | Elements differ in definition for mustSupport: 'true' vs 'false'
dataAbsentReason | S C | 0..1 | CodeableConcept | Why the result is missing Binding: ?? (extensible): Codes specifying why the result (Observation.value[x]) is missing. | C | 0..1 | CodeableConcept | Why the result is missing Binding: ?? (extensible): Codes specifying why the result (Observation.value[x]) is missing. | Elements differ in definition for mustSupport: 'true' vs 'false'
interpretation |  | 0..* | CodeableConcept | High, low, normal, etc. Binding: ?? (extensible): Codes identifying interpretations of observations. |  | 0..* | CodeableConcept | High, low, normal, etc. Binding: ?? (extensible): Codes identifying interpretations of observations. |
note |  | 0..* | Annotation | Comments about the observation |  | 0..* | Annotation | Comments about the observation |
bodySite |  | 0..1 | CodeableConcept | Observed body part Binding: ?? (example): Codes describing anatomical locations. May include laterality. |  | 0..1 | CodeableConcept | Observed body part Binding: ?? (example): Codes describing anatomical locations. May include laterality. |
method |  | 0..1 | CodeableConcept | How it was done Binding: ?? (example): Methods for simple observations. |  | 0..1 | CodeableConcept | How it was done Binding: ?? (example): Methods for simple observations. |
specimen |  | 0..1 | Reference(Specimen) | Specimen used for this observation |  | 0..1 | Reference(Specimen) | Specimen used for this observation |
device |  | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device |  | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device |
referenceRange | C | 0..* | BackboneElement | Provides guide for interpretation | C | 0..* | BackboneElement | Provides guide for interpretation |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
low | C | 0..1 | ?? | Low Range, if relevant | C | 0..1 | ?? | Low Range, if relevant |
high | C | 0..1 | ?? | High Range, if relevant | C | 0..1 | ?? | High Range, if relevant |
type |  | 0..1 | CodeableConcept | Reference range qualifier Binding: ?? (preferred): Code for the meaning of a reference range. |  | 0..1 | CodeableConcept | Reference range qualifier Binding: ?? (preferred): Code for the meaning of a reference range. |
appliesTo |  | 0..* | CodeableConcept | Reference range population Binding: ?? (example): Codes identifying the population the reference range applies to. |  | 0..* | CodeableConcept | Reference range population Binding: ?? (example): Codes identifying the population the reference range applies to. |
age |  | 0..1 | Range | Applicable age range, if relevant |  | 0..1 | Range | Applicable age range, if relevant |
text |  | 0..1 | string | Text based reference range in an observation |  | 0..1 | string | Text based reference range in an observation |
hasMember | S Σ | 0..* | Reference(US Core Observation Screening Assessment Profile S | QuestionnaireResponse | MolecularSequence) | Reference to panel members or multi-select responses or multi-select responses | Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group | Elements differ in definition for mustSupport: 'true' vs 'false'
derivedFrom | S Σ | 0..* | Reference(US Core Observation Screening Assessment Profile S | US Core QuestionnaireResponse Profile S | US Core DocumentReference Profile | ImagingStudy | Media | MolecularSequence) | Related measurements the observation is made from | Σ | 0..* | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) | Related measurements the observation is made from | Elements differ in definition for mustSupport: 'true' vs 'false' Type Mismatch: Reference([CanonicalType[http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-screening-assessment], CanonicalType[http://hl7.org/fhir/us/core/StructureDefinition/us-core-questionnaireresponse], CanonicalType[http://hl7.org/fhir/us/core/StructureDefinition/us-core-documentreference], CanonicalType[http://hl7.org/fhir/StructureDefinition/ImagingStudy], CanonicalType[http://hl7.org/fhir/StructureDefinition/Media], CanonicalType[http://hl7.org/fhir/StructureDefinition/MolecularSequence]]) vs Reference([CanonicalType[http://hl7.org/fhir/StructureDefinition/DocumentReference|4.0.1], CanonicalType[http://hl7.org/fhir/StructureDefinition/ImagingStudy|4.0.1], CanonicalType[http://hl7.org/fhir/StructureDefinition/Media|4.0.1], CanonicalType[http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse|4.0.1], CanonicalType[http://hl7.org/fhir/StructureDefinition/Observation|4.0.1], CanonicalType[http://hl7.org/fhir/StructureDefinition/MolecularSequence|4.0.1]])
component | Σ | 0..* | BackboneElement | Component results | Σ | 0..* | BackboneElement | Component results |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
code | Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: ?? (example): Codes identifying names of simple observations. | Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: ?? (example): Codes identifying names of simple observations. |
value[x] | Σ | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual component result | Σ | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Actual component result |
dataAbsentReason | C | 0..1 | CodeableConcept | Why the component result is missing Binding: ?? (extensible): Codes specifying why the result (Observation.value[x]) is missing. | C | 0..1 | CodeableConcept | Why the component result is missing Binding: ?? (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
interpretation |  | 0..* | CodeableConcept | High, low, normal, etc. Binding: ?? (extensible): Codes identifying interpretations of observations. |  | 0..* | CodeableConcept | High, low, normal, etc. Binding: ?? (extensible): Codes identifying interpretations of observations. |
referenceRange |  | 0..* | See referenceRange (Observation) | Provides guide for interpretation of component result |  | 0..* | See referenceRange (Observation) | Provides guide for interpretation of component result |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
low | C | 0..1 | ?? | Low Range, if relevant | C | 0..1 | ?? | Low Range, if relevant |
high | C | 0..1 | ?? | High Range, if relevant | C | 0..1 | ?? | High Range, if relevant |
type |  | 0..1 | CodeableConcept | Reference range qualifier Binding: ?? (preferred): Code for the meaning of a reference range. |  | 0..1 | CodeableConcept | Reference range qualifier Binding: ?? (preferred): Code for the meaning of a reference range. |
appliesTo |  | 0..* | CodeableConcept | Reference range population Binding: ?? (example): Codes identifying the population the reference range applies to. |  | 0..* | CodeableConcept | Reference range population Binding: ?? (example): Codes identifying the population the reference range applies to. |
age |  | 0..1 | Range | Applicable age range, if relevant |  | 0..1 | Range | Applicable age range, if relevant |
text |  | 0..1 | string | Text based reference range in an observation |  | 0..1 | string | Text based reference range in an observation |
Documentation for this format