- From: Richard Wallis <richard.wallis@oclc.org>
- Date: Thu, 29 Nov 2012 12:36:44 +0000
- To: Shlomo Sanders <Shlomo.Sanders@exlibrisgroup.com>, Alf Eaton <eaton.alf@gmail.com>
- CC: "public-schemabibex@w3.org" <public-schemabibex@w3.org>, "Young,Jeff (OR)" <jyoung@oclc.org>, "Vizine-Goetz,Diane" <vizine@oclc.org>
- Message-ID: <CCDD075C.3EC5%richard.wallis@oclc.org>
Hi Shlomo, Scenario 1 Following the, emerging, lead from the Shema.org community I would suggest taking the RDFa route for embedding in html. Although they started with microdata [hence many of the documentation examples are microdata only], RDFa is more capable of handling issues such as things being of multiple types etc. - this is why they had to add the additionalType property to Thing as a kludge to enable the microdata folks to represent multiple types. Personally I would always lean towards RDFa, as the mapping to/from other RDF formats (n-Triples, Turtle, RDF/XML, JSON) is is just a simple format transformation. Also it will make it easier for adding other RDF in to a page to supplement Schema.org with some more domain specific stuff. The search engines say that they intend to support both. Scenario 2 I am [hopefully correctly] thinking that you are talking about an API to output the raw data, without the html. In which case I would not go for a specific API I would let the data URI be itıs own API, using content-negotiation to provide the RDF serialisation format the user requests. Implementation of this can be handled by http standard redirects from <http://mylib.org/res/1234> to <http://mylib.org/res/1234.html>, <http://mylib.org/res/1234.rdf>, <http://mylib.org/res/1234.json>, <http://mylib.org/res/1234.ttl>, etc. dependant upon the Accept format in the request. Of course these individual output types also could be accessed directly if required. ~Richard. On 29/11/2012 12:04, "Shlomo Sanders" <Shlomo.Sanders@exlibrisgroup.com> wrote: > We have 2 different scenarios: > * HTML markup - Here we need to decide if one, the other or both. The page > size is large as it is. > * Linked Data (RESTful) API - We plan on the having a parameter on the URI > that will indicate which encoding to use (i.e. RDFa Lite, LC format - whatever > that is) so we should not have to put both into the API results. > > > -----Original Message----- > From: Alf Eaton [mailto:eaton.alf@gmail.com] > Sent: Thursday, November 29, 2012 13:25 > To: Shlomo Sanders > Cc: public-schemabibex@w3.org > Subject: Re: Three steps > > You're probably producing HTML + microdata, not XML, so something like this > should work nicely: > > <span itemprop="author" itemscope itemtype="http://schema.org/Person" > itemid="http://id.loc.gov/authorities/names/n50016589"> > <span itemprop="name">J.D. Salinger</span> </span> > > A simpler alternative (for this specific case) would be this: > > <a itemprop="author" > href="http://id.loc.gov/authorities/names/n50016589">J.D. Salinger</a> > > As for "vocab", "typeof" and "property" attributes, they're part of a > different system for marking up metadata (RDFa Lite). The choice of whether to > use microdata or RDFa (Lite), or both, is a VHS vs Betamax > choice: it depends on which you prefer, and which consumers of the data that > you produce prefer. > > On 29 November 2012 09:45, Shlomo Sanders <Shlomo.Sanders@exlibrisgroup.com> > wrote: >> > So, based on your answers this is perhaps the proper XML if we need to >> > keep the size down? >> > >> > <span itemprop="author" itemscope='i' itemtype="http://schema.org/Person" >> > itemid="http://id.loc.gov/authorities/names/n50016589"> >> > <span itemprop="name">J.D. Salinger</span> </span> >> > >> > If we were to add to this, the order of preference would be to add: >> > € Vocab >> > € Property - Still unclear why I need/want to have this duplicated >> > tag. What good does it do me or someone else? >> > >> > As for granularity of the name (name vs. given and family) I think the >> > simple name is better if there is an itemid. >> > If there isnıt an itemid then perhaps better to split into given and >> family. >> > >> > Thanks >> > Shlomo >> > >> > -----Original Message----- >> > From: Alf Eaton [mailto:eaton.alf@gmail.com] >> > Sent: Thursday, November 29, 2012 11:16 >> > To: Shlomo Sanders >> > Cc: public-schemabibex@w3.org >> > Subject: Re: Three steps >> > >> > On 29 November 2012 06:32, Shlomo Sanders >> > <Shlomo.Sanders@exlibrisgroup.com> >> > wrote: >> > >>> >> I am looking at this snippet that I got from schema.org >>> >> >>> >> <li itemprop="author" property="author" itemscope="itemscope" >>> >> itemtype="http://schema.org/Person" vocab="http://schema.org/" >>> >> typeof="Person"> >>> >> <span itemprop="name" property="name"> >>> >> <span itemprop="givenName" >>> >> property="givenName">Gerhild</span> >>> >> <span itemprop="familyName" >>> >> property="familyName">Wildner</span> >>> >> </span> >>> >> </li> >>> >> >>> >> How does itemscope="itemscope" help? >> > >> > The itemscope attribute is redundant in most places, when itemtype is >> > also present; itemtype isn't a requirement, though, so itemscope is >> > always used to mark the start of an object. >> > >>> >> What is the purpose of having both itemprop and property? >> > >> > "itemprop" and "itemtype" are HTML5 microdata attributes, "property" >> > and "vocab" are RDFa Lite attributes. >> > >>> >> The following snippet appeared in mail from Jason Ronallo: >>> >> <span itemprop="author" itemscope itemtype="http://schema.org/Person" >>> >> itemid="http://id.loc.gov/authorities/names/n50016589"> >>> >> <span itemprop="name">J.D. Salinger</span> >>> >> </span> >>> >> >>> >> In this example itemscope appears with no value. Is that just typo? >> > >> > In HTML, attributes such as "itemscope", "checked", "disabled", etc do >> > not need to have a value - values are only required in XML. >> > >>> >> No vocab. Is that OK? >>> >> No property, just itemtype. >> > >> > "vocab" and "property" are RDFa Lite attributes, so are not required >> > if the implementation is only using microdata. >> > >>> >> >>> >> We agreed that itemid=http://id.loc.gov/authorities/names/n50016589 >>> >> is what we want but is optional, right? >> > >> > itemid is always optional, as far as I know. >> > >>> >> >>> >> Shlomo >>> >> >>> >> >>> >> -----Original Message----- >>> >> From: Kevin Ford [mailto:kefo@3windmills.com] >>> >> Sent: Wednesday, November 28, 2012 17:31 >>> >> To: public-schemabibex@w3.org >>> >> Subject: Re: Three steps >>> >> >>> >> Just to add support to Jason's note, the "itemid" property he >>> >> included in his last example would be ideal, but not mandatory. >>> >> >>> >> We can model People/Organizations, and their relations to >>> >> CreativeWorks, per the current Schema.org guidelines. It's just that >>> >> those libraries that do not have the technological capability to >>> >> either mint a URI for a Person/Organization or make use of an already >>> >> minted URI for the same can omit the "href" or "itemid" property. In >>> >> RDF terms, it just results in a blank node. Perhaps not ideal, but >>> >> perfectly acceptable. >>> >> >>> >> In any event, the examples at the bottom of http://schema.org/Book >>> >> for "Reviews" omit the "Person" itemtype construct altogether for a >>> >> simple lexical string. >>> >> >>> >> Yours, >>> >> >>> >> Kevin >>> >> >>> >> >>> >> >>> >> On 11/28/2012 09:52 AM, Jason Ronallo wrote: >>>> >>> Richard, >>>> >>> >>>> >>> It seems to me that Schema.org is already relaxed about these kinds >>>> >>> of problems. The value of the author property is _expected_ to be a >>>> >>> Person or Organization. Consuming applications on the other hand >>>> >>> should expect to get imperfect data, though. Even the Schema.org >>>> >>> documentation for a book uses a relative URL from the href to refer >>>> >>> to the author. Here's a >>>> >>> snippet: >>>> >>> >>>> >>> <div itemscope itemtype="http://schema.org/Book"> >>>> >>> <span itemprop="name">The Catcher in the Rye</span> >>>> >>> by <a itemprop="author" href="/author/jd_salinger.html">J.D. >>>> >>> Salinger</a> </div> >>>> >>> >>>> >>> But maybe this is a bug? >>>> >>> >>>> >>> As a consuming application I would also expect to see something like >>>> >>> this where a string is used: >>>> >>> >>>> >>> <div itemscope itemtype="http://schema.org/Book"> >>>> >>> <span itemprop="name">The Catcher in the Rye</span> >>>> >>> by <span itemprop="author">J.D. Salinger</span> </div> >>>> >>> >>>> >>> But if you are an implementer, read the documentation, and all you >>>> >>> have is an author name as a string, there is nothing keeping you >>>> >>> from being more exact with that and doing something like the following. >>>> >>> This is probably what the recommendation ought to be if you only >>>> >>> have an author name as a string. >>>> >>> >>>> >>> <div itemscope itemtype="http://schema.org/Book"> >>>> >>> <span itemprop="name">The Catcher in the Rye</span> >>>> >>> by <span itemprop="author" itemscope >>>> >>> itemtype="http://schema.org/Person"><span itemprop="name">J.D. >>>> >>> Salinger</span></span> >>>> >>> </div> >>>> >>> >>>> >>> If you also have some kind of identifier for the person, then you >>>> >>> could add an itemid: >>>> >>> >>>> >>> <div itemscope itemtype="http://schema.org/Book"> >>>> >>> <span itemprop="name">The Catcher in the Rye</span> >>>> >>> by <span itemprop="author" itemscope >>>> >>> itemtype="http://schema.org/Person" >>>> >>> itemid="http://id.loc.gov/authorities/names/n50016589"><span >>>> >>> itemprop="name">J.D. Salinger</span></span> </div> >>>> >>> >>>> >>> So while recommendations to the community would be to be as exact as >>>> >>> possible there is no requirement that it be so strict. >>>> >>> >>>> >>> Jason >>>> >>> >>>> >>> >>>> >>> >>>> >>> On Wed, Nov 28, 2012 at 7:09 AM, Richard Wallis >>>> >>> <richard.wallis@oclc.org <mailto:richard.wallis@oclc.org >>>> <mailto:richard.wallis@oclc.org <mailto:richard.wallis@oclc.org> >> wrote: >>>> >>> >>>> >>> Iım stepping out of the thread that seems to have developed an all >>>> >>> encompassing life of its own [Itemprop for person] to pick up on an >>>> >>> issue identified in the recent contributions between Karen and >>>> >>> myself. >>>> >>> >>>> >>> This is the example of how to represent the author when marking up a >>>> >>> work (for now lets assume a book with person as an author). >>>> >>> >>>> >>> I said that the author property of the Book should be a URI to a >>>> >>> description of a Person (either a local Person description that >>>> >>> onward links to authority like VIAF, or a direct link to an >>>> >>> authority). >>>> >>> >>>> >>> Karen, quite rightly came, back to say that a library may only have >>>> >>> a string of characters for the author name so can not do what I >>>> >>> describe. >>>> >>> >>>> >>> This sort of scenario leads me to suggest that we approach such >>>> >>> descriptive challenges in a three step process: >>>> >>> >>>> >>> 1. How to describe what we have, using Schema as it is >>>> >>> 2. What changes/enhancements, if any, to Schema could we propose to >>>> >>> improve the description [and pragmatically expect the Schema >>>> >>> group to accept] >>>> >>> 3. Provide examples/recipes for how the markup would look in >>>> >>> each case >>>> >>> >>>> >>> >>>> >>> Applying this to the Book->author problem.... >>>> >>> >>>> >>> Step 1. >>>> >>> schema:Book->author is a property that requires a link to a Person >>>> >>> or Organization not a literal string. Therefore example markup >>>> >>> would require links to Person description either externally >>>> supplied >>>> >>> or created locally on the fly. >>>> >>> >>>> >>> Step 2. >>>> >>> We only have a string for an author name, so why not suggest that >>>> >>> Schema relaxes the restrictions on Book->author to enable the use of >>>> >>> strings. Taking account of the underlying philosophy behind Schema >>>> >>> (Things not Strings), it is exceedingly unlikely that such a >>>> >>> proposal would be accepted as it would break their related entities >>>> >>> model of the world. >>>> >>> >>>> >>> Step 3. >>>> >>> We need to provide examples of how we would markup various >>>> >>> situations that would cope with my ideal view and Karenıs real >>>> >>> situation of only having an author string plus possibly a few >>>> >>> in-between. I believe that it would be possible to satisfy >>>> Schemaıs >>>> >>> need for a Person description (in this case with only a name >>>> >>> property) by creating a description in line on the fly. >>>> >>> >>>> >>> I am conscious that as a group we have not been good at sharing >>>> >>> example markup I include me in that, my RDFa is not as good as I >>>> >>> would like it to be how we rectify this is something I ant to >>>> >>> address in the next call. (tomorrow) >>>> >>> >>>> >>> ~Richard. >>>> >>> >>>> >>> >>> >> >>> >> >> > > >
Received on Thursday, 29 November 2012 12:42:46 UTC