<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE language SYSTEM "language.dtd" [ <!-- comment line 1 comment line 2 --> <!ENTITY name "(?![0-9])[\w_:][\w.:_-]*"> <!ENTITY entref "&(#[0-9]+|#[xX][0-9A-Fa-f]+|&name;);"> <!ENTITY % parameterEntity "blabla%parament;blabla" > ]> <!-- we need this tags or this is no valid file --> <element attr1="a1" attr2="2.03" attr3="&entity;"> <sub-element/> </element> This is a pseudo XML file to test Kate's XML syntax highlighting. Doctype: <!DOCTYPE HTML PUBLIC "-//SOME_DOCTYPE 0.01//EN" SYSTEM "foobar.dtd"> <!DOCTYPE HTML PUBLIC "-//SOME_DOCTYPE 0.01//EN" SYSTEM "foobar.dtd"> Processing instruction: <?php processing instruction ?> Comments: <!-- a comment --> <!-- another comment, using more than one line --> Comment inside element: <element attr="foobar">content<!-- comment --></element> Markup inside comment: <!-- This is a comment! <element inside_comment /> --> Double hyphen within comment: <!-- - error: -- error: --- --> <!-- 1 '-' as error ---> <!-- 2 '-' as error ----> <!-- 3 '-' as error -----> <!-- 4 '-' as error ------> Empty element: <empty/> <empty /> Simple element plus content: <element>some content</element> <element attr="foobar">some content</element> Namespace for elements and attributes: <ns:element>content</ns:element> <element ns:attr="content content">content</element> Elements containing allowed characters: <element-dash foo="test"/> <element.dot foo="test"/> Elements containing allowed start characters: <:element foo="test"/> <_element foo="test"/> Single quotes (the same as double quotes): <element attr='content content'>content</element> Allowed Whitespace: <element attr = "test" > content</element> Entities: å å å И 水 <element attr="foo å & bar"/> Illegal XML, should not be highlighted: <0foobar> -- no digit as first character <-foo> -- no dash as first character <wrong<very wrong>> <tag attr="abc"/> <wrong<!--very wrong-->> <tag attr="abc"/> <wrong<![CDATA[very wrong]]> <tag attr="abc"/> <!-- missing > --> <wrong<tag attr="abc"/> <wrong<!--bla bla--><tag attr="abc"/> <wrong<![CDATA[bla bla]]><tag attr="abc"/> <!-- / without > --> <wrong/<tag attr="abc"/> <wrong/<!--bla bla--><tag attr="abc"/> <wrong/<![CDATA[bla bla]]><tag attr="abc"/> <!-- mising attribute name --> <wrong ="abc"/><tag attr="abc"/> <wrong ="abc"/><!--bla bla--> <wrong ="abc"/><![CDATA[bla bla]]> <!-- invalid attribute name (missing space) --> <wrong attr="abc"attr="abc"/><tag attr="abc"/> <wrong attr="abc"attr="abc"/><!--bla bla--> <wrong attr="abc"attr="abc"/><![CDATA[bla bla]]> <!-- mising value attribute --> <wrong attr/><tag attr="abc"/> <wrong attr/><!--bla bla--><tag attr="abc"/> <wrong attr/><![CDATA[bla bla]]><tag attr="abc"/> <wrong attr=/><tag attr="abc"/> <wrong attr=/><!--bla bla--><tag attr="abc"/> <wrong attr=/><![CDATA[bla bla]]><tag attr="abc"/> <!-- error followed by text --> <wrong at bla bla bla bla bla bla <wrong at attr="abc" bla bla bla bla bla bla