XmlSchemeリポジトリは、CGIゲーム「人狼BBS」の各種情報をXMLで交換する際の基本的なデータ構造を、XML Scheme で定義したものです。
Revisão | 1c976da37bd0b10644d075f23caea04f91c96668 (tree) |
---|---|
Hora | 2011-04-21 21:20:10 |
Autor | Olyutorskii <olyutorskii@user...> |
Commiter | Olyutorskii |
110421版リリース準備
@@ -4,6 +4,9 @@ | ||
4 | 4 | Jindolf XML Scheme 変更履歴 |
5 | 5 | |
6 | 6 | |
7 | +110421 (2011-04-21) | |
8 | + ・アバター識別子に関する存在制約チェックを追加。 | |
9 | + | |
7 | 10 | 110420 (2011-04-20) |
8 | 11 | ・G国対応。 |
9 | 12 | ・Mercurialによる原本管理に移行。 |
@@ -18,7 +18,7 @@ | ||
18 | 18 | Jindolfを動かしたい方は、jindolfで始まり拡張子が*.jarであるファイルを |
19 | 19 | 別途入手してください。 |
20 | 20 | ※ 人狼BBSのURLは [ http://homepage2.nifty.com/ninjinia/ ] まで |
21 | -※ 人狼BBSを主催するninjin氏は、JinCoreの製作に一切関与していません。 | |
21 | +※ 人狼BBSを主催するninjin氏は、Jindolfの製作に一切関与していません。 | |
22 | 22 | このアーカイブに関する問い合わせををninjin氏へ投げかけないように! |
23 | 23 | 約束だよ! |
24 | 24 |
@@ -0,0 +1,337 @@ | ||
1 | +<!-- | |
2 | + | |
3 | +人狼BBS 共通アーカイブ基盤用 DTD定義 | |
4 | + | |
5 | +by olyutorskii [ http://sourceforge.jp/users/olyutorskii/ ] | |
6 | +License : The MIT License | |
7 | +※ カタログ化はご自由に | |
8 | + | |
9 | +Copyright(c) 2009 olyutorskii | |
10 | + | |
11 | +--> | |
12 | + | |
13 | +<!ENTITY % announceElems " | |
14 | + startEntry | |
15 | +| onStage | |
16 | +| startMirror | |
17 | +| openRole | |
18 | +| murdered | |
19 | +| startAssault | |
20 | +| survivor | |
21 | +| counting | |
22 | +| suddenDeath | |
23 | +| noMurder | |
24 | +| winVillage | |
25 | +| winWolf | |
26 | +| winHamster | |
27 | +| playerList | |
28 | +| panic | |
29 | +| execution | |
30 | +| vanish | |
31 | +| checkout | |
32 | +| shortMember | |
33 | +" > | |
34 | + | |
35 | +<!ENTITY % orderElems " | |
36 | + askEntry | |
37 | +| askCommit | |
38 | +| noComment | |
39 | +| stayEpilogue | |
40 | +| gameOver | |
41 | +" > | |
42 | + | |
43 | +<!ENTITY % extraElems " | |
44 | + judge | |
45 | +| guard | |
46 | +| counting2 | |
47 | +| assault | |
48 | +" > | |
49 | + | |
50 | +<!ENTITY % systemEvent " %announceElems; | %orderElems; | %extraElems; " > | |
51 | + | |
52 | +<!ENTITY % EventFamily " announce | order | extra " > | |
53 | +<!ENTITY % announceAttrs "eventFamily (%EventFamily;) #FIXED 'announce'" > | |
54 | +<!ENTITY % orderAttrs "eventFamily (%EventFamily;) #FIXED 'order'" > | |
55 | +<!ENTITY % extraAttrs "eventFamily (%EventFamily;) #FIXED 'extra'" > | |
56 | + | |
57 | +<!ENTITY % VillageState " prologue | progress | epilogue | gameover " > | |
58 | +<!ENTITY % DisclosureType " hot | uncomplete | complete " > | |
59 | +<!ENTITY % PeriodType " prologue | progress | epilogue " > | |
60 | +<!ENTITY % Team " village | wolf | hamster " > | |
61 | +<!ENTITY % TalkType " public | wolf | private| grave " > | |
62 | +<!ENTITY % Role " | |
63 | + innocent | |
64 | +| wolf | |
65 | +| seer | |
66 | +| shaman | |
67 | +| madman | |
68 | +| hunter | |
69 | +| frater | |
70 | +| hamster | |
71 | +" > | |
72 | + | |
73 | + | |
74 | +<!-- #################################################################### --> | |
75 | + | |
76 | + | |
77 | +<!ELEMENT village (avatarList, period*) > | |
78 | +<!ATTLIST village | |
79 | + xmlns CDATA #REQUIRED | |
80 | + xmlns:xsi CDATA #REQUIRED | |
81 | + xsi:schemaLocation CDATA #REQUIRED | |
82 | + xml:lang CDATA "ja-JP" | |
83 | + xml:base CDATA #REQUIRED | |
84 | + xml:space (default|preserve) "preserve" | |
85 | + fullName CDATA #REQUIRED | |
86 | + vid CDATA #REQUIRED | |
87 | + commitTime CDATA #IMPLIED | |
88 | + state (%VillageState;) #REQUIRED | |
89 | + disclosure (%DisclosureType;) "complete" | |
90 | + isValid ( true | false | 1 | 0 ) "true" | |
91 | + landName CDATA #REQUIRED | |
92 | + formalName CDATA #REQUIRED | |
93 | + landId CDATA #REQUIRED | |
94 | + landPrefix CDATA #REQUIRED | |
95 | + locale CDATA "ja-JP" | |
96 | + origencoding CDATA "Shift_JIS" | |
97 | + timezone CDATA "GMT+09:00" | |
98 | + graveIconURI CDATA #REQUIRED | |
99 | + generator CDATA #IMPLIED | |
100 | +> | |
101 | + | |
102 | +<!ELEMENT avatarList (avatar*) > | |
103 | + | |
104 | +<!ELEMENT avatar EMPTY > | |
105 | +<!ATTLIST avatar | |
106 | + avatarId CDATA #REQUIRED | |
107 | + fullName CDATA #REQUIRED | |
108 | + shortName CDATA #REQUIRED | |
109 | + faceIconURI CDATA #IMPLIED | |
110 | +> | |
111 | + | |
112 | +<!ELEMENT period ( talk | %systemEvent; )* > | |
113 | +<!ATTLIST period | |
114 | + type (%PeriodType;) #REQUIRED | |
115 | + day CDATA #REQUIRED | |
116 | + disclosure (%DisclosureType;) "complete" | |
117 | + nextCommitDay CDATA #REQUIRED | |
118 | + commitTime CDATA #REQUIRED | |
119 | + sourceURI CDATA #REQUIRED | |
120 | + loadedTime CDATA #IMPLIED | |
121 | + loadedBy CDATA #IMPLIED | |
122 | +> | |
123 | + | |
124 | +<!ELEMENT talk (li)* > | |
125 | +<!ATTLIST talk | |
126 | + type (%TalkType;) #REQUIRED | |
127 | + avatarId CDATA #REQUIRED | |
128 | + xname CDATA #REQUIRED | |
129 | + time CDATA #REQUIRED | |
130 | + faceIconURI CDATA #IMPLIED | |
131 | +> | |
132 | + | |
133 | +<!ELEMENT li (#PCDATA|rawdata)* > | |
134 | +<!ATTLIST li xml:space (default|preserve) "preserve" > | |
135 | + | |
136 | +<!ELEMENT rawdata (#PCDATA) > | |
137 | +<!ATTLIST rawdata | |
138 | + encoding CDATA #REQUIRED | |
139 | + hexBin CDATA #REQUIRED | |
140 | +> | |
141 | + | |
142 | +<!ELEMENT avatarRef EMPTY > | |
143 | +<!ATTLIST avatarRef | |
144 | + avatarId CDATA #REQUIRED | |
145 | +> | |
146 | + | |
147 | +<!ELEMENT startEntry (li)* > | |
148 | +<!ATTLIST startEntry | |
149 | + %announceAttrs; | |
150 | +> | |
151 | + | |
152 | +<!ELEMENT onStage (li)* > | |
153 | +<!ATTLIST onStage | |
154 | + %announceAttrs; | |
155 | + entryNo CDATA #REQUIRED | |
156 | + avatarId CDATA #REQUIRED | |
157 | +> | |
158 | + | |
159 | +<!ELEMENT startMirror (li)* > | |
160 | +<!ATTLIST startMirror | |
161 | + %announceAttrs; | |
162 | +> | |
163 | + | |
164 | +<!ELEMENT roleHeads EMPTY > | |
165 | +<!ATTLIST roleHeads | |
166 | + role (%Role;) #REQUIRED | |
167 | + heads CDATA #REQUIRED | |
168 | +> | |
169 | + | |
170 | +<!ELEMENT openRole (li*, roleHeads+) > | |
171 | +<!ATTLIST openRole | |
172 | + %announceAttrs; | |
173 | +> | |
174 | + | |
175 | +<!ELEMENT murdered (li*, avatarRef+) > | |
176 | +<!ATTLIST murdered | |
177 | + %announceAttrs; | |
178 | +> | |
179 | + | |
180 | +<!ELEMENT startAssault (li)* > | |
181 | +<!ATTLIST startAssault | |
182 | + %announceAttrs; | |
183 | +> | |
184 | + | |
185 | +<!ELEMENT survivor (li*, avatarRef+) > | |
186 | +<!ATTLIST survivor | |
187 | + %announceAttrs; | |
188 | +> | |
189 | + | |
190 | +<!ELEMENT vote EMPTY > | |
191 | +<!ATTLIST vote | |
192 | + byWhom CDATA #REQUIRED | |
193 | + target CDATA #REQUIRED | |
194 | +> | |
195 | + | |
196 | +<!ELEMENT counting (li*, vote+) > | |
197 | +<!ATTLIST counting | |
198 | + %announceAttrs; | |
199 | + victim CDATA #IMPLIED | |
200 | +> | |
201 | + | |
202 | +<!ELEMENT suddenDeath (li)* > | |
203 | +<!ATTLIST suddenDeath | |
204 | + %announceAttrs; | |
205 | + avatarId CDATA #REQUIRED | |
206 | +> | |
207 | + | |
208 | +<!ELEMENT noMurder (li)* > | |
209 | +<!ATTLIST noMurder | |
210 | + %announceAttrs; | |
211 | +> | |
212 | + | |
213 | +<!ELEMENT winVillage (li)* > | |
214 | +<!ATTLIST winVillage | |
215 | + %announceAttrs; | |
216 | +> | |
217 | + | |
218 | +<!ELEMENT winWolf (li)* > | |
219 | +<!ATTLIST winWolf | |
220 | + %announceAttrs; | |
221 | +> | |
222 | + | |
223 | +<!ELEMENT winHamster (li)* > | |
224 | +<!ATTLIST winHamster | |
225 | + %announceAttrs; | |
226 | +> | |
227 | + | |
228 | +<!ELEMENT playerInfo EMPTY > | |
229 | +<!ATTLIST playerInfo | |
230 | + playerId CDATA #REQUIRED | |
231 | + avatarId CDATA #REQUIRED | |
232 | + survive ( true | false | 1 | 0 ) #REQUIRED | |
233 | + role (%Role;) #REQUIRED | |
234 | + uri CDATA #IMPLIED | |
235 | +> | |
236 | + | |
237 | +<!ELEMENT playerList (li*, playerInfo+) > | |
238 | +<!ATTLIST playerList | |
239 | + %announceAttrs; | |
240 | +> | |
241 | + | |
242 | +<!ELEMENT panic (li)* > | |
243 | +<!ATTLIST panic | |
244 | + %announceAttrs; | |
245 | +> | |
246 | + | |
247 | +<!ELEMENT nominated EMPTY > | |
248 | +<!ATTLIST nominated | |
249 | + avatarId CDATA #REQUIRED | |
250 | + count CDATA #REQUIRED | |
251 | +> | |
252 | + | |
253 | +<!ELEMENT execution (li*, nominated+) > | |
254 | +<!ATTLIST execution | |
255 | + %announceAttrs; | |
256 | + victim CDATA #IMPLIED | |
257 | +> | |
258 | + | |
259 | +<!ELEMENT vanish (li)* > | |
260 | +<!ATTLIST vanish | |
261 | + %announceAttrs; | |
262 | + avatarId CDATA #REQUIRED | |
263 | +> | |
264 | + | |
265 | +<!ELEMENT checkout (li)* > | |
266 | +<!ATTLIST checkout | |
267 | + %announceAttrs; | |
268 | + avatarId CDATA #REQUIRED | |
269 | +> | |
270 | + | |
271 | +<!ELEMENT shortMember (li)* > | |
272 | +<!ATTLIST shortMember | |
273 | + %announceAttrs; | |
274 | +> | |
275 | + | |
276 | +<!ELEMENT askEntry (li)* > | |
277 | +<!ATTLIST askEntry | |
278 | + %orderAttrs; | |
279 | + commitTime CDATA #REQUIRED | |
280 | + minMembers CDATA #REQUIRED | |
281 | + maxMembers CDATA #REQUIRED | |
282 | +> | |
283 | + | |
284 | +<!ELEMENT askCommit (li)* > | |
285 | +<!ATTLIST askCommit | |
286 | + %orderAttrs; | |
287 | + limitVote CDATA #REQUIRED | |
288 | + limitSpecial CDATA #REQUIRED | |
289 | +> | |
290 | + | |
291 | +<!ELEMENT noComment (li*, avatarRef+) > | |
292 | +<!ATTLIST noComment | |
293 | + %orderAttrs; | |
294 | +> | |
295 | + | |
296 | +<!ELEMENT stayEpilogue (li)* > | |
297 | +<!ATTLIST stayEpilogue | |
298 | + %orderAttrs; | |
299 | + winner (%Team;) #REQUIRED | |
300 | + limitTime CDATA #REQUIRED | |
301 | +> | |
302 | + | |
303 | +<!ELEMENT gameOver (li)* > | |
304 | +<!ATTLIST gameOver | |
305 | + %orderAttrs; | |
306 | +> | |
307 | + | |
308 | +<!ELEMENT judge (li)* > | |
309 | +<!ATTLIST judge | |
310 | + %extraAttrs; | |
311 | + byWhom CDATA #REQUIRED | |
312 | + target CDATA #REQUIRED | |
313 | +> | |
314 | + | |
315 | +<!ELEMENT guard (li)* > | |
316 | +<!ATTLIST guard | |
317 | + %extraAttrs; | |
318 | + byWhom CDATA #REQUIRED | |
319 | + target CDATA #REQUIRED | |
320 | +> | |
321 | + | |
322 | +<!ELEMENT counting2 (li*, vote+) > | |
323 | +<!ATTLIST counting2 | |
324 | + %extraAttrs; | |
325 | +> | |
326 | + | |
327 | +<!ELEMENT assault (li)* > | |
328 | +<!ATTLIST assault | |
329 | + %extraAttrs; | |
330 | + byWhom CDATA #REQUIRED | |
331 | + target CDATA #REQUIRED | |
332 | + xname CDATA #REQUIRED | |
333 | + time CDATA #REQUIRED | |
334 | + faceIconURI CDATA #IMPLIED | |
335 | +> | |
336 | + | |
337 | +<!-- EOF --> |
@@ -7,7 +7,7 @@ | ||
7 | 7 | targetNamespace="http://jindolf.sourceforge.jp/xml/ns/501" |
8 | 8 | elementFormDefault="qualified" |
9 | 9 | xml:lang="ja-JP" |
10 | - version="224" | |
10 | + version="225" | |
11 | 11 | > |
12 | 12 | |
13 | 13 | <xsd:annotation> |
@@ -439,6 +439,26 @@ generator => XMLを吐き出したアプリ、サブシステム、ライブラ | ||
439 | 439 | <xsd:field xpath="@avatarId" /> |
440 | 440 | </xsd:keyref> |
441 | 441 | |
442 | + <xsd:keyref name="vanish-avatar" refer="tns:avatar-id"> | |
443 | + <xsd:selector xpath=".//tns:vanish" /> | |
444 | + <xsd:field xpath="@avatarId" /> | |
445 | + </xsd:keyref> | |
446 | + | |
447 | + <xsd:keyref name="checkout-avatar" refer="tns:avatar-id"> | |
448 | + <xsd:selector xpath=".//tns:checkout" /> | |
449 | + <xsd:field xpath="@avatarId" /> | |
450 | + </xsd:keyref> | |
451 | + | |
452 | + <xsd:keyref name="execution-avatar-victim" refer="tns:avatar-id"> | |
453 | + <xsd:selector xpath=".//tns:execution" /> | |
454 | + <xsd:field xpath="@victim" /> | |
455 | + </xsd:keyref> | |
456 | + | |
457 | + <xsd:keyref name="nominated-avatar" refer="tns:avatar-id"> | |
458 | + <xsd:selector xpath=".//tns:nominated" /> | |
459 | + <xsd:field xpath="@avatarId" /> | |
460 | + </xsd:keyref> | |
461 | + | |
442 | 462 | <xsd:keyref name="counting-avatar-victim" refer="tns:avatar-id"> |
443 | 463 | <xsd:selector xpath=".//tns:counting" /> |
444 | 464 | <xsd:field xpath="@victim" /> |