Reply – Re: Inferring Object Properties for Individuals Based on Asserted SomeValuesFrom
Your Name
Subject
Message
or Cancel
In Reply To
Re: Inferring Object Properties for Individuals Based on Asserted SomeValuesFrom
— by Richard Richard
Thank you for taking this time to address this problem. I can see how resolving relationships between individuals is hard. Would it help to assume these assertions?

    kale = Kale("kale")
    bitter = Bitter("bitter")
    Bitter.equivalent_to.append(OneOf([bitter]))
    Kale.equivalent_to.append(OneOf([kale]))
    AllDifferent([bitter, kale])

    Kale.is_a.append(has_taste.some(Bitter))

    close_world(Ingredient)

Unfortunately, even with this, I'm still getting an assertion error on:

    assert set(kale.has_taste.indirect()) == { Bitter }

We don't even want classes in triples, do we? That seems wrong. What is .indirect() really supposed to capture and what does it do that inference does not?