/usr/share/games/enigma/schemas/index.xsd is in enigma-data 1.20-dfsg.1-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 | <?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema' version="0.2" xml:lang="en">
<xs:annotation>
<xs:documentation>
XML schema definitions for Enigma levelpack index
Copyright © 2006 Ronald Lamprecht
GPL2
</xs:documentation>
</xs:annotation>
<xs:element name="index">
<xs:complexType>
<xs:sequence>
<xs:element name="info" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Description of the index:
title - identifying title of the levelpack
group - default levelpack group
owner - user name of levelpack creator - "system" for distributed packs
release - compatibility version number of levelpack
revision - modification version number of levelpack
location - default sorting position of levelpack within a group
network - true if levelpack is built for 2-player network game, false for standard single user game
enigma - compatibility required Enigma release version.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="title" type="xs:string" use="required"/>
<xs:attribute name="group" type="xs:string" use="required"/>
<xs:attribute name="owner" type="xs:string" use="required"/>
<xs:attribute name="release" type="xs:positiveInteger" use="required"/>
<xs:attribute name="revision" type="xs:positiveInteger" use="required"/>
<xs:attribute name="location" type="xs:float" use="required"/>
<xs:attribute name="network" type="xs:boolean" use="required"/>
<xs:attribute name="enigma" type="xs:float" use="required"/>
</xs:complexType>
</xs:element> <!-- info -->
<xs:element name="update" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Url's needed for updates:
indexurl - url to obtain updates of the index itself
levelurl - url base to download new levels.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="indexurl" type="xs:anyURI" use="required"/>
<xs:attribute name="levelurl" type="xs:anyURI" use="required"/>
</xs:complexType>
</xs:element> <!-- update -->
<xs:element name="attributes" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation>
A dictionary for future additions. These attributes will be readable
by future Lua index extensions.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="property" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
All simple key-value-properties.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="key" type="xs:string" use="required"/>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
</xs:element> <!-- property -->
</xs:sequence>
</xs:complexType>
</xs:element> <!-- attributes -->
<xs:element name="lua" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Future Lua index extension. Per levelpack control of level menu
display, levelpack scoring etc..
Possible elements are: luamain-CDATA, i18n
Possible attributes are: libpath
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:any namespace="##targetNamespace" minOccurs="0" maxOccurs="unbounded" processContents="skip"/>
</xs:sequence>
<xs:anyAttribute namespace="##targetNamespace" processContents="skip"/>
</xs:complexType>
</xs:element> <!-- lua -->
<xs:element name="levels" minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation>
The sequence of the level elements is the sequence of levels in the pack.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="level" minOccurs="0" maxOccurs="unbounded" >
<xs:annotation>
<xs:documentation>
The attributes either identify a level, are cached from the level
metadata to avoid unnecessary level loads or describe variation from
the level default. See the level description in the reference manual
for more information on the single attributes:
_seq - an auto generated counter just for human readability that will never be used
_title - cached level title
_xpath - identifying relative path, url or normed oxyd identifier of the level
id - identifying level id
author - cached level author name
score - cached score version of level
rel - identifying release version of level
rev - identifying revision version of level that announces level updates
easy - cached has easy mode level flag
ctrl - variation in control of level default
unit - variation in score unit of level default
target - variation in score target of level default
Attributes with leading underscore are just named this way to generate human
readable indices. Future attribute additions are transparent to Enigma 1.0 -
they will be ignored but are maintained on all index modifications.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="_seq" type="xs:positiveInteger" use="optional"/>
<xs:attribute name="_title" type="xs:string" use="required"/>
<xs:attribute name="_xpath" type="xs:string" use="required"/>
<xs:attribute name="id" type="xs:string" use="required"/>
<xs:attribute name="author" type="xs:string" use="required"/>
<xs:attribute name="score" type="xs:positiveInteger" use="required"/>
<xs:attribute name="rel" type="xs:positiveInteger" use="required"/>
<xs:attribute name="rev" type="xs:unsignedShort" use="required"/>
<xs:attribute name="easy" type="xs:boolean" use="required"/>
<xs:attribute name="ctrl" type="controlType" use="required"/>
<xs:attribute name="unit" type="scoreunitType" use="required"/>
<xs:attribute name="target" type="xs:string" use="required"/>
<xs:anyAttribute namespace="##targetNamespace" processContents="skip"/>
</xs:complexType>
</xs:element> <!-- level -->
</xs:sequence>
</xs:complexType>
</xs:element> <!-- levels -->
<xs:any namespace="##targetNamespace" minOccurs="0" maxOccurs="unbounded" processContents="skip"/>
</xs:sequence>
</xs:complexType>
</xs:element> <!-- index -->
<xs:simpleType name="controlType">
<xs:restriction base="xs:string">
<xs:enumeration value="force"/>
<xs:enumeration value="balance"/>
<xs:enumeration value="key"/>
<xs:enumeration value="other"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="scoreunitType">
<xs:restriction base="xs:string">
<xs:enumeration value="duration"/>
<xs:enumeration value="number"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
|