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

Optimize concept set doesn't remove redundant excluded concepts #2915

Open
dimshitc opened this issue Feb 12, 2024 · 2 comments
Open

Optimize concept set doesn't remove redundant excluded concepts #2915

dimshitc opened this issue Feb 12, 2024 · 2 comments

Comments

@dimshitc
Copy link

Expected behavior

The peak concept was removed from the concept set definition, and concepts used to exclude parts of its hierarchy should be removed by the Optimize functions.

Actual behavior

those concepts excluding part of non existing hierarchy are present in concept set definition after Optimization.

Steps to reproduce behavior

test_concept_set.json
image
'Hyperfunctional dysphonia' exclude descendants is redundant since there's no parent of this concept included.
But Optimize doesn't remove it.

@anthonysena
Copy link
Collaborator

I'm not sure what you've requested is technically possible. When you remove the peak concept as you described, the optimize function will only consider the concepts included in the concept set. So, in this example, we presume the person creating the concept set has a reason for the exclusion of 'Hyperfunctional dysphonia' plus descendants. I'm going to close this out but let me know if I've misunderstood anything in this issue.

@anthonysena
Copy link
Collaborator

I take it back - this should be possible but will require some additional checks. In this particular example, we should evaluate the concept set in this way:

  1. Obtain the list of concept(s) are included by evaluating those concepts in the concept set that are included (with or without descendants)
  2. Given the results from step 1 above, evaluate if the excluded concepts (with or without descendants) would exclude anything from the list
  3. Suggest to remove any excluded concepts that are not excluding anything from step 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants