서브메뉴

플러그인 xml 스펙

플러그인 스펙을 정의합니다.

플러그인 xml 스펙

아래의 xsd 스펙은 태터툴즈 1.1.3 기준의 plugin 바인더 xml 의 스펙입니다. 아래에서 xsd 파일을 내려 받을 수 있습니다.

1 	<?xml version="1.0" encoding="UTF-8"?>
2 	<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
3 	        <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
4 	        <xs:element name="plugin">
5 	                <xs:complexType>
6 	                        <xs:sequence>
7 	                                <xs:element name="title" minOccurs="1" maxOccurs="unbounded">
8 	                                        <xs:complexType>
9 	                                                <xs:simpleContent>
10 	                                                        <xs:extension base="xs:normalizedString">
11 	                                                                <xs:attribute ref="xml:lang"/>
12 	                                                        </xs:extension>
13 	                                                </xs:simpleContent>
14 	                                        </xs:complexType>
15 	                                </xs:element>
16 	                                <xs:element name="link" minOccurs="1" maxOccurs="1" type="xs:anyURI"/>
17 	                                <xs:element name="version" minOccurs="1" maxOccurs="1" type="xs:token"/>
18 	                                <xs:element name="description" minOccurs="1" maxOccurs="unbounded">
19 	                                        <xs:complexType>
20 	                                                <xs:simpleContent>
21 	                                                        <xs:extension base="xs:string">
22 	                                                                <xs:attribute ref="xml:lang"/>
23 	                                                        </xs:extension>
24 	                                                </xs:simpleContent>
25 	                                        </xs:complexType>
26 	                                </xs:element>
27 	                                <xs:element name="license" minOccurs="1" maxOccurs="1" type="xs:normalizedString"/>
28 	                                <xs:element name="author" minOccurs="1" maxOccurs="unbounded">
29 	                                        <xs:complexType>
30 	                                                <xs:simpleContent>
31 	                                                        <xs:extension base="xs:normalizedString">
32 	                                                                <xs:attribute ref="xml:lang"/>
33 	                                                                <xs:attribute name="link" use="required" type="xs:anyURI"/>
34 	                                                        </xs:extension>
35 	                                                </xs:simpleContent>
36 	                                        </xs:complexType>
37 	                                </xs:element>
38 	                                <xs:element name="safety" minOccurs="1" maxOccurs="1">
39 	                                        <xs:complexType>
40 	                                                <xs:attribute name="accessLocal" use="required" type="yesno"/>
41 	                                                <xs:attribute name="accessRaw" use="required" type="yesno"/>
42 	                                                <xs:attribute name="accessRemote" use="required" type="yesno"/>
43 	                                                <xs:attribute name="changeData" use="required" type="yesno"/>
44 	                                                <xs:attribute name="exposeData" use="required" type="yesno"/>
45 	                                        </xs:complexType>
46 	                                </xs:element>
47 	                                <xs:element name="requirements" minOccurs="1" maxOccurs="1">
48 	                                        <xs:complexType>
49 	                                                <xs:sequence>
50 	                                                        <xs:element name="tattertools" minOccurs="1" maxOccurs="1" type="xs:token"/>
51 	                                                        <xs:element name="textcube" minOccurs="0" maxOccurs="1" type="xs:token"/>
52 	                                                </xs:sequence>
53 	                                        </xs:complexType>
54 	                                </xs:element>
55 	                                <xs:element name="storage" minOccurs="0" maxOccurs="1" type="storage"/>
56 	                                <xs:element name="binding" minOccurs="0" maxOccurs="1">
57 	                                        <xs:complexType>
58 	                                                <xs:sequence>
59 	                                                        <xs:element name="listener" type="listener" minOccurs="0" maxOccurs="unbounded"/>
60 	                                                        <xs:element name="tag" type="tag" minOccurs="0" maxOccurs="unbounded"/>
61 	                                                        <xs:element name="sidebar" type="sidebar" minOccurs="0" maxOccurs="unbounded"/>
62 	                                                        <xs:element name="center" type="center" minOccurs="0" maxOccurs="unbounded"/>
63 	                                                        <xs:element name="adminMenu" type="adminMenu" minOccurs="0" maxOccurs="unbounded"/>
64 	                                                        <xs:element name="config" type="config" minOccurs="0" maxOccurs="1"/>
65 	                                                </xs:sequence>
66 	                                        </xs:complexType>
67 	                                </xs:element>
68 	                        </xs:sequence>
69 	                        <xs:attribute name="version" use="required" type="xs:decimal"/>
70 	                </xs:complexType>
71 	        </xs:element>
72 	
73 	        <xs:complexType name="storage">
74 	                <xs:sequence>
75 	                        <xs:element name="table" minOccurs="1" maxOccurs="unbounded">
76 	                                <xs:complexType>
77 	                                        <xs:sequence>
78 	                                                <xs:element name="name" minOccurs="1" maxOccurs="1" type="xs:token"/>
79 	                                                <xs:element name="fields" minOccurs="1" maxOccurs="1">
80 	                                                        <xs:complexType>
81 	                                                                <xs:sequence>
82 	                                                                        <xs:element name="field" minOccurs="1" maxOccurs="unbounded">
83 	                                                                                <xs:complexType>
84 	                                                                                        <xs:sequence>
85 	                                                                                                <xs:element name="name" minOccurs="1" maxOccurs="1" type="xs:token"/>
86 	                                                                                                <xs:element name="attributes" minOccurs="1" maxOccurs="1" type="xs:token"/>
87 	                                                                                                <xs:element name="length" minOccurs="0" maxOccurs="1" type="xs:unsignedInt"/>
88 	                                                                                                <xs:element name="isnull" minOccurs="0" maxOccurs="1" type="xs:boolean"/>
89 	                                                                                                <xs:element name="default" minOccurs="0" maxOccurs="1" type="xs:string"/>
90 	                                                                                                <xs:element name="autoincrement" minOccurs="0" maxOccurs="1" type="xs:boolean"/>
91 	                                                                                        </xs:sequence>
92 	                                                                                </xs:complexType>
93 	                                                                        </xs:element>
94 	                                                                </xs:sequence>
95 	                                                        </xs:complexType>
96 	                                                </xs:element>
97 	                                                <xs:element name="key" minOccurs="0" maxOccurs="unbounded" type="xs:token"/>
98 	                                        </xs:sequence>
99 	                                </xs:complexType>
100 	                        </xs:element>
101 	                </xs:sequence>
102 	        </xs:complexType>
103 	
104 	        <xs:complexType name="tag">
105 	                <xs:attribute name="name" use="required" type="xs:token"/>
106 	                <xs:attribute name="handler" use="required" type="functionName"/>
107 	        </xs:complexType>
108 	        <xs:complexType name="sidebar">
109 	                <xs:sequence>
110 	                        <xs:element name="params">
111 	                                <xs:complexType>
112 	                                        <xs:sequence>
113 	                                                <xs:element name="param">
114 	                                                        <xs:complexType>
115 	                                                                <xs:sequence>
116 	                                                                        <xs:element name="name" minOccurs="1" maxOccurs="1" type="xs:token"/>
117 	                                                                        <xs:element name="type" minOccurs="1" maxOccurs="1" type="paramType"/>
118 	                                                                        <xs:element name="title" minOccurs="1" maxOccurs="unbounded">
119 	                                                                                <xs:complexType>
120 	                                                                                        <xs:simpleContent>
121 	                                                                                                <xs:extension base="xs:normalizedString">
122 	                                                                                                        <xs:attribute ref="xml:lang"/>
123 	                                                                                                </xs:extension>
124 	                                                                                        </xs:simpleContent>
125 	                                                                                </xs:complexType>
126 	                                                                        </xs:element>
127 	                                                                </xs:sequence>
128 	                                                        </xs:complexType>
129 	                                                </xs:element>
130 	                                        </xs:sequence>
131 	                                </xs:complexType>
132 	                        </xs:element>
133 	                </xs:sequence>
134 	                <xs:attribute name="title" use="required" type="xs:token"/>
135 	                <xs:attribute name="handler" use="required" type="functionName"/>
136 	        </xs:complexType>
137 	        <xs:complexType name="listener">
138 	                <xs:simpleContent>
139 	                        <xs:extension base="functionName">
140 	                                <xs:attribute name="event" use="required" type="xs:token"/>
141 	                        </xs:extension>
142 	                </xs:simpleContent>
143 	        </xs:complexType>
144 	        <xs:complexType name="center">
145 	        </xs:complexType>
146 	        <xs:complexType name="adminMenu">
147 	                <xs:sequence>
148 	                        <xs:element name="viewMethods">
149 	                                <xs:complexType>
150 	                                        <xs:sequence>
151 	                                                <xs:element name="method">
152 	                                                        <xs:complexType>
153 	                                                                <xs:sequence>
154 	                                                                        <xs:element name="title" minOccurs="1" maxOccurs="unbounded" type="xs:token"/>
155 	                                                                        <xs:element name="position" type="xs:token"/>
156 	                                                                        <xs:element name="helpurl" type="xs:anyURI"/>
157 	                                                                        <xs:element name="handler" minOccurs="1" maxOccurs="1" type="functionName"/>
158 	                                                                        <xs:element name="params">
159 	                                                                                <xs:complexType>
160 	                                                                                        <xs:sequence>
161 	                                                                                                <xs:element maxOccurs="unbounded" name="param">
162 	                                                                                                        <xs:complexType>
163 	                                                                                                                <xs:sequence>
164 	                                                                                                                        <xs:element name="name" minOccurs="1" maxOccurs="1" type="xs:token"/>
165 	                                                                                                                        <xs:element name="type" minOccurs="1" maxOccurs="1" type="parameterType"/>
166 	                                                                                                                        <xs:choice minOccurs="0" maxOccurs="1">
167 	                                                                                                                                <xs:element name="default" type="xs:string"/>
168 	                                                                                                                                <xs:element name="mandatory" type="boolean"/>
169 	                                                                                                                        </xs:choice>
170 	                                                                                                                </xs:sequence>
171 	                                                                                                        </xs:complexType>
172 	                                                                                                </xs:element>
173 	                                                                                        </xs:sequence>
174 	                                                                                </xs:complexType>
175 	                                                                        </xs:element>
176 	                                                                </xs:sequence>
177 	                                                        </xs:complexType>
178 	                                                </xs:element>
179 	                                        </xs:sequence>
180 	                                </xs:complexType>
181 	                        </xs:element>
182 	                </xs:sequence>
183 	        </xs:complexType>
184 	        <xs:complexType name="config">
185 	                <xs:sequence>
186 	                        <xs:element name="fieldset" minOccurs="0" maxOccurs="unbounded">
187 	                                <xs:complexType>
188 	                                        <xs:sequence>
189 	                                                <xs:element name="field" minOccurs="0" maxOccurs="unbounded">
190 	                                                        <xs:complexType>
191 	                                                                <xs:sequence>
192 	                                                                        <xs:element name="op" minOccurs="0" maxOccurs="unbounded">
193 	                                                                                <xs:complexType>
194 	                                                                                        <xs:simpleContent>
195 	                                                                                                <xs:extension base="xs:string">
196 	                                                                                                        <xs:attribute name="name" use="required" type="xs:token"/>
197 	                                                                                                        <xs:attribute name="value" type="xs:string"/>
198 	                                                                                                        <xs:attribute name="checked" type="xs:string"/>
199 	                                                                                                </xs:extension>
200 	                                                                                        </xs:simpleContent>
201 	                                                                                </xs:complexType>
202 	                                                                        </xs:element>
203 	                                                                        <xs:element name="caption" minOccurs="0" maxOccurs="1" type="xs:string"/>
204 	                                                                </xs:sequence>
205 	                                                                <xs:attribute name="title" use="required" type="xs:normalizedString"/>
206 	                                                                <xs:attribute name="name" use="required" type="xs:token"/>
207 	                                                                <xs:attribute name="type" use="required" type="fieldType"/>
208 	                                                                <xs:attribute name="value" type="xs:string"/>
209 	                                                                <xs:attribute name="titledirection" type="fieldTitleDirection"/>
210 	                                                                <xs:attribute name="size" type="xs:unsignedInt"/>
211 	                                                                <xs:attribute name="rows" type="xs:unsignedInt"/>
212 	                                                                <xs:attribute name="cols" type="xs:unsignedInt"/>
213 	                                                        </xs:complexType>
214 	                                                </xs:element>
215 	                                        </xs:sequence>
216 	                                        <xs:attribute name="legend" type="xs:normalizedString"/>
217 	                                </xs:complexType>
218 	                        </xs:element>
219 	                </xs:sequence>
220 	                <xs:attribute name="dataValHandler" type="functionName"/>
221 	                <xs:attribute name="manifestHandler" type="functionName"/>
222 	        </xs:complexType>
223 	
224 	        <xs:simpleType name="yesno">
225 	                <xs:restriction base="xs:string">
226 	                        <xs:pattern value="yes|no"/>
227 	                </xs:restriction>
228 	        </xs:simpleType>
229 	        <xs:simpleType name="boolean">
230 	                <xs:restriction base="xs:integer">
231 	                        <xs:minInclusive value="0"/>
232 	                        <xs:maxInclusive value="1"/>
233 	                </xs:restriction>
234 	        </xs:simpleType>
235 	        <xs:simpleType name="functionName">
236 	                <xs:restriction base="xs:NMTOKEN"/>
237 	        </xs:simpleType>
238 	        <xs:simpleType name="paramType">
239 	                <xs:restriction base="xs:token">
240 	                        <xs:enumeration value="string"/>
241 	                        <xs:enumeration value="int"/>
242 	                        <xs:enumeration value="textarea"/>
243 	                </xs:restriction>
244 	        </xs:simpleType>
245 	        <xs:simpleType name="parameterType">
246 	                <xs:restriction base="xs:token">
247 	                        <xs:enumeration value="any"/>
248 	                        <xs:enumeration value="bool"/>
249 	                        <xs:enumeration value="number"/>
250 	                        <xs:enumeration value="int"/>
251 	                        <xs:enumeration value="id"/>
252 	                        <xs:enumeration value="url"/>
253 	                        <xs:enumeration value="string"/>
254 	                        <xs:enumeration value="list"/>
255 	                        <xs:enumeration value="timestamp"/>
256 	                        <xs:enumeration value="period"/>
257 	                        <xs:enumeration value="ip"/>
258 	                        <xs:enumeration value="domain"/>
259 	                        <xs:enumeration value="email"/>
260 	                        <xs:enumeration value="language"/>
261 	                        <xs:enumeration value="filename"/>
262 	                        <xs:enumeration value="directory"/>
263 	                        <xs:enumeration value="path"/>
264 	                        <xs:enumeration value="file"/>
265 	                </xs:restriction>
266 	        </xs:simpleType>
267 	        <xs:simpleType name="fieldType">
268 	                <xs:restriction base="xs:string">
269 	                        <xs:enumeration value="text"/>
270 	                        <xs:enumeration value="textarea"/>
271 	                        <xs:enumeration value="select"/>
272 	                        <xs:enumeration value="checkbox"/>
273 	                        <xs:enumeration value="radio"/>
274 	                </xs:restriction>
275 	        </xs:simpleType>
276 	        <xs:simpleType name="fieldTitleDirection">
277 	                <xs:restriction base="xs:string">
278 	                        <xs:enumeration value="bk"/>
279 	                        <xs:enumeration value=""/>
280 	                </xs:restriction>
281 	        </xs:simpleType>
282 	</xs:schema>

Attachments

2008/02/13 21:27 2008/02/13 21:27
받은 트랙백이 없고   댓글이 없습니다.
이 글의 댓글/트랙백 RSS : http://textcube.org/manual/rss/response/15
이 글의 관련글(트랙백) 주소 : http://textcube.org/manual/trackback/15
Comments