- From: Pierre-Antoine <pierre-antoine.champin@liris.cnrs.fr>
- Date: Thu, 26 Nov 2009 10:37:16 +0100
- To: Chris.Poppe@UGent.be
- CC: public-media-annotation@w3.org
- Message-ID: <4B0E4C4C.70008@liris.cnrs.fr>
Hi Chris,
very nice work. A few comments :
* I agree that the metadata-source should be present, however, I think
the URI of that source is more valueable that a label describing its
type (or is this just a matter of presentation?)
* in MediaRDF2, strictly speaking, the URI of the creator should be
http://multimedialab.elis.ugent.be/users/chpoppe/JohnDoeFoaf.rdf#JD
(#JD is missing in your example) and the RDF file should use
rdf:about="#JD" instead of rdf:nodeID="JD"
* in MediaRDF2, why keep the URI for the unstructured value rather than
"John Doe", which you can extract or build from the FOAF profile,
since you fetch it anyway?
* about "First name" and "Family name", is this something that we
intend to normalize at the API level? What if the creator is an
organization instead? Although I think this information can be
useful and is often present, isn't it a little too ad-hoc?
* why do the return values for "Identifier" not contain a "URI" field?
I note that the Ontology and API documents disagree on that property:
Ontology says it *is* a URI, while API says it only SHOULD be.
Either way, let's be explicit about it being a URI.
pa
Le 25/11/2009 13:42, Chris Poppe a écrit :
> Dear all,
>
>
>
> The last days I spent some time on an implementation of the API,
> basically the main reason why I did not actively participated in the
> discussions on the subproperties.
>
>
>
> You can find my “raw” WIP test-implementation (tested with IE 8 and
> Firefox 3.5.5) at:
>
> http://multimedialab.elis.ugent.be/users/chpoppe/MediaAnnotations.html
>
>
>
> This page uses JavaScript (note that currently only JavaScript or Java
> bindings are defined for the WebIDL language!).
>
> A javascript library holds the implementation of the method:
> getProperty(propertyName, sourceFormat, subType, language, fragment).
> This library currently (tries to) parse XML, RDF and EXIF.
>
>
>
> To test it, first a mediaresource needs to be selected (there is only
> one: the image in the page). Then you can choose getProperty for a
> specific property. If a sourceformat is selected it is passed as the
> optional parameter ‘sourceFormat’.
>
> The result is an array of objects.
>
> Each object holds:
>
> · an unstructured value (string) which is a textual label
> holding the values.
>
> · a sourceFormat (to denote from which sourceformat this
> information is extracted). Note that this is not part of the API for now
> but I think it might be valuable.
>
> · An URI if this is available in the sourceFormat (Currently
> only MediaRDF holds URI’s but even in this case you cannot be sure that
> it is actually an URI …)
>
> · More properties (which could be called sub-properties),
> depending on the requested property
>
> o For example if you request for the creator you get back:
>
> sourceFormat: MPEG-7
> Unstructured value: John Doe
> First Name: John
> Family Name: Doe
> URI: undefined
>
> The unstructured value gives no information at all! Meaning you can *not
> * assume that John is the firstname. Since many metadata formats allow
> to define the first and family name I added these to the returned object
> of getProperty(“creator”)
>
>
>
> o For the MediaRDF you get back 2 objects (corresponding to the two
> metadata files):
>
>
>
> sourceFormat: MEDIARDF
> Unstructured value: John Doe
> First Name: undefined
> Family Name: undefined
> URI: undefined
>
> sourceFormat: MEDIARDF
> Unstructured value:
> http://multimedialab.elis.ugent.be/users/chpoppe/JohnDoeFoaf.rdf
> First Name: John
> Family Name: Doe
> URI: http://multimedialab.elis.ugent.be/users/chpoppe/JohnDoeFoaf.rdf
>
>
>
> In this case, my implementation actually parses the Foaf description of
> the creator to retrieve the relevant information like first name and
> family name
>
>
>
>
>
> o When you request for contributor you get back:
>
> sourceFormat: MPEG-7
> Unstructured value: John Doe
> First Name: John
> Family Name: Doe
> role: creator
> URI: undefined
>
>
>
> sourceFormat: DC
> Unstructured value: Doe, Jane
> First Name: undefined
> Family Name: undefined
> role: publisher
> URI: undefined
>
>
>
> Here you can see that a “role” property is added which denotes what kind
> of contributor we are talking about. This is related to the proposition
> by Pierre-Antoine, he suggested:
>
> md.getValues("contributor")
>
>
>
> returning
>
> [ { "value": "John Doe", "subproperty": "id3:composer" },
>
> { "value": "Jane Doe", "subproperty": "id3:lyricist" };
>
> ]
>
>
>
> The terms ‘creator’ and ‘publisher’ that I return are currently chosen
> by me.
>
>
>
> Kind regards,
>
> Chris
>
>
>
> Ghent University - IBBT
> Faculty of Engineering
> Department of Electronics and Information Systems (ELIS)
> Multimedia Lab Gaston Crommenlaan 8 bus 201
> B-9050 Ledeberg-Ghent
> Belgium
>
>
> t: +32 9 33 14959
> f: +32 9 33 14896
> t secr: +32 9 33 14911
> e: chris.poppe@ugent.be <mailto:chris.poppe@ugent.be>
>
>
>
> URL: http://multimedialab.elis.ugent.be
>
>
>
Received on Thursday, 26 November 2009 09:37:59 UTC