Dating term descriptions

Unless otherwise noted in the section heading, all sections and appendices in this document are normative.This section of the document, section 1, introduces the SPARQL query language specification.W3C's role in making the Recommendation is to draw attention to the specification and to promote its widespread deployment.This enhances the functionality and interoperability of the Web.This section describes the status of this document at the time of its publication. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at There have been no substantive changes to this document since the previous version.An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.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 same Term 17.4.1.9 IN 17.4.1.10 NOT IN 17.4.2 Functions on RDF Terms 17.4.2.1 is IRI 17.4.2.2 is Blank 17.4.2.3 is Literal 17.4.2.4 is Numeric 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 lang Matches 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 Group Concat 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 A References A.1 Normative References A.2 Other References RDF is a directed, labeled graph data format for representing information in the Web.

Section 15 defines the constructs that affect the solutions of a query by ordering, slicing, projecting, limiting, and removing duplicates from a sequence of solutions.Section 10 describes the forms of assignment possible in SPARQL.Sections 11 introduces the mechanism to group and aggregate results, which can be incorporated as subqueries as described in Section 12.In particular, Section 6 introduces the ability to make portions of a query optional; Section 7 introduces the ability to express the disjunction of alternative graph patterns; and Section 8 introduces patterns to test for the absense of information.Section 9 adds property paths to graph pattern matching, giving a compact representation of queries and also the ability to match arbitrary length paths in the graph.

Leave a Reply