ahvn.utils.mdb.types module¶
MongoDB type definitions and conversion utilities for UKF models.
- class ahvn.utils.mdb.types.BaseMongoType(**kwargs)[源代码]¶
基类:
objectBase class for MongoDB field types with UKF conversion.
- class ahvn.utils.mdb.types.MongoIdType(**kwargs)[源代码]¶
-
ID type for MongoDB (_id field).
UKF IDs can be very large integers (beyond 64-bit). MongoDB only supports up to 64-bit integers (8 bytes). We store IDs as strings to avoid overflow.
- class ahvn.utils.mdb.types.MongoTextType(length=None, **kwargs)[源代码]¶
-
Text type for MongoDB (string).
- 参数:
length (int | None)
- class ahvn.utils.mdb.types.MongoIntegerType(**kwargs)[源代码]¶
-
Integer type for MongoDB.
- class ahvn.utils.mdb.types.MongoBooleanType(**kwargs)[源代码]¶
-
Boolean type for MongoDB.
- class ahvn.utils.mdb.types.MongoDurationType(**kwargs)[源代码]¶
-
Duration type for MongoDB (stored as integer seconds).
- class ahvn.utils.mdb.types.MongoTimestampType(**kwargs)[源代码]¶
-
Timestamp type for MongoDB (stored as integer or datetime).
- class ahvn.utils.mdb.types.MongoJsonType(**kwargs)[源代码]¶
-
JSON type for MongoDB (stored as embedded document).
- class ahvn.utils.mdb.types.MongoVectorType(**kwargs)[源代码]¶
-
Vector type for MongoDB (stored as array of floats).
- class ahvn.utils.mdb.types.MongoTagsType(**kwargs)[源代码]¶
-
Tags type for MongoDB (stored as array of {slot, value} subdocuments).
UKF tags are stored as strings like "[slot:value]". MongoDB stores them as subdocuments: [{"slot": "...", "value": "..."}, ...]
- class ahvn.utils.mdb.types.MongoSynonymsType(**kwargs)[源代码]¶
-
Synonyms type for MongoDB (stored as array of strings).
UKF synonyms are already a set of strings.
- class ahvn.utils.mdb.types.MongoRelatedType(**kwargs)[源代码]¶
-
Related type for MongoDB (stored as array of relation subdocuments).
UKF related are 5-element tuples: (subject_id: int, relation: str, object_id: int, relation_id: Optional[int], relation_resources: Optional[str])
The relation_resources is a JSON string that gets stored in MongoDB as-is.
- class ahvn.utils.mdb.types.MongoAuthsType(**kwargs)[源代码]¶
-
Authorities type for MongoDB (stored as array of subdocuments).
UKF stores auths as set of "[user:authority]" strings. We parse this into subdocuments with user and authority fields.