dkg 8.0.13__py3-none-any.whl → 8.1.0__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.
@@ -386,24 +386,16 @@ class KnowledgeAsset(Module):
386
386
  if token_amount:
387
387
  estimated_publishing_cost = token_amount
388
388
  else:
389
- time_until_next_epoch = self.blockchain_service.time_until_next_epoch()
390
- epoch_length = self.blockchain_service.epoch_length()
391
389
  stake_weighted_average_ask = (
392
390
  self.blockchain_service.get_stake_weighted_average_ask()
393
391
  )
394
392
 
395
393
  # Convert to integers and perform calculation
396
394
  estimated_publishing_cost = (
397
- (
398
- int(stake_weighted_average_ask)
399
- * (
400
- int(epochs_num) * int(1e18)
401
- + (int(time_until_next_epoch) * int(1e18)) // int(epoch_length)
402
- )
403
- * int(dataset_size)
404
- )
395
+ int(stake_weighted_average_ask)
396
+ * int(epochs_num)
397
+ * int(dataset_size)
405
398
  // 1024
406
- // int(1e18)
407
399
  )
408
400
 
409
401
  knowledge_collection_id = None
@@ -398,26 +398,16 @@ class AsyncKnowledgeAsset(AsyncModule):
398
398
  if token_amount:
399
399
  estimated_publishing_cost = token_amount
400
400
  else:
401
- time_until_next_epoch = (
402
- await self.blockchain_service.time_until_next_epoch()
403
- )
404
- epoch_length = await self.blockchain_service.epoch_length()
405
401
  stake_weighted_average_ask = (
406
402
  await self.blockchain_service.get_stake_weighted_average_ask()
407
403
  )
408
404
 
409
405
  # Convert to integers and perform calculation
410
406
  estimated_publishing_cost = (
411
- (
412
- int(stake_weighted_average_ask)
413
- * (
414
- int(epochs_num) * int(1e18)
415
- + (int(time_until_next_epoch) * int(1e18)) // int(epoch_length)
416
- )
417
- * int(dataset_size)
418
- )
407
+ int(stake_weighted_average_ask)
408
+ * int(epochs_num)
409
+ * int(dataset_size)
419
410
  // 1024
420
- // int(1e18)
421
411
  )
422
412
 
423
413
  knowledge_collection_id = None
@@ -5,7 +5,7 @@ from dkg.exceptions import DatasetInputFormatNotSupported, InvalidDataset
5
5
  from dkg.types import JSONLD, NQuads
6
6
  from pyld import jsonld
7
7
  from dkg.constants import DEFAULT_RDF_FORMAT, DEFAULT_CANON_ALGORITHM, ESCAPE_MAP
8
- from rdflib import Graph, BNode, URIRef, Literal as RDFLiteral
8
+ from rdflib import Graph, BNode, URIRef, Dataset
9
9
  from rdflib.exceptions import ParserError as RDFParserError
10
10
  from uuid import uuid4
11
11
  from web3 import Web3
@@ -182,16 +182,13 @@ def generate_missing_ids_for_blank_nodes(nquads_list: list[str] | None) -> list[
182
182
  def group_nquads_by_subject(nquads_list: list[str], sort: bool = False):
183
183
  grouped = {}
184
184
 
185
- # Process each quad in original order
186
- for nquad in nquads_list:
187
- if not nquad.strip(): # Skip empty lines
188
- continue
185
+ all_nquads = "\n".join(nquad for nquad in nquads_list if nquad.strip())
189
186
 
190
- # Parse single quad
191
- g = Graph()
192
- g.parse(data=nquad, format="nquads")
193
- quad = next(iter(g))
194
- subject, predicate, obj = quad
187
+ d = Dataset()
188
+ d.parse(data=all_nquads, format="nquads")
189
+
190
+ for quad in d:
191
+ subject, predicate, obj, graph = quad
195
192
 
196
193
  # Get subject key
197
194
  subject_key = (
@@ -204,11 +201,8 @@ def group_nquads_by_subject(nquads_list: list[str], sort: bool = False):
204
201
  if subject_key not in grouped:
205
202
  grouped[subject_key] = []
206
203
 
207
- # Format object
208
- object_value = f'"{obj}"' if isinstance(obj, RDFLiteral) else f"<{obj}>"
209
-
210
204
  # Add quad to group
211
- quad_string = f"{subject_key} <{predicate}> {object_value} ."
205
+ quad_string = f"{subject.n3()} {predicate.n3()} {obj.n3()} ."
212
206
  grouped[subject_key].append(quad_string)
213
207
 
214
208
  # Return grouped quads (sorted if requested)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: dkg
3
- Version: 8.0.13
3
+ Version: 8.1.0
4
4
  Summary: Python library for interacting with the OriginTrail Decentralized Knowledge Graph
5
5
  License: Apache-2.0
6
6
  Author: Uladzislau Hubar
@@ -24,8 +24,8 @@ dkg/managers/manager.py,sha256=2fGwzppJR33d3VPRHgZIvlBbcrb5P99_J7BdfaaOSYM,2640
24
24
  dkg/method.py,sha256=HG_mI6CXxKznLAN561G2Gqtijm3eliHV6vPxAvz-dGs,5521
25
25
  dkg/modules/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
26
  dkg/modules/asset/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
- dkg/modules/asset/asset.py,sha256=IplLU6Rz2rJlCYpfQbPPl4JFvlieU7Vx5-TvoFifB_E,27675
28
- dkg/modules/asset/async_asset.py,sha256=92YL0JqQ5vXeJbWd3MBIwwYqEX6Y2ksghnED76hrrzs,28260
27
+ dkg/modules/asset/asset.py,sha256=G9CVvf6_sRvugHS-blteCJruW6t_U6rmOQipeMDKMx0,27300
28
+ dkg/modules/asset/async_asset.py,sha256=3uc78_uA7tPKBsMODBAU-AOk0mZ9WumaIBgcG50Aum8,27841
29
29
  dkg/modules/async_module.py,sha256=iw4DEU8tUvm0CXErQ1LZ8qGcNMQJmvGhu0poHjoKPaI,2629
30
30
  dkg/modules/graph/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
31
  dkg/modules/graph/async_graph.py,sha256=4YNTvnRdeuIV2xjr8-MT8h8zVoW6GfTKVc2AwGvsNuY,4196
@@ -68,15 +68,15 @@ dkg/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
68
  dkg/utils/blockchain_request.py,sha256=CMz3sNRhfmYirm0-VUK2HTpbRfgc1gtG2SoPIuRYKb0,12446
69
69
  dkg/utils/decorators.py,sha256=uUh0xI9wv1gE6JF44eYEfUPGSFEBLR6Ua5D9Dhc3s10,1566
70
70
  dkg/utils/knowledge_asset_tools.py,sha256=uehOshzaYg03hDU8RSIV_k2mNaASVgqyyErzj6GwBxw,81
71
- dkg/utils/knowledge_collection_tools.py,sha256=6U9lLjoXfsayH_AmicNWtmsQ5xdllhTs-L9DsbPYvlU,8994
71
+ dkg/utils/knowledge_collection_tools.py,sha256=qGEZqsAo25J4P0HCwXA6EI37fVsAf7Nne1zEXR0Ot0Y,8776
72
72
  dkg/utils/merkle.py,sha256=924kloBAnCXydteVtWMj_QLP5CRJf2GbHMZ-lbIK0KE,5141
73
73
  dkg/utils/metadata.py,sha256=483OroYwGNfZ_cCXfH3-xUrZgiR4mjjo9iU_Ie5RYRs,1658
74
74
  dkg/utils/node_request.py,sha256=wppF8Xf0RkuAAcURcYgyjGAdMsXm0L5YEem8wFGE2g8,6517
75
75
  dkg/utils/rdf.py,sha256=AvlcxZEeP58UbaGGvPX_ss69O-tgTXOJ9y9COZqVgkw,2973
76
76
  dkg/utils/string_transformations.py,sha256=eR51fVwTF9QKxEqXo9_1Bfw_k8iQajdXD6rKuTvhs70,972
77
77
  dkg/utils/ual.py,sha256=g7PFyS4Sbwjmwkq-eB20uRULEC2wlPGZr31BVQjs5OQ,1569
78
- dkg-8.0.13.dist-info/LICENSE,sha256=Dr70w2zcW8-jrPGlpTTTlJPL8lR4j2zpDD32tdEFgjY,11375
79
- dkg-8.0.13.dist-info/METADATA,sha256=p4WHsfUDVtn17p--zUboDCgjn2iuEoOPwRfSUc-9xEg,10821
80
- dkg-8.0.13.dist-info/NOTICE,sha256=Rk5toFR2ZqPwVZ3P_P4wE6U1xCnWR9KD3rNBqfPY7h8,368
81
- dkg-8.0.13.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
82
- dkg-8.0.13.dist-info/RECORD,,
78
+ dkg-8.1.0.dist-info/LICENSE,sha256=Dr70w2zcW8-jrPGlpTTTlJPL8lR4j2zpDD32tdEFgjY,11375
79
+ dkg-8.1.0.dist-info/METADATA,sha256=FTb-ym6V2Iic2CON7rFUcWFyygR1HdvIlQonuuIAUos,10820
80
+ dkg-8.1.0.dist-info/NOTICE,sha256=Rk5toFR2ZqPwVZ3P_P4wE6U1xCnWR9KD3rNBqfPY7h8,368
81
+ dkg-8.1.0.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
82
+ dkg-8.1.0.dist-info/RECORD,,
File without changes
File without changes
File without changes