Re: RDFa API proposed changes & IDL

Nathan wrote:
> [NoInterfaceObject Callback]
> interface DataParser {
>     boolean parse (in any toparse, in DataStore store);
> };

After discussing the above with Manu, he's talked me through the issues 
with mobile processors and keeping a light footprint, thus after some 
discussions the following is proposed:

[NoInterfaceObject]
interface DataParser {
     boolean parse (in any toparse, in DataStore store, in optional 
RDFTripleCallback filter);
     boolean process (in any toparse, in DataProcessor processor, in 
optional RDFTripleCallback filter);
};

[NoInterfaceObject Callback]
interface DataProcessor {
     void process (RDFTriple triple);
};

interface DocumentData {
...
     boolean       parse(in any toParse, in optional DataStore store, in 
optional RDFTripleCallback filter, in optional DataParser parser);
     boolean       process(in any toParse, in DataProcessor processor, 
in optional RDFTripleCallback filter, in optional DataParser parser);
};

Changes:
DataParser looses the Callback extended attribute
DataParser.parse gains an optional filter which allows only triples 
matching a given filter to be added to the store.
DataParser.process is added which rather than adding triples to a store, 
executes a given callback on each triple, thus allowing say all 
telephone numbers in a document to be highlighted without storing any 
data / increasing memory usage, this method also has the optional 
`filter` property functioning the same as that on DataParser.parse.

A new DataProcessor Callback interface is added with only one parameter, 
triple (to keep things light).

DocumentData.parse gains an optional `filter` parameter
added DocumentData.process method

Best,

Nathan

Received on Sunday, 19 September 2010 23:47:49 UTC