Subjective Thoughts on the Semantic Web from a Python-based Developer in 2021
This blog post serves to publicly note some subjective thoughts on the thematic complex of ontologies and the semantic web which currently do not have a better place to live. This text started as a personal note dump inside a personal repository which now is more a group effort and part of the pysemtec interest group.
Possible Issues for other Projects:
This section collects observations that I perceive as classical issues for a software project, i.e. things that could be improved. I not them here, if there is no issue tracker.
Owlready
- There should be an official issue tracker
- The code should be automatically checked by some continuous integration service
- Potential problems: waste of energy and ressources through cloud services.
- Potential solution: configure CI such that only selected branches are tracked, like in
.drone.yml
in yamlpyowl.
- Change the extension handling in
setup.py
. Reason: The usage ofcython
insetup.py
is not recommended by the cython documentation. - Disable the "owlready2_optimized"-warning in
driver.py
. The user should be warned during installation but not on every use of the library. Also the doc says: "its use is entirely optional", thus a warning every time seems inappropriate.
- Check if newer versions of Reasoners are available. At least Pellet seems to be outdated.
- Call JAVA-Reasoners directly instead of using
subprocess
. This might be relevant: https://www.py4j.org/index.html - Update docs https://owlready2.readthedocs.io/ to current version.
- Ideally, docs should be built automatically when a new version is released.
- Also, docs should be available for past versions too.
- docs on custom rendering should provide information how to restore the original behavior
- this can be done with
set_render_func(default_render_func)
, see also https://github.com/Cognonto/CWPK/blob/master/cwpk-29-extracting-object-data-properties.ipynb
- this can be done with
- The file "owlready2_optimized.c" seems to get changed during installation with ("pip install -e ."). Thus it should not be part of the repository?
- The file "test_quadstore_slash.sqlite3" seems to get changed during unittest execution. Thus it should not be part of the repository?
Whislist fot the semantic python world:
- There should be a maintained, performant and feature-rich (data-properties, SWRL rules) reasoner which is easily installable via pip and usable with owlready2-ontologies and probaly other packages
- There should be the possibility to load ontologies in formats like
.n3
(n-triples),.ttl
(turtle), manchester,.obo
,.kif
. - There should be tools to visually and interactively explore the content of an ontology
404 – A General Impression of the Semantic Web World
Reproducibility and Comprehensibiltiy seems to be a core goal of the whole semantic web idea. However, I discovered a surprisingly high percentage of orphaned projects. An incomplete list (compiled since spring 2021):
- http://www.semanticweb.org/ (time out)
- https://www.semanticdesktop.org/
- links to: http://www.semanticweb.org/wiki/Semantic_Desktop (time out)
- https://www.w3.org/2001/sw/wiki/Neologism
- links to: http://neologism.deri.ie/ (time out)
-
https://bioportal.bioontology.org/projects/TODE
- links to: http://ontologicaldiscovery.org/ (time out)
-
https://lod-cloud.net/dataset/msc
- links to: http://msc2010.org/mscwork/
- links to: http://4store.org/trac/wiki/SparqlServer (404)
- links to:
(404) - https://lod-cloud.net/dataset/fu-berlin-eurostat
- https://lod-cloud.net/dataset/bfs-linked-data
- links to: mailto:project-msc-lod@jacobs-university.de (automatic response: unreachable)
- links to: http://msc2010.org/mscwork/
- https://github.com/bfo-ontology/BFO/wiki
- links to: http://ifomis.uni-saarland.de/bfo/discussion (404)
- many of the publicly listed wikibase instances (see also here) are not available (either 404 or 503 problems).
- https://www.isko.org/ko.html (International Society for Knowledge Organization) -> KOS registry -> https://bartoc.org/
- https://bartoc.org/vocabularies?search=engineering
- "Sorry, we have some technical problems! Please contact the administrator and include the error message below." (no error message shown)
- https://bartoc.org/vocabularies?search=engineering
- https://en.wikipedia.org/wiki/UMBEL → http://umbel.org/ → Online Casinos in Australia
- http://www.visualdataweb.de/webvowl/ Operation stopped in Oct. 2021