oeplatform
oeplatform copied to clipboard
Check for possible inconsistencies in OEKG
Description of the issue
Building an ontology and a knowledge graph are long-term tasks that need continuous refinement. The OEKG mainly uses the OEO for its schema. Also, it uses other ontologies. Some relations in the OEKG do not exist yet in the OEO (for example: "has framework"). Therefore, we need to check for possible inconsistencies in the OEKG. We need to make decisions about adding the missing relations to the OEO or utilizing other ontologies.
Ideas of solution
- Check if the entity types and relations within the OEKG are in accordance with the desired schema uploaded here.
- Prepare a list of inconsistencies and discuss the solutions.
Workflow checklist
- [ ] I am aware of the workflow in CONTRIBUTING.md
The following predicates are used in the OEKG as indicated in the diagram:
Name | Exists in Ontology? |
---|---|
For study: | |
OEO: has model | yes |
OEO: has contact person | yes |
OEO: has author | yes |
DC: abstract | yes |
OEO: has framework | no |
DC: acronym | no |
OEO: based on sector division | no |
OEO: has scenario | no |
For scenario: | |
OEO: has scenario year | yes |
OEO: has interacting region | yes |
OEO: has study region | yes |
DC: abstract | yes |
OEO: has scenario descriptor | no |
Note: While "DC: acronym" does not exist, "OEO: acronym" does. Similarly, while "OEO: based on sector division" does not exist, "OEO: is based on" does. The triple including "has interacting region" is missing in the "update_factsheet" function.
The following predicates are used in the OEKG but do not appear in the diagram. Out of these, only "has funding source" exists in the OEO: has funding source, has_full_name, has_study_keyword, place_of_publication, link_to_study, date_of_publication, report_title, scenario_uuid
The predicate "OEO: has descriptor" exists only in the diagram, it is not being used in the OEKG (nor does it exist in the OEO).
The following is a list of instances where the OEKG and the diagram use different predicates in place of each other:
Diagram predicate | Exists? | OEKG predicate | Exists? |
---|---|---|---|
For study: | |||
DC: contributor | yes | OEO: has organization | yes |
DC: identifier | yes | OEKG: DOI | exists in NPG ontology, not in OEO |
OEO: covers technology | no | OEO: covers | yes |
For scenario: | |||
OEO: is based on | yes | OEO: has output | yes |
OEO: input of | yes | OEO: has input | yes |
DC: acronym | no | RDFS: label | yes |
Note: Even though "DC: acronym" appears as both an attribute of Studies and of Scenarios in the diagram, in the OEKG it is only used for Studies, while Secanrios use "RDFS: label" instead.
How about OEO["has_iri"]? This is a relation between a dataset and its URL on the OEP.
@h-spinde , you should also have look at this file for the relations within OEKG, and check if they exist in OEO.
Of the entities already listed above, the following are used in the linked file:
- CD: acronym
- date_of_publication
- has_full_name
- has_scenario
- link_to_study
- place_of_publication
- report_title
- scenario_uuid (though "dc:indentifier" as well as "unqiue individual identifier" do exist in the OEO)
- based_on_sector_division
- has_framework
- has_scenario_descriptor
- has_study_keyword
Additional entities that are used in views.py, but do not appear in the OEO are:
- covers_transformation_processes
- has_id
- has_iri
- has_key
- has_study_keyword
There is also an entity "OEO.OEO_0000050" being used which does not exist in the OEO. However, I assume this is merely a typo when referring to entity "OEO.OEO_00000508". Further, while "abstract" still exists in the IAO, the OEO only contains its superclass "document part".