HL7中国FHIR Connectathon测试实施指南
2025.3.12 - release

HL7中国FHIR Connectathon测试实施指南 - Local Development build (v2025.3.12) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: 预约本地化定义

官方URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/profile-my-appointment 版本: 2025.3.12
Draft as of 2025-03-11 机读名称: MyAppointment

预约本地化定义。

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
app-2: Either start and end are specified, or neither
app-3: Only proposed or cancelled appointments can be missing start/end dates
app-4: Cancellation reason is only used for appointments that have been cancelled, or noshow
app-5: The start must be less than or equal to the end
app-6: An appointment may have an originatingAppointment or recurrenceTemplate, but not both
app-7: Cancellation date is only used for appointments that have been cancelled, or noshow
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
ele-1: All FHIR elements must have a @value or children
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... cancellationReason ΣC 0..1 CodeableConcept 取消预约原因
Binding: AppointmentCancellationReason (example)
ele-1: All FHIR elements must have a @value or children
... serviceCategory Σ 0..* CodeableConcept 号源分类
Binding: ServiceCategory (example)
ele-1: All FHIR elements must have a @value or children
... appointmentType Σ 0..1 CodeableConcept 预约患者类型
Binding: hl7VS-appointmentReasonCodes (preferred)
ele-1: All FHIR elements must have a @value or children
... start ΣC 0..1 instant 预约开始时间
ele-1: All FHIR elements must have a @value or children
... end ΣC 0..1 instant 预约结束时间
ele-1: All FHIR elements must have a @value or children
... slot 0..* Reference(日程计划可预约时间段本地化定义) The slots that this appointment is filling
ele-1: All FHIR elements must have a @value or children
... created 0..1 dateTime 预约申请创建时间
ele-1: All FHIR elements must have a @value or children
... cancellationDate C 0..1 dateTime 取消预约申请时间
ele-1: All FHIR elements must have a @value or children
... participant C 1..* BackboneElement 预约的参与者
app-1: Either the type or actor on the participant SHALL be specified
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... required Σ 0..1 boolean 标识该参与者是否必须参加
ele-1: All FHIR elements must have a @value or children
.... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Appointment.statusrequiredAppointmentStatus
http://hl7.org/fhir/ValueSet/appointmentstatus|5.0.0
from the FHIR Standard
Appointment.cancellationReasonexampleAppointmentCancellationReason
http://hl7.org/fhir/ValueSet/appointment-cancellation-reason
from the FHIR Standard
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Appointment.appointmentTypepreferredHl7VSAppointmentReasonCodes
http://terminology.hl7.org/ValueSet/v2-0276
Appointment.participant.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participantEither the type or actor on the participant SHALL be specified
: type.exists() or actor.exists()
app-2errorAppointmentEither start and end are specified, or neither
: start.exists() = end.exists()
app-3errorAppointmentOnly proposed or cancelled appointments can be missing start/end dates
: (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist'))
app-4errorAppointmentCancellation reason is only used for appointments that have been cancelled, or noshow
: cancellationReason.exists() implies (status='noshow' or status='cancelled')
app-5errorAppointmentThe start must be less than or equal to the end
: start.exists() implies start <= end
app-6best practiceAppointmentAn appointment may have an originatingAppointment or recurrenceTemplate, but not both
: originatingAppointment.exists().not() or recurrenceTemplate.exists().not()
app-7errorAppointmentCancellation date is only used for appointments that have been cancelled, or noshow
: cancellationDate.exists() implies (status='noshow' or status='cancelled')
dom-2errorAppointmentIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorAppointmentIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAppointmentA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

该结构继承自 Appointment

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
... status 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
... cancellationReason 0..1 CodeableConcept 取消预约原因
... serviceCategory 0..* CodeableConcept 号源分类
... start 0..1 instant 预约开始时间
... end 0..1 instant 预约结束时间
... slot 0..* Reference(日程计划可预约时间段本地化定义) The slots that this appointment is filling
... created 0..1 dateTime 预约申请创建时间
... cancellationDate 0..1 dateTime 取消预约申请时间
... participant 1..* BackboneElement 预约的参与者
.... required 0..1 boolean 标识该参与者是否必须参加

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
app-2: Either start and end are specified, or neither
app-3: Only proposed or cancelled appointments can be missing start/end dates
app-4: Cancellation reason is only used for appointments that have been cancelled, or noshow
app-5: The start must be less than or equal to the end
app-6: An appointment may have an originatingAppointment or recurrenceTemplate, but not both
app-7: Cancellation date is only used for appointments that have been cancelled, or noshow
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

Additional BindingsPurpose
CommonLanguages Starter Set
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Ids for this item
... status ?!ΣC 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): The free/busy status of an appointment.

... cancellationReason ΣC 0..1 CodeableConcept 取消预约原因
Binding: AppointmentCancellationReason (example)
... class Σ 0..* CodeableConcept Classification when becoming an encounter
Binding: http://terminology.hl7.org/ValueSet/EncounterClass (preferred): Classification of the encounter.


... serviceCategory Σ 0..* CodeableConcept 号源分类
Binding: ServiceCategory (example)
... serviceType Σ 0..* CodeableReference(HealthcareService) The specific service that is to be performed during this appointment
Binding: ServiceType (example)
... specialty Σ 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
... appointmentType Σ 0..1 CodeableConcept 预约患者类型
Binding: hl7VS-appointmentReasonCodes (preferred)
... reason Σ 0..* CodeableReference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason this appointment is scheduled
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.


... priority 0..1 CodeableConcept Used to make informed decisions if needing to re-prioritize
Binding: ActPriority (example): Indicates the urgency of the appointment.

... description 0..1 string Shown on a subject line in a meeting request, or appointment list
... replaces 0..* Reference(Appointment) Appointment replaced by this Appointment
... virtualService 0..* VirtualServiceDetail Connection details of a virtual service (e.g. conference call)
... supportingInformation 0..* Reference(Resource) Additional information to support the appointment
... previousAppointment 0..1 Reference(Appointment) The previous appointment in a series
... originatingAppointment C 0..1 Reference(Appointment) The originating appointment in a recurring set of appointments
... start ΣC 0..1 instant 预约开始时间
... end ΣC 0..1 instant 预约结束时间
... minutesDuration 0..1 positiveInt Can be less than start/end (e.g. estimate)
... requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within
... slot 0..* Reference(日程计划可预约时间段本地化定义) The slots that this appointment is filling
... account 0..* Reference(Account) The set of accounts that may be used for billing for this Appointment
... created 0..1 dateTime 预约申请创建时间
... cancellationDate C 0..1 dateTime 取消预约申请时间
... note 0..* Annotation Additional comments
... patientInstruction 0..* CodeableReference(DocumentReference | Binary | Communication) Detailed information and instructions for the patient
... basedOn 0..* Reference(CarePlan | DeviceRequest | MedicationRequest | ServiceRequest) The request this appointment is allocated to assess
... subject Σ 0..1 Reference(Patient | Group) The patient or group associated with the appointment
... participant C 1..* BackboneElement 预约的参与者
app-1: Either the type or actor on the participant SHALL be specified
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


.... period 0..1 Period Participation period of the actor
.... actor ΣC 0..1 Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location) The individual, device, location, or service participating in the appointment
.... required Σ 0..1 boolean 标识该参与者是否必须参加
.... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.

... recurrenceId 0..1 positiveInt The sequence number in the recurrence
... occurrenceChanged 0..1 boolean Indicates that this appointment varies from a recurrence pattern
... recurrenceTemplate C 0..* BackboneElement Details of the recurrence pattern/template used to generate occurrences
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... timezone 0..1 CodeableConcept The timezone of the occurrences
Binding: IANATimezones (required): IANA Timezones (BCP 175)

.... recurrenceType 1..1 CodeableConcept The frequency of the recurrence
Binding: AppointmentRecurrenceType (preferred): IANA Timezones (BCP 175)

.... lastOccurrenceDate 0..1 date The date when the recurrence should end
.... occurrenceCount 0..1 positiveInt The number of planned occurrences
.... occurrenceDate 0..* date Specific dates for a recurring set of appointments (no template)
.... weeklyTemplate 0..1 BackboneElement Information about weekly recurring appointments
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... monday 0..1 boolean Recurs on Mondays
..... tuesday 0..1 boolean Recurs on Tuesday
..... wednesday 0..1 boolean Recurs on Wednesday
..... thursday 0..1 boolean Recurs on Thursday
..... friday 0..1 boolean Recurs on Friday
..... saturday 0..1 boolean Recurs on Saturday
..... sunday 0..1 boolean Recurs on Sunday
..... weekInterval 0..1 positiveInt Recurs every nth week
.... monthlyTemplate 0..1 BackboneElement Information about monthly recurring appointments
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... dayOfMonth 0..1 positiveInt Recurs on a specific day of the month
..... nthWeekOfMonth 0..1 Coding Indicates which week of the month the appointment should occur
Binding: WeekOfMonth (required): The set of weeks in a month.

..... dayOfWeek 0..1 Coding Indicates which day of the week the appointment should occur
Binding: DaysOfWeek (required): The days of the week.

..... monthInterval 1..1 positiveInt Recurs every nth month
.... yearlyTemplate 0..1 BackboneElement Information about yearly recurring appointments
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... yearInterval 1..1 positiveInt Recurs every nth year
.... excludingDate 0..* date Any dates that should be excluded from the series
.... excludingRecurrenceId 0..* positiveInt Any recurrence IDs that should be excluded from the recurrence

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Appointment.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
from the FHIR Standard
Appointment.statusrequiredAppointmentStatus
http://hl7.org/fhir/ValueSet/appointmentstatus|5.0.0
from the FHIR Standard
Appointment.cancellationReasonexampleAppointmentCancellationReason
http://hl7.org/fhir/ValueSet/appointment-cancellation-reason
from the FHIR Standard
Appointment.classpreferredhttp://terminology.hl7.org/ValueSet/EncounterClass
http://terminology.hl7.org/ValueSet/EncounterClass
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Appointment.serviceTypeexampleServiceType
http://hl7.org/fhir/ValueSet/service-type
from the FHIR Standard
Appointment.specialtypreferredPracticeSettingCodeValueSet
http://hl7.org/fhir/ValueSet/c80-practice-codes
from the FHIR Standard
Appointment.appointmentTypepreferredHl7VSAppointmentReasonCodes
http://terminology.hl7.org/ValueSet/v2-0276
Appointment.reasonpreferredEncounterReasonCodes
http://hl7.org/fhir/ValueSet/encounter-reason
from the FHIR Standard
Appointment.priorityexampleActPriority
http://terminology.hl7.org/ValueSet/v3-ActPriority
Appointment.participant.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|5.0.0
from the FHIR Standard
Appointment.recurrenceTemplate.timezonerequiredIANATimezones
http://hl7.org/fhir/ValueSet/timezones|5.0.0
from the FHIR Standard
Appointment.recurrenceTemplate.recurrenceTypepreferredAppointmentRecurrenceType
http://hl7.org/fhir/ValueSet/appointment-recurrrence-type
from the FHIR Standard
Appointment.recurrenceTemplate.monthlyTemplate.nthWeekOfMonthrequiredWeekOfMonth
http://hl7.org/fhir/ValueSet/week-of-month|5.0.0
from the FHIR Standard
Appointment.recurrenceTemplate.monthlyTemplate.dayOfWeekrequiredDaysOfWeek
http://hl7.org/fhir/ValueSet/days-of-week|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participantEither the type or actor on the participant SHALL be specified
: type.exists() or actor.exists()
app-2errorAppointmentEither start and end are specified, or neither
: start.exists() = end.exists()
app-3errorAppointmentOnly proposed or cancelled appointments can be missing start/end dates
: (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist'))
app-4errorAppointmentCancellation reason is only used for appointments that have been cancelled, or noshow
: cancellationReason.exists() implies (status='noshow' or status='cancelled')
app-5errorAppointmentThe start must be less than or equal to the end
: start.exists() implies start <= end
app-6best practiceAppointmentAn appointment may have an originatingAppointment or recurrenceTemplate, but not both
: originatingAppointment.exists().not() or recurrenceTemplate.exists().not()
app-7errorAppointmentCancellation date is only used for appointments that have been cancelled, or noshow
: cancellationDate.exists() implies (status='noshow' or status='cancelled')
dom-2errorAppointmentIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorAppointmentIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAppointmentA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

该结构继承自 Appointment

关键元素视图

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
app-2: Either start and end are specified, or neither
app-3: Only proposed or cancelled appointments can be missing start/end dates
app-4: Cancellation reason is only used for appointments that have been cancelled, or noshow
app-5: The start must be less than or equal to the end
app-6: An appointment may have an originatingAppointment or recurrenceTemplate, but not both
app-7: Cancellation date is only used for appointments that have been cancelled, or noshow
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
ele-1: All FHIR elements must have a @value or children
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... cancellationReason ΣC 0..1 CodeableConcept 取消预约原因
Binding: AppointmentCancellationReason (example)
ele-1: All FHIR elements must have a @value or children
... serviceCategory Σ 0..* CodeableConcept 号源分类
Binding: ServiceCategory (example)
ele-1: All FHIR elements must have a @value or children
... appointmentType Σ 0..1 CodeableConcept 预约患者类型
Binding: hl7VS-appointmentReasonCodes (preferred)
ele-1: All FHIR elements must have a @value or children
... start ΣC 0..1 instant 预约开始时间
ele-1: All FHIR elements must have a @value or children
... end ΣC 0..1 instant 预约结束时间
ele-1: All FHIR elements must have a @value or children
... slot 0..* Reference(日程计划可预约时间段本地化定义) The slots that this appointment is filling
ele-1: All FHIR elements must have a @value or children
... created 0..1 dateTime 预约申请创建时间
ele-1: All FHIR elements must have a @value or children
... cancellationDate C 0..1 dateTime 取消预约申请时间
ele-1: All FHIR elements must have a @value or children
... participant C 1..* BackboneElement 预约的参与者
app-1: Either the type or actor on the participant SHALL be specified
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... required Σ 0..1 boolean 标识该参与者是否必须参加
ele-1: All FHIR elements must have a @value or children
.... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.


ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Appointment.statusrequiredAppointmentStatus
http://hl7.org/fhir/ValueSet/appointmentstatus|5.0.0
from the FHIR Standard
Appointment.cancellationReasonexampleAppointmentCancellationReason
http://hl7.org/fhir/ValueSet/appointment-cancellation-reason
from the FHIR Standard
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Appointment.appointmentTypepreferredHl7VSAppointmentReasonCodes
http://terminology.hl7.org/ValueSet/v2-0276
Appointment.participant.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participantEither the type or actor on the participant SHALL be specified
: type.exists() or actor.exists()
app-2errorAppointmentEither start and end are specified, or neither
: start.exists() = end.exists()
app-3errorAppointmentOnly proposed or cancelled appointments can be missing start/end dates
: (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist'))
app-4errorAppointmentCancellation reason is only used for appointments that have been cancelled, or noshow
: cancellationReason.exists() implies (status='noshow' or status='cancelled')
app-5errorAppointmentThe start must be less than or equal to the end
: start.exists() implies start <= end
app-6best practiceAppointmentAn appointment may have an originatingAppointment or recurrenceTemplate, but not both
: originatingAppointment.exists().not() or recurrenceTemplate.exists().not()
app-7errorAppointmentCancellation date is only used for appointments that have been cancelled, or noshow
: cancellationDate.exists() implies (status='noshow' or status='cancelled')
dom-2errorAppointmentIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorAppointmentIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAppointmentA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

差异视图

该结构继承自 Appointment

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
... status 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
... cancellationReason 0..1 CodeableConcept 取消预约原因
... serviceCategory 0..* CodeableConcept 号源分类
... start 0..1 instant 预约开始时间
... end 0..1 instant 预约结束时间
... slot 0..* Reference(日程计划可预约时间段本地化定义) The slots that this appointment is filling
... created 0..1 dateTime 预约申请创建时间
... cancellationDate 0..1 dateTime 取消预约申请时间
... participant 1..* BackboneElement 预约的参与者
.... required 0..1 boolean 标识该参与者是否必须参加

doco Documentation for this format

快照视图

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C 0..* Appointment A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)
app-2: Either start and end are specified, or neither
app-3: Only proposed or cancelled appointments can be missing start/end dates
app-4: Cancellation reason is only used for appointments that have been cancelled, or noshow
app-5: The start must be less than or equal to the end
app-6: An appointment may have an originatingAppointment or recurrenceTemplate, but not both
app-7: Cancellation date is only used for appointments that have been cancelled, or noshow
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

Additional BindingsPurpose
CommonLanguages Starter Set
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Ids for this item
... status ?!ΣC 1..1 code proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): The free/busy status of an appointment.

... cancellationReason ΣC 0..1 CodeableConcept 取消预约原因
Binding: AppointmentCancellationReason (example)
... class Σ 0..* CodeableConcept Classification when becoming an encounter
Binding: http://terminology.hl7.org/ValueSet/EncounterClass (preferred): Classification of the encounter.


... serviceCategory Σ 0..* CodeableConcept 号源分类
Binding: ServiceCategory (example)
... serviceType Σ 0..* CodeableReference(HealthcareService) The specific service that is to be performed during this appointment
Binding: ServiceType (example)
... specialty Σ 0..* CodeableConcept The specialty of a practitioner that would be required to perform the service requested in this appointment
Binding: PracticeSettingCodeValueSet (preferred)
... appointmentType Σ 0..1 CodeableConcept 预约患者类型
Binding: hl7VS-appointmentReasonCodes (preferred)
... reason Σ 0..* CodeableReference(Condition | Procedure | Observation | ImmunizationRecommendation) Reason this appointment is scheduled
Binding: EncounterReasonCodes (preferred): The Reason for the appointment to take place.


... priority 0..1 CodeableConcept Used to make informed decisions if needing to re-prioritize
Binding: ActPriority (example): Indicates the urgency of the appointment.

... description 0..1 string Shown on a subject line in a meeting request, or appointment list
... replaces 0..* Reference(Appointment) Appointment replaced by this Appointment
... virtualService 0..* VirtualServiceDetail Connection details of a virtual service (e.g. conference call)
... supportingInformation 0..* Reference(Resource) Additional information to support the appointment
... previousAppointment 0..1 Reference(Appointment) The previous appointment in a series
... originatingAppointment C 0..1 Reference(Appointment) The originating appointment in a recurring set of appointments
... start ΣC 0..1 instant 预约开始时间
... end ΣC 0..1 instant 预约结束时间
... minutesDuration 0..1 positiveInt Can be less than start/end (e.g. estimate)
... requestedPeriod 0..* Period Potential date/time interval(s) requested to allocate the appointment within
... slot 0..* Reference(日程计划可预约时间段本地化定义) The slots that this appointment is filling
... account 0..* Reference(Account) The set of accounts that may be used for billing for this Appointment
... created 0..1 dateTime 预约申请创建时间
... cancellationDate C 0..1 dateTime 取消预约申请时间
... note 0..* Annotation Additional comments
... patientInstruction 0..* CodeableReference(DocumentReference | Binary | Communication) Detailed information and instructions for the patient
... basedOn 0..* Reference(CarePlan | DeviceRequest | MedicationRequest | ServiceRequest) The request this appointment is allocated to assess
... subject Σ 0..1 Reference(Patient | Group) The patient or group associated with the appointment
... participant C 1..* BackboneElement 预约的参与者
app-1: Either the type or actor on the participant SHALL be specified
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type ΣC 0..* CodeableConcept Role of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


.... period 0..1 Period Participation period of the actor
.... actor ΣC 0..1 Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location) The individual, device, location, or service participating in the appointment
.... required Σ 0..1 boolean 标识该参与者是否必须参加
.... status Σ 1..1 code accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): The Participation status of an appointment.

... recurrenceId 0..1 positiveInt The sequence number in the recurrence
... occurrenceChanged 0..1 boolean Indicates that this appointment varies from a recurrence pattern
... recurrenceTemplate C 0..* BackboneElement Details of the recurrence pattern/template used to generate occurrences
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... timezone 0..1 CodeableConcept The timezone of the occurrences
Binding: IANATimezones (required): IANA Timezones (BCP 175)

.... recurrenceType 1..1 CodeableConcept The frequency of the recurrence
Binding: AppointmentRecurrenceType (preferred): IANA Timezones (BCP 175)

.... lastOccurrenceDate 0..1 date The date when the recurrence should end
.... occurrenceCount 0..1 positiveInt The number of planned occurrences
.... occurrenceDate 0..* date Specific dates for a recurring set of appointments (no template)
.... weeklyTemplate 0..1 BackboneElement Information about weekly recurring appointments
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... monday 0..1 boolean Recurs on Mondays
..... tuesday 0..1 boolean Recurs on Tuesday
..... wednesday 0..1 boolean Recurs on Wednesday
..... thursday 0..1 boolean Recurs on Thursday
..... friday 0..1 boolean Recurs on Friday
..... saturday 0..1 boolean Recurs on Saturday
..... sunday 0..1 boolean Recurs on Sunday
..... weekInterval 0..1 positiveInt Recurs every nth week
.... monthlyTemplate 0..1 BackboneElement Information about monthly recurring appointments
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... dayOfMonth 0..1 positiveInt Recurs on a specific day of the month
..... nthWeekOfMonth 0..1 Coding Indicates which week of the month the appointment should occur
Binding: WeekOfMonth (required): The set of weeks in a month.

..... dayOfWeek 0..1 Coding Indicates which day of the week the appointment should occur
Binding: DaysOfWeek (required): The days of the week.

..... monthInterval 1..1 positiveInt Recurs every nth month
.... yearlyTemplate 0..1 BackboneElement Information about yearly recurring appointments
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... yearInterval 1..1 positiveInt Recurs every nth year
.... excludingDate 0..* date Any dates that should be excluded from the series
.... excludingRecurrenceId 0..* positiveInt Any recurrence IDs that should be excluded from the recurrence

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Appointment.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
from the FHIR Standard
Appointment.statusrequiredAppointmentStatus
http://hl7.org/fhir/ValueSet/appointmentstatus|5.0.0
from the FHIR Standard
Appointment.cancellationReasonexampleAppointmentCancellationReason
http://hl7.org/fhir/ValueSet/appointment-cancellation-reason
from the FHIR Standard
Appointment.classpreferredhttp://terminology.hl7.org/ValueSet/EncounterClass
http://terminology.hl7.org/ValueSet/EncounterClass
Appointment.serviceCategoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
Appointment.serviceTypeexampleServiceType
http://hl7.org/fhir/ValueSet/service-type
from the FHIR Standard
Appointment.specialtypreferredPracticeSettingCodeValueSet
http://hl7.org/fhir/ValueSet/c80-practice-codes
from the FHIR Standard
Appointment.appointmentTypepreferredHl7VSAppointmentReasonCodes
http://terminology.hl7.org/ValueSet/v2-0276
Appointment.reasonpreferredEncounterReasonCodes
http://hl7.org/fhir/ValueSet/encounter-reason
from the FHIR Standard
Appointment.priorityexampleActPriority
http://terminology.hl7.org/ValueSet/v3-ActPriority
Appointment.participant.typeextensibleParticipantType
http://hl7.org/fhir/ValueSet/encounter-participant-type
from the FHIR Standard
Appointment.participant.statusrequiredParticipationStatus
http://hl7.org/fhir/ValueSet/participationstatus|5.0.0
from the FHIR Standard
Appointment.recurrenceTemplate.timezonerequiredIANATimezones
http://hl7.org/fhir/ValueSet/timezones|5.0.0
from the FHIR Standard
Appointment.recurrenceTemplate.recurrenceTypepreferredAppointmentRecurrenceType
http://hl7.org/fhir/ValueSet/appointment-recurrrence-type
from the FHIR Standard
Appointment.recurrenceTemplate.monthlyTemplate.nthWeekOfMonthrequiredWeekOfMonth
http://hl7.org/fhir/ValueSet/week-of-month|5.0.0
from the FHIR Standard
Appointment.recurrenceTemplate.monthlyTemplate.dayOfWeekrequiredDaysOfWeek
http://hl7.org/fhir/ValueSet/days-of-week|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participantEither the type or actor on the participant SHALL be specified
: type.exists() or actor.exists()
app-2errorAppointmentEither start and end are specified, or neither
: start.exists() = end.exists()
app-3errorAppointmentOnly proposed or cancelled appointments can be missing start/end dates
: (start.exists() and end.exists()) or (status in ('proposed' | 'cancelled' | 'waitlist'))
app-4errorAppointmentCancellation reason is only used for appointments that have been cancelled, or noshow
: cancellationReason.exists() implies (status='noshow' or status='cancelled')
app-5errorAppointmentThe start must be less than or equal to the end
: start.exists() implies start <= end
app-6best practiceAppointmentAn appointment may have an originatingAppointment or recurrenceTemplate, but not both
: originatingAppointment.exists().not() or recurrenceTemplate.exists().not()
app-7errorAppointmentCancellation date is only used for appointments that have been cancelled, or noshow
: cancellationDate.exists() implies (status='noshow' or status='cancelled')
dom-2errorAppointmentIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorAppointmentIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorAppointmentIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceAppointmentA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

该结构继承自 Appointment

 

本 Profile 的其它表示法: CSV, Excel, Schematron