kodexa 7.4.413041559723__py3-none-any.whl → 7.4.413042948012__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -171,12 +171,24 @@ class LLMDataObject(BaseModel):
171
171
  result = {}
172
172
  for field in self.__fields__:
173
173
  value = getattr(self, field)
174
- if isinstance(value, list):
175
- result[field] = [item.to_dict(taxonomy) for item in value if isinstance(item, (LLMDataObject, LLMDataAttribute))]
174
+
175
+ if isinstance(value, list) and len(value) > 0:
176
+ if isinstance(value[0], LLMDataObject):
177
+ # We need to find the first field of the object that is a LLMDataAttribute
178
+ # and use that to derive the taxon path of the LLMDataObject
179
+ value[0].__fields__.sort(key=lambda x: isinstance(getattr(value[0], x), LLMDataAttribute))
180
+ if isinstance(getattr(value[0], value[0].__fields__[0]), LLMDataAttribute):
181
+ # Get the basename of the taxon path (ie. if the taxon path is "a/b/c", get "a/b")
182
+ taxon_path = getattr(value[0], value[0].__fields__[0]).taxon_path.rsplit('/', 1)[0]
183
+ target_taxon = taxonomy.get_taxon_by_path(taxon_path)
184
+ if target_taxon is not None:
185
+ result[target_taxon.external_name] = [item.to_dict(taxonomy) for item in value if isinstance(item, (LLMDataObject, LLMDataAttribute))]
176
186
  elif isinstance(value, LLMDataAttribute):
177
187
  result.update(value.to_dict(taxonomy))
178
188
  elif isinstance(value, LLMDataObject):
179
- result[field] = value.to_dict(taxonomy)
189
+ target_taxon = taxonomy.get_taxon_by_path(value.taxon_path)
190
+ if target_taxon is not None:
191
+ result[target_taxon.external_name] = value.to_dict(taxonomy)
180
192
  return result
181
193
 
182
194
  def to_review(self, page_number=None):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: kodexa
3
- Version: 7.4.413041559723
3
+ Version: 7.4.413042948012
4
4
  Summary: Python SDK for the Kodexa Platform
5
5
  Author: Austin Redenbaugh
6
6
  Author-email: austin@kodexa.com
@@ -3,7 +3,7 @@ kodexa/assistant/__init__.py,sha256=nlXm_YnV_50hgn0TIT2Fkc2fQ-86OjmctY_j8My9nc4,
3
3
  kodexa/assistant/assistant.py,sha256=5KFdbqFSLIZJyDRyZdpcfr448fT-CW4JhYu9A6B9DGY,14663
4
4
  kodexa/connectors/__init__.py,sha256=WF6G_MUeU32TlKSUKkpNoNX7dq8iBPliFMep4E8BmZc,328
5
5
  kodexa/connectors/connectors.py,sha256=FpUZDkSyHld2b9eYRuVOWzaFtuGoaRuPXXicJB7THbc,10413
6
- kodexa/dataclasses/__init__.py,sha256=eLVjCFB3Sp_36FEf_wbw2OdQyu2B9FaXVvtoe1wn1xM,19618
6
+ kodexa/dataclasses/__init__.py,sha256=VL96Tgtic1qIh8KRZ-Z3gm9tWYW0ehjmCnlFhMKIYl8,20602
7
7
  kodexa/dataclasses/templates/llm_data_class.j2,sha256=YWjStW136chV_59JM3AYis3i-0jdrqDvLXsISUW9zDU,660
8
8
  kodexa/model/__init__.py,sha256=rtLXYJBxB-rnukhslN9rlqoB3--1H3253HyHGbD_Gc8,796
9
9
  kodexa/model/base.py,sha256=CaZK8nMhT1LdCpt4aLhebJGcorjq9qRID1FjnXnP14M,521
@@ -44,7 +44,7 @@ kodexa/testing/test_utils.py,sha256=v44p__gE7ia67W7WeHN2HBFCWSCUrCZt7G4xBNCmwf8,
44
44
  kodexa/training/__init__.py,sha256=xs2L62YpRkIRfslQwtQZ5Yxjhm7sLzX2TrVX6EuBnZQ,52
45
45
  kodexa/training/train_utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
46
46
  kodexa/utils/__init__.py,sha256=Pnim1o9_db5YEnNvDTxpM7HG-qTlL6n8JwFwOafU9wo,5928
47
- kodexa-7.4.413041559723.dist-info/LICENSE,sha256=WNHhf_5RCaeuKWyq_K39vmp9F28LxKsB4SpomwSZ2L0,11357
48
- kodexa-7.4.413041559723.dist-info/METADATA,sha256=-ktNcWfsonqxZUIAMF4lV6H4sEpHo5u03j_YDPX56wQ,3528
49
- kodexa-7.4.413041559723.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
50
- kodexa-7.4.413041559723.dist-info/RECORD,,
47
+ kodexa-7.4.413042948012.dist-info/LICENSE,sha256=WNHhf_5RCaeuKWyq_K39vmp9F28LxKsB4SpomwSZ2L0,11357
48
+ kodexa-7.4.413042948012.dist-info/METADATA,sha256=Uz7QTYXZdvdom-RsCcvJjJM1UmefkmscF_W9Yg_n25M,3528
49
+ kodexa-7.4.413042948012.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
50
+ kodexa-7.4.413042948012.dist-info/RECORD,,