Skip to main content
. 2020 Nov 23;6:e318. doi: 10.7717/peerj-cs.318

Table 1. Features comparison between the three languages.

Features ShExML YARRRML SPARQL-Generate
Source and output definition Defining output Shape expression Subject and predicate-object definitions Generate clause
IRIs generation Prefix and value generation expression (concatenation) Prefix and value generation expression (array) Variable (previous use of concat function) or string interpolation
Datatypes & Language tags Yes Yes Yes
Multiple results from a query Treated like an array Treated like an array Need to iterate over the results
Transformations Limited (Matchers and String operators). FnO hub Functions for strings and extension mechanism
Output formats Output RDF RDF RDF and any text-based format
Translation RML RML No translation offered
Link between mappings Shape Linking and JOIN keyword (do not fully cover YARRRML feature) Yes (conditions allowed) Nested generate clauses, filter clauses and extension mechanism
Conditional mapping generation No Yes (Function and conditional clause) Yes (Filter clause and extension mechanism)