care.emr.resources.activity_definition.spec module

class ActivityDefinitionStatusOptions(*values)

Bases: str, Enum

Status options for activity definition

draft = 'draft'
active = 'active'
retired = 'retired'
unknown = 'unknown'
class ActivityDefinitionKindOptions(*values)

Bases: str, Enum

service_request = 'service_request'
class ActivityDefinitionCategoryOptions(*values)

Bases: str, Enum

laboratory = 'laboratory'
imaging = 'imaging'
counselling = 'counselling'
surgical_procedure = 'surgical_procedure'
class BaseActivityDefinitionSpec(*, meta: dict = {}, id: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] | None = None, title: str, derived_from_uri: str | None = None, status: ~care.emr.resources.activity_definition.spec.ActivityDefinitionStatusOptions, description: str = '', usage: str = '', classification: ~care.emr.resources.activity_definition.spec.ActivityDefinitionCategoryOptions, kind: ~care.emr.resources.activity_definition.spec.ActivityDefinitionKindOptions, code: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, body_site: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding | None = None, diagnostic_report_codes: list[~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding] = [])

Bases: EMRResource

Base model for activity definition

id: Annotated[UUID, UuidVersion(uuid_version=4)] | None
title: str
derived_from_uri: str | None
status: ActivityDefinitionStatusOptions
description: str
usage: str
classification: ActivityDefinitionCategoryOptions
kind: ActivityDefinitionKindOptions
code: BoundCoding
body_site: BoundCoding | None
diagnostic_report_codes: list[~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding]
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]] = {'body_site': FieldInfo(annotation=Union[ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, NoneType], required=False, default=None), 'classification': FieldInfo(annotation=ActivityDefinitionCategoryOptions, required=True), 'code': FieldInfo(annotation=ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, required=True), 'derived_from_uri': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'description': FieldInfo(annotation=str, required=False, default=''), 'diagnostic_report_codes': FieldInfo(annotation=list[ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding], required=False, default=[]), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'kind': FieldInfo(annotation=ActivityDefinitionKindOptions, required=True), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'status': FieldInfo(annotation=ActivityDefinitionStatusOptions, required=True), 'title': FieldInfo(annotation=str, required=True), 'usage': FieldInfo(annotation=str, 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.

class ActivityDefinitionWriteSpec(*, meta: dict = {}, id: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] | None = None, title: str, derived_from_uri: str | None = None, status: ~care.emr.resources.activity_definition.spec.ActivityDefinitionStatusOptions, description: str = '', usage: str = '', classification: ~care.emr.resources.activity_definition.spec.ActivityDefinitionCategoryOptions, kind: ~care.emr.resources.activity_definition.spec.ActivityDefinitionKindOptions, code: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, body_site: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding | None = None, diagnostic_report_codes: list[~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding] = [], locations: list[~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)]], specimen_requirements: list[~typing.Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), ~pydantic.functional_validators.AfterValidator(func=~care.emr.utils.slug_type.extended_slug_validator)]], observation_result_requirements: list[~typing.Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), ~pydantic.functional_validators.AfterValidator(func=~care.emr.utils.slug_type.extended_slug_validator)]], healthcare_service: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] | None, charge_item_definitions: list[~typing.Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), ~pydantic.functional_validators.AfterValidator(func=~care.emr.utils.slug_type.extended_slug_validator)]], category: ~typing.Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), ~pydantic.functional_validators.AfterValidator(func=~care.emr.utils.slug_type.extended_slug_validator)] | None, slug_value: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=5), ~annotated_types.MaxLen(max_length=25), ~pydantic.functional_validators.AfterValidator(func=~care.emr.utils.slug_type.slug_validator)])

Bases: BaseActivityDefinitionSpec

locations: list[Annotated[UUID, UuidVersion(uuid_version=4)]]
specimen_requirements: list[Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), AfterValidator(func=extended_slug_validator)]]
observation_result_requirements: list[Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), AfterValidator(func=extended_slug_validator)]]
healthcare_service: Annotated[UUID, UuidVersion(uuid_version=4)] | None
charge_item_definitions: list[Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), AfterValidator(func=extended_slug_validator)]]
category: Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), AfterValidator(func=extended_slug_validator)] | None
slug_value: Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=5), MaxLen(max_length=25)]), AfterValidator(func=slug_validator)]
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]] = {'body_site': FieldInfo(annotation=Union[ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, NoneType], required=False, default=None), 'category': FieldInfo(annotation=Union[Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), AfterValidator], NoneType], required=True), 'charge_item_definitions': FieldInfo(annotation=list[Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), AfterValidator]], required=True), 'classification': FieldInfo(annotation=ActivityDefinitionCategoryOptions, required=True), 'code': FieldInfo(annotation=ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, required=True), 'derived_from_uri': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'description': FieldInfo(annotation=str, required=False, default=''), 'diagnostic_report_codes': FieldInfo(annotation=list[ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding], required=False, default=[]), 'healthcare_service': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=True), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'kind': FieldInfo(annotation=ActivityDefinitionKindOptions, required=True), 'locations': FieldInfo(annotation=list[Annotated[UUID, UuidVersion]], required=True), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'observation_result_requirements': FieldInfo(annotation=list[Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), AfterValidator]], required=True), 'slug_value': FieldInfo(annotation=str, required=True, metadata=[MinLen(min_length=5), MaxLen(max_length=25), AfterValidator(func=<function slug_validator>)]), 'specimen_requirements': FieldInfo(annotation=list[Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=7), MaxLen(max_length=75)]), AfterValidator]], required=True), 'status': FieldInfo(annotation=ActivityDefinitionStatusOptions, required=True), 'title': FieldInfo(annotation=str, required=True), 'usage': FieldInfo(annotation=str, 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.

class ActivityDefinitionReadSpec(*, meta: dict = {}, id: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] | None = None, title: str, derived_from_uri: str | None = None, status: ~care.emr.resources.activity_definition.spec.ActivityDefinitionStatusOptions, description: str = '', usage: str = '', classification: ~care.emr.resources.activity_definition.spec.ActivityDefinitionCategoryOptions, kind: ~care.emr.resources.activity_definition.spec.ActivityDefinitionKindOptions, code: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, body_site: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding | None = None, diagnostic_report_codes: list[~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding] = [], version: int | None = None, tags: list[dict] = [], category: dict | None = None, slug_config: dict, slug: str)

Bases: BaseActivityDefinitionSpec

Activity definition read specification

version: int | None
tags: list[dict]
category: dict | None
slug_config: dict
slug: str
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]] = {'body_site': FieldInfo(annotation=Union[ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, NoneType], required=False, default=None), 'category': FieldInfo(annotation=Union[dict, NoneType], required=False, default=None), 'classification': FieldInfo(annotation=ActivityDefinitionCategoryOptions, required=True), 'code': FieldInfo(annotation=ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, required=True), 'derived_from_uri': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'description': FieldInfo(annotation=str, required=False, default=''), 'diagnostic_report_codes': FieldInfo(annotation=list[ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding], required=False, default=[]), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'kind': FieldInfo(annotation=ActivityDefinitionKindOptions, required=True), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'slug': FieldInfo(annotation=str, required=True), 'slug_config': FieldInfo(annotation=dict, required=True), 'status': FieldInfo(annotation=ActivityDefinitionStatusOptions, required=True), 'tags': FieldInfo(annotation=list[dict], required=False, default=[]), 'title': FieldInfo(annotation=str, required=True), 'usage': FieldInfo(annotation=str, required=False, default=''), 'version': FieldInfo(annotation=Union[int, NoneType], required=False, default=None)}

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 ActivityDefinitionRetrieveSpec(*, meta: dict = {}, id: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] | None = None, title: str, derived_from_uri: str | None = None, status: ~care.emr.resources.activity_definition.spec.ActivityDefinitionStatusOptions, description: str = '', usage: str = '', classification: ~care.emr.resources.activity_definition.spec.ActivityDefinitionCategoryOptions, kind: ~care.emr.resources.activity_definition.spec.ActivityDefinitionKindOptions, code: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, body_site: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding | None = None, diagnostic_report_codes: list[~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding] = [], version: int | None = None, tags: list[dict] = [], category: dict | None = None, slug_config: dict, slug: str, specimen_requirements: list[dict], observation_result_requirements: list[dict], locations: list[dict], healthcare_service: dict | None = None, charge_item_definitions: list[dict])

Bases: ActivityDefinitionReadSpec

Activity definition retrieve specification

specimen_requirements: list[dict]
observation_result_requirements: list[dict]
locations: list[dict]
healthcare_service: dict | None
charge_item_definitions: list[dict]
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]] = {'body_site': FieldInfo(annotation=Union[ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, NoneType], required=False, default=None), 'category': FieldInfo(annotation=Union[dict, NoneType], required=False, default=None), 'charge_item_definitions': FieldInfo(annotation=list[dict], required=True), 'classification': FieldInfo(annotation=ActivityDefinitionCategoryOptions, required=True), 'code': FieldInfo(annotation=ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, required=True), 'derived_from_uri': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'description': FieldInfo(annotation=str, required=False, default=''), 'diagnostic_report_codes': FieldInfo(annotation=list[ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding], required=False, default=[]), 'healthcare_service': FieldInfo(annotation=Union[dict, NoneType], required=False, default=None), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'kind': FieldInfo(annotation=ActivityDefinitionKindOptions, required=True), 'locations': FieldInfo(annotation=list[dict], required=True), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'observation_result_requirements': FieldInfo(annotation=list[dict], required=True), 'slug': FieldInfo(annotation=str, required=True), 'slug_config': FieldInfo(annotation=dict, required=True), 'specimen_requirements': FieldInfo(annotation=list[dict], required=True), 'status': FieldInfo(annotation=ActivityDefinitionStatusOptions, required=True), 'tags': FieldInfo(annotation=list[dict], required=False, default=[]), 'title': FieldInfo(annotation=str, required=True), 'usage': FieldInfo(annotation=str, required=False, default=''), 'version': FieldInfo(annotation=Union[int, NoneType], required=False, default=None)}

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.