care.emr.resources.specimen_definition.spec module¶
- class SpecimenDefinitionStatusOptions(*values)¶
-
Status options for specimen definition
- draft = 'draft'¶
- active = 'active'¶
- retired = 'retired'¶
- class PreferenceOptions(*values)¶
-
Preference options for specimen type testing
- preferred = 'preferred'¶
- alternate = 'alternate'¶
- class HandlingConditionOptions(*values)¶
-
Handling condition options for specimen testing
- room = 'room'¶
- refrigerated = 'refrigerated'¶
- frozen = 'frozen'¶
- class QuantitySpec(*, value: float, unit: Coding)¶
Bases:
BaseModelRepresents a quantity with value and unit
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class MinimumVolumeSpec(*, quantity: QuantitySpec | None = None, string: str | None = None)¶
Bases:
BaseModelSpecification for minimum volume with support for quantity or string representation
- quantity: QuantitySpec | None¶
- validate_minimum_volume()¶
Validates that only one minimum volume field is provided
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class ContainerSpec(*, description: str | None = None, capacity: ~care.emr.resources.specimen_definition.spec.QuantitySpec | None = None, minimum_volume: ~care.emr.resources.specimen_definition.spec.MinimumVolumeSpec | None = None, cap: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding | None = None, preparation: str | None = None)¶
Bases:
BaseModelContainer specification for specimen collection
- capacity: QuantitySpec | None¶
- minimum_volume: MinimumVolumeSpec | None¶
- cap: BoundCoding | None¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class DurationSpec(*, value: int, unit: Coding)¶
Bases:
BaseModelDuration specification using value and unit
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class RangeSpec(*, low: QuantitySpec | None = None, high: QuantitySpec | None = None)¶
Bases:
BaseModelSpecification for a range with low and high values
- low: QuantitySpec | None¶
- high: QuantitySpec | None¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class HandlingSpec(*, temperature_qualifier: HandlingConditionOptions | None = None, temperature_range: RangeSpec | None = None, max_duration: DurationSpec | None = None, instruction: str | None = None)¶
Bases:
BaseModelSpecification for specimen handling
- temperature_qualifier: HandlingConditionOptions | None¶
- max_duration: DurationSpec | None¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class TypeTestedSpec(*, is_derived: bool, preference: PreferenceOptions, container: ContainerSpec | None = None, requirement: str | None = None, retention_time: DurationSpec | None = None, single_use: bool | None = None, handling: HandlingSpec | None = None)¶
Bases:
BaseModelSpecification for tested specimen types
- preference: PreferenceOptions¶
- container: ContainerSpec | None¶
- retention_time: DurationSpec | None¶
- handling: HandlingSpec | None¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class BaseSpecimenDefinitionSpec(*, 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.specimen_definition.spec.SpecimenDefinitionStatusOptions, description: str, type_collected: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, patient_preparation: list[~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding] = [], collection: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding | None = None, type_tested: ~care.emr.resources.specimen_definition.spec.TypeTestedSpec | None = None)¶
Bases:
EMRResourceBase model for specimen definition
- status: SpecimenDefinitionStatusOptions¶
- type_collected: BoundCoding¶
- patient_preparation: list[~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding]¶
- collection: BoundCoding | None¶
- type_tested: TypeTestedSpec | None¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class SpecimenDefinitionWriteSpec(*, 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.specimen_definition.spec.SpecimenDefinitionStatusOptions, description: str, type_collected: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, patient_preparation: list[~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding] = [], collection: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding | None = None, type_tested: ~care.emr.resources.specimen_definition.spec.TypeTestedSpec | None = None, slug_value: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=5), ~annotated_types.MaxLen(max_length=36), ~pydantic.functional_validators.AfterValidator(func=~care.emr.utils.slug_type.slug_validator)])¶
Bases:
BaseSpecimenDefinitionSpec- slug_value: Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=5), MaxLen(max_length=36)]), AfterValidator(func=slug_validator)]¶
- perform_extra_deserialization(is_update, obj)¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class SpecimenDefinitionReadSpec(*, 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.specimen_definition.spec.SpecimenDefinitionStatusOptions, description: str, type_collected: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding, patient_preparation: list[~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding] = [], collection: ~care.emr.utils.valueset_coding_type.ValueSetBoundCoding.__class_getitem__.<locals>.BoundCoding | None = None, type_tested: ~care.emr.resources.specimen_definition.spec.TypeTestedSpec | None = None, version: int | None = None, slug_config: dict, slug: str)¶
Bases:
BaseSpecimenDefinitionSpecSpecimen definition read specification
- classmethod perform_extra_serialization(mapping, obj)¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].