[rdfweb-dev] Photo database ontology decisions

Cameron McCormack cam-rdfweb-dev at aka.mcc.id.au
Fri Oct 8 05:25:41 UTC 2004


Hi everyone.  I'm new here, so be gentle. :-)

I'm making a photo database using Jena and I'm deciding how to arrange my
data.  These are my criteria:

  - I should be able to describe photos and videos that I or someone
    else has taken.
  - Each photo has three forms: the original, a scaled down version for
    web pages, and a thumbnail.
  - Each video has a thumbnail.
  - For each photo and video I want to specify:
      - a name and an XHTML description
      - who is in it
      - where it was taken
      - at what event it was taken
  - In the future I may get some GPS equipment and want to tag my photos
    and videos with coordinates, but for the moment I just want to
    specify a place name.  These place names could be something like
    "China" or "Melbourne" or "my kitchen".  I want it so that I can
    search for photos taken in Melborne and that will also come up with
    those taken in my house (since it is in Melbourne).
  - Events will be things like "my birthday, 2004" or "trip to the US,
    2004".  I want a similar thing to places, where events can be parts
    of other events.  For example, searching for photos from "trip to
    the US, 2004" would result in photos from the "WWW 2004" event,
    among others.  Events will have a start time and an end time.
    I also would like to use subevents for different days of a trip, for
    example "day 3 of my trip to the US, 2004".  I don't want limit days
    to containing photos with the same YYYY-MM-DD, in case I stay up
    past midnight and want to consider those photos as part of the same
    day.

So I have been shopping for ontologies and Libby kindly pointed me to

  http://esw.w3.org/topic/SimplePhotoAnnotation

and also convinced me not to give URIs to the people in my photos.  I
still have some questions, however.

  1. Does it really matter if my cyc:Event and foaf:Person resources
     don't have any inverse functional properties associated with them?

  2. How should I label my cyc:Event resources?  dc:title or rdfs:label
     or something else?  What if I have

       [ a cyc:Event ;
         rdfs:label "SVG Open 2004" ;
	 foaf:homepage <http://www.svgopen.org/2004/> ] .
     
     and someone else says

       [ a cyc:Event ;
         rdfs:label "SVG Open conference, 2004" ;
	 foaf:homepage <http://www.svgopen.org/2004/> ] .

     ?  Does it matter?

  3. Is there some existing RDF data that has continents/countries/
     states/cities/suburbs arranged hierarchically for me to use, or
     some ontology to let me specify this?  I came across the Thesaurus
     of Geographic Names, which looks nice, but I gather not free.
     If there isn't an existing data set I could use, what would be the
     best way to designate a place being a "sub place" of another?

       :australia a ex:place ;
         rdfs:label "Australia" .

       :melbourne a ex:place ;
         rdfs:label "Melbourne" ;
	 ex:subPlaceOf :australia .
       
       :myhouse a ex:place ;
         rdfs:label "My house" ;
	 ex:subPlaceOf :melbourne.

     I suppose I would have different classes for countries, cities,
     etc.  How would queries work with this transitive relation?  I
     don't want to have to specify for photos taken in Melbourne that 
     they are also in Australia.
     
     If I do create my own place resources, would it be bad to give them
     URIs?

     Any ideas on giving locations to these places?  Not necessarily
     just lat/long coordinates, but maybe areas?

  4. How should I associate my reduced web page friendly version of my
     photos to the original?  Make up a term, or is there an existing
     term which means "the same but lower quality" or something like
     that?

  5. If I have properties (like name and description) associated with
     the originals of my photos, should these properties also be
     associated with the reduced and thumbnail versions?

  6. How should I specify the temporal range of my cyc:Event resources?
     Should I borrow dtstart and dtduration from ical?  I would rather
     be able to specify less precise start and end times, though, such
     as "2004-09-08" to "2004-09-10" without giving times.

That's all for now, I think.

Thanks for your forthcoming advice,

Cameron

-- 
Cameron McCormack
|  Web: http://mcc.id.au/
|  ICQ: 26955922



More information about the foaf-dev mailing list