PeterCJ 8435308b02 Add XSD-based validation for the various XML files
And fix the themes and javascript.js functionlist that don’t match XSD.

Fix #16618, close #16619
2025-06-04 19:42:01 +02:00

60 lines
3.1 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="NotepadPlus">
<xs:complexType>
<xs:sequence>
<xs:element name="Languages">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Language">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="unbounded" name="Keywords">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="name" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="instre1"/>
<xs:enumeration value="instre2"/>
<xs:enumeration value="type1"/>
<xs:enumeration value="type2"/>
<xs:enumeration value="type3"/>
<xs:enumeration value="type4"/>
<xs:enumeration value="type5"/>
<xs:enumeration value="type6"/>
<xs:enumeration value="type7"/>
<xs:enumeration value="substyle1"/>
<xs:enumeration value="substyle2"/>
<xs:enumeration value="substyle3"/>
<xs:enumeration value="substyle4"/>
<xs:enumeration value="substyle5"/>
<xs:enumeration value="substyle6"/>
<xs:enumeration value="substyle7"/>
<xs:enumeration value="substyle8"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="ext" type="xs:string" use="required"/>
<xs:attribute name="commentLine" type="xs:string" use="optional"/>
<xs:attribute name="commentStart" type="xs:string" use="optional"/>
<xs:attribute name="commentEnd" type="xs:string" use="optional"/>
<xs:attribute name="tabSettings" type="xs:integer" use="optional"/>
<xs:attribute name="backspaceUnindent" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>