This project has moved and is read-only. For the latest updates, please go here.

Using DESCRIBE in EF Queries

Dec 19, 2013 at 12:01 PM
Edited Dec 19, 2013 at 12:02 PM

I have run the unit tests and the one for take/skip fails because it uses DESCRIBE to return data, and the store treats LIMIT/OFFSET as limits for triples not resources, so when returning some persons instead of returning first 3 it returns first 3 triples (first person it unit test context)

I've read about DESCRIBE in sparql specs in not sure it's good to use it in any scenario because:
"The RDF returned is determined by the information publisher. It may be information the service deems relevant to the resources being described. It may include information about other resources: for example, the RDF data for a book may also include details about the author."
So i think describe is intended just as an general information source, so different stores may have different responses for same data/query, and this might not even be optimized for performance.

In wikipedia:
Used to extract an RDF graph from the SPARQL endpoint, the contents of which is left to the endpoint to decide based on what the maintainer deems as useful information.
Dec 20, 2013 at 5:10 PM
Yeah, this is as a result of having originally written EF only for use with BrightstarDB. BrightstarDB returns all the triples for a resource when asked to DESCRIBE it - other systems do other things because the "standard" is under-specified in this area. For the original purpose (EF on top of B*) the code works perfectly :)

The only solution is to use CONSTRUCT instead of DESCRIBE, which is probably what it will have to be changed to.