XPath 3.0 and 3.1 Training

Table of Contents

  1. Introduction
    1. What is XPath?
    2. Expressions
    3. Sequences
    4. XPath version history
  1. Location Path Expressions
    1. Absolute and Relative Location Paths
      1. Absolute Location Path
      2. Relative Location Path
    2. Steps
      1. Axis
      2. Node test
        1. by name
        2. by kind
        3. by type
      3. Predicates
      4. Abbreviated Syntax
  1. Other Expressions
    1. Literal Expressions
    2. Conditional Expressions
    3. Logical Expressions
    4. Sequence Expressions
    5. For Expressions
    6. Quantified Expressions
    7. Comparison Expressions
    8. Arithmetic Expressions
    9. String Concatenation Expressions
    10. Let Expressions
    11. Expressions on SequenceTypes
  1. Functions
    1. Inline Functions
    2. Higher Order Functions
      1. Built-in Higher Order Functions
        1. for-each()
        2. filter()
        3. fold-left()
        4. fold-right()
        5. for-each-pair()
    3. Function Composition
    4. Partial Functions
    5. Closures
  1. Operators
    1. XPath Operators
      1. New operators in XPath 3.0
        1. Concat operator
        2. Map operator
  1. XPath Built-in Functions
    1. Accessors
    2. Numeric Functions
      1. Functions on Numbers
      2. Parsing Numbers
      3. Formatting Numbers
      4. Formatting Integers
      5. Trigonometric and exponential functions
    3. String Functions
      1. Functions to assemble and disassemble strings
      2. Comparison of strings
      3. Functions on string values
      4. Functions based on substring matching
      5. String functions that use regular expressions
    4. Functions that manipulate URIs
    5. Functions on Boolean values
      1. Boolean constant functions
      2. Functions on boolean values
    6. Functions on durations
      1. Component extraction functions on durations
    7. Functions on dates and times
      1. Constructing a dateTime
      2. Component extraction functions on dates and times
      3. Timezone adjustment functions on dates and times
      4. Formatting dates and times
    8. Functions related to QNames
      1. Functions to create a QName
      2. Functions related to QNames
    9. Functions on nodes
    10. Functions on sequences
      1. General functions on sequences
      2. Functions that compare values in sequences
      3. Functions that test the cardinality of sequences
      4. Aggregate Functions
      5. Functions on node identifiers
      6. Functions giving access to external information
      7. Parsing and serializing
    11. Context functions
    12. Higher-order functions
      1. Functions on functions
      2. Basic higher-order functions
    13. Constructor functions
      1. Constructor functions for XML Schema built-in atomic XML Schema types
      2. Constructor functions for XML Schema built-in list types
      3. Constructor functions for user defined simple types
  1. XPath 3.1
    1. Arrays
    2. Built-in Array Functions
      1. array:size()
      2. array:get()
      3. array:append()
      4. array:subarray()
      5. array:remove()
      6. array:insert-before()
      7. array:head()
      8. array:tail()
      9. array:reverse()
      10. array:join()
      11. array:for-each()
      12. array:filter()
      13. array:fold-left()
      14. array:fold-right()
      15. array:for-each-pair()
      16. array:sort()
      17. array:flatten()
    3. Maps
      1. Built-in Map Functions
        1. map:size()
        2. map:get()
        3. map:put()
        4. map:merge()
        5. map:keys()
        6. map:contains()
        7. map:entry()
        8. map:remove()
        9. map:for-each()
    4. JSON
      1. Built-in JSON Functions
        1. parse-json()
        2. json-doc()
    5. Other new XPath 3.1 Features
      1. New XPath 3.1 Operators
        1. Lookup operator
        2. Arrow operator
      2. New XPath 3.1 Functions
        1. contains-token()
        2. parse-ietf-date()
        3. random-number-generator()
        4. sort()