pylode 3.2.2__tar.gz → 3.3.3__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 (52) hide show
  1. {pylode-3.2.2 → pylode-3.3.3}/PKG-INFO +30 -22
  2. {pylode-3.2.2 → pylode-3.3.3}/README.md +15 -13
  3. {pylode-3.2.2 → pylode-3.3.3}/pylode/__init__.py +0 -1
  4. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/query/__init__.py +5 -0
  5. {pylode-3.2.2 → pylode-3.3.3}/pylode/utils.py +5 -0
  6. pylode-3.3.3/pylode/version.py +3 -0
  7. pylode-3.3.3/pyproject.toml +55 -0
  8. pylode-3.2.2/LICENSE +0 -29
  9. pylode-3.2.2/pylode/rdf/refs.pickle +0 -0
  10. pylode-3.2.2/pylode/rdf/refs_titles.pickle +0 -0
  11. pylode-3.2.2/pylode/version.py +0 -3
  12. pylode-3.2.2/pyproject.toml +0 -30
  13. {pylode-3.2.2 → pylode-3.3.3}/pylode/__main__.py +0 -0
  14. {pylode-3.2.2 → pylode-3.3.3}/pylode/cli.py +0 -0
  15. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/__init__.py +0 -0
  16. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/ontpub.py +0 -0
  17. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/__init__.py +0 -0
  18. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/component/__init__.py +0 -0
  19. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/component/example.py +0 -0
  20. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/component/heading.py +0 -0
  21. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/component/link.py +0 -0
  22. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/component/preamble.py +0 -0
  23. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/component/properties_table.py +0 -0
  24. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/component/tooltip.py +0 -0
  25. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/dataset.py +0 -0
  26. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/fragment.py +0 -0
  27. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/html.py +0 -0
  28. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/loader.py +0 -0
  29. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/model.py +0 -0
  30. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/namespace.py +0 -0
  31. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/query/common.py +0 -0
  32. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/query/property_shape.py +0 -0
  33. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/random.py +0 -0
  34. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/supermodel/state.py +0 -0
  35. {pylode-3.2.2 → pylode-3.3.3}/pylode/profiles/vocpub.py +0 -0
  36. {pylode-3.2.2 → pylode-3.3.3}/pylode/pylode.css +0 -0
  37. {pylode-3.2.2 → pylode-3.3.3}/pylode/rdf/dcterms-mod.ttl +0 -0
  38. {pylode-3.2.2 → pylode-3.3.3}/pylode/rdf/licenses.ttl +0 -0
  39. {pylode-3.2.2 → pylode-3.3.3}/pylode/rdf/ontdoc.ttl +0 -0
  40. {pylode-3.2.2 → pylode-3.3.3}/pylode/rdf/owl.ttl +0 -0
  41. {pylode-3.2.2 → pylode-3.3.3}/pylode/rdf/prov.ttl +0 -0
  42. {pylode-3.2.2 → pylode-3.3.3}/pylode/rdf/rdf.ttl +0 -0
  43. {pylode-3.2.2 → pylode-3.3.3}/pylode/rdf/rdfs-mod.ttl +0 -0
  44. {pylode-3.2.2 → pylode-3.3.3}/pylode/rdf/sdo-mod.ttl +0 -0
  45. {pylode-3.2.2 → pylode-3.3.3}/pylode/rdf/skos.ttl +0 -0
  46. {pylode-3.2.2 → pylode-3.3.3}/pylode/rdf/void.ttl +0 -0
  47. {pylode-3.2.2 → pylode-3.3.3}/pylode/rdf_elements.py +0 -0
  48. {pylode-3.2.2 → pylode-3.3.3}/pylode/static/asciidoc.css +0 -0
  49. {pylode-3.2.2 → pylode-3.3.3}/pylode/static/hierarchy.css +0 -0
  50. {pylode-3.2.2 → pylode-3.3.3}/pylode/static/hierarchy.js +0 -0
  51. {pylode-3.2.2 → pylode-3.3.3}/pylode/static/property-table-row.js +0 -0
  52. {pylode-3.2.2 → pylode-3.3.3}/pylode/static/pylode.css +0 -0
@@ -1,21 +1,27 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: pylode
3
- Version: 3.2.2
3
+ Version: 3.3.3
4
4
  Summary: An OWL ontology documentation tool using Python, based on LODE.
5
5
  Author: Nicholas Car
6
- Author-email: nick@kurrawong.net
7
- Requires-Python: >=3.9,<4.0
6
+ Author-email: Nicholas Car <nick@kurrawong.ai>
7
+ License-Expression: BSD-3-Clause
8
8
  Classifier: Programming Language :: Python :: 3
9
9
  Classifier: Programming Language :: Python :: 3.9
10
10
  Classifier: Programming Language :: Python :: 3.10
11
11
  Classifier: Programming Language :: Python :: 3.11
12
12
  Classifier: Programming Language :: Python :: 3.12
13
13
  Classifier: Programming Language :: Python :: 3.13
14
- Requires-Dist: Markdown (>=3.3.7,<4.0.0)
15
- Requires-Dist: dominate (>=2.6.0,<3.0.0)
16
- Requires-Dist: html5lib (>=1.1,<2.0)
17
- Requires-Dist: httpx (>=0.25.0,<1.0.0)
18
- Requires-Dist: rdflib (>=7.0.0,<8.0.0)
14
+ Classifier: Programming Language :: Python :: 3.14
15
+ Requires-Dist: rdflib>=7.5.0,<8.0.0
16
+ Requires-Dist: markdown>=3.3.7,<4
17
+ Requires-Dist: dominate>=2.6.0,<3
18
+ Requires-Dist: html5lib>=1.1,<2
19
+ Requires-Dist: httpx>=0.25.0,<1.0.0
20
+ Requires-Python: >=3.9, <4
21
+ Project-URL: Homepage, https://github.com/RDFLib/pyLODE
22
+ Project-URL: Documentation, https://github.com/RDFLib/pyLODE
23
+ Project-URL: Source, https://github.com/RDFLib/pyLODE
24
+ Project-URL: Changelog, https://github.com/RDFLib/pyLODE/releases
19
25
  Description-Content-Type: text/markdown
20
26
 
21
27
  ![pyLODE logo](https://rawcdn.githack.com/RDFLib/pyLODE/master/img/pyLODE-250.png)
@@ -43,7 +49,7 @@ To access v 2.13.2 of pyLODE, either:
43
49
 
44
50
  - [Download it from PyPI](https://pypi.org/project/pylode/2.13.2/)
45
51
  - [Check it out from GitHub](https://github.com/RDFLib/pyLODE/releases/tag/2.13.2)
46
- - Access it via the [online service](http://pylode.surroundaustralia.com/)
52
+ - Access it via the [online service](http://tools.kurrawong.ai/pylode)
47
53
 
48
54
  ---
49
55
 
@@ -85,7 +91,7 @@ The tool can be used in multiple ways:
85
91
  - via the [Falcon framework](https://falconframework.org/)
86
92
  - see `server.py`
87
93
  - As-a-service online
88
- - https://pylode.surroundaustralia.com
94
+ - https://tools.kurrawong.ai/pylode
89
95
 
90
96
  ### Command line arguments
91
97
 
@@ -174,12 +180,13 @@ pyLODE supports simple and complex Agent objects, including ORCIDs, affiliations
174
180
 
175
181
  ```turtle
176
182
  <ontology_x>
177
- dct:creator [
178
- sdo:name "Nicholas J. Car" ;
179
- sdo:identifier <http://orcid.org/0000-0002-8742-7730> ;
180
- sdo:affiliation [
181
- sdo:name "SURROUND Australia Pty Ldt." ;
182
- sdo:url "https://surroundaustralia.com"^^xsd:anyURI ;
183
+ schema:creator [
184
+ schema:name "Nicholas J. Car" ;
185
+ schema:identifier <http://orcid.org/0000-0002-8742-7730> ;
186
+ schema:email "nick@kurrawong.ai"^^xsd:anyURI ;
187
+ schema:affiliation [
188
+ schema:name "KurrawongAI" ;
189
+ schema:url "https://kurrawong.ai"^^xsd:anyURI ;
183
190
  ] ;
184
191
  ] ;
185
192
  .
@@ -222,12 +229,13 @@ python -m pytest tests --disable-warnings
222
229
 
223
230
  ## Releases
224
231
 
225
- **Current release:** **3.2.1**
232
+ **Current release:** **3.2.3**
226
233
 
227
234
  ### Release Schedule
228
235
 
229
236
  | Version | Date | Description |
230
237
  |---------|------------------|---------------------------------------------------------------------------------|
238
+ | 3.2.3 | 27 January 2026 | Updating dependencies & release procedure. Tidy testing cleanup |
231
239
  | 3.2.1 | 31 January 2025 | Fix version number in version.py |
232
240
  | 3.2.0 | 27 July 2024 | dependency updates and merged multiple small PRs |
233
241
  | 3.1.4 | 6 April 2024 | Fix load_ontology function's detection of data input |
@@ -294,7 +302,7 @@ Nicholas Car
294
302
  * `poetry build`
295
303
  * `poetry publish -u __token__ -p {TOKEN}`
296
304
  9. make a GitHub release
297
- * include `/bin` build artifacts
298
- 9. increment version number to next release in `pyproject.toml`
299
- 10. commit all changes `$ git commit -a "..."`
300
- 11. push changes `$ git push`
305
+ * include `/dist` build artefacts
306
+ 10. increment version number to next release in `pyproject.toml`
307
+ 11. commit all changes `$ git commit -a "..."`
308
+ 12. push changes `$ git push`
@@ -23,7 +23,7 @@ To access v 2.13.2 of pyLODE, either:
23
23
 
24
24
  - [Download it from PyPI](https://pypi.org/project/pylode/2.13.2/)
25
25
  - [Check it out from GitHub](https://github.com/RDFLib/pyLODE/releases/tag/2.13.2)
26
- - Access it via the [online service](http://pylode.surroundaustralia.com/)
26
+ - Access it via the [online service](http://tools.kurrawong.ai/pylode)
27
27
 
28
28
  ---
29
29
 
@@ -65,7 +65,7 @@ The tool can be used in multiple ways:
65
65
  - via the [Falcon framework](https://falconframework.org/)
66
66
  - see `server.py`
67
67
  - As-a-service online
68
- - https://pylode.surroundaustralia.com
68
+ - https://tools.kurrawong.ai/pylode
69
69
 
70
70
  ### Command line arguments
71
71
 
@@ -154,12 +154,13 @@ pyLODE supports simple and complex Agent objects, including ORCIDs, affiliations
154
154
 
155
155
  ```turtle
156
156
  <ontology_x>
157
- dct:creator [
158
- sdo:name "Nicholas J. Car" ;
159
- sdo:identifier <http://orcid.org/0000-0002-8742-7730> ;
160
- sdo:affiliation [
161
- sdo:name "SURROUND Australia Pty Ldt." ;
162
- sdo:url "https://surroundaustralia.com"^^xsd:anyURI ;
157
+ schema:creator [
158
+ schema:name "Nicholas J. Car" ;
159
+ schema:identifier <http://orcid.org/0000-0002-8742-7730> ;
160
+ schema:email "nick@kurrawong.ai"^^xsd:anyURI ;
161
+ schema:affiliation [
162
+ schema:name "KurrawongAI" ;
163
+ schema:url "https://kurrawong.ai"^^xsd:anyURI ;
163
164
  ] ;
164
165
  ] ;
165
166
  .
@@ -202,12 +203,13 @@ python -m pytest tests --disable-warnings
202
203
 
203
204
  ## Releases
204
205
 
205
- **Current release:** **3.2.1**
206
+ **Current release:** **3.2.3**
206
207
 
207
208
  ### Release Schedule
208
209
 
209
210
  | Version | Date | Description |
210
211
  |---------|------------------|---------------------------------------------------------------------------------|
212
+ | 3.2.3 | 27 January 2026 | Updating dependencies & release procedure. Tidy testing cleanup |
211
213
  | 3.2.1 | 31 January 2025 | Fix version number in version.py |
212
214
  | 3.2.0 | 27 July 2024 | dependency updates and merged multiple small PRs |
213
215
  | 3.1.4 | 6 April 2024 | Fix load_ontology function's detection of data input |
@@ -274,7 +276,7 @@ Nicholas Car
274
276
  * `poetry build`
275
277
  * `poetry publish -u __token__ -p {TOKEN}`
276
278
  9. make a GitHub release
277
- * include `/bin` build artifacts
278
- 9. increment version number to next release in `pyproject.toml`
279
- 10. commit all changes `$ git commit -a "..."`
280
- 11. push changes `$ git push`
279
+ * include `/dist` build artefacts
280
+ 10. increment version number to next release in `pyproject.toml`
281
+ 11. commit all changes `$ git commit -a "..."`
282
+ 12. push changes `$ git push`
@@ -3,4 +3,3 @@ from .rdf_elements import *
3
3
  from .utils import *
4
4
  from .utils import PylodeError
5
5
  from .version import __version__
6
-
@@ -405,6 +405,11 @@ class Query:
405
405
  self.root_profile_iri = get_root_profile_iri(graph)
406
406
  self.db = load_profiles(self.root_profile_iri, graph.serialize())
407
407
  self.graph = self.db.root_graph
408
+
409
+ # We need this to see the prefixes in the loaded file
410
+ for prefix, namespace in graph.namespace_manager.namespaces():
411
+ self.graph.namespace_manager.bind(prefix, namespace, override=True)
412
+
408
413
  self.debug = True if (None, LODE.debug, None) in self.db.config_graph else False
409
414
 
410
415
  # An IRI index of classes that 'exist' within this documentation.
@@ -296,6 +296,11 @@ def sort_ontology(ont_orig: Graph) -> Graph:
296
296
  trpls = ont_orig.triples((None, None, None))
297
297
  trpls_srt = sorted(trpls)
298
298
  ont_sorted = Graph(bind_namespaces="core")
299
+
300
+ # Recover the namespaces from the original file
301
+ for prefix, namespace in ont_orig.namespace_manager.namespaces():
302
+ ont_sorted.namespace_manager.bind(prefix, namespace, override=True)
303
+
299
304
  for trpl in trpls_srt:
300
305
  ont_sorted.add(trpl)
301
306
  return ont_sorted
@@ -0,0 +1,3 @@
1
+ import importlib.metadata
2
+
3
+ __version__ = importlib.metadata.version(__package__)
@@ -0,0 +1,55 @@
1
+ [project.urls]
2
+ Homepage = "https://github.com/RDFLib/pyLODE"
3
+ Documentation = "https://github.com/RDFLib/pyLODE"
4
+ Source = "https://github.com/RDFLib/pyLODE"
5
+ Changelog = "https://github.com/RDFLib/pyLODE/releases"
6
+
7
+
8
+ [project]
9
+ name = "pylode"
10
+ version = "3.3.3"
11
+ description = "An OWL ontology documentation tool using Python, based on LODE."
12
+ authors = [{ name = "Nicholas Car", email = "nick@kurrawong.ai" }]
13
+ requires-python = ">=3.9,<4"
14
+ readme = "README.md"
15
+ license = "BSD-3-Clause"
16
+ classifiers = [
17
+ "Programming Language :: Python :: 3",
18
+ "Programming Language :: Python :: 3.9",
19
+ "Programming Language :: Python :: 3.10",
20
+ "Programming Language :: Python :: 3.11",
21
+ "Programming Language :: Python :: 3.12",
22
+ "Programming Language :: Python :: 3.13",
23
+ "Programming Language :: Python :: 3.14",
24
+ ]
25
+ dependencies = [
26
+ "rdflib>=7.5.0,<8.0.0",
27
+ "Markdown>=3.3.7,<4",
28
+ "dominate>=2.6.0,<3",
29
+ "html5lib>=1.1,<2",
30
+ "httpx>=0.25.0,<1.0.0",
31
+ ]
32
+
33
+ [project.scripts]
34
+ pylode = "pylode.cli:main"
35
+
36
+ [dependency-groups]
37
+ dev = [
38
+ "pytest>=7.2.0,<8",
39
+ "ruff>=0.9.0",
40
+ "pyinstaller>=6.0,<7 ; python_full_version >= '3.9' and python_full_version < '3.11'",
41
+ ]
42
+
43
+ [tool.uv]
44
+ required-version = ">=0.7.9"
45
+ default-groups = "all"
46
+
47
+ [tool.uv.build-backend]
48
+ module-root = ""
49
+
50
+ [build-system]
51
+ requires = ["uv_build>=0.9.1,<0.10.0"]
52
+ build-backend = "uv_build"
53
+
54
+ [tool.ruff.lint]
55
+ extend-select = ["I"]
pylode-3.2.2/LICENSE DELETED
@@ -1,29 +0,0 @@
1
- BSD 3-Clause License
2
-
3
- Copyright (c) 2002-2021, RDFLib Team
4
- All rights reserved.
5
-
6
- Redistribution and use in source and binary forms, with or without
7
- modification, are permitted provided that the following conditions are met:
8
-
9
- 1. Redistributions of source code must retain the above copyright notice, this
10
- list of conditions and the following disclaimer.
11
-
12
- 2. Redistributions in binary form must reproduce the above copyright notice,
13
- this list of conditions and the following disclaimer in the documentation
14
- and/or other materials provided with the distribution.
15
-
16
- 3. Neither the name of the copyright holder nor the names of its
17
- contributors may be used to endorse or promote products derived from
18
- this software without specific prior written permission.
19
-
20
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
- DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24
- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25
- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27
- CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28
- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Binary file
Binary file
@@ -1,3 +0,0 @@
1
- import importlib.metadata
2
-
3
- __version__ = importlib.metadata.version(__package__)
@@ -1,30 +0,0 @@
1
- [tool.poetry]
2
- name = "pylode"
3
- version = "3.2.2"
4
- description = "An OWL ontology documentation tool using Python, based on LODE."
5
- authors = ["Nicholas Car <nick@kurrawong.net>"]
6
- readme = "README.md"
7
-
8
- [tool.poetry.dependencies]
9
- python = "^3.9"
10
- rdflib = ">=7.0.0,<8.0.0"
11
- Markdown = "^3.3.7"
12
- dominate = "^2.6.0"
13
- html5lib = "^1.1"
14
- httpx = ">=0.25.0,<1.0.0"
15
-
16
- [tool.poetry.scripts]
17
- pylode = "pylode.cli:main"
18
-
19
- [tool.poetry.group.dev.dependencies]
20
- pytest = "^7.2.0"
21
- black = "^24.3.0"
22
- flake8 = "^4.0.1"
23
- pyinstaller = { version = "^6.0", python = ">=3.9,<3.11" }
24
-
25
- [build-system]
26
- requires = ["poetry-core>=1.0.0"]
27
- build-backend = "poetry.core.masonry.api"
28
-
29
- [tool.poetry.group.lint.dependencies]
30
- ruff = "0.14.3"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes