root/trunk/src/xml/schema/app-info.xsd

Revision 1011, 7.1 kB (checked in by amandel, 4 years ago)

Aligned svn keyword settings.

  • Property svn:mime-type set to text/xml
  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!-- $Id$ -->
3
4<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
5          xmlns="http://www.jcoderz.org/app-info-v1.0"
6          xmlns:xml="http://www.w3.org/XML/1998/namespace"
7         targetNamespace="http://www.jcoderz.org/app-info-v1.0"
8         elementFormDefault="unqualified"
9         attributeFormDefault="unqualified">
10 <xsd:annotation>
11    <xsd:documentation>This XML Schema describes the jCoderZ
12       Log Message Format</xsd:documentation>
13 </xsd:annotation>
14
15<!-- TODO: xml stuff with single quotes must be reviewed -->
16
17<!-- ===============================================================
18     SIMPLE TYPES
19     =============================================================== -->
20   <xsd:simpleType name="identifierType">
21      <xsd:restriction base="xsd:int">
22         <xsd:minInclusive value="1"/>
23         <xsd:maxInclusive value="255"/>
24      </xsd:restriction>
25   </xsd:simpleType>
26
27   <xsd:simpleType name="shortNameType">
28      <xsd:restriction base="xsd:string">
29         <!--  More relaxd to fullfill customer requirement but prefer 3 -->
30         <xsd:minLength value="1"/>
31         <xsd:maxLength value="16"/>
32      </xsd:restriction>
33   </xsd:simpleType>
34
35<!-- ===============================================================
36     COMPLEX TYPES
37     =============================================================== -->
38   <xsd:complexType name="applicationType">
39      <xsd:sequence maxOccurs="unbounded">
40         <xsd:element name="group" type="groupType"
41               minOccurs="0" maxOccurs="unbounded"/>
42      </xsd:sequence>
43      <xsd:attribute name="id" type="identifierType" use="required"/>
44      <xsd:attribute name="name" type="xsd:string" use="required"/>
45      <xsd:attribute name="short-name" type="shortNameType" use="required"/>
46      <xsd:attribute name='package' type='xsd:string' use='required'/>
47      <xsd:attribute name='base-exception' type='xsd:string' use='optional'/>
48      <xsd:attribute name='base-runtime-exception' type='xsd:string' use='optional'/>
49   </xsd:complexType>
50
51   <xsd:complexType name="groupType">
52      <xsd:sequence>
53       <xsd:element name='message' type="messageType"
54            minOccurs="0" maxOccurs='unbounded'/>
55       <xsd:element name='configEntry' type="configEntryType"
56            minOccurs="0" maxOccurs='unbounded'/>
57      </xsd:sequence>
58      <xsd:attribute name='id' type="identifierType" use='required'/>
59      <xsd:attribute name='name' type='xsd:string' use='required'/>
60      <xsd:attribute name='short-name' type='xsd:string' use='required'/>
61      <xsd:attribute name='package' type='xsd:string' use='required'/>
62      <xsd:attribute name='base-exception' type='xsd:string' use='optional'/>
63      <xsd:attribute name='base-runtime-exception' type='xsd:string' use='optional'/>
64      <xsd:attribute name='service' use='optional' default='NONE'>
65       <xsd:simpleType>
66        <xsd:restriction base='xsd:string'>
67         <xsd:enumeration value='ALL'/>
68         <xsd:enumeration value='ONLINE'/>
69         <xsd:enumeration value='ADMIN'/>
70         <xsd:enumeration value='NONE'/>
71        </xsd:restriction>
72       </xsd:simpleType>
73      </xsd:attribute>
74      <xsd:anyAttribute namespace="##other" processContents="lax"/>
75   </xsd:complexType>
76
77   <xsd:complexType name="messageType">
78      <xsd:sequence>
79       <xsd:element name="text" type="xsd:string"/>
80       <xsd:element name='description' type="xsd:string" minOccurs="0"/>
81       <xsd:element name="solution" type="xsd:string" minOccurs="0"/>
82       <xsd:element name='procedure' type="xsd:string" minOccurs="0"/>
83       <xsd:element name='verification' type="xsd:string" minOccurs="0"/>
84       <xsd:element name='event' type="eventType" minOccurs="0"/>
85      </xsd:sequence>
86      <xsd:attribute name='id' type='xsd:string' use='required'/>
87      <xsd:attribute name='name' type='xsd:string' use='required'/>
88      <xsd:attribute name='changed' type='xsd:string' use='optional'/>
89      <xsd:attribute name='base-exception' type='xsd:string' use='optional'/>
90      <xsd:attribute name='level' use='required'>
91       <xsd:simpleType>
92        <xsd:restriction base='xsd:string'>
93        <!--
94         <xsd:enumeration value='OFF'/>
95         <xsd:enumeration value='SEVERE'/>
96         <xsd:enumeration value='WARNING'/>
97         <xsd:enumeration value='INFO'/>
98         <xsd:enumeration value='CONFIG'/>
99         <xsd:enumeration value='FINE'/>
100         <xsd:enumeration value='FINER'/>
101         <xsd:enumeration value='FINEST'/>
102         <xsd:enumeration value='ALL'/>  -->
103         <!--  Need full qualified class for custom level -->
104         <xsd:pattern value='(.*\..*|OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST|ALL)'/>
105        </xsd:restriction>
106       </xsd:simpleType>
107      </xsd:attribute>
108      <xsd:attribute name='business-impact' use='optional' default='UNDEFINED'>
109       <xsd:simpleType>
110        <xsd:restriction base='xsd:string'>
111         <xsd:enumeration value='CRITICAL'/>
112         <xsd:enumeration value='MAJOR'/>
113         <xsd:enumeration value='MIDDLE'/>
114         <xsd:enumeration value='MINOR'/>
115         <xsd:enumeration value='NONE'/>
116         <xsd:enumeration value='UNDEFINED'/>
117        </xsd:restriction>
118       </xsd:simpleType>
119      </xsd:attribute>
120      <xsd:attribute name='category' use='optional' default='TECHNICAL'>
121       <xsd:simpleType>
122        <xsd:restriction base='xsd:string'>
123         <xsd:enumeration value='AUDIT'/>
124         <xsd:enumeration value='BUSINESS'/>
125         <xsd:enumeration value='FLOW'/>
126         <xsd:enumeration value='SECURITY'/>
127         <xsd:enumeration value='TECHNICAL'/>
128        </xsd:restriction>
129       </xsd:simpleType>
130      </xsd:attribute>
131   </xsd:complexType>
132
133
134   <xsd:complexType name="configEntryType">
135      <xsd:sequence>
136       <xsd:element name="key" type="xsd:string"/>
137       <xsd:element name="description" type="xsd:string"/>
138       <xsd:element name="type" minOccurs='0' maxOccurs='1'/>
139       <xsd:element name="serializeMethod" type="xsd:string"
140            minOccurs='0' maxOccurs='1'/>
141       <xsd:element name="deserializeMethod" type="xsd:string"
142            minOccurs='0' maxOccurs='1'/>
143       <xsd:element name="defaultValue" type="xsd:string"
144            minOccurs='0' maxOccurs='1'/>
145       <xsd:element name="roles" type="xsd:string"
146            minOccurs='0' maxOccurs='1'/>
147      </xsd:sequence>
148      <xsd:attribute name='furtherChangeRestricted'
149                     type='xsd:string' use='required'/>
150   </xsd:complexType>
151
152   <xsd:complexType name="applicationInfoType">
153      <xsd:sequence>
154         <xsd:element name="application" type="applicationType"
155            maxOccurs="unbounded">
156         </xsd:element>
157      </xsd:sequence>
158   </xsd:complexType>
159<!-- ===============================================================
160     ELEMENTS
161     =============================================================== -->
162   <xsd:element name="app-info" type="applicationInfoType"/>
163
164
165   <xsd:complexType name="eventType">
166      <xsd:sequence>
167       <xsd:element name="usecase" type="xsd:string" minOccurs="1" maxOccurs="1"/>
168       <xsd:element name="name" type="xsd:string" minOccurs="1" maxOccurs="1"/>
169      </xsd:sequence>
170   </xsd:complexType>
171</xsd:schema>
Note: See TracBrowser for help on using the browser.