maplib 0.18.12__tar.gz → 0.18.14__tar.gz

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.
Files changed (221) hide show
  1. {maplib-0.18.12 → maplib-0.18.14}/Cargo.lock +5 -25
  2. {maplib-0.18.12 → maplib-0.18.14}/Cargo.toml +0 -1
  3. {maplib-0.18.12 → maplib-0.18.14}/PKG-INFO +1 -1
  4. {maplib-0.18.12 → maplib-0.18.14}/lib/maplib/src/mapping/default.rs +2 -4
  5. {maplib-0.18.12 → maplib-0.18.14}/lib/maplib/src/mapping/expansion.rs +12 -13
  6. {maplib-0.18.12 → maplib-0.18.14}/lib/maplib/src/mapping.rs +1 -9
  7. {maplib-0.18.12 → maplib-0.18.14}/lib/templates/Cargo.toml +4 -2
  8. {maplib-0.18.12 → maplib-0.18.14}/lib/templates/src/ast.rs +5 -26
  9. {maplib-0.18.12 → maplib-0.18.14}/lib/templates/src/dataset/errors.rs +2 -6
  10. {maplib-0.18.12 → maplib-0.18.14}/lib/templates/src/dataset.rs +17 -18
  11. {maplib-0.18.12 → maplib-0.18.14}/lib/templates/src/document.rs +3 -4
  12. {maplib-0.18.12 → maplib-0.18.14}/lib/templates/src/lib.rs +0 -4
  13. maplib-0.18.14/lib/templates/src/parsing.rs +478 -0
  14. {maplib-0.18.12 → maplib-0.18.14}/lib/templates/src/python.rs +9 -14
  15. {maplib-0.18.12 → maplib-0.18.14}/maplib/__init__.py +3 -0
  16. {maplib-0.18.12/py_maplib → maplib-0.18.14}/maplib/__init__.pyi +1 -1
  17. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/Cargo.toml +1 -1
  18. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/maplib/__init__.py +3 -0
  19. {maplib-0.18.12 → maplib-0.18.14/py_maplib}/maplib/__init__.pyi +1 -1
  20. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/src/lib.rs +1 -1
  21. maplib-0.18.14/py_maplib/tests/test_stottr.py +945 -0
  22. maplib-0.18.12/lib/templates/src/parsing/errors.rs +0 -31
  23. maplib-0.18.12/lib/templates/src/parsing/nom_parsing.rs +0 -1112
  24. maplib-0.18.12/lib/templates/src/parsing/parser_test.rs +0 -1369
  25. maplib-0.18.12/lib/templates/src/parsing/parsing_ast.rs +0 -114
  26. maplib-0.18.12/lib/templates/src/parsing.rs +0 -27
  27. maplib-0.18.12/lib/templates/src/resolver.rs +0 -365
  28. maplib-0.18.12/py_maplib/tests/test_stottr.py +0 -981
  29. {maplib-0.18.12 → maplib-0.18.14}/LICENSE +0 -0
  30. {maplib-0.18.12 → maplib-0.18.14}/README.md +0 -0
  31. {maplib-0.18.12 → maplib-0.18.14}/lib/cimxml/Cargo.toml +0 -0
  32. {maplib-0.18.12 → maplib-0.18.14}/lib/cimxml/src/export.rs +0 -0
  33. {maplib-0.18.12 → maplib-0.18.14}/lib/cimxml/src/lib.rs +0 -0
  34. {maplib-0.18.12 → maplib-0.18.14}/lib/datalog/Cargo.toml +0 -0
  35. {maplib-0.18.12 → maplib-0.18.14}/lib/datalog/src/ast.rs +0 -0
  36. {maplib-0.18.12 → maplib-0.18.14}/lib/datalog/src/inference.rs +0 -0
  37. {maplib-0.18.12 → maplib-0.18.14}/lib/datalog/src/lib.rs +0 -0
  38. {maplib-0.18.12 → maplib-0.18.14}/lib/datalog/src/parser.rs +0 -0
  39. {maplib-0.18.12 → maplib-0.18.14}/lib/file_io/Cargo.toml +0 -0
  40. {maplib-0.18.12 → maplib-0.18.14}/lib/file_io/src/lib.rs +0 -0
  41. {maplib-0.18.12 → maplib-0.18.14}/lib/fts/Cargo.toml +0 -0
  42. {maplib-0.18.12 → maplib-0.18.14}/lib/fts/src/lib.rs +0 -0
  43. {maplib-0.18.12 → maplib-0.18.14}/lib/maplib/Cargo.toml +0 -0
  44. {maplib-0.18.12 → maplib-0.18.14}/lib/maplib/src/errors.rs +0 -0
  45. {maplib-0.18.12 → maplib-0.18.14}/lib/maplib/src/lib.rs +0 -0
  46. {maplib-0.18.12 → maplib-0.18.14}/lib/maplib/src/mapping/constant_terms.rs +0 -0
  47. {maplib-0.18.12 → maplib-0.18.14}/lib/maplib/src/mapping/errors.rs +0 -0
  48. {maplib-0.18.12 → maplib-0.18.14}/lib/maplib/src/mapping/expansion/validation.rs +0 -0
  49. {maplib-0.18.12 → maplib-0.18.14}/lib/pydf_io/Cargo.toml +0 -0
  50. {maplib-0.18.12 → maplib-0.18.14}/lib/pydf_io/LICENSE +0 -0
  51. {maplib-0.18.12 → maplib-0.18.14}/lib/pydf_io/README.md +0 -0
  52. {maplib-0.18.12 → maplib-0.18.14}/lib/pydf_io/licensing/POLARS_LICENSE +0 -0
  53. {maplib-0.18.12 → maplib-0.18.14}/lib/pydf_io/src/lib.rs +0 -0
  54. {maplib-0.18.12 → maplib-0.18.14}/lib/pydf_io/src/to_python.rs +0 -0
  55. {maplib-0.18.12 → maplib-0.18.14}/lib/pydf_io/src/to_rust.rs +0 -0
  56. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/Cargo.toml +0 -0
  57. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/LICENSE +0 -0
  58. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/README.md +0 -0
  59. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/aggregates.rs +0 -0
  60. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/cats.rs +0 -0
  61. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/constants.rs +0 -0
  62. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/errors.rs +0 -0
  63. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/exists_helper.rs +0 -0
  64. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/expressions/comparisons.rs +0 -0
  65. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/expressions/functions.rs +0 -0
  66. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/expressions/operations.rs +0 -0
  67. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/expressions.rs +0 -0
  68. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/find_query_variables.rs +0 -0
  69. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/graph_patterns/cats.rs +0 -0
  70. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/graph_patterns/group.rs +0 -0
  71. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/graph_patterns/join.rs +0 -0
  72. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/graph_patterns/order.rs +0 -0
  73. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/graph_patterns/union.rs +0 -0
  74. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/graph_patterns/values.rs +0 -0
  75. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/graph_patterns.rs +0 -0
  76. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/lib.rs +0 -0
  77. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/pushdowns.rs +0 -0
  78. {maplib-0.18.12 → maplib-0.18.14}/lib/query_processing/src/type_constraints.rs +0 -0
  79. {maplib-0.18.12 → maplib-0.18.14}/lib/report_mapping/Cargo.toml +0 -0
  80. {maplib-0.18.12 → maplib-0.18.14}/lib/report_mapping/src/lib.rs +0 -0
  81. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/Cargo.toml +0 -0
  82. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/LICENSE +0 -0
  83. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/README.md +0 -0
  84. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/base_rdf_type.rs +0 -0
  85. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/cats/decode.rs +0 -0
  86. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/cats/encode.rs +0 -0
  87. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/cats/globalize.rs +0 -0
  88. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/cats/image.rs +0 -0
  89. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/cats/re_encode.rs +0 -0
  90. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/cats.rs +0 -0
  91. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/dataset.rs +0 -0
  92. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/errors.rs +0 -0
  93. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/formatting.rs +0 -0
  94. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/lib.rs +0 -0
  95. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/literals.rs +0 -0
  96. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/multitype.rs +0 -0
  97. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/polars_to_rdf.rs +0 -0
  98. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/python.rs +0 -0
  99. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/query_context.rs +0 -0
  100. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/rdf_state.rs +0 -0
  101. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/rdf_to_polars.rs +0 -0
  102. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/rdf_type.rs +0 -0
  103. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/solution_mapping.rs +0 -0
  104. {maplib-0.18.12 → maplib-0.18.14}/lib/representation/src/subtypes.rs +0 -0
  105. {maplib-0.18.12 → maplib-0.18.14}/lib/shacl/Cargo.toml +0 -0
  106. {maplib-0.18.12 → maplib-0.18.14}/lib/shacl/src/errors.rs +0 -0
  107. {maplib-0.18.12 → maplib-0.18.14}/lib/shacl/src/lib.rs +0 -0
  108. {maplib-0.18.12 → maplib-0.18.14}/lib/shacl/src/storage.rs +0 -0
  109. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/Cargo.toml +0 -0
  110. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/LICENSE +0 -0
  111. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/README.md +0 -0
  112. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/src/algebra.rs +0 -0
  113. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/src/lib.rs +0 -0
  114. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/src/parser.rs +0 -0
  115. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/src/query.rs +0 -0
  116. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/src/query_context.rs +0 -0
  117. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/src/remove_sugar.rs +0 -0
  118. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/src/term.rs +0 -0
  119. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/src/treehouse.rs +0 -0
  120. {maplib-0.18.12 → maplib-0.18.14}/lib/spargebra/src/update.rs +0 -0
  121. {maplib-0.18.12 → maplib-0.18.14}/lib/templates/src/compatible.rs +0 -0
  122. {maplib-0.18.12 → maplib-0.18.14}/lib/templates/src/constants.rs +0 -0
  123. {maplib-0.18.12 → maplib-0.18.14}/lib/templates/src/subtypes_ext.rs +0 -0
  124. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/Cargo.toml +0 -0
  125. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/cats.rs +0 -0
  126. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/dblf.rs +0 -0
  127. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/errors.rs +0 -0
  128. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/io_funcs.rs +0 -0
  129. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/lib.rs +0 -0
  130. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/native_parquet_write.rs +0 -0
  131. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/query_solutions.rs +0 -0
  132. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/rdfs_inferencing.rs +0 -0
  133. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/delete.rs +0 -0
  134. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/errors.rs +0 -0
  135. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/insert.rs +0 -0
  136. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_aggregate.rs +0 -0
  137. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_expressions.rs +0 -0
  138. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/distinct.rs +0 -0
  139. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/extend.rs +0 -0
  140. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/filter.rs +0 -0
  141. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/group.rs +0 -0
  142. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/join.rs +0 -0
  143. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/left_join.rs +0 -0
  144. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/minus.rs +0 -0
  145. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/order_by.rs +0 -0
  146. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/path.rs +0 -0
  147. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/project.rs +0 -0
  148. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/pvalues.rs +0 -0
  149. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/triple.rs +0 -0
  150. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/triples_ordering.rs +0 -0
  151. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/union.rs +0 -0
  152. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns/values.rs +0 -0
  153. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_graph_patterns.rs +0 -0
  154. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/lazy_order.rs +0 -0
  155. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/rewrite/rewrite_cse.rs +0 -0
  156. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/rewrite/rewrite_pushdown.rs +0 -0
  157. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql/rewrite.rs +0 -0
  158. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/sparql.rs +0 -0
  159. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/storage.rs +0 -0
  160. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/triples_read.rs +0 -0
  161. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/triples_write/fast_ntriples.rs +0 -0
  162. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/triples_write/serializers.rs +0 -0
  163. {maplib-0.18.12 → maplib-0.18.14}/lib/triplestore/src/triples_write.rs +0 -0
  164. {maplib-0.18.12 → maplib-0.18.14}/lib/utils/Cargo.toml +0 -0
  165. {maplib-0.18.12 → maplib-0.18.14}/lib/utils/src/lib.rs +0 -0
  166. {maplib-0.18.12 → maplib-0.18.14}/lib/utils/src/polars.rs +0 -0
  167. {maplib-0.18.12 → maplib-0.18.14}/maplib/adding_triples.py +0 -0
  168. {maplib-0.18.12 → maplib-0.18.14}/maplib/py.typed +0 -0
  169. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/LICENSE +0 -0
  170. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/README.md +0 -0
  171. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/maplib/.gitignore +0 -0
  172. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/maplib/adding_triples.py +0 -0
  173. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/maplib/py.typed +0 -0
  174. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/src/error.rs +0 -0
  175. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/src/shacl.rs +0 -0
  176. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/.gitignore +0 -0
  177. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/__init__.py +0 -0
  178. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/out.ttl +0 -0
  179. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/requirements.txt +0 -0
  180. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/test_basics.py +0 -0
  181. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/test_blank_nodes_multi.py +0 -0
  182. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/test_data_validation.py +0 -0
  183. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/test_exceptions.py +0 -0
  184. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/test_integration.py +0 -0
  185. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/test_multi_expressions.py +0 -0
  186. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/test_pizza_example.py +0 -0
  187. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/test_programmatic_pizza_example.py +0 -0
  188. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/test_rdf_parser.py +0 -0
  189. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/test_read_write.py +0 -0
  190. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/test_validate_iris.py +0 -0
  191. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/expected_easy_case.ttl +0 -0
  192. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/iterated_property_path_constant_object_query.csv +0 -0
  193. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/iterated_property_path_constant_subject_query.csv +0 -0
  194. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/iterated_property_path_query.csv +0 -0
  195. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/iterated_property_path_query_with_bug.csv +0 -0
  196. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/larger_ordered_query.csv +0 -0
  197. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/larger_query.csv +0 -0
  198. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/multi_concat.csv +0 -0
  199. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/multi_datatype_join_query.csv +0 -0
  200. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/multi_datatype_join_query_two_vars.csv +0 -0
  201. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/multi_datatype_leftjoin_query.csv +0 -0
  202. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/multi_datatype_query.csv +0 -0
  203. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/multi_datatype_query_sorting.csv +0 -0
  204. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/multi_datatype_union_query.csv +0 -0
  205. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/multi_datatype_union_query_native_df.parquet +0 -0
  206. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/multi_datatype_union_sort_desc1_query.csv +0 -0
  207. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/multi_datatype_union_sort_query.csv +0 -0
  208. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/multi_many_comp.csv +0 -0
  209. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/property_path_query.csv +0 -0
  210. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/rdf_parser/date_panic.nt +0 -0
  211. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/read_ntriples.csv +0 -0
  212. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/read_ntriples.nt +0 -0
  213. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/read_ntriples2.csv +0 -0
  214. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/simple_construct_query_nothing.csv +0 -0
  215. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/simple_construct_query_something.csv +0 -0
  216. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/simple_insert_query_nothing.csv +0 -0
  217. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/simple_insert_query_something.csv +0 -0
  218. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/simple_property_path_query.csv +0 -0
  219. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/simple_query.csv +0 -0
  220. {maplib-0.18.12 → maplib-0.18.14}/py_maplib/tests/testdata/stringfuncs.csv +0 -0
  221. {maplib-0.18.12 → maplib-0.18.14}/pyproject.toml +0 -0
@@ -1478,12 +1478,6 @@ dependencies = [
1478
1478
  "libmimalloc-sys",
1479
1479
  ]
1480
1480
 
1481
- [[package]]
1482
- name = "minimal-lexical"
1483
- version = "0.2.1"
1484
- source = "registry+https://github.com/rust-lang/crates.io-index"
1485
- checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
1486
-
1487
1481
  [[package]]
1488
1482
  name = "miniz_oxide"
1489
1483
  version = "0.8.9"
@@ -1526,16 +1520,6 @@ version = "0.2.0"
1526
1520
  source = "registry+https://github.com/rust-lang/crates.io-index"
1527
1521
  checksum = "2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451"
1528
1522
 
1529
- [[package]]
1530
- name = "nom"
1531
- version = "7.1.3"
1532
- source = "registry+https://github.com/rust-lang/crates.io-index"
1533
- checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
1534
- dependencies = [
1535
- "memchr",
1536
- "minimal-lexical",
1537
- ]
1538
-
1539
1523
  [[package]]
1540
1524
  name = "now"
1541
1525
  version = "0.1.3"
@@ -2467,7 +2451,7 @@ dependencies = [
2467
2451
 
2468
2452
  [[package]]
2469
2453
  name = "py_maplib"
2470
- version = "0.18.12"
2454
+ version = "0.18.14"
2471
2455
  dependencies = [
2472
2456
  "chrono",
2473
2457
  "cimxml",
@@ -3529,13 +3513,15 @@ checksum = "df7f62577c25e07834649fc3b39fafdc597c0a3527dc1c60129201ccfcbaa50c"
3529
3513
  name = "templates"
3530
3514
  version = "0.1.0"
3531
3515
  dependencies = [
3532
- "nom",
3516
+ "oxilangtag",
3517
+ "oxiri",
3533
3518
  "oxrdf",
3519
+ "peg",
3534
3520
  "pyo3",
3535
3521
  "representation",
3522
+ "spargebra",
3536
3523
  "thiserror",
3537
3524
  "tracing",
3538
- "unic-char-range",
3539
3525
  "walkdir",
3540
3526
  ]
3541
3527
 
@@ -3842,12 +3828,6 @@ version = "1.19.0"
3842
3828
  source = "registry+https://github.com/rust-lang/crates.io-index"
3843
3829
  checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb"
3844
3830
 
3845
- [[package]]
3846
- name = "unic-char-range"
3847
- version = "0.9.0"
3848
- source = "registry+https://github.com/rust-lang/crates.io-index"
3849
- checksum = "0398022d5f700414f6b899e10b8348231abf9173fa93144cbc1a43b9793c1fbc"
3850
-
3851
3831
  [[package]]
3852
3832
  name = "unicode-ident"
3853
3833
  version = "1.0.19"
@@ -25,7 +25,6 @@ uuid = { version = "1.16.0", features = [
25
25
  "fast-rng", # Use a faster (but still sufficiently random) RNG
26
26
  ] }
27
27
  thiserror = "2.0.12"
28
- nom = { version = "7.1.3" }
29
28
  peg = "0.8"
30
29
  rand = "0.9.1"
31
30
  oxilangtag = "0.1.5"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: maplib
3
- Version: 0.18.12
3
+ Version: 0.18.14
4
4
  Classifier: Development Status :: 4 - Beta
5
5
  Classifier: License :: OSI Approved :: Apache Software License
6
6
  Classifier: Programming Language :: Python :: 3 :: Only
@@ -111,8 +111,7 @@ impl Model {
111
111
 
112
112
  patterns.push(Instance {
113
113
  list_expander: list_expander.clone(),
114
- template_name: NamedNode::new_unchecked(OTTR_TRIPLE),
115
- prefixed_template_name: Some("ottr:Triple".to_string()),
114
+ template_iri: NamedNode::new_unchecked(OTTR_TRIPLE),
116
115
  argument_list: vec![
117
116
  Argument {
118
117
  list_expand: false,
@@ -143,8 +142,7 @@ impl Model {
143
142
  self.default_template_counter += 1;
144
143
  let template = Template {
145
144
  signature: Signature {
146
- template_name: NamedNode::new(template_name.clone()).unwrap(),
147
- template_prefixed_name: None,
145
+ iri: NamedNode::new(template_name.clone()).unwrap(),
148
146
  parameter_list: params,
149
147
  annotation_list: None,
150
148
  },
@@ -22,8 +22,7 @@ use std::collections::{HashMap, HashSet};
22
22
  use std::ops::Sub;
23
23
  use std::time::Instant;
24
24
  use templates::ast::{
25
- ConstantTerm, ConstantTermOrList, DefaultValue, Instance, ListExpanderType, PType, Signature,
26
- StottrTerm,
25
+ ConstantTerm, ConstantTermOrList, Instance, ListExpanderType, PType, Signature, StottrTerm,
27
26
  };
28
27
  use templates::constants::OTTR_TRIPLE;
29
28
  use templates::MappingColumnType;
@@ -69,7 +68,7 @@ impl Model {
69
68
  let now = Instant::now();
70
69
 
71
70
  let target_template = self.resolve_template(template)?.clone();
72
- let target_template_name = target_template.signature.template_name.as_str().to_string();
71
+ let target_template_name = target_template.signature.iri.as_str().to_string();
73
72
  let MapOptions {
74
73
  graph,
75
74
  validate_iris,
@@ -130,7 +129,7 @@ impl Model {
130
129
  ));
131
130
  }
132
131
  if let Some(template) = self.template_dataset.get(name) {
133
- if template.signature.template_name.as_str() == OTTR_TRIPLE {
132
+ if template.signature.iri.as_str() == OTTR_TRIPLE {
134
133
  if let Some(df) = df {
135
134
  Ok((
136
135
  vec![OTTRTripleInstance {
@@ -173,12 +172,12 @@ impl Model {
173
172
  .enumerate()
174
173
  .map(|(i, (instance, series_vec))| {
175
174
  let target_template = if let Some(target_template) =
176
- self.template_dataset.get(instance.template_name.as_str())
175
+ self.template_dataset.get(instance.template_iri.as_str())
177
176
  {
178
177
  target_template
179
178
  } else {
180
179
  return Err(MappingError::TemplateNotFound(
181
- instance.template_name.to_string(),
180
+ instance.template_iri.to_string(),
182
181
  ));
183
182
  };
184
183
  if let Some(RemapResult {
@@ -202,7 +201,7 @@ impl Model {
202
201
  layer + 1,
203
202
  i,
204
203
  blank_node_counter,
205
- instance.template_name.as_str(),
204
+ instance.template_iri.as_str(),
206
205
  Some(instance_df),
207
206
  &target_template.signature,
208
207
  instance_dynamic_columns,
@@ -327,9 +326,9 @@ fn fill_nulls_with_defaults(
327
326
  mut lf: LazyFrame,
328
327
  current_types: &mut HashMap<String, MappingColumnType>,
329
328
  c: &str,
330
- default: &DefaultValue,
329
+ default: &ConstantTermOrList,
331
330
  ) -> Result<LazyFrame, MappingError> {
332
- if default.constant_term.has_blank_node() {
331
+ if default.has_blank_node() {
333
332
  let df = lf.collect().unwrap();
334
333
  if df.column(c).unwrap().is_null().any() {
335
334
  todo!();
@@ -337,7 +336,7 @@ fn fill_nulls_with_defaults(
337
336
  return Ok(df.lazy());
338
337
  }
339
338
  }
340
- let (expr, _, mct) = constant_to_expr(&default.constant_term, &None)?;
339
+ let (expr, _, mct) = constant_to_expr(&default, &None)?;
341
340
  let is_none = if let MappingColumnType::Flat(inner) = current_types.get(c).unwrap() {
342
341
  inner.is_none()
343
342
  } else {
@@ -835,13 +834,13 @@ fn create_remapped(
835
834
  fn add_default_value(
836
835
  static_columns: &mut HashMap<String, StaticColumn>,
837
836
  name: &str,
838
- default: &DefaultValue,
837
+ default: &ConstantTermOrList,
839
838
  ) {
840
839
  static_columns.insert(
841
840
  name.to_string(),
842
841
  StaticColumn {
843
- constant_term: default.constant_term.clone(),
844
- ptype: Some(default.constant_term.ptype()),
842
+ constant_term: default.clone(),
843
+ ptype: Some(default.ptype()),
845
844
  },
846
845
  );
847
846
  }
@@ -144,15 +144,7 @@ impl Model {
144
144
  let mut dataset =
145
145
  TemplateDataset::from_documents(vec![doc]).map_err(MaplibError::TemplateError)?;
146
146
  let return_template_iri = if !dataset.templates.is_empty() {
147
- Some(
148
- dataset
149
- .templates
150
- .first()
151
- .unwrap()
152
- .signature
153
- .template_name
154
- .clone(),
155
- )
147
+ Some(dataset.templates.first().unwrap().signature.iri.clone())
156
148
  } else {
157
149
  None
158
150
  };
@@ -6,11 +6,13 @@ rust-version.workspace = true
6
6
 
7
7
  [dependencies]
8
8
  representation = { path = "../representation" }
9
+ spargebra = {path = "../spargebra"}
9
10
 
10
11
  oxrdf = { workspace = true }
11
- unic-char-range = "0.9.0"
12
12
  tracing = { workspace = true }
13
13
  thiserror = { workspace = true }
14
- nom = { workspace = true, features = ["alloc"] }
15
14
  pyo3.workspace = true
16
15
  walkdir.workspace = true
16
+ oxiri.workspace = true
17
+ oxilangtag.workspace = true
18
+ peg = {workspace = true }
@@ -52,19 +52,14 @@ impl Display for Template {
52
52
 
53
53
  #[derive(PartialEq, Debug, Clone)]
54
54
  pub struct Signature {
55
- pub template_name: NamedNode,
56
- pub template_prefixed_name: Option<String>,
55
+ pub iri: NamedNode,
57
56
  pub parameter_list: Vec<Parameter>,
58
57
  pub annotation_list: Option<Vec<Annotation>>,
59
58
  }
60
59
 
61
60
  impl Display for Signature {
62
61
  fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
63
- if let Some(template_prefixed_name) = &self.template_prefixed_name {
64
- write!(f, "{template_prefixed_name}")?;
65
- } else {
66
- write!(f, "{}", &self.template_name)?;
67
- }
62
+ write!(f, "{}", &self.iri)?;
68
63
  write!(f, " [")?;
69
64
  for (idx, p) in self.parameter_list.iter().enumerate() {
70
65
  write!(f, "\n ")?;
@@ -86,7 +81,7 @@ pub struct Parameter {
86
81
  pub non_blank: bool,
87
82
  pub ptype: Option<PType>,
88
83
  pub variable: Variable,
89
- pub default_value: Option<DefaultValue>,
84
+ pub default_value: Option<ConstantTermOrList>,
90
85
  }
91
86
 
92
87
  impl Display for Parameter {
@@ -217,17 +212,6 @@ impl Display for PType {
217
212
  }
218
213
  }
219
214
 
220
- #[derive(PartialEq, Debug, Clone)]
221
- pub struct DefaultValue {
222
- pub constant_term: ConstantTermOrList,
223
- }
224
-
225
- impl Display for DefaultValue {
226
- fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
227
- std::fmt::Display::fmt(&self.constant_term, f)
228
- }
229
- }
230
-
231
215
  #[derive(PartialEq, Debug, Clone)]
232
216
  pub enum ConstantTermOrList {
233
217
  ConstantTerm(ConstantTerm),
@@ -324,8 +308,7 @@ impl Display for ConstantTerm {
324
308
  #[derive(PartialEq, Debug, Clone)]
325
309
  pub struct Instance {
326
310
  pub list_expander: Option<ListExpanderType>,
327
- pub template_name: NamedNode,
328
- pub prefixed_template_name: Option<String>,
311
+ pub template_iri: NamedNode,
329
312
  pub argument_list: Vec<Argument>,
330
313
  }
331
314
 
@@ -335,11 +318,7 @@ impl Display for Instance {
335
318
  std::fmt::Display::fmt(le, f)?;
336
319
  write!(f, " | ")?;
337
320
  }
338
- if let Some(prefixed_template_name) = &self.prefixed_template_name {
339
- write!(f, "{prefixed_template_name}")?;
340
- } else {
341
- write!(f, "{}", &self.template_name)?;
342
- }
321
+ write!(f, "{}", &self.template_iri)?;
343
322
  write!(f, "(")?;
344
323
  for (idx, a) in self.argument_list.iter().enumerate() {
345
324
  std::fmt::Display::fmt(a, f)?;
@@ -1,4 +1,4 @@
1
- use crate::resolver::ResolutionError;
1
+ use crate::parsing::ParseErrorKind;
2
2
  use oxrdf::Variable;
3
3
  use std::fmt::{Display, Formatter};
4
4
  use std::io;
@@ -10,8 +10,7 @@ pub enum TemplateError {
10
10
  IncompatibleTypes(String, Variable, String, String),
11
11
  ReadTemplateFileError(io::Error),
12
12
  ResolveDirectoryEntryError(walkdir::Error),
13
- ParsingError(crate::parsing::errors::ParsingError),
14
- ResolutionError(ResolutionError),
13
+ ParsingError(ParseErrorKind),
15
14
  TemplateNotFound(String, String),
16
15
  }
17
16
 
@@ -39,9 +38,6 @@ impl Display for TemplateError {
39
38
  TemplateError::ParsingError(p) => {
40
39
  write!(f, "Template parsing error: {p}")
41
40
  }
42
- TemplateError::ResolutionError(r) => {
43
- write!(f, "Template resolution error {r}")
44
- }
45
41
  TemplateError::TemplateNotFound(container, inner) => {
46
42
  write!(
47
43
  f,
@@ -97,8 +97,7 @@ impl TemplateDataset {
97
97
 
98
98
  let ottr_template = Template {
99
99
  signature: Signature {
100
- template_name: NamedNode::new_unchecked(OTTR_TRIPLE),
101
- template_prefixed_name: Some("ottr:Triple".to_string()),
100
+ iri: NamedNode::new_unchecked(OTTR_TRIPLE),
102
101
  parameter_list: vec![
103
102
  ottr_triple_subject,
104
103
  ottr_triple_predicate,
@@ -145,29 +144,29 @@ impl TemplateDataset {
145
144
  pub fn get(&self, template: &str) -> Option<&Template> {
146
145
  self.templates
147
146
  .iter()
148
- .find(|&t| t.signature.template_name.as_str() == template)
147
+ .find(|&t| t.signature.iri.as_str() == template)
149
148
  }
150
149
 
151
150
  pub fn infer_types(&mut self) -> Result<(), TemplateError> {
152
151
  let template_names: Vec<_> = self
153
152
  .templates
154
153
  .iter()
155
- .map(|x| x.signature.template_name.as_str().to_string())
154
+ .map(|x| x.signature.iri.as_str().to_string())
156
155
  .collect();
157
156
  let mut template_map: HashMap<String, Template> = self
158
157
  .templates
159
158
  .drain(..)
160
- .map(|x| (x.signature.template_name.as_str().to_string(), x))
159
+ .map(|x| (x.signature.iri.as_str().to_string(), x))
161
160
  .collect();
162
161
  let mut affects_map: HashMap<String, Vec<String>> = HashMap::new();
163
162
  for t in template_map.values() {
164
163
  for i in &t.pattern_list {
165
- if let Some(v) = affects_map.get_mut(i.template_name.as_str()) {
166
- v.push(t.signature.template_name.as_str().to_string());
164
+ if let Some(v) = affects_map.get_mut(i.template_iri.as_str()) {
165
+ v.push(t.signature.iri.as_str().to_string());
167
166
  } else {
168
167
  affects_map.insert(
169
- i.template_name.as_str().to_string(),
170
- vec![t.signature.template_name.as_str().to_string()],
168
+ i.template_iri.as_str().to_string(),
169
+ vec![t.signature.iri.as_str().to_string()],
171
170
  );
172
171
  }
173
172
  }
@@ -218,7 +217,7 @@ impl TemplateDataset {
218
217
  if let Some(pos) = self
219
218
  .templates
220
219
  .iter()
221
- .position(|x| x.signature.template_name == template.signature.template_name)
220
+ .position(|x| x.signature.iri == template.signature.iri)
222
221
  {
223
222
  self.templates.remove(pos);
224
223
  }
@@ -234,18 +233,18 @@ fn infer_template_types(
234
233
  ) -> Result<bool, TemplateError> {
235
234
  let mut changed = false;
236
235
  for i in &mut template.pattern_list {
237
- let other = if let Some(t) = templates.get(i.template_name.as_str()) {
236
+ let other = if let Some(t) = templates.get(i.template_iri.as_str()) {
238
237
  t
239
238
  } else {
240
239
  return Err(TemplateError::TemplateNotFound(
241
- template.signature.template_name.to_string().clone(),
242
- i.template_name.to_string().clone(),
240
+ template.signature.iri.to_string().clone(),
241
+ i.template_iri.to_string().clone(),
243
242
  ));
244
243
  };
245
244
  if i.argument_list.len() != other.signature.parameter_list.len() {
246
245
  return Err(TemplateError::InconsistentNumberOfArguments(
247
- template.signature.template_name.as_str().to_string(),
248
- other.signature.template_name.as_str().to_string(),
246
+ template.signature.iri.as_str().to_string(),
247
+ other.signature.iri.as_str().to_string(),
249
248
  i.argument_list.len(),
250
249
  other.signature.parameter_list.len(),
251
250
  ));
@@ -264,7 +263,7 @@ fn infer_template_types(
264
263
  if !other_parameter.optional {
265
264
  changed = changed
266
265
  || lub_update(
267
- &template.signature.template_name,
266
+ &template.signature.iri,
268
267
  v,
269
268
  my_parameter,
270
269
  &PType::NEList(Box::new(other_ptype.clone())),
@@ -272,7 +271,7 @@ fn infer_template_types(
272
271
  } else {
273
272
  changed = changed
274
273
  || lub_update(
275
- &template.signature.template_name,
274
+ &template.signature.iri,
276
275
  v,
277
276
  my_parameter,
278
277
  &PType::List(Box::new(other_ptype.clone())),
@@ -281,7 +280,7 @@ fn infer_template_types(
281
280
  } else {
282
281
  changed = changed
283
282
  || lub_update(
284
- &template.signature.template_name,
283
+ &template.signature.iri,
285
284
  v,
286
285
  my_parameter,
287
286
  other_ptype,
@@ -1,13 +1,12 @@
1
1
  use crate::ast::StottrDocument;
2
2
  use crate::dataset::errors::TemplateError;
3
- use crate::parsing::whole_stottr_doc;
4
- use crate::resolver::resolve_document;
3
+ use crate::parsing::parse_stottr;
5
4
  use std::fs::read_to_string;
6
5
  use std::path::Path;
7
6
 
8
7
  pub fn document_from_str(s: &str) -> Result<StottrDocument, TemplateError> {
9
- let unresolved = whole_stottr_doc(s).map_err(TemplateError::ParsingError)?;
10
- resolve_document(unresolved).map_err(TemplateError::ResolutionError)
8
+ let doc = parse_stottr(s)?;
9
+ Ok(doc)
11
10
  }
12
11
 
13
12
  pub fn document_from_file<P: AsRef<Path>>(p: P) -> Result<StottrDocument, TemplateError> {
@@ -1,6 +1,3 @@
1
- #[cfg(test)]
2
- #[macro_use]
3
- extern crate unic_char_range;
4
1
  use crate::ast::PType;
5
2
  use representation::RDFNodeState;
6
3
 
@@ -11,7 +8,6 @@ pub mod dataset;
11
8
  pub mod document;
12
9
  mod parsing;
13
10
  pub mod python;
14
- mod resolver;
15
11
  pub mod subtypes_ext;
16
12
 
17
13
  #[derive(Clone, Debug)]