Nov 04, 2021

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.


  • 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 Reason: The usage of cython in is not recommended by the cython documentation.
  • Disable the "owlready2_optimized"-warning in 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:
  • Update docs 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
  • 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):

  • (time out)
    • links to: (time out)
    • links to: (time out)

    • links to: (time out)

    • links to:
      • links to: (404)
      • links to: (404)
    • links to: (automatic response: unreachable)
    • links to: (404)
  • many of the publicly listed wikibase instances (see also here) are not available (either 404 or 503 problems).
  • (International Society for Knowledge Organization) -> KOS registry ->
      • "Sorry, we have some technical problems! Please contact the administrator and include the error message below." (no error message shown)
  • → → Online Casinos in Australia
  • Operation stopped in Oct. 2021