GithubHelp home page GithubHelp logo

rhdunn / xquery-intellij-plugin Goto Github PK

View Code? Open in Web Editor NEW
24.0 9.0 9.0 46.17 MB

XQuery, XPath and XSLT Language Support for the IntelliJ IDE

Home Page: https://rhdunn.github.io/xquery-intellij-plugin/

License: Apache License 2.0

XQuery 10.76% Kotlin 88.74% XSLT 0.07% HTML 0.43%
xquery intellij xquery-intellij-plugin xquery-support basex saxon xpath-ng marklogic exist-db xslt

xquery-intellij-plugin's Introduction

Build Status JetBrains Plugin JetBrains Plugin Downloads GitHub Issues

Syntax Highlighting

XQuery and XSLT

This is a plugin for the IntelliJ IDE that adds support for the XML Query (XQuery) and XML Path (XPath) languages. This covers support for:

  1. XPath 2.0, 3.0, and 3.1;
  2. XQuery 1.0, 3.0, and 3.1;
  3. XQuery and XPath Full Text extension;
  4. XQuery Update Facility 1.0, and 3.0 extension;
  5. XQuery Scripting extension;
  6. EXPath extensions;
  7. BaseX, MarkLogic, and Saxon vendor extensions.

This plugin also has limited support for the following XML-based languages that use XPath:

  1. XSLT 1.0-3.0 (active when the IntelliJ XPathView plugin is disabled);
  2. XProc 1.0-3.0.

See https://rhdunn.github.io/xquery-intellij-plugin/ for the plugin documentation and tutorials.

The latest development version of this plugin supports IntelliJ 2022.1 – 2024.1s. Older versions of the plugin are compatible with older versions of IntelliJ.

Query Processor and Database Integration

This plugin provides support for the following implementations of XQuery:

  1. BaseX 7.0 – 9.3;
  2. eXist-db 4.4 – 5.3;
  3. FusionDB alpha;
  4. MarkLogic 8.0 – 10.0;
  5. Saxon 9.2 – 10.0.

For those XQuery implementations, this plugin supports:

  1. Running XQuery, XSLT, XPath, SPARQL, SQL, and JavaScript queries where supported by the implementation;
  2. Profiling XQuery and XSLT queries;
  3. Debugging MarkLogic XQuery-based queries, with expression breakpoint support;
  4. Viewing access and error log files.

This plugin provides additional integration support for the following query processor file types and standards:

  1. MarkLogic rewriter XML files;
  2. EXQuery RESTXQ 1.0.

Libraries and Frameworks

This plugin adds support for the following project frameworks:

  1. MarkLogic Roxy – source root detection;
  2. MarkLogic ml-gradle – source root detection.
  3. Support running and profiling XRay unit tests.

IntelliJ Integration

This plugin provides support for the following IntelliJ features:

  1. Resolving URI string literal, function, and variable references;
  2. Code folding;
  3. Find usages and semantic usage highlighting;
  4. Rename refactoring for variables;
  5. Code completion;
  6. Parameter information;
  7. Parameter inlay hints;
  8. Structure view;
  9. Breadcrumb navigation, including highlighting XML tags in the editor like the IntelliJ XML plugin;
  10. Paired brace matching;
  11. Commenting code;
  12. Integrated function documentation ("Quick Documentation", Ctrl+Q);
  13. Context information (Alt+Q) for XQuery function declarations;
  14. Spellchecking support with bundle dictionaries with XPath, XQuery, and XSLT terms.
  15. Language injection support on various elements, including string literals.

The plugin also supports the following IntelliJ Ultimate features:

  1. Support displaying MarkLogic rewriter files in the Endpoints tool window;
  2. Support displaying EXQuery RESTXQ endpoints in the Endpoints tool window.

Copyright (C) 2016-2024 Reece H. Dunn

This software and document includes material copied from or derived from the XPath and XQuery specifications. Copyright © 1999-2017 W3C® (MIT, ERCIM, Keio, Beihang).

The IntelliJ XQuery Plugin is licensed under the Apache 2.0 license.

xquery-intellij-plugin's People

Contributors

canofbees avatar dependabot[bot] avatar line-o avatar rhdunn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

xquery-intellij-plugin's Issues

XQuery and XPath Full Text 1.0

Full Text Extension

  • ComparisonExpr
  • FTContainsExpr
  • ForClause
  • FTScoreVar
  • LetClause
  • Prolog
  • FTOptionDecl
  • FTSelection
  • FTPrimary
  • FTPrimaryWithOptions
  • FTWeight
  • FTWords
  • FTWordsValue
  • FTAnyallOption
  • FTTimes
  • FTMatchOptions
  • FTMatchOption
  • FTLanguageOption
  • FTWildCardOption
  • FTThesaurusOption
  • FTThesaurusID
  • FTLiteralRange
  • FTStemOption
  • FTCaseOption
  • FTDiacriticsOption
  • FTStopWordOption
  • FTStopWords
  • FTStopWordsInclExcl
  • FTExtensionOption
  • FTOr
  • FTAnd
  • FTMildNot
  • FTUnaryNot
  • FTPosFilter
  • FTOrder
  • FTWindow
  • FTUnit
  • FTDistance
  • FTRange
  • FTScope
  • FTBigUnit
  • FTContent
  • FTIgnoreOption
  • FTExtensionSelection

Built-in Function Documentation

  • W3C Functions and Objects 1.0 (First Edition)
  • W3C Functions and Objects 1.0 (Second Edition)
  • W3C Functions and Objects 3.0
  • W3C Functions and Objects 3.1
  • MarkLogic 6.0
  • MarkLogic 7.0
  • MarkLogic 8.0
  • Saxonica 9.7

XQuery Update Facility 3.0

Update Facility Extension

  • CompatibilityAnnotation
  • TransformWithExpr (1)
  • UpdatingFunctionCall
  • CopyModifyExpr -- New name for TransformExpr
  • FunctionDecl
  • AnnotatedDecl
  • ExprSingle
  • CastExpr

(1) Both the XQuery 3.1 ArrowExpr and Update Facility 3.0 TransformWithExpr are inserted between XQuery 3.0 CastExpr and UnaryExpr. It is not currently clear what the order should be. See: https://www.w3.org/Bugs/Public/show_bug.cgi?id=30015. Until a decision is made, I have merged the two constructs as:

CastExpr ::= (ArrowExpr | TransformWithExpr) ( "cast" "as" SingleType )?

This conforms to both grammars, while not adding any additional functionality due to the precedence order of the two expressions.

Implementation: MarkLogic 7

Implementation: MarkLogic
Implementation Version: MarkLogic 7

Language Versions:

  • 0.9-ml
  • 1.0
  • 1.0-ml [Default]

Dialects:

  • XQuery [Default]

Features:

  • Minimal Conformance
  • Full Axis Feature
  • Module Feature
  • Serialization Feature
  • Higher Order Functions
  • Schema Aware (Import and Validation) Feature
  • Typed Data Feature

Implementation: Saxon Home Edition

Implementation: Saxonica
Implementation Versions: Saxon Home Edition

Language Versions:

  • 1.0 [Default]

Dialects:

  • XQuery [Default]

Features:

  • Minimal Conformance
  • Full Axis Feature
  • Module Feature
  • Serialization Feature

IntelliJ References and Resolve Support (Core Support)

http://www.jetbrains.org/intellij/sdk/docs/reference_guide/custom_language_support/references_and_resolve.html

  • URILiterals
  • QName prefices
  • Functions
  • Variables

Variable Providers:

  • VarDecl (via AnnotatedDecl and Prolog)
  • Param (via ParamList and FunctionDecl)
  • ForBinding (via ForClause)
  • PositionalVar
  • LetBinding (via LetClause)
  • IntermediateClause
  • TumblingWindowClause
  • SlidingWindowClause
  • WindowVars
  • CountClause
  • GroupingVariable (via GroupingSpec)
  • QuantifiedExpr
  • TypeswitchExpr (default clause)
  • CaseClause

Implementation: MarkLogic 8

Implementation: MarkLogic
Implementation Version: MarkLogic 8

Language Versions:

  • 0.9-ml
  • 1.0
  • 1.0-ml [Default]

Dialects:

  • XQuery [Default]

Features:

  • Minimal Conformance
  • Full Axis Feature
  • Module Feature
  • Serialization Feature
  • Higher Order Functions
  • Schema Aware (Import and Validation) Feature
  • Typed Data Feature

XQuery and XPath Full Text 3.0

Full Text Extension

  • ComparisonExpr
  • FTContainsExpr
  • ForBinding
  • LetBinding
  • Prolog
  • FTExtensionOption

NOTE: The changes here are adapting the XQuery 1.0 based grammar to the XQuery 3.0 grammar.

XQuery 1.0 Lexer and Syntax Highlighting

XQuery 1.0: First Edition - Second Edition

  • Pragma
  • PragmaContents
  • DirElemConstructor
  • DirAttributeList
  • DirAttributeValue / QuotAttrValueContentChar
  • DirAttributeValue / AposAttrValueContentChar
  • DirAttributeValue / EscapeQuot
  • DirAttributeValue / EscapeApos
  • DirAttributeValue / PredefinedEntityRef
  • DirAttributeValue / CharRef
  • DirAttributeValue / CommonContent ('{{' and '}}')
  • DirAttributeValue / EnclosedExpr
  • DirElemContent / DirElemConstructor
  • DirElemContent / DirCommentConstructor
  • DirElemContent / DirPIConstructor
  • DirElemContent / CDataSection
  • DirElemContent / PredefinedEntityRef
  • DirElemContent / CharRef
  • DirElemContent / CommonContent ('{{' and '}}')
  • DirElemContent / EnclosedExpr
  • DirElemContent / ElementContentChar
  • CommonContent
  • DirCommentConstructor
  • DirCommentContents
  • DirPIConstructor
  • DirPIContents
  • CDataSection
  • CDataSectionContents

Lexical structure:

  • IntegerLiteral
  • DecimalLiteral
  • DoubleLiteral
  • StringLiteral
  • StringLiteral / PredefinedEntityRef
  • StringLiteral / CharRef
  • StringLiteral / EscapeQuot
  • StringLiteral / EscapeApos
  • Comment
  • PITarget
  • QName
  • NCName
  • S
  • Char
  • Digits
  • CommentContents

Implementation: Saxon Professional Edition

Implementation: Saxonica
Implementation Version: Saxon Professional Edition

Language Versions:

  • 1.0
  • 3.0 [Default]
  • 3.1

Dialects:

  • XQuery [Default]

Features:

  • Minimal Conformance
  • Full Axis Feature
  • Module Feature
  • Serialization Feature
  • Higher Order Functions

Find usages not working at all or not working properly

#30 mentions support for finding usages.
For a simple scenario like:

let $x := ''
return $x

navigation to declaration place works fine but finding usage on $x in first line doesn't do anything.
Same for:

declare variable $x := '';
$x

For scenario with function like below:

declare default function namespace 'http://www.w3.org/2005/xquery-local-functions';
declare function x() {'a'};
x()

Find usages on function declaration gives results for completely unrelated usages of global and local variables with name $x.

Implementation: W3C Standard

Implementation Versions:

  • First Edition
  • Second Edition [Default]

Language Versions:

  • 1.0
  • 3.0 [Default]
  • 3.1

Dialects:

  • XQuery [Default]
  • XQuery Full Text
  • XQuery Update Facility
  • XQuery Scripting

Implementation: MarkLogic 9 (Early Access Preview)

Implementation: MarkLogic
Implementation Version: MarkLogic 9

Language Versions:

  • 0.9-ml
  • 1.0
  • 1.0-ml [Default]

Dialects:

  • XQuery [Default]

Features:

  • Minimal Conformance
  • Full Axis Feature
  • Module Feature
  • Serialization Feature
  • Higher Order Functions
  • Schema Aware (Import and Validation) Feature
  • Typed Data Feature

Builtin Functions and Types:

  • XPath and XQuery Functions and Operators 3.0
  • MarkLogic 9 Extensions

XQuery Error Conditions

XQuery 1.0

  • err:XPST0001
  • err:XPDY0002
  • err:XPST0003 -- parser; UnsupportedConstruct; etc.
  • err:XPTY0004
  • err:XPST0005
  • err:XPTY0006
  • err:XPTY0007
  • err:XPST0008
  • err:XQST0009
  • err:XPST0010
  • err:XQST0012
  • err:XQST0013
  • err:XQST0014
  • err:XQST0015
  • err:XQST0016
  • err:XPST0017 -- UndefinedFunction (in progress)
  • err:XPTY0018
  • err:XPTY0019
  • err:XPTY0020
  • err:XPDY0021
  • err:XQST0022
  • err:XQTY0023
  • err:XQTY0024
  • err:XQDY0025
  • err:XQDY0026
  • err:XQDY0027
  • err:XQTY0028
  • err:XQDY0029
  • err:XQTY0030
  • err:XQST0031 -- UnsupportedXQueryVersion
  • err:XQST0032
  • err:XQST0033 -- DuplicateNamespacePrefix
  • err:XQST0034
  • err:XQST0035
  • err:XQST0036
  • err:XQST0037
  • err:XQST0038
  • err:XQST0039
  • err:XQST0040
  • err:XQDY0041
  • err:XQST0042
  • err:XQST0043
  • err:XQDY0044
  • err:XQST0045
  • err:XQST0046
  • err:XQST0047 -- DuplicateNamespaceUri
  • err:XQST0048
  • err:XQST0049
  • err:XPDY0050
  • err:XPST0051
  • err:XQDY0052
  • err:XQST0053
  • err:XQST0054
  • err:XQST0055
  • err:XQST0056
  • err:XQST0057
  • err:XQST0058
  • err:XQST0059
  • err:XQST0060
  • err:XQDY0061
  • err:XQDY0062
  • err:XQST0063
  • err:XQDY0064
  • err:XQST0065
  • err:XQST0066
  • err:XQST0067
  • err:XQST0068
  • err:XQST0069
  • err:XQST0070
  • err:XQST0071
  • err:XQDY0072
  • err:XQST0073
  • err:XQDY0074
  • err:XQST0075
  • err:XQST0076
  • err:XQST0077
  • err:XQST0078
  • err:XQST0079
  • err:XPST0080
  • err:XPST0081 -- UnboundQNamePrefix
  • err:XQST0082
  • err:XPST0083
  • err:XQDY0084
  • err:XQST0085
  • err:XQTY0086
  • err:XQST0087
  • err:XQST0088
  • err:XQST0089
  • err:XQST0090
  • err:XQDY0091
  • err:XQDY0092
  • err:XQST0093
  • err:XQDY0096

XQuery 3.0

  • err:XQST0097
  • err:XQST0098
  • err:XQST0099
  • err:XQDY0101
  • err:XQDY0102
  • err:XQST0103
  • err:XQST0104
  • err:XQTY0105
  • err:XQST0106
  • err:XQST0108
  • err:XQST0109
  • err:XQST0110
  • err:XQST0111
  • err:XQST0113
  • err:XQST0114
  • err:XQST0115
  • err:XQST0116
  • err:XPTY0117
  • err:XQST0118
  • err:XQST0119
  • err:XQST0125
  • err:XQST0129
  • err:XPDY0130
  • err:XPST0133
  • err:XQST0134

XQuery 3.1

  • err:XQDY0137

XQuery 3.0

XQuery 3.0: Recommendation

  • AllowingEmpty
  • AnnotatedDecl
  • Annotation
  • AnyFunctionTest
  • Argument
  • ArgumentList
  • ArgumentPlaceholder
  • AtomicOrUnionType
  • AttributeName
  • BracedURILiteral
  • CaseClause
  • CatchClause
  • CatchErrorList
  • CompAttrConstructor
  • CompElemConstructor
  • CompNamespaceConstructor
  • ComparisonExpr
  • ComputedConstructor
  • ContextItemDecl
  • CountClause
  • CurrentItem
  • DFPropertyName
  • DecimalFormatDecl
  • EQName
  • ElementName
  • ExprSingle
  • FLWORExpr
  • ForBinding
  • ForClause
  • FunctionBody
  • FunctionCall
  • FunctionDecl
  • FunctionItemExpr
  • FunctionTest
  • GroupByClause
  • GroupingSpec
  • GroupingSpecList
  • GroupingVariable
  • InitialClause
  • InlineFunctionExpr
  • IntermediateClause
  • ItemType
  • KindTest
  • LetBinding
  • LetClause
  • NameTest
  • NamedFunctionRef
  • NamespaceNodeTest
  • NextItem
  • OptionDecl
  • Param
  • ParenthesizedItemType
  • PostfixExpr
  • Pragma
  • Prefix
  • PrefixExpr
  • PreviousItem
  • PrimaryExpr
  • Prolog
  • ReturnClause
  • SequenceTypeUnion
  • Setter
  • SimpleMapExpr
  • SimpleTypeName
  • SingleType
  • SlidingWindowClause
  • StepExpr
  • StringConcatExpr
  • SwitchCaseClause
  • SwitchCaseOperand
  • SwitchExpr
  • TryCatchExpr
  • TryClause
  • TryTargetExpr
  • TumblingWindowClause
  • TypeName
  • TypedFunctionTest
  • URIExpr
  • URIQualifiedName
  • ValidateExpr
  • ValueExpr
  • VarDecl
  • VarDefaultValue
  • VarName
  • VarValue
  • VersionDecl
  • Wildcard
  • WindowClause
  • WindowEndCondition
  • WindowStartCondition
  • WindowVars

NOTE: MarkLogic supports many XQuery 3.0 features in the 1.0-ml version, but does not meet the minimal conformance for XQuery 3.0.

Implementation: Zorba 3.0

Implementation: Zorba
Implementation Version: Zorba 3.0

Language Versions:

  • 1.0
  • 3.0 [Default]

Dialects:

  • XQuery [Default]
  • XQuery Update Facility
  • XQuery Update Facility and Full Text
  • XQuery Full Text
  • JSONiq

Features:

  • Minimal Conformance
  • Full Axis Feature (Language Version: 1.0)
  • Module Feature
  • Serialization Feature
  • Higher Order Functions (Language Version: 3.0 | 3.1)
  • Schema Aware (Import and Validation) Feature
  • Typed Data Feature

Builtin Functions and Types:

  • XQuery 1.0 and XPath 2.0 Functions and Operators (First Edition | Second Edition)
  • XPath and XQuery Functions and Operators 3.0
  • XPath and XQuery Functions and Operators 3.1
  • Zorba Extensions

Implementation: MarkLogic 6

Implementation: MarkLogic
Implementation Version: MarkLogic 6

Language Versions:

  • 0.9-ml
  • 1.0
  • 1.0-ml [Default]

Dialects:

  • XQuery [Default]

Features:

  • Minimal Conformance
  • Full Axis Feature
  • Module Feature
  • Serialization Feature
  • Higher Order Functions
  • Schema Aware (Import and Validation) Feature
  • Typed Data Feature

XQuery 3.1

XQuery 3.1: Candidate Recommendation

  • AnyArrayTest
  • AnyMapTest
  • ArrayConstructor
  • ArrayTest
  • ArrowExpr
  • ArrowFunctionSpecifier
  • CastExpr
  • CatchClause
  • CompAttrConstructor
  • CompCommentConstructor
  • CompDocConstructor
  • CompElemConstructor
  • CompNamespaceConstructor
  • CompPIConstructor
  • CompTextConstructor
  • CurlyArrayConstructor
  • DFPropertyName
  • EnclosedContentExpr
  • EnclosedExpr
  • EnclosedPrefixExpr
  • EnclosedTryTargetExpr
  • EnclosedURIExpr
  • ExtensionExpr
  • ItemType
  • KeySpecifier
  • Lookup
  • MapConstructor
  • MapConstructorEntry
  • MapKeyExpr
  • MapTest
  • MapValueExpr
  • NodeConstructor
  • OrderedExpr
  • PostfixExpr
  • PrimaryExpr
  • SquareArrayConstructor
  • StringConstructor
  • StringConstructorChars
  • StringConstructorContent
  • StringConstructorInterpolation
  • TryClause
  • TypedArrayTest
  • TypedMapTest
  • UnaryLookup
  • UnorderedExpr
  • ValidateExpr

Saxon 9.4 introduced a version of the map syntax:

NOTE: As of Saxon 9.7, XQuery 3.1 is supported and the := map syntax is not supported.

Support refactoring/code style/lint inspections

The XQuery grammar has isomorphic (i.e. equivalent) constructs, with one being the long form and the other being the short form. For example:

span

is equivalent to:

child::span

This also includes things like replacing concat(...) with StringConcatExpr (XQuery 3.0) and StringConcatExpr with StringConstructor (XQuery 3.1).

NOTE: These equivalences are described in the XQuery specifications.

This should also include replacing proprietary and older constructs with standard compliant constructs (e.g. Saxon map { "a" := "b" } with map { "a": "b" }).

The inspections should have an option to specify which form is preferred. This makes it easier for the developer to specify the coding style they want to use, and makes it possible to refactor a codebase from different XQuery versions and implementations.

NOTE: This is a top-level tracking issue. Other issues should be raised to track progress within different specifications and for different implementations.

xqDoc Support

XQDocComments.ebnf:

  • Comments
  • Comment
  • XQDocComment
  • Contents
  • TaggedContents
  • DirElemConstructor
  • DirAttrConstructor
  • DirAttributeValue

Tokens:

  • Tag
  • CommentContents -- Not referenced elsewhere in the EBNF
  • Char
  • Trim
  • NotRPar -- Not referenced elsewhere in the EBNF
  • ElementContentChar
  • QuotAttrContentChar
  • AposAttrContentChar
  • S

Implementation: Saxon Enterprise Edition

Implementation: Saxonica
Implementation Version: Saxon Enterprise Edition

Language Versions:

  • 1.0
  • 3.0 [Default]
  • 3.1

Dialects:

  • XQuery [Default]
  • XQuery Update Facility (Language Version: 3.0 | 3.1)

Features:

  • Minimal Conformance
  • Full Axis Feature (Language Version: 1.0)
  • Module Feature
  • Serialization Feature
  • Higher Order Functions (Language Version: 3.0 | 3.1)
  • Schema Aware (Import and Validation) Feature
  • Typed Data Feature

XQuery Scripting Extension 1.0

Scripting Extension (building on Update Facility 1.0)

  • VarDecl
  • FunctionDecl
  • Expr
  • ApplyExpr
  • ConcatExpr
  • ExprSingle
  • BlockExpr
  • Block
  • BlockDecls
  • BlockVarDecl
  • BlockBody
  • AssignmentExpr
  • WhileExpr
  • WhileBody
  • ExitExpr

MarkLogic 0.9-ml

XQuery 1.0: Working Draft 02 May 2003

NOTE: The AST and PSI are modelled on the XQuery 1.0 constructs.

Named Terminals

  • Pragma
  • MustUnderstandExtension
  • ExprComment
  • ExprCommentContent
  • PragmaContents
  • ExtensionContents
  • IntegerLiteral
  • DecimalLiteral
  • DoubleLiteral
  • StringLiteral
  • S
  • SchemaMode
  • SchemaGlobalTypeName
  • SchemaGlobalContext
  • SchemaContextStep
  • Digits
  • EscapeQuot
  • PITarget
  • NCName
  • VarName
  • QName
  • PredefinedEntityRef
  • HexDigits
  • CharRef
  • EscapeApos
  • Char
  • ElementContentChar
  • QuoteAttributeContentChar
  • AposAttributeContentChar

Non-Terminals

  • Module
  • MainModule
  • LibraryModule
  • ModuleDecl
  • Prolog
  • Version
  • ModuleImport
  • VarDefn
  • QueryBody
  • Expr
  • ExprSingle
  • FLWORExpr
  • ForClause
  • PositionalVar
  • LetClause
  • WhereClause
  • OrderByClause
  • OrderSpecList
  • OrderSpec
  • OrderModifier
  • QuantifiedExpr
  • TypeswitchExpr
  • CaseClause
  • IfExpr
  • OrExpr
  • AndExpr
  • InstanceofExpr
  • TreatExpr
  • CastableExpr
  • CastExpr
  • ComparisonExpr
  • RangeExpr
  • AdditiveExpr
  • MultiplicativeExpr
  • UnaryExpr
  • UnionExpr
  • IntersectExceptExpr
  • ValueExpr
  • PathExpr
  • RelativePathExpr
  • StepExpr
  • AxisStep
  • FilterStep
  • PrimaryExpr
  • Predicates
  • ValidateExpr
  • SchemaContext
  • Constructor
  • GeneralComp
  • ValueComp
  • NodeComp
  • OrderComp
  • ForwardStep
  • ReverseStep
  • AbbreviatedForwardStep
  • AbbreviatedReverseStep
  • ForwardAxis
  • ReverseAxis
  • NodeTest
  • NameTest
  • Wildcard
  • Literal
  • NumericLiteral
  • ParenthesizedExpr
  • FunctionCall
  • ElementConstructor
  • ComputedDocumentConstructor
  • ComputedElementConstructor
  • ComputedAttributeConstructor
  • ComputedTextConstructor
  • CdataSection
  • XmlProcessingInstruction
  • XmlComment
  • ElementContent
  • AttributeList
  • AttributeValue
  • AttributeValueContent
  • EnclosedExpr
  • XMLSpaceDecl
  • DefaultCollationDecl
  • NamespaceDecl
  • DefaultNamespaceDecl
  • FunctionDefn
  • ParamList
  • Param
  • TypeDeclaration
  • SingleType
  • SequenceType
  • AtomicType
  • ItemType
  • KindTest
  • ElementTest
  • AttributeTest
  • ProcessingInstructionTest
  • DocumentTest
  • CommentTest
  • TextTest
  • AnyKindTest
  • SchemaContextPath
  • SchemaContextLocation
  • LocalName
  • NodeName
  • TypeName
  • OccurrenceIndicator
  • ValidationDecl
  • SchemaImport
  • SchemaPrefix

XQuery 1.0 Parser and PSI

XQuery 1.0: First Edition - Second Edition

  • Module
  • VersionDecl
  • MainModule
  • LibraryModule
  • ModuleDecl
  • Prolog
  • Setter
  • Import
  • Separator
  • NamespaceDecl
  • BoundarySpaceDecl
  • DefaultNamespaceDecl
  • OptionDecl
  • OrderingModeDecl
  • EmptyOrderDecl
  • CopyNamespacesDecl
  • PreserveMode
  • InheritMode
  • DefaultCollationDecl
  • BaseURIDecl
  • SchemaImport
  • SchemaPrefix
  • ModuleImport
  • VarDecl
  • ConstructionDecl
  • FunctionDecl
  • ParamList
  • Param
  • EnclosedExpr
  • QueryBody
  • Expr
  • ExprSingle
  • FLWORExpr
  • ForClause
  • PositionalVar
  • LetClause
  • WhereClause
  • OrderByClause
  • OrderSpecList
  • OrderSpec
  • OrderModifier
  • QuantifiedExpr
  • TypeswitchExpr
  • CaseClause
  • IfExpr
  • OrExpr
  • AndExpr
  • ComparisonExpr
  • RangeExpr
  • AdditiveExpr
  • MultiplicativeExpr
  • UnionExpr
  • IntersectExceptExpr
  • InstanceofExpr
  • TreatExpr
  • CastableExpr
  • CastExpr
  • UnaryExpr
  • ValueExpr
  • GeneralComp
  • ValueComp
  • NodeComp
  • ValidateExpr
  • ValidationMode
  • ExtensionExpr
  • Pragma
  • PragmaContents
  • PathExpr
  • RelativePathExpr
  • StepExpr
  • AxisStep
  • ForwardStep
  • ForwardAxis
  • AbbrevForwardStep
  • ReverseStep
  • ReverseAxis
  • AbbrevReverseStep
  • NodeTest
  • NameTest
  • Wildcard
  • FilterExpr
  • PredicateList
  • Predicate
  • PrimaryExpr
  • Literal
  • NumericLiteral
  • VarRef
  • VarName
  • ParenthesizedExpr
  • ContextItemExpr
  • OrderedExpr
  • UnorderedExpr
  • FunctionCall
  • Constructor
  • DirectConstructor
  • DirElemConstructor
  • DirAttributeList
  • DirAttributeValue
  • QuotAttrValueContent
  • AposAttrValueContent
  • DirElemContent
  • CommonContent
  • DirCommentConstructor
  • DirCommentContents
  • DirPIConstructor
  • DirPIContents
  • CDataSection
  • CDataSectionContents
  • ComputedConstructor
  • CompDocConstructor
  • CompElemConstructor
  • ContentExpr
  • CompAttrConstructor
  • CompTextConstructor
  • CompCommentConstructor
  • CompPIConstructor
  • SingleType
  • TypeDeclaration
  • SequenceType
  • OccurrenceIndicator
  • ItemType
  • AtomicType
  • KindTest
  • AnyKindTest
  • DocumentTest
  • TextTest
  • CommentTest
  • PITest
  • AttributeTest
  • AttribNameOrWildcard
  • SchemaAttributeTest
  • AttributeDeclaration
  • ElementTest
  • ElementNameOrWildcard
  • SchemaElementTest
  • ElementDeclaration
  • AttributeName
  • ElementName
  • TypeName
  • URILiteral

Lexical structure:

  • IntegerLiteral
  • DecimalLiteral
  • DoubleLiteral
  • StringLiteral
  • PredefinedEntityRef
  • EscapeQuot
  • EscapeApos
  • ElementContentChar
  • QuotAttrContentChar
  • AposAttrContentChar
  • Comment
  • PITarget
  • CharRef
  • QName
  • NCName
  • S
  • Char
  • Digits
  • CommentContents

XQuery Update Facility Error Conditions

XQuery Update Facility 1.0

  • err:XUST0001
  • err:XUST0002
  • err:XUST0003
  • err:XUTY0004
  • err:XUTY0005
  • err:XUTY0006
  • err:XUTY0007
  • err:XUTY0008
  • err:XUDY0009
  • err:XUTY0010
  • err:XUTY0011
  • err:XUTY0012
  • err:XUTY0013
  • err:XUDY0014
  • err:XUDY0015
  • err:XUDY0016
  • err:XUDY0017
  • err:XUDY0018
  • err:XUDY0019
  • err:XUDY0021
  • err:XUTY0022
  • err:XUDY0023
  • err:XUDY0024
  • err:XUDY0025
  • err:XUST0026
  • err:XUDY0027
  • err:XUST0028
  • err:XUDY0029
  • err:XUDY0030
  • err:XUDY0031
  • err:FOUP0001
  • err:FOUP0002
  • err:XPST0005
  • err:XQDY0026
  • err:XQDY0041
  • err:XQDY0072
  • err:XQDY0074

XQuery Update Facility 3.0

  • err:XUST0032
  • err:XUST0033
  • err:XUST0034
  • err:XUDY0037
  • err:XUDY0038

XQuery Update Facility 1.0

Update Facility Extension

  • Setter
  • RevalidationDecl
  • FunctionDecl
  • ExprSingle
  • InsertExpr
  • InsertExprTargetChoice
  • SourceExpr
  • TargetExpr
  • DeleteExpr
  • ReplaceExpr
  • RenameExpr
  • NewNameExpr
  • TransformExpr

MarkLogic 1.0-ml

MarkLogic 1.0-ml Dialect.

MarkLogic 6.0+:

  • try/catch (different syntax to XQuery 3.0)
  • Semicolon as Transaction Separator
  • private for functions and variables (different syntax to XQuery 3.0)
  • Binary Node Constructor
  • Binary Node Test
  • validate as
  • Importing an XSLT stylesheet into an XQuery Module
  • namespace:: XPath axis
  • property:: XPath axis

MarkLogic 8.0+ -- JSON support:

  • object-node construction (MarkLogic 8)
  • object-node KindTest -- optional StringLiteral (MarkLogic 8)
  • array-node construction (MarkLogic 8)
  • array-node KindTest -- optional StringLiteral (MarkLogic 8)
  • number-node construction (MarkLogic 8)
  • number-node KindTest -- optional StringLiteral (MarkLogic 8)
  • boolean-node construction (MarkLogic 8)
  • boolean-node KindTest -- optional StringLiteral (MarkLogic 8)
  • null-node construction (MarkLogic 8)
  • null-node KindTest -- optional StringLiteral (MarkLogic 8)
  • text KindTest -- optional StringLiteral (MarkLogic 8)
  • node KindTest -- optional StringLiteral or Wildcard (MarkLogic 8)

XQuery and XPath Full Text Error Conditions

XQuery and XPath Full Text 1.0 and 3.0

  • err:FTST0001
  • err:FTST0002
  • err:FTST0003
  • err:FTST0004
  • err:FTST0005
  • err:FTST0006
  • err:FTST0007
  • err:FTST0008
  • err:FTST0009
  • err:FTST0010
  • err:FTST0011
  • err:FTST0012
  • err:FTST0013
  • err:FTST0014
  • err:FTST0015
  • err:FTDY0016
  • err:FTDY0017
  • err:FTST0018
  • err:FTST0019
  • err:FTDY0020
  • err:FOCH0002
  • err:XPST0003
  • err:XPTY0004
  • err:XQST0013
  • err:XQST0079

JSONiq - the SQL of NoSQL 1.0

JSONiq

  • Module
  • MainModule
  • LibraryModule
  • Prolog
  • DefaultCollationDecl
  • OrderingModeDecl
  • EmptyOrderDecl
  • DecimalFormatDecl
  • DFPropertyName
  • ModuleImport
  • VarDecl
  • FunctionDecl
  • ParamList
  • Expr
  • ExprSingle
  • FLWORExpr
  • ForClause
  • LetClause
  • CountClause
  • WhereClause
  • GroupByClause
  • OrderByClause
  • QuantifiedExpr
  • SwitchExpr
  • SwitchCaseClause
  • TypeswitchExpr
  • CaseClause
  • IfExpr
  • TryCatchExpr
  • OrExpr
  • AndExpr
  • NotExpr
  • ComparisonExpr
  • StringConcatExpr
  • RangeExpr
  • AdditiveExpr
  • MultiplicativeExpr
  • InstanceofExpr
  • TreatExpr
  • CastableExpr
  • CastExpr
  • UnaryExpr
  • SimpleMapExpr
  • PostfixExpr
  • Predicate
  • ObjectLookup
  • ArrayLookup
  • ArrayUnboxing
  • PrimaryExpr
  • Literal
  • NumericLiteral
  • BooleanLiteral
  • NullLiteral
  • VarRef
  • ParenthesizedExpr
  • ContextItemExpr
  • OrderedExpr
  • UnorderedExpr
  • FunctionCall
  • Argument
  • ObjectConstructor
  • PairConstructor
  • ArrayConstructor
  • SequenceType
  • ItemType
  • JSONItemTest
  • AtomicType
  • URILiteral
  • IntegerLiteral
  • DecimalLiteral
  • DoubleLiteral
  • StringLiteral
  • PredefinedCharRef
  • CharRef
  • Comment
  • NCName
  • S
  • Char
  • Digits
  • CommentContents

XQuery 1.0 and XPath 2.0 Formal Semantics

Semantics: First Edition - Second Edition

Core

Named Terminals

  • IntegerLiteral
  • DecimalLiteral
  • DoubleLiteral
  • StringLiteral
  • EscapeQuot
  • EscapeApos
  • ElementContentChar
  • QuotAttrContentChar
  • AposAttrContentChar
  • PITarget
  • QName
  • NCName
  • S
  • Char

Non-Terminals

  • ModuleDecl
  • Separator
  • NamespaceDecl
  • DefaultNamespaceDecl
  • OptionDecl
  • OrderingModeDecl
  • EmptyOrderDecl
  • CopyNamespacesDecl
  • PreserveMode
  • InheritMode
  • DefaultCollationDecl
  • BaseURIDecl
  • SchemaImport
  • SchemaPrefix
  • ModuleImport
  • VarDecl
  • ConstructionDecl
  • FunctionDecl
  • ParamList
  • Param
  • EnclosedExpr
  • Expr
  • ExprSingle
  • FLWORExpr
  • ForClause
  • PositionalVar
  • LetClause
  • OrderByClause
  • OrderSpecList
  • OrderSpec
  • OrderModifier
  • QuantifiedExpr
  • TypeswitchExpr
  • CaseClause
  • IfExpr
  • OrExpr
  • AndExpr
  • CastableExpr
  • CastExpr
  • ValueExpr
  • ValidateExpr
  • ValidationMode
  • ExtensionExpr
  • Pragma
  • PragmaContents
  • StepExpr
  • AxisStep
  • ForwardStep
  • ForwardAxis
  • ReverseStep
  • ReverseAxis
  • NodeTest
  • NameTest
  • Wildcard
  • PrimaryExpr
  • Literal
  • NumericLiteral
  • VarRef
  • VarName
  • ParenthesizedExpr
  • OrderedExpr
  • UnorderedExpr
  • FunctionCall
  • Constructor
  • ComputedConstructor
  • CompDocConstructor
  • CompElemConstructor
  • LocalNamespaceDecl
  • ContentExpr
  • CompAttrConstructor
  • CompTextConstructor
  • CompCommentConstructor
  • CompPIConstructor
  • SingleType
  • TypeDeclaration
  • SequenceType
  • OccurrenceIndicator
  • ItemType
  • AtomicType
  • KindTest
  • AnyKindTest
  • DocumentTest
  • TextTest
  • CommentTest
  • PITest
  • AttributeTest
  • AttribNameOrWildcard
  • SchemaAttributeTest
  • AttributeDeclaration
  • ElementTest
  • ElementNameOrWildcard
  • SchemaElementTest
  • ElementDeclaration
  • AttributeName
  • ElementName
  • TypeName
  • URILiteral
  • LocalNamespaceDecls
  • Digits

Formal

Named Terminals

  • HexDigits
  • CharRef
  • Char

Non-Terminals

  • AtomicValueContent
  • TypeAnnotation
  • ElementName
  • ElementNameOrWildcard
  • AttributeNameOrWildcard
  • AttributeName
  • Value
  • SimpleValue
  • ElementValue
  • AttributeValue
  • DocumentValue
  • TextValue
  • CommentValue
  • ProcessingInstructionValue
  • NamespaceBindings
  • LocationHints
  • NamespaceBinding
  • Prefix
  • LocalPart
  • NodeValue
  • Item
  • AtomicValue
  • TypeName
  • Type
  • FormalItemType
  • NodeType
  • ElementContentType
  • AtomicTypeName
  • ElementType
  • TypeSpecifier
  • AttributeType
  • Nillable
  • TypeDerivation
  • ComplexTypeDerivation
  • AtomicTypeDerivation
  • TypeReference
  • Derivation
  • Mixed
  • Definition
  • Definitions
  • Substitution
  • AttributeModel
  • ElementModel
  • PrimeType
  • DocumentType
  • SPragma
  • Content
  • MixedAttribute
  • NillableAttribute
  • substitutionGroupAttribute
  • maxLength
  • minLength
  • length
  • maxOccurs
  • minOccurs
  • OccursAttributes
  • ComplexTypeContent
  • ChildrenContent
  • GroupComponent
  • AttributeContent
  • UseAttribute
  • DefaultAttribute
  • FixedAttribute
  • PrincipalNodeKind
  • FormalFLWORClause
  • FormalReturnClause
  • FormalFLWORExpr
  • FormalCaseClauses
  • FormalCaseClause
  • FormalDefaultCaseClause
  • PrologDeclList
  • PrologDecl
  • OptAtomicType
  • OptMixed
  • OptNillable
  • OptSubstitution
  • OptTypeSpecifier
  • OptTypeReference
  • OptTypeDeclaration
  • OptPositionalVar
  • OptVarName
  • OptLocationHints
  • ElementContentUnit
  • DirCharsUnit
  • FunctionSig
  • TypeList
  • AttributeContentUnits
  • AttributeContentUnit
  • ConstructionMode
  • Axis
  • AttributeCharsUnit
  • FunctionKey
  • ProcessingInstructionType
  • PITargetOrWildcard
  • OptDerivation

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.