Skip to content

Commit 65f2d9c

Browse files
fix(adapter): allow optional 'valueId' in 'ValueReferencePair' for JSON and XML
1 parent 114f42f commit 65f2d9c

2 files changed

Lines changed: 6 additions & 3 deletions

File tree

sdk/basyx/aas/adapter/json/json_deserialization.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -425,8 +425,10 @@ def _construct_value_list(cls, dct: Dict[str, object]) -> model.ValueList:
425425
@classmethod
426426
def _construct_value_reference_pair(cls, dct: Dict[str, object],
427427
object_class=model.ValueReferencePair) -> model.ValueReferencePair:
428+
value_id_dict = dct.get('valueId')
429+
value_id = cls._construct_reference(value_id_dict) if value_id_dict is not None else None
428430
return object_class(value=_get_ts(dct, 'value', str),
429-
value_id=cls._construct_reference(_get_ts(dct, 'valueId', dict)))
431+
value_id=value_id)
430432

431433
# #############################################################################
432434
# Direct Constructor Methods (for classes with `modelType`) starting from here

sdk/basyx/aas/adapter/xml/xml_deserialization.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1063,9 +1063,10 @@ def construct_submodel(cls, element: etree._Element, object_class=model.Submodel
10631063
@classmethod
10641064
def construct_value_reference_pair(cls, element: etree._Element, object_class=model.ValueReferencePair,
10651065
**_kwargs: Any) -> model.ValueReferencePair:
1066+
value_id_element = element.find(NS_AAS + "valueId")
1067+
value_id = cls.construct_reference(value_id_element, **_kwargs) if value_id_element is not None else None
10661068
return object_class(_child_text_mandatory(element, NS_AAS + "value"),
1067-
_child_construct_mandatory(element, NS_AAS + "valueId", cls.construct_reference))
1068-
1069+
value_id)
10691070
@classmethod
10701071
def construct_value_list(cls, element: etree._Element, **_kwargs: Any) -> model.ValueList:
10711072
"""

0 commit comments

Comments
 (0)