- From: Jason Ronallo <jronallo@gmail.com>
- Date: Wed, 21 Dec 2011 12:45:11 -0500
- To: public-vocabs <public-vocabs@w3.org>
Hi, Back in early November, Martin Hepp posted this example for how one might use "Web-scale identifiers" like DBPedia/Wikipedia in microdata. [1] <div itemscope itemtype="http://schema.org/Recipe"> <span itemprop="name">Oregano Bread</span> <link itemprop="ingredients" href="http://dbpedia.org/resource/Oregano"/>Oregano ... </div> Using <link> or <meta> like this means that what gets extracted by a parser [2] would be the dbpedia URI as an ingredient rather than the text "Oregano". (And would go against the search engine advice to not mark up hidden content.) Is a consumer of the microdata then expected to know to just take the last part of the URI if it wants to display just the text ingredient as "Oregano"? Is there a way in microdata to get the ingredient text as the value, but to say that the text is the same as a certain identifier? I know this probably breaks the microdata DOM API JSON, but I want something more like having an itemprop identifier (@itempropid): <div itemscope itemtype="http://schema.org/Recipe"> <span itemprop="name">Oregano Bread</span> <span itemprop="ingredients" itempropid="http://dbpedia.org/resource/Oregano">Oregano</span> ... </div> Similar to how the schema.org documentation rarely mentions @itemid, @itempropid could be something that most webmasters wouldn't need but if you did you could add it in. I don't know how one might parse this into JSON, though there may be other problems in implementing it. Anything like this already possible with microdata, or is the answer to just use RDFa instead? What would this example look like using schema.org in something as close to RDFa Lite as possible? While I want the option to add in this feature to point to property identifiers, I've found the simplicity of microdata to be nice. Or could you just do something like the following to use @itemid? I don't know what value to give @itemtype below, since what I want to say is that this "Oregano" item is actually the same as a controlled term from an external vocabulary. This seems like more nesting and complication for consumers than you might want just to make this kind of link. <div itemscope itemtype="http://schema.org/Recipe"> <span itemprop="name">Oregano Bread</span> <span itemprop="ingredients" itemscope itemtype="http://schema.org/Term" itemid="http://dbpedia.org/resource/Oregano"><span itemprop="name">Oregano</span></span> ... </div> I have a lot a terms (subject headings and the like) that I could link to, but since the main consumer of the microdata is the search engines, I want to make sure they understand what I'm providing them. It seems keeping something simple and extractable as text would be better in this case, but maybe, as Martin Hepp's example is, they would both understand how to handle a value of "http://dbpedia.org/resource/Oregano" and not penalize the page for this being hidden content? Jason [1] http://lists.w3.org/Archives/Public/public-vocabs/2011Nov/0004.html [2] http://foolip.org/microdatajs/live/?html=%3Cdiv%20itemscope%20itemtype%3D%22http%3A%2F%2Fschema.org%2FRecipe%22%3E%0A%20%3Cspan%20itemprop%3D%22name%22%3EOregano%20Bread%3C%2Fspan%3E%0A%20%3Clink%20itemprop%3D%22ingredients%22%20href%3D%22http%3A%2F%2Fdbpedia.org%2Fresource%2FOregano%22%2F%3EOregano%0A%3C%2Fdiv%3E
Received on Wednesday, 21 December 2011 17:46:27 UTC