<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlTranslateBasicGraphPatterns>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGraphPattern/#sparqlTranslateBasicGraphPatterns> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlTranslatePathPatterns>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGraphPattern/#sparqlTranslatePathPatterns> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlSolutions>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#sparqlSolutions> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#BGPsparqlBNodes>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/BasicGraphPattern/#BGPsparqlBNodes> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAddFilters>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGraphPattern/#sparqlAddFilters> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#select-children>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://w3id.org/atomgraph/linkeddatahub#SelectChildren> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlReduced>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertSolMod/#sparqlReduced> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlOrderBy>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertSolMod/#sparqlOrderBy> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAlgebraOutcome>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertSolMod/#sparqlAlgebraOutcome> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlTranslateGraphPatterns>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGraphPattern/#sparqlTranslateGraphPatterns> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlBasicTerms>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#sparqlBasicTerms> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/>
        a       <https://www.w3.org/ns/ldt/document-hierarchy#Container> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_1>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#this> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_10>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlSolutions> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_11>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlSolMod> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_12>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#idp2427544> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_13>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlQuery> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_14>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#variableScope> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_15>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#convertGraphPattern> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_16>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlExpandForms> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_17>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlCollectFilters> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_18>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlTranslatePathExpressions> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_19>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlTranslatePathPatterns> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_2>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#initDefinitions> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_20>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlTranslateBasicGraphPatterns> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_21>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlTranslateGraphPatterns> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_22>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAddFilters> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_23>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlSimplification> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_24>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAlgebraExamples> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_25>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#convertGroupAggSelectExpressions> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_26>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlGroupAggregate> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_27>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlHavingClause> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_28>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAlgebraFinalValues> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_29>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlSelectExpressions> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_3>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlBasicTerms> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_30>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#convertSolMod> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_31>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlOrderBy> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_32>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlProjection> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_33>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlDistinct> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_34>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlReduced> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_35>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlOffsetLimit> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_36>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAlgebraOutcome> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_37>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#BasicGraphPattern> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_38>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#BGPsparql> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_39>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#BGPsparqlBNodes> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_4>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#simple_literal> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_40>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#PropertyPathPatterns> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_41>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAlgebra> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_42>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#aggregateAlgebra> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_43>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#setFunctions> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_44>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggCount> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_45>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggSum> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_46>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggAvg> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_47>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggMin> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_48>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggMax> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_49>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggGroupConcat> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_5>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlDataset> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_50>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggSample> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_51>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAlgebraEval> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_52>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlBGPExtend> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_53>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlBGPExtend-notes> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_6>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlQueryVariables> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_7>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlTriplePatterns> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_8>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlBasicGraphPatterns> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_9>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlPropertyPaths> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_999>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#select-children> ;
        <http://purl.org/dc/terms/modified>
                "2023-07-10T15:47:42.408Z"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
        <http://purl.org/dc/terms/title>
                "Definition of SPARQL" ;
        <http://rdfs.org/sioc/ns#has_parent>
                <https://kgdev.net/specifications/sparql11-query/> ;
        <http://www.w3.org/ns/prov#wasDerivedFrom>
                <https://www.w3.org/TR/sparql11-query/#sparqlDefinition> ;
        <http://xmlns.com/foaf/0.1/primaryTopic>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#this> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlExpandForms>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGraphPattern/#sparqlExpandForms> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAlgebraExamples>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/#sparqlAlgebraExamples> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#aggregateAlgebra>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlAlgebra/aggregateAlgebra/#this> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#initDefinitions>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#this> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlQuery>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/#this> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlTranslatePathExpressions>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGraphPattern/#sparqlTranslatePathExpressions> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#simple_literal>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#simple_literal> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAlgebraFinalValues>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGroupAggSelectExpressions/#sparqlAlgebraFinalValues> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlOffsetLimit>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertSolMod/#sparqlOffsetLimit> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggCount>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlAlgebra/aggregateAlgebra/#defn_aggCount> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlTriplePatterns>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#sparqlTriplePatterns> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#PropertyPathPatterns>
        a                          <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                "<div xmlns=\"http://www.w3.org/1999/xhtml\"><h3 id=\"PropertyPathPatterns\">Property Path Patterns</h3>\n\n<p>This section defines the evaluation of <a href=\"initDefinitions/#defn_PropertyPathPattern\" shape=\"rect\">property path patterns</a>. A property path pattern is a subject endpoint (an RDF term or a variable), a property path express and an object endpoint. The <a href=\"sparqlQuery/convertGraphPattern/#sparqlTranslatePathExpressions\" shape=\"rect\">translation of property path expressions</a> converts some forms to other SPARQL expressions, such as converting property paths of length one to triple patterns, which in turn are combined into basic graph patterns. This leaves property path operators ZeroOrOnePath, ZeroOrMorePath, OneOrMorePath and NegatedPropertySets and also path expressions contained within these operators.</p>\n<p>All remaining property path expressions are present in the algebra in the form <code>Path(X, path, Y)</code> for endpoints X and Y. For example: syntax<code>(:p/:q)*</code> is a ZeroOrMorePath expression involving a sequence property path becoming the algebra expession <code>ZeroOrMorePath(seq(link(:p), link(:q)))</code>.</p>\n<p><strong>Notation</strong></p>\n<p>Write</p>\n<pre xml:space=\"preserve\"><code>eval(Path(X, PP, Y))\n</code></pre>\n<p>for the evaluation of the property path patterns. This produces a multiset of solution mappings μ, each solution mapping having a binding for variables used (each of X and Y can be a variable). Some operators only produce a set of solution mappings.</p>\n<p>Write</p>\n<p>Var(x</p>\n<p>1, x</p>\n<p>2, ..., x</p>\n<p>n) = { x</p>\n<p>i | i in 1...n and x</p>\n<p>i is a variable }</p>\n<p>for the variables in x1, x2, ...,\nxn.</p>\n<p>Write</p>\n<table border=\"1\" cellpadding=\"10\" style=\"border-collapse: collapse; border-color: #000000\">\n   <tbody>\n      <tr>\n         <td colspan=\"1\" rowspan=\"1\">\n            <code>x:term</code>\n         </td>\n         <td colspan=\"1\" rowspan=\"1\">when <code>x</code> is an RDF term</td>\n      </tr>\n      <tr>\n         <td colspan=\"1\" rowspan=\"1\">\n            <code>x:var</code>\n         </td>\n         <td colspan=\"1\" rowspan=\"1\">when <code>x</code> is a variable</td>\n      </tr>\n      <tr>\n         <td colspan=\"1\" rowspan=\"1\">\n            <code>x:path</code>\n         </td>\n         <td colspan=\"1\" rowspan=\"1\">when <code>x</code> is a path expression</td>\n      </tr>\n   </tbody>\n</table>\n\n<p>All evaluation is carried out by matching the <a href=\"initDefinitions/#defn_ActiveGraph\" shape=\"rect\">active graph</a> at that point in the overall query evaluation. We omit explicitly including the active graph in each definition for clarity.</p>\n<p><strong>Definition: Evaluation of Predicate Property\nPath</strong></p>\n<p>Let Path(X, link(iri), Y) be an predicate inverse property path pattern, using some IRI iri.</p>\n<blockquote>\n<p>eval(Path(X, link(iri), Y)) = </p>\n</blockquote>\n<p><a href=\"BasicGraphPattern/#this\" shape=\"rect\">evaluation of basic graph pattern</a> {X iri Y}</p>\n<p>If both X and Y are variables, this is the same as:</p>\n<p>eval(Path(X:var, link(iri), Y:var)) = { (X, xn) (Y, yn) | xn and yn are RDF terms and triple (xn iri yn) is in the active graph }</p>\n<p>If X is a variable and Y an RDF term:</p>\n<p>eval(Path(X:var, link(iri), Y:term)) = { (X, xn) | xn is an RDF term and triple (xn iri Y) is in the active graph }</p>\n<p>If X is an RDF term and Y is a variable:</p>\n<p>eval(Path(X:term, link(iri), Y:var)) = { (Y, yn) | yn is an RDF term and triple (X iri yn) is in the active graph }</p>\n<p>If both X and Y are RDF terms:</p>\n<p>eval(Path(X:term, link(iri), Y:term)) = { μ</p>\n<p>0 } if triple (X iri Y) is in the active graph = { { } } = Ω</p>\n<p>0 eval(Path(X:term, link(iri), Y:term)) = { } if triple (X iri Y) is not in the active graph</p>\n<p>Informally, evaluating a Predicate Property Path is the same as executing a subquery SELECT * { X P Y } at that point in the query evaluation.</p>\n<p><strong>Definition: Evaluation of Inverse Property\nPath</strong></p>\n<p>Let P be a property path expression, then:</p>\n<blockquote></blockquote>\n<pre xml:space=\"preserve\"><code>eval(Path(X, inv(P), Y)) = eval(Path(Y, P, X))\n</code></pre>\n<p><strong>Definition: Evaluation of Sequence Property\nPath</strong></p>\n<p>Let P and Q be property path expressions. Let V be a fresh variable.</p>\n<blockquote></blockquote>\n<pre xml:space=\"preserve\"><code>A = Join( eval(Path(X, P, V)), eval(Path(V, Q, Y)) )\n</code></pre>\n<pre xml:space=\"preserve\"><code>eval(Path(X, seq(P,Q), Y)) = Project(A, Var(X,Y))\n</code></pre>\n<p>Informally, this is the same as:</p>\n<pre xml:space=\"preserve\"><code>SELECT * { X P _:a . _:a Q Y }\n</code></pre>\n<p>using the fact that a blank node <code>_:a</code> acts like a variable (under simple entailment) except it does not appear in the results from <code>SELECT *</code>.</p>\n<p><strong>Definition: Evaluation of Alternative Property\nPath</strong></p>\n<p>Let P and Q be property path expressions.</p>\n<blockquote></blockquote>\n<pre xml:space=\"preserve\"><code>eval(Path(X, alt(P,Q), Y)) = Union(eval(Path(X, P, Y)), eval(Path(X, Q, Y)))\n</code></pre>\n<p>Informally, this is the same as:</p>\n<pre xml:space=\"preserve\"><code>SELECT * { { X P Y } UNION { X Q Y } }\n</code></pre>\n<p><strong>Definition: Node set\nof a graph</strong></p>\n<p>The node set of a graph G, nodes(G), is:</p>\n<p>nodes(G) = { n | n is an RDF term that is used as a subject or object of a triple of G}</p>\n<p><strong>Definition: Evaluation of ZeroOrOnePath</strong></p>\n<pre xml:space=\"preserve\"><code>eval(Path(X:term, ZeroOrOnePath(P), Y:var)) = { (Y, yn) | yn = X or {(Y, yn)} in eval(Path(X,P,Y)) }\n</code></pre>\n<pre xml:space=\"preserve\"><code>eval(Path(X:var, ZeroOrOnePath(P), Y:term)) = { (X, xn) | xn = Y or {(X, xn)} in eval(Path(X,P,Y)) }\n</code></pre>\n<pre xml:space=\"preserve\"><code>eval(Path(X:term, ZeroOrOnePath(P), Y:term)) = \n    { {} } if X = Y or eval(Path(X,P,Y)) is not empty\n    { } othewise\n</code></pre>\n<pre xml:space=\"preserve\"><code>eval(Path(X:var, ZeroOrOnePath(P), Y:var)) = \n    { (X, xn) (Y, yn) | either (yn in nodes(G) and xn = yn) or {(X,xn), (Y,yn)} in eval(Path(X,P,Y)) }\n</code></pre>\n<p>We define an auxillary function, ALP, used in the definitions of ZeroOrMorePath and OneOrMorePath. Note that the algorithm given here serves to specify the feature. An implementation is free to implement evaluation by any method that produces the same results for the query overall. The ZeroOrMorePath and OneOrMorePath forms return matches based on distinct nodes connected by the path.</p>\n<p>The matching algorithm is based on following all paths, and detecting when a graph node (subject or object), has been already visited on the path.</p>\n<p>Informally, this algorithm attempts to extend the multiset of results by one application of path at each step, noting which nodes it has visited for this particular path. If a node has been visited for the path under consideration, it is not a candidate for another step.</p>\n<p><strong>Definition: Function ALP</strong></p>\n<pre xml:space=\"preserve\"><code>Let eval(x:term, path) be the evaluation of 'path', starting at RDF term x, \n                       and returning a multiset of RDF terms reached \n                       by repeated matches of path.\n\nALP(x:term, path) = \n    Let V = empty multiset\n    ALP(x:term, path, V)\n    return is V\n\n# V is the set of nodes visited\n\nALP(x:term, path, V:set of RDF terms) =\n    if ( x in V ) return \n    add x to V\n    X = eval(x,path) \n    For n:term in X\n        ALP(n, path, V)\n        End\n</code></pre>\n<p><strong>Definition: Evaluation of ZeroOrMorePath</strong></p>\n<pre xml:space=\"preserve\"><code>eval(Path(X:term, ZeroOrMorePath(path), vy:var)) =\n    { { (vy, n) } | n in ALP(X, path) }\n\neval(Path(vx:var, ZeroOrMorePath(path), vy:var)) =\n    { { (vx, t), (vy, n) } |  t in nodes(G), (vy, n) in eval(Path(t, ZeroOrMorePath(path), vy)) }\n\neval(Path(vx:var, ZeroOrMorePath(path), y:term)) = \n    eval(Path(y:term, ZeroOrMorePath(inv(path)), vx:var))\n\neval(Path(x:term, ZeroOrMorePath(path), y:term)) = \n    { { } } if { (vy:var,y) } in eval(Path(x, ZeroOrMorePath(path) vy)\n    { } otherwise\n\n</code></pre>\n<p><strong>Definition: Evaluation of OneOrMorePath</strong></p>\n<p>eval(Path(X, OneOrMorePath(path), Y))</p>\n<pre xml:space=\"preserve\"><code># For OneOrMorePath, we take one step of the path then start\n# recording nodes for results.\n\neval(Path(x:term, OneOrMorePath(path), vy:var)) =\n    Let X = eval(x, path)\n    Let V = the empty multiset\n    For n in X\n        ALP(n, path, V)\n        End\n    result is V\n\neval(Path(vx:var, OneOrMorePath(path), vy:var)) =\n   { { (vx, t), (vy, n) } |  t in nodes(G), (vy, n) in eval(Path(t, OneOrMorePath(path), vy)) }\n\neval(Path(vx:var, OneOrMorePath(path), y:term)) =\n   eval(Path(y:term, OneOrMorePath(inv(path)), vx))\n\neval(Path(x:term, OneOrMorePath(path), y:term)) =\n    { { } } if { (vy:var, y) } in eval(Path(x, OneOrMorePath(path), vy))\n    { } otherwise\n\n</code></pre>\n<p><strong>Definition: Evaluation of\nNegatedPropertySet</strong></p>\n<pre xml:space=\"preserve\"><code>Write μ' as the extension of a solution mapping:\nμ'(μ,x) = μ(x)   if x is a variable\nμ'(μ,t) = t   if t is a RDF term\n\n</code></pre>\n<pre xml:space=\"preserve\"><code>Let x and y be variables or RDF terms, and S a set of IRIs:\n\neval(Path(x, NPS(S), y)) = { μ | ∃ triple(μ'(μ,x), p, μ'(μ,y)) in G, such that the IRI of p ∉ S }\n\n</code></pre></div>"^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral> ;
        <http://www.w3.org/2000/01/rdf-schema#seeAlso>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#defn_PropertyPathPattern> , <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/BasicGraphPattern/#this> , <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGraphPattern/#sparqlTranslatePathExpressions> , <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#defn_ActiveGraph> ;
        <http://www.w3.org/ns/prov#wasDerivedFrom>
                <https://www.w3.org/TR/sparql11-query/#PropertyPathPatterns> ;
        <https://schema.org/name>  "Property Path Patterns" .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlDataset>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#sparqlDataset> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAlgebraEval>
        a                          <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                "<div xmlns=\"http://www.w3.org/1999/xhtml\"><h3 id=\"sparqlAlgebraEval\">Evaluation Semantics</h3>\n\n<p>We define eval(D(G), algebra expression) as the evaluation of an algebra expression with respect to a dataset D having active graph G. The active graph is initially the default graph.</p>\n<pre xml:space=\"preserve\"><code>D : a dataset\nD(G) : D a dataset with active graph G (the one patterns match against)\nD[i] : The graph with IRI i in dataset D\nP, P1, P2 : graph patterns\nL : a solution sequence\nF : an expression\n</code></pre>\n<p><strong>Definition: Evaluation of a Basic Graph\nPattern</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), BGP) = multiset of solution mappings\n</code></pre>\n<p>See section <a href=\"BasicGraphPattern/#this\" shape=\"rect\">Basic Graph Patterns</a></p>\n<p><strong>Definition: Evaluation of a Property Path\nPattern</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), Path(X, path, Y)) = multiset of solution mappings\n</code></pre>\n<p>See section <a href=\"initDefinitions/#defn_PropertyPathExpr\" shape=\"rect\">Property Path Expresions</a></p>\n<p><strong>Definition: Evaluation of Filter</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), Filter(F, P)) = Filter(F, eval(D(G),P), D(G))\n</code></pre>\n<p>'substitute' is a filter function in support of the evaluation of <a href=\"../expressions/SparqlOps/func-forms/#func-filter-exists\" shape=\"rect\"><code>EXISTS</code> and <code>NOT EXISTS</code></a> forms which were translated to <code>exists</code>.</p>\n<p><strong>Definition: Substitute</strong></p>\n<p>Let μ be a solution mapping.</p>\n<blockquote>\n<p>substitute(<em>pattern</em>, μ) = the pattern formed by replacing every occurrence of a variable v in <em>pattern</em> by μ(v) for each v in dom(μ)</p>\n</blockquote>\n<p><strong>Definition: Evaluation of Exists</strong></p>\n<p>Let μ be the current solution mapping for a filter and P a graph pattern:</p>\n<blockquote>\n<p>The value exists(P), given D(G) is true if and only if\neval(D(G), substitute(P, μ)) is a non-empty sequence.</p>\n</blockquote>\n<p><strong>Definition: Evaluation of Join</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), Join(P1, P2)) = Join(eval(D(G), P1), eval(D(G), P2))\n</code></pre>\n<p><strong>Definition: Evaluation of LeftJoin</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), LeftJoin(P1, P2, F)) = LeftJoin(eval(D(G), P1), eval(D(G), P2), F)\n</code></pre>\n<p><strong>Definition: Evaluation of Union</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), Union(P1,P2)) = Union(eval(D(G), P1), eval(D(G), P2))\n</code></pre>\n<p><strong>Definition: Evaluation of Graph</strong></p>\n<pre xml:space=\"preserve\"><code>if IRI is a graph name in D\neval(D(G), Graph(IRI,P)) = eval(D(D[IRI]), P)\n</code></pre>\n<pre xml:space=\"preserve\"><code>if IRI is not a graph name in D\neval(D(G), Graph(IRI,P)) = the empty multiset\n</code></pre>\n<pre xml:space=\"preserve\"><code>eval(D(G), Graph(var,P)) =\n     Let R be the empty multiset\n     foreach IRI i in D\n        R := Union(R, Join( eval(D(D[i]), P) , Ω(?var-&gt;i) )\n     the result is R\n\n</code></pre>\n<p>The evaluation of graph uses the SPARQL algebra union operator. The cardinality of a solution mapping is the sum of the cardinalities of that solution mapping in each join operation.</p>\n<p><strong>Definition:\nEvaluation of Group</strong></p>\n<p>eval(D(G), Group(exprlist, P)) = Group(exprlist, eval(D(G), P))</p>\n<p><strong>Definition: Evaluation of\nAggregation</strong></p>\n<p>eval(D(G), Aggregation(exprlist, func, scalarvals, P)) = Aggregation(exprlist, func, scalarvals, eval(D(G), P))</p>\n<p><strong>Definition: Evaluation of\nAggregateJoin</strong></p>\n<p>eval(D(G), AggregateJoin(A1, ..., An)) = AggregateJoin(eval(D(G), A1), ..., eval(D(G), An))</p>\n<p>Note that if eval(D(G), Ai) is an error, it is ignored.</p>\n<p><strong>Definition: Evaluation of Extend</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), Extend(P, var, expr)) = Extend(eval(D(G), P), var, expr)\n</code></pre>\n<p><strong>Definition: Evaluation of ToList</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), ToList(P)) = ToList(eval(D(G), P))\n</code></pre>\n<p><strong>Definition: Evaluation of Distinct</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), Distinct(L)) = Distinct(eval(D(G), L))\n\n</code></pre>\n<p><strong>Definition: Evaluation of Reduced</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), Reduced(L)) = Reduced(eval(D(G), L))\n\n</code></pre>\n<p><strong>Definition: Evaluation of Project</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), Project(L, vars)) = Project(eval(D(G), L), vars)\n\n</code></pre>\n<p><strong>Definition: Evaluation of OrderBy</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), OrderBy(L, condition)) = OrderBy(eval(D(G), L), condition)\n\n</code></pre>\n<p><strong>Definition: Evaluation of ToMultiSet</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), ToMultiSet(L)) = ToMultiSet(eval(D), M))\n</code></pre>\n<p><strong>Definition: Evaluation of Slice</strong></p>\n<pre xml:space=\"preserve\"><code>eval(D(G), Slice(L, start, length)) = Slice(eval(D(G), L), start, length)\n</code></pre></div>"^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral> ;
        <http://www.w3.org/2000/01/rdf-schema#seeAlso>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#defn_PropertyPathExpr> , <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/BasicGraphPattern/#this> , <https://kgdev.net/specifications/sparql11-query/expressions/SparqlOps/func-forms/#func-filter-exists> ;
        <http://www.w3.org/ns/prov#wasDerivedFrom>
                <https://www.w3.org/TR/sparql11-query/#sparqlAlgebraEval> ;
        <https://schema.org/name>  "Evaluation Semantics" .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggSum>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlAlgebra/aggregateAlgebra/#defn_aggSum> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggSample>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlAlgebra/aggregateAlgebra/#defn_aggSample> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlBGPExtend>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlBGPExtend/#this> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlSelectExpressions>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGroupAggSelectExpressions/#sparqlSelectExpressions> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlBasicGraphPatterns>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#sparqlBasicGraphPatterns> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlHavingClause>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGroupAggSelectExpressions/#sparqlHavingClause> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlSimplification>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGraphPattern/#sparqlSimplification> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggGroupConcat>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlAlgebra/aggregateAlgebra/#defn_aggGroupConcat> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggAvg>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlAlgebra/aggregateAlgebra/#defn_aggAvg> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlAlgebra>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlAlgebra/#this> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlPropertyPaths>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#sparqlPropertyPaths> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggMax>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlAlgebra/aggregateAlgebra/#defn_aggMax> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#this>
        a                          <https://kgdev.net/ns#Definition> , <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                "<div xmlns=\"http://www.w3.org/1999/xhtml\"><h2 id=\"this\">Definition of SPARQL</h2>\n\n<p>This section defines the correct behavior for evaluation of graph patterns and solution modifiers, given a query string and an RDF dataset. It does not imply a SPARQL implementation must use the process defined here.</p>\n<p>The outcome of executing a SPARQL query is defined by a series of steps, starting from the SPARQL query as a string, turning that string into an abstract syntax form, then turning the abstract syntax into a SPARQL abstract query comprising operators from the SPARQL algebra. This abstract query is then evaluated on an RDF dataset.</p></div>"^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral> ;
        <http://www.w3.org/ns/prov#wasDerivedFrom>
                <https://www.w3.org/TR/sparql11-query/#sparqlDefinition> ;
        <https://schema.org/name>  "Definition of SPARQL" .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#BGPsparql>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/BasicGraphPattern/#BGPsparql> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#BasicGraphPattern>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/BasicGraphPattern/#this> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlQueryVariables>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#sparqlQueryVariables> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlDistinct>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertSolMod/#sparqlDistinct> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlProjection>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertSolMod/#sparqlProjection> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlCollectFilters>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGraphPattern/#sparqlCollectFilters> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#convertGraphPattern>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGraphPattern/#this> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#defn_aggMin>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlAlgebra/aggregateAlgebra/#defn_aggMin> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#variableScope>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/#variableScope> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlBGPExtend-notes>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlBGPExtend/#sparqlBGPExtend-notes> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#idp2427544>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#idp2427544> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#convertGroupAggSelectExpressions>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGroupAggSelectExpressions/#this> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlGroupAggregate>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertGroupAggSelectExpressions/#sparqlGroupAggregate> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#convertSolMod>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlQuery/convertSolMod/#this> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#sparqlSolMod>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/initDefinitions/#sparqlSolMod> .

<https://kgdev.net/specifications/sparql11-query/sparqlDefinition/#setFunctions>
        a       <https://w3id.org/atomgraph/linkeddatahub#Content> ;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                <https://kgdev.net/specifications/sparql11-query/sparqlDefinition/sparqlAlgebra/aggregateAlgebra/#setFunctions> .
