care.emr.resources.patient_identifier.spec module

class PatientIdentifierUse(*values)

Bases: str, Enum

usual = 'usual'
official = 'official'
temp = 'temp'
secondary = 'secondary'
old = 'old'
class PatientIdentifierStatus(*values)

Bases: str, Enum

draft = 'draft'
active = 'active'
inactive = 'inactive'
class PatientIdentifierRetrieveConfig(*, retrieve_with_dob: bool = False, retrieve_with_year_of_birth: bool = False, retrieve_with_otp: bool = False, retrieve_partial_search: bool = False)

Bases: BaseModel

retrieve_with_dob: bool
retrieve_with_year_of_birth: bool
retrieve_with_otp: bool
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]] = {'retrieve_partial_search': FieldInfo(annotation=bool, required=False, default=False), 'retrieve_with_dob': FieldInfo(annotation=bool, required=False, default=False), 'retrieve_with_otp': FieldInfo(annotation=bool, required=False, default=False), 'retrieve_with_year_of_birth': FieldInfo(annotation=bool, required=False, default=False)}

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 IdentifierConfig(*, use: PatientIdentifierUse, description: str = '', system: str, required: bool, unique: bool, regex: str, display: str, retrieve_config: PatientIdentifierRetrieveConfig = {}, default_value: str | None = None, auto_maintained: bool = False)

Bases: BaseModel

use: PatientIdentifierUse
description: str
system: str
required: bool
unique: bool
regex: str
display: str
retrieve_config: PatientIdentifierRetrieveConfig
default_value: str | None
auto_maintained: bool
classmethod validate_default_value(v)
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]] = {'auto_maintained': FieldInfo(annotation=bool, required=False, default=False), 'default_value': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'description': FieldInfo(annotation=str, required=False, default=''), 'display': FieldInfo(annotation=str, required=True), 'regex': FieldInfo(annotation=str, required=True), 'required': FieldInfo(annotation=bool, required=True), 'retrieve_config': FieldInfo(annotation=PatientIdentifierRetrieveConfig, required=False, default={}), 'system': FieldInfo(annotation=str, required=True), 'unique': FieldInfo(annotation=bool, required=True), 'use': FieldInfo(annotation=PatientIdentifierUse, 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 BasePatientIdentifierSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, config: IdentifierConfig, status: PatientIdentifierStatus)

Bases: EMRResource

id: Annotated[UUID, UuidVersion(uuid_version=4)] | None
config: IdentifierConfig
status: PatientIdentifierStatus
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]] = {'config': FieldInfo(annotation=IdentifierConfig, required=True), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'status': FieldInfo(annotation=PatientIdentifierStatus, 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 PatientIdentifierCreateSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, config: IdentifierConfig, status: PatientIdentifierStatus, facility: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None)

Bases: BasePatientIdentifierSpec

facility: Annotated[UUID, UuidVersion(uuid_version=4)] | None
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]] = {'config': FieldInfo(annotation=IdentifierConfig, required=True), 'facility': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'status': FieldInfo(annotation=PatientIdentifierStatus, 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 PatientIdentifierListSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, config: IdentifierConfig, status: PatientIdentifierStatus)

Bases: BasePatientIdentifierSpec

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]] = {'config': FieldInfo(annotation=IdentifierConfig, required=True), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'status': FieldInfo(annotation=PatientIdentifierStatus, 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.