XQuery, XPath and XSLT Language Support for the IntelliJ IDE
MarkLogic Rewriter XML Integration:
matches
attributes.match-accept
, match-content-type
,
match-execute-privilege
, match-header
, and match-method
elements.dispatch
, set-error-handler
, and set-path
elements to the XQuery/MJS/SJS file they reference.Run Configurations:
<a>error</>
.Run Configurations:
Saxon Syntax Extensions:
~type
type aliases..{ ... }
style context item inline function expressions._{ ... }
style lambda inline function expressions.otherwise
expressions.as
for specifying the tuple field type in a tuple sequence type.StringLiteral
tuple field names.type(T)
type aliases.for member
expressions.References and Resolving:
BracedURILiteral
references (Q{...}
).java:
and unprefixed
classpath URIs (BaseX, eXist-db, Saxon).URIQualifiedName
functions and variables.Semantic Highlighting:
IntelliJ Integration:
Run Configurations:
Code Completion:
StringLiteral
inside an NodeType
expression, e.g. using MarkLogic's
object-node("...")
.Run Configurations:
Log Viewer:
ErrorLog.txt
log file.References, Resolving and Find Usages:
Code Completion:
StringLiteral
inside an AxisStep
expression, e.g. from a PITest
.@...
-style AbbrevForwardStep
expressions.IntelliJ Integration:
QName
prefix.FunctionCall
and named arrow expression function calls.XPath and XQuery:
fn{...}
and tuple(...)
syntax in XPath expressions.IntegerLiteral
in addition to DecimalLiteral
.References, Resolving and Find Usages:
NCName
-based FunctionDecl
s.EQName
type signature in the find usages pane.IntelliJ Integration:
Code Completion:
VarRef
expressions for XQuery.FunctionCall
and ArrowExpr
expressions for XQuery.union()
type completion support in AtomicOrUnionType
and SimpleTypeName
for XPath and XQuery.QName
s for XPath and XQuery.ForwardAxis
and ReverseAxis
for XPath and XQuery.KindTest
based NodeTest
s and ItemType
s for XPath and XQuery.SequenceType
s for XPath and XQuery.Run Configurations:
Query Processor Integration:
Saxon:
NoClassDefFoundError
looking for com/saxonica/ee/bytecode/GeneratedCode
.union(...)
types in XPath expressions.union(...)
types in SingleType
s for XPath and XQuery.BaseX:
perm
annotations introduced in BaseX 9.0.MarkLogic:
binary()
used as a NodeTest
.validate full
syntax extension.XPath and XSLT:
XPath and XQuery:
CharRef
s with a single digit, e.g. "	"
.element
followed by a keyword that is part of a containing expression
(e.g. return
) and does not have an EnclosedExpr
.EnclosedExpr
is missing from named computed
constructors.NumericLiteral
is followed by an NCName
or
URIQualifiedName
without whitespace or comment tokens, due to them being
non-delimiting terminal symbols.::
axis indicator.Inspections:
ModuleImport
s without a namespace prefix.IntelliJ Integration:
DirCommentConstructor
elements (<!--...-->
).XPath and XQuery:
Static Context:
Run Configurations:
IntelliJ Integration:
Bug Fixes:
XPath and XQuery:
attribute
,
element
, every
, exit
, namespace
, processing-instruction
,
return
, or some
.some
, or every
.``[`{...}`...`]``
-- StringConstructorInterpolation
at the start of a StringConstructor
.Static Context:
err
and output
namespaces to the BaseX static context.Function Resolution:
Inspections:
</<test/>
.Saxon Vendor Extensions:
UnionType
constructs in TypedMapTest
sequence types.TupleType
constructs with names only, not associated sequence types.orElse
and andAlso
logical expressions.NCName
and URIQualifiedName
types in the union()
syntax.BaseX Vendor Extensions:
TernaryIfExpr
conditional expressions.ElvisExpr
conditional expressions.XQuery Working Draft 02 May 2003 and MarkLogic 0.9-ml Support:
empty()
syntax for empty-sequence()
.Invalid Syntax Recovery:
CompElemConstructor
, CompAttrConstructor
,
CompPIConstructor
, or CompNamespaceConstructor
tag name is a StringLiteral
.SequenceType
is used in a ParenthesizedItemType
.Static Context:
sql
namespace to the MarkLogic static context, added in MarkLogic 7.0.Module Import Resolution:
http://
-based URILiteral
nodes.ModuleImport
, not just the first valid location.ModuleImport
declarations that don't specify at
paths.EQName Resolution:
NCName
-based EQName
nodes, using the default element or function
namespaces where appropriate.NamespaceDecl
declarations.DefaultNamespaceDecl
declarations.DirAttributeList
attributes.Function Resolution:
MainModule
/LibraryModule
prolog for function declarations.Inspections:
Language Support:
non-deterministic
function calls.Bug Fixes:
TransformWithExpr
containing an empty expression body should not report
a parser error as it is allowed by the Update Facility 3.0 specification.UpdateExpr
correctly, according to how it is handled in BaseX.