hdx-python-api 6.2.0__tar.gz → 6.2.1__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 (126) hide show
  1. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/PKG-INFO +4 -4
  2. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/documentation/main.md +6 -0
  3. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/pyproject.toml +3 -3
  4. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/requirements.txt +10 -10
  5. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/api/_version.py +2 -2
  6. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/dataset.py +7 -7
  7. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/.config/black.toml +0 -0
  8. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/.config/coveragerc +0 -0
  9. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/.config/pre-commit-config.yaml +0 -0
  10. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/.config/pytest.ini +0 -0
  11. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/.config/ruff.toml +0 -0
  12. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/.github/workflows/publish.yaml +0 -0
  13. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/.github/workflows/run-python-tests.yaml +0 -0
  14. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/.gitignore +0 -0
  15. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/CONTRIBUTING.md +0 -0
  16. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/LICENSE +0 -0
  17. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/README.md +0 -0
  18. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/documentation/.readthedocs.yaml +0 -0
  19. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/documentation/pydoc-markdown.yaml +0 -0
  20. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/api/__init__.py +0 -0
  21. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/api/configuration.py +0 -0
  22. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/api/hdx_base_configuration.yaml +0 -0
  23. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/api/locations.py +0 -0
  24. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/api/remotehdx.py +0 -0
  25. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/__init__.py +0 -0
  26. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/dataset_title_helper.py +0 -0
  27. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/date_helper.py +0 -0
  28. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/filestore_helper.py +0 -0
  29. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/hdx_datasource_topline.yaml +0 -0
  30. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/hdxobject.py +0 -0
  31. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/indicator_resource_view_template.yaml +0 -0
  32. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/organization.py +0 -0
  33. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/resource.py +0 -0
  34. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/resource_matcher.py +0 -0
  35. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/resource_view.py +0 -0
  36. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/showcase.py +0 -0
  37. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/user.py +0 -0
  38. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/data/vocabulary.py +0 -0
  39. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/facades/__init__.py +0 -0
  40. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/facades/infer_arguments.py +0 -0
  41. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/facades/keyword_arguments.py +0 -0
  42. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/src/hdx/facades/simple.py +0 -0
  43. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/Accepted_Tags.csv +0 -0
  44. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/Tag_Mapping.csv +0 -0
  45. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/Tag_Mapping_ChainRuleError.csv +0 -0
  46. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/empty.yaml +0 -0
  47. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_base_config.json +0 -0
  48. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_base_config.yaml +0 -0
  49. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_config.json +0 -0
  50. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_config.yaml +0 -0
  51. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_dataset_static.json +0 -0
  52. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_dataset_static.yaml +0 -0
  53. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_datasource_topline.json +0 -0
  54. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_datasource_topline.yaml +0 -0
  55. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_email_configuration.json +0 -0
  56. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_email_configuration.yaml +0 -0
  57. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_missing_site_config.json +0 -0
  58. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_organization_static.json +0 -0
  59. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_organization_static.yaml +0 -0
  60. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_resource_static.json +0 -0
  61. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_resource_static.yaml +0 -0
  62. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_resource_view_static.json +0 -0
  63. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_resource_view_static.yaml +0 -0
  64. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_showcase_static.json +0 -0
  65. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_showcase_static.yaml +0 -0
  66. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_user_static.json +0 -0
  67. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_user_static.yaml +0 -0
  68. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_vocabulary_static.json +0 -0
  69. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/hdx_vocabulary_static.yaml +0 -0
  70. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/project_configuration.json +0 -0
  71. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/project_configuration.yaml +0 -0
  72. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/user_agent_config.yaml +0 -0
  73. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/user_agent_config2.yaml +0 -0
  74. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/user_agent_config3.yaml +0 -0
  75. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/config/user_agent_config_wrong.yaml +0 -0
  76. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/dataset_search_results.yaml +0 -0
  77. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/datastore/ACLED-All-Africa-File_20170101-to-20170708.xlsx +0 -0
  78. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/empty.csv +0 -0
  79. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/gen_resource/conflict_data_alg.csv +0 -0
  80. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/gen_resource/min_qc_conflict_data_alg.csv +0 -0
  81. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/gen_resource/qc_conflict_data_alg.csv +0 -0
  82. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/gen_resource/test_data_no_data.csv +0 -0
  83. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/gen_resource/test_data_no_years.csv +0 -0
  84. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/organization_show_results.yaml +0 -0
  85. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/qc_from_rows/qc_conflict_data_alg.csv +0 -0
  86. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/qc_from_rows/qc_conflict_data_alg_one_col.csv +0 -0
  87. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/resource_formats.json +0 -0
  88. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/showcase_all_search_results.yaml +0 -0
  89. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/test_data.csv +0 -0
  90. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/test_data.zip +0 -0
  91. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_dataset_resources/dem_data_zwe.csv +0 -0
  92. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_dataset_resources/dem_indicatorlist_zwe.csv +0 -0
  93. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_dataset_resources/opri_data_zwe.csv +0 -0
  94. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_dataset_resources/opri_indicatorlist_zwe.csv +0 -0
  95. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_dataset_resources/opri_metadata_zwe.csv +0 -0
  96. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_dataset_resources/qc_sdg_data_zwe.csv +0 -0
  97. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_dataset_resources/sdg_data_zwe.csv +0 -0
  98. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_dataset_resources/sdg_indicatorlist_zwe.csv +0 -0
  99. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_dataset_resources/sdg_metadata_zwe.csv +0 -0
  100. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_dataset_resources/unesco_dataset.json +0 -0
  101. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_dataset_resources/unesco_update_dataset.json +0 -0
  102. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_logic/update_logic_resources.yaml +0 -0
  103. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/fixtures/update_logic/update_logic_resources_new.yaml +0 -0
  104. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/api/test_configuration.py +0 -0
  105. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/api/test_locations.py +0 -0
  106. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/conftest.py +0 -0
  107. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/__init__.py +0 -0
  108. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/test_dataset_core.py +0 -0
  109. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/test_dataset_noncore.py +0 -0
  110. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/test_dataset_title_helper.py +0 -0
  111. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/test_organization.py +0 -0
  112. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/test_resource.py +0 -0
  113. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/test_resource_view.py +0 -0
  114. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/test_showcase.py +0 -0
  115. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/test_update_dataset_resources.py +0 -0
  116. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/test_update_logic.py +0 -0
  117. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/test_user.py +0 -0
  118. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/data/test_vocabulary.py +0 -0
  119. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/facades/__init__.py +0 -0
  120. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/facades/test_infer_arguments.py +0 -0
  121. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/facades/test_keyword_arguments.py +0 -0
  122. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/tests/hdx/facades/test_simple.py +0 -0
  123. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/workingexample/my_code.py +0 -0
  124. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/workingexample/my_resource.csv +0 -0
  125. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/workingexample/my_resource.xlsx +0 -0
  126. {hdx_python_api-6.2.0 → hdx_python_api-6.2.1}/workingexample/run.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hdx-python-api
3
- Version: 6.2.0
3
+ Version: 6.2.1
4
4
  Summary: HDX Python API for interacting with the Humanitarian Data Exchange
5
5
  Project-URL: Homepage, https://github.com/OCHA-DAP/hdx-python-api
6
6
  Author-email: Michael Rans <rans@email.com>
@@ -28,9 +28,9 @@ Requires-Python: >=3.8
28
28
  Requires-Dist: ckanapi>=4.7
29
29
  Requires-Dist: defopt>=6.4.0
30
30
  Requires-Dist: email-validator
31
- Requires-Dist: hdx-python-country>=3.6.3
32
- Requires-Dist: hdx-python-utilities>=3.6.3
33
- Requires-Dist: libhxl>=5.1
31
+ Requires-Dist: hdx-python-country>=3.6.4
32
+ Requires-Dist: hdx-python-utilities>=3.6.4
33
+ Requires-Dist: libhxl>=5.2
34
34
  Requires-Dist: makefun
35
35
  Requires-Dist: ndg-httpsclient
36
36
  Requires-Dist: pyasn1
@@ -934,6 +934,12 @@ resource, it is possible to supply the parameter `data_updated` eg.
934
934
 
935
935
  resource.update_in_hdx(data_updated=True)
936
936
 
937
+ Using **mark_data_updated** on multiple resources in a dataset has the
938
+ advantage of only requiring a single call to HDX (by way of the dataset's
939
+ **create_in_hdx** or **update_in_hdx** method). Setting `data_updated` to
940
+ `True` when using each resource's **create_in_hdx** or **update_in_hdx** method
941
+ requires a call to HDX per resource.
942
+
937
943
  If you need to set a specific date for date of update (`last_modified`), you
938
944
  can call the following:
939
945
 
@@ -37,9 +37,9 @@ dependencies = [
37
37
  "ckanapi>=4.7",
38
38
  "defopt>=6.4.0",
39
39
  "email_validator",
40
- "hdx-python-country>=3.6.3",
41
- "hdx-python-utilities>=3.6.3",
42
- "libhxl>=5.1",
40
+ "hdx-python-country>=3.6.4",
41
+ "hdx-python-utilities>=3.6.4",
42
+ "libhxl>=5.2",
43
43
  "makefun",
44
44
  "ndg-httpsclient",
45
45
  "pyasn1",
@@ -6,7 +6,7 @@
6
6
  #
7
7
  annotated-types==0.6.0
8
8
  # via pydantic
9
- attrs==23.1.0
9
+ attrs==23.2.0
10
10
  # via
11
11
  # frictionless
12
12
  # jsonlines
@@ -27,7 +27,7 @@ click==8.1.7
27
27
  # via typer
28
28
  colorama==0.4.6
29
29
  # via typer
30
- coverage[toml]==7.3.2
30
+ coverage[toml]==7.4.0
31
31
  # via pytest-cov
32
32
  cryptography==41.0.7
33
33
  # via pyopenssl
@@ -51,9 +51,9 @@ filelock==3.13.1
51
51
  # via virtualenv
52
52
  frictionless==5.16.0
53
53
  # via hdx-python-utilities
54
- hdx-python-country==3.6.3
54
+ hdx-python-country==3.6.4
55
55
  # via hdx-python-api (pyproject.toml)
56
- hdx-python-utilities==3.6.3
56
+ hdx-python-utilities==3.6.4
57
57
  # via
58
58
  # hdx-python-api (pyproject.toml)
59
59
  # hdx-python-country
@@ -73,7 +73,7 @@ iniconfig==2.0.0
73
73
  # via pytest
74
74
  isodate==0.6.1
75
75
  # via frictionless
76
- jinja2==3.1.2
76
+ jinja2==3.1.3
77
77
  # via frictionless
78
78
  jsonlines==4.0.0
79
79
  # via hdx-python-utilities
@@ -83,7 +83,7 @@ jsonschema==4.17.3
83
83
  # via
84
84
  # frictionless
85
85
  # tableschema-to-template
86
- libhxl==5.1
86
+ libhxl==5.2
87
87
  # via
88
88
  # hdx-python-api (pyproject.toml)
89
89
  # hdx-python-country
@@ -129,11 +129,11 @@ pyasn1==0.5.1
129
129
  # ndg-httpsclient
130
130
  pycparser==2.21
131
131
  # via cffi
132
- pydantic==2.5.2
132
+ pydantic==2.5.3
133
133
  # via
134
134
  # frictionless
135
135
  # inflect
136
- pydantic-core==2.14.5
136
+ pydantic-core==2.14.6
137
137
  # via pydantic
138
138
  pygments==2.17.2
139
139
  # via rich
@@ -145,7 +145,7 @@ pyphonetics==0.5.3
145
145
  # via hdx-python-country
146
146
  pyrsistent==0.20.0
147
147
  # via jsonschema
148
- pytest==7.4.3
148
+ pytest==7.4.4
149
149
  # via
150
150
  # hdx-python-api (pyproject.toml)
151
151
  # pytest-cov
@@ -204,7 +204,7 @@ sphinxcontrib-napoleon==0.7
204
204
  # via defopt
205
205
  stringcase==1.2.0
206
206
  # via frictionless
207
- structlog==23.2.0
207
+ structlog==24.1.0
208
208
  # via libhxl
209
209
  tableschema-to-template==0.0.13
210
210
  # via hdx-python-utilities
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '6.2.0'
16
- __version_tuple__ = version_tuple = (6, 2, 0)
15
+ __version__ = version = '6.2.1'
16
+ __version_tuple__ = version_tuple = (6, 2, 1)
@@ -46,6 +46,7 @@ from hdx.utilities.dateparse import (
46
46
  )
47
47
  from hdx.utilities.dictandlist import merge_two_dictionaries, write_list_to_csv
48
48
  from hdx.utilities.downloader import Download
49
+ from hdx.utilities.loader import load_json
49
50
  from hdx.utilities.path import script_dir_plus_file
50
51
  from hdx.utilities.saver import save_json
51
52
  from hdx.utilities.typehint import ListTuple, ListTupleDict
@@ -214,13 +215,12 @@ class Dataset(HDXObject):
214
215
  Returns:
215
216
  Optional[Dataset]: Dataset created from JSON or None
216
217
  """
217
- with open(path) as f:
218
- jsonobj = json.loads(f.read())
219
- if jsonobj is None:
220
- return None
221
- dataset = Dataset(jsonobj)
222
- dataset.separate_resources()
223
- return dataset
218
+ jsonobj = load_json(path, loaderror_if_empty=False)
219
+ if jsonobj is None:
220
+ return None
221
+ dataset = Dataset(jsonobj)
222
+ dataset.separate_resources()
223
+ return dataset
224
224
 
225
225
  def init_resources(self) -> None:
226
226
  """Initialise self.resources list
File without changes
File without changes