-
Notifications
You must be signed in to change notification settings - Fork 1
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
Adds the inverse abstract operator and the inverse-predicate attribute to triples #56
Conversation
…e to triples Does not add any additional power to the DataModel but allows to significantly reduce the tree size. The name "inverse" is taken from the owl:inverseOf property of OWL.
Is |
No, I've just updated the PR to reflect this. |
We should not consider the |
+1 But how can we do if there is no inverse predicate ? |
And if there is no predicate? (this can also happen) →We allow empty lists for predicate or reverse-predicate. |
We could reverse the triple (the inverse predicate becomes the predicate), but it would be better to avoid this (otherwise people may think that |
Can we add the following text at the end of https://github.com/ProjetPP/Documentation/blob/revers/data-model.md#triple ? Please note that the previous triple is equivalent to:
|
My own thought is that inverse predicate is a hack done in order to reduce the query tree size when we build them using nounification technique. So, yes, when they are present, they are as "important" as regular predicates but I don't see why it is a reason to make this parameter mandatory as it'll have often an empty value. For example, if I write requests by hand, I don't think I'll often use reverse predicates. More, I think that simple modules (like OEIS) should be able to answer to most of questions without having to deal with inverse predicates that is more an "advanced feature" for big modules like the Wikidata one. With the risk of repeating myself: the data model is not only there to be a nice output of NLP-grammatical but is a shared languages for our platform modules and so we shouldn't make there life harder only to simplify the job of NLP-grammatical.
Yes. But we should maybe add a paragraph after the definition of inverse to give an example of use and explain this equality that is, I think, more readable when explained with the abstract notation than with the serialization. |
👍 @Tpt |
If doesn't change anything for the question parsing (we always have something to put into But leave it at it is (optional), developers will just have to be aware of the importance of (for me, you can merge 👍) |
This does not make sense: if the inverse-predicate is important then it should not be optionnal. |
We could consider that it is optional because sometimes it doesn't exist, not because it is less useful than |
Alright. |
@s-i-newton Do you have any concerns about this addition to the data model? |
Silence is consent. I think we can merge now... |
I think @s-i-newton just has no Internet connection. |
How did he registred on the forum? |
Hmm, indeed On 17/02/2015 17:53, Yassine wrote:
|
Adds the inverse abstract operator and the inverse-predicate attribute to triples
Does not add any additional power to the DataModel but allows to significantly reduce the tree size.
The name "inverse" is taken from the owl:inverseOf property of OWL.
Closes #52