W3C home > Mailing lists > Public > public-vocabs@w3.org > October 2013

Re: Country, external ennumeration?

From: Justin Boyan <jaboyan@google.com>
Date: Thu, 31 Oct 2013 11:35:58 -0400
Message-ID: <CABJSzUuTER0A9iPsSEc8DotRuoMXfSDNHhB7Pf8DnBAmb=Zg_g@mail.gmail.com>
To: Willem-Siebe Spoelstra <wsspoelstra@gmail.com>
Cc: "public-vocabs@w3.org" <public-vocabs@w3.org>
I agree that the use of schema.org/Enumeration, vs. external enumerations,
is confusing.

I would like to raise a related proposal, to make it easier to define and
use internal Enumerations.  Currently all enumeration values are defined in
the global top-level schema.org namespace.  For example, each value of the
MedicalSpecialty <http://schema.org/MedicalSpecialty> enumeration, such as
http://schema.org/Nursing, is a top-level entity.  It therefore conflicts
with any other proposed enumerations that might want to use Nursing as a
value, or for that matter any proposed type named schema.org/Nursing.
This isn't just a theoretical concern - there are currently at least three
enumeration proposals (OrderStatus, ActionStatus, EventStatus) that all
want to use "Canceled" as an enum value, but those notions of canceled
can't be defined and documented separately given the global namespace.

Proposal: can we define a local namespace for internal enumerations?  How
about a fragment naming scheme, like http://schema.org/OrderStatus#Canceled and
http://schema.org/EventStatus#Canceled ? That scheme would also improve our
documentation, keeping all the enum values and their descriptions organized
on a single web page corresponding to their type. In markup, we could
arrange to accept "Canceled" or "#Canceled" as shorthand entries for the
enum value.


On Thu, Oct 24, 2013 at 3:27 PM, Willem-Siebe Spoelstra <
wsspoelstra@gmail.com> wrote:

> Hi, on this schema.org blogpost<http://blog.schema.org/2012/05/schemaorg-markup-for-external-lists.html> I
> read the follwing:
> Each schema.org type (such as Person <http://schema.org/Person>,
>> PostalAddress <http://schema.org/PostalAddress>) is associated with a
>> set of properties, such as
>> "nationality", "addressCountry". In turn, each property has one or more
>> expected types; in this case, both the "nationality" of a Person, and the
>> "addressCountry" of a PostalAddress <http://schema.org/PostalAddress> expect
>> to have a Country <http://schema.org/Country>value
> So I took a look at the example in the same blogpost, and the specify the
> country like this:
> <link itemprop="nationality" href="http://en.wikipedia.org/wiki/United_States"/>
> When I read this blogpost <http://blog.schema.org/2012/11/good-relations-and-schemaorg.html> about Schema.org and Goodrelations, this is explained like:
>   general approach for referencing 'external enumerations<http://blog.schema.org/2012/05/schemaorg-markup-for-external-lists.html>
>> '.
> However, when I look at the itemtype 'Country' <http://schema.org/Country>,
> which is the expected type for the item properties 'nationality' and
> 'addressCountry', I don't see anything explaining the above...
> It only tells me:
> A country
> I do see a list of properties, but the best option there is to use 'name'
> from 'Thing', which in that case should be 'text' just putting down the
> name of the country. Nobody is explaining me that I have to link to, for
> example, WikiPedia as explained in the blogpost.
> So, what's the best practise here?
> And why is 'Country' not a more specif type of Enumeration,
> http://schema.org/Enumeration,
> Kind regards,
> Willem
Received on Thursday, 31 October 2013 15:36:30 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:29:32 UTC