The AIP segment carries the personnel resource booked against an appointment: which person is required, what type of resource they represent, when their participation starts, and how long it lasts. Where SCH describes the appointment as a whole, AIP names one human participant in it — a physician, nurse, or technician — and the time window they are committed to. A scheduling message can carry one AIP per person involved.
Purpose
AIP requests, schedules, or confirms a specific person (or a person fulfilling a role) as a resource for an appointment. It states the personnel resource ID, the resource type and group, the start time (absolute or as an offset from the appointment start), the duration, substitution rules, and the filler's status for that participant. It is populated per trigger event — a request lists desired personnel, a confirmation reflects what the filler actually booked.
Used in
AIP appears in SIU scheduling messages (the SIU^Sxx family — new appointments, modifications, cancellations, and confirmations), repeating once per personnel resource attached to the 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 |
|---|---|---|---|---|---|---|---|
| AIP-1 | Set ID - AIP | si | — | R | — | — | Sequence number identifying this AIP repetition. |
| AIP-2 | Segment Action Code | id | — | O | — | — | Add, update, or delete action for this resource. |
| AIP-3 | Personnel Resource ID | xcn | — | O | — | — | The specific person booked as the resource. |
| AIP-4 | Resource Type | cwe | — | R | — | — | Role or kind of personnel resource required. |
| AIP-5 | Resource Group | cwe | — | O | — | — | Grouping the personnel resource belongs to. |
| AIP-6 | Start Date/Time | dtm | — | O | — | — | When this person's participation begins. |
| AIP-7 | Start Date/Time Offset | nm | — | O | — | — | Offset from appointment start instead of absolute time. |
| AIP-8 | Start Date/Time Offset Units | cne | — | O | — | — | Units for the start offset value. |
| AIP-9 | Duration | nm | — | O | — | — | How long the person is needed. |
| AIP-10 | Duration Units | cne | — | O | — | — | Units for the duration value. |
| AIP-11 | Allow Substitution Code | cwe | — | O | — | — | Whether another person may substitute. |
| AIP-12 | Filler Status Code | cwe | — | O | — | — | Filler's status for this resource booking. |
Most-used fields
- AIP-3 Personnel Resource ID names the actual person and is what care-team and notification logic resolves against.
- AIP-4 Resource Type is the only coded field besides the ID that is required — it states the role being filled (e.g. attending, nurse).
- AIP-6 Start Date/Time, or AIP-7/AIP-8 as an offset, sets when the person's participation begins relative to the appointment.
- AIP-9 Duration with AIP-10 units bounds how long the person is committed.
- AIP-12 Filler Status Code reflects whether the filler has booked, pending, or declined the resource.
Version differences (2.3 to 2.8.2)
- 2.3: AIP introduced with the scheduling chapter alongside SCH, AIG, AIL, and AIS.
- 2.5: coded fields move from
CEtowardCWE/CNE; offset-units fields settle onCNE. - 2.7+: field set and cardinality remain stable; refinements are mostly to associated value sets and the action code.
- Receivers built for earlier versions ignore trailing components they do not recognize and read AIP positionally.
Common mistakes
- Confusing AIP (personnel) with AIG (general resource) and AIL (location) — each describes a different kind of resource on the same appointment.
- Sending an absolute AIP-6 and an AIP-7 offset at the same time, producing two conflicting start times.
- Supplying AIP-9 Duration without AIP-10 units, leaving the value ambiguous.
- Omitting AIP-4 Resource Type, which is required and drives the participant role downstream.
Examples
Minimal valid AIP (required Set ID and Resource Type):
AIP|1||^^^^^^^^|ATND
Fully-populated AIP (a named attending physician booked for 30 minutes):
AIP|1|A|9981^WELBY^MARCUS^A^^^MD^^MERCYGEN|ATND^Attending^L|CARDIO|20260615093000||||30|MIN|N|BOOKED
Annotated breakdown of the fully-populated example (selected fields):
AIP ← segment ID
1 ← AIP-1 Set ID
A ← AIP-2 Segment Action Code (Add)
9981^WELBY^MARCUS^A^^^MD ← AIP-3 Personnel Resource ID
ATND^Attending^L ← AIP-4 Resource Type
CARDIO ← AIP-5 Resource Group
20260615093000 ← AIP-6 Start Date/Time
30 ← AIP-9 Duration
MIN ← AIP-10 Duration Units
N ← AIP-11 Allow Substitution Code
BOOKED ← AIP-12 Filler Status Code
In-context inside an SIU^S12 (new appointment booking):
MSH|^~&|SCHED|MERCYGEN|EHR|MERCYGEN|20260610120000||SIU^S12^SIU_S12|MSG2201|P|2.5.1
SCH|10023^MERCYGEN|10023^MERCYGEN||||OFFICE^Office Visit^L|||30|MIN|^^30^20260615093000^20260615100000||||||||||||BOOKED
PID|1||MR12345^^^MERCYGEN^MR||DOE^JOHN^Q||19800101|M
RGS|1|A
AIS|1|A|CARD-FU^Cardiology Follow-up^L
AIP|1|A|9981^WELBY^MARCUS^A^^^MD|ATND^Attending^L|CARDIO|20260615093000||||30|MIN|N|BOOKED
In-context SIU^S12 with two personnel resources (physician plus nurse):
RGS|1|A
AIP|1|A|9981^WELBY^MARCUS^A^^^MD|ATND^Attending^L|CARDIO|20260615093000||||30|MIN|N|BOOKED
AIP|2|A|7742^NIGHTINGALE^FLORENCE^^^^RN|NURS^Nurse^L|CARDIO|20260615093000||||30|MIN|Y|BOOKED
FHIR mapping
Primary target resource: Appointment. AIP maps a personnel resource onto an Appointment.participant entry — the person becomes the actor, the resource type the participant type, and the start/duration the participant period. Official ConceptMap: Appointment.
Key Appointment mappings:
| AIP field | FHIR target (Appointment) |
|---|---|
| AIP-3 Personnel Resource ID | participant.actor[1] — Reference(Practitioner) |
| AIP-4 Resource Type | participant.type[1] — CodeableConcept |
| AIP-6 Start Date/Time | participant.period.start |
| AIP-7 Start Date/Time Offset | participant.period.start (appointment start + AIP-7, per AIP-8 units) |
| AIP-9 Duration | participant.period.end (participant period start + AIP-9) |
| AIP-12 Filler Status Code | participant.status[1] |
AIP-4 binds to the FHIR encounter participant type value set. Fields without a published Appointment mapping — AIP-1 Set ID, AIP-2 Segment Action Code, AIP-5 Resource Group, AIP-8/AIP-10 offset and duration units (consumed when computing the period), and AIP-11 Allow Substitution Code — have no direct Appointment element in the ConceptMap.
Engine considerations
- Required in practice: AIP-1 and AIP-4 are standard-required; real interfaces also depend on AIP-3 to identify the person and AIP-6 (or AIP-7/8) for timing.
- Resolve AIP-7/AIP-8 offsets against the appointment (SCH) start before producing an absolute participant period — never carry both an absolute AIP-6 and an offset.
- Convert AIP-9 with AIP-10 units consistently so the participant period end is correct across MIN/HR/DAY units.
- Keep each AIP as a separate participant; an appointment commonly carries several AIP segments within an RGS group.
How Vorro parses and produces AIP
Vorro resolves AIP-3 to a Practitioner reference and emits each AIP as an Appointment.participant, typing it from AIP-4 against the participant-type value set and computing participant.period from AIP-6 (or AIP-7/AIP-8 offset) plus AIP-9/AIP-10 duration. AIP-12 is mapped to the participant status, and resources are kept grouped under their RGS so the multi-participant structure of the appointment is preserved on the FHIR side.
Related pages
- SCH — the appointment SCH describes, which AIP participates in.
- AIG — general resource booking, the non-personnel counterpart to AIP.
- SIU messages — where AIP books personnel into scheduling events.
