Closed GeertThijs closed 1 year ago
The example shows a case of reuse with semantic adaptation. In CPV the Person is more restricted than that in FOAF.
The foaf:Person class represents people. Something is a foaf:Person if it is a person. We don't nitpic about whether they're alive, dead, real, or imaginary. The foaf:Person class is a sub-class of the foaf:Agent class, since all people are considered 'agents' in FOAF.
In contrast to that, CPV Person is defined differently: A individual human being who may be dead or alive, but not imaginary.
In § Explicit depiction of external dependencies. In the example Person inherites from foaf:Person. This contradicts a rule I think I saw elsewhere in the Style Guide that says that subclassing without added semantic value is not allowed. Wgich is the case here: a Person cannot be a specialisation of a Person.