W3C home > Mailing lists > Public > www-rdf-interest@w3.org > June 2002

Re: Modelling Resumes in RDF(S) - work in progress

From: Patrick Stickler <patrick.stickler@nokia.com>
Date: Thu, 06 Jun 2002 14:27:11 +0300
To: "ext Thomas B. Passin" <tpassin@comcast.net>, RDF Interest <www-rdf-interest@w3.org>
Message-ID: <B92521BF.16360%patrick.stickler@nokia.com>

On 2002-06-05 16:14, "ext Thomas B. Passin" <tpassin@comcast.net> wrote:

> [Patrick Stickler]
>> Choosing URIs as values allows one to localize the interface
>> using alternate labels in other languages. Literal values would
>> be less internationally oriented.
>> E.g.
>>    <cv:Sex rdf:about="voc:blackeye.vsaa.lv/cv/sex/male">
>>       <rdfs:label xml:lang="en">Male</rdfs:label>
>>       <rdfs:label xml:lang="fi">Mies</rdfs:label>
>>       ...
>>    </cv:Sex>
> I don't understand what triples would be produced by these statements.  It's
> my general lack of understanding about how xml:lang plays with everything
> else.  I'd appreciate some enlightenment.
> Each rdfs:label represents the same kind of property (with the same URI),
> and you can't hang a modifier or property off a predicate.  But you also
> can't have a property on a literal.  Now if there were an anonymous node for
> each label, with a language property alomg with the literal, that would
> work, but the above does not define any bnodes.
> I could also see creating subproperties of rdfs:label, like rdfs:label-eng,
> but that wasn't done above either.
> So how does this work?

At the moment (and I can't say this is my preference) literals in
RDF are structured objects, not just strings. They are comprised of
a single bit, which designates the parseType, the actual string value,
and a language tag, if specified by xml:lang. Thus, the triples produced
by the above RDF/XML are (using qnames for clarity ;-)

   <voc:blackeye.vsaa.lv/cv/sex/male> rdf:type cv:Sex .
   <voc:blackeye.vsaa.lv/cv/sex/male> rdfs:label "Male"-en .
   <voc:blackeye.vsaa.lv/cv/sex/male> rdfs:label "Mies"-fi .

Now, applications are then supposed to filter/select literal values
based on language.

There are some folks (myself included ;-) who would prefer for
the xml:lang attribute to be treated the same as any arbitrary
property, namely resulting in a blank node with the xml:lang attribute
as a property. Thus:

   <voc:blackeye.vsaa.lv/cv/sex/male> rdf:type cv:Sex .
   <voc:blackeye.vsaa.lv/cv/sex/male> rdfs:label _:x .
   _:x rdf:value "Male" .
   _:x xml:lang "en" .
   <voc:blackeye.vsaa.lv/cv/sex/male> rdfs:label _:y .
   _:y rdf:value "Mies" .
   _:y xml:lang "fi" .

which would expose the language qualification to RDF
applications in a more native manner.

Still, in either case, what you have are multiple language
qualified labels which constitute an implicit selection set,
from which an application can choose the preferred one. Yet
the identity of the controlled value itself is canonical.



Patrick Stickler              Phone: +358 50 483 9453
Senior Research Scientist     Fax:   +358 7180 35409
Nokia Research Center         Email: patrick.stickler@nokia.com
Received on Thursday, 6 June 2002 07:23:10 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 15:07:41 UTC