Re: Bandwidth efficiency

On Tue, Jun 01, 2004 at 05:00:38 -0700, Howard Katz wrote:
> This slight digression is inspired by the topic at hand. What about the idea
> of prepending some sort of preamble to the query result to provide meta
> information on the result set, as well as the general environment and (for
> example) user-selectable settings of interest? In this case it's primarily
> to reduce bandwidth (stealing the prefix-namespace mechanism generally used
> on triples input to make the output both more compact and human-readable),
> but I'm also throwing in a few other hypothetical preamble "infoitems" that
> connect into several of our other uc requirement items as well:
> 
>       dawg-ql:resultPreamble
>       {
>             dawg-ql:prefix  "ex"
>             dawg-ql:namespace  "http://example.com/foo#"
>             dawg-ql:resultFormat  dawg-ql:compactTriples
>             dawg-ql:maxChunkSize  2048
>             dawg-ql:numTriples  3
>             dawg-ql:numInferredNodes  0
>       }
>       ex:alice ex:worksFor ex:deptA
>       ex:bob ex:worksFor ex:deptA
>       ex:deptA ex:hasName "DepartmentA"
> 
> The particular preamble format here, whether by accident or design, looks a
> lot like RDF but doesn't necessarily have to. I'm just trying out a concept.

Also a result format in N3 or RDF/XML could do this using thier prefix
mechanisms. There is a downside however, if the server is expected to
strip out the namespaces for the URIs then it must store the result set
internally and post process it to ensure that its got all the namespaces
before it starts to send the results (as the namespaces aredeclared at the
top). This increses latency.

The situation where the namespaces are declared after the results is not
much better as the client cant interpret them untill its parsed all the
namespace decls anyway.

- Steve

Received on Wednesday, 2 June 2004 07:26:15 UTC