Information Technology Reference
In-Depth Information
In this paper, we first discuss webble annotations (point (1) above); then a
mapping rule from webble annotations to RDF (point (4) above); and finally we
demonstrate a plug-in type system to restrict user's operations in order to avoid
errors (point (3) above). We do not address the issue of defining a query language
(point (2) above). To begin with, let's define formally what an annotation is.
Definition 1 (Webble annotation and slot annotation).
Let i be the iden-
tifier of a webble or of a slot. The annotation of i, denoted An(i), is defined to
be a set of attribute-value pairs, namely:
An
(
i
)=
.
There are several important points to mention regarding the definition of a
webble annotation. Firstly, we assume that both webbles and slots are associated
with identifiers, and moreover that we can tell whether an identifier is a webble
identifier or a slot identifier (e.g. from its syntax). In the rest of this paper,
we use the following conventions: (1) if
w
denotes a webble then
w
denotes the
identifier of
w
,and(2)if
s
is a slot of webble
w
then
w:#s
denotes the identifier
of slot
s
of
w
.
Although we do not discuss how webble annotations are defined, we assume
two types of annotations:
system annotations
, defined by webble developers and
user annotations
defined by users. Attributes and values of system annotations
are pre-defined by developers or dynamically assigned by webble runtime en-
vironments, while user annotations are defined by users who wish to append
application-specific inforation to webbles.
Finally, we assume that all attribute names
A
1
...A
n
come from some con-
trolled vocabulary. In particular, in order to be able to map webble annotations
to RDF, we will introduce a restriction such that every attribute name must be
the URL of an RDF property. Therefore in the rest of the paper we use only
URLs of RDF properties as attribute names.
Figure 3 shows an example annotation of an image webble
wi
. Basically all
annotations in this example are system annotations.
{
(
A
1
,v
1
)
, ...,
(
A
n
,v
n
)
}
An(wi)
=
{
(dc:title, "Image Webble"), (rdf:type, ImageWebble),
(dc:creator: "Hokkaido Univ."), (wb:hasSlot, wi:#url)
}
An(wi:#url)
=
{
(dc:title, "URL"), (rdf:type, TextSlot),
(wb:hasValue, http://a/b/c.jpeg)
}
Fig. 3.
Webble annotation example
In this example, some basic information (name, title, ...) are described by
using terms from Dublin Core, whose name space is denoted as
dc
. The example
annotation also describes ownership and value of
url
slot by using
wb:hasSlot
and
wb:hasValue
that come from a controlled vocabulary that we have specif-
ically designed for webble annotations. We call this vocabulary
webble vocabu-
lary
and in the rest of the paper its name space is denoted as
wb
.Notethat
wb:hasValue
is a typical dynamic annotation. Indeed, the value of this annota-
tion is dynamically assigned by a webble runtime environment to indicate the
slot value of an annotation.