W3C home > Mailing lists > Public > public-vocabs@w3.org > November 2011

Re: Need for a new type Activity

From: Adrian Giurca <giurca@tu-cottbus.de>
Date: Thu, 03 Nov 2011 18:51:13 +0100
Message-ID: <4EB2D491.50000@tu-cottbus.de>
To: Aaron Bradley <aaranged@yahoo.com>
CC: "public-vocabs@w3.org" <public-vocabs@w3.org>
Dear Aaron,

According with the definition of http://schema.org/Recipe the property 
"ingredients"  has Text (including URL) as an *expected type*. Therefore 
I would say, a schema.org processor will not process an instance value 
as described in Example 2a. Text is a datatype and is not derived from 
Thing therefore I would say that "ingredients" does not expect an 
"object" (i.e., itemscope).

On my knowledge <link> can be used only inside HTML5 <head> and is an 
empty element. As such I would say that a markup as below will extract a 
Text from the ingredients property. Looks like iIt is the responsibility 
of each schema.org processor  what to do with the extracted value.

<div itemscope itemtype="http://schema.org/Recipe">
   <span itemprop="name">Oregano Bread</span>
   <span itemprop="ingredients">1 cup water</span>
   <span itemprop="ingredients">2 1/2 tablespoons olive oil, 1 1/4 teaspoons salt
     2 1/2 tablespoons grated parmesan cheese
   </span>
...
</div>

How to relate "oregano"  to URI http://dbpedia.org/resource/Oregano 
looks not easy.  According with their suggestions with respect of 
missing/implicit information: "use the meta tag with content." (see see 
http://schema.org/docs/gs.html#advanced_missing ) I would point on the 
below markup:

<div itemscope itemtype="http://schema.org/Recipe">
   <span itemprop="name">Oregano Bread</span>
   <meta itemprop="ingredients" content="http://dbpedia.org/resource/Oregano"/>oregano
   <span itemprop="ingredients">1 cup water</span>
   <span itemprop="ingredients">2 1/2 tablespoons olive oil, 1 1/4 teaspoons salt
     2 1/2 tablespoons grated parmesan cheese
   </span>
...
</div>

The schema.org processor should relate the URI   
http://dbpedia.org/resource/Oregano to text "oregano". The final 
collected value for the property "itemprop" would be:

"http://dbpedia.org/resource/Oregano"+"1 cup water"+"2 1/2 tablespoons olive oil, 1 1/4 teaspoons salt 2 1/2 tablespoons grated parmesan cheese"

A specific schema.org processor will decide what to do with this text.


-Adrian Giurca

On 11/3/2011 5:33 PM, Aaron Bradley wrote:
> Hi Martin (et al.)
>
> Thanks for your detailed response.  I love the first example you cited ("Oregano" - below as "Example 1"), so much so that I'd like to blog it as an example of using DBPedia as a method of extending schema.org.  Though I wonder how one would handle a linked instance of oregano:
> <link itemprop="ingredients" href="http://dbpedia.org/resource/Oregano" /><a href="[SomeURL]">Oregano</a>  ?
>
> The additional examples (below as "Example 2") are, well, additional, and as a result I wouldn't know which one to select (2b. seems seems somewhat complicated to me, and 2c. doesn't seem to jibe with the schema.org instructions for extending a property - am I misinterpreting something?).
>
> One way or another, to both your and Bernard's point that one can't have an ontology of everything - of course.  And so Bernard's suggestion is well-taken:
>
>> So maybe schema.org could indeed set some pragmatic limits to its expansion, in terms of
> size, depth, number of concepts, keeping it to the scope and depth of a
> "middle" ontology, and entrust both crowsourced vocabularies (Freebase,
> DBpedia) and technical public vocabularies (Music Ontology, Legal
> Ontology ...) URIs for more specialized extensions.
>
> I would modify this to say not only pragmatic limits, and pragmatic instructions about what to do when one requires a type, class or property not already listed in schema.org.  There's absolutely no mention on the extension page of using other vocabularies or ontologies, and indeed says that "you can always create new schemas that are not at all tied to those on schema.org" - which seems at odd with the standard suggested practice of reusing existing vocabularies as much as possible.
>
> Having said all of this, webmasters are most likely to incorporate schema.org microdata when the vocabulary is sufficient for their needs, and to use extensions where those extensions are accessibly warehoused (as per Roy's original point).
>
> The stated purpose of schema.org is not to describe everything, but to provide "a collection of schemas, i.e., html tags, that
> 	      webmasters can use to markup their pages in ways recognized by major
> 	      search providers."  And I think it's important to focus on this when discussing schema.org from an "ordinary" webmaster perspective.  That there are other vocabularies available doesn't really matter to webmasters that are contemplating using schema.org to improve their search visibility.
>
> Example 1:
>> What I mean by that is pretty simple and straighforward:
>>
>> For a certain Microdata property with the defined range "URL" or
>> "DBPedia URL" (tbd),
>>
>> 1. Search the English Wikipedia for the best matching page
>>
>> Example:
>>
>> Oregano -->  http://en.wikipedia.org/wiki/Oregano
>>
>> 2. Strip off http://en.wikipedia.org/wiki
>>
>> -->  /Oregano
>>
>> 3. Attach the DBPedia base URI http://dbpedia.org/resource/
>>
>> -->  http://dbpedia.org/resource/Oregano
>>
>> 4. Use this with the respective property
>>
>> <div itemscope itemtype="http://schema.org/Recipe">
>>    <span itemprop="name">Oregano Bread</span>
>>    <link itemprop="ingredients"
>> href="http://dbpedia.org/resource/Oregano" />  Oregano
>> ...
>> </div>
> Example 2:
> a.
>> # With locally defined value
>> <div itemscope itemtype="http://schema.org/Recipe">
>>    <span itemprop="name">Oregano Bread</span>
>>    <div itemprop="ingredients" itemscope
>> itemtype="http://schema.org/Enumeration/Herb">
>>       <span itemprop="name">Oregano</span>
>>    </div>
>> ...
>> </div>
> b.
>> # With DBPedia URI as a valuevalue
>> <div itemscope itemtype="http://schema.org/Recipe">
>>    <span itemprop="name">Oregano Bread</span>
>>    <link itemprop="ingredients"
>> href="http://dbpedia.org/resource/Oregano" />  Oregano
>> ...
>> </div>
> c.
>> # With predefined schema.org value
>> <div itemscope itemtype="http://schema.org/Recipe">
>>    <span itemprop="name">Oregano Bread</span>
>>    <link itemprop="ingredients"
>> href="http://schema.org/Oregano" />  Oregano
>> ...
>> </div>
>>
>
>
Received on Thursday, 3 November 2011 17:51:51 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 22 May 2012 06:48:57 GMT