The AIS segment carries the service being scheduled within an appointment: which procedure or service is requested, when it starts, how long it lasts, whether substitution is allowed, and the filler's status for that service. Where SCH describes the appointment as a whole, AIS describes one schedulable service line inside it — a single appointment can carry several AIS segments, one per service.
Purpose
AIS identifies a service requested in a scheduling transaction and its timing: the universal service identifier, start date/time and offset, duration and duration units, substitution permission, and the filler status code. It lets a placer ask for a specific service at a specific time and lets a filler report back the status of that service.
Used in
AIS appears in SIU scheduling messages, where it details each requested service inside a scheduled appointment. See SIU.
Field-by-field reference
Source: the Vorro HL7 segment database (extracted from the official v2-to-FHIR IG). R = required (cardinality min ≥ 1). Repeat = field may repeat. Length is not carried by the FHIR source and is shown as —.
| Seq | Name | Data Type | Length | Req | Repeat | Table # | Description |
|---|---|---|---|---|---|---|---|
| AIS-1 | Set ID - AIS | SI | — | R | — | — | Sequence number for this service line; usually 1. |
| AIS-2 | Segment Action Code | ID | — | O | — | — | Add, update, or delete action for the service. |
| AIS-3 | Universal Service Identifier | CWE | — | O | — | — | The procedure or service being scheduled. |
| AIS-4 | Start Date/Time | DTM | — | O | — | — | When the service is scheduled to start. |
| AIS-5 | Start Date/Time Offset | NM | — | O | — | — | Offset from appointment start before this service. |
| AIS-6 | Start Date/Time Offset Units | CNE | — | O | — | — | Units for the start offset value. |
| AIS-7 | Duration | NM | — | O | — | — | How long the service is expected to take. |
| AIS-8 | Duration Units | CNE | — | O | — | — | Units for the duration value. |
| AIS-9 | Allow Substitution Code | CWE | — | O | — | — | Whether an equivalent service may be substituted. |
| AIS-10 | Filler Status Code | CWE | — | O | — | — | Filler's status for this scheduled service. |
| AIS-11 | Placer Supplemental Service Information | CWE | — | O | Y | — | Extra placer-supplied service detail(s). |
| AIS-12 | Filler Supplemental Service Information | CWE | — | O | Y | — | Extra filler-supplied service detail(s). |
Most-used fields
- AIS-3 Universal Service Identifier is the core of the segment — it names the procedure or service being scheduled and drives service-type routing downstream.
- AIS-4 Start Date/Time anchors when the service begins; AIS-5/AIS-6 express it as an offset from the appointment start when relative timing is used.
- AIS-7 Duration and AIS-8 Duration Units size the service slot for calendar and resource planning.
- AIS-10 Filler Status Code reports the filler's view of the service (pending, booked, etc.) and maps directly to appointment status.
- AIS-1 Set ID is the only required field and distinguishes multiple service lines in one appointment.
Version differences (2.3 to 2.8.2)
- 2.3: AIS introduced alongside the SIU scheduling message family.
- 2.5: coded fields move from
CEtowardCWE; offset/duration units expressed withCNE. - 2.7+: AIS-11/AIS-12 supplemental service information fields clarified for repeating use.
- Receivers built for older versions ignore trailing fields they do not recognize.
Common mistakes
- Putting service timing only in SCH and leaving AIS-4 empty, so per-service start times are lost.
- Sending AIS-5 offset without AIS-6 units (or vice versa), making the relative start ambiguous.
- Sending AIS-7 duration without AIS-8 units, so the slot length cannot be computed.
- Reading only the first repetition of AIS-11/AIS-12 when several supplemental details are listed.
Examples
Minimal valid AIS (only the required Set ID and a service):
AIS|1||PROC123^Echocardiogram^L
Fully-populated AIS (timed service line):
AIS|1|A|PROC123^Echocardiogram^L|20260615090000|0|min|30|min|G^Allowed^HL70279|Booked^^HL70278|PLC001^Fasting required|FLR001^Room 4
Annotated breakdown of the fully-populated example (selected fields):
AIS ← segment ID
1 ← AIS-1 Set ID
A ← AIS-2 Segment Action Code (Add)
PROC123^Echocardiogram^L ← AIS-3 Universal Service Identifier
20260615090000 ← AIS-4 Start Date/Time
0 ← AIS-5 Start Date/Time Offset
min ← AIS-6 Start Date/Time Offset Units
30 ← AIS-7 Duration
min ← AIS-8 Duration Units
G^Allowed^HL70279 ← AIS-9 Allow Substitution Code
Booked^^HL70278 ← AIS-10 Filler Status Code
In-context inside an SIU^S12 (new appointment booking):
MSH|^~&|SCHED|MERCYGEN|EHR|MERCYGEN|20260610120000||SIU^S12^SIU_S12|MSG201|P|2.5.1
SCH|APPT001||||||ROUTINE^Routine^L|||30|min|^^^20260615090000^20260615093000
PID|1||MR12345^^^MERCYGEN^MR||DOE^JOHN^Q||19800101|M
AIS|1|A|PROC123^Echocardiogram^L|20260615090000|0|min|30|min||Booked^^HL70278
In-context inside an SIU^S12 with two service lines:
MSH|^~&|SCHED|MERCYGEN|EHR|MERCYGEN|20260610120000||SIU^S12^SIU_S12|MSG202|P|2.5.1
SCH|APPT002||||||ROUTINE^Routine^L|||60|min|^^^20260615100000^20260615110000
PID|1||MR67890^^^MERCYGEN^MR||ROE^JANE^A||19750202|F
AIS|1|A|PROC123^Echocardiogram^L|20260615100000|0|min|30|min||Booked^^HL70278
AIS|2|A|PROC456^Consultation^L|20260615103000|30|min|30|min||Booked^^HL70278
FHIR mapping
Primary target resource: Appointment. AIS also maps to ServiceRequest (service identifiers and the occurrence period). Official ConceptMaps: Appointment, ServiceRequest.
Key Appointment mappings:
| AIS field | FHIR target (Appointment) |
|---|---|
| AIS-3 Universal Service Identifier | serviceType (CodeableConcept) |
| AIS-4 Start Date/Time | participant.period.start |
| AIS-5 Start Date/Time Offset | participant.period.start (start + AIS-5 per AIS-6 units) |
| AIS-7 Duration | participant.period.end (start + AIS-7) |
| AIS-10 Filler Status Code | status (CodeableConcept, FillerStatusCodes) |
ServiceRequest mappings:
| AIS field | FHIR target (ServiceRequest) |
|---|---|
| AIS-3 Universal Service Identifier | identifier[1] |
| AIS-4 Start Date/Time | occurrencePeriod.start (Period) |
| AIS-5 Start Date/Time Offset | occurrencePeriod.start (start + AIS-5 per AIS-6 units) |
| AIS-7 Duration | occurrencePeriod.end (start + AIS-7) |
| AIS-11 Placer Supplemental Service Information | identifier[2] |
| AIS-12 Filler Supplemental Service Information | identifier[3] |
Fields without a published mapping (AIS-1 Set ID, AIS-2 Segment Action Code, AIS-6 Start Date/Time Offset Units, AIS-8 Duration Units, AIS-9 Allow Substitution Code) are processing or unit fields consumed when computing the mapped values rather than mapped to their own elements.
Engine considerations
- Required in practice: AIS-1 is the only standard-required field, but real interfaces also require AIS-3 (the service) and AIS-4 (start time) for a usable schedule entry.
- Compute the FHIR period end from AIS-4 plus AIS-7 according to AIS-8 units; keep offset (AIS-5) and units (AIS-6) together.
- Preserve multiple AIS segments per appointment as distinct service lines, keyed by AIS-1 Set ID.
- Repeating supplemental fields (AIS-11/AIS-12) must be preserved as arrays.
How Vorro parses and produces AIS
Vorro maps AIS-3 to Appointment.serviceType, derives the participant period from AIS-4/AIS-5/AIS-7 with their unit fields, and translates AIS-10 to Appointment.status via the official FillerStatusCodes value set. When a ServiceRequest is emitted, AIS-3 and the supplemental fields (AIS-11/AIS-12) become typed identifiers and AIS-4/AIS-7 set the occurrence period, all per the official ConceptMap. Multiple AIS service lines are preserved as separate entries keyed by Set ID.
Related pages
- SCH — the appointment-level segment AIS lines sit under.
- AIG — appointment information for a general resource, parallel to AIS.
- SIU messages — where AIS carries scheduled services.
