Property talk:P279

From Wikidata
Jump to navigation Jump to search


subclass of
all instances of these items are instances of those items; this item is a class (subset) of that item. Not to be confused with P31 (instance of)
DescriptionAll instances of this item (a class) are also instances of that item (another class). This item (a class) is a subclass of that item (another class).
Representssubclass of (Q21514624)
Data typeItem
Template parameterNot directly applicable. Loosely relates to infobox name or the "type" parameter in several infoboxes.
DomainClasses (note: this should be moved to the property statements)
Allowed valuesClasses (note: this should be moved to the property statements)
Usage notesAbout this property, please read
Class items can be documented using {{Item documentation}} on their talk page and by adding a list of properties in their Talk:Q<id>/class subpage (work in progress)
Exampleapple (Q89)fruit (Q3314483)
fruit (Q3314483)fruit (Q1364)
house cat (Q146)domesticated animal (Q622852)
proton (Q2294)baryon (Q159731)
carbon-14 (Q840660)carbon (Q623)
Robot and gadget jobsClass tree representations (using mill (Q44494) as an example):
Tracking: sameno label (Q42533435)
Tracking: usageCategory:Pages using Wikidata property P279 (Q23909012)
See alsoinstance of (P31), part of (P361), parent taxon (P171)
Proposal discussion[not applicable Proposal discussion]
Current uses2,395,074
Search for values
[create] Create a translatable help page (preferably in English) for this property to be included here
Conflicts with “instance of (P31): common name (Q502895), Wikimedia template (Q11266439), Wikimedia list article (Q13406463), Wikimedia category (Q4167836), Wikidata property (Q18616576): this property must not be used with the listed properties and values. (Help)
Exceptions are possible as rare values may exist.
List of this constraint violations: Database reports/Constraint violations/P279#Conflicts with P31, SPARQL, SPARQL (new)
Scope is as main value (Q54828448): the property must be used by specified way only (Help)
Exceptions are possible as rare values may exist.
List of this constraint violations: Database reports/Constraint violations/P279#scope, SPARQL, SPARQL (new)
Conflicts with “subproperty of (P1647): this property must not be used with the listed properties and values. (Help)
List of this constraint violations: Database reports/Constraint violations/P279#Conflicts with P1647, hourly updated report, search, SPARQL, SPARQL (new)
Property “subclass of (P279)” declared by target items of “subclass of (P279): If [item A] has this property with value [item B], [item B] is required to have property “subclass of (P279)”. (Help)
Exceptions are possible as rare values may exist. Known exceptions: entity (Q35120), Wikimedia internal item (Q17442446)
List of this constraint violations: Database reports/Constraint violations/P279#Target required claim P279, SPARQL, SPARQL (by value), SPARQL (new)
Allowed entity types are Wikibase item (Q29934200): the property may only be used on a certain entity type (Help)
List of this constraint violations: Database reports/Constraint violations/P279#allowed entity types, hourly updated report, SPARQL (new)
if [item A] has this property (subclass of (P279)) linked to [item B],
then [item A] and [item B] have to coincide or coexist at some point of history. (Help)
Exceptions are possible as rare values may exist.
List of this constraint violations: Database reports/Constraint violations/P279#Contemporary, SPARQL, SPARQL (new)
if [item A] has this property (P279) linked to [item B],
then [item A] and [item B] have to coincide or coexist at some point of history.
Exceptions are possible as rare values may exist.
List of this constraint violations: Database reports/Constraint violations/P279#Contemporary, SPARQL
Pictogram voting comment.svg Can't be ?class P279 ?class
impossible claim or it should be a separate item (Help)
Violations query: SELECT ?class WHERE { ?class wdt:P279 ?class }
List of this constraint violations: Database reports/Complex constraint violations/P279#Can't be ?class P279 ?class
This property is being used by:

Please notify projects that use this property before big changes (renaming, deletion, merge with another property, etc.)

Usage note[edit]

Usage is detailed in Help:Basic membership properties.


Archived creation discussion[edit]



  • Description: All of these items are instances of those items; this item is a class of that item
  • Datatype: Item
  • Domain: Any item that represents a collection or class of another item; any item that is not a token
  • Infobox parameter: N/A
  • Comments: While 'is a' describes specialization -- this item is an instance of that item -- this property describes generalization -- all of these items are instances of those items. For example, with this property, it's possible to form statements like "All trees are plants" by adding this property with the value 'plant' to the item 'tree'. This property would function as #$genls does in CycL. Contrast this with 'is a', which would be used in statements like "Methuselah is a tree." Emw (talk) 04:10, 6 March 2013 (UTC)
  • Symbol support vote.svg Support --Goldzahn (talk) 03:00, 8 March 2013 (UTC)
  • don't understand you're example: A tree is a plant, so you can add "is a = plant" to the item tree. What would be the difference to generalization? -- MichaelSchoenitzer (talk) 14:30, 9 March 2013 (UTC)
  • The difference is that 'is a' applies to an instance, and 'generalization' would apply to collections -- or classes -- of instances. For example the item "tree" is not an instance, it is a class. So in that case 'generalization' would apply, not 'is a'. An example of an instance is a particular tree outside your house, or (more notably) a 4800-year-old tree named Methuselah -- these are instances of a particular collection or class (i.e. "tree"). Instances cannot have instances, while collections (or classes) do have instances. This has a fuller explanation: Emw (talk) 15:18, 9 March 2013 (UTC)


Symbol oppose vote.svg Oppose Wikidata is a multi languages project. If it's not even clear how to use this property in English, how should the other editors work with a second "is a" property? --Kolja21 (talk) 03:05, 13 March 2013 (UTC)

  • How is it not clear? Type-token distinction doesn't strike me as a concept specific to one language. The distinction between object and class -- which is the difference between 'is a' and 'generalization' -- is often not at the forefront of everyday speech, but it's useful in knowledge representation. Emw (talk) 12:36, 13 March 2013 (UTC)

Well, I don't know but I just used it for film festival→festival. Shawn in Montreal (talk) 05:34, 13 March 2013 (UTC)

That means film festival "is a" festival (Property:P31) would be wrong? --Kolja21 (talk) 06:01, 13 March 2013 (UTC)
Yes, 'is a' and 'generalization' are mutually exclusive. Shawn in Montreal's usage is correct. 'film festival' is not an instance of 'festival' -- however, 'Cannes' is an instance of 'film festival'. Does this make sense? Emw (talk) 12:38, 13 March 2013 (UTC)
Is my understanding correct that "generalization" = "subclass of"?--Stevenliuyi (talk) 13:51, 13 March 2013 (UTC)
That would be counter-intuitive. I thought is was the other way around ;) So should we place "generalization" in the Wikidata:List of properties above "is a" or below? And would it help if we distinguish between "controlled vocabulary" (P107: GND main types) and "uncontrolled vocabularies" (P279 and P31)? I'm not in general against this property, but we can't expect editors to read a scholarly article before using it. --Kolja21 (talk) 14:11, 13 March 2013 (UTC)
Ah, I've only read "subclass" not "subclass of". (It's really getting hard for a non native speaker.) --Kolja21 (talk) 14:15, 13 March 2013 (UTC)
I'm glad I commented because I didn't understand that 'is a' and 'generalization' are mutually exclusive. As a native English speaker and a writer, I'm still somewhat confused. I think we'll need property descriptions that also briefly caution what NOT to use them for? Shawn in Montreal (talk) 15:03, 13 March 2013 (UTC)
  • Yes, "generalization" = "subclass of". The name of this property was inspired by the $#genls property in CycL, but both this property and that property function just like rdfs:subClassOf. Emw (talk) 00:52, 14 March 2013 (UTC)

Why do we need this property?[edit]

I don't get it...

  • The specific dog named Fido is an element of the class dog: -> Fido (dog) is a dog
  • The class/group of all dogs is an element of the class/group mammals: dog is a mammal

Why do we need this property “generalization”?--Svebert (talk) 11:16, 14 March 2013 (UTC)

ok. probably I understood the difference between is-a (=instance-of) and generalization (=class-of/generalized-by). But only after a considrable time of thinking and the example “film festival“ is not a “festival“ but a special kind of the concept “festival“. Isnt there a better name?--Svebert (talk) 16:48, 14 March 2013 (UTC)
This property adds a huge complication to the whole WikiData systematic. I assume that most of all is-a properties are meant in the way of “generalized-by“/ “concept-of”. In this sense “electron” is-a “lepton” is not accurate, because electron is a concept and not one single instance of the group of electrons. Here this property must be used: “electron“ generalized-by “lepton“.
The question is: Do we really want to complicate things? I doubt that the is-a and generalized-by properties will be used in the right fashion by the most users (including me).
I think it would be more pragmatic to merge is-a and generalized-by to “is-a“ and use another property called “is-class“ with the predefined values true and false to implement this instance-of and generalized-by distinction.
  • (“Film festival“ is-a “Festival“) and (“Film festival“ is-class=true) implies that the is-a property is meant in this case as “generalized-by“ property.
  • (“Cannes Film Festival“) is-a “Film festival” and (“Cannes Film Festival“ is-class=false) implies that the is-a property is meant in this case as “instance-of“ property.--Svebert (talk) 17:09, 14 March 2013 (UTC)
  • Yes I have the same concern though have not expressed it. Astonishly few people are going to use "generalized by" when "is a" functions the same in English for both of these properties. Fido is a dog, and a dog is a canine, and so on. Others have spoken about the hypothetical desirability of a "directed acyclic graph", which goes from specific to general classes; this property breaks the hypothetical 'traversal' of such a graph by moving from property "is a" to property "generalization" at some point in the hierarchy. I don't see the gain. Why can't it all use "is a". Espeso (talk) 17:34, 14 March 2013 (UTC)
  • In my view, we will not use both properties in infoboxes. Maybe they will help with queries in Phase 3. So it would help to move both properties on the "List of properties" from top to bottom. People, who don´t know how to use them, shouldn´t use them. --Goldzahn (talk) 22:33, 14 March 2013 (UTC)
  1. Delaying any decisions or discussions does not solve anything ;)
  2. Additionally these properties will be usful for phase II (infoboxes). See my beloved electron: in de.WP we have the infobox „Teilchen“ (=particle) and the first parameter is „Klassifikation“ (=classification). For the electron this parameter is filled with „Elementarteilchen“, „Lepton“ and „Fermion“. These classifications should be implemented as generalized-by properties of the electron here in WikiData. Or better as combination of is-a property and is-class property in the way I proposed above.--Svebert (talk) 23:18, 14 March 2013 (UTC)

Why we need this property[edit]

For reference, and to avoid duplication, I'll respond to the above by pointing to the is a -> instance of discussion on the P31 talk page. That explains the rationale for not only renaming that property, but also having this as a separate property. Emw (talk) 13:51, 24 March 2013 (UTC)

some thoughts[edit]

At the moment we have p279 (generalized by) and p31 (is a). The two sentences from the top of this page are:

We could take the mathematics of en:Sets and write:

OK, lets take municipalities.

municipality of Switzerland is not an element, it is a set. But Bern, a municipality, is an element. Lets take three more sets: muncipality (all muncipalities), commune in the French Republic and "muncipality in Europe" (we don´t have that item).

Now, I can write these sentences:

  • "Bern" "element of" "municipality"
  • "Bern" not "element of" "commune in the French Republic"
  • "municipality of Switzerland" "subset of" "muncipality in Europe"

There are more operations possible with sets: union, intersection, subtraction, symmetric difference, ...

For example, one solution of the intersection of "commune in the French Republic" and not "muncipality in Europe" is Communes of the Guadeloupe department.

What says the statement: Barack Obama "occupation" "politician"? He is an element of the set called "politician". "Place of birth" "Honolulu" is different, because the city is an element and not a set.

"Honolulu" element of "Hawaii", "Hawaii" subset of "USA", "USA" subset of "country"
  • "place of birth" is an interconnection between an element of the set "person" with an element of the set "country".
  • "country of citizenship" is an interconnection between an element of the set "person" with a subset of the set "country".

What is this good for? I don´t know. Maybe there is a connection to the queries in Phase 3. --Goldzahn (talk) 16:39, 15 March 2013 (UTC)

  • Exactly! Property, class, subclass, superclass, list of pages linked to this item, is a, generalized by, subpages, statements, instance of, part of, preceded by, followed by, subcategory, category, supercategory, hyponym, hyperonym...and so on. Set theory suggests using only 3 (subset, set, superset)! And still Also known as - without is a subset of Fractaler (talk) 13:00, 10 April 2013 (UTC)

Noone gets 'generalization'; changed title to 'subclass of'[edit]

The label 'generalization' is, evidently, completely unintuitive (as is 'generalized by'). I've changed the label of this property to 'subclass of', something contributors seem to grok much more easily. Emw (talk) 20:38, 16 March 2013 (UTC)

Could we rename P31 too? Maybe 'instance of'? --Goldzahn (talk) 21:34, 16 March 2013 (UTC)
I'd be in favor of that, but it warrants a wider discussion. In a nutshell, I think it makes sense to have this distinction because P31's current description is "this item is an instance of this other item" and established knowledge representation languages like RDFS, OWL, UML and CycL distinguish set membership relations between 'is a'/'instance of' and 'generalization'/'subclass of'. Emw (talk) 21:41, 16 March 2013 (UTC)
By the way, this paper says: Mary belongs to (or “is a member of” or, even more technically, “is an instance of”) the class of all persons. So, there are: <belongs to>, <is a member of> and <is an instance of>. I think, we should think about <belongs to class>, <is a member of class> and <is an instance of class> too. --Goldzahn (talk) 22:27, 16 March 2013 (UTC)
There, 'belongs to' and 'member of' are really just aliases for 'instance of'. I started is a -> instance of on the P31 talk page to discuss renaming that property. Emw (talk) 23:17, 16 March 2013 (UTC)


An above example says ”Cannes Film Festival <is a> film festival" and "film festival is <subclass of> festival". Previously I thought it's right but now I'm a little confused. Is it really correct that "Cannes Film Festival" <is a> "film festival"? I think "Cannes Film Festival" is also a class, because we can say something like "2012 Cannes Film Festival" <is a> "Cannes Film Festival". So maybe we should use <subclass of> for the "Cannes Film Festival"-"film festival" relation too? --Stevenliuyi (talk) 20:56, 16 March 2013 (UTC)

You're right, my example was wrong. 'Cannes Film Festival' is a class, not an instance; '2012 Cannes Film Festival' is an instance and not a class. Instances -- i.e. tokens -- have a unique time and place. The OWL 2 primer from the W3C has a fairly straightforward section on classes and instances:
That said, I think it would be best to consider instances and classes as mutually exclusive. There are advanced features like punning that allow those important ontological distinctions to be blurred, but I think it would be best to use one type of set membership relation or the other for now. Emw (talk) 21:23, 16 March 2013 (UTC)

German translation[edit]

  • Description: "dieses Element ist eine Klasse/Gruppe dieses Elements"

That means "A is a class/group of A". I think the second "dieses" should be changed into "jenes". --Kolja21 (talk) 03:45, 17 March 2013 (UTC)

In anderen properties wird von Subjekt und Objekt gesprochen. Vielleicht so: Das Subjekt ist vom Objekts abgeleitet, wie das 'Auto' vom 'Fahrzeug'. Beides sind Klassen. Die Beschreibung von p31: Definitionseinleitung einer Sache ist für mich nicht verständlich. Vielleicht besser so: Das Objekt, eine Klasse, wird in Form des Subjekts gegenständlich. By the way, I don´t think the English description is right. --Goldzahn (talk) 05:54, 17 March 2013 (UTC)

Please stop creating properties too early...[edit]

...before infobox parameters or external sources are provided, and before the documentation form is complete. Mange01 (talk) 09:10, 20 March 2013 (UTC)

As can be seen from the archived creation discussion, the documentation form was complete and there was no field for source at the time -- although I did effectively note a source: the #$genls relation in CycL, a popular language for knowledge representation. The infobox parameter was and still is a bit of a toss-up: the closest match is really the infobox name, not a particular parameter, and even that is a loose tie. I've added notes on external sources and more information in the standard documentation at the top of this page. Emw (talk) 03:24, 21 March 2013 (UTC)
This was a comment meant for several people here - not only this property was created with rather limited documentation and after short discussion.Mange01 (talk) 14:45, 23 March 2013 (UTC)

Only terms?[edit]

The field Allowed values (I.e. type of linked items) currently says "Any term or Wikipedia category that represent collections or classes." I suggest that it should be limited to terms, because an organization, place, person or event can not be a class or type, but only an instance. (We have still not decided if Wikipedia categories should be considered terms or a separate main type of item.)

Regarding the field "Domain" (i.e. type of items that may use this property), I am more unsure. Should it also only be limited to terms? To my understanding, in the case of "Is a", the domain should typically be non-terms, while the allowed value always is a term.

Example: "Stockholm municipality" (place) is a "municipality in Sweden" (term), which is a subtype of "Second level administrative units" (is a). Any counter example?Mange01 (talk) 14:45, 23 March 2013 (UTC)

When discussing properties, I think it's better to use conventional terms from the Semantic Web and ontology, rather than P107-specific vocabulary. For example, the domain (valid subjects) and range (valid objects) for this property are the same as the rdfs:subClassOf property from the W3C: items that represent classes. For instance of (P31), the general agreement from the is a -> instance of discussion is that the domain is any item that represents an instance, and the range is any item that represents a class. The RDF primer has some good explanations for these concepts: Emw (talk) 12:53, 24 March 2013 (UTC)
I still don't understand why we can't limit it to terms, i.e. theoretical concepts. Hierarchies of collections like "dog"->"wolf"->...->"mamal" are always idealized concepts with theoretical definitions. In my world it is wrong to call this a generic property, since the domain is limited. Currently many articles are linking to the "Term" item. Mange01 (talk) 16:18, 28 March 2013 (UTC)
Please give a counter-example, where P279 links to an item that is not a term. Mange01 (talk) 15:52, 3 April 2013 (UTC)
Let's establish two uncontroversial premises: 1) items that are classified with the GND main type "creative work" are not GND main type "terms", and 2) this 'subclass of' (P279) property can only be applied to subjects that represent classes. Given that, if any Wikidata about a GND "creative work" represents a class, then that would be a counter-example of where P279 could link to an item that is not a term. In fact, most Wikidata items about books, which are creative works, are examples of classes and not instances. So most Wikidata items about books are such counter-examples.
The Bible (Q1845) is a specific case of this counter-example in Wikipedia. Contrary to what one might initially think, the Bible is a class of a book, not an instance of a book. Individual copies of the Bible are instances of a book (particularly, instances of the Bible). For example, the Codex Sinaiticus is an instance of a book (the Bible), as are the Leningrad Codex and other individual manuscripts of the Bible. But the Wikipedia article 'Bible' is not about any particular physical copy of the Bible, it is about the class of thing of which those particular physical copies are instances. Likewise, other Wikidata items about books -- like The Great Gatsby (Q214371) and The Art of War (Q8251) -- are really about classes and not instances. (The fact that Wikidata will presumably never have items about particular copies about The Great Gatsby or The Art of War does not mean that we should conflate the difference between "instance" and "class". If an item A has a 'subclass of' claim to B and there aren't any 'instance of' claims to A, that's fine -- see Help:Basic membership properties for more explanation.)
Not only are there cases where 'subclass of' links to an item that is not a GND "term", but there are also cases where instance of would link to an item that is a GND term. This is the case for Wikidata items for all individual animals, e.g. Knut (Q159697), which an instance of an animal and classified with GND main type "term".
That demonstrates how the GND ontology (and thus P107) intermingles classes and instances within "term" and the other GND main types. And that alone seems sufficient to establish that when discussing the nature of this property, it would be better to use conventional terms from the Semantic Web and ontology like "instance" and "class", rather than P107-specific vocabulary like "term", "place", "creative work", etc. Emw (talk) 01:24, 11 April 2013 (UTC)

Similar properties[edit]

How should this property be used when other similar properties in Category:Type_properties are used? Should an item also be be assigned this property, or should we refer to a less generic property if that exist? Or should we merge this property with one of them? For example

Mange01 (talk) 14:45, 23 March 2013 (UTC)

The property class (P77) is actually just for specifying one taxonomic rank for an item, and so isn't really similar to this property. Regarding parent taxon (P171), I've written some thoughts at its request for deletion here that are relevant to your question. In brief, I think such properties are clearly redundant with this one, and should thus be deprecated. Emw (talk) 17:23, 24 March 2013 (UTC)
Why not merge P279 with P171 or P77? "Is subclass of" is a good name that we can keep.
The instructions for "is instance of" says that Use more specific properties when applicable, e.g. occupation instead of "is a <writer>" or type of administrative division instead of "is a <US state>". Should that be true for P279 as well? Meaning that since "dog" alreayd is mapped to higher level taxons, for example wolf, using properties such as "species" and "parent taxon", then we should not use P279 in that case?
If there is a hierarchy of subclasses and classes, I suppose this property should link to the lowest level. Currently dog "is subclass of" wolf (which is the lowest level in the above taxonomy), so I replaced mammal by wolf in the example on the top of the page. If you follow the "is subclass of" links it should ultimately reach mammal.
Note that dog is also "species" wolf, which has the same "parent taxon" as it is subclass of. This overlap between properties indicates that we can merge some of them.
I think we need several good examples on hierachies of items interconnected using this property. Mange01 (talk) 17:10, 28 March 2013 (UTC)

How can data be automatically gathered?[edit]

Can a robot collect data for this property from Wikipedia categories, from Wikipedia infoboxes or from some external ontology or taxonomy source? If it can not be automatically gathered, or if it is easier to not differentiate "is a(n)" from this property during automatic collection of data, I suggest that this property should be deleted. Mange01 (talk) 14:14, 23 March 2013 (UTC)

Yes, data can be automatically gathered from those sources. A main benefit of basing this property off rdfs:subClassOf is that external ontologies that use RDFS, OWL etc. can be more easily imported here. Also, please note two discussions on the P31 talk page that are relevant to this property: is a -> instance of and Proposal: establish rdf:type as the basis for this property. The general agreement from the former is that P31's former "is a" label was too ambiguous and non-standards-based, so it's now called "instance of". The existence of this property is an entailment of that. Emw (talk) 13:12, 24 March 2013 (UTC)
I think a clear connection to Wikipedia would be helpful.
I believe this property can be mapped to Wikipedia categories, if the article is a term, and if the article only belongs to one category.
Example: Dog belongs to en:category:Dogs (main article Dog) and many other categories. Category:Dogs belongs to Category:Canis lupus (main article Canis lupus), which belongs to Category:Canis, belonging to Category:Canines, belonging to Category:Canids, belonging to Category:Carnivorans, belonging to Category:Mammals.
Also navbox hierarchies very often seem to show hierarchies of theoretical concepts (representing collections).
I have searched but I have found very few examples of related infobox parameters, because infoboxes are typically used in Wikipedia articles about instances rather than theoretical concepts. En:template:taxobox and en:Template:Infobox comics species are among the few eamples of infoboxes that is used for terms, but to my understanding there is no simple way of mapping them to P279. Mange01 (talk) 17:10, 28 March 2013 (UTC)
Many infoboxes apply to articles about items that represent classes instead of instances. These infoboxes specify subclass relations -- through their name, not a parameter. Such infoboxes include:
The mapping from infobox to this property seems straightforward to me. Find an infobox that represents a class, then find the articles that link to it: virtually all of the corresponding items will be valid candidates for the claim '<item> subclass of <infobox name>'. Wikipedia categories might give some insight into appropriate instance of/subclass of hierarchies, but applying them naively might give poorly designed hierarchies.
For example, take the Subaru Forester article about that class of vehicles. (See Help:Basic membership properties if 'Subaru Forester' seems odd to describe as a class.) That article lists 'Subaru vehicles', 'Crossover SUVs', 'All-wheel-drive vehicles', '1990s automobiles', '2000s automobiles', '2010s automobiles', 'Vehicles introduced in 1997', 'Automobiles powered by boxer engines', and 'Partial zero-emissions vehicles' as categories. Having 'subclass of' claims between 'Subaru Forester' and all of those categories would an example of an anti-pattern, in my opinion. Those categories really represent hard-coded queries of interest rather than a well-considered taxonomic hierarchy of things, which is the scope of 'subclass of' and 'instance of'. Instead of making all those 'subclass of' claims of 'Subaru Forester', it would be better to simply have the claim 'Subaru Forester subclass of automobile'. The other data in the infobox parameters can be used to deduce the category structure. This same approach could be applied with many other examples from different domains. Emw (talk) 02:28, 5 April 2013 (UTC)
You found several good examples. Is it okay to mention them in the documentation on the top of this page?
You did not like the idea of using the category structure of articles that are terms?
Have you noticed the hundreds of ontology classes defined by the dbpedia project? Can Wikidata somehow gain from the work of this project? These classes are related to the names of the infoboxes. Mange01 (talk) 21:27, 7 April 2013 (UTC)

The definition of 'instance' and 'class'[edit]

There's an active discussion at Help_talk:Basic_membership_properties#Proposition_of_definition about the definitions of 'instance' and 'class' that's relevant to this property. Input is welcome! Emw (talk) 02:07, 19 April 2013 (UTC)

The distinction between instance and class is a bit arbitrary. In rality every instance can be a class of its own and will become a class sometime once we add more specifalization to it. We can just explain that an "instance" is in fact only a leaf node in the tree of classes.
The complication comes now from the separation between "is a" (="is an instance of") and "is a subclass of": if you want to *specialize* (rather than the opposite *generalize*) any concept, the concept has to be migrated from an "instance" to a "class", and its "is a" (="is an instance of") property must be changed to a "is an subclass of".
In the OOP termininology, the distinction comes from earlt languages like C++. But modern OOP languages no longer make any difference (every object can be a class by itself, capable of providing a new clone of itself then specialized by additional or modified properties), and we don't want later to lave to handle instances, classes, meta-classes, meta-meta-classes... A good example of this is Javascript.
I'm not convinced that the new properties "is a subclass of" is very useful and enough general to be productive in both directions (generalization like in early OOP languages, or specialization). We should keep the possibitility of specialization open at every node in the knowledge tree (because not all concepts are asserted to be final and not subclassable). In my opinion "is a" is enough to do everything.
If you want to indicate that any object can be specialized/subclassed you can still encode an boolean attribute like "subclassable"; or its opposite "final" (Java terminology). also in the direction of specialization, we coud have a property "includes" that enumerate known subclasses/instances if we cant to restrict them in a closed set (very difficult to assert in an arbitrary knowledge tree).
So IMHO we should be more general and adopt a Javascript-like modeling: every object is a class and cam be instanciated at any time.
This concept also exists in Lua (even if it makes a distinction with its unique "metatable" which is nothing more than another set of properties, and we could be more general by supporting mutiple (typed) sets of properties instead of just one with a single "metatable" like Lua.
But more importantly, what needs to be tracked is which set of properties is "inherited" by instances/subclasses sharing it, instead of duplicating them, and which properties are not (private properties like in C++); however accessing these inherited (not duplicated) properties for objects can be challenging as such definition would require either recursing up in the tree of classes, or supporting the concept of "prototypes" like Javascript which automatically builds up when we specialize classes, using accessor properties and either: inheritance rules (in the topdown specialization direction), or resolution rules (in the bottomup generalization direction, to define possible shortcuts or to resolve cases of conflicts with multiple inheritance, if we ever support multiple "is a" properties for the same object). Verdy p (talk) 23:31, 12 May 2014 (UTC)
English is not a programming language. We should follow whatever convention would be the most intuitive to English-language speakers. In my opinion, an 'instance' is a specific example of something, while a 'subclass' is a category of something. There is no mathematical definition of these terms because language is not math. It's ontologically fuzzy, so we just have to use our best judgement and intuition. Kaldari (talk) 01:13, 8 October 2014 (UTC)
English is a mess. Natural languages routinely confuse classes and instances in ways that would make interesting Semantic Web applications crumble. I agree that JavaScript is probably not the ideal basis to classify all human knowledge, but instance of and subclass of do have formal definitions in rdf:type and rdfs:subClassOf. Ontologically clear definitions of these properties undergird major vocabularies in science. Emw (talk) 12:31, 8 October 2014 (UTC)
Thanks for your support. The rdfs definition is important here, then English will have to adapt and display something that avoids confusing similar properties. There's a general confusion between "is subclass of" and "is instance of", making the use of Wikidata by automated tools really difficult.
Ideally I would also like have a symetric property for "class:is subclass of:class", i.e. "class:has subclasses:class". Just like there should be symetric property "class:has instances:element" for "element:is instance of:class". (note that "element" and "instance" are broadly equivalent in Wikidata). And just like we have symetric properties for "element:is part of:element" and "element:includes:element" (or their specialisation for geographical administrative entities: "entity:includes administratively:(sub)entity" and "(sub)entity:is administratively part of:entity"... the later being named "administrative localisation" in English)
Verdy p (talk) 16:32, 22 February 2016 (UTC)
I disagree your rationale: every concept in Wikidata can be an instance and then later considered a class of its own: distinguishing those that merit to be classes and those that are terminal instances goes no where: each time we would to specialize anything, we need to duplicate the old "instance" item to create a new homonymous class (and then comes many confusions in Wikidata between these homonymous duplicated items that are clearly not necessary !)
All we need is a single thing: all items in Wikidata should be classes (like objects in Javascript), but some of these classes MUST be specialized (in some circumstance) where it is now considered to broad in scope.
There are in fact very few objects that can only be instances and not subclassed: they are already unique (by design) and breaking them in parts will not create a new item of the same type. Examples of instance-only objects include: geolocated toponyms, or persons (let's put away the exact "clones" that still have a different life); but not animal species or even varieties or cultivars); even characters in movies/comics/books are classes with several instances (one instance for each distinctive work made with diferent sets of authors/actors/director/producers... these characters are reproduced and sold as a brand/franchise with multiple realisations, there's then a class for these characters).
Generally items are only unique within a specific context of use (where there was a criteraia applied to make a selections between realizations), but there are multiple contexts.
In fine, the "instances" in Wikidata are absolutely not useful at all, and counter productives: let's be simpler and say that in Wikidata everything is a class; we absolutely don't need any "instance".
Wikidata can perfectly be a pure ontology of classes only. the remaining "instances" are just items that we have still not classified, but that in fact separated subclasses of a "match-all" root class: theses are items we need to work on to classify them (which still don't have a "subclass of" property, but only a fuzzy "nature of subject" property that will later be changed to "subclass of"). This also means that the existing "nature of subject" is not very useful, and in fact counter-productive. We can perfectly merge the two properties into a single one, and use this single property to classify everything as classes. No more duplicates, and no fuzzy "bet" on what merits to be an "instance" or not when in fact the subclassification is not needed in all cases but is always specific to the context of use where a preselection criteria (or an aggregation) is appplied. Verdy p (talk) 18:08, 15 May 2019 (UTC)
@Verdy p: I would say that 90% of Wikidata items are instances (yes, toponyms, persons and others) so it is too bold to put P31 away. By the way, how do you like an idea of metaclass (Q19478619)? When each class can be P31 of some metaclass (and P279 of some other class). --Infovarius (talk) 11:31, 17 May 2019 (UTC)
I can't bet anything on your 90% estimate. The truth is that Wikidata wants to be able to represent all kinds of concepts for all kinds of use (with more or less distinctions needed on subproperties). Each time we need to make new distinctions within an item, we need to duplicate the item from its current definition (as an instance) to a new definition (as a class).
Now comes metaclasses, yes: this can as well be formalized by properties between classes (not the usual "subclass of" property, but some "instance of", but this is in fact much more exceptional), in order to create new hierarchies.
Then again comes the "chicken and egg" problem: we're never sure to have "eggs" (aka "instances" for the simple class modeling) at leaf-level of a hierarchy, or "chicken" (aka "class" for the simple class modeling) at the root level: both levels may be extensible upward or downward independantly of an isolated hierarchy of classes. We have however always a single "root" in Wikidata: the generic term "concept" or "item" which groups them all (at all metalevels of hierarchies: even if there are multiple metahierarchies, we cannot order them by a welldefined metalevel number: a hierarchy of classes, or metaclasses, may be at metalevel 1 or 2 simultaneously, or even more).
So for one hierarchy, a Wikidata item will behave as an instance, for another hierarchy it will act as a class, or a metaclass, or metametaclass, and so on... How many duplications of concepts will we need to create ?
So make it simpler: everything is a "generic class", and any "generic class" may be a "subclass of" one or more "generic classes", or an "instance of" one or more "generic classes", or both simultaneously. This just requires two properties ("subclass of", "instance of") and no duplication at all of concepts in Wikidata items, and of many other related properties that are also no longer duplicated (e.g. "has as an instance", and "has instances of class"; or "includes as a part instance", and "includes instance parts of class"). Verdy p (talk) 11:51, 17 May 2019 (UTC)


I'm wondering whether subgenres (such as Q1422746) should take subclass of (as I've added) or the same information in the genre property.

It makes sense to me that it should naturally be subclass of. Just checking in. --Izno (talk) 18:05, 22 April 2013 (UTC)

Saying 'action role-playing game' subclass of 'role-playing video game' and 'action game' seems reasonable. Talking about a work's genre is fundamentally talking about what subclass of work it is, so 'subclass of' seems to fully capture the meaning of 'genre' (and sub-genre, sub-sub-genre, and so forth). Emw (talk) 02:43, 23 April 2013 (UTC)
So should action RPG also be a subclass of genre? It is obviously not an instance of, but I'm not sure whether it would be good or bad to specify that it is actually a subclass of video game genre as well... That's the second question that popped into my head during the day. --Izno (talk) 02:51, 23 April 2013 (UTC)
How about "subset/set/superset" (no "instance of" and so on)? Fractaler (talk) 08:18, 23 April 2013 (UTC)
Izno, yes, I think action RPG can be considered a subclass of genre. (Genres aren't concrete things with unique locations in space and time, so they don't have instances.) Emw (talk) 04:03, 24 April 2013 (UTC)
I suppose my question was more to the effect of "if it is a subclass of RPG", then by inference we can also say it is a genre without specifying it directly on the page. Is there an argument for or against specifying that it is a genre? Your thoughts? --Izno (talk) 02:38, 7 May 2013 (UTC)
This property is transitive, so if some item is a subclass of RPG, and RPG is a subclass (or instance) of genre, then it would be redundant to specify that it is a genre. So I don't think that should be directly specified on the page. Being able to avoid that kind of redundancy is one of this property's main features. Emw (talk) 02:58, 7 May 2013 (UTC)
Okay, that's not really what you seemed to say earlier (though that may have been based on my summary rather than an analysis of the actual item in question). Be consistent please. :) --Izno (talk) 03:07, 7 May 2013 (UTC)
Could you explain what you find inconsistent? Emw (talk) 03:24, 7 May 2013 (UTC)

Top of the subclass tree[edit]

There's an interesting conversation going on at Project chat about the root of the taxonomy being built with this property -- see Top of the subclass tree (permalink). Emw (talk) 14:04, 1 December 2013 (UTC)

Should this be used for Wikimedia page items?[edit]

I noticed that this is sometimes used on items for Wikimedia category pages. For example, Category:Wheel of Time locations (Q8128018) was a subclass of Category:Fictional locations (Q6540441). Should we allow that kind of usage? My gut reaction is "no". First, different languages and different projects will categorize in different ways, so there is going to be some inconsistency. Second, one category isn't really a "class" of another in the same way felines are a class of mammals or laptops are a class of computer. If we wanted to try to show which categories are within which, I recommend creating a unique property for the purpose. --Arctic.gnome (talk) 01:36, 25 January 2014 (UTC)

Your argument is the same I've put before.
In addition, we should seek to categorize the "mainspace items", rather than categories. --Izno (talk) 04:34, 25 January 2014 (UTC)

Cannes Film Festival again[edit]

(Film) festivals consist of several, similar (or somehow connected) events. However they are confined to a certain point of time. The Cannes festivals (or the Olympic Games or the World Economic Forum or Hackers on Planet Earth) however are series or sequences of festivals (sports events, conferences). Of course each instance of the Cannes Film Festival is an instance of Film Festival but I have difficulties to understand The Cannes Festival (a series of festivals) as subclass (specialization) of the class of film festivals: Is it true that for a class in the wikidata sense automatically any set of members is a member too (like categories in mathematical set theory)? As a consequence a forest would not only be a subclass of ecosystem but also subclass of tree. -- Gymel (talk) 16:59, 6 March 2014 (UTC)

Several ways of seeing things:
Actually I was not aiming at how to denote the order of individual instances in their sequence but at more general issues: What is the proper relation between the Cannes Film Festival (the sequence) and Festial (the concept)? World Economic Forum (Q170418) is cheating by identifying the conference series with the organizationalal structure. Olympic Games (Q5389) is a subclass of a recent recurring event (Q15275719) (recurring event) has no relation to sports, and the simultaneous assignment as subclass of multi-sport event (Q167170) exhibits the same problem as the Cannes festival. One could think of fundamentally other solutions:
  • These series of instances don't ncessarily have to be classes. One can argue that The Cannes Film Festival or The Olympic Games (of the present times) due to branding and pertinent organizational body are very "real" and instance-like (but regarding them as instances of something IMHO only shifts the problem around and at the same time they loose their ability to inherit something to the individual events they are comprised of).
  • One could invent in addition to subclass of (P279) another property relating classes to classes with the meaning "instances of X are sequences of instances of Y"
  • A (IMHO not yet existing) very general property "instance of sequence" could be applicable to items and classes the like (that would imply that some instances of classes are classes again and not items: Probably not very intuitive). This would obliviate the necessity to create for any class item a companion list-of-this-class class item. -- Gymel (talk) 19:38, 6 March 2014 (UTC)
A (IMHO not yet existing) very general property "instance of sequence". Does not seem really helpful, just use a <sequence> class item which imply that its instances have a preceeded by and followed by propeties with its own range seem to be enough. For example tere is a number of patterns in owl to mode lists, see this paper for example. TomT0m (talk) 11:48, 9 March 2014 (UTC)

constraint report relating to Wikimedia disambiguation page (Q4167410)[edit]

If instance of (P31) is a Wikimedia disambiguation page (Q4167410) the presence of subclass of (P279) is prohibited

see: Wikimedia disambiguation page (Q4167410) with subclass of (P279) . Usualy there might be two possibilities:
a) please identify the non - ambiguation page (WD item) where the property subclass of should be moved;
"normally" no other statements should be left at the disambiguation page;
it can happen that a set of properties should be moved to another (a second) WD item, another set to a third WD item etc.
b) verify which language is a disambiguation page and separate it from the rest; please use Gadget-labelLister.js can be activated at preferences#gadgets to remove all faulty descriptions after the disambiguation page is separated (the languages are de, en, fr, es, pt, pt-br, ru, sv and possibly some others).

Thanks in advance! gangLeri לערי ריינהארט (talk) 13:30, 23 May 2014 (UTC)


I've took a look at Help:Basic membership properties but I'm still not sure if Egyptian pound (Q199462) is a subclass of pound (Q339180). --Kolja21 (talk) 02:59, 2 June 2014 (UTC)

I would say, Egyptian pound (Q199462) is an instance of pound (Q339180), however this (the ??? of all currencies with "Pound" in its name in some language or those with "£" or "Lb" as a symbol - does this include all "Lira" too?) must be a subclass, not an instance of currency (Q8142)? I must admit that I'm having some difficulties regarding pound (Q339180) as class (do instances or members have something conceptual in common?), but we don't have "generic instance" as a concept of which Egyptian pound (Q199462) would be a "concretisation". -- Gymel (talk) 06:46, 2 June 2014 (UTC)
They are just instances of the class Money with pound in their name, for all I know ... Maybe they are more in common, I don't know, like Franc CFA who is indexed to Euro (French Franc in the past), we should dig into this, but in the meantime I think we should stick with instance of (P31) currency. TomT0m (talk) 22:22, 2 June 2014 (UTC)
Thanks for your comments. I've change Mozambican escudo (Q600213) in this sense. --Kolja21 (talk) 00:55, 4 June 2014 (UTC)
But what is' pound (Q339180) then and how to deal with it? -- Gymel (talk) 06:03, 4 June 2014 (UTC)
All instances of Egyptian pound (Q199462) are instances of pound (Q339180) and all instances of pound (Q339180) are instances of currency (Q8142). An instance -- i.e. a concretization -- of any of those is either an information artifact (bits in a computer) or a physical object that one can hold in one's hand. The work going on here is the construction of a subsumption hierarchy, or taxonomy, of currency. Thus, the correct relation to use between these entities is subclass of (P279), not instance of (P31). Emw (talk) 12:42, 4 June 2014 (UTC)
@Gymel: It's a good question. I think we can see moneys as physical units.
Lets open a few dictionaries : currency
Money in any form when in actual use as a medium of exchange, especially circulating paper money.
2. Transmission from person to person as a medium of exchange; circulation: coins now in currency.
3. General acceptance or use; prevalence: the currency of a slang term.
4. The state of being current; up-to-dateness: Can you check the currency of this address?
Also Money is polysemic by essence. So it may be tricky to model. One relevant definition : 2. (Banking & Finance) the official currency, in the form of banknotes, coins, etc, issued by a government or other authority
I think as an abstract term English Pound can be viewed as a class of coins and numeric values, and a unit of value measurement, but I think it's also good to treat it as
⟨ English Pound ⟩ instance of (P31) View with SQID ⟨ official currency ⟩
I think all the Pounds in this sense are official currencies, so
⟨ Pounds ⟩ subclass of (P279) View with SQID ⟨ official currencies ⟩
with the additional property that they are
⟨ Egyptian pound ⟩ named after (P138) View with SQID ⟨ English pound ⟩
. I'm not sure Emw's model is enough to model all these polysemic definitions with nuances ... TomT0m (talk) 13:13, 4 June 2014 (UTC)
TomT0m, the concept under discussion here, currency (Q8142), is clearly that of the first definition you cite ("Money in any form when in actual use as a medium of exchange, especially circulating paper money.") and none of the others.
Egyptian pound (Q199462) is not referring to an instance of currency, e.g. an individual token of money in paper, coin, or digital form. It is referring to a concept, a thing of which there are many instances (papers, coins, digital representations). Consider a property we might use for types of currency -- 'exchange rate'. That property applies to all instances of Egyptian pound (Q199462). If the 'exchange rate' between Egyptian pound (Q199462) and euro (Q4916) is (say) 5:1, then that applies to all instances of those two things. These things all suggest that Egyptian pound (Q199462) is a subclass, not an instance, of euro (Q4916). Or, as you often paraphrase away subclass of (P279), Egyptian pound (Q199462) is an instance of "type of currency"; or, as that kind of statement is conventionally made in the rest of the Semantic Web, Egyptian pound (Q199462) subclass of (P279) currency (Q8142). Emw (talk) 23:46, 4 June 2014 (UTC)
@Emw: }} Did you meant  ?
This is not that clear which definition to take into account. It's clearly very convenient and very powerful to pun this class ans consider it as a real world entity which has an exchange rate to other national monies, is associated to a (supra)national central bank. I think this is a modelling choice but there is so much to say about the (national) currencies type that they are really important items imho. Actually it is so much meaningful that dictionaries already does this punning. What we should do is reflect these two definitions in just less ambiguous ways. TomT0m (talk) 10:25, 5 June 2014 (UTC)
TomT0m, thanks for pointing out the error (I fixed it above). Regarding punning, OWL and popular modeling and querying tools like Protege automatically metamodel entities classified with subclass of (P279) as instances if they have conventional object properties like "named after", etc. on them. There is no need to redundantly, explicitly apply both instance of (P31) and subclass of (P279) to invoke metamodeling. Moreover, the fact that something is an instance of a "currency type" is clear from it being a subclass of "currency" -- such redundancy is not only unnecessary from a technical perspective, it also unnecessarily bloats the claims set for an item. Emw (talk) 12:54, 5 June 2014 (UTC)
@Emw: Well, it's not necessary if and only if we got no other subclasses. The coins in my wallet are also a subclass of Euros, but in no way this class is comparable with Euro or Pound. If we want to express that, we have to class classes by P31, explicitely because it's no harm at all and it helps contributors imho. TomT0m (talk) 15:29, 5 June 2014 (UTC)

TomT0m, of course the (hypothetical) class "euros in my wallet" is comparable to euro (Q4916)! The former is a subclass of the latter; each and every instance of the class "euro in my pocket" is also an instance of euro (Q4916).
Your vision for classification with currency and throughout Wikidata seems to involve most items having redundant instance of (P31) and subclass of (P279) claims; and most of those claims would be of the form:
  • 'A' instance of 'type of D'
  • 'A' subclass of 'B'
  • 'B' instance of 'type of D'
  • 'B' subclass of 'C'
  • 'C' instance of 'type of D'
  • 'C' subclass of 'D'
In most cases, the "instance of 'type of D'" claim is contrived -- it is not used in literature from the domain being modeled, and serves strictly as a modeling construct. This typically confuses even experienced editors. See for example Snipre's confusion about your unique perspective on modeling in Wikidata:Project_chat/Archive/2014/05#chemical_element, and the confusion from Tobias and Izno about the same in Wikidata_talk:WikiProject_Chemistry#Germanium_subclass_tree. No Wikidata editor that I know of has favorably commented on that approach to classification. Given that, the approach seems unhelpful from the perspective of human understandability, in addition to being unconventional in the Semantic Web, and technically unnecessary due to how reasoners and query engines handle punning. Emw (talk) 03:28, 6 June 2014 (UTC)
@Emw: Read the topics to the end. In the end @Snipre: agreed that this was actually simple and the right way to do, I had positive feedback from @Infovarius: just yesterday Wikidata talk:Wikiproject Fictional universes/136887403/136800428, I also had positive feedbacks on classification of administrative divisions, a pretty big discussion on Wikidata_talk:Country_subdivision_task_force also, and maybe some I forgot.
Back to the currency subject : They have nothing in common below what you mentioned and for what which I agree. But Euros and Dollars have a lot more in common : a central bank for example. This is what you fail to capture. The coins in my wallet are by themselves not really different from every euros in the planet in many case. Same goes for dollars. Which make the dollars and Euro class specials and we must tag them as such. TomT0m (talk) 09:25, 6 June 2014 (UTC)
TomT0m, where do you think Snipre agreed with you? I see him saying "Ok you are right", but the fuller sentence is "Ok you are right, you can but this should be avoided. In his last comment in Wikidata:Project_chat/Archive/2014/05#chemical_element, he says "Even if the presentation is nice, I am sorry I don't understand the principles which lead to that classification." Also, I just read through Wikidata_talk:Country_subdivision_task_force#A_3_layer_model_to_class_subdivisions_and_their_type_with_instance_of_.28P31.29_and_subclass_of_.28P279.29 (people really need to stop using the Q and P templates in section headers and making them unlinkable), and I see Infovarius giving a not-entirely-clear endorsement, and Arctic.gnome saying it "seems redundant". So, at best, I see the count as 2 editors (you, Infovarius) supporting your approach to classification, and 5 editors (Izno, Tobias1984, Arctic.gnome, Snipre, me) not supporting it.
Back to currency, instances of the concepts "euros in my pocket" and "euro" share more than the (critical) subset relation between them. If "euro" had a claim like "issued by: European Central Bank", then that would also apply to the instances of "euros in my pocket". Emw (talk) 12:58, 6 June 2014 (UTC)
@Emw: But one of this set is the complete set, the other is not. We can say "A country created a new money" refering to the whole set, and "the country printed the coins in this unit I have in my pocket in 2005". Creating a whole money is not the same as printing banknotes of that money. More prosaically : how do you query the classes of currencies which are exactly the whole currencies of some central bank with excluding "the coins in my Wallet" class? We can also query class in Wikidata, not only individuals. And this involves adding datas to classes. And typing the classes will prove very helpful. This solves problems, will disallow some classical mistakes such as classifying classes as subclasses of
⟨ Dollar ⟩ subclass of (P279) View with SQID ⟨ currencies by countries ⟩
(which does not make sense and is very common) and will be pretty clear to users by showing them the queries and the example. TomT0m (talk) 15:31, 6 June 2014 (UTC)

──────────────────────────────────────────────────────────────────────────────────────────────────── @emw: The definition of "currency" you seem to imply is "monetary assets denominated in a particular unit of measurement." This is equivalent to the first definition mentionned in en:Currency but it is not really the most common one, nor the one actually used in the Wikipedia article. To me (and I think to most economists) a "currency" is a unit of measurement (the British pound, the Euro) and it is weird to say that a 2-pound coin is an instance of currency.

To me, TomT0m's style solutions are clean and simple:

  • Egyptian pound: instance of: currency. Named after: British pound.
  • 1-pound coin: instance of coin. Legal value: 1 pound.
  • An exchange rate property only makes sense for instances of currency. There is no exchange rate between individual banknotes. The reason we can change euro banknotes into dollar banknotes, is that one has a legal value in euro, one has a legal value in dollars and there is an exchange rate between the euro and the dollar.
  • "money" (whatever it means) needs not interfere here. --Zolo (talk) 20:03, 6 June 2014 (UTC)
Zolo, you touch on the relevant polysemy of "currency". Along those lines, I think the relevant overlapping meanings of currency are A) a unit of measurement (unit of account) and B) a set of tokens (mediums of exchange) like a British one pound coin, United States ten-dollar bill, etc. Definition B corresponds to definition 1 in and definitions 2a and 2b in
As notes, the term "currency" is both countable and uncountable. In sense A above , "currency" is countable -- one might say "Europe had 50 currencies in 1950, and 5 currencies in 2010". In sense B above, "currency" is uncountable -- that is why it is weird to say that "I have 5 currencies in my pocket" when referring to 5 euros you have in your pocket. However, if you show a 1 euro coin to a random person on the street and ask them "is this currency?" , they will correctly say "yes, of course". And tellingly, if you ask someone "how many euros is this 5 euro banknote", they will correctly say "5 euros, of course".
You mention exchange rates between "the dollar" and "the euro". Which of the euros in my pocket -- or the euros represented digitally in my bank account -- is "the euro"? That's clearly an absurd question. "The euro" is informal shorthand (synecdoche) for what can formally be referred to as "the set of all euros". The set of all euros is what euro (Q4916) describes. You are correct to say that a property like "exchange rate" would be a claim in euro (Q4916) -- however, it would be inherited by all instances of the euro. There is no euro for which the exchange rate would not apply.
These things all indicate that euro (Q4916) is a class of currency which there are instances. Like we say "the common chimpanzee is an animal" yet consider "Pan troglodytes (Q4126704) instance of (P31) animal (Q729)" incorrect, we should be consistent and also consider "euro (Q4916) instance of (P31) currency (Q8142)" incorrect, even though "the euro is a currency" is fine as an informal statement.
@Emw: My (only) answer will be : Punning class/instance is a formal Synecdoche. TomT0m (talk) 15:05, 7 June 2014 (UTC)
TomT0m, why not say "Pan troglodytes (Q4126704) instance of (P31) animal (Q729)", then? Your proposal would make classification on Wikidata fundamentally inconsistent. Emw (talk) 15:14, 7 June 2014 (UTC)
Actually this was a bad answer indeed, I wanted to delete it, too late now :).
Instead I could have quoted A definition of intermediate generality is that a currency is a system of money (monetary units) in common use, especially in a nation. I would, totally respectfully, ask you who you are to distribute good and bad point on formal or informal definitions ? This definition is formalizable on Wikidata, totally correctly. Any choice beetween the definitions is arbitrary, or more precisely is to fit your personal view of what a Wikidata model should be. I claim by this process you create more problems than you solve. If we can translate correctly this definition, amongst other, in Wikidata, this is our NPOV duty to do this. None of this definitions are better than the others, and there is no technical reason to do so. The only conditions whe should ensure is that if the defintions are not equivalent or compatible we use different items. TomT0m (talk) 15:28, 7 June 2014 (UTC)
That definition from English Wikipedia isn't in the referenced source, TomT0m. Here is how the source actually defines "currency":
A generally accepted form of money, including coins and paper notes, which is issued by a government and circulated within an economy. Used as a medium of exchange for goods and services, currency is the basis for trade.
Definition of 'Currency', Investopedia
This definition is clearly closer to the "most specific" definition that Zolo mentioned I've been using, which indicates that a currency is class of things. Also, note how the English Wikipedia article goes on to say "Under this definition, British pounds, U.S. dollars, and European euros are different types of currency, or currencies." (Emphasis mine.) Here we see that Wikipedia considers currencies to be types. Types are classes, and classes are classified using subclass of (P279).
The definitions in sources primarily talk about currency as a "medium of exchange". What are some instances of those mediums? Physical coins and paper notes, among others. A particular dollar might be depicted by (P1299) a photograph; the thing being depicted is an instance, but the photograph is probably being used in a resource that describes all such instances -- e.g. the class United States dollar (Q4917).
Your suggestions about violating NPOV are the most esoteric invocations of that concept on Wikimedia, ever. The ontological nature of currency is not some hotly debated issue among sources. The idea that a set of instances is better classified with subclass of (P279) than instance of (P31) is in line with Semantic Web conventions. With punning, we can interpret any item that has a 'subclass of' claim as an instance as needed; we don't need a bunch of redundant 'instance of' statements as you propose. Emw (talk) 17:39, 7 June 2014 (UTC)
@emw. Human language/concepts are often messy, sometimes we just need to settle on a formal definition that does not encompass all usages of a term. As far as I understand, your definition of "currency" makes it a synonym of "money", which does not seem especially useful. My proposal is to define currency as a monetary unit of measurement, which is one of the definitions used in every day speech, and one that may make thing fall nicely into place:
  • "euro" is an abstract concept. There can be no physical materialization of the "concept of euro" just as there can be no materialization of the concept of meter. If you have 1000 € in your bank account, it is not in any way a material reality. If all the computers in the bank crash, but you can show that you had deposited the money there, then you still have the ownership of this money, regardless of the form of the proof. Your possession of the money is independent of its material embodiment.
  • Saying "I have euros in my pockets" and "I have currency in my pocket" are figures of speech the could be roughly translated as "I have coins denominated in euros" and "I have money denominated in a (valid) currency". Calling a 1 euro coin an "instance of euro" does not sensical to me (and a 200 euro banknotes should be "200 instances of euros" ?)
  • The exchange rate is really a property of the euro as a unit, just like the conversion factor between the miles and the kilometers. Using my definition above, there can be no "instances of euro", which actually makes the concenpt of "set of all euros" nonsensical (just as the "set of all kilometers"). --Zolo (talk) 18:00, 7 June 2014 (UTC)
@Emw: The instance of (P31) statements are not redundant if we refer to a subclass of the Class class. Which is really useful. TomT0m (talk) 18:09, 7 June 2014 (UTC)
TomT0m, no, they are redundant, and invalid in OWL. First, a subclass of (P279) claim alone is sufficient to infer that the subject is a class. As the definition of rdfs:subClassOf says, such items are implicitly instances of rdfs:Class. Second, it is invalid to assert in a Wikidata instance of (P31) or subclass of (P279) claim that an item is a class as it concerns those properties (i.e. rdfs:Class, to which I assume you're referring by "the Class class"). rdfs:Class is reserved vocabulary, and thus fundamentally different than any item on Wikidata, even those labeled 'class'. Emw (talk) 18:36, 7 June 2014 (UTC)
@Emw: (Just on the validity) you migh be right. But there is at least approaches to do so : see this paper for example (just found on google). And if it is just this, we can have our own Class class with no OWL semantics. Per Micru's discussion with Markus_Krötzsch the recent thread on the mailing list you should see it will be difficult to strictly enforce a OWL or RDF semantics with out statements and properties.
For the usefulness I provided a lot of examples, a lot of correct solutions to actual problems, and I asked a few questions on this thread that are unanswered by you and problems for which you did not provide answers. There is actually frustratingly no new things in your posts ... TomT0m (talk) 19:06, 7 June 2014 (UTC)

──────────────────────────────────────────────────────────────────────────────────────────────────── TomT0m, the 2007 paper OWL-Full Metamodeling with SWCLOS by Koide and Takeda that you linked discusses its assertions in the context of OWL Full, which is not decidable. Semantic Web efforts in OWL typically avoid OWL Full in favor of OWL 2 DL. Motik's 2007 paper On the Properties of Metamodeling in OWL, which was the basis of metamodeling in OWL 2 DL, holds that allowing "axioms about the built-in vocabulary" like (A, rdfs:instanceOf, rdfs:Class) makes an ontology undecidable. This is reflected in the OWL 2 Structural Specification in Section 5.1 about classes: "IRIs from the reserved vocabulary other than owl:Thing and owl:Nothing MUST NOT be used to identify classes in an OWL 2 DL ontology." In other words, all individuals or classes in the Wikidata ontology must be instances or subclasses of owl:Thing, which is mapped to entity (Q35120). Mapping any Wikidata item to rdfs:Class is invalid in OWL 2 DL, the subset of OWL with favorable computational properties. The W3C recommendations suggest that owl:Thing ("entity") be the top concept, and state that all classes are a subclass of it.

I've read the 'What is the point of properties?' thread on wikidata-l. I don't see Markus saying it would be especially difficult to enforce OWL semantics in Wikidata statements and properties. Certainly nothing is mentioned about the topic of redundantly classifying entities in the pattern "A subclass of B, A instance of type of C, B subclass of C".

I don't see a lot of examples or purportedly solved problems or questions from you in this discussion -- I see one. You ask "how do you query the classes of currencies which are exactly the whole currencies of some central bank with excluding "the coins in my Wallet" class?" The query would involve selecting the subclasses of currency that do not satisfy the claim "location (P276) my wallet". Or you could use a query like this, or simply query without inferencing.

By using figures of speech like synecdoche as Zolo does, we may speak around the plain fact that a 1 euro coin in one's pocket is a euro, or that a 5 euro note is 5 euros. Those tokens are instances, manifestations, concretizations of that abstract thing euro (Q4916). The exchange rate for the currency applies to the coins and notes: if you go to a currency exchanger and give them X euros as instantiated in coins and notes, then they can give you Y dollars as instantiated in coins and notes based on the exchange rate X:Y stated for the two respective sets of all instances of such coins and notes.

Perhaps considering another example of currency is helpful. Gold is a currency, according to Investopedia, the source cited for Zolo's preferred definition of "currency". "Gold" is an abstract concept, but it has instances that you can hold in your hand. It is also used as a medium of exchange and a unit of measurement -- see gold standard. Is a nugget of gold not an instance of gold?

Considering usage of the term "currency" from other sources is also informative. For example:

Each year, the Federal Reserve Board projects the likely demand for new currency, and places an order with the Department of the Treasury's Bureau of Engraving and Printing, which produces U.S. currency and charges the Board for the cost of production.
How much does it cost to produce currency and coin?, Board of Governors of the Federal Reserve System

This usage -- from one of the most reliable sources on the subject -- suggests that the "currency" of the United States is the set of all banknotes and coins issued by the government. I have also shown how the definition Zolo cites is not actually in the source cited, and how that source's definition is actually closer to the one linking currency with banknotes and coins. Emw (talk) 03:47, 8 June 2014 (UTC)

I won't reply on details right now, just a few remarks on your points now.
  • I found the paper by Markus and al. about Wikidata RDF export informative. Did you read it ? This is the only usable way to use Wikidata models with the semantic web technology. And it enlights a few problem. We are far from having a valid OWL (on any kind) export.

The paper -- Introducing Wikidata to the Linked Data Web -- is indeed informative. The exports, which contain OWL, are available here: They don't seem to be valid OWL 2 DL, but exploring the files in Protege is neat. I don't see anything to indicate that a valid, albeit perhaps simplified, OWL 2 DL export is far away. Emw (talk) 13:29, 8 June 2014 (UTC)
  • I agree with you this should not stop us to esae the OWL exports. What make me sad is that you are still confusing OWL and OWL2 ! This is an example of metaclass in OWL2 OWL2 full does not exist, the most powerful version of OWL2 is OWL TR
Don't be sad, TomT0m! I am obviously aware that OWL 2 allows a limited form of metamodeling via punning. You're wrong about OWL 2 Full; it does exist, and is generally considered the most "powerful" (i.e., expressive) version of OWL. Also, the OWL TR subset you refer to does not exist. Perhaps you're confusing the "TR" in the specification URL, which stands for "technical report", with a version of OWL. Emw (talk) 13:29, 8 June 2014 (UTC)

  • Third I don't really care about wich lexical word is attached to which concept, this is not because currency is basically a synonym of money that introducing a metaclass is not interesting. Finally seems are way more subtle in the semantic web world. [1] There is a continuum of tools, different flavors of OWL, a lot of them beeing decidable. Plus all of this is reasearch beeing done and what we say right now might not be true tomorrow. Standards have often difficulties to be really applied in a moving environment and are often too late. Actually when we say that
    ⟨ human ⟩ instance of (P31) View with SQID ⟨ species ⟩
    , we already use metaclasses.
What? This ungrammatical stream of consciousness writing of yours is too tangential and difficult to parse. Again, I am aware of the metamodeling going on in biological taxonomy. (Do you not recall our long discussions with that group about this?) The fact that punning makes sense in one case does not mean it is sensible in all cases. Emw (talk) 13:29, 8 June 2014 (UTC)
  • Last thing : as using metaclasses will just add information to the subclass tree, this won't disallow to export a subset of the Wikidata dataset excluding some fragments incompatible with some feature of whatever language you want to export to.
  • Actually I'd like you to read (just found on google): this from page 109, a paper where a review of the subject is beeing done proving metaclasses are probably not a big unsolvable issue. TomT0m (talk) 10:52, 8 June 2014 (UTC)
UPDATE (and @Emw:) Actually wrong paper, pulling the string I found Integrated Metamodeling and Diagnosis in OWL 2 Which says everything I try to say for months very clearly IMO in the introduction. (I did only read the beginning right now but this is a legitimation of all I say for month and should be read by all

Achim Raschka (talk)
Andrawaag (talk)
Brya (talk)
CanadianCodhead (talk)
Dan Koehl (talk)
Daniel Mietchen (talk)
FelixReimann (talk)
Infomuse (talk)
Infovarius (talk)
Jean-Marc Vanel
Joel Sachs
Josve05a (talk)
Klortho (talk)
Lymantria (talk)
Mellis (talk)
Michael Goodyear
Mr. Fulano (talk)
Nis Jørgensen
Peter Coxhead
Andy Mabbett (talk)
Prot D
Rod Page
Strobilomyces (talk)
Tommy Kronkvist (talk)
Tris T7 TT me
William Avery
Culex Pictogram voting comment.svg Notified participants of WikiProject Taxonomy :) TomT0m (talk) 11:48, 8 June 2014 (UTC)

You keep making the same point, while ignoring or dismissing the content of my previous post. Yes, as we have discussed for, like, a year, metamodeling is valid and makes sense in certain cases like biological taxonomy. Perhaps metamodeling makes sense with currency, perhaps not; I don't think we need to belabor the fact that metamodeling in OWL 2 is technically valid any further. Your vision for metamodeling is much more pervasive, as indicated in Wikidata:Project_chat/Archive/2014/05#chemical_element. That is where everyone I've seen comment on the issue disagree with you. It would be nice if you specifically addressed some of the points in my previous post without going off on mostly unrelated tangents like this. Emw (talk) 13:29, 8 June 2014 (UTC)
I don't see anything new or even unadressed in your preceeding post. There is nethertheless unadressed questions I asked for you did not, mainly : how do you model that Dollar or Euro have a lot in common Euro and the coins in my pocket do not have ? The answer Euro and Dollar are instances of the metaclass Currencies of a country or a central bank, and the coins in my pocket is not seems really interesting and useful. You claim nobody is on the same page, I find this almost insulting for Zolo (talkcontribslogs) who makes exactly the same point ... TomT0m (talk) 23:37, 8 June 2014 (UTC)
TomT0m, if you don't see anything new or unaddressed in that post of mine, then please read it again. For your convenience, below are things you left unaddressed from my 03:47, 8 June post in your 11:48, 8 June post:
  1. Mapping items to rdfs:Class, "the Class class", is invalid in OWL 2 DL (the subset of OWL that Markus and others will almost certainly operate within) and should be avoided. The W3C recommends making owl:Thing (entity (Q35120)), not some item labeled "Class", the top concept. You had previously said "The instance of (P31) statements are not redundant if we refer to a subclass of the Class class. Which is really useful." The comments in your previous post either do not address the point in this reply of mine or are too tangential to reasonably see a connection to the point.
    Adressed. Technical implementation of metamodelling issue. I answered extensively, and I think this is a non relevant point as you acknoledged the use of some metaclass is sensible in Taxonomy. This is just another use of metamodelling who have no more problems.
    No, not quite addressed. An incomplete and very vague sentence "technical implementation of metamodelling issue" is not addressing the issue. A loosely coherent comment is not an extensive answer. This point is not directly about metamodeling. It is about the validity of statements of the form "A instance of 'B'", "B instance of Class", where Class is some item with special semantics like rdfs:Class or owl:Class. Punning is valid in the version of OWL that Markus et al. will almost certainly target exports to; statements about the reserved vocabulary like you suggest are not. You say we could perhaps have our own "Class" item distinct from the reserved vocabulary even though it would likely be treated effectively as much. This seems unworkable, and is certainly unconventional. The W3C recommends setting owl:Thing (entity (Q35120)), not some Class item, as the top class in any ontology. Emw (talk) 12:41, 10 June 2014 (UTC)
  2. You had referenced the 'What is the point of properties?' email thread as an example of why our statements and properties will be difficult to map to RDF or OWL, but that thread doesn't seem to support your point. The thread can be roughly summarized as Micru proposing exotic (but not implemented) adjustments for how we think about statements and properties and Markus suggesting that we not do that and continue operating within Semantic Web conventions. I don't see anything in that thread about how our existing statements and properties will be especially difficult to map to RDF or OWL as you say.
    Unfortunately I can't find the article, but I recommand you to read (very recent) article of Markus and al. about Wikidata rdf export which is full of information about the philosophical difficulty about doing this kind of things. There is no concrete plan that I know of to do an OWL export, and this is not easy. We should let the big boys take care about this, even if we maybe can ease the path, maybe we don't really understand the consequences of our choices. Until you read this, I won't come back on it.
Did you read the paper? Did you read my post where I spent a paragraph summarizing it and relating it to point at hand? There is zero discussion about any "philosophical difficulty" about doing an OWL export. They even essentially say they have done a basic OWL export, which you would see if you read the paper and explored the content in that I linked to in that post. Did you look at files like those in and see that they clearly have OWL elements in them? Do you have Protege installed? Have you ever explored an ontology with it? Perhaps you should do these things and then come back to it. Emw (talk) 12:58, 9 June 2014 (UTC)
@Emw: I did read pretty much everything I could find :) Missed your paragraph though. The philosophical difficulty is that Wikidata is not about truth. Statements meaning in those exports are "The source (source) says that Dollar is a currency". Not "Dollar is a currency". I did use protege a long time ago (almost ten years, time fly ...) You actually acknowledge an OWL export with a direct export giving truth semantics to statements like "<Currency> is a owl:subclass of <Dollar>" will not be simple, of though of course it's a lot easier to build an export which say "the source says <Currency> is a owl:subclass of <Dollar>". I know the export also exports "<Currency> is a wikidata:subclass of <Dollar>", but this is far from having an OWL semantic. These are different levels of truth. OWL axioms on owl:subcass of statements do not apply to "wikidata:subclass of" statements. So from everything I have seen up to now, we're not speaking of reasoning at the same truth levels knowledges when we say <Wikidata:Currency> <Wikidata:subclass of> <Wikidata:Class> is definitely not translated into <Wikidata:Currency> <owl:subclass of> <owl:Class>. TomT0m (talk) 13:14, 9 June 2014 (UTC)
TomT0m, let's review. You said the 'What is the point of properties?' thread on wikidata-l was an example of how our statements and properties will be difficult to map to RDF or OWL. I explained how that wasn't supported by your citation. You then claimed that the Introducing Wikidata paper supported that claim and the notion that there is some "philosophical difficulty" in doing so. Again, I explained how that wasn't supported by your citation. You then go on an unsubstantiated discourse about how, no, really, there is a philosophical difficulty in doing an OWL export, backed by an argument that is filled with careless, egregious errors. When points of yours are rebutted you simply dismiss the point as "uninteresting", "irrelevant details", etc. or ignore it altogether. Your consistently careless reading and often sloppy and dismissive arguments make constructive dialog difficult.
First and foremost, instance of (P31) and subclass of (P279) have the semantics of rdf:type and rdfs:subClassOf. The axioms that apply to rdfs:subClassOf also apply to P279 and vice versa; the axioms that apply to rdf:type also apply to P31 and vice versa. This was a core premise in the community discussion to delete P107 and remains a foundation in the Wikidata ontology. Your wanton redefinition of key properties that have been established for most of Wikidata's life has no effect. Start an RFC if you want to seriously assert that P31 and P279 do not have the semantics of rdf:type and rdfs:subClassOf.
Second, if you had actually taken a few minutes to familiarize yourself with relevant details as I had asked, instead of throwing together a hasty, error-littered reply, then you would have seen that the Introducing Wikidata paper maps P31 to rdf:type and P279 to rdfs:subClassOf and discusses the conceptual taxonomy constructed with that definition at length, and comments on the fact that those mappings exist rather favorably. If you would please take a moment and install Protege and explore the Wikidata concept taxonomy, you will see that that ontology also maps instance of (P31) to rdf:type and subclass of (P279) to rdfs:subClassOf. Again, please do these things and then come back to the discussion. Perhaps after you have actually read through and familiarized yourself with the material you cite, we can discuss your other novel ideas. Emw (talk) 12:41, 10 June 2014 (UTC)
I think this are easily solvable problem as OWL2 supports punning, so in any way the problem is not technical here. If the Wikidata Class class is ever mapped to the OWL2 Class class maybe I will rethink it, but in the meantime I'm not interesting into this problem. TomT0m (talk)
That reply has nothing to do with the comment that preceded it. Perhaps you meant to reply in the sub-thread above this. Please move your comment if so. Even there I think you're not right, but your comment as stated is not even wrong. Emw (talk) 12:36, 13 June 2014 (UTC)
  1. You did not address my reply to your only actual question to me, "how do you query the classes of currencies which are exactly the whole currencies of some central bank with excluding "the coins in my Wallet" class?". You insist that you have asked me "a lot" of questions when you have actually only asked me one question (and, in your post above, a new question, which I address below).
    Missed it /o\ I answered too late last night maybe. The immediate subclasses solution is not robust as the tree is big, moves, and that we can add other different subclasses such as
    ⟨ Collection Currencies ⟩ subclass of (P279) View with SQID ⟨ Currency ⟩
    . If we have only one subclass tree, this means this is a general problem who has to be addressed again and again. This is very similar to the problems in taxonomy : some of the classes are taxons, clades ... (it is taxonomy indeed, just not biological one). We took the generic path, let's use generic solution : metamodelling.
    You are conflating a generic solution with a universally sensible solution. In other words, you see explicit metamodeling as a hammer and seemingly all of classification on Wikidata as a nail. Most classification is not a nail, even though some classification, like biological taxonomy, might be. (I would note, however, that the millions of "instance of: taxon" claims are redundant with the "taxon rank" claims, which should have the domain 'taxon' and thus trivially enable instance retrieval for taxons.)
    Generic solutions are useless if they have only one usecase. However there is more than one. And it is ABSOLUTELY not conflicting with the solutions you propose. TomT0m (talk)
    Hammers also have some other use cases; that does not mean hammers are a universally sensible tool. I assert the same is true with explicit punning in classification. Do you think that all items that have a subclass of (P279) should have a instance of (P31) statement? Please include a "yes" or "no" in your answer, and carefully, coherently explain why. Emw (talk) 12:36, 13 June 2014 (UTC)
    Querying the immediate subclasses of currency is no less robust than querying the instances of a metaclass "currency". You say the subclass tree is volatile. I see no reason to believe that the metaclass tree would be less volatile. Additionally, in the particular case of currency, modeling the concepts as "instance of: currency" is not semantically robust -- it A) ignores major currencies like gold and silver and B) uses a definition of "currency" that is not preferred among reliable sources. Emw (talk) 12:41, 10 June 2014 (UTC)
    It IS more robust. There is no semantic reason for which a direct subclass is what we intended it is. But a metaclass is better defined. There is a lot of subclasses of living entities in biological taxonomy, but clades are well defined and are only a small part of those subclasses. TomT0m (talk)
    In the thread in point 2, I established that what you simplify to "currency" is actually to "type of currency". Thus there is no reason beyond convention to not make any type of currency an instance of the metaclass "type of currency". This is no more semantically robust than using "subclass of" for those claims, although this latter option is simpler and more in line with the weight of reliable sources. Emw (talk) 12:36, 13 June 2014 (UTC)
    I really think this is the only point adressing so I'll focus on this. We don't understand ourself on that, this also shows on the discussion on wikidata-l on the same topic. No, I don't refer to any type of currency here. We can refine this by classing the type of currency class. For example Collected currencies is a type of currency. Clearly it is another classification axis compared to Euros or Dollar. This we can model by creating subclasses of <type of currency>, Euros or Dollar being an instance of something like Currency of some state, Collected currencies is not. This is not easy to model in a subclass tree. I'll ask you to try and give concrete models with this three classes, then we can continue. TomT0m (talk) 15:11, 13 June 2014 (UTC)
  2. You did not answer my question about whether a nugget of gold is an instance of gold, and you left the statement that "gold is a currency" unaddressed. These were introduced to establish that at least some currencies have physical instances. This implies the axiom "gold instance of currency" is imprecise and that "gold instance of 'type of currency'" is more precise, while I maintain that "gold subclass of currency" would be preferable among these three statements. This leads us to a central question: whether "instance of 'type of X'" or "subclass of 'X'" is a better approach to the classification of currency.
    false dichotomy. TomT0m (talk)
    Actually this is a problem of currency type. I don't really care about the gold problem, I know it's not the same type of currencies I or you use every day. And that metamodelling is convenient to model and query these things.
    About your question : this is a non problem if we can use both, as I told kind of many times. This is a non dichotomy, similar problem as in Biology :
    ⟨ Living Thing Human ⟩ subclass of (P279) View with SQID ⟨ {{{2}}} ⟩
    ⟨ Human ⟩ instance of (P31) View with SQID ⟨ Species ⟩
    are not to say basically the same things.
    You acknowledge that we use "types of currency" like the euro or dollar every day. So shouldn't we be saying "euro (Q4916) instance of (P31) type of currency (Qx)" instead of "euro (Q4916) instance of (P31) currency (Q8142)", as the weight of definitions in reliable sources prefers? Also, the inability of your proposed solution to account for gold is a major flaw. Emw (talk) 12:41, 10 June 2014 (UTC)
  3. You did not address my point that the definition of currency that you and Zolo favor is actually not supported by cited sources, and that the definition I favor is.
    I'm not really interested. Because wikidata supports many definitions, all we need is enough classes and model tools to deal with the classification of stuffs. Actually if gold is a currency (which I don't really care about), then you just advocate for powerful enough tools to maintain a distinction beetween euros and gold. I may answer the other part of your post later, can't find the courage right now :) TomT0m (talk) 10:15, 9 June 2014 (UTC)
    Wikidata supports many statements about an item, but one is preferred. The preferred statement for an item should be that one with the most weight in reliable sources. As I have shown, definitions from reliable sources more closely align with the statement "United States dollar (Q4917) subclass of (P279) currency (Q8142)" than "United States dollar (Q4917) instance of (P31) currency (Q8142)". Emw (talk) 12:41, 10 June 2014 (UTC)
    It does not change anything. It does not imply consistency (at the OWL direct classification) beetween preferred statements. This is why the paper about metamodelling I found is really interesting : they mention a way not to make everything unconsistent, but instead put inconsistencies as annotation of the model, pretty much like our constraints reports of the maintenance categories. TomT0m (talk) 15:55, 10 June 2014 (UTC)
    I hadn't considered that reliable sources could prefer one statement that contradicts another, which would not be trivially caught by statement ranks. For example, if source Foo supported "A subclass of B" (statement 1) and less reliable source Bar supports "A instance of B" (statement 2), we are not compelled in the UI to choose between those two statements as we would be if Foo had supported "A subclass of B" and Bar had supported "A subclass of C". Nevertheless, if reliable sources support statement 1 more than statement 2, then I would assert that statement 2 should be marked deprecated, or perhaps not made at all.
    If the "paper about metamodeling" you refer to (we've talked about multiple metamodeling papers) is OWL-Full Metamodeling with SWCLOS, then, again, I think your point is negated by the fact that OWL Full not the version of OWL that Wikidata operates within. That paper's assertions hinge upon making a given class an rdfs:subClassOf rdfs:Class, which is prohibited in OWL 2 DL. Emw (talk) 12:36, 13 June 2014 (UTC)
    No, I'm referring to Integrated Metamodeling and Diagnosis in OWL 2, the paper I linked on wikidata-l this time. Plus I don't really see any real reason to restrict ourselves here, some parts of the model can be ignored without big damages, and even if decidability can be tricky, using OWL2 full does not even imply we build something undecidable. TomT0m (talk) 15:11, 13 June 2014 (UTC)
Regarding the idea that "nobody is on the same page", if you review my previous post, you will see that I am referring not to the question about currency, but to your broader preference to use modeling constructs like you propose with chemical elements, the general form of which I outlined in my 03:28 6 June post, which you left unaddressed. Note that this is separate from the question of metamodeling in biological taxonomy, where there is general agreement that punning is sensible. This relates to point 4 above. If we accept that notion that subjects like "euro" are precisely "types of currency", then the question becomes whether we should A) apply your approach to modeling chemical elements as "instance of 'type of atom'" -- with which noone seems to agree -- to currency and say "euro instance of 'type of currency'", or B) apply the solution used by major ontologies in this kind of situation and say "euro subclass of currency".
You say that I did not address your question "how do you model that Dollar or Euro have a lot in common Euro and the coins in my pocket do not have" You had never actually asked that question before, although I did answer a similar of yours (see point 3 above), which you have not addressed. Nevertheless, regarding this new question, it's unclear what you're actually asking, because the question is grammatically mangled and conceptually vague.
Your proposed solution to that question: "Euro and Dollar are instances of the metaclass Currencies of a country or a central bank, and the coins in my pocket is not" seems to be a new modeling proposal. The approach that Zolo supports (I think misguidedly) is "euro (Q4916) instance of (P31) currency (Q8142)", not "euro (Q4916) instance of (P31) currency of a country or a central bank (Qx)". Also, your solution seems to contradict the definition of currency supported by the preponderance of sources -- it seems to entail that the coins in your pocket are not a subclass or instance of currency (Q8142).
My proposed solution to that is in my reply to you referenced in point 3 above. It accounts for the definition of currency preferred in reliable sources. It also accounts for the common idea that, for example, a 5 euro coin is currency and that a 1 United States dollar banknote is currency. Finally, my proposed solution accounts for querying things like "euro" or "US dollar" in a way that excludes subclasses or instances of those concepts like "euros in my wallet". Emw (talk) 04:08, 9 June 2014 (UTC)
@emw:. In a legal context, "currency" seems to usually mean
"paper money + coins". (def 1)
In some context, it means:
"a widely accepted form of money" (def 2)
I do not think the Investopedia requirement that it should be issued by a governement makes total sense for this particular definition of meny. It is commonplace to call bitcoins an "alternative currency".
But are these definitions enough ?
How do we model "a 2-dollar bill is a banknote worth 2 dollars" ? Let's start:
statement 1:"2 dollar bill" subclass of currency (def 1) (or currency (def 2))
statement 2: value: 2 <unit: US dollar>
Now I need to document somewhere what "US dollar" means. Statement 2 implies that is an instance of unit of count. A unit of count with some peculiar twists because you can't convert USD into EUR the way you convert miles into kilometers, but an unit of count of sorts nonetheless. If it was not, I just do not see what a value of 2 dollars means.
Do I want to call this sort of unit of count a currency ? I certainly think so. We commonly say that the USD is a currently, and this is the only definition of currency for which I see this making sense. But if you want to call that differently, that does not make much difference. Really my main point is that we call the dollar an instance of a unit of count for money, everything becomes much simpler, and from all I can see, more consistent. --Zolo (talk) 13:39, 8 June 2014 (UTC)
USD is a currency unit, it inherits all "peculiar twists" from that class, if it would be allowed to be a subclass of currency unit. Tamawashi (talk) 15:16, 10 June 2014 (UTC)

Sad to see at Talk:Q4916 that Euro has no parent class. Modeling broken. It could inherit a lot from "currency" if it would be a subclass of currency. Also, currency and currency unit might be two concepts, not?

  • unit -> currency unit -> euro|cent -> 2 euro coin -> French 2 euro coin from year xy -> French 2 euro coin from year xy in my wallet
  • currency -> euro -> euro currency in my wallet -> euro currency in my wallet that belongs to me|to someone else

Maybe all P31 should be replaced with P279. Tamawashi (talk) 06:49, 10 June 2014 (UTC)

Hi Tamawashi and welcome on Wikipedia. For an help about classes and instances see Help:Basic Membership Properties and the in redaction new helpage (by the way, Emw (and others) feedback and contributions welcomes). TomT0m (talk) 10:53, 10 June 2014 (UTC)
Creating a new "currency unit" and yet another currency (def 1) as I called it above seems like a good idea. With that tweak done, I would suggest that we use the model I was proposing above (that is: EUR instance of currency unit and 2-EUR coin a subclass of currency (def1). That really sounds like the simplest and most explicit solution to me. --Zolo (talk) 18:07, 10 June 2014 (UTC)
Eurocent and Euro then are units of the currency Euro. The Eurocent-coins and the Euro-coins/banknotes are somehow related to the units. It should allow for non-physical units. I would like to hear how Emw would model this. Tamawashi (talk) 02:07, 11 June 2014 (UTC)
Tamawashi, I would see how the Basic Formal Ontology (BFO 2) models units (I believe they're classified as "quality"), and see if that can be roughly applied to currencies, while still accounting for the fact that "currency" is considered a material entity by major reliable sources. Also, welcome to Wikidata. Emw (talk) 12:58, 13 June 2014 (UTC)

P279 on Wikimedia Category pages[edit]

Constraint violations and tree duplication, see Talk:Q4167836#P279 on Wikimedia Category pages. Tamawashi (talk) 18:15, 11 July 2014 (UTC)

is it possible to use the more expressive semantics? I mean OWL properties[edit]

I would like to use OWL properties, such as owl:SymmetricProperty, owl:ReflexiveProperty, etc.. is that possible? how to make this possible (more user friendly and intuitive) ?

Hi, Wikidata was originally meant as a plain data repository, to share data for Wikipedia infoboxes; we are in the process of making it a bit more OWL-compliant, by adding properties to properties themselves, see Wikidata:Property_proposal/Property_metadata#Metadata_properties. We added aliases for relations that are already supported by existing properties (such as rdfs:subClassOf and rdf:type). More characteristics, like inverse and symmetric, have been planned but require more on-going development, like Bugzilla73302. Be patient, it shall come within a couple more months. -- LaddΩ chat ;) 18:30, 15 November 2014 (UTC)

invalid constraint ![edit]

About this existing constraint:

"Target items of subclass of (P279) should have a statement with subclass of (P279): If [item A] has this property with value [item B], [item B] is required to have property subclass of (P279).

This constraint is clearly invalid ! This kind of constraint for P279 ([item A] is subclass of [item B]) must not give the same property P279 for the reverse direction (this would mean "[item B] is subclass of [item A]", which is stupid here) !

Really you need another reverse property "has subclass(s)" aka "derived class(es)" (Pxxx) and then it would have been writen this property as :

"Target items of subclass of (P279) should have a statement with has subclasses (Pxxx): If [item A] has this property with value [item B], [item B] is required to have property subclass of (P279)".


  • If Pxxx is present in declarations for [item B] its target should be directly [item A] (certainly not a parent class of [item A], not a subclass of [item A]), it should list only its direct subclasses, not subclasses of subclasses.
  • The same last remark can be saif about P279: it should really list ONLY the direct parent class, not an ancestorclass of its parent class.
  • The absence of the reverse property in [item B] (the parent class) is generally not an error (though it could be listed in a bot generated list about warnings, see the term should).

As a consequence, all "violations" found in "Wikidata:Database reports/Constraint violations/P279#Target required claim P279" are effectively wrong (but the only classes that currently do not violate this constraint, are those needlessly referencing themselses: "[item A] is subclass of [item A]"). Simply, this property is incorrectly defined with an incorrect constraint. Even the "Special page" that checks constraints for P279 detects 2 violations in the constraint definitions (notably the violation for "inverse constraint")!

Delete this bad constraint, as long as you don't add a new inverse property; and don't add it again unless you can effectively reference its real inverse property !

Verdy p (talk) 13:35, 3 March 2016 (UTC)

There is not said anything about inverse linking. Matěj Suchánek (talk) 13:47, 3 March 2016 (UTC)
As I understand it, [item B] with P279 would have a value [item C], not value [item A]
--- Jura 13:48, 3 March 2016 (UTC)
Even with [item C] (distinct from [item A]), this is also wrong. Look at all classes whose given parent is a root class, that has itself no parent, or whose parent is just a generic "class" element, that also has no parent ! Verdy p (talk) 13:55, 3 March 2016 (UTC)
See: Special:ConstraintReport/P279. There is something said about inverses ! Verdy p (talk) 13:57, 3 March 2016 (UTC)
Guy, this is about the page Property:P279 itself. The "Inverse" violation is with subclass (Q3965271). Matěj Suchánek (talk) 14:00, 3 March 2016 (UTC)
subclass (Q3965271) is still an element/topic, not a property. We still don't have any inverse property.
However, look at has part (P527), which however specifies another inverse property part of (P361) but not this subclass of (P279)). The current description of part of (P361) in English currently allows using it for classes and not just for instances. For this reason, many inverse relations have been made using part of (P361) instead of subclass of (P279), just one of them, or both). Verdy p (talk) 14:38, 30 September 2016 (UTC)

Also known as[edit]

⊂ (⊆). Opposite of: ⊃ (⊇) --Fractaler (talk) 07:48, 26 October 2016 (UTC)

I suggest to use a complex constraint for seemingly equal (P460) items[edit]

God (Q190) and deity (Q178885):

  1. are almost equal
  2. claimed as P279=Q15619164

IMO only one item of Q190 should be used in subclassof relations. Other synonyms (from P460) e.g. Q178885 shouldn't use subclasses of base item (Q190). d1g (talk) 08:02, 1 May 2017 (UTC)

A baryon is not necessarily a proton[edit]

When I read the defintion of a baryon, it cannot be a subclass of proton. Consequently one of the examples given is problematic and consequently its logic. Thanks, GerardM (talk) 18:58, 22 May 2017 (UTC)

@GerardM: It's the other way around: protons are subclasses of baryons. -- LaddΩ chat ;) 19:40, 22 May 2017 (UTC)
@Laddo: a proton is a hadrion it says. Is the fact that it has only three quarks enough to legitimise a subclass? Thanks, GerardM (talk) 05:12, 23 May 2017 (UTC)
@GerardM: baryon (Q159731) is itself a subclass of hadron (Q101667). Have a look at this diagram. The simple rule of thumb, for using P279, is: if you can say "A" is a type of "B", then "A" is a subclass of "B". Easier to catch this way, I believe. -- LaddΩ chat ;) 13:12, 23 May 2017 (UTC)
The problem is that you can make many such assertions and consequently have an exploding class system. It is so arbitrary. When you decide on a concept like "megacity" some cities fit that bill. The question is what is the purpose of this concept what is the added value and so far I am not convinced with this hadron / baryon example. It is too artificial, it is a word game but no noticeable purpose. Thanks, GerardM (talk) 16:08, 23 May 2017 (UTC)

should we use subclass of (P279) human (Q5)?[edit]

⟨ artist (Q483501) View with Reasonator View with SQID ⟩ subclass of (P279) View with SQID ⟨ human (Q5) View with Reasonator View with SQID ⟩

Is it really useful? d1g (talk) 17:56, 13 June 2017 (UTC)

Imho, person (Q215627) is better, but I don't vote for usefullness. --Infovarius (talk) 10:19, 14 June 2017 (UTC)
An artist is a human. To me that is correct. -- LaddΩ chat ;) 01:06, 15 June 2017 (UTC)
And Q28361073 is a human. Q28361073 is person (Q215627)? human fetus (Q26513)? --Fractaler (talk) 08:12, 15 June 2017 (UTC)
That would be stupid because fictional people can also be an artist. Thanks, GerardM (talk) 08:18, 15 June 2017 (UTC)
artist (Q483501) - "person who creates, practises and/or demonstrates any art". "fictional people" is a person? --Fractaler (talk) 13:28, 15 June 2017 (UTC)

Finding mismatched[edit]

Need advise on this one :

Here is a query where the instance of is used where subclass should be used, except for

  • Q28872924 second order metaclass Q751708 village in the United States
  • Q18681579 is a instance of a German railway station categories, but subclass of trainstation.
  • Q3323404 is instance of List, subclass of Italian national heritage, used as heritage status property.
  • Q1363666 is a disambig page, I added as a subclass of homes of jesuits. Article is basically a list.
  • Q6646177 lists of buildings in ireland, this is used as instance of for the buildings to express membership. This will be a lot of edits.
  • Q11702863 had only one member, and I removed it.
  • Q1901057 list of market halls in Berlin. removed instances.

The others in this query look like they would need to be converted from P31 to P279, is there a bot to do it?

PREFIX wd: <>
PREFIX wdt: <>
PREFIX wikibase: <>
PREFIX bd: <>
SELECT DISTINCT ?type ?typeLabel ?type2 ?type2Label 
     ?obj wdt:P149 ?style. 
     ?obj wdt:P31 ?type.
     ?type wdt:P31 ?type2.   
     values ?type2 {            
      wd:Q550637 }}   
   SERVICE wikibase:label {
     bd:serviceParam wikibase:language "en" .}} 
type typeLabel type2 type2Label Haubarg farm wall architectural element kindergarten field of work European Heritage site award lintel architectural element window architectural element mill pond surface water Demesne concept niche architectural element Stone Corral animal husbandry cross symbol music hall hall human common name Community center (religion) Gospel Hall dwelling concept Central Building architectural element YMCA international organization Meierhof farm commandry concept laundry room room abreuvoir perceptible object Desert castles archaeological site Motel album cruciform church design (of buildings) covered passages of Paris pedestrian zone Ice cellar Speicher Stations of the Cross trail Siege tower siege engine arch architectural element epitaph literary genre column architectural element wine cellar Pantry Frisian farmhouse farm palace complex ensemble of buildings equestrian statue genre of sculpture Provost Church administrative centre colonnade building component concert hall music term wall structural system business enterprise type of organisation Methodist Church in Singapore Christian denomination College of Music educational institution dome roof shape Demesne estate in land Capilla de la Virgen de Loreto churches with name of patron saint Convent Church Vechta convent obelisk monument Premium railway station Polish rail station categories St. Benard's church churches with name of patron saint Signalling control device établissement public type of business entity sacristy building component steeple building component cloister building component parliament political institution Holy Trinity column monument crypt building component pagoda roof shape Eastern Orthodox Church religious denomination cable-stayed bridge bridge by structural type colossal statue genre of sculpture Christian Church Christian denomination mixed-use development property Seven Wonders of the Ancient World monument statue genre of sculpture slaughterhouse facility covered passages of Paris covered passageway Ice cellar cold store seat farm business enterprise choir tower building component point of interest geometric concept burial vault building component De Bijenkorf business enterprise tunnel underground building Collegium educational institution Casal single-family detached home equestrian statue artistic theme baptistery building component osakeyhtiö type of business entity forest vegetation zone quarter designation for an administrative territorial entity buitenplaats home Cultural heritage site in Russia heritage designation Lutheranism religion Grade II* listed building heritage designation IES school windmill machine National Historic Site heritage designation human descriptive item used as unit tumulus historiographical concept group connect Quincha Q22677751 horology industry tunnel hole mill machine World Heritage Site heritage designation central station train station concentric castle fortification water castle fortification Martyrium building exchange market Bishops's Palace palace covered passages of Paris shopping mall junction station building Stadtpfarrkirche church Post Office Building post office Churches in the Roman Catholic Archdiocese of Esztergom-Budapest church Scuole Grandi of Venice organization Collegium building concert hall building Imperial Cathedral church musée de la ville de Paris museum Saint Vicelinus church church simultaneum church Presidential palace building Mendicant order church church Chapel building Convent Church Vechta church Convent Church Vechta building neoclassical architecture architectural style Schlachtkapelle church Community center (religion) building hôtel de ville building YMCA mission pagoda architectural style preceptor profession

Constraint fault[edit]

At (almost) every statement with P279 gives a constraint saying:

The value for the parameter "item" must be an item, not "QQ13406463". 
Q13406463 = Wikimedia list article (Q13406463)
How can this be solved? Q.Zanden questions? 22:33, 1 July 2017 (UTC)
Thanks all! Q.Zanden questions? 13:53, 2 July 2017 (UTC)

Inverse relation[edit]

Is there an inverse relation for "subclass of", such as "has subclass". For example year (Q577) has subclasses tropical year (Q189607), anomalistic year (Q2735933), and sidereal year (Q2281928).

No, on purpose. -- JakobVoss (talk) 00:23, 12 November 2017 (UTC)

P279 is not reflexive[edit]

This property was classified as instance of reflexive property (Q18647521) but the complex constraint

SELECT ?class WHERE { ?class wdt:P279 ?class }

Try it!

enforces the opposite. We don't have any reflexive Wikidata properties so reflexive property (Q18647521) can be deleted. -- JakobVoss (talk) 00:23, 12 November 2017 (UTC)

@JakobVoss: It is by definition. Any instances of a class is an instance of that same class. Why would you want to not reflect that fact ? Do you have a purpose ? author  TomT0m / talk page 13:39, 17 January 2018 (UTC)


"all instances of these items are instances of those items": items have instances? --Fractaler (talk) 10:09, 17 January 2018 (UTC)

Nope. This implies item about plain token/individuals are out of scope. No issue then. the domain of « subclass of » is class or metaclass items. author  TomT0m / talk page 13:34, 17 January 2018 (UTC)
Maybe I do not understand English well, but "all instances of these items" implies that "items have instances". --Fractaler (talk) 12:13, 18 January 2018 (UTC)

Confused about how "Instance of" and "Subclass of" for abstract thing[edit]

It doesn't seem to be very clear for lots of people, including me. I'm new to wikidata and I was perusing about the item "abdominal pain"

I've found: Abdominal pain is an instance of symptom, and a subclass of Pain. and on "Pain" I've found: Pain is a subclass of symptom.

Something doesn't seem right, does it? Linuxo (talk) 13:42, 5 January 2019 (UTC)

Value has statement constraint for biological classification[edit]

At the moment we have the value requires statement constraint (Q21510864) that the value must also have subclass of (P279). At the same time biological taxonomy uses parent taxon (P171), not P279. This creates a problem for items which describe classes of living organisms which don't follow biological taxonomy but whose superset is best defined as a biological taxon, for example saltwater fish (Q5364423) subclass of (P279) fish (Q152). This throws up a constraint warning.

How should we handle this? Deryck Chan (talk) 14:31, 13 March 2019 (UTC)

superclass, not subclass (Q78156572)[edit]

@Wikisaurus: has just created this item, and is using it as a Wikidata reason for deprecation (Q27949697), qualifying subclass of (P279). It seems to me like it might be a misuse of subclass of (P279), and a misuse of deprecation, but I want others to weigh in. Generally, deprecation is for inaccurate statements that are/were believed to be true by someone at some time. That doesn't seem to be the case with this use. This seems to be saying "I know this is the wrong property, but the right property doesn't exist, so I'll fudge it". Should a property "superclass of" or "generalization of" be proposed instead, or are we ok with this? Swpb (talk) 20:12, 12 December 2019 (UTC)

  • Well, it was created for geometric magic square (Q17016342) and similar cases (I met at least three of them recently, although I can not recall them) in which someone mixes up superclass and subclass (probably because if a subclass is more famous, people tend to believe that any connected class is its subclass, even superclasses). I also added it to semimagic square (Q78155703) preventively, because I believe there is a large chance that people will add such a wrong subclass. Do you mean that one should only add deprecated statements if there is a source with such wrong information? Wikisaurus (talk) 20:21, 12 December 2019 (UTC)
    • I believe one should only add deprecated statements if the false claim has been made by major or authoritative sources, whether those sources are referenced or not – they are not meant for dealing with Wikidata editors misusing properties. Swpb (talk) 20:56, 12 December 2019 (UTC)