The AIL segment describes a location resource being requested for, or scheduled into, an appointment: which location, what type of location, when it is needed, and for how long. It is one of the appointment-resource segments in scheduling messages — where SCH holds the appointment as a whole, AIL says which place the appointment needs and the slot of time that place is held.
Purpose
AIL carries a single location resource for an appointment: the location identifier, its type and group, the start time (absolute or expressed as an offset from the appointment start), the duration, and the filler's status for that resource. A scheduling message may include several AIL segments when an appointment needs more than one location.
Used in
AIL appears in SIU scheduling messages, where it sits alongside the appointment (SCH) and the other resource segments to request or confirm a location. 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 |
|---|---|---|---|---|---|---|---|
| AIL-1 | Set ID - AIL | SI | — | R | — | — | Sequence number for this AIL; usually 1. |
| AIL-2 | Segment Action Code | ID | — | O | — | — | Add, update, or delete action for this resource. |
| AIL-3 | Location Resource ID | PL | — | O | — | — | The location being requested or scheduled. |
| AIL-4 | Location Type - AIL | CWE | — | O | — | — | Kind of location (room, clinic, bed). |
| AIL-5 | Location Group | CWE | — | O | — | — | Pool or group the location belongs to. |
| AIL-6 | Start Date/Time | DTM | — | O | — | — | Absolute start time the location is needed. |
| AIL-7 | Start Date/Time Offset | NM | — | O | — | — | Start expressed as offset from appointment start. |
| AIL-8 | Start Date/Time Offset Units | CNE | — | O | — | — | Units for the start offset. |
| AIL-9 | Duration | NM | — | O | — | — | How long the location is needed. |
| AIL-10 | Duration Units | CNE | — | O | — | — | Units for the duration value. |
| AIL-11 | Allow Substitution Code | CWE | — | O | — | — | Whether another location may be substituted. |
| AIL-12 | Filler Status Code | CWE | — | O | — | — | Filler's status for this location resource. |
Most-used fields
- AIL-1 Set ID is the only required field and orders multiple AIL segments within one appointment.
- AIL-3 Location Resource ID names the location being held — the value downstream systems match on for room/clinic scheduling.
- AIL-6 Start Date/Time gives the absolute time the location is needed; AIL-7/AIL-8 give the same as an offset from the appointment start when absolute timing is not known.
- AIL-9 Duration with AIL-10 units bounds how long the location is occupied.
- AIL-12 Filler Status Code reflects whether the filler has booked, pending, or declined the location.
Version differences (2.3 to 2.8.2)
- 2.3: AIL was introduced with the scheduling message set (SIU/SRM) alongside AIG, AIS, and AIP.
- 2.5: coded fields move from
CEtowardCWE; offset/duration unit fields useCNE. - 2.7+: field definitions stabilize; no new components are added to AIL.
- Receivers built for an earlier version ignore trailing fields they do not recognize.
Common mistakes
- Treating AIL-3 as free text instead of a structured
PLand losing point-of-care/room/bed components. - Populating both AIL-6 (absolute start) and AIL-7/AIL-8 (offset) inconsistently, so the computed start disagrees.
- Sending AIL-9 Duration without AIL-10 Duration Units, leaving the value ambiguous.
- Assuming one location per appointment and reading only the first AIL when several are present.
Examples
Minimal valid AIL (only the required Set ID and a location):
AIL|1||ROOM5^^^MAINCLINIC
Fully-populated AIL (location requested for a specific window):
AIL|1|A|ROOM5^^^MAINCLINIC|EXAM|CARDGRP|20260615090000||||30|MIN|N|Booked
Annotated breakdown of the fully-populated example (selected fields):
AIL ← segment ID
1 ← AIL-1 Set ID
A ← AIL-2 Segment Action Code (Add)
ROOM5^^^MAINCLINIC ← AIL-3 Location Resource ID (PL)
EXAM ← AIL-4 Location Type
CARDGRP ← AIL-5 Location Group
20260615090000 ← AIL-6 Start Date/Time
30 ← AIL-9 Duration
MIN ← AIL-10 Duration Units
N ← AIL-11 Allow Substitution Code
Booked ← AIL-12 Filler Status Code
In-context inside an SIU^S12 (new appointment booking) using an absolute start:
MSH|^~&|SCHED|MAINCLINIC|EHR|MAINCLINIC|20260610120000||SIU^S12^SIU_S12|MSG201|P|2.5.1
SCH|1001^MAINCLINIC|||||OFFICE|ROUTINE|30|MIN|^^30^20260615090000^20260615093000||||||DOE^JOHN
PID|1||MR12345^^^MAINCLINIC^MR||DOE^JOHN^Q||19800101|M
AIL|1|A|ROOM5^^^MAINCLINIC|EXAM|CARDGRP|20260615090000||||30|MIN|N|Booked
In-context inside an SIU^S12 with the location start expressed as an offset:
MSH|^~&|SCHED|MAINCLINIC|EHR|MAINCLINIC|20260610120000||SIU^S12^SIU_S12|MSG202|P|2.5.1
SCH|1002^MAINCLINIC|||||OFFICE|ROUTINE|45|MIN|^^45^20260616100000^20260616104500||||||ROE^JANE
PID|1||MR67890^^^MAINCLINIC^MR||ROE^JANE^B||19770505|F
AIL|1|A|LAB2^^^MAINCLINIC|LAB|LABGRP||15|MIN||45|MIN|Y|Pending
FHIR mapping
Primary target resource: Appointment. AIL contributes the location as an appointment participant and the timing that derives that participant's period. Official ConceptMap: Appointment.
Key Appointment mappings:
| AIL field | FHIR target (Appointment) |
|---|---|
| AIL-3 Location Resource ID | participant.actor[1] → Reference(Location) |
| AIL-6 Start Date/Time | participant.period.start |
| AIL-7 Start Date/Time Offset | participant.period.start (appointment start + AIL-7, per AIL-8 units) |
| AIL-9 Duration | participant.period.end (participant.period.start + AIL-9) |
Unmapped fields: AIL-1, AIL-2, AIL-4, AIL-5, AIL-8, AIL-10, AIL-11, and AIL-12 have no published target row in the AIL-to-Appointment ConceptMap — they carry set-ID, action, classification, unit, substitution, and filler-status detail not represented directly on Appointment.
Engine considerations
- Required in practice: AIL-1 is the only standard-required field, but real interfaces also expect AIL-3 (location) and the timing fields for slot management.
- Parse AIL-3 as a structured
PLso point-of-care, room, bed, and facility survive. - Resolve participant timing consistently: prefer AIL-6 when present, otherwise compute from the appointment start plus AIL-7 in AIL-8 units, and derive the end from AIL-9 in AIL-10 units.
- Preserve multiple AIL segments as an ordered array when an appointment needs several locations.
How Vorro parses and produces AIL
Vorro maps AIL-3 to an Appointment.participant.actor reference to a Location, decomposing the PL components so room and facility survive. It derives participant.period.start from AIL-6, or from the appointment start plus AIL-7 (in AIL-8 units) when only an offset is given, and computes participant.period.end by adding AIL-9 (in AIL-10 units). Set ID order is preserved so multiple location resources stay aligned, and on output Vorro regenerates AIL per the official ConceptMap.
Related pages
- SCH — the appointment this location resource belongs to.
- AIG — appointment general resource segment that complements AIL.
- SIU messages — where AIL requests and confirms locations.
