{"name":"XML","scopeName":"text.xml","patterns":[{"name":"meta.tag.metadata.processing.xml","begin":"(\u003c\\?)\\s*([-_a-zA-Z0-9]+)","end":"(\\?\u003e)","patterns":[{"name":"entity.other.attribute-name.xml","match":" ([a-zA-Z-]+)"},{"include":"#doublequotedString"},{"include":"#singlequotedString"}],"captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"}}},{"name":"meta.tag.metadata.doctype.xml","begin":"(\u003c!)(DOCTYPE)\\s+([:a-zA-Z_][:a-zA-Z0-9_.-]*)","end":"\\s*(\u003e)","patterns":[{"include":"#internalSubset"}],"captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"},"3":{"name":"entity.other.attribute-name.documentroot.xml"}}},{"name":"comment.block.xml","begin":"\u003c[!%]--","end":"--%?\u003e","captures":{"0":{"name":"punctuation.definition.comment.xml"}}},{"name":"meta.tag.no-content.xml","begin":"(\u003c)((?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]+))(?=(\\s[^\u003e]*)?\u003e\u003c/\\2\u003e)","end":"(\u003e(\u003c))/(?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]+)(\u003e)","patterns":[{"include":"#tagStuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"3":{"name":"entity.name.tag.namespace.xml"},"4":{"name":"entity.name.tag.xml"},"5":{"name":"punctuation.separator.namespace.xml"},"6":{"name":"entity.name.tag.localname.xml"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"meta.scope.between-tag-pair.xml"},"3":{"name":"entity.name.tag.namespace.xml"},"4":{"name":"entity.name.tag.xml"},"5":{"name":"punctuation.separator.namespace.xml"},"6":{"name":"entity.name.tag.localname.xml"},"7":{"name":"punctuation.definition.tag.xml"}}},{"name":"meta.tag.xml","begin":"(\u003c/?)(?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]+)","end":"(/?\u003e)","patterns":[{"include":"#tagStuff"}],"captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.namespace.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}}},{"include":"#entity"},{"include":"#bare-ampersand"},{"name":"source.java-props.embedded.xml","begin":"\u003c%@","end":"%\u003e","patterns":[{"name":"keyword.other.page-props.xml","match":"page|include|taglib"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}}},{"name":"source.java.embedded.xml","begin":"\u003c%[!=]?(?!--)","end":"(?!--)%\u003e","patterns":[{"include":"source.java"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}}},{"name":"string.unquoted.cdata.xml","begin":"\u003c!\\[CDATA\\[","end":"]]\u003e","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}}}],"repository":{"EntityDecl":{"begin":"(\u003c!)(ENTITY)\\s+(%\\s+)?([:a-zA-Z_][:a-zA-Z0-9_.-]*)(\\s+(?:SYSTEM|PUBLIC)\\s+)?","end":"(\u003e)","patterns":[{"include":"#doublequotedString"},{"include":"#singlequotedString"}],"captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"keyword.other.entity.xml"},"3":{"name":"punctuation.definition.entity.xml"},"4":{"name":"variable.language.entity.xml"},"5":{"name":"keyword.other.entitytype.xml"}}},"bare-ampersand":{"name":"invalid.illegal.bad-ampersand.xml","match":"\u0026"},"doublequotedString":{"name":"string.quoted.double.xml","begin":"\"","end":"\"","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}}},"entity":{"name":"constant.character.entity.xml","match":"(\u0026)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#[0-9]+|#x[0-9a-fA-F]+)(;)","captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}}},"internalSubset":{"name":"meta.internalsubset.xml","begin":"(\\[)","end":"(\\])","patterns":[{"include":"#EntityDecl"},{"include":"#parameterEntity"}],"captures":{"1":{"name":"punctuation.definition.constant.xml"}}},"parameterEntity":{"name":"constant.character.parameter-entity.xml","match":"(%)([:a-zA-Z_][:a-zA-Z0-9_.-]*)(;)","captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}}},"singlequotedString":{"name":"string.quoted.single.xml","begin":"'","end":"'","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}}},"tagStuff":{"patterns":[{"match":" (?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9]+)=","captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}}},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]}}}