The project Wikibase to Jupyter Notebooks (WB2JN) set out with the goal to improve the Python code library being used to enable publishing directly from digital cultural collections that use Linked Open Data. For the project the open licensed collection Corpus der barocken Deckenmalerei in Deutschland (CbDD) was used and which is available online.
The WB2JN project was built on top of two pre-existing proof of concept prototypes that had established the workflow and key elements of the tech stack, but which were not scalable or generalisable:
A suite of four Python modules were made for the WB2JN project which were deposited on the Python package management repository PyPI.
The top level tool performing the end publishing has been called CPS Impress.
The Python modules and subsequent testing have resolved the issues in the two previous prototypes, Demo #1 and Demo #2, and now enable the production of a production-ready command line tool, CPS Impress.
Below is a demonstration painting catalogue using CPS Impress and a CPS Impress for Wikibase to Jupyter Notebooks – schematic:
Project lead: Simon Worthington
Lead developer: Darron M. Broad (RUNSTOP)
Student assistant: Anna Rahr
Thank you to the team Wikibase4Research for Wikibase and data modelling guidance.
Thank you to students of the Bachelor of Arts Information Management, Hannover University of Applied Sciences and Arts-seminar: BIM-126-02 Data Science (2025), March–June 2025. Contributions as beta testers.
A collection clones complete collection data and exhibition data in a Wikibase instance, while still using its existing databases. The cloned Wikibase knowledge base can then be used to automatically create exhibition catalogues for the public visitors in any format. If an exhibit item is temporarily removed for loan etc., the catalogue can be updated.
Here is an example of one such exhibition of paintings at Schloss Solitude. This example is the demonstration catalogue made using open licensed content.
A workflow to import semi-structured collections into Wikibase and templates for automated publication.
A prototyping software workflow that can move from command line technical to GUI interface for general use.
Information linking to all the parts can be found here: https://github.com/NFDI4Culture/WB2JN
Further development work packages are as follows (work not done within the project):
Results : The solution chosen was to use Jinja2 templating in a Python module that was named CPS Impress. It performs a user defined SPARQL query with a result set filter and then generates output utilising Jinja2 templating.
The challenge was to move data processing out of the Notebooks as this was not the place for the core logic to be performed. The assumption at the start was that schema would be the solution to normalisation and abstraction. This assumption was not a workable solution as user data was heterogeneous preventing the system being abstracted. Instead using a Jinja2 templating was chosen as the solution, used alongside a methodology of having a hierarchical tree data structure in the data model. The tree data structure allows segments and objects to be included or omitted from a publication. In the demo examples each castle or palace represents the root of the data tree, subsequently by writing a SPARQL query to designate a specific castle, then any containers, objects, or attributes. This is how catalogues are designed by the query.
Results: The complete CbDD collection was ingested into the WB2JN system, and three sample palaces and castles used as examples for demonstrations.
Results: The complete software packages have been released as open-source on PyPI and can be inspected by all. https://github.com/NFDI4Culture/WB2JN
Results: Full documentation has been created as step-by-step guides.
Simon Worthington