Guía de Implementación Hackathon HLF 2023
1.0.1 - release

Guía de Implementación Hackathon HLF 2023 - Local Development build (v1.0.1). See the Directory of published versions

Resource Profile: CitasHackaton

Official URL: https://hlf.cl/fhir/ig/hackaton/StructureDefinition/CitasHackaton Version: 1.0.1
Active as of 2023-07-24 Computable Name: CitasHackaton

Perfil para una cita de agenda de paciente

Usage:

Formal Views of Profile Content

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

This structure is derived from Appointment

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment 0..*AppointmentA 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 S1..1codeEstado de la Cita: proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): Códigos definidos por estándar

... serviceCategory S1..1CodeableConceptDefine el tipo de atención
Binding: Códigos para tipos de atención (required): Códigos definidos localmente

.... coding 1..1CodingCode defined by a terminology system
..... system 0..1uriSistema de Codificación Ocupado
..... code 0..1codeCódigo Servicio de Atención
..... display 1..1stringGlosa asociada al código
.... text 0..1stringTexto libre que describe el servicio
... specialty S1..1CodeableConceptDefine la especialidad de la atención
Binding: Códigos para especialidades médicas (required): Códigos definidos localmente

.... coding 1..1CodingCode defined by a terminology system
..... system 0..1uriSistema de Codificación Ocupado
..... code 0..1codeCódigo de especialidad
..... display 1..1stringGlosa asociada al código
.... text 0..1stringtexto libre que describe la especialidad
... end S1..1instantCuando se terminará/terminó la cita en formato YYYY-MM-DDThh:mm:ss.sss+zz:zz
... subject S1..1Reference(Patient | Group)Paciente a ser atendido
.... reference 0..1stringuri del recurso del paciente a ser atendido
... participant S1..*BackboneElementParticipante del encuentro, se define en principio el Prestador
.... actor 1..1Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location)referencia al recurso del participante
..... reference 1..1stringuri del recurso del del actor aludido
.... status S1..1codeEstado de aceptación de la cita: accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): Códigos definidos por estándar


Required Pattern: accepted

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet / Code
Appointment.statusrequiredAppointmentStatus
Appointment.serviceCategoryrequiredTipoAtencionVS (a valid code from Códigos para Tipo de Atención)
Appointment.specialtyrequiredEspecialidadMedicaVS (a valid code from Códigos para Especialidades Médicas)
Appointment.participant.statusrequiredPattern: accepted
NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C0..*AppointmentA 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)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 0..*ResourceContained, inline Resources
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... serviceCategory SΣ1..1CodeableConceptDefine el tipo de atención
Binding: Códigos para tipos de atención (required): Códigos definidos localmente


.... coding Σ1..1CodingCode defined by a terminology system
..... system Σ0..1uriSistema de Codificación Ocupado
..... code ΣC0..1codeCódigo Servicio de Atención
..... display ΣC1..1stringGlosa asociada al código
.... text Σ0..1stringTexto libre que describe el servicio
... specialty SΣ1..1CodeableConceptDefine la especialidad de la atención
Binding: Códigos para especialidades médicas (required): Códigos definidos localmente


.... coding Σ1..1CodingCode defined by a terminology system
..... system Σ0..1uriSistema de Codificación Ocupado
..... code ΣC0..1codeCódigo de especialidad
..... display ΣC1..1stringGlosa asociada al código
.... text Σ0..1stringtexto libre que describe la especialidad
... start SΣC1..1instantCuando se realizará/realizó la cita en formato YYYY-MM-DDThh:mm:ss.sss+zz:zz
... end SΣC1..1instantCuando se terminará/terminó la cita en formato YYYY-MM-DDThh:mm:ss.sss+zz:zz
... subject SΣ1..1Reference(Patient | Group)Paciente a ser atendido
.... reference ΣC0..1stringuri del recurso del paciente a ser atendido
... participant SC1..*BackboneElementParticipante del encuentro, se define en principio el Prestador
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... actor ΣC1..1Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location)referencia al recurso del participante
..... reference ΣC1..1stringuri del recurso del del actor aludido
.... status SΣ1..1codeEstado de aceptación de la cita: accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): Códigos definidos por estándar


Required Pattern: accepted

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Appointment.statusrequiredAppointmentStatus
Appointment.serviceCategoryrequiredTipoAtencionVS (a valid code from Códigos para Tipo de Atención)
Appointment.specialtyrequiredEspecialidadMedicaVS (a valid code from Códigos para Especialidades Médicas)
Appointment.participant.statusrequiredPattern: accepted

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()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C0..*AppointmentA 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)
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this item
... status ?!SΣC1..1codeEstado de la Cita: proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): Códigos definidos por estándar

... cancellationReason ΣC0..1CodeableConceptThe coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason (example)
... class Σ0..*CodeableConceptClassification when becoming an encounter
Binding: http://terminology.hl7.org/ValueSet/EncounterClass (preferred): Classification of the encounter.


... serviceCategory SΣ1..1CodeableConceptDefine el tipo de atención
Binding: Códigos para tipos de atención (required): Códigos definidos localmente


.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ1..1CodingCode defined by a terminology system
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriSistema de Codificación Ocupado
..... version Σ0..1stringVersion of the system - if relevant
..... code ΣC0..1codeCódigo Servicio de Atención
..... display ΣC1..1stringGlosa asociada al código
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringTexto libre que describe el servicio
... serviceType Σ0..*CodeableReference(HealthcareService)The specific service that is to be performed during this appointment
Binding: ServiceType (example)
... specialty SΣ1..1CodeableConceptDefine la especialidad de la atención
Binding: Códigos para especialidades médicas (required): Códigos definidos localmente


.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ1..1CodingCode defined by a terminology system
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriSistema de Codificación Ocupado
..... version Σ0..1stringVersion of the system - if relevant
..... code ΣC0..1codeCódigo de especialidad
..... display ΣC1..1stringGlosa asociada al código
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringtexto libre que describe la especialidad
... appointmentType Σ0..1CodeableConceptThe style of appointment or patient that has been booked in the slot (not service type)
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..1CodeableConceptUsed to make informed decisions if needing to re-prioritize
Binding: ActPriority (example): Indicates the urgency of the appointment.

... description 0..1stringShown on a subject line in a meeting request, or appointment list
... replaces 0..*Reference(Appointment)Appointment replaced by this Appointment
... virtualService 0..*VirtualServiceDetailConnection details of a virtual service (e.g. conference call)
... supportingInformation 0..*Reference(Resource)Additional information to support the appointment
... previousAppointment 0..1Reference(Appointment)The previous appointment in a series
... originatingAppointment C0..1Reference(Appointment)The originating appointment in a recurring set of appointments
... start SΣC1..1instantCuando se realizará/realizó la cita en formato YYYY-MM-DDThh:mm:ss.sss+zz:zz
... end SΣC1..1instantCuando se terminará/terminó la cita en formato YYYY-MM-DDThh:mm:ss.sss+zz:zz
... minutesDuration 0..1positiveIntCan be less than start/end (e.g. estimate)
... requestedPeriod 0..*PeriodPotential date/time interval(s) requested to allocate the appointment within
... slot 0..*Reference(Slot)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..1dateTimeThe date that this appointment was initially created
... cancellationDate C0..1dateTimeWhen the appointment was cancelled
... note 0..*AnnotationAdditional 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 SΣ1..1Reference(Patient | Group)Paciente a ser atendido
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC0..1stringuri del recurso del paciente a ser atendido
.... type Σ0..1uriType the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier ΣC0..1IdentifierLogical reference, when literal reference is not known
.... display ΣC0..1stringText alternative for the resource
... participant SC1..*BackboneElementParticipante del encuentro, se define en principio el Prestador
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type ΣC0..*CodeableConceptRole of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


.... period 0..1PeriodParticipation period of the actor
.... actor ΣC1..1Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location)referencia al recurso del participante
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... reference ΣC1..1stringuri del recurso del del actor aludido
..... type Σ0..1uriType the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier ΣC0..1IdentifierLogical reference, when literal reference is not known
..... display ΣC0..1stringText alternative for the resource
.... required Σ0..1booleanThe participant is required to attend (optional when false)
.... status SΣ1..1codeEstado de aceptación de la cita: accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): Códigos definidos por estándar


Required Pattern: accepted
... recurrenceId 0..1positiveIntThe sequence number in the recurrence
... occurrenceChanged 0..1booleanIndicates that this appointment varies from a recurrence pattern
... recurrenceTemplate C0..*BackboneElementDetails of the recurrence pattern/template used to generate occurrences
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... timezone 0..1CodeableConceptThe timezone of the occurrences
Binding: IANATimezones (required): IANA Timezones (BCP 175)

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

.... lastOccurrenceDate 0..1dateThe date when the recurrence should end
.... occurrenceCount 0..1positiveIntThe number of planned occurrences
.... occurrenceDate 0..*dateSpecific dates for a recurring set of appointments (no template)
.... weeklyTemplate 0..1BackboneElementInformation about weekly recurring appointments
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... monday 0..1booleanRecurs on Mondays
..... tuesday 0..1booleanRecurs on Tuesday
..... wednesday 0..1booleanRecurs on Wednesday
..... thursday 0..1booleanRecurs on Thursday
..... friday 0..1booleanRecurs on Friday
..... saturday 0..1booleanRecurs on Saturday
..... sunday 0..1booleanRecurs on Sunday
..... weekInterval 0..1positiveIntRecurs every nth week
.... monthlyTemplate 0..1BackboneElementInformation about monthly recurring appointments
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... dayOfMonth 0..1positiveIntRecurs on a specific day of the month
..... nthWeekOfMonth 0..1CodingIndicates which week of the month the appointment should occur
Binding: WeekOfMonth (required): The set of weeks in a month.

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

..... monthInterval 1..1positiveIntRecurs every nth month
.... yearlyTemplate 0..1BackboneElementInformation about yearly recurring appointments
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... yearInterval 1..1positiveIntRecurs every nth year
.... excludingDate 0..*dateAny dates that should be excluded from the series
.... excludingRecurrenceId 0..*positiveIntAny recurrence IDs that should be excluded from the recurrence

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Appointment.languagerequiredAllLanguages
Appointment.statusrequiredAppointmentStatus
Appointment.cancellationReasonexampleAppointmentCancellationReason
Appointment.classpreferredhttp://terminology.hl7.org/ValueSet/EncounterClass
Appointment.serviceCategoryrequiredTipoAtencionVS (a valid code from Códigos para Tipo de Atención)
Appointment.serviceTypeexampleServiceType
Appointment.specialtyrequiredEspecialidadMedicaVS (a valid code from Códigos para Especialidades Médicas)
Appointment.appointmentTypepreferredHl7VSAppointmentReasonCodes
Appointment.reasonpreferredEncounterReasonCodes
Appointment.priorityexampleActPriority
Appointment.subject.typeextensibleResourceType
Appointment.participant.typeextensibleParticipantType
Appointment.participant.actor.typeextensibleResourceType
Appointment.participant.statusrequiredPattern: accepted
Appointment.recurrenceTemplate.timezonerequiredIANATimezones (a valid code from https://www.iana.org/time-zones)
Appointment.recurrenceTemplate.recurrenceTypepreferredAppointmentRecurrenceType
Appointment.recurrenceTemplate.monthlyTemplate.nthWeekOfMonthrequiredWeekOfMonth
Appointment.recurrenceTemplate.monthlyTemplate.dayOfWeekrequiredDaysOfWeek

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participantEither the type or actor on the participant SHALL be specified
: type.exists() or actor.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()

This structure is derived from Appointment

Summary

Mandatory: 11 elements
Must-Support: 8 elements

Differential View

This structure is derived from Appointment

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment 0..*AppointmentA 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 S1..1codeEstado de la Cita: proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): Códigos definidos por estándar

... serviceCategory S1..1CodeableConceptDefine el tipo de atención
Binding: Códigos para tipos de atención (required): Códigos definidos localmente

.... coding 1..1CodingCode defined by a terminology system
..... system 0..1uriSistema de Codificación Ocupado
..... code 0..1codeCódigo Servicio de Atención
..... display 1..1stringGlosa asociada al código
.... text 0..1stringTexto libre que describe el servicio
... specialty S1..1CodeableConceptDefine la especialidad de la atención
Binding: Códigos para especialidades médicas (required): Códigos definidos localmente

.... coding 1..1CodingCode defined by a terminology system
..... system 0..1uriSistema de Codificación Ocupado
..... code 0..1codeCódigo de especialidad
..... display 1..1stringGlosa asociada al código
.... text 0..1stringtexto libre que describe la especialidad
... end S1..1instantCuando se terminará/terminó la cita en formato YYYY-MM-DDThh:mm:ss.sss+zz:zz
... subject S1..1Reference(Patient | Group)Paciente a ser atendido
.... reference 0..1stringuri del recurso del paciente a ser atendido
... participant S1..*BackboneElementParticipante del encuentro, se define en principio el Prestador
.... actor 1..1Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location)referencia al recurso del participante
..... reference 1..1stringuri del recurso del del actor aludido
.... status S1..1codeEstado de aceptación de la cita: accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): Códigos definidos por estándar


Required Pattern: accepted

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet / Code
Appointment.statusrequiredAppointmentStatus
Appointment.serviceCategoryrequiredTipoAtencionVS (a valid code from Códigos para Tipo de Atención)
Appointment.specialtyrequiredEspecialidadMedicaVS (a valid code from Códigos para Especialidades Médicas)
Appointment.participant.statusrequiredPattern: accepted

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C0..*AppointmentA 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)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 0..*ResourceContained, inline Resources
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... serviceCategory SΣ1..1CodeableConceptDefine el tipo de atención
Binding: Códigos para tipos de atención (required): Códigos definidos localmente


.... coding Σ1..1CodingCode defined by a terminology system
..... system Σ0..1uriSistema de Codificación Ocupado
..... code ΣC0..1codeCódigo Servicio de Atención
..... display ΣC1..1stringGlosa asociada al código
.... text Σ0..1stringTexto libre que describe el servicio
... specialty SΣ1..1CodeableConceptDefine la especialidad de la atención
Binding: Códigos para especialidades médicas (required): Códigos definidos localmente


.... coding Σ1..1CodingCode defined by a terminology system
..... system Σ0..1uriSistema de Codificación Ocupado
..... code ΣC0..1codeCódigo de especialidad
..... display ΣC1..1stringGlosa asociada al código
.... text Σ0..1stringtexto libre que describe la especialidad
... start SΣC1..1instantCuando se realizará/realizó la cita en formato YYYY-MM-DDThh:mm:ss.sss+zz:zz
... end SΣC1..1instantCuando se terminará/terminó la cita en formato YYYY-MM-DDThh:mm:ss.sss+zz:zz
... subject SΣ1..1Reference(Patient | Group)Paciente a ser atendido
.... reference ΣC0..1stringuri del recurso del paciente a ser atendido
... participant SC1..*BackboneElementParticipante del encuentro, se define en principio el Prestador
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... actor ΣC1..1Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location)referencia al recurso del participante
..... reference ΣC1..1stringuri del recurso del del actor aludido
.... status SΣ1..1codeEstado de aceptación de la cita: accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): Códigos definidos por estándar


Required Pattern: accepted

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Appointment.statusrequiredAppointmentStatus
Appointment.serviceCategoryrequiredTipoAtencionVS (a valid code from Códigos para Tipo de Atención)
Appointment.specialtyrequiredEspecialidadMedicaVS (a valid code from Códigos para Especialidades Médicas)
Appointment.participant.statusrequiredPattern: accepted

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()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Appointment C0..*AppointmentA 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)
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this item
... status ?!SΣC1..1codeEstado de la Cita: proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist
Binding: AppointmentStatus (required): Códigos definidos por estándar

... cancellationReason ΣC0..1CodeableConceptThe coded reason for the appointment being cancelled
Binding: AppointmentCancellationReason (example)
... class Σ0..*CodeableConceptClassification when becoming an encounter
Binding: http://terminology.hl7.org/ValueSet/EncounterClass (preferred): Classification of the encounter.


... serviceCategory SΣ1..1CodeableConceptDefine el tipo de atención
Binding: Códigos para tipos de atención (required): Códigos definidos localmente


.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ1..1CodingCode defined by a terminology system
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriSistema de Codificación Ocupado
..... version Σ0..1stringVersion of the system - if relevant
..... code ΣC0..1codeCódigo Servicio de Atención
..... display ΣC1..1stringGlosa asociada al código
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringTexto libre que describe el servicio
... serviceType Σ0..*CodeableReference(HealthcareService)The specific service that is to be performed during this appointment
Binding: ServiceType (example)
... specialty SΣ1..1CodeableConceptDefine la especialidad de la atención
Binding: Códigos para especialidades médicas (required): Códigos definidos localmente


.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ1..1CodingCode defined by a terminology system
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriSistema de Codificación Ocupado
..... version Σ0..1stringVersion of the system - if relevant
..... code ΣC0..1codeCódigo de especialidad
..... display ΣC1..1stringGlosa asociada al código
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringtexto libre que describe la especialidad
... appointmentType Σ0..1CodeableConceptThe style of appointment or patient that has been booked in the slot (not service type)
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..1CodeableConceptUsed to make informed decisions if needing to re-prioritize
Binding: ActPriority (example): Indicates the urgency of the appointment.

... description 0..1stringShown on a subject line in a meeting request, or appointment list
... replaces 0..*Reference(Appointment)Appointment replaced by this Appointment
... virtualService 0..*VirtualServiceDetailConnection details of a virtual service (e.g. conference call)
... supportingInformation 0..*Reference(Resource)Additional information to support the appointment
... previousAppointment 0..1Reference(Appointment)The previous appointment in a series
... originatingAppointment C0..1Reference(Appointment)The originating appointment in a recurring set of appointments
... start SΣC1..1instantCuando se realizará/realizó la cita en formato YYYY-MM-DDThh:mm:ss.sss+zz:zz
... end SΣC1..1instantCuando se terminará/terminó la cita en formato YYYY-MM-DDThh:mm:ss.sss+zz:zz
... minutesDuration 0..1positiveIntCan be less than start/end (e.g. estimate)
... requestedPeriod 0..*PeriodPotential date/time interval(s) requested to allocate the appointment within
... slot 0..*Reference(Slot)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..1dateTimeThe date that this appointment was initially created
... cancellationDate C0..1dateTimeWhen the appointment was cancelled
... note 0..*AnnotationAdditional 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 SΣ1..1Reference(Patient | Group)Paciente a ser atendido
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC0..1stringuri del recurso del paciente a ser atendido
.... type Σ0..1uriType the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier ΣC0..1IdentifierLogical reference, when literal reference is not known
.... display ΣC0..1stringText alternative for the resource
... participant SC1..*BackboneElementParticipante del encuentro, se define en principio el Prestador
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type ΣC0..*CodeableConceptRole of participant in the appointment
Binding: ParticipantType (extensible): Role of participant in encounter.


.... period 0..1PeriodParticipation period of the actor
.... actor ΣC1..1Reference(Patient | Group | Practitioner | PractitionerRole | CareTeam | RelatedPerson | Device | HealthcareService | Location)referencia al recurso del participante
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... reference ΣC1..1stringuri del recurso del del actor aludido
..... type Σ0..1uriType the reference refers to (e.g. "Patient") - must be a resource in resources
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

..... identifier ΣC0..1IdentifierLogical reference, when literal reference is not known
..... display ΣC0..1stringText alternative for the resource
.... required Σ0..1booleanThe participant is required to attend (optional when false)
.... status SΣ1..1codeEstado de aceptación de la cita: accepted | declined | tentative | needs-action
Binding: ParticipationStatus (required): Códigos definidos por estándar


Required Pattern: accepted
... recurrenceId 0..1positiveIntThe sequence number in the recurrence
... occurrenceChanged 0..1booleanIndicates that this appointment varies from a recurrence pattern
... recurrenceTemplate C0..*BackboneElementDetails of the recurrence pattern/template used to generate occurrences
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... timezone 0..1CodeableConceptThe timezone of the occurrences
Binding: IANATimezones (required): IANA Timezones (BCP 175)

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

.... lastOccurrenceDate 0..1dateThe date when the recurrence should end
.... occurrenceCount 0..1positiveIntThe number of planned occurrences
.... occurrenceDate 0..*dateSpecific dates for a recurring set of appointments (no template)
.... weeklyTemplate 0..1BackboneElementInformation about weekly recurring appointments
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... monday 0..1booleanRecurs on Mondays
..... tuesday 0..1booleanRecurs on Tuesday
..... wednesday 0..1booleanRecurs on Wednesday
..... thursday 0..1booleanRecurs on Thursday
..... friday 0..1booleanRecurs on Friday
..... saturday 0..1booleanRecurs on Saturday
..... sunday 0..1booleanRecurs on Sunday
..... weekInterval 0..1positiveIntRecurs every nth week
.... monthlyTemplate 0..1BackboneElementInformation about monthly recurring appointments
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... dayOfMonth 0..1positiveIntRecurs on a specific day of the month
..... nthWeekOfMonth 0..1CodingIndicates which week of the month the appointment should occur
Binding: WeekOfMonth (required): The set of weeks in a month.

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

..... monthInterval 1..1positiveIntRecurs every nth month
.... yearlyTemplate 0..1BackboneElementInformation about yearly recurring appointments
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... yearInterval 1..1positiveIntRecurs every nth year
.... excludingDate 0..*dateAny dates that should be excluded from the series
.... excludingRecurrenceId 0..*positiveIntAny recurrence IDs that should be excluded from the recurrence

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Appointment.languagerequiredAllLanguages
Appointment.statusrequiredAppointmentStatus
Appointment.cancellationReasonexampleAppointmentCancellationReason
Appointment.classpreferredhttp://terminology.hl7.org/ValueSet/EncounterClass
Appointment.serviceCategoryrequiredTipoAtencionVS (a valid code from Códigos para Tipo de Atención)
Appointment.serviceTypeexampleServiceType
Appointment.specialtyrequiredEspecialidadMedicaVS (a valid code from Códigos para Especialidades Médicas)
Appointment.appointmentTypepreferredHl7VSAppointmentReasonCodes
Appointment.reasonpreferredEncounterReasonCodes
Appointment.priorityexampleActPriority
Appointment.subject.typeextensibleResourceType
Appointment.participant.typeextensibleParticipantType
Appointment.participant.actor.typeextensibleResourceType
Appointment.participant.statusrequiredPattern: accepted
Appointment.recurrenceTemplate.timezonerequiredIANATimezones (a valid code from https://www.iana.org/time-zones)
Appointment.recurrenceTemplate.recurrenceTypepreferredAppointmentRecurrenceType
Appointment.recurrenceTemplate.monthlyTemplate.nthWeekOfMonthrequiredWeekOfMonth
Appointment.recurrenceTemplate.monthlyTemplate.dayOfWeekrequiredDaysOfWeek

Constraints

IdGradePath(s)DetailsRequirements
app-1errorAppointment.participantEither the type or actor on the participant SHALL be specified
: type.exists() or actor.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()

This structure is derived from Appointment

Summary

Mandatory: 11 elements
Must-Support: 8 elements

 

Other representations of profile: CSV, Excel, Schematron

Notes:

Notas de Implementación


Se describe abajo un resumen de las operaciones de búsqueda sobre este perfil. Se despliegan solo aquellas requeridas para este caso de uso y el formato de la expresión

Search Parameters


date date Búsqueda por fecha y hora específica GET [URL_Base]/Appointment?date=2018-05-07T16:00:00-03:00
date date Citas desde una fecha en adelante GET [URL_Base]/Appointment?date=ge2018-05-07T16:00:00-03:00
date date Citas desde una fecha hacia atrás GET [URL_Base]/Appointment?date=le2018-05-07T16:00:00-03:00