W3C home > Mailing lists > Public > public-media-annotation@w3.org > December 2008

[Fwd: Re: [Mediann] Ad. "Return Type / String vs Uri" - Issue]

From: Tobias Bürger <tobias.buerger@sti2.at>
Date: Tue, 23 Dec 2008 12:49:05 +0100
Message-ID: <4950D031.4020203@sti2.at>
To: "public-media-annotation@w3.org" <public-media-annotation@w3.org>
(I forgot to CC the list...)


attached mail follows:


Hi Joakim,

thanks for the assembling of the page!
Comments below

Joakim Söderberg schrieb:
> Hi all,
> In order to facilitate the discussion on data interchange format, I have assembled the options on a wiki page:
> http://www.w3.org/2008/WebVideo/Annotations/wiki/Dataformat
>
> Personally I like the idea of JSONs collection of name/value pairs.
> Some thoughts are:
> 1) Can we have two levels of complexity e.g. simple (string) and complex (e.g. collection of name/Value pairs) depending on property or application?
>   
If we want to have it we can implement it I guess. Please have a look at
how RDF can be represented using JSON [1]:

 "http://example.org/about" : {
        "http://purl.org/dc/elements/1.1/creator" : [ { "value" : "Anna
Wilder", "type" : "literal" } ],
        "http://purl.org/dc/elements/1.1/title"   : [ { "value" :
"Anna's Homepage", "type" : "literal", "lang" : "en" } ] ,
        "http://xmlns.com/foaf/0.1/maker"         : [ { "value" :
"_:person", "type" : "bnode" } ]
    } ,

"_:person" : {
        "http://xmlns.com/foaf/0.1/homepage"      : [ { "value" :
"http://example.org/about", "type" : "uri" } ] ,
        "http://xmlns.com/foaf/0.1/made"          : [ { "value" :
"http://example.org/about", "type" : "uri" } ] ,
        "http://xmlns.com/foaf/0.1/name"          : [ { "value" : "Anna
Wilder", "type" : "literal" } ] ,
        "http://xmlns.com/foaf/0.1/firstName"     : [ { "value" :
"Anna", "type" : "literal" } ] ,
        "http://xmlns.com/foaf/0.1/surname"       : [ { "value" :
"Wilder", "type" : "literal" } ] ,
        "http://xmlns.com/foaf/0.1/depiction"     : [ { "value" :
"http://example.org/pic.jpg", "type" : "uri" } ] ,
        "http://xmlns.com/foaf/0.1/nick"          : [
                                                      { "type" :
"literal", "value" : "wildling"} ,
                                                      { "type" :
"literal", "value" : "wilda" }
                                                    ] ,
        "http://xmlns.com/foaf/0.1/mbox_sha1sum"  : [ {  "value" :
"69e31bbcf58d432950127593e292a55975bc66fd", "type" : "literal" } ]
    }


Here a resource @ http://example.org/about is described. For the creator
they return a literal and for the maker a person object with more
properties attached (so a complex object so to speak). So this is a way
we could implement it.

If we want to have a property which has two different return types than
we could subclass this property, e.g. hasMetadataValue is the
SuperProperty (with no specified range) with two sub-properties
hasMetadataValueLiteral (range: Literal) and hasMetadataValueComplex
(range: class representing some "complex" objects).

This approach is valid in RDF(S), OWL Lite and OWL DL.

> 2) How does the application know what is returned?
>   
The application would have to see for which sub property a value is
returned to determine if she gets a literal or a complex object.

Just one idea....

Best,

Tobias
> /J
>
>   
[1] http://n2.talis.com/wiki/RDF_JSON_Specification

-- 
_________________________________________________
Dipl.-Inf. Univ. Tobias Bürger

STI Innsbruck
University of Innsbruck, Austria
http://www.sti-innsbruck.at/

tobias.buerger@sti2.at
__________________________________________________
Received on Tuesday, 23 December 2008 11:48:14 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 23 December 2008 11:48:14 GMT