Wikidata:Property proposal/of instances of

of instances of

edit

Originally proposed at Wikidata:Property proposal/Generic

   Withdrawn
Descriptionqualifier used to express that the object is in regards to instances of the value
Data typeItem
Domainitems that are instances or subclasses of set (Q28813620) or number of entities (Q614112)
Example 1Wikibase property (Q29934218)has use (P366)hyperlinking (Q114785479)of instances ofWikibase property datatype (Q115468759)
Example 2world population (Q11188)subclass of (P279)number of entities (Q614112)of instances ofliving human (Q18093573)
Example 3display resolution (Q12538706)subclass of (P279)number of entities (Q614112)of instances ofpixel (Q355198)
Example 4list of fictional birds (Q682995)instance of (P31)Wikimedia list article (Q13406463)of instances offictional bird (Q15832079)
See alsoof (P642), ?item wdt:instance of (P31) wd:Wikidata qualifier to describe the object of a statement (Q115396176)

Motivation

edit

The two proposed properties help us deprecate the ambiguous of (P642). And they can also be used to replace is a list of (P360) which is also problematic because there's a big difference between: e.g. list of fictional birds (Q682995) and list of critically endangered birds (Q25036985): one lists instances of birds (aka individual birds) while the other one lists subclasses of birds.

Also note that this would be useful if we at some point in the future decide to introduce something like my invoked with & invocation returns proposal, e.g.

--Push-f (talk) 02:44, 27 November 2022 (UTC)[reply]

Discussion

edit
Example 1: Wikibase property datatype is a really confusing item. I don't know how to express its relationship with Wikibase property but I don't think the proposed property in this state is the way.
Example 2: Use "has parts": "living person"
Example 3: Use "has parts"
Example 4: Use is a list of (P360)
A good indicator that a property is good is if you can come up with a consistent domain and range for it. This does not.
Lectrician1 (talk) 18:56, 27 November 2022 (UTC)[reply]
Example 1: Are you familiar with the differences between Wikibase property data types and Wikibase entity types? Because if you are this should not be confusing you. There is a big difference, so representing both by the same data item is very much needless conflation, which is why I separated these data items.
Example 2 & 3: The entities represents a "number of things". A "number of things" certainly does not contain the things ...
Example 4: Yes is a list of (P360) can be used however as I explained it is less informative than the proposed properties since it doesn't distinguish between lists of instances and lists of subclasses and it's also less flexible than the proposed properties since it cannot be used as a qualifier. I'd very much be for deprecating is a list of (P360).
I think "items that are instances or subclasses of set (Q28813620) or number of entities (Q614112)" is a very clearly defined domain. I understand that you dislike properties with an open-ended range ... however I think in this case it is very much necessary because a set can pretty much contain anything and you can also pretty much count anything.
--Push-f (talk) 19:24, 27 November 2022 (UTC)[reply]
Example 2 & 3: The entities represents a "number of things". A "number of things" certainly does not contain the things ...
True. You should propose a "is a number of" property then. Lectrician1 (talk) 22:26, 27 November 2022 (UTC)[reply]
No I certainly won't propose yet another ambiguous and unflexible property like is a list of (P360). --Push-f (talk) 22:39, 27 November 2022 (UTC)[reply]
What's the problem with "is a number of"? Makes sense to me... Lectrician1 (talk) 14:55, 28 November 2022 (UTC)[reply]
  •   Support The Erinaceous One 🦔 19:38, 27 November 2022 (UTC)[reply]
  •   Comment I generally don't find qualifiers on instance of (P31)/subclass of (P279) statements to make sense, so those use cases don't appeal to me; we should find some other statement that can directly relate the two items. Not sure on the general question; people get confused enough by instance/class here so adding something like this seems another layer of complexity for our users without much benefit. ArthurPSmith (talk) 18:41, 28 November 2022 (UTC)[reply]
  •   Oppose Overbroad domain and too much use-case overlap with existing properties. Needs to be better thought out. The "is a number of" suggested by Lectrician1, for instance, would be a much neater solution for two of the four examples given. Swpb (talk) 21:37, 28 November 2022 (UTC)[reply]
    @Swpb: @Lectrician1:
    I don't consider the domain to be overbroad. Yes the proposed qualifiers indeed overlap with is a list of (P360) but I think that property should be deprecated. And we certainly should not introduce similar properties ... let me explain:
    • Some entities are a list of X and some entities are a number of Y.
    • Some entities are programs or functions whose invocation outputs a list of X or a number of Y.
    • Some entities are programs or functions that need to be invoked with a list of X or a number of Y.
    Have a look at the following examples:
    Note how "of instances of" can be used for all of them. If we did not have "of instances of" and instead went with the "is a list of" and "is a number of" approach then we would additionally need four more properties to model the above statements, namely:
    • invoked with list of
    • invoked with number of
    • invocation returns list of
    • invocation returns number of
    How are non-human data consumers supposed to understand the similarities/differences between these properties? (And also "is a list of" does not allow the specification of which type of list this is e.g. a function could return a linked list (Q7003418)).
    Or are you suggesting that we should create data items for "list of paths", "list of group names", "number of seconds" and "number of lines"? I would hope not. Because these entities are not notable and there is no structural need for them because we CAN create a property such as "of instances of".
    Please consider that the JSON representation of an entity using my suggested "of instances of" modeling would be much more informative than the JSON representation of an entity using values such as "list of paths" or "list of group names" because if we represent these concepts as just a single Q ID then data consumers have to do another look up just to understand that these items are (e.g. a list or a number).
    For the semantics of the "invoked with" and "invocation returns" properties I used in my examples please see my proposal draft invoked with & invocation returns. Note that that draft has not yet been proposed, I am still working out the details with the members of the WikiProject Informatics but I am certain that there is a need for these properties and that they will be probably created in the near future.
    I hope that cleared things up :)
    --Push-f (talk) 18:17, 29 November 2022 (UTC)[reply]
Let's stick to the proposal at hand. You specify a domain "items that are instances or subclasses of set or number of entities", but nothing about the name "of instances of" or the description you wrote suggests limitation to that domain. And even within that domain, you have statements that would be better handled in other ways. Of your original examples, two would be better handled by a more specific new property, as a main statement: "is a number of". One would be better handled by the existing is a list of (P360), which works perfectly fine on "list of ..." items like list of fictional birds (Q682995). Your new examples of programs/functions form a much clearer, better-defined use case; if the property were constraint-limited to qualifying "invoked with/invocation returns" statements, that would be fine. Otherwise, I'd need to see a sparql query of everywhere you see this property being used, so we can look at overlap with other properties (like we've been doing on Wikidata:WikiProject_Data_Quality/Issues/P642).
Tangentially, the "four more properties" you list would only be needed if you're insisting on expressing this data without a qualifier, and no one is suggesting that. Right now those statements would use of (P642), which we're looking to replace with properties of much narrower scope. I'm just not convinced "of instances of" fits the bill, at least as it's currently described. Swpb (talk) 20:57, 29 November 2022 (UTC)[reply]

of subclasses of

edit

Originally proposed at Wikidata:Property proposal/Generic

See #of instances of for the motivation and discussion.