I discovered the concept of semantic annotations for openBIS Object/Property Types while going through the pyBIS doc and found some more information in the V3 API chapter, but still struggle to figure out how they are meant to work exactly.
I understand that semantic annotations can be added to
an Object/Sample type (I use the term “Sample” in the following)
a Property type
a Sample Property assignment (as in a Property type as used by a specific Sample type? Since there is no differentiation between local and global Properties anymore since release 20.10.3)
I would also like to know whether there are any plans to integrate the concept of semantic annotations to the ELN and/or the Admin UI. It would, e.g., be great if a user could see both description of a Property as well as the semantic annotations when hovering with the mouse over the Property type, similar to how it’s already done for Sample info inside the Storage Manager.
In the next openBIS release, planned before end of year, we plan to provide support for using semantic annotations in the XLS masterdata import.
For a future release we plan to provide support for annotations on the admin UI and provide export in OWL/RDF format.
I hope this helps.
It’s great that you plan to support semantic annotations in openBIS
I looked into the semantic representation of ISA-Tab experimental metadata as OWL (linkedISA).
Do you also consider to build a top-level ontology on openBIS classes or types, analogous to the ISA terms ontology?
I also don´t understand what I am supposed to write in which field. Where do I put the URL of my ontology?
I tried to create a semantic annotation for a property type by filling in some random values via pyBIS but nothing appeared in the corresponding fields in the Admin Client.
Is there maybe something wrong with the documentation?
I saw it is not possible to add any semantic annotation in the Admin UI. But, is it possible to define them in the headers of the xlsx files? I saw some (I guess, older) documentation, but I am not sure how I would define it in these excel files, as the headers are not matching the triples structure (subject/predicate/object).
It is correct that semantic annotations are not currently supported by the admin UI.
In the ELN, semantic annotations can be enabled in the Settings, in the Miscellaneous section.
I saw some docu on the excel import with these properties included (ontology id, ontology version, ontology annotation id). After your reply, I assume this still works, right? Sorry I am asking, without the GUI feature I cannot test if this is actually working as intended or not.
Is this working in the same way as in PyBIS? I see different properties defined in these 3 different places (Java API, excel import, PyBIS) and I got a big confused.
To clarify, there are three key things you can semantically annotate:
Types → Subject
Properties → Predicate
Properties of Types → Subject with Predicate
In the Excel file, the annotations depend on the position of the columns; they correspond to one of these three elements.
As explained in the link shared by @cbarillari regarding the Java API, the Java API extension provides details on Semantic Annotations.
The Pybis API, on the other hand, is less clear in this area because it still uses older notation, which we have kept for backwards compatibility. Please follow the examples from the Java API when creating objects in Pybis. We will work on updating the Pybis API to include the auxiliary methods present in the Java API.