1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
|
# Tokens taken from:
# - https://www.w3.org/TR/xslt20/
# - https://en.wikipedia.org/wiki/XSLT_elements
# - https://developer.mozilla.org/en-US/docs/Web/XSLT/Element
"<?"
"<?xslt-"
"?>"
"version=\"1.0\""
"encoding=\""
"<xsl:"
"/>"
"</xsl:"
">"
"<"
"<!--"
"-->"
"@"
"apply-imports"
"apply-templates"
"attribute"
"attribute-set"
"call-template"
"character-map"
"choose"
"comment"
"copy"
"copy-of"
"decimal-format"
"default-collection"
"element"
"exclude-result-prefixes"
"extension-element-prefixes"
"fallback"
"for-each"
"function"
"if"
"import"
"import-schema"
"include"
"key"
"message"
"namespace-alias"
"number"
"otherwise"
"output"
"param"
"preserve-space"
"processing-instruction"
"sort"
"strip-space"
"stylesheet"
"template"
"text"
"transform"
"use-when"
"value-of"
"variable"
"version"
"when"
"with-param"
# attributes
" name=\""
" namespace=\""
" select=\""
" test=\""
" type=\""
" value=\""
" prefix=\""
# functions
"ceiling"
"concat"
"contains"
"count"
"floor"
"normalize_space"
"position"
"round"
"string"
"string-length"
"substring"
"substring-after"
"substring-before"
"sum"
"translate"
# math extension
"http://exslt.org/math"
"math:highest"
"math:lowest"
"math:max"
"math:min"
# regex extension
"http://exslt.org/regular-expressions"
"regexp:match"
"regexp:replace"
"regexp:test"
# set extension
"http://exslt.org/sets"
"set:difference"
"set:distinct"
"set:has-same-node"
"set:intersection"
"set:leading"
"set:trailing"
# str extension
"http://exslt.org/strings"
"str:concat"
"str:split"
"str:tokenize"
|