dice-group / dice-group/Squirrel
0009: URIProcessing: Deduplicate SPARQL endpoints
- Dominant language
- Java
- Stars
- 25
- Forks
- 19
- PR merge metrics
- No merged PRs in 30d
Description
As we prefer the dumps to SPARQL endpoints and we want to avoid having dumps and SPARQL endpoints crawled for the same dataset, URIProcessing should substitute SPARQL endpoint URI for a dump URI whenever possible.
Dump lookup for SPARQL endpoints
Ask SPARQL endpoint for the metadata (if the dump is available) → Service Description does not contain this info (something else?) → ask Claus
Create an index from the data catalogs (datahub.io, publicdata.eu, data.gov etc.) and lookup the dumps corresponding to the SPARQL endpoints against this index.
As we crawl the data dumps first, we can extract the following info and build a simple model which match the crawled SPARQL endpoint against the crawled data dumps and if similarity is above the threshold, then just drop it:
Number of triples (COUNT(?s ?p ?o))
Namespaces of the URIs (???)
Classes used (select distinct ?o where {?s a ?o}) (??? → quite slow)
Randomly pick 2-3 triples from the data dump and ask if they exist inside the SPARQL endpoint
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.