Part II. LogiQL

Table of Contents

3. Introduction
4. Lexical Properties
4.1. Identifiers
4.2. Literals
4.3. Operators
4.4. Keywords
4.5. White space and comments
5. Grammar
5.1. Major Grammatical Categories
5.2. The Complete Grammar
6. Primitive Types
7. Built-in Operations
7.1. Comparisons
7.2. Arithmetic Operators
7.3. Arithmetic Functions
7.4. Rounding Functions
7.5. Integer Bit Manipulation Functions
7.6. String Operations
7.7. Boolean Operations
7.8. Date/Time Operations
7.9. Conversions
7.10. Currency
7.11. Unique Identifiers
7.12. Transaction Identifier
8. Predicates
8.1. Predicate Declaration
8.2. Functional Predicates
8.3. Entity Predicates
8.4. Constructor predicates
8.5. Reference mode (refmode) predicates
8.6. Foreign Predicates
8.7. File Predicates
8.8. Derivation Types
8.9. Ordered Predicates
8.10. Local predicates
8.11. External Diff Predicates
8.12. Predicate Properties
9. Expressions
9.1. Literals
9.2. Variables
9.3. Arithmetic Operations
9.4. Function applications
9.5. Parenthesized expressions
10. Formulas
10.1. Atoms
10.2. Comparisons
10.3. Complex Formulas
11. Rules
11.1. Basics of IDB Rules
11.2. Value-constructing Rules
11.3. Derived-only Rules
11.4. Putting it all together: general recursion
12. Aggregations
13. Sorting
13.1. seq
13.2. list
14. Series
14.1. Semantics
14.2. runtotal
14.3. rndnum
15. Linear recursion
16. Constraints
16.1. Syntax and Interpretation
16.2. Common Forms of Constraints
16.3. Constraints as Predicate Declarations
17. Typing
17.1. Predicate Type Inference
17.2. Type checking
18. Default Values
18.1. Net Sales Example
18.2. Disjunctive Solution
18.3. Default Value Solution
18.4. Storage and Performance Implications
18.5. Consistent Default Values
18.6. Data Updates
18.7. Caveats
19. Transaction Logic
19.1. Preliminaries
19.2. Delta logic
19.3. Events
19.4. Stages
20. Hierarchical Syntax
21. Modules
21.1. ConcreteBlox
22. Hierarchical Import/Export
22.1. Using Hierarchical Import/Export
22.2. Set semantics for repeated fields