Dermatology Image Annotation FHIR Implementation Guide
0.1.0 - ci-build

Dermatology Image Annotation FHIR Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

## Specification

This page provides a technical overview of the three Observation profiles defined by this IG. For formal definitions, see the Artifacts page.

#### DermatologyImageAnnotation

The DermatologyImageAnnotation profile represents a single annotation result from clinical dermatology photography. It follows the US Core Observation pattern with component slicing for structured data elements.

Category pattern. Each instance requires two category entries: `imaging` from the standard Observation category system, and `dermatology-annotation` from this IG's AnnotationType CodeSystem. Category slicing uses a `#pattern` discriminator on `$this` with `rules = #open`.

derivedFrom requirement. Every annotation must reference its source image through `derivedFrom`, which accepts references to ImagingStudy, DocumentReference, or Media resources. This creates a traceable link from clinical finding to source evidence.

Method binding. The `method` element uses a required binding to AnnotationMethods, which captures how the annotation was produced (expert manual, clinician point-of-care, AI-assisted confirmed, AI-assisted corrected, or AI inference).

Component slicing. Components use a discriminator of type `#pattern` on path `code` with `rules = #open`, following US Core conventions. Required slices include `skinFinding` (1..*) with an extensible binding to DermatologyFindings. Optional slices cover confidence score, segmentation mask, bounding boxes, QA review status, and inter-annotator agreement.

#### AIPrediction

The AIPrediction profile represents an AI model's classification output before clinician review. It is distinct from DermatologyImageAnnotation in several ways:

AIAST security tagging. Every AIPrediction instance must carry `meta.security` with the `AIAST` code from `v3-ObservationValue`, per the HL7 AI Transparency on FHIR IG. This ensures that downstream consumers can identify AI-generated content through a standard mechanism.

Device requirement. The `device` element is required and must reference the Device resource that identifies the AI model, including its name, manufacturer, and version. The `performer` element SHOULD NOT be populated for pure AI inference.

Status constraint. The status is bound to a restricted ValueSet that excludes `final`. AI predictions remain `preliminary` until a clinician acts on them. A clinician's acceptance produces a separate DermatologyImageAnnotation with method `ai-assisted-confirmed` or `ai-assisted-corrected`.

AI-specific components. Required slices include `predictedFinding` (1..*) and `predictionConfidence` (1..1). Optional slices cover `heatmap` (gradient visualization URL) and `inferenceTimeMs` (model latency).

#### AnnotationSeries

The AnnotationSeries profile groups annotations for the same lesion over time using the `hasMember` pattern.

hasMember pattern. The `hasMember` element requires at least two references to DermatologyImageAnnotation resources. The series does not impose temporal ordering on the references themselves. Consumers MUST sort by the `effectiveDateTime` of referenced observations to reconstruct the correct temporal sequence.

Change detection components. Required slices include `changeDetected` (boolean indicating whether the classification changed between time points), `earliestDate`, and `latestDate`. An optional `changeType` slice uses a required binding to the ChangeType CodeSystem for structured change classification.

Status and performer. The series status is fixed to `final` because it represents a computed summary. The `performer` element SHOULD NOT be populated because the series is system-generated.