Suport more functions
- Dominant language
- Rust
- Stars
- 289
- Forks
- 21
- PR merge metrics
- No merged PRs in 30d
Description
Here is an overview of functions that could be implemented:
String functions: https://www.w3.org/TR/sparql11-query/#func-langMatches
`langMatches()`, `REPLACE()`
Creation functions: https://www.w3.org/TR/sparql11-query/#func-bnode
`STRLANG()`, `STRDT()`
Date functions: https://www.w3.org/TR/sparql11-query/#func-year
`Timezone()`, `Tz()`, ...
Hashing: https://www.w3.org/TR/sparql11-query/#func-hash
`MD5()`, `SHA1()`, `SHA256()`, `SHA384()`, `SHA512()`
~`ENCODE_FOR_URI()` https://www.w3.org/TR/sparql11-query/#func-encode~
Nondeterministic functions: https://www.w3.org/TR/sparql11-query/#idp2130040
`Rand()`, `UUID()`, `StrUuid()`, `Now()`
The unsupported aggregations are:
`#avg`, `#GroupConcat`, `#Sample`
Contributor guide
Research direction
The issue links to the W3C SPARQL 1.1 specification and lists string, creation, date, hashing, nondeterministic, and aggregation functions, but names no repository files or tests. Start by locating the existing Rust implementations and entry points for SPARQL functions and aggregations, then use the linked specification as the checklist; done means the requested functions are supported and verified by relevant tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100