You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
881 lines
42 KiB
881 lines
42 KiB
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
|
<title>Describing and retrieving photos using RDF and HTTP</title>
|
|
<style type="text/css">
|
|
.figure { margin: 1em 0}
|
|
.caption { font-style: italic; margin: 0.5em 1em }
|
|
.warning { text-decoration: underline}
|
|
.warning { color: #FF0000}
|
|
.warning { font-weight: bold}
|
|
.exclude { border: solid thin; padding: 0.5em }
|
|
BODY .exclude { color: #417F00}</style>
|
|
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/TR/W3C-NOTE">
|
|
</head>
|
|
|
|
<body lang="en">
|
|
|
|
<div class="head">
|
|
<a href="http://www.w3.org/"><img height="48" width="72" alt="W3C" src="http://www.w3.org/Icons/w3c_home"></a>
|
|
|
|
<h1 id="describing">Describing and retrieving photos using RDF and HTTP</h1>
|
|
|
|
<h2 class="no-num no-toc" id="w3c-note">W3C Note 19 April 2002</h2>
|
|
<dl>
|
|
<dt>This version:</dt>
|
|
<dd><a href="http://www.w3.org/TR/2002/NOTE-photo-rdf-20020419">http://www.w3.org/TR/2002/NOTE-photo-rdf-20020419</a></dd>
|
|
<dt>Latest version:</dt>
|
|
<dd><a href="http://www.w3.org/TR/photo-rdf">http://www.w3.org/TR/photo-rdf</a></dd>
|
|
<dt>Previous version:</dt>
|
|
<dd><a href="http://www.w3.org/TR/2000/NOTE-photo-rdf-20000928/">http://www.w3.org/TR/2000/NOTE-photo-rdf-20000928</a></dd>
|
|
<dt>Authors:</dt>
|
|
<dd><a href="http://www.w3.org/People/Lafon">Yves Lafon</a>, <a href="http://www.w3.org/">W3C</a>, <a href="mailto:ylafon@w3.org">ylafon@w3.org</a><br>
|
|
<a href="http://www.w3.org/People/Bos">Bert Bos</a>, <a href="http://www.w3.org/">W3C</a>, <a href="mailto:bert@w3.org">bert@w3.org</a></dd>
|
|
</dl>
|
|
|
|
<p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice-20000612#Copyright">Copyright</a>
|
|
© 2002 <a href="http://www.w3.org/"><abbr title="World Wide Web Consortium">W3C</abbr></a><sup>®</sup> (<a href="http://www.lcs.mit.edu/"><abbr title="Massachusetts Institute of Technology">MIT</abbr></a>, <a href="http://www.inria.fr/"><acronym lang="fr" title="Institut National de Recherche en Informatique et Automatique">INRIA</acronym></a>,
|
|
<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice-20000612#Legal_Disclaimer">liability</a>,
|
|
<a href="http://www.w3.org/Consortium/Legal/ipr-notice-20000612#W3C_Trademarks">trademark</a>,
|
|
<a href="http://www.w3.org/Consortium/Legal/copyright-documents-19990405">document
|
|
use</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-software-19980720">software
|
|
licensing</a> rules apply.</p>
|
|
<hr title="Separator for header">
|
|
</div>
|
|
|
|
<h2 class="no-num" id="abstract">Abstract</h2>
|
|
|
|
|
|
|
|
<p>This note describes a project for describing & retrieving (digitized)
|
|
photos with (RDF) metadata. It describes the RDF schemas, a data-entry
|
|
program for quickly entering metadata for large numbers of photos, a way to
|
|
serve the photos and the metadata over HTTP, and some suggestions for search
|
|
methods to retrieve photos based on their descriptions.</p>
|
|
|
|
<p>The data-entry program has been implemented in Java, a specific Jigsaw
|
|
frame has been done to retrieve the RDF from the image through HTTP. The RDF
|
|
schema uses the Dublin Core schema as well as additional schemas for
|
|
technical data.</p>
|
|
|
|
<p>We already have a demo site and there is sample source code available for
|
|
<a href="#dlsoft">download</a>.</p>
|
|
|
|
<p>The system can be useful for collections of holiday snapshots as well as
|
|
for more ambitious photo collections.</p>
|
|
|
|
<h2 class="no-num" id="status">Status of this document</h2>
|
|
|
|
<p>This document is a NOTE made available by the W3C for discussion only.
|
|
Publication of this Note by W3C indicates no endorsement by W3C or the W3C
|
|
Team, or any W3C Members. Please send comments to the authors.</p>
|
|
|
|
<p>We plan to update this note after some more experience has been gained
|
|
with the system and the schemas.</p>
|
|
|
|
<p>A list of current W3C technical reports and publications, including
|
|
Working Drafts and Notes, can be found at <a href="http://www.w3.org/TR/">http://www.w3.org/TR/</a>.</p>
|
|
|
|
<h2 class="no-num" id="table">Table of contents</h2>
|
|
|
|
<div>
|
|
<!--begin-toc-->
|
|
<ul class="toc">
|
|
<li><a href="#abstract">Abstract</a>
|
|
<li><a href="#status">Status of this document</a>
|
|
<li><a href="#table">Table of contents</a>
|
|
<li><a href="#goals"><span class="secno">1. </span>Goals of the project</a>
|
|
<li><a href="#overview"><span class="secno">2. </span>Overview of the system</a>
|
|
<li><a href="#the-data-entry"><span class="secno">3. </span>The data-entry program "rdfpic"</a>
|
|
<li><a href="#Jigsaw1"><span class="secno">4. </span>The Jigsaw extension</a>
|
|
<li><a href="#the-rdf"><span class="secno">5. </span>The RDF schemas</a>
|
|
<ul class="toc">
|
|
<li><a href="#the-dublin"><span class="secno">5.1. </span>The Dublin Core Schema</a>
|
|
<li><a href="#the-technical"><span class="secno">5.2. </span>The Technical Schema</a>
|
|
<li><a href="#the-content"><span class="secno">5.3. </span>The content schema</a>
|
|
</ul>
|
|
<li><a href="#suggestions"><span class="secno">6. </span>Suggestions for extensions</a>
|
|
<li><a href="#the-online"><span class="secno">7. </span>The online demo</a>
|
|
<li><a href="#downloading"><span class="secno">8. </span>Downloading the code</a>
|
|
<li><a href="#related"><span class="secno">9. </span>Related research and projects</a>
|
|
<li><a href="#acknowledgments"><span class="secno">10. </span>Acknowledgments</a>
|
|
<li><a href="#references"><span class="secno">11. </span>References</a>
|
|
<li><a href="#AppendixA">Appendix A: The RDF schemas</a>
|
|
<ul class="toc">
|
|
<li><a href="#the-modified">The (modified) Dublin Core schema</a>
|
|
<li><a href="#the-technical0">The technical schema</a>
|
|
<li><a href="#the-content0">The content schema</a>
|
|
</ul>
|
|
<li><a href="#AppendixB">Appendix B: example of metadata</a></ul>
|
|
<!--end-toc-->
|
|
</div>
|
|
<hr>
|
|
|
|
<h2 id="goals"><span class="secno">1. </span>Goals of the project</h2>
|
|
|
|
<p>The goals of the project are partially personal, partially to promote W3C
|
|
technology. The personal reasons are that we, the authors, have large numbers
|
|
of photos but always have difficulty finding the exact ones that we want to
|
|
show to somebody. Digitizing them and describing them in RDF should make it
|
|
quicker to find the ones we are looking for at any moment.</p>
|
|
|
|
<p>We also think that a concrete example of an RDF schema and a working
|
|
system around it can help explain the potential of metadata on the Web,
|
|
especially since traditional, text-based search engines as they are used for
|
|
HTML document will clearly not work for photos. Also, using metadata will
|
|
automatically provide a non-visual description of the photos, hence
|
|
contributing to accessibility.</p>
|
|
|
|
<p>The project, then, is to take the existing pieces of technology (RDF
|
|
<a href="#RDF" rel="biblioentry">[RDF]</a>, HTTP <a href="#HTTP" rel="biblioentry">[HTTP]</a> and Jigsaw <a href="#Jigsaw" rel="biblioentry">[Jigsaw]</a> from W3C; JPEG <a href="#JPEG" rel="biblioentry">[JPEG]</a>, Java
|
|
<a href="#Java" rel="biblioentry">[Java]</a> from elsewhere) and provide some glue between them to produce an
|
|
interesting as well as useful application.</p>
|
|
|
|
<h2 id="overview"><span class="secno">2. </span>Overview of the system</h2>
|
|
|
|
<div class="figure">
|
|
<p><img src="photordfsystem" alt="Diagram of data entry system"></p>
|
|
|
|
<p class="caption">Diagram of the parts of the photo-RDF system. Top left:
|
|
the pictures are digitized and stored as JPEG images. Bottom left: metadata
|
|
is written into the pictures with the data-entry program (and can also be
|
|
edited if corrections are necessary). Right: requests from the Web are served
|
|
by Jigsaw, by sending either the picture or the metadata, depending on the
|
|
form of the request.</p>
|
|
</div>
|
|
|
|
<p>The system comprises the following, largely independent, pieces:</p>
|
|
<ol>
|
|
<li>Scanning the photos and storing them in JPEG format. We scan from
|
|
negatives, for best quality, but any process that yields JPEG could be
|
|
used, including digital cameras. We will not deal with this part
|
|
below.</li>
|
|
<li>A data-entry program that allows easy entry/editing of the metadata for
|
|
each photo and stores the data in RDF form inside the JPEG file. This
|
|
program is described below.</li>
|
|
<li>A module for the Jigsaw server that can serve either the JPEG image
|
|
data or the RDF description that is stored in it, using HTTP content
|
|
negotiation to determine which of the two a client wants. Described
|
|
below.</li>
|
|
</ol>
|
|
|
|
<p>Some digital cameras are already producing information about the picture,
|
|
which may be read and reformatted in RDF by scripts. We will not deal with
|
|
that in this version of the metadata editor.</p>
|
|
|
|
<p>The RDF data is expressed in three separate schemas, one of which is the
|
|
Dublin Core schema. The other two deal with technical data of the photo and
|
|
with subject categories. The reason for using three schemas is solely to
|
|
allow each of them to be used in other projects; to the users of the
|
|
data-entry program the actual RDF is completely hidden.</p>
|
|
|
|
<h2 id="the-data-entry"><span class="secno">3. </span>The data-entry program "rdfpic"</h2>
|
|
|
|
<div class="figure">
|
|
<p><a href="screendump-tech-2-1.png"><img src="screendump-tech-2-1-small" alt="Screendump of the metadata edit"></a></p>
|
|
|
|
<p style="font-style: italic" class="caption">Screen dump of
|
|
<strong>rdfpic</strong>, the metadata editor, showing the screen to enter
|
|
technical data. (The screen dump has been reduced by 50%)</p>
|
|
</div>
|
|
|
|
<p>The data-entry program is very simple. It has been designed to enable
|
|
quick entry of metadata for lots of photos, under the assumption that the
|
|
photos will usually be from one or a few series. Most fields therefore show
|
|
by default the value that was entered for the previous photo, and give quick
|
|
access to the values entered for the last few photos. Typically, only very
|
|
few fields will have to be changed from one photo to the next and the amount
|
|
of typing will be minimized.</p>
|
|
|
|
<p>The program is written in Java, but the user interface is in fact
|
|
generated at run-time directly from a machine-readable version of the schemas
|
|
(currently not the RDF syntax, but a transformation of it, with equivalent
|
|
information). This means that the program does not need to be changed when we
|
|
change the RDF schemas.</p>
|
|
|
|
<p>The RDF data is stored in the JPEG file in comment blocks (blocks of type
|
|
"COM", as defined by ISO DIS 10918-1). According to the JPEG standard, a
|
|
comment block can contain arbitrary text. There is no way to assign a type to
|
|
the text. We simply rely on the fact that RDF can easily be distinguished
|
|
from plain text by heuristics. JPEG limits each comment block to 64K, but
|
|
there can be as many blocks as necessary, so arbitrary amounts of text can be
|
|
added. In practice, the descriptions generated by the rdfpic program are
|
|
typically only a few hundred bytes long.</p>
|
|
|
|
<h2 id="Jigsaw1"><span class="secno">4. </span>The Jigsaw extension</h2>
|
|
|
|
<p>To serve either the RDF version or the complete image using existing
|
|
browsers and tools, the best way was to use Content Negotiation. Of course,
|
|
that doesn't exclude the use of other techniques, such as HTTP extensions, to
|
|
be able to retrieve and store metadata in a better way.</p>
|
|
|
|
<p>Using Content Negotiation has two benefits: it will work right away with
|
|
all text-based browsers (lynx, emacs with emacsspeak, etc.) and the output
|
|
can be rendered directly by selecting, e.g., the title or the description
|
|
from the RDF. Also, an RDF crawler will be able to get all the descriptions
|
|
of a collection of photos to create a knowledge database, just by asking for
|
|
the right MIME type.</p>
|
|
|
|
<p>In Jigsaw <a href="#Jigsaw" rel="biblioentry">[Jigsaw]</a>, a frame has been created, to simulate two different
|
|
resources under the same URI, the one of the image itself. Those two
|
|
resources have their own set of HTTP values, such as ETags, Content-Length
|
|
and others and the result is sent out using the classic Content Negotiation
|
|
of HTTP.</p>
|
|
|
|
<p>The RDF can be also be fetched directly without doing Content Negotiation,
|
|
by just adding the wanted MIME type after a semicoln (;) e.g.:
|
|
foo.jpg;application%2Frdf+xml ("%2F" is "/", escaped for occurrence in a
|
|
URL.)</p>
|
|
|
|
<p>Note that it is also possible to modify the RDF description using the PUT
|
|
method, provided the ETag of the description is in the HTTP header of the
|
|
request.</p>
|
|
|
|
<h2 id="the-rdf"><span class="secno">5. </span>The RDF schemas</h2>
|
|
|
|
<p>The metadata is separated into three different schemas:</p>
|
|
<ol>
|
|
<li><em>Dublin Core schema.</em> The Dublin Core <a href="#DC" rel="biblioentry">[DC]</a> schema is a general
|
|
schema for identifying original works, typically books and articles, but
|
|
also films, paintings or photos. It contains such properties as creator,
|
|
editor, title, date of publishing and publisher. It is being developed by
|
|
the Dublin Core Metadata Initiative and the version we use is the
|
|
RDF-format of version 1.1.</li>
|
|
<li><em>Technical schema.</em> This schema captures technical data about
|
|
the photo and the camera, such as the type of camera, the type of film,
|
|
the date the film was developed and the scanner and software used for
|
|
digitizing.</li>
|
|
<li><em>Content schema.</em> This schema is used to categorize the subject
|
|
of the photo by means of a controlled vocabulary. This schema allows
|
|
photos to be retrieved based on such characteristics as portrait, group
|
|
portrait, landscape, architecture, sport, animals, etc.</li>
|
|
</ol>
|
|
|
|
<p>All the properties are optional. The more properties are given values, the
|
|
better the photo will be described and the easier it will be to find it, but
|
|
leaving properties undefined doesn't make the metadata invalid.</p>
|
|
|
|
<p>There are no dependencies between the properties: each property can be
|
|
given a value independent of whether any other property has a value. The
|
|
values are also independent, except for restrictions of common sense: a photo
|
|
cannot have been taken after the date on which the film was developed...</p>
|
|
|
|
<h3 id="the-dublin"><span class="secno">5.1. </span>The Dublin Core Schema</h3>
|
|
|
|
<p>We don't use all properties defined by the Dublin Core (that is to say:
|
|
the others can be added, but are ignored by our metadata editor). Here is an
|
|
interpretation of the Dublin Core properties, applied to photo material. A
|
|
machine-readable schema is included in <a href="#AppendixB">appendix B</a>.
|
|
In parentheses the label that is shown in the user interface of rdfpic, if it
|
|
is different from the property name.</p>
|
|
<dl>
|
|
<dt>title</dt>
|
|
<dd>a short description of the photo. Example: <em>Marian climbs on the
|
|
"elephant"</em></dd>
|
|
<dt>subject</dt>
|
|
<dd>a set of keywords to describe the photo. See the <a href="#content">content schema</a> below for the list of keywords.
|
|
Example: <em>portrait, landscape</em></dd>
|
|
<dt>description</dt>
|
|
<dd>a longer description of the photo. Example: <em>Marian attempts to
|
|
climb on the granite rock that is nicknamed "the elephant"</em></dd>
|
|
<dt>creator ("author/creator")</dt>
|
|
<dd>the photographer, as a URL that can be further described with other
|
|
schemas. Example: <em>http://www.example.org/People/Bos</em></dd>
|
|
<dt>publisher</dt>
|
|
<dd>the person or institution making the photo available, often the same
|
|
as the creator. Example: <em>http://www.example.org/People/Bos</em></dd>
|
|
<dt>contributor</dt>
|
|
<dd>a person who contributed in some way, e.g., the person who digitized
|
|
the photo; may be a URL or a name.</dd>
|
|
<dt id="date">date</dt>
|
|
<dd>the date and time the photo was taken, conforming to ISO format
|
|
<a href="#ISOdate" rel="biblioentry">[ISOdate]</a>. The year is required, everything else can be omitted:
|
|
yyyy[-mm[-dd[Thh:mm[:ss[.sTZD]]]]]. The default time zone is UTC.
|
|
Example: <em>1999-10-01</em></dd>
|
|
<dt>type</dt>
|
|
<dd>always "image" (see the Dublin Core's <a href="http://dublincore.org/documents/2000/07/11/dcmi-type-vocabulary/">List
|
|
of Resource Types</a>)</dd>
|
|
<dt>format</dt>
|
|
<dd>always "image/jpeg"</dd>
|
|
<dt>identifier ("number")</dt>
|
|
<dd>a number for the photo that is meaningful to the publisher. This is
|
|
not the URL of the photo and it does not have to be globally unique.
|
|
Example: <em>312</em></dd>
|
|
<dt>source</dt>
|
|
<dd>not used.</dd>
|
|
<dt>language</dt>
|
|
<dd>not used.</dd>
|
|
<dt>relation</dt>
|
|
<dd>identifies a series: the event or topic for a series of photographs.
|
|
Can be a URL or a string. Example: <em>Marian in Le Sidobre.</em></dd>
|
|
<dt>coverage ("location")</dt>
|
|
<dd>the location shown on the photo. (Note that we only use the "spatial
|
|
coverage," not the "temporal coverage," since we assume that a photo is
|
|
instantaneous and thus the date field is enough.). Example: <em>Le
|
|
Sidobre (Tarn)</em></dd>
|
|
<dt>rights</dt>
|
|
<dd>copyright statement, or the URL for one. Example:
|
|
<em>http://www.example.org/People/Lafon/Copyright?1998</em></dd>
|
|
</dl>
|
|
|
|
<h3 id="the-technical"><span class="secno">5.2. </span>The Technical Schema</h3>
|
|
|
|
<p>The <em>technical schema</em> is defined by this RDF schema (for the
|
|
formal definition, see <a href="#AppendixB">appendix B)</a>:</p>
|
|
<dl>
|
|
<dt>camera</dt>
|
|
<dd>the brand and type of the camera, or a URL for the camera. If the
|
|
latter, the URL identifies one actual camera, not all cameras of that
|
|
type. Example:
|
|
<em>http://www.example.org/People/Lafon/FooCamera8000i</em></dd>
|
|
<dt>film</dt>
|
|
<dd>the brand and type of film. In contrast to the camera property, this
|
|
is not an individual roll of film, but identifies all films of the same
|
|
type. (We assume films of the same type are sufficiently similar;
|
|
except for fabrication errors, they are interchangeable.) The value may
|
|
be a string or a URL that is further described elsewhere. As a
|
|
convention, digital cameras should be considered as "digital" film.
|
|
Example: <em>Ilfoo HP5</em></dd>
|
|
<dt>lens</dt>
|
|
<dd>a definition of the lens used, maybe a URI describing it, a URI
|
|
pointing to the camera for compact cameras, or just plain text
|
|
description. Example: <em>FooLens AF:70-210</em></dd>
|
|
<dt>devel-date</dt>
|
|
<dd>date on which the film was developed. The date must be in the same
|
|
form as the <a href="#date">date</a> property. Example:
|
|
<em>1998-08-04</em></dd>
|
|
</dl>
|
|
|
|
<h3 id="the-content"><span class="secno">5.3. </span>The content schema</h3>
|
|
|
|
<p>The <a name="content"><em>content schema</em></a> contains the keywords we
|
|
use in the "subject" property of the Dublin Core schema. That property should
|
|
contain as many of the following keywords as are applicable. The keywords
|
|
have the following meaning:</p>
|
|
<dl>
|
|
<dt>Portrait</dt>
|
|
<dd>The photo contains a portrait of one person.</dd>
|
|
<dt>Group-portrait</dt>
|
|
<dd>The photo contains a portrait of a group of people.</dd>
|
|
<dt>Landscape</dt>
|
|
<dd>The photo contains a landscape or skyline.</dd>
|
|
<dt>Baby</dt>
|
|
<dd>The photo contains a baby.</dd>
|
|
<dt>Architecture</dt>
|
|
<dd>The photo contains interesting buildings.</dd>
|
|
<dt>Wedding</dt>
|
|
<dd>The photo contains scenes from a wedding.</dd>
|
|
<dt>Macro</dt>
|
|
<dd>The photo contains an extreme close-up and would, when viewed under
|
|
normal circumstances, be larger than life-size.</dd>
|
|
<dt>Graphic</dt>
|
|
<dd>The photo contains a pattern, texture or design, that is interesting
|
|
for its abstract, graphic quality.</dd>
|
|
<dt>Panorama</dt>
|
|
<dd>The photo contains a wide-angle view of a landscape or skyline.</dd>
|
|
<dt>Animal</dt>
|
|
<dd>The photo contains an animal.</dd>
|
|
</dl>
|
|
|
|
<h2 id="suggestions"><span class="secno">6. </span>Suggestions for extensions</h2>
|
|
|
|
<p>Here are some ideas for extensions to the system that we are still
|
|
studying. In no particular order:</p>
|
|
<ul>
|
|
<li>Some digital cameras already include technical data that is similar to
|
|
our technical schema in the pictures they produce. A simple script could
|
|
convert that data to RDF.</li>
|
|
<li>Another Jigsaw extension could automatically generate HTML pages with
|
|
thumbnails and descriptions.</li>
|
|
<li>Our system currently doesn't include a search engine. A client (or
|
|
proxy) that collects RDF of photos on the Web into a database and allows
|
|
queries over it could be a follow-on project.</li>
|
|
<li>A very limited search system could be provided by the server itself: a
|
|
query to the parent resource of a set of photos (i.e., the URL minus the
|
|
last path segment) could be handled by a server module that searches in
|
|
the set of photos.</li>
|
|
<li>Our current list of keywords to describe the contents of a photo is
|
|
very limited. There exist categorization systems that are much more
|
|
extensive. We are looking for something in between: fairly descriptive,
|
|
but still easy to use.</li>
|
|
<li>There could be an additional schema for further describing portrait and
|
|
group photos, that would allow listing the people in the picture. Similar
|
|
topic-specific schemas could exist for other kinds of photos.</li>
|
|
<li>Sometimes a detail of a photo is interesting as a picture on its own.
|
|
There could be a system to address a region of a photo and attach
|
|
metadata to it.</li>
|
|
<li>The rdfpic program could support the Adobe XMP format <a href="#XMP" rel="biblioentry">[XMP]</a>.</li>
|
|
<li>The rdfpic editor should read & write metadata using HTTP GET &
|
|
PUT in addition to read & write from the local file system. The <a href="#Jigsaw1">Jigsaw extension</a> in fact already supports that.</li>
|
|
</ul>
|
|
|
|
<h2 id="the-online"><span class="secno">7. </span>The online demo</h2>
|
|
|
|
<p>A sample server has been set up, and <a href="http://jigsaw.w3.org/Yves/Australia/1998/04/">some pictures</a> are
|
|
available. Any request to text version of those pictures will give you the
|
|
RDF description of the picture. I.e., an HTTP request for MIME type
|
|
<code>image/jpeg</code> or <code>image/*</code> returns the photo, a request
|
|
for <code>application/rdf+xml</code> or <code>application/*</code> returns
|
|
the metadata. Or you can just view the metadata by adding
|
|
";application%2Frdf+xml" at the end of the pictures URI. Note that the index
|
|
page has been created by a script using the RDF embedded in the pictures for
|
|
the captions and alt text.</p>
|
|
|
|
<p>We plan to steadily increase the number of photos that are online.</p>
|
|
|
|
<h2 id="downloading"><span class="secno">8. </span><a name="dlsoft"></a>Downloading the code</h2>
|
|
|
|
<p>The Jigsaw extension and the JPEG related classes are a available in the
|
|
<a href="/Jigsaw/">Jigsaw</a> 2.0.4 distribution, the metadata editor <em><a href="http://jigsaw.w3.org/rdfpic/">rdfpic</a></em> is available from the <a href="http://jigsaw.w3.org/">Jigsaw demo site</a>.</p>
|
|
|
|
<h2 id="related"><span class="secno">9. </span>Related research and projects</h2>
|
|
|
|
<p>An apparently very similar system to ours was developed by Jane Hunter and
|
|
Zhimin Zhan <a href="#HunterZhan" rel="biblioentry">[HunterZhan]</a>, but for the PNG image format and with PNG's
|
|
built-in keyword/value format rather than RDF to express the metadata,
|
|
although they use RDF to specify the metadata schemas.</p>
|
|
|
|
<p>The <a href="http://www.iptc.org/">IPTC</a> has a list of keywords for
|
|
describing photo-journalistic images. <a href="http://www.adobe.com/">Adobe</a> Photoshop supports a subset of
|
|
them.</p>
|
|
|
|
<p>The proposed DIG2000 <a href="#DIG2000" rel="biblioentry">[DIG2000]</a> file format for the JPEG2000 <a href="#JPEG2000" rel="biblioentry">[JPEG2000]</a>
|
|
image compression algorithm contains an XML-based metadata block with entries
|
|
for people, places, events, GPS location, camera type, etc. It allows
|
|
extensions with additional entries. The draft of October 1998 doesn't use
|
|
RDF.</p>
|
|
|
|
<p>Since we first published this note and released the rdfpic program (in
|
|
March 2000), Adobe has developed a similar technology, called "Extensible
|
|
Metadata Platform" <a href="#XMP" rel="biblioentry">[XMP]</a>. XMP was first published around September 2001. It
|
|
stores the RDF in the APP1 chunk of JPEG, rather than the COM (comment) chunk
|
|
and it adds a magic string ("W5M0MpCehiHzreSzNTczkc9d") at the start of the
|
|
RDF to help distinguish XMP from other things that might be present in the
|
|
JPEG file. XMP embedding is also defined for other formats than JPEG, such as
|
|
TIFF and PDF. Like us, Adobe recommends the Dublin Core schema and offers
|
|
additional schemas for recording version history, image manipulations,
|
|
etc.</p>
|
|
|
|
<h2 id="acknowledgments"><span class="secno">10. </span>Acknowledgments</h2>
|
|
|
|
<p>The first version of the rdfpic metadata editor has been written by <a href="http://koala.ilog.fr/thierry/">Thierry Kormann</a> (formerly of <a href="http://www.bull.fr/">Bull</a>, France). The second version is the work
|
|
of Eamon Nerbonne. <a href="http://koala.ilog.fr/colas/">Colas Nahaboo</a>
|
|
(also formerly of <a href="http://www.bull.fr/">Bull</a>) has given valuable
|
|
advise.</p>
|
|
|
|
<p>Janne Saarela (of Pro-Solution, now <a href="http://www.profium.com/">Profium</a>, Finland) has written the original
|
|
RDF schema from which the current schemas descend and has helped with
|
|
checking and reviewing the schemas. His program <a href="http://www.w3.org/RDF/Validator/">SiRPAC</a> has been a great help in
|
|
checking and visualizing the schemas as well as the actual metadata generated
|
|
by the metadata editor.</p>
|
|
|
|
<h2 id="references"><span class="secno">11. </span>References</h2>
|
|
<!-- Sorted by label -->
|
|
<dl>
|
|
<!---->
|
|
<dt id="DC">[DC]</dt>
|
|
<dd>Dublin Core metadata initiative. <cite>Dublin Core metadata element set, version 1.1.</cite> July 1999.
|
|
Dublin Core recommendation. URL: <a href="http://dublincore.org/documents/1999/07/02/dces/">http://dublincore.org/documents/1999/07/02/dces/</a>
|
|
</dd>
|
|
<!---->
|
|
<dt id="DIG2000">[DIG2000]</dt>
|
|
<dd>Digital Imaging Group. <cite>DIG2000 file format proposal.</cite> Oct 1998.
|
|
Report (draft) ISO/IEC JTC1/SG29/WG1 N1017. URL: <a href="http://www.i3a.org/pdf/wg1n1017.pdf">http://www.i3a.org/pdf/wg1n1017.pdf</a>
|
|
</dd>
|
|
<!---->
|
|
<dt id="HTTP">[HTTP]</dt>
|
|
<dd>Fielding, Roy,; et. al. <cite>Hypertext Transfer Protocol - HTTP/1.1.</cite> June 1999.
|
|
Internet RFC 2616. URL: <a href="ftp://ftp.isi.edu/in-notes/rfc2616.txt">ftp://ftp.isi.edu/in-notes/rfc2616.txt</a>
|
|
</dd>
|
|
<!---->
|
|
<dt id="HunterZhan">[HunterZhan]</dt>
|
|
<dd>Hunter, Jane; Zhan, Zhimin. "An Indexing and Querying System for Online Images Based on the PNG Format and Embedded Metadata" in: <cite>ARLIS/ANZ Conference.</cite> Sep 1999.
|
|
Brisbane, Australia. URL: <a href="http://archive.dstc.edu.au/RDU/staff/jane-hunter/PNG/paper.html">http://archive.dstc.edu.au/RDU/staff/jane-hunter/PNG/paper.html</a>
|
|
</dd>
|
|
<!---->
|
|
<dt id="ISOdate">[ISOdate]</dt>
|
|
<dd>Wolf, Misha; Wicksteed, Charles. <cite>Date and time formats.</cite> Sep 1997.
|
|
Submission to W3C. URL: <a href="http://www.w3.org/TR/1998/NOTE-datetime-19980827">http://www.w3.org/TR/1998/NOTE-datetime-19980827</a>
|
|
</dd>
|
|
<!---->
|
|
<dt id="JPEG">[JPEG]</dt>
|
|
<dd>Hamilton, Eric. <cite>JPEG File Interchange Format.</cite> C-Cube Microsystems. Sep 1992.
|
|
Milpitas, CA, USA. URL: <a href="http://www.w3.org/Graphics/JPEG/jfif3.pdf">http://www.w3.org/Graphics/JPEG/jfif3.pdf</a>
|
|
</dd>
|
|
<!---->
|
|
<dt id="JPEG2000">[JPEG2000]</dt>
|
|
<dd>Joint Photographers Expert Group (JPEG). <cite>Jpeg 2000 image coding system.</cite> 9 Dec 1999.
|
|
Report (final committee draft) ISO/IEC CD15444-1:1999. URL: <a href="http://www.jpeg.org/fcd15444-1.zip">http://www.jpeg.org/fcd15444-1.zip</a>
|
|
</dd>
|
|
<!---->
|
|
<dt id="Java">[Java]</dt>
|
|
<dd>Gosling, James; Joy, Bill; Steele, Guy. <cite>The Java language specification.</cite> Addison-Wesley. 1998.
|
|
URL: <a href="http://java.sun.com/docs/books/jls/index.html">http://java.sun.com/docs/books/jls/index.html</a>
|
|
</dd>
|
|
<!---->
|
|
<dt id="Jigsaw">[Jigsaw]</dt>
|
|
<dd>Jigsaw Team (Yves Lafon & Benoit Mahe). <cite>Jigsaw 2.0 internal design.</cite> July 1999.
|
|
URL: <a href="http://www.w3.org/Jigsaw/Doc/Programmer/design.html">http://www.w3.org/Jigsaw/Doc/Programmer/design.html</a>
|
|
</dd>
|
|
<!---->
|
|
<dt id="RDF">[RDF]</dt>
|
|
<dd>Lassila, Ora; Swick, Ralph R. (eds). <cite>Resource Description Framework (RDF) model and syntax specification.</cite> Feb 1999.
|
|
W3C Recommendation. URL: <a href="http://www.w3.org/TR/1999/REC-rdf-syntax-19990222/">http://www.w3.org/TR/1999/REC-rdf-syntax-19990222/</a>
|
|
</dd>
|
|
<!---->
|
|
<dt id="Schema">[Schema]</dt>
|
|
<dd>Brickley, Dan; Guha, R. V.. <cite>Resource Description Framework (RDF) Schema Specification.</cite> 1999.
|
|
W3C working draft. URL: <a href="http://www.w3.org/TR/1999/PR-rdf-schema-19990303/">http://www.w3.org/TR/1999/PR-rdf-schema-19990303/</a>
|
|
</dd>
|
|
<!---->
|
|
<dt id="XMP">[XMP]</dt>
|
|
<dd>Adobe Systems Incorporated. <cite>eXtensible Metadata Platform (XMP).</cite> 2002.
|
|
URL: <a href="http://www.adobe.com/products/xmp/main.html">http://www.adobe.com/products/xmp/main.html</a>
|
|
</dd>
|
|
<!---->
|
|
</dl>
|
|
<!--
|
|
<h2 class="no-num">Appendix A: the KUIL description</h2>
|
|
|
|
<p>[...]</p>
|
|
|
|
<p>The KUIL description.</p>
|
|
|
|
<p>The XSL transformation to generate KUIL from the RDF schemas.</p>
|
|
-->
|
|
|
|
<h2 id="AppendixA" class="no-num">Appendix A: The RDF schemas</h2>
|
|
|
|
<p>The three schemas below (Dublin Core, technical and content) are
|
|
machine-readable schemas in the syntax proposed by the RDF schemas draft
|
|
<a href="#Schema" rel="biblioentry">[Schema]</a>.</p>
|
|
|
|
<h3 class="no-num" id="the-modified">The (modified) Dublin Core schema</h3>
|
|
|
|
<p>The schema below is a minimal RDF schema for the Dublin Core. The name of
|
|
the schema is <code>http://www.w3.org/2000/PhotoRDF/dc-1-0</code>, but as the
|
|
schema shows, each property is in fact a restriction of the DC property of
|
|
the same name, as found in <code>http://purl.org/dc/elements/1.1/</code> The
|
|
French translations of the labels are based on <a href="http://www-rocq.inria.fr/~vercoust/METADATA/DC-fr.1.1.html">those by
|
|
Anne-Marie Vercoustre</a>.</p>
|
|
<pre id="Technical2" class="no-num"><!--begin-include "dc.html"--><rdf:RDF
|
|
xmlns="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#"
|
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
|
|
|
|
<rdf:Property rdf:ID="title">
|
|
<label xml:lang="en">Title</label>
|
|
<label xml:lang="fr">Titre</label>
|
|
<label xml:lang="nl">Titel</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/title" />
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="creator">
|
|
<label xml:lang="en">Author/creator</label>
|
|
<label xml:lang="fr">Auteur/créateur</label>
|
|
<label xml:lang="nl">Auteur/maker</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/creator" />
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="subject">
|
|
<label xml:lang="en">Subject</label>
|
|
<label xml:lang="fr">Sujet</label>
|
|
<label xml:lang="nl">Onderwerp</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/subject" />
|
|
<range rdf:resource="http://www.w3.org/2000/PhotoRDF/content-1-0#Keywords"/>
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="description">
|
|
<label xml:lang="en">Description</label>
|
|
<label xml:lang="fr">Description</label>
|
|
<label xml:lang="nl">Beschrijving</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/description" />
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="publisher">
|
|
<label xml:lang="en">Publisher</label>
|
|
<label xml:lang="fr">Éditeur</label>
|
|
<label xml:lang="nl">Uitgever</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/publisher" />
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="contributor">
|
|
<label xml:lang="en">Contributor</label>
|
|
<label xml:lang="fr">Contributeur</label>
|
|
<label xml:lang="nl">Medewerker</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/contributor" />
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="date">
|
|
<label xml:lang="en">Date</label>
|
|
<label xml:lang="fr">Date</label>
|
|
<label xml:lang="nl">Date</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/date" />
|
|
<!-- use http://www.w3.org/TR/NOTE-datetime
|
|
format: YYYY[-MM[-DD[Thh:mm[:ss[.sTZD]]]]]
|
|
example: 1999-10-01T17:53
|
|
if TZD is omitted the timezone is UTC -->
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="type">
|
|
<label xml:lang="en">Resource type</label>
|
|
<label xml:lang="fr">Type de ressource</label>
|
|
<label xml:lang="en">Categorie</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/type" />
|
|
<!-- always "image in PhotoRDF -->
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="format">
|
|
<label xml:lang="en">Format</label>
|
|
<label xml:lang="fr">Format</label>
|
|
<label xml:lang="nl">Formaat</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/format" />
|
|
<!-- always "image/jpeg in PhotoRDF -->
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="identifier">
|
|
<label xml:lang="en">Number</label>
|
|
<label xml:lang="fr">Numéro</label>
|
|
<label xml:lang="nl">Nummer</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/identifier" />
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="source">
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/source" />
|
|
<!-- not used in PhotoRDF -->
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="language">
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/language" />
|
|
<!-- not used in PhotoRDF -->
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="relation">
|
|
<label xml:lang="en">Series</label>
|
|
<label xml:lang="fr">Série</label>
|
|
<label xml:lang="nl">Serie</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/relation" />
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="coverage">
|
|
<label xml:lang="en">Location</label>
|
|
<label xml:lang="fr">Endroit</label>
|
|
<label xml:lang="nl">Plaats</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/coverage" />
|
|
<!-- restricted to spatial coverage in PhotoRDF -->
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="rights">
|
|
<label xml:lang="en">Rights</label>
|
|
<label xml:lang="fr">Droits</label>
|
|
<label xml:lang="nl">Rechten</label>
|
|
<subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/rights" />
|
|
</rdf:Property>
|
|
|
|
</rdf:RDF>
|
|
<!--end-include-->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</pre>
|
|
|
|
<h3 class="no-num" id="the-technical0">The technical schema</h3>
|
|
|
|
<p>See <a href="#Technical2">the description above</a> for detailed
|
|
explanations of each of the properties. The name of this schema is
|
|
<code>http://www.w3.org/2000/PhotoRDF/technical-1-0#</code></p>
|
|
<pre><!--begin-include "tech.html"--><rdf:RDF
|
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
xmlns="http://www.w3.org/2000/01/rdf-schema#">
|
|
|
|
<Class rdf:ID="Technical-data">
|
|
<comment xml:lang="en">A class that represents technical
|
|
data about a photo</comment>
|
|
<comment xml:lang="fr">Une classe qui réprésente
|
|
les données techniques sur une photo</comment>
|
|
<comment xml:lang="nl">Een class die de technische
|
|
gegevens van een foto representeert.</comment>
|
|
</Class>
|
|
|
|
<rdf:Property rdf:ID="camera">
|
|
<label xml:lang="en">Camera</label>
|
|
<label xml:lang="fr">Appareil photo</label>
|
|
<label xml:lang="nl">Camera</label>
|
|
<comment xml:lang="en">Brand and type of camera</comment>
|
|
<comment xml:lang="fr">Marque et type de appareil photo</comment>
|
|
<comment xml:lang="nl">Cameramerk en -type</comment>
|
|
<domain rdf:resource="#Technical-data"/>
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="film">
|
|
<label xml:lang="en">Film</label>
|
|
<label xml:lang="fr">Pellicule</label>
|
|
<label xml:lang="nl">Film</label>
|
|
<comment xml:lang="en">Brand and type of film</comment>
|
|
<comment xml:lang="fr">Marque et type de pellicule</comment>
|
|
<comment xml:lang="nl">Filmmerk en -type</comment>
|
|
<domain rdf:resource="#Technical-data"/>
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="lens">
|
|
<label xml:lang="en">Lens</label>
|
|
<label xml:lang="fr">Objectif</label>
|
|
<label xml:lang="nl">Lens</label>
|
|
<comment xml:lang="en">Brand and type of lens.</comment>
|
|
<comment xml:lang="fr">Marque et type d'objectif.</comment>
|
|
<comment xml:lang="nl">Merk en type van de lens.</comment>
|
|
<domain rdf:resource="#Technical-data"/>
|
|
</rdf:Property>
|
|
|
|
<rdf:Property rdf:ID="devel-date">
|
|
<label xml:lang="en">Development date</label>
|
|
<label xml:lang="fr">Date de développement</label>
|
|
<label xml:lang="nl">Ontwikkeldatum</label>
|
|
<comment xml:lang="en">Date on which the film was developed.</comment>
|
|
<comment xml:lang="fr">Date à laquelle la pellicule a été
|
|
developpée.</comment>
|
|
<comment xml:lang="nl">Datum waarop de film is ontwikkeld.</comment>
|
|
<domain rdf:resource="#Technical-data"/>
|
|
<!-- use http://www.w3.org/TR/NOTE-datetime
|
|
format: YYYY[-MM[-DD[Thh:mm[:ss[.sTZD]]]]]
|
|
example: 1999-10-01T17:53
|
|
if TZD is omitted the timezone is UTC -->
|
|
</rdf:Property>
|
|
|
|
<!-- [more?] -->
|
|
|
|
</rdf:RDF>
|
|
<!--end-include-->
|
|
</pre>
|
|
|
|
<h3 class="no-num" id="the-content0">The content schema</h3>
|
|
|
|
<p>We left out the human-readable comments; see <a href="#content">the
|
|
descriptions of the keywords</a> above. The name of this schema is:
|
|
<code>http://www.w3.org/2000/PhotoRDF/content-1-0#</code></p>
|
|
<pre><!--begin-include "content.html"--><rdf:RDF
|
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
xmlns="http://www.w3.org/2000/01/rdf-schema#"
|
|
xmlns:content="">
|
|
<!-- "" is the same as "http://www.w3.org/2000/PhotoRDF/content-1-0#" -->
|
|
|
|
<Class rdf:ID="Keywords">
|
|
<comment xml:lang="en">An enumeration of keywords to
|
|
describe the subject of photos.</comment>
|
|
<comment xml:lang="fr">Une énumération de mots-clef
|
|
pour décrire le sujet d'une photo.</comment>
|
|
<comment xml:lang="nl">Een opsomming van sleutelwoorden
|
|
om het onderwerp van foto's te beschrijven.</comment>
|
|
</Class>
|
|
|
|
<content:Keywords rdf:ID="Portrait">
|
|
<label xml:lang="en">Portrait</label>
|
|
<label xml:lang="fr">Portrait</label>
|
|
<label xml:lang="nl">Portret</label>
|
|
</content:Keywords>
|
|
|
|
<content:Keywords rdf:ID="Group-portrait">
|
|
<label xml:lang="en">Group portrait</label>
|
|
<label xml:lang="fr">Portrait de groupe</label>
|
|
<label xml:lang="nl">Groepsportret</label>
|
|
</content:Keywords>
|
|
|
|
<content:Keywords rdf:ID="Landscape">
|
|
<label xml:lang="en">Landscape</label>
|
|
<label xml:lang="fr">Paysage</label>
|
|
<label xml:lang="nl">Landschap</label>
|
|
</content:Keywords>
|
|
|
|
<content:Keywords rdf:ID="Baby">
|
|
<label xml:lang="en">Baby</label>
|
|
<label xml:lang="fr">Bébé</label>
|
|
<label xml:lang="nl">Baby</label>
|
|
</content:Keywords>
|
|
|
|
<content:Keywords rdf:ID="Architecture">
|
|
<label xml:lang="en">Architecture</label>
|
|
<label xml:lang="fr">Architecture</label>
|
|
<label xml:lang="nl">Architectuur</label>
|
|
</content:Keywords>
|
|
|
|
<content:Keywords rdf:ID="Wedding">
|
|
<label xml:lang="en">Wedding</label>
|
|
<label xml:lang="fr">Mariage</label>
|
|
<label xml:lang="nl">Trouwerij</label>
|
|
</content:Keywords>
|
|
|
|
<content:Keywords rdf:ID="Macro">
|
|
<label xml:lang="en">Macro</label>
|
|
<label xml:lang="fr">Macro</label>
|
|
<label xml:lang="nl">Macro</label>
|
|
</content:Keywords>
|
|
|
|
<content:Keywords rdf:ID="Graphic">
|
|
<label xml:lang="en">Graphic</label>
|
|
<label xml:lang="fr">Graphique[?]</label>
|
|
<label xml:lang="nl">Grafisch</label>
|
|
</content:Keywords>
|
|
|
|
<content:Keywords rdf:ID="Panorama">
|
|
<label xml:lang="en">Panorama</label>
|
|
<label xml:lang="fr">Panorama</label>
|
|
<label xml:lang="nl">Panorama</label>
|
|
</content:Keywords>
|
|
|
|
<content:Keywords rdf:ID="Animal">
|
|
<label xml:lang="en">Animal</label>
|
|
<label xml:lang="fr">Animal</label>
|
|
<label xml:lang="nl">Dier</label>
|
|
</content:Keywords>
|
|
|
|
</rdf:RDF>
|
|
<!--end-include-->
|
|
</pre>
|
|
|
|
<h2 id="AppendixB" class="no-num">Appendix B: example of metadata</h2>
|
|
|
|
<p>This is an example of the metadata in RDF format that is generated by
|
|
rdfpic, and subsequently served by Jigsaw.</p>
|
|
<pre><!--begin-include "sample.html"--><?xml version='1.0' encoding='ISO-8859-1'?>
|
|
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
xmlns:rdfs="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#"
|
|
xmlns:s0="http://www.w3.org/2000/PhotoRDF/dc-1-0#"
|
|
xmlns:s1="http://www.w3.org/2000/PhotoRDF/technical-1-0#"
|
|
xmlns:s2="http://sophia.inria.fr/~enerbonn/rdfpiclang#">
|
|
<rdf:Description rdf:about="">
|
|
<s0:creator>Bert Bos</s0:creator>
|
|
<s0:relation>Marian in the Tarn</s0:relation>
|
|
<s0:rights>Bert Bos</s0:rights>
|
|
<s0:type>image</s0:type>
|
|
<s0:identifier>990621</s0:identifier>
|
|
<s0:coverage>Montredon-Labessonié (Tarn)</s0:coverage>
|
|
<s0:date>1999-06-26</s0:date>
|
|
<s1:camera>Canon Eos 5</s1:camera>
|
|
<s2:xmllang>en</s2:xmllang>
|
|
<s0:title>Marian with sheep</s0:title>
|
|
<s0:subject>Landscape, Animal</s0:subject>
|
|
<s0:publisher>Bert Bos</s0:publisher>
|
|
<s0:description>Marian brings the sheep to the field in the morning. The lamb she carries was born that night.</s0:description>
|
|
<s0:format>image/jpeg</s0:format>
|
|
</rdf:Description>
|
|
</rdf:RDF><!--end-include-->
|
|
</pre>
|
|
|
|
|
|
</body>
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-declaration:"~/SGML/HTML4.decl"
|
|
sgml-default-doctype-name:"html"
|
|
sgml-minimize-attributes:t
|
|
sgml-nofill-elements:("pre" "style" "br")
|
|
sgml-live-element-indicator:t
|
|
End:
|
|
-->
|
|
</html>
|