Skip to content
Snippets Groups Projects

Add native value types

Merged Michael Thies requested to merge feature/native-value-types into master
18 files
+ 1027
60
Compare changes
  • Side-by-side
  • Inline
Files
18
@@ -475,7 +475,7 @@ class AASFromJsonDecoder(json.JSONDecoder):
@classmethod
def _construct_qualifier(cls, dct: Dict[str, object], object_class=model.Qualifier) -> model.Qualifier:
ret = object_class(type_=_get_ts(dct, 'type', str),
value_type=_get_ts(dct, 'valueType', str))
value_type=model.datatypes.XSD_TYPE_CLASSES[_get_ts(dct, 'valueType', str)])
cls._amend_abstract_attributes(ret, dct)
if 'value' in dct:
ret.value = _get_ts(dct, 'value', str)
@@ -638,11 +638,11 @@ class AASFromJsonDecoder(json.JSONDecoder):
@classmethod
def _construct_property(cls, dct: Dict[str, object], object_class=model.Property) -> model.Property:
ret = object_class(id_short=_get_ts(dct, "idShort", str),
value_type=_get_ts(dct, 'valueType', str),
value_type=model.datatypes.XSD_TYPE_CLASSES[_get_ts(dct, 'valueType', str)],
kind=cls._get_kind(dct))
cls._amend_abstract_attributes(ret, dct)
if 'value' in dct and dct['value'] is not None:
ret.value = _get_ts(dct, 'value', str)
ret.value = model.datatypes.from_xsd(_get_ts(dct, 'value', str), ret.value_type)
if 'valueId' in dct:
ret.value_id = cls._construct_reference(_get_ts(dct, 'valueId', dict))
return ret
@@ -650,13 +650,13 @@ class AASFromJsonDecoder(json.JSONDecoder):
@classmethod
def _construct_range(cls, dct: Dict[str, object], object_class=model.Range) -> model.Range:
ret = object_class(id_short=_get_ts(dct, "idShort", str),
value_type=_get_ts(dct, 'valueType', str),
value_type=model.datatypes.XSD_TYPE_CLASSES[_get_ts(dct, 'valueType', str)],
kind=cls._get_kind(dct))
cls._amend_abstract_attributes(ret, dct)
if 'min' in dct and dct['min'] is not None:
ret.min_ = _get_ts(dct, 'min', str)
ret.min_ = model.datatypes.from_xsd(_get_ts(dct, 'min', str), ret.value_type)
if 'max' in dct and dct['max'] is not None:
ret.max_ = _get_ts(dct, 'max', str)
ret.max_ = model.datatypes.from_xsd(_get_ts(dct, 'max', str), ret.value_type)
return ret
@classmethod
Loading