Mirror of the Rel4tion website/wiki source, view at <http://rel4tion.org>

[[ 🗃 ^yEzqv rel4tion-wiki ]] :: [📥 Inbox] [📤 Outbox] [🐤 Followers] [🤝 Collaborators] [🛠 Commits]

Clone

HTTPS: git clone https://vervis.peers.community/repos/yEzqv

SSH: git clone USERNAME@vervis.peers.community:yEzqv

Branches

Tags

master :: projects / naya /

sparql-toc.mdwn

This is the table-of-contents of the SPARQL specification. It can help me organize my own plans and files.

1 Introduction
	1.1 Document Outline
	1.2 Document Conventions
		1.2.1 Namespaces
		1.2.2 Data Descriptions
		1.2.3 Result Descriptions
		1.2.4 Terminology
2 Making Simple Queries (Informative)
	2.1 Writing a Simple Query
	2.2 Multiple Matches
	2.3 Matching RDF Literals
		2.3.1 Matching Literals with Language Tags
		2.3.2 Matching Literals with Numeric Types
		2.3.3 Matching Literals with Arbitrary Datatypes
	2.4 Blank Node Labels in Query Results
	2.5 Creating Values with Expressions
	2.6 Building RDF Graphs
3 RDF Term Constraints (Informative)
	3.1 Restricting the Value of Strings
	3.2 Restricting Numeric Values
	3.3 Other Term Constraints
4 SPARQL Syntax
	4.1 RDF Term Syntax
		4.1.1 Syntax for IRIs
			4.1.1.1 Prefixed Names
			4.1.1.2 Relative IRIs
		4.1.2 Syntax for Literals
		4.1.3 Syntax for Query Variables
		4.1.4 Syntax for Blank Nodes
	4.2 Syntax for Triple Patterns
		4.2.1 Predicate-Object Lists
		4.2.2 Object Lists
		4.2.3 RDF Collections
		4.2.4 rdf:type
5 Graph Patterns
	5.1 Basic Graph Patterns
		5.1.1 Blank Node Labels
		5.1.2 Extending Basic Graph Pattern Matching
	5.2 Group Graph Patterns
		5.2.1 Empty Group Pattern
		5.2.2 Scope of Filters
		5.2.3 Group Graph Pattern Examples
6 Including Optional Values
	6.1 Optional Pattern Matching
	6.2 Constraints in Optional Pattern Matching
	6.3 Multiple Optional Graph Patterns
7 Matching Alternatives
8 Negation
	8.1 Filtering Using Graph Patterns
		8.1.1 Testing For the Absence of a Pattern
		8.1.2 Testing For the Presence of a Pattern
	8.2 Removing Possible Solutions
	8.3 Relationship and differences between NOT EXISTS and MINUS
		8.3.1 Example: Sharing of variables
		8.3.2 Example: Fixed pattern
		8.3.3 Example: Inner FILTERs
9 Property Paths
	9.1 Property Path Syntax
	9.2 Examples
	9.3 Property Paths and Equivalent Patterns
	9.4 Arbitrary Length Path Matching
10 Assignment
	10.1 BIND: Assigning to Variables
	10.2 VALUES: Providing inline data
		10.2.1 VALUES syntax
		10.2.2 VALUES Examples
11 Aggregates
	11.1 Aggregate Example
	11.2 GROUP BY
	11.3 HAVING
	11.4 Aggregate Projection Restrictions
	11.5 Aggregate Example (with errors)
12 Subqueries
13 RDF Dataset
	13.1 Examples of RDF Datasets
	13.2 Specifying RDF Datasets
		13.2.1 Specifying the Default Graph
		13.2.2 Specifying Named Graphs
		13.2.3 Combining FROM and FROM NAMED
	13.3 Querying the Dataset
		13.3.1 Accessing Graph Names
		13.3.2 Restricting by Graph IRI
		13.3.3 Restricting Possible Graph IRIs
		13.3.4 Named and Default Graphs
14 Basic Federated Query
15 Solution Sequences and Modifiers
	15.1 ORDER BY
	15.2 Projection
	15.3 Duplicate Solutions
	15.4 OFFSET
	15.5 LIMIT
16 Query Forms
	16.1 SELECT
		16.1.1 Projection
		16.1.2 SELECT Expressions
	16.2 CONSTRUCT
		16.2.1 Templates with Blank Nodes
		16.2.2 Accessing Graphs in the RDF Dataset
		16.2.3 Solution Modifiers and CONSTRUCT
		16.2.4 CONSTRUCT WHERE
	16.3 ASK
	16.4 DESCRIBE (Informative)
		16.4.1 Explicit IRIs
		16.4.2 Identifying Resources
		16.4.3 Descriptions of Resources
17 Expressions and Testing Values
	17.1 Operand Data Types
	17.2 Filter Evaluation
		17.2.1 Invocation
		17.2.2 Effective Boolean Value (EBV)
	17.3 Operator Mapping
		17.3.1 Operator Extensibility
	17.4 Function Definitions
		17.4.1 Functional Forms
			17.4.1.1 bound
			17.4.1.2 IF
			17.4.1.3 COALESCE
			17.4.1.4 NOT EXISTS and EXISTS
			17.4.1.5 logical-or
			17.4.1.6 logical-and
			17.4.1.7 RDFterm-equal
			17.4.1.8 sameTerm
			17.4.1.9 IN
			17.4.1.10 NOT IN
		17.4.2 Functions on RDF Terms
			17.4.2.1 isIRI
			17.4.2.2 isBlank
			17.4.2.3 isLiteral
			17.4.2.4 isNumeric
			17.4.2.5 str
			17.4.2.6 lang
			17.4.2.7 datatype
			17.4.2.8 IRI
			17.4.2.9 BNODE
			17.4.2.10 STRDT
			17.4.2.11 STRLANG
			17.4.2.12 UUID
			17.4.2.13 STRUUID
		17.4.3 Functions on Strings
			17.4.3.1 Strings in SPARQL Functions
				17.4.3.1.1 String arguments
				17.4.3.1.2 Argument Compatibility Rules
				17.4.3.1.3 String Literal Return Type
			17.4.3.2 STRLEN
			17.4.3.3 SUBSTR
			17.4.3.4 UCASE
			17.4.3.5 LCASE
			17.4.3.6 STRSTARTS
			17.4.3.7 STRENDS
			17.4.3.8 CONTAINS
			17.4.3.9 STRBEFORE
			17.4.3.10 STRAFTER
			17.4.3.11 ENCODE_FOR_URI
			17.4.3.12 CONCAT
			17.4.3.13 langMatches
			17.4.3.14 REGEX
			17.4.3.15 REPLACE
		17.4.4 Functions on Numerics
			17.4.4.1 abs
			17.4.4.2 round
			17.4.4.3 ceil
			17.4.4.4 floor
			17.4.4.5 RAND
		17.4.5 Functions on Dates and Times
			17.4.5.1 now
			17.4.5.2 year
			17.4.5.3 month
			17.4.5.4 day
			17.4.5.5 hours
			17.4.5.6 minutes
			17.4.5.7 seconds
			17.4.5.8 timezone
			17.4.5.9 tz
		17.4.6 Hash Functions
			17.4.6.1 MD5
			17.4.6.2 SHA1
			17.4.6.3 SHA256
			17.4.6.4 SHA384
			17.4.6.5 SHA512
	17.5 XPath Constructor Functions
	17.6 Extensible Value Testing
18 Definition of SPARQL
	18.1 Initial Definitions
		18.1.1 RDF Terms
		18.1.2 Simple Literal
		18.1.3 RDF Dataset
		18.1.4 Query Variables
		18.1.5 Triple Patterns
		18.1.6 Basic Graph Patterns
		18.1.7 Property Path Patterns
		18.1.8 Solution Mapping
		18.1.9 Solution Sequence Modifiers
		18.1.10 SPARQL Query
	18.2 Translation to the SPARQL Algebra
		18.2.1 Variable Scope
		18.2.2 Converting Graph Patterns
			18.2.2.1 Expand Syntax Forms
			18.2.2.2 Collect FILTER Elements
			18.2.2.3 Translate Property Path Expressions
			18.2.2.4 Translate Property Path Patterns
			18.2.2.5 Translate Basic Graph Patterns
			18.2.2.6 Translate Graph Patterns
			18.2.2.7 Filters of Group
			18.2.2.8 Simplification step
		18.2.3 Examples of Mapped Graph Patterns
		18.2.4 Converting Groups, Aggregates, HAVING, final VALUES clause and SELECT Expressions
			18.2.4.1 Grouping and Aggregation
			18.2.4.2 HAVING
			18.2.4.3 VALUES
			18.2.4.4 SELECT Expressions
		18.2.5 Converting Solution Modifiers
			18.2.5.1 ORDER BY
			18.2.5.2 Projection
			18.2.5.3 DISTINCT
			18.2.5.4 REDUCED
			18.2.5.5 OFFSET and LIMIT
			18.2.5.6 Final Algebra Expression
	18.3 Basic Graph Patterns
		18.3.1 SPARQL Basic Graph Pattern Matching
		18.3.2 Treatment of Blank Nodes
	18.4 Property Path Patterns
	18.5 SPARQL Algebra
		18.5.1 Aggregate Algebra
			18.5.1.1 Set Functions
			18.5.1.2 Count
			18.5.1.3 Sum
			18.5.1.4 Avg
			18.5.1.5 Min
			18.5.1.6 Max
			18.5.1.7 GroupConcat
			18.5.1.8 Sample
	18.6 Evaluation Semantics
	18.7 Extending SPARQL Basic Graph Matching
		18.7.1 Notes
19 SPARQL Grammar
	19.1 SPARQL Request String
	19.2 Codepoint Escape Sequences
	19.3 White Space
	19.4 Comments
	19.5 IRI References
	19.6 Blank Nodes and Blank Node Labels
	19.7 Escape sequences in strings
	19.8 Grammar
20 Conformance
21 Security Considerations (Informative)
22 Internet Media Type, File Extension and Macintosh File Type
[See repo JSON]