Re: Javascript Stub of the RDFa DOM API 1.1

Hi

All in all I agree with your remarks Manu.

Unfortunately I was not able to work on the RDFa DOM API document until 
now. I hope I can make a new version before the Telcon starts.

I want to raise some open questions:

1. Does the character encoding of a web page influence the encoding of 
extracted RDF triples? (especially the encoding of literal values)
Or should we define UTF-8 as standard.

2. How should Blank Nodes be treated in toString and valueOf methods?
Should the API generate generic IDs? In which format should they be?

3. The vocabulary objects (in the given JS file: XSD, RDF, RDFS) may be 
  externalized in JSON files. So users might create their own vocabulary
objects and import these. Default vocabularies XSD, RDF, RDFS, DC, FOAF, 
OWL may be maintained and hosted on the W3C server. What do you think 
about that?

4. Is it worth writing a bit of glue code to couple a Javascript RDFa 
with a current version of the RDFa DOM API? Mark, is it difficult to do 
this with backplanejs?

> 
> * I don't think that toString() should return TURTLE representation. I
> think it should return a plain string for URIs, TypedLiterals, and
> PlainLiterals with a language element. We want to make sure that
> re-using the subject/predicate/object is as easy as possible in
> Javascript. If we output in TURTLE format, the developer may need to
> strip the TURTLE representation from the string value... which would be
> annoying.

Yes, you are right. I'll change that.

> 
> * We need to simplify the filter() examples to demonstrate some of the
> simpler goals of the API, such as 
> 1) filtering on subject, 
> 2) filtering on predicate, 
 > 3) filtering on object,
 > 4) using a very simple filter function...
 > and then go into some of the more complex examples.

Do you speak of: (please consider node and myfilter being optional)?

rdfa.filterSubject(subject, node, myfilter)
rdfa.filterPredicate(predicate, node, myfilter)
rdfa.filterObject(object, node, myfilter)

Yes that's missing at the moment. Passing subjects, predicates, and 
objects as list may also be a good option.

rdfa.filterSubjects(subjects, node, myfilter)
rdfa.filterPredicates(predicates, node, myfilter)
rdfa.filterObjects(objects, node, myfilter)


> This is a step in the right direction... Looking at the code, I think we
> can simplify the API even more... 

As I'm not a Javascript expert I totally agree with that.

I'll try to mock something up after
> the call on Thursday.

Looking forward to play with your extensions, Manu :).

Best regards,

Benjamin

Received on Thursday, 15 April 2010 09:07:52 UTC