vscode-xml/languages/xquery/xquery.tmLanguage
2018-01-27 18:30:59 -05:00

1066 lines
41 KiB
Plaintext

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>fileTypes</key>
<array>
<string>xq</string>
<string>xql</string>
<string>xqm</string>
<string>xqy</string>
<string>xquery</string>
</array>
<key>firstLineMatch</key>
<string>^\bxquery version\b.*</string>
<key>foldingStartMarker</key>
<string>^\s*(&lt;[^!?%/](?!.+?(/&gt;|&lt;/.+?&gt;))|&lt;[!%]--(?!.+?--%?&gt;)|&lt;%[!]?(?!.+?%&gt;))|(declare|.*\{\s*(//.*)?$)</string>
<key>foldingStopMarker</key>
<string>^\s*(&lt;/[^&gt;]+&gt;|[/%]&gt;|--&gt;)\s*$|(.*\}\s*;?\s*|.*;)</string>
<key>keyEquivalent</key>
<string>^~X</string>
<key>name</key>
<string>XQuery</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#Xml</string>
</dict>
<dict>
<key>include</key>
<string>#entity</string>
</dict>
<dict>
<key>include</key>
<string>#bare-ampersand</string>
</dict>
<dict>
<key>begin</key>
<string>(&lt;\?)\s*([-_a-zA-Z0-9]+)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.begin.xml</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>entity.name.tag.xml</string>
</dict>
</dict>
<key>end</key>
<string>(\?&gt;)</string>
<key>name</key>
<string>meta.tag.preprocessor.xml</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string> ([a-zA-Z-]+)</string>
<key>name</key>
<string>entity.other.attribute-name.xml</string>
</dict>
<dict>
<key>include</key>
<string>#doublequotedString</string>
</dict>
<dict>
<key>include</key>
<string>#singlequotedString</string>
</dict>
</array>
</dict>
<dict>
<key>match</key>
<string>^xquery version .*;$</string>
<key>name</key>
<string>keyword.control.import.xquery</string>
</dict>
<dict>
<key>match</key>
<string>\b(?i:(\d+\.\d*(e[\-\+]?\d+)?))(?=[^a-zA-Z_])</string>
<key>name</key>
<string>constant.numeric.float.xquery</string>
</dict>
<dict>
<key>match</key>
<string>(?&lt;=[^0-9a-zA-Z_])(?i:(\.\d+(e[\-\+]?\d+)?))</string>
<key>name</key>
<string>constant.numeric.float.xquery</string>
</dict>
<dict>
<key>match</key>
<string>\b(?i:(\d+e[\-\+]?\d+))</string>
<key>name</key>
<string>constant.numeric.float.xquery</string>
</dict>
<dict>
<key>match</key>
<string>\b([1-9]+[0-9]*|0)</string>
<key>name</key>
<string>constant.numeric.integer.decimal.xquery</string>
</dict>
<dict>
<key>match</key>
<string>\b(import|module|schema)\b</string>
<key>name</key>
<string>keyword.control.import.xquery</string>
</dict>
<dict>
<key>begin</key>
<string>\(:</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.xquery</string>
</dict>
</dict>
<key>end</key>
<string>:\)</string>
<key>name</key>
<string>comment.block.xquery</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#block_comment</string>
</dict>
</array>
</dict>
<dict>
<key>comment</key>
<string>http://www.w3.org/TR/xpath-datamodel/#types</string>
<key>match</key>
<string>(?&lt;![:\-_a-zA-Z0-9])((xs:)(string|boolean|decimal|float|double|duration|dateTime|time|date|gYearMonth|gYear|gMonthDay|gDay|gMonth|hexBinary|base64Binary|anyURI|QName|NOTATION|anyAtomicType|anyType|anySimpleType|untypedAtomic|dayTimeDuration|yearMonthDuration|integer|nonPositiveInteger|negativeInteger|long|int|short|byte|nonNegativeInteger|unsignedLong|unsignedInt|unsignedShort|unsignedByte|positiveInteger|ENTITY|ID|NMTOKEN|language|NCName|Name|token|normalizedString))(?![:\-_a-zA-Z0-9])</string>
<key>name</key>
<string>support.type.xquery</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.variable.xquery</string>
</dict>
</dict>
<key>match</key>
<string>((\$)(?:([\-_a-zA-Z0-9]+)((:)))?([\-_a-zA-Z0-9]+))</string>
<key>name</key>
<string>variable.other.xquery</string>
</dict>
<dict>
<key>match</key>
<string>/(child|descendant|attribute|self|descendant-or-self|following-sibling|following|parent|ancestor|preceding-sibling|preceding|ancestor-or-self)::</string>
<key>name</key>
<string>support.constant.xquery</string>
</dict>
<dict>
<key>name</key>
<string>meta.function.xquery</string>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>storage.type.function.xquery</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>entity.name.function.xquery</string>
</dict>
</dict>
<key>match</key>
<string>(function)\s+((?:([\-_a-zA-Z0-9]+):)?([\-_a-zA-Z0-9]+))\s*\(</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#function_parameters</string>
</dict>
<dict>
<key>include</key>
<string>$self</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>\s*(function)\s+(?!namespace)</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>storage.type.function.xquery</string>
</dict>
</dict>
<key>end</key>
<string>\(</string>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.name.function.xquery</string>
</dict>
</dict>
<key>match</key>
<string>((?:([\-_a-zA-Z0-9]+):)?([\-_a-zA-Z0-9]+))</string>
</dict>
<dict>
<key>include</key>
<string>#function_parameters</string>
</dict>
<dict>
<key>include</key>
<string>$self</string>
</dict>
</array>
</dict>
</array>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.other.xquery</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>storage.type.variable.xquery</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>entity.name.function.variable.xquery</string>
</dict>
</dict>
<key>match</key>
<string>(declare)\s+(variable)\s+(\$(?:[\-_a-zA-Z0-9]+:)?[\-_a-zA-Z0-9]+)</string>
<key>name</key>
<string>meta.variable.xquery</string>
</dict>
<dict>
<key>begin</key>
<string>(declare)\s+(variable)\s*</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.other.xquery</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>storage.type.variable.xquery</string>
</dict>
</dict>
<key>end</key>
<string>(\$(?:[\-_a-zA-Z0-9]+:)?[\-_a-zA-Z0-9]+)</string>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.name.function.variable.xquery</string>
</dict>
</dict>
<key>name</key>
<string>meta.variable.xquery</string>
</dict>
<dict>
<key>match</key>
<string>\b(base-uri|boundary-space|collation|construction|copy-namespaces|declare|default|element|empty(?![-])|function|greatest|import|inherit|instance|least|module|namespace|no-inherit|no-preserve|option|order|ordered|ordering|preserve|strip|unordered|variable|xdmp:mapping|xdmp:transaction-mode)\b</string>
<key>name</key>
<string>keyword.other.prolog.xquery</string>
</dict>
<dict>
<key>match</key>
<string>(?&lt;![:\-_a-zA-Z0-9])(of|as|by|in|at|or|and)(?![:\-_a-zA-Z0-9])</string>
<key>name</key>
<string>keyword.operator.logical.xquery</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.flow.xquery</string>
</dict>
</dict>
<key>match</key>
<string>(?&lt;![:\-_a-zA-Z0-9])(for|let|return|where|if|then|else|order by|satisfies|every)(?![:\-_a-zA-Z0-9])</string>
</dict>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.type.xquery</string>
</dict>
</dict>
<key>match</key>
<string>(?&lt;![:\-_a-zA-Z0-9])(element|attribute|document|document-node\(\)|empty-sequence\(\)|schema-element|schema-attribute|processing-instruction|comment|text|node)(?![:\-_a-zA-Z0-9])</string>
</dict>
<dict>
<key>match</key>
<string>:=</string>
<key>name</key>
<string>keyword.operator.assignment.xquery</string>
</dict>
<dict>
<key>match</key>
<string>(?&lt;![:\-_a-zA-Z0-9])(\+|-|&lt;=?|&gt;=?|eq|ne|lt|le|ge|gt|\*|div|idiv|mod)(?![:\-_a-zA-Z0-9])</string>
<key>name</key>
<string>keyword.operator.arithmetic.xquery</string>
</dict>
<dict>
<key>match</key>
<string>(?&lt;![:\-_a-zA-Z0-9])((fn:)?(abs|adjust-date-to-timezone|adjust-dateTime-to-timezone|adjust-time-to-timezone|analyze-string|avg|base-uri|boolean|ceiling|codepoint-equal|codepoints-to-string|collection|compare|concat|contains|count|current-date|current-dateTime|current-time|data|dateTime|day-from-date|day-from-dateTime|days-from-duration|deep-equal|default-collation|distinct-values|doc|doc-available|document|document-uri|empty|encode-for-uri|ends-with|error|escape-html-uri|escape-uri|exactly-one|exists|false|filter|floor|fold-left|fold-right|format-date|format-dateTime|format-number|format-time|function-arity|function-available|function-lookup|function-name|generate-id|head|hours-from-dateTime|hours-from-duration|hours-from-time|id|idref|implicit-timezone|in-scope-prefixes|index-of|insert-before|iri-to-uri|lang|last|local-name|local-name-from-QName|lower-case|map|map-pairs|matches|max|min|minutes-from-dateTime|minutes-from-duration|minutes-from-time|month-from-date|month-from-dateTime|months-from-duration|name|namespace-uri|namespace-uri-for-prefix|namespace-uri-from-QName|nilled|node-name|normalize-space|normalize-unicode|not|number|one-or-more|position|prefix-from-QName|QName|remove|replace|resolve-QName|resolve-uri|reverse|root|round|round-half-to-even|seconds-from-dateTime|seconds-from-duration|seconds-from-time|starts-with|static-base-uri|string|string-join|string-length|string-to-codepoints|subsequence|substring|substring-after|substring-before|sum|tail|timezone-from-date|timezone-from-dateTime|timezone-from-time|tokenize|trace|translate|true|type-available|unordered|unparsed-text|unparsed-text-available|upper-case|year-from-date|year-from-dateTime|years-from-duration|zero-or-one))(?=\s*\()</string>
<key>name</key>
<string>support.function.builtin.xquery</string>
</dict>
<dict>
<key>match</key>
<string>(?&lt;![:\-_a-zA-Z0-9])(xdmp:(access|add-response-header|add64|address-bindable|amp|amp-roles|and64|annotation|apply|architecture|atomizable|audit|aws-url-encode|base64-decode|base64-encode|binary-decode|binary-is-external|binary-is-large|binary-is-small|binary-join|binary-key|binary-offset|binary-original-length|binary-size|cache-status|can-grant-roles|castable-as|cluster|cluster-name|collation-canonical-uri|collection-delete|collection-locks|collection-properties|commit|compressed-tree-cache-clear|compressed-tree-cache-partitions|compressed-tree-cache-size|configuration-timestamp|content-type|crypt|crypt2|customized-binary|data-directory|database|database-backup|database-backup-cancel|database-backup-purge|database-backup-status|database-backup-validate|database-forests|database-fragment-counts|database-global-nonblocking-timestamp|database-is-replica|database-maintain-last-modified|database-name|database-nonblocking-timestamp|database-partition-forests|database-path-namespaces|database-restore|database-restore-cancel|database-restore-status|database-restore-validate|databases|dayname-from-date|debug-print|decode-from-NCName|default-collections|default-in-memory-limit|default-in-memory-list-size|default-in-memory-range-index-size|default-in-memory-reverse-index-size|default-in-memory-tree-size|default-in-memory-triple-index-size|default-journal-count|default-journal-size|default-license-key|default-licensee|default-permissions|default-preallocate-journals|default-s3-domain|default-zone|delete-cluster-config-file|delete-host-config-file|describe|diacritic-less|directory|directory-create|directory-delete|directory-locks|directory-properties|disable-event|document-add-collections|document-add-permissions|document-add-properties|document-assign|document-delete|document-filter|document-forest|document-get|document-get-collections|document-get-events|document-get-permissions|document-get-properties|document-get-quality|document-insert|document-load|document-locks|document-properties|document-remove-collections|document-remove-permissions|document-remove-properties|document-set-collections|document-set-permissions|document-set-properties|document-set-property|document-set-quality|document-timestamp|dsa-generate|dump-paths|dump-xsd|duplicates|eager|ec2-host|ec2-product-code|elapsed-time|element-content-type|email|email-address|enable-event|encode-for-NCName|encoding-language-detect|estimate|eval|eval-in|excel-convert|exists|expanded-tree-cache-clear|expanded-tree-cache-partitions|expanded-tree-cache-size|external-binary|external-binary-path|external-security|filesystem-directory|filesystem-directory-create|filesystem-directory-delete|filesystem-file|filesystem-file-delete|filesystem-file-exists|filesystem-file-length|filesystem-file-rename|filesystem-filepath|foreign-cluster-status|foreign-clusters|forest|forest-backup|forest-clear|forest-combine|forest-compare|forest-copy|forest-counts|forest-databases|forest-delete|forest-directory-delete|forest-directory-exists|forest-docinfos|forest-get-readonly|forest-host|forest-name|forest-online|forest-open-replica|forest-rename|forest-restart|forest-restore|forest-rollback|forest-set-readonly|forest-status|forest-updates-allowed|forests|format-number|from-json|function|function-module|function-name|function-parameter-name|function-parameter-type|function-return-type|function-signature|functions|get|get-current-roles|get-current-user|get-current-userid|get-external-variable|get-hot-updates|get-invoked-path|get-ip|get-original-url|get-orphaned-binaries|get-request-body|get-request-client-address|get-request-client-certificate|get-request-field|get-request-field-content-type|get-request-field-filename|get-request-field-names|get-request-header|get-request-header-names|get-request-method|get-request-part-body|get-request-part-headers|get-request-path|get-request-port|get-request-protocol|get-request-url|get-request-user|get-request-username|get-response-code|get-response-encoding|get-server-field|get-server-field-names|get-session-field|get-session-field-names|get-transaction-by-xid|get-transaction-mode|get-url-rewriter-path|getenv|group|group-hosts|group-name|group-servers|groups|gss-server-negotiate|gunzip|gzip|has-privilege|hash32|hash64|hex-to-integer|hmac-md5|hmac-sha1|hmac-sha256|hmac-sha512|host|host-cores|host-cpus|host-forests|host-get-ssl-fips-enabled|host-name|host-size|host-status|hostname|hosts|http-delete|http-get|http-head|http-options|http-post|http-put|initcap|install-directory|integer-to-hex|integer-to-octal|invoke|invoke-function|invoke-in|jobject|key-from-QName|language-stemmer-normalization|language-tokenizer-normalization|lazy|ldap-lookup|ldap-search|license-key|license-key-agreement|license-key-cores|license-key-cpus|license-key-decode|license-key-encode|license-key-expires|license-key-options|license-key-size|license-key-valid|license-key-version|licensee|list-cache-clear|list-cache-partitions|list-cache-size|load|lock-acquire|lock-for-update|lock-release|log|log-level|login|logout|lshift64|match-priority|md5|merge|merge-cancel|merging|missing-directories|modules-database|modules-root|month-name-from-date|mul64|multipart-decode|multipart-encode|n3|n3-get|node-database|node-delete|node-insert-after|node-insert-before|node-insert-child|node-kind|node-output-definition|node-replace|node-uri|not64|nquad|nquad-get|octal-to-integer|or64|original-binary|parse-dateTime|parse-yymmdd|path|pdf-convert|permission|plan|plannable|platform|position|powerpoint-convert|pre-release-expires|pretty-print|privilege|privilege-roles|product-edition|product-environment|product-initials|product-name|QName-from-key|quality|quarter-from-date|query-forests|query-meters|query-trace|quote|random|read-cluster-config-file|read-host-config-file|redirect-response|remove-orphaned-binary|request|request-cancel|request-key|request-status|request-timestamp|resolve-uri|restart|rethrow|role|role-roles|rollback|rsa-generate|rshift64|save|schema-database|score|security-assert|security-database|security-version|server|server-backup|server-name|server-restore|server-status|servers|set|set-current-transaction|set-hot-updates|set-request-time-limit|set-response-code|set-response-content-type|set-response-encoding|set-server-field|set-server-field-privilege|set-session-field|set-transaction-mode|set-transaction-name|set-transaction-time-limit|sha1|sha256|sha384|sha512|shutdown|sleep|smtp-relay|spawn|spawn-function|spawn-in|sql|start-journal-archiving|step64|stop-journal-archiving|strftime|subbinary|test-future|test-lazy|test-skiplist|tidy|timestamp-to-wallclock|to-json|trace|transaction|transaction-commit|transaction-create|transaction-rollback|triggers-database|triple-cache-partitions|triple-cache-size|triple-value-cache-partitions|triple-value-cache-size|turtle|turtle-get|type|unpath|unquote|update|uri-content-type|uri-format|uri-is-file|url-decode|url-encode|user|user-external-security|user-last-login|user-roles|username|validate|value|version|wallclock-to-timestamp|week-from-date|weekday-from-date|word-convert|write-cluster-config-file|write-host-config-file|x509-certificate-extract|x509-certificate-generate|x509-crl-der2pem|x509-crl-extract|x509-crl-generate|x509-request-extract|x509-request-generate|xa-complete|xa-complete-xid|xa-complete1|xa-forget|xa-forget-xid|xa-prepare|xor64|xquery-version|xslt-eval|xslt-invoke|yearday-from-date|zip-create|zip-get|zip-manifest))(?=\s*\()</string>
<key>name</key>
<string>support.function.marklogic.xquery</string>
</dict>
<dict>
<key>match</key>
<string>(?&lt;![:\-_a-zA-Z0-9])(cts:(aggregate|and-not-query|and-not-query-negative-query|and-not-query-positive-query|and-query|and-query-options|and-query-queries|approx-center|arc-intersection|avg|avg-aggregate|bearing|boost-query|boost-query-boosting-query|boost-query-matching-query|bounding-boxes|box|box-east|box-intersects|box-north|box-south|box-west|circle|circle-center|circle-intersects|circle-radius|classify|cluster|codepoint-tokenizer-class|collection-match|collection-query|collection-query-uris|collection-reference|collections|complex-polygon|complex-polygon-contains|complex-polygon-inner|complex-polygon-intersects|complex-polygon-outer|confidence|contains|correlation|count|count-aggregate|covariance|covariance-p|deregister|destination|directory-query|directory-query-depth|directory-query-uris|distance|distinctive-terms|document-fragment-query|document-fragment-query-query|document-query|document-query-uris|element-attribute-pair-geospatial-boxes|element-attribute-pair-geospatial-query|element-attribute-pair-geospatial-query-element-name|element-attribute-pair-geospatial-query-latitude-name|element-attribute-pair-geospatial-query-longitude-name|element-attribute-pair-geospatial-query-options|element-attribute-pair-geospatial-query-region|element-attribute-pair-geospatial-query-weight|element-attribute-pair-geospatial-value-match|element-attribute-pair-geospatial-values|element-attribute-range-query|element-attribute-range-query-attribute-name|element-attribute-range-query-element-name|element-attribute-range-query-operator|element-attribute-range-query-options|element-attribute-range-query-value|element-attribute-range-query-weight|element-attribute-reference|element-attribute-value-co-occurrences|element-attribute-value-geospatial-co-occurrences|element-attribute-value-match|element-attribute-value-query|element-attribute-value-query-attribute-name|element-attribute-value-query-element-name|element-attribute-value-query-options|element-attribute-value-query-text|element-attribute-value-query-weight|element-attribute-value-ranges|element-attribute-values|element-attribute-word-match|element-attribute-word-query|element-attribute-word-query-attribute-name|element-attribute-word-query-element-name|element-attribute-word-query-options|element-attribute-word-query-text|element-attribute-word-query-weight|element-attribute-words|element-child-geospatial-boxes|element-child-geospatial-query|element-child-geospatial-query-child-name|element-child-geospatial-query-element-name|element-child-geospatial-query-options|element-child-geospatial-query-region|element-child-geospatial-query-weight|element-child-geospatial-value-match|element-child-geospatial-values|element-geospatial-boxes|element-geospatial-query|element-geospatial-query-element-name|element-geospatial-query-options|element-geospatial-query-region|element-geospatial-query-weight|element-geospatial-value-match|element-geospatial-values|element-pair-geospatial-boxes|element-pair-geospatial-query|element-pair-geospatial-query-element-name|element-pair-geospatial-query-latitude-name|element-pair-geospatial-query-longitude-name|element-pair-geospatial-query-options|element-pair-geospatial-query-region|element-pair-geospatial-query-weight|element-pair-geospatial-value-match|element-pair-geospatial-values|element-query|element-query-element-name|element-query-query|element-range-query|element-range-query-element-name|element-range-query-operator|element-range-query-options|element-range-query-value|element-range-query-weight|element-reference|element-value-co-occurrences|element-value-geospatial-co-occurrences|element-value-match|element-value-query|element-value-query-element-name|element-value-query-options|element-value-query-text|element-value-query-weight|element-value-ranges|element-values|element-word-match|element-word-query|element-word-query-element-name|element-word-query-options|element-word-query-text|element-word-query-weight|element-words|field-range-query|field-range-query-field-name|field-range-query-operator|field-range-query-options|field-range-query-value|field-range-query-weight|field-reference|field-value-co-occurrences|field-value-match|field-value-query|field-value-query-field-name|field-value-query-options|field-value-query-text|field-value-query-weight|field-value-ranges|field-values|field-word-match|field-word-query|field-word-query-field-name|field-word-query-options|field-word-query-text|field-word-query-weight|field-words|fitness|frequency|geospatial-attribute-pair-reference|geospatial-co-occurrences|geospatial-element-attribute-pair-reference|geospatial-element-child-reference|geospatial-element-pair-reference|geospatial-element-reference|geospatial-path-reference|hash-terms|index-path-key|index-path-keys|index-path-ns-prefixes|linear-model|linestring|linestring-vertices|locks-query|locks-query-query|long-lat-point|matches|max|median|min|near-query|near-query-distance|near-query-options|near-query-queries|near-query-weight|not-in-query|not-in-query-negative-query|not-in-query-positive-query|not-query|not-query-query|not-query-weight|or-query|or-query-queries|parse|parse-wkt|path-geospatial-query|path-geospatial-query-options|path-geospatial-query-path-expression|path-geospatial-query-region|path-geospatial-query-weight|path-range-query|path-range-query-operator|path-range-query-options|path-range-query-path-name|path-range-query-value|path-range-query-weight|path-reference|percent-rank|percentile|point|point-latitude|point-longitude|polygon|polygon-contains|polygon-intersects|polygon-vertices|properties-query|properties-query-query|punctuation|quality|query|rank|reference|reference-parse|region|region-contains|region-intersects|register|registered-query|registered-query-ids|registered-query-options|registered-query-weight|relevance-info|remainder|reverse-query|reverse-query-nodes|reverse-query-weight|score|search|shortest-distance|show-get-query|similar-query|similar-query-nodes|similar-query-weight|space|special|stddev|stddev-p|stem|sum|sum-aggregate|term-query|term-query-term|term-query-weight|thresholds|time-series|timestamp-query|to-wkt|token|tokenize|train|triple-range-query|triple-range-query-object|triple-range-query-operator|triple-range-query-options|triple-range-query-predicate|triple-range-query-subject|triple-range-query-weight|triples|uri-match|uri-reference|uris|valid-index-path|value-co-occurrences|value-match|value-ranges|value-tuples|values|variance|variance-p|word|word-match|word-query|word-query-options|word-query-text|word-query-weight|words))(?=\s*\()</string>
<key>name</key>
<string>support.function.cts.xquery</string>
</dict>
<dict>
<key>match</key>
<string>(?&lt;![:\-_a-zA-Z0-9])(xdmp:([\-_a-zA-Z0-9][\-\._a-zA-Z0-9]*:)?([\-_a-zA-Z0-9][\-\._a-zA-Z0-9]*))\s*\(</string>
<key>name</key>
<string>invalid.illegal.function.xdmp</string>
</dict>
<dict>
<key>match</key>
<string>(?&lt;![:\-_a-zA-Z0-9])(cts:([\-_a-zA-Z0-9][\-\._a-zA-Z0-9]*:)?([\-_a-zA-Z0-9][\-\._a-zA-Z0-9]*))\s*\(</string>
<key>name</key>
<string>invalid.illegal.function.cts</string>
</dict>
<dict>
<key>include</key>
<string>#string</string>
</dict>
<dict>
<key>begin</key>
<string>(\()</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.begin.xquery</string>
</dict>
</dict>
<key>end</key>
<string>(\))</string>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.end.xquery</string>
</dict>
</dict>
<key>name</key>
<string>meta</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>$self</string>
</dict>
</array>
</dict>
<dict>
<key>include</key>
<string>#function_call</string>
</dict>
</array>
<key>repository</key>
<dict>
<key>EntityDecl</key>
<dict>
<key>begin</key>
<string>(&lt;!)(ENTITY)\s+(%\s+)?([:a-zA-Z_][:a-zA-Z0-9_.-]*)(\s+(?:SYSTEM|PUBLIC)\s+)?</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.begin.xml</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>keyword.entity.xml</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>punctuation.definition.entity.xml</string>
</dict>
<key>4</key>
<dict>
<key>name</key>
<string>variable.entity.xml</string>
</dict>
<key>5</key>
<dict>
<key>name</key>
<string>keyword.entitytype.xml</string>
</dict>
</dict>
<key>end</key>
<string>(&gt;)</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#doublequotedStringXml</string>
</dict>
<dict>
<key>include</key>
<string>#singlequotedStringXml</string>
</dict>
</array>
</dict>
<key>Xml</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>(&lt;\?)\s*([-_a-zA-Z0-9]+)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.begin.xml</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>entity.name.tag.xml</string>
</dict>
</dict>
<key>end</key>
<string>(\?&gt;)</string>
<key>name</key>
<string>meta.tag.preprocessor.xml</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string> ([a-zA-Z-]+)</string>
<key>name</key>
<string>entity.other.attribute-name.xml</string>
</dict>
<dict>
<key>include</key>
<string>#doublequotedString</string>
</dict>
<dict>
<key>include</key>
<string>#singlequotedString</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>(&lt;!)(DOCTYPE)\s+([:a-zA-Z_][:a-zA-Z0-9_.-]*)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.begin.xml</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>keyword.doctype.xml</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>variable.documentroot.xml</string>
</dict>
</dict>
<key>end</key>
<string>\s*(&gt;)</string>
<key>name</key>
<string>meta.tag.sgml.doctype.xml</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#internalSubset</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>&lt;[!%]--</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.xml</string>
</dict>
</dict>
<key>end</key>
<string>--%?&gt;</string>
<key>name</key>
<string>comment.block.xml</string>
</dict>
<dict>
<key>begin</key>
<string>&lt;\?</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.processing-instruction.xml</string>
</dict>
</dict>
<key>end</key>
<string>\?&gt;</string>
<key>name</key>
<string>comment.processing-instruction.xml</string>
</dict>
<dict>
<key>begin</key>
<string>(&lt;)((?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]+))(?=(\s[^&gt;]*)?&gt;&lt;/\2&gt;)</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.begin.xml</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>entity.name.tag.namespace.xml</string>
</dict>
<key>4</key>
<dict>
<key>name</key>
<string>entity.name.tag.xml</string>
</dict>
<key>5</key>
<dict>
<key>name</key>
<string>punctuation.separator.namespace.xml</string>
</dict>
<key>6</key>
<dict>
<key>name</key>
<string>entity.name.tag.localname.xml</string>
</dict>
</dict>
<key>end</key>
<string>(&gt;)(&lt;)(/)(?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]+)(&gt;)</string>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.end.xml</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.begin.xml meta.scope.between-tag-pair.xml</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.begin.xml</string>
</dict>
<key>4</key>
<dict>
<key>name</key>
<string>entity.name.tag.namespace.xml</string>
</dict>
<key>5</key>
<dict>
<key>name</key>
<string>entity.name.tag.xml</string>
</dict>
<key>6</key>
<dict>
<key>name</key>
<string>punctuation.separator.namespace.xml</string>
</dict>
<key>7</key>
<dict>
<key>name</key>
<string>entity.name.tag.localname.xml</string>
</dict>
<key>8</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.end.xml</string>
</dict>
</dict>
<key>name</key>
<string>meta.tag.no-content.xml</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tagStuff</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>(&lt;/?)(?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]+)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.begin.xml</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>entity.name.tag.namespace.xml</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>entity.name.tag.xml</string>
</dict>
<key>4</key>
<dict>
<key>name</key>
<string>punctuation.separator.namespace.xml</string>
</dict>
<key>5</key>
<dict>
<key>name</key>
<string>entity.name.tag.localname.xml</string>
</dict>
</dict>
<key>end</key>
<string>(/?&gt;)</string>
<key>endCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.end.xml</string>
</dict>
</dict>
<key>name</key>
<string>meta.tag.xml</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tagStuff</string>
</dict>
</array>
</dict>
<dict>
<key>include</key>
<string>#entity</string>
</dict>
<dict>
<key>include</key>
<string>#bare-ampersand</string>
</dict>
<dict>
<key>begin</key>
<string>&lt;!\[CDATA\[</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.xml</string>
</dict>
</dict>
<key>end</key>
<string>]]&gt;</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.xml</string>
</dict>
</dict>
<key>name</key>
<string>string.unquoted.cdata.xml</string>
</dict>
</array>
</dict>
<key>bare-ampersand</key>
<dict>
<key>match</key>
<string>&amp;</string>
<key>name</key>
<string>invalid.illegal.bad-ampersand.xml</string>
</dict>
<key>block_comment</key>
<dict>
<key>begin</key>
<string>\(:</string>
<key>end</key>
<string>:\)</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#block_comment</string>
</dict>
</array>
</dict>
<key>code_block</key>
<dict>
<key>begin</key>
<string>\{</string>
<key>end</key>
<string>\}</string>
<key>name</key>
<string>meta.code-block.xquery</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>$self</string>
</dict>
</array>
</dict>
<key>doublequotedString</key>
<dict>
<key>begin</key>
<string>(?&lt;![-_a-zA-Z0-9:]&gt;)\s*"(?!\s*&lt;/[-_a-zA-Z0-9:])</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.xquery</string>
</dict>
</dict>
<key>end</key>
<string>"</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.xquery</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.double.xquery</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#entity</string>
</dict>
<dict>
<key>include</key>
<string>#bare-ampersand</string>
</dict>
</array>
</dict>
<key>doublequotedStringXml</key>
<dict>
<key>begin</key>
<string>"</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.xml</string>
</dict>
</dict>
<key>end</key>
<string>"</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.xml</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.double.xml</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#entity</string>
</dict>
<dict>
<key>include</key>
<string>#bare-ampersand</string>
</dict>
<dict>
<key>include</key>
<string>#code_block</string>
</dict>
</array>
</dict>
<key>entity</key>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.constant.xml</string>
</dict>
</dict>
<key>match</key>
<string>(&amp;)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#[0-9]+|#x[0-9a-fA-F]+)(;)</string>
<key>name</key>
<string>constant.character.entity.xml</string>
</dict>
<key>function_call</key>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.parameters.begin.xquery</string>
</dict>
</dict>
<key>match</key>
<string>[\-_a-zA-Z0-9]+:[\-_a-zA-Z0-9]+(?=\()</string>
<key>name</key>
<string>support.function.xquery</string>
</dict>
<key>function_parameters</key>
<dict>
<key>match</key>
<string>\$([\-_a-zA-Z0-9][\-\._a-zA-Z0-9]*:)?([\-_a-zA-Z0-9][\-\._a-zA-Z0-9]*)</string>
<key>name</key>
<string>variable.parameter.xquery</string>
</dict>
<key>internalSubset</key>
<dict>
<key>begin</key>
<string>(\[)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.constant.xml</string>
</dict>
</dict>
<key>end</key>
<string>(\])</string>
<key>name</key>
<string>meta.internalsubset.xml</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#EntityDecl</string>
</dict>
<dict>
<key>include</key>
<string>#parameterEntity</string>
</dict>
</array>
</dict>
<key>parameterEntity</key>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.constant.xml</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>punctuation.definition.constant.xml</string>
</dict>
</dict>
<key>match</key>
<string>(%)([:a-zA-Z_][:a-zA-Z0-9_.-]*)(;)</string>
<key>name</key>
<string>constant.character.parameter-entity.xml</string>
</dict>
<key>singlequotedString</key>
<dict>
<key>begin</key>
<string>(?&lt;![-_a-zA-Z0-9:]&gt;)\s*'(?!\s*&lt;/[-_a-zA-Z0-9:])</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.xquery</string>
</dict>
</dict>
<key>end</key>
<string>'</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.xquery</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.single.xquery</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#entity</string>
</dict>
<dict>
<key>include</key>
<string>#bare-ampersand</string>
</dict>
</array>
</dict>
<key>singlequotedStringXml</key>
<dict>
<key>begin</key>
<string>'</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.begin.xml</string>
</dict>
</dict>
<key>end</key>
<string>'</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.end.xml</string>
</dict>
</dict>
<key>name</key>
<string>string.quoted.single.xml</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#entity</string>
</dict>
<dict>
<key>include</key>
<string>#bare-ampersand</string>
</dict>
<dict>
<key>include</key>
<string>#code_block</string>
</dict>
</array>
</dict>
<key>string</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#singlequotedString</string>
</dict>
<dict>
<key>include</key>
<string>#doublequotedString</string>
</dict>
</array>
</dict>
<key>tagStuff</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.other.attribute-name.namespace.xml</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>entity.other.attribute-name.xml</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>punctuation.separator.namespace.xml</string>
</dict>
<key>4</key>
<dict>
<key>name</key>
<string>entity.other.attribute-name.localname.xml</string>
</dict>
</dict>
<key>match</key>
<string>(?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9]+)=</string>
</dict>
<dict>
<key>include</key>
<string>#doublequotedStringXml</string>
</dict>
<dict>
<key>include</key>
<string>#singlequotedStringXml</string>
</dict>
</array>
</dict>
</dict>
<key>scopeName</key>
<string>source.xquery</string>
<key>uuid</key>
<string>cddd8a73-ed1e-4303-a649-a23e816fafa1</string>
</dict>
</plist>