Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for generating vocab docs with pyLODE #114

Closed
dalito opened this issue Jul 2, 2023 · 0 comments · Fixed by #115
Closed

Add support for generating vocab docs with pyLODE #114

dalito opened this issue Jul 2, 2023 · 0 comments · Fixed by #115
Labels
documentation Improvements or additions to documentation enhancement Request for changing or improving existing features

Comments

@dalito
Copy link
Member

dalito commented Jul 2, 2023

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).

@dalito dalito added documentation Improvements or additions to documentation enhancement Request for changing or improving existing features labels Jul 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement Request for changing or improving existing features
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant