Add support for generating vocab docs with pyLODE
Closed this issue · 0 comments
ontospy has several issues if used for SKOS vocabularies, e.g. it does not report collections at all and it does only partially report relations. In addition, the documentation is not human-friendly if numeric IDs are used as identifier in IRIs (as we do). The documentation uses the machine-targeted IDs everywhere but not the human-targeted preferred labels.
pyLODE is much better suited for our use case sine it supports SKOS (and the vocab-profile). The generated docs are well readable; preferred labels are used instead of IDs. However, currently only pyLODE 2.x (tested: 2.13.2) has full support for SKOS-vocabularies. The new 3.x versions (tested: 3.0.5) do not yet include support for SKOS but this is planned.
The pyLODE-generated html does not contain link-targets that are compatible with w3id.org redirect rules: The fragment identifiers use the preferred label not the ID. Since the IDs are part of the IRIs in our IRI-scheme (and not the preferred label) a general redirect rule can not be devised.
To solve this problem we should follow what WIDOCO does (a java-based ontology-documentation generator). WIDOCA creates links/targets that use the PIDs as fragment identifiers (see my comment here). Adapting the html-generation in pyLODE accordingly requires changing the code and also the jinja templates. The changes are quite different for the 2.x pyLODE series than for 3.x. In 2.x jinja is used whereas 3.x uses html generation from python with dominate).