- From: Patrick Stickler <patrick.stickler@nokia.com>
- Date: Thu, 06 Jun 2002 15:21:04 +0300
- To: Uldis Bojars <uldis.bojars@gmx.net>, RDF Interest <www-rdf-interest@w3.org>
On 2002-06-06 12:52, "ext Uldis Bojars" <uldis.bojars@gmx.net> wrote:
> Hi, Patrick!
>
> Sorry to trouble you again, but I have more questions than answers.
> (and these questions must look too simple to most people here).
>
> PS> <cv:Sex rdf:about="voc:blackeye.vsaa.lv/cv/sex/male">
> PS> <rdfs:label xml:lang="en">Male</rdfs:label>
> PS> <rdfs:label xml:lang="fi">Mies</rdfs:label>
> PS> ...
> PS> </cv:Sex>
>
> Do these statements create instance voc:blackeye.vsaa.lv/cv/sex/male
> that I can refer to? If I do the same for /cv/sex/female, will it be
> correct to define person's sex property as:
>
> <rdf:Property rdf:about="&cv_rdfs;sex"
> rdfs:label="sex">
> <rdfs:comment> Man / Woman. </rdfs:comment>
> <rdfs:domain rdf:resource="&cv_rdfs;Person"/>
> <rdfs:range rdf:resource="voc:blackeye.vsaa.lv/cv/sex/"/>
> </rdf:Property>
In the above example, I was presuming a URI for the Sex class
as "voc://blackeye.vsaa.lv.cv/Sex", with no trailing '/'. You
can't have a trailing '/' on a class name if you want to use
it in an element qname, as above (<cv:Sex ...)
(and apologies, I mistyped the voc:// URIs earlier and left out the
double slashes.... extra shame as it's my URI scheme ;-)
So, your range statement would be
<rdfs:range rdf:resource="voc://blackeye.vsaa.lv/cv/Sex"/>
With that, your typed values will be valid for the range of
the property.
> Since I was unsure about the approach above, I followed another way:
>
> 1. Defined SexProperty and it's instances (copied from SUO.daml):
> <rdf:Description ID="SexProperty">
> <rdfs:label>SexProperty</rdfs:label>
> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
> </rdf:Description>
>
> <rdf:Description ID="Female">
> <rdfs:label>Female</rdfs:label>
> <rdf:type rdf:resource="#SexProperty"/>
> </rdf:Description>
>
> <rdf:Description ID="Male">
> <rdfs:label>Male</rdfs:label>
> <rdf:type rdf:resource="#SexProperty"/>
> </rdf:Description>
>
> 2. Defined range for sex property then:
>
> <rdfs:range rdf:resource="http://nightman.lv/~captsolo/base.rdfs"/>
Presuming that "http://nightman.lv/~captsolo/base.rdfs" is the base
URI for your schema (and I'd just avoid fragment IDs altogether, they're
more trouble than they're worth) then you'd have to define the
range as
<rdfs:range
rdf:resource="http://nightman.lv/~captsolo/base.rdfs#SexProperty"/>
> Is this way to define this property valid and OK?
> I still do not understand where physically you define taxonomy for the
> former case, to use property value voc:blackeye.vsaa.lv/cv/sex/male
> for example.
Simply referencing a resource in an rdf:about "brings the
resource into being" so to speak. It's the URI that denotes
the resource, and the agreement by users to share a common
interpretation for a given URI is what brings that resource
into the RDF world.
> Another unclear question is defining boolean values.
> Are there some standard "TRUE" and "FALSE" or "YES" and "NO" URIs to
> use?
You can adopt the XML Schema datatype xsd:boolean if you like. That's
about as standardized as you are going to find, I think.
Patrick
--
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 08:20:29 UTC