AttributeDefinition - Абстрактное описание атрибута¶
-
class
axioma.core.dp.
AttributeDefinition
¶ Примечание
Абстрактный
Абстрактное описание атрибута
От него наследуются:
-
-
class
NormalizeResult
¶ Статус проведения нормализации
Наименование
Значение
Описание
Примеры преобразования
Norm_DirectUsage
0
Значение используется как есть, без преобразования
Integer -> Integer; String -> String; …
Norm_LosslessConversion
1
Преобразование без потери точности
Integer -> String; WKB -> Geometry; …
Norm_MinorValueChange
2
Преобразование с несущественной потерей точности
Округление числа, например 3.1415 -> 3.14
Norm_MajorValueChange
3
Преобразование с существенной потерей точности
Переполнение числа, если схема не позволяет записывать числа нужной длины, например 12345 [Decimal(5)] → 999 [Decimal(3)]
Norm_CouldNotConvert
4
Невозможно выполнить преобразование
Несовместимые данные. В результате преобразования получается значение None
-
alias
()¶ Псевдоним атрибута, который может использоваться как более удобная и наглядная метка имени поля. Если не установлен, возвращается имя поля.
- Тип результата
-
copyId
(attr)¶ Присвоить идентификатор другого атрибута
- Параметры
attr (
AttributeDefinition
) – другой атрибут
-
displayClassName
()¶ Имя класса атрибута человеческими буквами: «простой», «геометрия», «стиль», и т.д
- Тип результата
-
getNormalizedValue
(value)¶ Пытается преобразовать значение value к типу данного атрибута
- Результат
пара (value, result), где value - преобразованное значение, а result сообщает об уровне потери точности
- Тип результата
(QVariant,
NormalizeResult
)
-
id
()¶ Идентификатор данного конкретного атрибута, который не меняется в течение жизни объекта
-
newId
()¶ Сгенерировать новый идентификатор
-
normalizeValue
(value, acceptableError=Norm_CouldNotConvert)¶ Выполняет преобразование значения value к типу данного атрибута. В случае, если уровень потери точности в ходе преобразования превысил acceptableError, бросается исключение LogicError.
- Параметры
value – заданное значение
acceptableError (
NormalizeResult
) – какой уровень ошибки допускается
- Результат
преобразованное значение
-
setName
(name)¶ Задать имя атрибута
-
toJson
()¶ Описание атрибута в формате JSON
- Тип результата
QJsonObject
-
class
Пример см. TableSchema