- 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