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

Usage of participates in #1350

Open
5 tasks
l-emele opened this issue Oct 24, 2022 · 10 comments
Open
5 tasks

Usage of participates in #1350

l-emele opened this issue Oct 24, 2022 · 10 comments
Assignees
Labels
[B] restructure Restructuring existing parts of the ontology

Comments

@l-emele
Copy link
Contributor

l-emele commented Oct 24, 2022

Description of the issue

Currently, we have a pattern 'artifical object' 'participates in' some process. Example of this pattern are:

  • 'energy transformation unit' 'participates in' some 'energy transformation'
  • vehicle 'participates in' some transport

In OEO dev meeting 46, @fabianneuhaus mentioned that is not a good pattern as the objects not necessarily participate all the time. A power plant e.g. can be switched off for some time and does not participate in an energy transformation while switched off.

Ideas of solution

If you already have ideas for the solution describe them here

Workflow checklist

  • I discussed the issue with someone else than me before working on a solution
  • I already read the latest version of the workflow for this repository
  • The goal of this ontology is clear to me

I am aware that

  • every entry in the ontology should have a definition
  • classes should arise from concepts rather than from words
@l-emele l-emele added [B] restructure Restructuring existing parts of the ontology To do Issues that haven't got discussed yet labels Oct 24, 2022
@l-emele l-emele added this to the oeo-release-1.14.0 milestone Oct 24, 2022
@l-emele
Copy link
Contributor Author

l-emele commented Feb 28, 2023

Same problem in issue #1494:

This is where it gets tricky. Since the EVs are mobile, the modes in which they transfer energy vary depending on their operation. In the case of vehicle charging/vehicle-to-grid the processes can only happen when the vehicle is connected to a charging station, so it must be sitting idle. This means that there is either a parallel process of a vehicle being connected or we allow a energy transfer with no actual energy being transferred ( plug-in process) . See diagram.

grafik

@l-emele
Copy link
Contributor Author

l-emele commented Feb 28, 2023

One option to solve this is to delete most of the thing 'participates in' some process axioms and replace them with process 'has participant' some thing axioms.

@stap-m stap-m self-assigned this Mar 23, 2023
@l-emele
Copy link
Contributor Author

l-emele commented Apr 20, 2023

I see three thumbs up for my last proposal so I think we can implement this. 🚀

Any volunteers for implementation? Maybe @u-mueller? Else I can do it.

@github-actions github-actions bot removed the To do Issues that haven't got discussed yet label Apr 20, 2023
@l-emele l-emele assigned l-emele and unassigned stap-m May 17, 2023
@l-emele
Copy link
Contributor Author

l-emele commented May 17, 2023

This issue is ready for implementation, but nothing happened in the last month. So I will start implementing now.

@l-emele
Copy link
Contributor Author

l-emele commented Jun 2, 2023

I tried to implement this, but looking in specific axioms this seemingly easy solution causes some serious headaches. For example, we currently have the axiom bicycle 'participates in' some 'passenger transport'. But we can not state 'passenger transport' 'has participant' some bicycle as there are also types of passenger transport like public transport without bicycles.

If we want to bicycle 'participates in' some 'passenger transport' we need a subclass where we then can axiomatise bicycle 'participates in' some 'biking'. And if this example is not an exception, but more the general rule as there are many instances.

@stap-m
Copy link
Contributor

stap-m commented Jun 5, 2023

If we want to bicycle 'participates in' some 'passenger transport' we need a subclass where we then can axiomatise bicycle 'participates in' some 'biking'. And if this example is not an exception, but more the general rule as there are many instances.

'participates in' some 'passenger transport' is not necessarily wrong, some does not mean all.

@l-emele
Copy link
Contributor Author

l-emele commented Jun 5, 2023

If we want to bicycle 'participates in' some 'passenger transport' we need a subclass where we then can axiomatise bicycle 'participates in' some 'biking'. And if this example is not an exception, but more the general rule as there are many instances.

'participates in' some 'passenger transport' is not necessarily wrong, some does not mean all.

Sorry, seems I got confused. We want to avoid axioms like bicycle 'participates in' some 'passenger transport' and turn them around. We cannot axiomatise 'passenger transport' 'has participant' some bicycle. We need here an axiom biking 'has participant' some biking and this is not possible without a new subclass.

@stale stale bot added the stale already discussed issues that haven't got worked on for a while label Sep 17, 2023
@stap-m stap-m removed this from the oeo-release-2.1.0 milestone Nov 28, 2023
@stap-m stap-m added this to the oeo-release-2.2.0 milestone Nov 28, 2023
@stale stale bot removed stale already discussed issues that haven't got worked on for a while labels Nov 28, 2023
@stap-m
Copy link
Contributor

stap-m commented May 14, 2024

Proposal from a discussion with @nelekoehler:
transport 'has participant' some 'transport participant'
'transport participant' Equivalent to ((person or vehicle or good) and 'has disposition' some 'transport participant disposition')
transport participant disposition: disposition of a person, good or vehicle to take part in a transport process.

@l-emele
Copy link
Contributor Author

l-emele commented Sep 11, 2024

transport participant disposition: disposition of a person, good or vehicle to take part in a transport process.

To make it Aristotelian: A transport participant disposition is a disposition of a person, good or vehicle to take part in a transport process.

'transport participant' Equivalent to ((person or vehicle or good) and 'has disposition' some 'transport participant disposition')

The most common parent class of person or vehicle or good would be continuant. So it should get also a SubClassOf: continuant axiom that the OEO viewer can show it somewhere.
Definition proposal: A transport participant is a person, vehicle or good that can participate in transport.

@l-emele l-emele removed their assignment Sep 27, 2024
@LillyG901
Copy link
Contributor

Comments above mention this being ready to implement, but I still have a few questions:

participates in and has participant are inverse of each other. Even if I remove the participates in relation the reasoner will infer it anyway, after I readded the has participant axioms.
How can we deal with this?

One option to solve this is to delete most of the thing 'participates in' some process axioms and replace them with process 'has participant' some thing axioms.

Are there any participates in relations in particular that should be kept?

And if this example is not an exception, but more the general rule as there are many instances.

Does this mean we might have to add multiple similar classes like transport participant?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[B] restructure Restructuring existing parts of the ontology
Projects
None yet
Development

No branches or pull requests

7 participants