问题
I want to create a RDFS schema about venue info which contains for example:
only photo and address info.
I find another schema about it: https://schema.org/Place. It contains more properties than I need.
So, should I make my schema venue as a subclass of https://schema.org/Place?
Or I just make a new class but reuse the properties in https://schema.org/Place?
Do they have differences?
回答1:
The semantic web / linked data lives of the re-use of existing vocabularies, so if you only need a sub-set of existing vocabularies, it's best to not re-invent any new schema, but just to use parts from existing ones. Your data will then even be useful without any reasoning.
Also, just cause you're using an existing vocabulary doesn't mean you need to use all of its properties or classes. Just leave those away that you're not interested in / can't provide.
So, should I make my schema venue as a subclass of https://schema.org/Place? Or I just make a new class but reuse the properties in https://schema.org/Place?
So by the above i'd recommend not to create a new class at all, but just use https://schema.org/Place.
Do they have differences?
Yes, from a reasoning & verification standpoint they do. Properties can have more or less specific domains and ranges. If you create a new class and the domain of the property you want to use is not a super-class of your new class, it would be a mistake to use that property on instances of your class. As an example look at https://schema.org/address, it can be used with instances of type https://schema.org/Organization, https://schema.org/Person and https://schema.org/Place. If you create a class that is not a subclass of one of them you shouldn't use https://schema.org/address on any of its instances.
来源:https://stackoverflow.com/questions/30309272/when-to-use-the-subclass-in-rdfs