Re: Schema.org and OWL

(Side node: why is this thread cross-posted?)

Hi Thad,
no, ProductModel is not an attribute, it is a class in its own right.

ProductModels are the blueprints, datasheets, abstract ideals - however you name it - of mass-produced commodities and similar products. Like *the" Ford T, *the* Apple II, etc.

A Product is either an actual product (like *my* Ford T) or, a bit more difficult to understand, a black box of multiple such actual products, like all the Ford Ts referred to in an Amazon offer. 

When we are able to distinguish the two, it makes sense to use the more specifc subtypes

 • IndividualProduct
 • SomeProducts

This improves the ability to use the data in meaningful ways.

For instance, if two people state they own(ed) the same IndividualProduct, the actually owned the same thing (like Barack Obama bought the Golf II that Angela Merkel used to own, with the same serial / vehicle identification number).

When you do not know exactly what type of entity you have at hand, you can use the supertype "Product" directly.

The relationship between ProductModel on one hand and IndividualProduct and SomeProducts on the other is that you can pass along additional product feature information from the model to a product, as long as you know that the product is of the respective model. This link can either be explicit (via the model property) or by means of a single reliable identifier or set of identifiers, like GTIN.

Examples for the respective rule sets are here:

    http://wiki.goodrelations-vocabulary.org/Axioms#Product_Models

When you want to use more specific product types (like those from www.productontology.org), you have to work with MTEs (multi-typed entities), e.g. say something is a product and an ohmmeter (either via multiple types in JSON-LD / Turtle / RDFa or via additionalType in Microdata), like so

<div itemscope itemtype="http://schema.org/Product">
   <link itemprop="additionalType" href="http://www.productontology.org/id/Ohmmeter" />
 <!-- other schema.org properties go in here -->
</div> 

<div itemscope itemtype="http://schema.org/IndividualProduct">
   <link itemprop="additionalType" href="http://www.productontology.org/id/Ohmmeter" />
 <!-- other schema.org properties go in here -->
</div>

<div itemscope itemtype="http://schema.org/SomeProducts">
   <link itemprop="additionalType" href="http://www.productontology.org/id/Ohmmeter" />
 <!-- other schema.org properties go in here -->
</div>

<div itemscope itemtype="http://schema.org/ProductModel">
   <link itemprop="additionalType" href="http://www.productontology.org/id/Ohmmeter" />
 <!-- other schema.org properties go in here -->
</div>

While this may sound complicated, it allows using the same class hierarchy and the same properties for more specific product type for both products and products models, even though they are quite different things (a Ford T *model* does not have a physical weight, contrary to *my* Ford T).

Hope that helps.

Best wishes
Martin

-----------------------------------
martin hepp  http://www.heppnetz.de
mhepp@computer.org          @mfhepp




> On 14 Jun 2018, at 05:38, Thad Guidry <thadguidry@gmail.com> wrote:
> 
> Anthony,
> 
> There are some Types and Subtypes in Schema.org that are in fact actually Attributes of a Type.  ProductModel is actually an Attribute of a Product.  You and I know that, so do a lot of other folks.  Unfortunately, the stakeholders have not cleared up the cruft as Dan said.  We have been asking for it, but its already out there published, and folks have lived with it as it is and are USING IT most importantly as-is, and works for the most part when you don't look at the Typing with hard eyes, but soft ones instead.  Yeah, there's some opinionated views around here, is all I can say. :-)
> 
> Looking forward to your opinions in the issues you create !
> -Thad
> 

Received on Thursday, 14 June 2018 11:07:26 UTC