W3C home > Mailing lists > Public > www-rdf-interest@w3.org > April 2003

Re: Need help developing Camera model

From: Brian McBride <bwm@hplb.hpl.hp.com>
Date: Mon, 14 Apr 2003 13:49:35 +0100
Message-Id: <5.1.0.14.0.20030414120054.078e65e0@localhost>
To: "Roger L. Costello" <costello@mitre.org>, www-rdf-interest@w3.org

At 17:31 13/04/2003 -0400, Roger L. Costello wrote:

>Hi Folks,
>
>I need some help developing a model for camera data. I've got some of it
>developed, but aspects remain elusive.  Here's what I would like to
>model:
>
>1. SLR is a subclass of Camera.
>2. Large-Format is a subclass of Camera.
>3. Digital is a subclass of Camera.
>4. Body has a property shutter-speed, which has a range xsd:string.
>5. Lens has a property f-stop, which has a range xsd:string.
>6. Lens has a property focal-length, which has a range xsd:string.
>7. Body and Lens have a property cost, which has a range xsd:decimal.
>8. Camera, SLR, Large-Format, and Digital all have the properties
>    shutter-speed, f-stop, and focal-length.

Depends on how fussy you want to be about the nature and accuracy of your 
model.  For example, some lenses have built in shutters (e.g. most large 
format lenses, and many medium format - e.g. Hasselblad).  A large format 
body will rarely have a shutter speed, except for unusual ones, like maybe 
the Polaroid huge format (3 feet by 2 feet?) instant portrait camera.  How 
do you want to handle all-in-ones where the lens and body are not separate 
- does such a camera have an f-stop?

>9. Consider this:
>
>     <Body rdf:about="http://www.olympus.com#Olympus-OM-10-body">
>          <shutter-speed>1/2000 sec. to 10 sec.</shutter-speed>
>          <cost>$345 USD</cost>
>     </Body>

We need to sort out whether this is talking about the class of all OM-10 
bodies or a particular one.  The URI suggests you mean the class of all 
OM-10 bodies, but the specific price suggests a particular one - it can't 
be list price - they don't make them any more.   Hmmm, it doesn't do 1/2000 
sec.

So maybe we should model both concepts - you might want to simplify this.


Maybe something like:

<rdfs:Class rdf:ID="PhotographicEquipment">
</rdfs:Class>

<rdfs:Class rdf:ID="Camera">
   <rdfs:subClassOf rdf:resource="#PhotographicEquipment"/>
</rdfs:Class>

<rdfs:Class rdf:ID="CameraPart">
   <rdfs:subClassOf rdf:resource="#PhotographicEquipment"/>
</rdfs:Class>

<rdf:Property rdf:ID="hasPart"/>

<!-- the class of all camera bodies -->

<rdfs:Class rdf:ID="Body">
   <rdfs:subClassOf rdf:resource="#CameraPart"/>
</rdfs:Class>

<-- the class of OM-10 camera bodies -->

<rdfs:Class rdf:about="http://www.olympus.com#Olympus-OM-10-body">
   <rdfs:subClassOf rdf:resource="#Body"/>
   <cam:shutterSpeedRange>1/2000 to 10 seconds</cam:shutterSpeedRange>
</rdfs:Class>

<rdfs:Class rdf:ID="Lens">
   <rdfs:subClassOf rdf:resource="#CameraPart"/>
</rdfs:Class>

<rdfs:Class rdf:ID="AllInOne">
   <rdfs:subClassOf rdf:resource="#Camera"/>
</rdfs:Class>

Now your instance data would look like:

<oly:Olympus-OM-10-body>
   <cost>$345</cost>
</oly:Olympus-OM-10-body>


>I want to be able to infer that this is data about a Camera Body.  That
>is, if my Web Bot is searching for Camera info, it should be able to
>infer that this is in fact Camera info.

The camera is of type oly:om10 which is a subclass of photo:Body which is a 
subclass of photo:CameraPart which is a subclass of 
photo:PhotographicEquipment.


>10. Consider this:
>
>     <Lens rdf:about="http://www.olympus.com#EX38">
>          <compatibleWith
>             rdf:resource="http://www.olympus.com#Olympus-OM-10-body
>          <focal-length>75-300mm zoom</focal-length>
>          <f-stop>4.0-4.5</f-stop>
>          <cost>$295 USD</cost>
>     </Lens>
>
>I want to be able to infer that this is data about a Camera Lens.  That
>is, if my Web Bot is searching for Camera info, it should be able to
>infer that this is in fact Camera info.

Yup - same as above

You might model this as a relationship between classes of body and classes 
of lens

<rdfs:Class rdf:about="http://www.olympus.com#EX38">
   <rdfs:subClassOf rdf:resource="#Lens">
   <compatibleWith rdf:resource="http://www.olympus.com#Olympus-OM-10-body"/>
</rdfs:Class>


>Those are the things that I want to model.  The relationship between
>Body and Camera, and Lens and Camera are especially fuzzy in my mind.
>Can you help flesh out this model?  /Roger


Brian
Received on Monday, 14 April 2003 08:48:50 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:58 GMT