Hi James,
š
I fully agree that a name is a compex and culture dependent construct, but it's not so easy for me to imagine websites which would like to maintain people names in such a complex way.
There are many developers using just a simple 'string' (or 'varchar') column to store somebody's name.
Removing support for plain text means they must complicate their db (and they surely won't change anything).
I think we should leave this complexity to more specialized ontologies
š
--
Egor
š
02.08.2012, 21:27, "James M Snell" <jasnell@gmail.com>:
Hello all,

I've recently been exploring the possible integration of schema.org metadata with the OpenSocial API (http://opensocial.org). OpenSocial defines it's own schema for various objects like Person, Groups, Albums, etc. Eventually, I would like to see this model brought in line with things like the schema.org model but there are a number of existing gaps that would need to be addressed. As an experiment, I decided to take one single aspect of the OpenSocial model and visualize what that would look like as a schema.org Type...

Within OpenSocial, a "Person" object [http://opensocial-resources.googlecode.com/svn/spec/trunk/Social-Data.xml#Name]šhas a fairly rich collection of metadata elements. The person's name, for instance, is represented by a structured Name object, and the person can have a common name, a native name, a nickname, and an optional collection of "alternate names", each of which can be richly structured. Within the schema.org Person object, however, there is only a single set of unstructured text properties like "givenName" and "alternativeName". This definitely would not work within OpenSocial applications.

So here's the idea: create a new schema.org intangible object called "Name", with a subtype of "PersonalName", with the following basic definition:

|-- Intangible
š š |
š š |-- Name
š š š š |
š š š š |-- PersonalName (
š š š š š š honorific,
š š š š š š honorificPrefix,
š š š š š š honorificSuffix,
š š š š š š byname,
š š š š š š givenName,
š š š š š š middleName,
š š š š š š familyName,
š š š š š š generationName,
š š š š š š patronymic,
š š š š š š matronymic,
š š š š š š diminutive,
š š š š š š pronunciation,
š š š š š š pronunciationExample
š š š š š )
Then, let's add the following new properties to the schema.org/Person object ...
š* alternateName,
š* formerName,
š* nativeName,
š* commonName,
š* nickname,
š* preferredName,
š* professionalName,
š* psuedonym
And remove / deprecate the following from schema.org/Person...
š * additionalName
š * familyName
š * honorificPrefix
š * honorificSuffix
š * givenName
Several examples...
<div itemscope itemtype="http://schema.org/Person">
š <div itemprop="nativeName"š
š š š šitemscopeš
š š š šitemtype="http://schema.org/PersonalName">
š š <span itemprop="givenName">
š š š &#x41B;&#x435;&#x432;
š š </span>š
š š <span itemprop="patronymic">
š š š &#x41D;&#x438;&#x43A;&#x43E;&#x43B;
š š š &#x430;&#x301;&#x435;&#x432;&#x438;
š š š &#x447;
š š </span>š
š š <span itemprop="familyName">
š š š &#x422;&#x43E;&#x43B;&#x441;&#x442;
š š š &#x43E;&#x301;&#x439;
š š </span>
š </div>
š <div itemprop="commonName"š
š š š šitemscopeš
š š š šitemtype="http://schema.org/PersonalName">
š š <span itemprop="givenName">Lev</span>
š š <span itemprop="patronymic">Nikolayevich</span>
š š <span itemprop="familyName">Tolstoy</span>
š </div>
š <div itemprop="alternateName"š
š š š šitemscopeš
š š š šitemtype="http://schema.org/PersonalName">
š š <span itemprop="givenName">Leo</span>
š š <span itemprop="familyName">Tolstoy</span>
š </div>
</div>
<div itemscope itemtype="http://schema.org/Person">
š <div itemprop="commonName"š
š š š šitemscopeš
š š š itemtype="http://schema.org/PersonalName">
š š <span itemprop="byName">
š š š Custodian of the Two Holy Mosques
š š </span>,
š š <span itemprop="honorific">King</span>
š š <span itemprop="givenName">Abdullah<span>š
š š <span itemprop="patronymic">bin Abdulaziz</span>
š š <span itemprop="familyName">al Saud</span>
š </div>
š <div itemprop="nativeName"š
š š š šitemscopeš
š š š šitemtype="http://schema.org/PersonalName" dir="rtl">
š š <span itemprop="byName">
š š š &#x62E;&#x627;&#x62F;&#x645; &#x627;&#x644;
š š š &#x62D;&#x631;&#x645;&#x64A;&#x646;&#x627;
š š š &#x644;&#x634;&#x631;&#x64A;&#x641;&#x64A;
š š š &#x646;</span>,
š š <span itemprop="honorific">&#x645;&#x644;&#x643;</span>
š š <span itemprop="givenName">&#x639;&#x628;&#x62F;š
š š š &#x627;&#x644;&#x644;&#x647;<span>š
š š <span itemprop="patronymic">&#x628;&#x646; &#x639;&#x628;&#x62F;
š š š &#x627;&#x644;&#x639;&#x632;&#x64A;&#x632;</span>
š š <span itemprop="familyName">&#x622;&#x644; &#x633;&#x639;
š š š &#x648;&#x62F;</span>
š š (<span itemprop="pronunciation">
š š š Abd ull&#x101;h ibn &lsquo;Abd al-&lsquo;Az&#x12B;zš
š š š &#x100;l Su&lsquo;&#x16B;d</span>)
š </div>
</div>
<div itemscope itemtype="http://schema.org/Person">
š<div itemprop="name"š
š š š itemscopeš
š š š itemtype="http://schema.org/PersonalName">
š š<span itemprop="givenname">Hideo</span>
š š<span itemprop="familyname">Tanaka</span>
š š<span itemprop="honorificSuffix">-san</span>
š</div>
š<div itemprop="nativename"š
š š š itemscopeš
š š š itemtype="http://schema.org/PersonalName">
š š<span itemprop="givenname"&gt;&#x82F1;&#x592B;</span>
š š<span itemprop="familyname">&#x7530;&#x4E2D;</span>
š š<span itemprop="honorificSuffix">&#x3055;&#x3093;</span>
š (<span itemprop="pronunciation">
š š š&#x3072;&#x3067;&#x304A; &#x305F;&#x306A;&#x304B;
š š</span>)
š</div>
</div>
Thoughts and opinions are always welcome...š
- James
--
Egor Antonov
Department of secured search,
Yandex