OpenEnergyPlatform / oekg

Repository for the Open Energy Knowledge Graph (OEKG)
Creative Commons Zero v1.0 Universal
8 stars 0 forks source link

Draft bundle KG #14

Open stap-m opened 2 years ago

stap-m commented 2 years ago

I tried to create a draft for the discussed bundles as KG to get a better picture and common understanding. It's not yet complete, but it is meant to draft the (possible) structure. I sketched it manually and tried to write some RDFish code below (comments after #). Is that useful and does the structure makes sense? @fabianneuhaus

grafik


Bundle-KG

oekg:bundleA a oeo:bundle                                                          # tbd oeo

oekg:bundleA xyz:has_IRI < address of website on OEP >  

oekg:bundleA xyz:has_part  oekg:studyA1

    oekg:studyA1 a oeo:study report                                                # OEO_00020012

    oekg:studyA1 xyz:has_IRI < address of website on OEP > 

    oekg:studyA1 xyz:has_analysis_scope oekg:anascope_a1

        oekg:anascope_a1 a oeo:analysis scope                                  # OEO_00020072

        oekg:anascope_a1 xyz:is_about oekg:studyregion_sr1

            oekg:studyregion_sr1 a oeo:study region                        # OEO_00020032

        oekg:anascope_a1 xyz:is_about oekg:szyear_y1

            oekg:szyear_y1 a oeo:scenario year                                  # OEO_00020097

        oekg:anascope_a1 xyz:is_about oekg:szyear_y2

            oekg:szyear_y2 a oeo:scenario year                                   # OEO_00020097

        oekg:anascope_a1 xyz:is_about oekg:sector_s123

            oekg:sector_s123 a oeo:sector                                            # OEO_00000367

        oekg:anascope_a1 xyz:is_about oekg:sector_s124

            oekg:sector_s124 a oeo:sector                                              # OEO_00000367

        ...

    oekg:studyA1 xyz:has_publication_detailes oekg:pub_details_pA1

        oekg:pub_details_pA1 a oeo:information content entity                  # ?

        oekg:pub_details_pA1 xyz_has_part oekg:DOI_12345

            oekg:DOI_12345 a oeo:DOI                                                      # ...

            oekg:DOI_12345 xyz:has_DOI < DOI >

        oekg:pub_details_pA1 xyz_has_part oekg:funder_f1

            oekg:funder_f1 a oeo:funder                                               # OEO_00090001  --> also IRI?

        oekg:pub_details_pA1 xyz_has_part oekg:institution_i1

            oekg:institution_i1 a oeo:institution                                 # OEO_00000238 --> also IRI?

        oekg:pub_details_pA1 xyz_has_part oekg:iauthor_au1

            oekg:iauthor_au1 a oeo:author                                       # OEO_00000238 --> also IRI?, author is a role!

        oekg:pub_details_pA1 xyz_has_part oekg:title_t1

            oekg:title_t1 a oeo:title                                                     # OEO_?

        ....

    oekg:studyA1 xyz:uses oekg:model_m1

        oekg:model_m1 a oeo:model

        oekg:model_m1 xyz:has_IRI < address of website of MF on OEP > 

    oekg:studyA1 xyz:is_about oekg:scenario123                                         

        oekg:scenario123 a oeo:scenario

        oekg:scenario123 xyz:has_IRI < address of website on OEP >  

        oekg:scenario123 xyz:has_record oekg:table456.

            oekg:table456 a xyz:Table.                                                 # <---- from here on automated KG population

            oekg:table456 xyz:has_IRI < address of website on OEP >  .

            oekg:table456 is about oeo:entity.

    ...
stap-m commented 2 years ago

Based on our meeting yesterday, I created a updated version of the KG focussing on the main relations. I decided to relate model and tables to scenario projection. A relation to scenario study could also be discussed. Not 100% sure what is better @fabianneuhaus grafik

stap-m commented 2 years ago

For the relations has study region and has scenario year, see also https://github.com/OpenEnergyPlatform/ontology/issues/1335

fabianneuhaus commented 2 years ago

This looks good to me. Concerning whether we should connect output to scenario projections or to scenario study, there are at least two things to consider / decisions to be made: (a) Is every table either an input or an output of some scenario projection (even if unknown) or are there tables that contain information related to the scenario study that have nothing to do with a scenario projection?
(b) x has_output y imply that all of y is the output of x? If yes, then we need to deal with tables that are not the output of a scenario projection, because they combine results of several scenario projections. One way of solving that would be to connect some tables to scenario studies directly (as outputs) without an intermediate scenario projection. However, that's only one alternative and might not be the best. (E.g., one could include parts of tables, which are the output scenario projections).

stap-m commented 2 years ago

Let's dicuss both aspects (a) and (b) with the team.

Regarding (b): x has_output y imply that all of y is the output of x? has output is RO_0002234 and defined as p has output c iff c is a participant in p, c is present at the end of p, and c is not present at the beginning of p. As I read it, the answer to the question "Does x has_output y imply that all of y is the output of x?" is yes.

Scenario projection refers to output data, not to tables in its definition: Scenario projection is an intentional process in which output (endogenous) data of interest are quantified for future points in time using one or more model calculation based on a scenario. One could argue, that the output data is not necessarily the table itself, but the entries the table contains. And the table is the result of some postprocessing... 🤔

stap-m commented 2 years ago

From the last SIROP project meeting: this is how the bundle KG should be implemented. grafik

fabianneuhaus commented 2 years ago

Minor comments: