care.emr.resources.medication.statement.spec module

class MedicationStatementStatus(*values)

Bases: str, Enum

active = 'active'
on_hold = 'on_hold'
completed = 'completed'
stopped = 'stopped'
unknown = 'unknown'
entered_in_error = 'entered_in_error'
not_taken = 'not_taken'
intended = 'intended'
class MedicationStatementInformationSourceType(*values)

Bases: str, Enum

related_person = 'related_person'
practitioner = 'practitioner'
patient = 'patient'
class BaseMedicationStatementSpec(*, meta: dict = {}, id: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] = None, status: ~care.emr.resources.medication.statement.spec.MedicationStatementStatus, reason: str | None = None, medication: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, dosage_text: str | None = None, effective_period: ~care.emr.resources.base.PeriodSpec | None = None, encounter: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)], information_source: ~care.emr.resources.medication.statement.spec.MedicationStatementInformationSourceType | None = None, note: str | None = None)

Bases: EMRResource

id: Annotated[UUID, UuidVersion(uuid_version=4)]
status: MedicationStatementStatus
reason: str | None
medication: BoundCoding
dosage_text: str | None
effective_period: PeriodSpec | None
encounter: Annotated[UUID, UuidVersion(uuid_version=4)]
information_source: MedicationStatementInformationSourceType | None
note: str | None
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'dosage_text': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'effective_period': FieldInfo(annotation=Union[PeriodSpec, NoneType], required=False, default=None), 'encounter': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'id': FieldInfo(annotation=UUID, required=False, default=None, metadata=[UuidVersion(uuid_version=4)]), 'information_source': FieldInfo(annotation=Union[MedicationStatementInformationSourceType, NoneType], required=False, default=None), 'medication': FieldInfo(annotation=ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, required=True), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'note': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'reason': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'status': FieldInfo(annotation=MedicationStatementStatus, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class MedicationStatementUpdateSpec(*, meta: dict = {}, status: MedicationStatementStatus, effective_period: PeriodSpec | None = None, note: str | None = None)

Bases: EMRResource

status: MedicationStatementStatus
effective_period: PeriodSpec | None
note: str | None
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'effective_period': FieldInfo(annotation=Union[PeriodSpec, NoneType], required=False, default=None), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'note': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'status': FieldInfo(annotation=MedicationStatementStatus, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class MedicationStatementSpec(*, meta: dict = {}, id: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] = None, status: ~care.emr.resources.medication.statement.spec.MedicationStatementStatus, reason: str | None = None, medication: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, dosage_text: str | None = None, effective_period: ~care.emr.resources.base.PeriodSpec | None = None, encounter: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)], information_source: ~care.emr.resources.medication.statement.spec.MedicationStatementInformationSourceType | None = None, note: str | None = None)

Bases: BaseMedicationStatementSpec

classmethod validate_encounter_exists(encounter)
perform_extra_deserialization(is_update, obj)
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'dosage_text': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'effective_period': FieldInfo(annotation=Union[PeriodSpec, NoneType], required=False, default=None), 'encounter': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'id': FieldInfo(annotation=UUID, required=False, default=None, metadata=[UuidVersion(uuid_version=4)]), 'information_source': FieldInfo(annotation=Union[MedicationStatementInformationSourceType, NoneType], required=False, default=None), 'medication': FieldInfo(annotation=ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, required=True), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'note': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'reason': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'status': FieldInfo(annotation=MedicationStatementStatus, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class MedicationStatementReadSpec(*, meta: dict = {}, id: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] = None, status: ~care.emr.resources.medication.statement.spec.MedicationStatementStatus, reason: str | None = None, medication: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, dosage_text: str | None = None, effective_period: ~care.emr.resources.base.PeriodSpec | None = None, encounter: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)], information_source: ~care.emr.resources.medication.statement.spec.MedicationStatementInformationSourceType | None = None, note: str | None = None, created_by: ~care.emr.resources.user.spec.UserSpec = {}, updated_by: ~care.emr.resources.user.spec.UserSpec = {}, created_date: ~datetime.datetime, modified_date: ~datetime.datetime)

Bases: BaseMedicationStatementSpec

created_by: UserSpec
updated_by: UserSpec
created_date: datetime
modified_date: datetime
classmethod perform_extra_serialization(mapping, obj)
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'created_by': FieldInfo(annotation=UserSpec, required=False, default={}), 'created_date': FieldInfo(annotation=datetime, required=True), 'dosage_text': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'effective_period': FieldInfo(annotation=Union[PeriodSpec, NoneType], required=False, default=None), 'encounter': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'id': FieldInfo(annotation=UUID, required=False, default=None, metadata=[UuidVersion(uuid_version=4)]), 'information_source': FieldInfo(annotation=Union[MedicationStatementInformationSourceType, NoneType], required=False, default=None), 'medication': FieldInfo(annotation=ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, required=True), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'modified_date': FieldInfo(annotation=datetime, required=True), 'note': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'reason': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'status': FieldInfo(annotation=MedicationStatementStatus, required=True), 'updated_by': FieldInfo(annotation=UserSpec, required=False, default={})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.