PageRenderTime 24ms CodeModel.GetById 14ms RepoModel.GetById 0ms app.codeStats 0ms

/part/syntax/data/xmldebug.xml

https://bitbucket.org/totte/kate
XML | 594 lines | 503 code | 90 blank | 1 comment | 0 complexity | 0958d068144dd77db957697ebafc7a12 MD5 | raw file
Possible License(s): LGPL-2.0
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE language SYSTEM "language.dtd">
  3. <language version="1.03" kateversion="2.3" name="XML (Debug)" section="Markup" extensions="" mimetype="">
  4. <highlighting>
  5. <list name="AttType">
  6. <item>CDATA</item>
  7. <item>ID</item>
  8. <item>IDREF</item>
  9. <item>IDREFS</item>
  10. <item>ENTITY</item>
  11. <item>ENTITIES</item>
  12. <item>NMTOKEN</item>
  13. <item>NMTOKENS</item>
  14. </list>
  15. <contexts>
  16. <context name="0:prolog" attribute="Error" lineEndContext="#stay">
  17. <RegExpr attribute="Doctype Declaration" context="1:XMLDecl Version" String="&lt;\?xml(\s+|$)"/>
  18. </context>
  19. <context name="1:XMLDecl Version" attribute="Error" lineEndContext="#stay">
  20. <RegExpr attribute="Attribute" context="2:XMLDecl Version Eq" String="\s*version\s*"/>
  21. <RegExpr attribute="Doctype Declaration" String="\s+" context="#stay"/>
  22. </context>
  23. <context name="2:XMLDecl Version Eq" attribute="Error" lineEndContext="5:XMLDecl Encoding Eq">
  24. <RegExpr attribute="Attribute" context="3:XMLDecl Version" String="\s*=\s*"/>
  25. <RegExpr attribute="Attribute" context="#stay" String="\s+"/>
  26. </context>
  27. <context name="3:XMLDecl Version" attribute="Error" lineEndContext="#stay">
  28. <RegExpr attribute="Value" context="4:XMLDecl Encoding" String="\s*(&quot;[A-Za-z0-9:._-]*&quot;|'[A-Za-z0-9:._-]*')(?!e)\s*"/>
  29. <RegExpr attribute="Attribute" context="#stay" String="\s+"/>
  30. </context>
  31. <context name="4:XMLDecl Encoding" attribute="Error" lineEndContext="#stay">
  32. <RegExpr attribute="Attribute" context="5:XMLDecl Encoding Eq" String="\s*encoding\s*"/>
  33. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  34. <RegExpr attribute="Doctype Declaration" context="11:Misc after XMLDecl" String="\?>"/>
  35. </context>
  36. <context name="5:XMLDecl Encoding Eq" attribute="Error" lineEndContext="#stay">
  37. <RegExpr attribute="Attribute" context="6:XMLDecl Encoding" String="\s*=\s*"/>
  38. <RegExpr attribute="Attribute" context="#stay" String="\s+"/>
  39. </context>
  40. <context name="6:XMLDecl Encoding" attribute="Error" lineEndContext="#stay">
  41. <RegExpr attribute="Value" context="7:XMLDecl Standalone" String="\s*(&quot;[A-Za-z][A-Za-z0-9._-]*&quot;|'[A-Za-z][A-Za-z0-9._-]*')(?!s)\s*"/>
  42. <RegExpr attribute="Attribute" context="#stay" String="\s+"/>
  43. </context>
  44. <context name="7:XMLDecl Standalone" attribute="Error" lineEndContext="#stay">
  45. <RegExpr attribute="Attribute" context="8:XMLDecl Standalone Eq" String="\s*standalone\s*"/>
  46. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  47. <RegExpr attribute="Doctype Declaration" context="11:Misc after XMLDecl" String="\?>"/>
  48. </context>
  49. <context name="8:XMLDecl Standalone Eq" attribute="Error" lineEndContext="#stay">
  50. <RegExpr attribute="Attribute" context="9:XMLDecl Standalone" String="\s*=\s*"/>
  51. <RegExpr attribute="Attribute" context="#stay" String="\s+"/>
  52. </context>
  53. <context name="9:XMLDecl Standalone" attribute="Error" lineEndContext="#stay">
  54. <RegExpr attribute="Value" context="10:XMLDecl Standalone" String="\s*&quot;(yes|no)&quot;|'(yes|no)'\s*"/>
  55. <RegExpr attribute="Attribute" context="#stay" String="\s+"/>
  56. </context>
  57. <context name="10:XMLDecl Standalone" attribute="Error" lineEndContext="#stay">
  58. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  59. <RegExpr attribute="Doctype Declaration" context="11:Misc after XMLDecl" String="\?>"/>
  60. </context>
  61. <context name="11:Misc after XMLDecl" attribute="Error" lineEndContext="#stay">
  62. <RegExpr attribute="Normal Text" context="#stay" String="\s+"/>
  63. <RegExpr attribute="Comment" context="12:Comment after XMLDecl" String="\s*&lt;!--\s*"/>
  64. <RegExpr attribute="Processing Instruction" context="13:PI after XMLDecl" String="\s*&lt;\?xml-stylesheet(\s+|$)"/>
  65. <RegExpr attribute="Error" context="13:PI after XMLDecl" String="\s*&lt;\??[xX][mM][lL]"/>
  66. <RegExpr attribute="Processing Instruction" context="13:PI after XMLDecl" String="\s*&lt;\?[a-zA-Z_][a-zA-Z0-9_-]*(:[a-zA-Z0-9_-]*)?(\s+|$)"/>
  67. <RegExpr attribute="Doctype Declaration" context="14:Doctype Decl Name" String="&lt;!DOCTYPE(\s+|$)"/>
  68. <RegExpr attribute="Error" context="80:STag" String="&lt;[xX][mM][lL](\w|[_.-])*(:(\w|[_.-])+)?"/>
  69. <RegExpr attribute="Normal Tag" context="80:STag" String="&lt;(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|_)(\w|[_.-])*(:(\w|[_.-])+)?"/>
  70. <RegExpr attribute="Error" context="80:STag" String="&lt;(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[:_])(\w|[:_.-])*"/>
  71. <RegExpr attribute="Error" context="85:ETag" String="&lt;/[xX][mM][lL](\w|[_.-])*(:(\w|[_.-])+)?"/>
  72. <RegExpr attribute="Normal Tag" context="85:ETag" String="&lt;/(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|_)(\w|[_.-])*(:(\w|[_.-])+)?"/>
  73. <RegExpr attribute="Error" context="85:ETag" String="&lt;/(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[:_])(\w|[:_.-])*"/>
  74. <RegExpr attribute="Entity" context="79:Outside" String="&amp;(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*;"/>
  75. <RegExpr attribute="Entity" context="79:Outside" String="&amp;#(x[0-9a-fA-F]+|[0-9]+);"/>
  76. <RegExpr attribute="Entity" context="86:CDSect" String="&lt;!\[CDATA\["/>
  77. <RegExpr attribute="Comment" context="87:Comment inside IS" String="&lt;!--"/>
  78. <RegExpr attribute="Normal Tag" context="88:PI inside IS" String="&lt;\?xml-stylesheet(\s|$)"/>
  79. <RegExpr attribute="Error" context="88:PI inside IS" String="&lt;\?[xX][mM][lL](\w|[_.-])*(:(\w|[_.-])+)?"/>
  80. <RegExpr attribute="Normal Tag" context="88:PI inside IS" String="&lt;\?(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|_)(\w|[_.-])*(:(\w|[_.-])+)?"/>
  81. <RegExpr attribute="Error" context="88:PI inside IS" String="&lt;\?(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[:_])(\w|[:_.-])*"/>
  82. <DetectChar attribute="Error" context="79:Outside" char="&lt;"/>
  83. <DetectChar attribute="Error" context="79:Outside" char="&amp;"/>
  84. <RegExpr attribute="Error" context="79:Outside" String="\]\]>"/>
  85. </context>
  86. <context name="12:Comment after XMLDecl" attribute="Comment" lineEndContext="#stay">
  87. <RegExpr attribute="Error" context="#pop" String="--->"/>
  88. <RegExpr attribute="Comment" context="#pop" String="-->"/>
  89. <Detect2Chars attribute="Error" context="#stay" char="-" char1="-"/>
  90. </context>
  91. <context name="13:PI after XMLDecl" attribute="Processing Instruction Body" lineEndContext="#stay">
  92. <Detect2Chars attribute="Processing Instruction" context="#pop" char="?" char1="&gt;"/>
  93. </context>
  94. <context name="14:Doctype Decl Name" attribute="Error" lineEndContext="#stay">
  95. <RegExpr attribute="Doctype Declaration" context="15:Doctype Decl ExternalID" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*(\s+|$)"/>
  96. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  97. </context>
  98. <context name="15:Doctype Decl ExternalID" attribute="Error" lineEndContext="#stay">
  99. <RegExpr attribute="Doctype Declaration" context="16:Doctype Decl PublicID" String="PUBLIC(\s+|$)"/>
  100. <RegExpr attribute="Doctype Declaration" context="19:Doctype Decl SystemID" String="SYSTEM(\s+|$)"/>
  101. <DetectChar attribute="Doctype Declaration" context="23:Doctype Decl IS" char="["/>
  102. <!-- rodda: this was originally context="?", so my best guess... most likely wrong -->
  103. <DetectChar attribute="Doctype Declaration" context="23:Doctype Decl IS" char=">"/>
  104. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  105. </context>
  106. <context name="16:Doctype Decl PublicID" attribute="Error" lineEndContext="#stay">
  107. <DetectChar attribute="Value" context="17:Doctype Decl PublicID qq" char="&quot;"/>
  108. <DetectChar attribute="Value" context="18:Doctype Decl PublicID q" char="'"/>
  109. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  110. </context>
  111. <context name="17:Doctype Decl PublicID qq" attribute="Error" lineEndContext="#stay">
  112. <DetectChar attribute="Value" context="19:Doctype Decl SystemID" char="&quot;(\s+|$)"/>
  113. <RegExpr attribute="Value" context="#stay" String="[&#x20;&#xD;&#xA;a-zA-Z0-9'()+,./:=?;!*#@$_%-]"/>
  114. </context>
  115. <context name="18:Doctype Decl PublicID q" attribute="Value" lineEndContext="#stay">
  116. <DetectChar attribute="Value" context="19:Doctype Decl SystemID" char="'(\s+|$)"/>
  117. <RegExpr attribute="Value" context="#stay" String="[&#x20;&#xD;&#xA;a-zA-Z0-9()+,./:=?;!*#@$_%-]"/>
  118. </context>
  119. <context name="19:Doctype Decl SystemID" attribute="Error" lineEndContext="#stay">
  120. <DetectChar attribute="Value" context="20:Doctype Decl SystemID qq" char="&quot;"/>
  121. <DetectChar attribute="Value" context="21:Doctype Decl SystemID q" char="'"/>
  122. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  123. </context>
  124. <context name="20:Doctype Decl SystemID qq" attribute="Value" lineEndContext="#stay">
  125. <DetectChar attribute="Value" context="22:Doctype Decl IS or end" char="&quot;"/>
  126. </context>
  127. <context name="21:Doctype Decl SystemID q" attribute="Value" lineEndContext="#stay">
  128. <DetectChar attribute="Value" context="22:Doctype Decl IS or end" char="'"/>
  129. </context>
  130. <context name="22:Doctype Decl IS or end" attribute="Error" lineEndContext="#stay">
  131. <DetectChar attribute="Doctype Declaration" context="23:Doctype Decl IS" char="["/>
  132. <DetectChar attribute="Doctype Declaration" context="79:Outside" char=">"/>
  133. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  134. </context>
  135. <context name="23:Doctype Decl IS" attribute="Error" lineEndContext="#stay">
  136. <RegExpr attribute="Entity" context="#stay" String="%(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*;"/>
  137. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  138. <RegExpr attribute="Doctype Declaration" context="24:elementdecl" String="&lt;!ELEMENT(\s+|$)"/>
  139. <RegExpr attribute="Doctype Declaration" context="38:AttlistDecl" String="&lt;!ATTLIST(\s+|$)"/>
  140. <RegExpr attribute="Doctype Declaration" context="50:EntityDecl" String="&lt;!ENTITY(\s+|$)"/>
  141. <RegExpr attribute="Doctype Declaration" context="71:NotationDecl Name" String="&lt;!NOTATION(\s+|$)"/>
  142. <RegExpr attribute="Comment" context="77:Comment inside IS" String="\s*&lt;!--\s*"/>
  143. <RegExpr attribute="Processing Instruction" context="78:PI inside IS" String="\s*&lt;\?xml-stylesheet(\s+|$)"/>
  144. <RegExpr attribute="Error" context="78:PI inside IS" String="\s*&lt;\??[xX][mM][lL]"/>
  145. <RegExpr attribute="Processing Instruction" context="78:PI inside IS" String="\s*&lt;\?[a-zA-Z_][a-zA-Z0-9_-]*(:[a-zA-Z0-9_-]*)?(\s+|$)"/>
  146. <Detect2Chars attribute="Doctype Declaration" context="79:Outside" char="]" char1=">"/>
  147. </context>
  148. <context name="24:elementdecl" attribute="Error" lineEndContext="#stay">
  149. <RegExpr attribute="Normal Tag" context="25:contentspec" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*"/>
  150. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  151. </context>
  152. <context name="25:contentspec" attribute="Error" lineEndContext="#stay">
  153. <RegExpr attribute="Attribute" context="37:element end" String="(EMPTY|ANY)"/>
  154. <DetectChar attribute="Attribute" context="26:MixedOrChildren" char="("/>
  155. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  156. </context>
  157. <context name="26:MixedOrChildren" attribute="Error" lineEndContext="#stay">
  158. <RegExpr attribute="Attribute" context="27:MixedShort" String="#PCDATA"/>
  159. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  160. <DetectChar attribute="Doctype Declaration" context="30:children unknown" char="("/>
  161. <RegExpr attribute="Value" context="30:children unknown" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*[\?\*\+]?"/>
  162. </context>
  163. <context name="27:MixedShort" attribute="Error" lineEndContext="#stay">
  164. <DetectChar attribute="Doctype Declaration" context="28:MixedLong" char="|"/>
  165. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  166. <DetectChar attribute="Doctype Declaration" context="37:element end" char=")"/>
  167. </context>
  168. <context name="28:MixedLong" attribute="Error" lineEndContext="#stay">
  169. <RegExpr attribute="Value" context="29:MixedLong endOrContinue" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*"/>
  170. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  171. </context>
  172. <context name="29:MixedLong endOrContinue" attribute="Error" lineEndContext="#stay">
  173. <DetectChar attribute="Doctype Declaration" context="#pop" char="|"/>
  174. <RegExpr attribute="Doctype Declaration" context="#pop#pop" String="\s+"/>
  175. <Detect2Chars attribute="Doctype Declaration" context="37:element end" char=")" char1="*"/>
  176. </context>
  177. <context name="30:children unknown" attribute="Error" lineEndContext="#stay">
  178. <DetectChar attribute="Doctype Declaration" context="33:children choice" char="|"/>
  179. <DetectChar attribute="Doctype Declaration" context="35:children seq" char=","/>
  180. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  181. <RegExpr attribute="Doctype Declaration" context="31:children unknownOrEnd" String="\)[\?\*\+]?"/>
  182. </context>
  183. <context name="31:children unknownOrEnd" attribute="Error" lineEndContext="#stay">
  184. <DetectChar attribute="Doctype Declaration" context="33:children choice" char="|"/>
  185. <DetectChar attribute="Doctype Declaration" context="35:children seq" char=","/>
  186. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  187. <RegExpr attribute="Doctype Declaration" context="#stay" String="\)[\?\*\+]?"/>
  188. <DetectChar attribute="Doctype Declaration" context="23:Doctype Decl IS" char=">"/>
  189. </context>
  190. <context name="32:children unknownName" attribute="Error" lineEndContext="#stay">
  191. <RegExpr attribute="Value" context="30:children unknown" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*[\?\*\+]?"/>
  192. <DetectChar attribute="Doctype Declaration" context="#stay" char="("/>
  193. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  194. </context>
  195. <context name="33:children choice" attribute="Error" lineEndContext="#stay">
  196. <RegExpr attribute="Value" context="34:children choiceOrEnd" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*[\?\*\+]?"/>
  197. <DetectChar attribute="Doctype Declaration" context="32:children unknownName" char="("/>
  198. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  199. </context>
  200. <context name="34:children choiceOrEnd" attribute="Error" lineEndContext="#stay">
  201. <DetectChar attribute="Doctype Declaration" context="#pop" char="|"/>
  202. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  203. <RegExpr attribute="Doctype Declaration" context="31:children unknownOrEnd" String="\)[\?\*\+]?"/>
  204. </context>
  205. <context name="35:children seq" attribute="Error" lineEndContext="#stay">
  206. <RegExpr attribute="Value" context="36:children seqOrEnd" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*[\?\*\+]?"/>
  207. <DetectChar attribute="Doctype Declaration" context="32:children unknownName" char="("/>
  208. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  209. </context>
  210. <context name="36:children seqOrEnd" attribute="Error" lineEndContext="#stay">
  211. <DetectChar attribute="Doctype Declaration" context="#pop" char=","/>
  212. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  213. <RegExpr attribute="Doctype Declaration" context="31:children unknownOrEnd" String="\)[\?\*\+]?"/>
  214. </context>
  215. <context name="37:element end" attribute="Error" lineEndContext="#stay">
  216. <DetectChar attribute="Doctype Declaration" context="23:Doctype Decl IS" char=">"/>
  217. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  218. </context>
  219. <context name="38:AttlistDecl" attribute="Error" lineEndContext="#stay">
  220. <RegExpr attribute="Normal Tag" context="39:AttDef" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*(\s+|$)"/>
  221. <RegExpr attribute="Normal Tag" context="23:Doctype Decl IS" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*>"/>
  222. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  223. </context>
  224. <context name="39:AttDef" attribute="Error" lineEndContext="#stay">
  225. <RegExpr attribute="Attribute" context="40:AttType" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*(\s+|$)"/>
  226. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  227. <DetectChar attribute="Doctype Declaration" context="23:Doctype Decl IS" char=">"/>
  228. </context>
  229. <context name="40:AttType" attribute="Error" lineEndContext="#stay">
  230. <keyword attribute="Doctype Declaration" context="46:DefaultDecl" String="AttType"/>
  231. <RegExpr attribute="Doctype Declaration" context="41:NotationStart" String="NOTATION(\s+|$)"/>
  232. <DetectChar attribute="Doctype Declaration" context="42:Notation" char="("/>
  233. <RegExpr attribute="Doctype Declaration" context="#pop" String="\s+"/>
  234. </context>
  235. <context name="41:NotationStart" attribute="Error" lineEndContext="#stay">
  236. <DetectChar attribute="Doctype Declaration" context="42:Notation" char="("/>
  237. <RegExpr attribute="Doctype Declaration" context="#pop#pop" String="\s+"/>
  238. </context>
  239. <context name="42:Notation" attribute="Error" lineEndContext="#stay">
  240. <RegExpr attribute="Value" context="43:Notation or End" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*"/>
  241. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  242. </context>
  243. <context name="43:Notation or End" attribute="Error" lineEndContext="#stay">
  244. <DetectChar attribute="Doctype Declaration" context="#pop" char="|"/>
  245. <RegExpr attribute="Doctype Declaration" context="46:DefaultDecl" String="\)(\s+|$)"/>
  246. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  247. </context>
  248. <context name="44:Enumeration" attribute="Error" lineEndContext="#stay">
  249. <RegExpr attribute="Value" context="#stay" String="(\w|[_:.-])+"/>
  250. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  251. </context>
  252. <context name="45:Enumeration or End" attribute="Error" lineEndContext="#stay">
  253. <DetectChar attribute="Doctype Declaration" context="44:Enumeration" char="|"/>
  254. <RegExpr attribute="Doctype Declaration" context="46:DefaultDecl" String="\)(\s+|$)"/>
  255. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  256. </context>
  257. <context name="46:DefaultDecl" attribute="Error" lineEndContext="#stay">
  258. <RegExpr attribute="Attribute" context="39:AttDef" String="(#REQUIRED|#IMPLIED)(\s+|$)"/>
  259. <RegExpr attribute="Attribute" context="47:DefaultDecl AttValue" String="#FIXED(\s+|$)"/>
  260. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  261. <RegExpr attribute="Value" context="48:DefaultDecl AttValue qq" String="&quot;"/>
  262. <RegExpr attribute="Value" context="49:DefaultDecl AttValue q" String="'"/>
  263. </context>
  264. <context name="47:DefaultDecl AttValue" attribute="Error" lineEndContext="#stay">
  265. <RegExpr attribute="Value" context="48:DefaultDecl AttValue qq" String="&quot;"/>
  266. <RegExpr attribute="Value" context="49:DefaultDecl AttValue q" String="'"/>
  267. </context>
  268. <context name="48:DefaultDecl AttValue qq" attribute="Value" lineEndContext="#stay">
  269. <RegExpr attribute="Entity" context="#stay" String="&amp;(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*;"/>
  270. <RegExpr attribute="Entity" context="#stay" String="&amp;#(x[0-9a-fA-F]+|[0-9]+);"/>
  271. <DetectChar attribute="Error" context="#stay" char="&amp;"/>
  272. <DetectChar attribute="Error" context="#stay" char="&lt;"/>
  273. <DetectChar attribute="Value" context="39:AttDef" char="&quot;"/>
  274. </context>
  275. <context name="49:DefaultDecl AttValue q" attribute="Value" lineEndContext="#stay">
  276. <RegExpr attribute="Entity" context="#stay" String="&amp;(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*;"/>
  277. <RegExpr attribute="Entity" context="#stay" String="&amp;#(x[0-9a-fA-F]+|[0-9]+);"/>
  278. <DetectChar attribute="Error" context="#stay" char="&amp;"/>
  279. <DetectChar attribute="Error" context="#stay" char="&lt;"/>
  280. <DetectChar attribute="Value" context="39:AttDef" char="&quot;"/>
  281. </context>
  282. <context name="50:EntityDecl" attribute="Error" lineEndContext="#stay">
  283. <RegExpr attribute="Entity" context="52:GEDecl EntityValueOrExternalID" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*(\s+|$)"/>
  284. <DetectChar attribute="Entity" context="61:PEDecl" char="%"/>
  285. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  286. </context>
  287. <context name="51:unused" attribute="Error" lineEndContext="#stay">
  288. </context>
  289. <context name="52:GEDecl EntityValueOrExternalID" attribute="Error" lineEndContext="#stay">
  290. <RegExpr attribute="Value" context="53:GEDecl EntityValue qq" String="&quot;"/>
  291. <RegExpr attribute="Value" context="54:GEDecl EntityValue q" String="'"/>
  292. <RegExpr attribute="Doctype Declaration" context="55:GEDecl PublicID" String="PUBLIC(\s+|$)"/>
  293. <RegExpr attribute="Doctype Declaration" context="58:GEDecl SystemID" String="SYSTEM(\s+|$)"/>
  294. </context>
  295. <context name="53:GEDecl EntityValue qq" attribute="Value" lineEndContext="#stay">
  296. <RegExpr attribute="Entity" context="#stay" String="[&amp;%](?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*;"/>
  297. <RegExpr attribute="Entity" context="#stay" String="&amp;#(x[0-9a-fA-F]+|[0-9]+);"/>
  298. <DetectChar attribute="Error" context="#stay" char="&amp;"/>
  299. <DetectChar attribute="Error" context="#stay" char="%"/>
  300. <DetectChar attribute="Error" context="#stay" char="&lt;"/>
  301. <DetectChar attribute="Value" context="69:GEDecl endOrNDATA" char="&quot;"/>
  302. </context>
  303. <context name="54:GEDecl EntityValue q" attribute="Value" lineEndContext="#stay">
  304. <RegExpr attribute="Entity" context="#stay" String="[&amp;%](?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*;"/>
  305. <RegExpr attribute="Entity" context="#stay" String="&amp;#(x[0-9a-fA-F]+|[0-9]+);"/>
  306. <DetectChar attribute="Error" context="#stay" char="&amp;"/>
  307. <DetectChar attribute="Error" context="#stay" char="%"/>
  308. <DetectChar attribute="Error" context="#stay" char="&lt;"/>
  309. <DetectChar attribute="Value" context="69:GEDecl endOrNDATA" char="'"/>
  310. </context>
  311. <context name="55:GEDecl PublicID" attribute="Error" lineEndContext="#stay">
  312. <DetectChar attribute="Value" context="56:GEDecl PublicID qq" char="&quot;"/>
  313. <DetectChar attribute="Value" context="57:GEDecl PublicID q" char="'"/>
  314. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  315. </context>
  316. <context name="56:GEDecl PublicID qq" attribute="Error" lineEndContext="#stay">
  317. <DetectChar attribute="Value" context="58:GEDecl SystemID" char="&quot;(\s+|$)"/>
  318. <RegExpr attribute="Value" context="#stay" String="[&#x20;&#xD;&#xA;a-zA-Z0-9'()+,./:=?;!*#@$_%-]"/>
  319. </context>
  320. <context name="57:GEDecl PublicID q" attribute="Value" lineEndContext="#stay">
  321. <DetectChar attribute="Value" context="58:GEDecl SystemID" char="'(\s+|$)"/>
  322. <RegExpr attribute="Value" context="#stay" String="[&#x20;&#xD;&#xA;a-zA-Z0-9()+,./:=?;!*#@$_%-]"/>
  323. </context>
  324. <context name="58:GEDecl SystemID" attribute="Error" lineEndContext="#stay">
  325. <DetectChar attribute="Value" context="59:GEDecl SystemID qq" char="&quot;"/>
  326. <DetectChar attribute="Value" context="60:GEDecl SystemID q" char="'"/>
  327. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  328. </context>
  329. <context name="59:GEDecl SystemID qq" attribute="Value" lineEndContext="#stay">
  330. <DetectChar attribute="Value" context="69:GEDecl endOrNDATA" char="&quot;"/>
  331. </context>
  332. <context name="60:GEDecl SystemID q" attribute="Value" lineEndContext="#stay">
  333. <DetectChar attribute="Value" context="69:GEDecl endOrNDATA" char="'"/>
  334. </context>
  335. <context name="61:PEDecl" attribute="Error" lineEndContext="#stay">
  336. <RegExpr attribute="Entity" context="62:PEDecl EntityValueOrExternalID" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*(\s+|$)"/>
  337. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  338. </context>
  339. <context name="62:PEDecl EntityValueOrExternalID" attribute="Error" lineEndContext="#stay">
  340. <RegExpr attribute="Value" context="53:GEDecl EntityValue qq" String="&quot;"/>
  341. <RegExpr attribute="Value" context="54:GEDecl EntityValue q" String="'"/>
  342. <RegExpr attribute="Doctype Declaration" context="63:PEDecl PublicID" String="PUBLIC(\s+|$)"/>
  343. <RegExpr attribute="Doctype Declaration" context="66:PEDecl SystemID" String="SYSTEM(\s+|$)"/>
  344. </context>
  345. <context name="63:PEDecl PublicID" attribute="Error" lineEndContext="#stay">
  346. <DetectChar attribute="Value" context="64:PEDecl PublicID qq" char="&quot;"/>
  347. <DetectChar attribute="Value" context="65:PEDecl PublicID q" char="'"/>
  348. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  349. </context>
  350. <context name="64:PEDecl PublicID qq" attribute="Error" lineEndContext="#stay">
  351. <DetectChar attribute="Value" context="66:PEDecl SystemID" char="&quot;(\s+|$)"/>
  352. <RegExpr attribute="Value" context="#stay" String="[&#x20;&#xD;&#xA;a-zA-Z0-9'()+,./:=?;!*#@$_%-]"/>
  353. </context>
  354. <context name="65:PEDecl PublicID q" attribute="Value" lineEndContext="#stay">
  355. <DetectChar attribute="Value" context="66:PEDecl SystemID" char="'(\s+|$)"/>
  356. <RegExpr attribute="Value" context="#stay" String="[&#x20;&#xD;&#xA;a-zA-Z0-9()+,./:=?;!*#@$_%-]"/>
  357. </context>
  358. <context name="66:PEDecl SystemID" attribute="Error" lineEndContext="#stay">
  359. <DetectChar attribute="Value" context="67:PEDecl SystemID qq" char="&quot;"/>
  360. <DetectChar attribute="Value" context="68:PEDecl SystemID q" char="'"/>
  361. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  362. </context>
  363. <context name="67:PEDecl SystemID qq" attribute="Value" lineEndContext="#stay">
  364. <DetectChar attribute="Value" context="37:element end" char="&quot;"/>
  365. </context>
  366. <context name="68:PEDecl SystemID q" attribute="Value" lineEndContext="#stay">
  367. <DetectChar attribute="Value" context="37:element end" char="'"/>
  368. </context>
  369. <context name="69:GEDecl endOrNDATA" attribute="Error" lineEndContext="#stay">
  370. <DetectChar attribute="Doctype Declaration" context="23:Doctype Decl IS" char=">"/>
  371. <RegExpr attribute="Doctype Declaration" context="70:GEDecl NDATA" String="NDATA(\s+|$)"/>
  372. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  373. </context>
  374. <context name="70:GEDecl NDATA" attribute="Error" lineEndContext="#stay">
  375. <RegExpr attribute="Entity" context="37:element end" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*"/>
  376. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  377. </context>
  378. <context name="71:NotationDecl Name" attribute="Error" lineEndContext="#stay">
  379. <RegExpr attribute="Entity" context="72:NotationDecl ExternalID" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*(\s+|$)"/>
  380. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  381. </context>
  382. <context name="72:NotationDecl ExternalID" attribute="Error" lineEndContext="#stay">
  383. <RegExpr attribute="Doctype Declaration" context="73:NotationDecl PublicID" String="PUBLIC(\s+|$)"/>
  384. <RegExpr attribute="Doctype Declaration" context="66:PEDecl SystemID" String="SYSTEM(\s+|$)"/>
  385. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  386. </context>
  387. <context name="73:NotationDecl PublicID" attribute="Error" lineEndContext="#stay">
  388. <DetectChar attribute="Value" context="74:NotationDecl PublicID qq" char="&quot;"/>
  389. <DetectChar attribute="Value" context="75:NotationDecl PublicID q" char="'"/>
  390. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  391. </context>
  392. <context name="74:NotationDecl PublicID qq" attribute="Error" lineEndContext="#stay">
  393. <DetectChar attribute="Value" context="76:NotationDecl SystemIDOrEnd" char="&quot;(\s+|$)"/>
  394. <RegExpr attribute="Value" context="#stay" String="[&#x20;&#xD;&#xA;a-zA-Z0-9'()+,./:=?;!*#@$_%-]"/>
  395. </context>
  396. <context name="75:NotationDecl PublicID q" attribute="Value" lineEndContext="#stay">
  397. <DetectChar attribute="Value" context="76:NotationDecl SystemIDOrEnd" char="'(\s+|$)"/>
  398. <RegExpr attribute="Value" context="#stay" String="[&#x20;&#xD;&#xA;a-zA-Z0-9()+,./:=?;!*#@$_%-]"/>
  399. </context>
  400. <context name="76:NotationDecl SystemIDOrEnd" attribute="Error" lineEndContext="#stay">
  401. <DetectChar attribute="Value" context="67:PEDecl SystemID qq" char="&quot;"/>
  402. <DetectChar attribute="Value" context="68:PEDecl SystemID q" char="'"/>
  403. <DetectChar attribute="Doctype Declaration" context="23:Doctype Decl IS" char=">"/>
  404. <RegExpr attribute="Doctype Declaration" context="#stay" String="\s+"/>
  405. </context>
  406. <context name="77:Comment inside IS" attribute="Comment" lineEndContext="#stay">
  407. <RegExpr attribute="Error" context="23:Doctype Decl IS" String="--->"/>
  408. <RegExpr attribute="Comment" context="23:Doctype Decl IS" String="-->"/>
  409. <Detect2Chars attribute="Error" context="#stay" char="-" char1="-"/>
  410. </context>
  411. <context name="78:PI inside IS" attribute="Processing Instruction Body" lineEndContext="#stay">
  412. <Detect2Chars attribute="Processing Instruction" context="23:Doctype Decl IS" char="?" char1="&gt;"/>
  413. </context>
  414. <context name="79:Outside" attribute="Normal Text" lineEndContext="#stay">
  415. <RegExpr attribute="Error" context="80:STag" String="&lt;[xX][mM][lL](\w|[_.-])*(:(\w|[_.-])+)?"/>
  416. <RegExpr attribute="Normal Tag" context="80:STag" String="&lt;(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|_)(\w|[_.-])*(:(\w|[_.-])+)?"/>
  417. <RegExpr attribute="Error" context="80:STag" String="&lt;(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[:_])(\w|[:_.-])*"/>
  418. <RegExpr attribute="Error" context="85:ETag" String="&lt;/[xX][mM][lL](\w|[_.-])*(:(\w|[_.-])+)?"/>
  419. <RegExpr attribute="Normal Tag" context="85:ETag" String="&lt;/(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|_)(\w|[_.-])*(:(\w|[_.-])+)?"/>
  420. <RegExpr attribute="Error" context="85:ETag" String="&lt;/(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[:_])(\w|[:_.-])*"/>
  421. <RegExpr attribute="Entity" context="#stay" String="&amp;(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*;"/>
  422. <RegExpr attribute="Entity" context="#stay" String="&amp;#(x[0-9a-fA-F]+|[0-9]+);"/>
  423. <RegExpr attribute="Entity" context="86:CDSect" String="&lt;!\[CDATA\["/>
  424. <RegExpr attribute="Comment" context="87:Comment inside IS" String="&lt;!--"/>
  425. <RegExpr attribute="Normal Tag" context="88:PI inside IS" String="&lt;\?xml-stylesheet(\s|$)"/>
  426. <RegExpr attribute="Error" context="88:PI inside IS" String="&lt;\?[xX][mM][lL](\w|[_.-])*(:(\w|[_.-])+)?"/>
  427. <RegExpr attribute="Normal Tag" context="88:PI inside IS" String="&lt;\?(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|_)(\w|[_.-])*(:(\w|[_.-])+)?"/>
  428. <RegExpr attribute="Error" context="88:PI inside IS" String="&lt;\?(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[:_])(\w|[:_.-])*"/>
  429. <DetectChar attribute="Error" context="#stay" char="&lt;"/>
  430. <DetectChar attribute="Error" context="#stay" char="&amp;"/>
  431. <RegExpr attribute="Error" context="#stay" String="\]\]>"/>
  432. </context>
  433. <context name="80:STag" attribute="Error" lineEndContext="#stay">
  434. <Detect2Chars attribute="Normal Tag" context="79:Outside" char="/" char1="&gt;"/>
  435. <DetectChar attribute="Normal Tag" context="79:Outside" char="&gt;"/>
  436. <RegExpr attribute="Attribute" context="81:STag Attribute" String="(xmlns:(\w|[_.-])*|xmlns|xml:(lang|base|space))"/>
  437. <RegExpr attribute="Error" context="81:STag Attribute" String="[xX][mM][lL](\w|[_.-])*(:(\w|[_.-])+)?"/>
  438. <RegExpr attribute="Attribute" context="81:STag Attribute" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|_)(\w|[_.-])*(:(\w|[_.-])+)?"/>
  439. <RegExpr attribute="Error" context="81:STag Attribute" String="(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[:_])(\w|[:_.-])*"/>
  440. <RegExpr attribute="Normal Tag" context="#stay" String="\s+"/>
  441. </context>
  442. <context name="81:STag Attribute" attribute="Error" lineEndContext="#stay">
  443. <DetectChar attribute="Attribute" context="82:STag Attribute Value" char="="/>
  444. <RegExpr attribute="Normal Tag" context="#stay" String="\s+"/>
  445. </context>
  446. <context name="82:STag Attribute Value" attribute="Error" lineEndContext="#stay">
  447. <DetectChar attribute="Value" context="83:STag Value qq" char="&quot;"/>
  448. <DetectChar attribute="Value" context="84:STag Value q" char="'"/>
  449. <RegExpr attribute="Normal Tag" context="#stay" String="\s+"/>
  450. </context>
  451. <context name="83:STag Value qq" attribute="Value" lineEndContext="#stay">
  452. <RegExpr attribute="Entity" context="#stay" String="&amp;(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*;"/>
  453. <RegExpr attribute="Entity" context="#stay" String="&amp;#(x[0-9a-fA-F]+|[0-9]+);"/>
  454. <DetectChar attribute="Error" context="#stay" char="&amp;"/>
  455. <DetectChar attribute="Error" context="#stay" char="&lt;"/>
  456. <RegExpr attribute="Error" context="80:STag" String="&quot;(?=(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:]))"/>
  457. <RegExpr attribute="Value" context="80:STag" String="&quot;(?=>|/>|\s|$)"/>
  458. </context>
  459. <context name="84:STag Value q" attribute="Value" lineEndContext="#stay">
  460. <RegExpr attribute="Entity" context="#stay" String="&amp;(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:])(\w|[_:.-])*;"/>
  461. <RegExpr attribute="Entity" context="#stay" String="&amp;#(x[0-9a-fA-F]+|[0-9]+);"/>
  462. <DetectChar attribute="Error" context="#stay" char="&amp;"/>
  463. <DetectChar attribute="Error" context="#stay" char="&lt;"/>
  464. <RegExpr attribute="Error" context="80:STag" String="'(?=(?![&#x0660;-&#x0669;&#x06F0;-&#x06F9;&#x0966;-&#x096F;&#x09E6;-&#x09EF;&#x0A66;-&#x0A6F;&#x0AE6;-&#x0AEF;&#x0B66;-&#x0B6F;&#x0BE7;-&#x0BEF;&#x0C66;-&#x0C6F;&#x0CE6;-&#x0CEF;&#x0D66;-&#x0D6F;&#x0E50;-&#x0E59;&#x0ED0;-&#x0ED9;&#x0F20;-&#x0F29;]|\d)(\w|[_:]))"/>
  465. <RegExpr attribute="Value" context="80:STag" String="'(?=>|/>|\s|$)"/>
  466. </context>
  467. <context name="85:ETag" attribute="Error" lineEndContext="#stay">
  468. <DetectChar attribute="Normal Tag" context="79:Outside" char="&gt;"/>
  469. <RegExpr attribute="Normal Tag" context="#stay" String="\s+"/>
  470. </context>
  471. <context name="86:CDSect" attribute="Normal Text" lineEndContext="#stay">
  472. <RegExpr attribute="Entity" context="79:Outside" String="\]\]>"/>
  473. </context>
  474. <context name="87:Comment inside IS" attribute="Comment" lineEndContext="#stay">
  475. <RegExpr attribute="Error" context="79:Outside" String="--->"/>
  476. <RegExpr attribute="Comment" context="79:Outside" String="-->"/>
  477. <Detect2Chars attribute="Error" context="#stay" char="-" char1="-"/>
  478. </context>
  479. <context name="88:PI inside IS" attribute="Processing Instruction Body" lineEndContext="#stay">
  480. <Detect2Chars attribute="Processing Instruction" context="79:Outside" char="?" char1="&gt;"/>
  481. </context>
  482. </contexts>
  483. <itemDatas>
  484. <itemData name="Normal Text" defStyleNum="dsNormal"/>
  485. <itemData name="Entity" defStyleNum="dsChar"/>
  486. <itemData name="Normal Tag" defStyleNum="dsKeyword"/>
  487. <itemData name="Attribute" defStyleNum="dsDataType"/>
  488. <itemData name="Value" defStyleNum="dsString"/>
  489. <itemData name="Doctype Declaration" defStyleNum="dsKeyword"/>
  490. <itemData name="Comment" defStyleNum="dsComment"/>
  491. <itemData name="Processing Instruction" defStyleNum="dsKeyword"/>
  492. <itemData name="PI content" defStyleNum="dsOthers"/>
  493. <itemData name="Stylesheet" defStyleNum="dsKeyword"/>
  494. <itemData name="Error" defStyleNum="dsError"/>
  495. </itemDatas>
  496. </highlighting>
  497. <general>
  498. <comments>
  499. <comment name="multiLine" start="&lt;!--" end="--&gt;"/>
  500. </comments>
  501. <keywords casesensitive="1"/>
  502. <indentation mode="xml" />
  503. </general>
  504. </language>