TogaGemは、3D動画制作ツール、MikuMikuDance(MMD)で用いられる各種データファイルを読み書きするためのJavaライブラリです。
旧TogaParserライブラリの資産は、TogaGemライブラリに吸収されました。
Revision | 26a7de90cc885bfa50bfb53523be1d31cf2f1440 (tree) |
---|---|
Zeit | 2013-03-17 01:20:21 |
Autor | ![]() |
Commiter | Olyutorskii |
2.102.2版リリース準備
@@ -4,7 +4,7 @@ | ||
4 | 4 | TogaGem 変更履歴 |
5 | 5 | |
6 | 6 | |
7 | -X.XXX.X (20XX-XX-XX) | |
7 | +2.102.2 (2013-03-17) | |
8 | 8 | ・Maven3対応。 |
9 | 9 | ・JRE版数によって"0.001"や"0.0010"になるXML上の実数表記揺れを吸収。 |
10 | 10 |
@@ -16,7 +16,7 @@ | ||
16 | 16 | <groupId>jp.sourceforge.mikutoga</groupId> |
17 | 17 | <artifactId>togagem</artifactId> |
18 | 18 | |
19 | - <version>2.101.3-SNAPSHOT</version> | |
19 | + <version>2.102.2</version> | |
20 | 20 | |
21 | 21 | <packaging>jar</packaging> |
22 | 22 | <name>TogaGem</name> |
@@ -121,11 +121,11 @@ | ||
121 | 121 | <plugin> |
122 | 122 | <groupId>org.apache.maven.plugins</groupId> |
123 | 123 | <artifactId>maven-enforcer-plugin</artifactId> |
124 | - <version>1.1.1</version> | |
124 | + <version>1.2</version> | |
125 | 125 | <configuration> |
126 | 126 | <rules> |
127 | 127 | <requireMavenVersion> |
128 | - <version>[2.2,)</version> | |
128 | + <version>[3.0,)</version> | |
129 | 129 | </requireMavenVersion> |
130 | 130 | <requireJavaVersion> |
131 | 131 | <version>[1.6,)</version> |
@@ -233,7 +233,7 @@ | ||
233 | 233 | <plugin> |
234 | 234 | <groupId>org.apache.maven.plugins</groupId> |
235 | 235 | <artifactId>maven-surefire-plugin</artifactId> |
236 | - <version>2.12.4</version> | |
236 | + <version>2.13</version> | |
237 | 237 | <configuration> |
238 | 238 | <skipTests>false</skipTests> |
239 | 239 | <enableAssertions>true</enableAssertions> |
@@ -262,7 +262,7 @@ | ||
262 | 262 | <plugin> |
263 | 263 | <groupId>org.apache.maven.plugins</groupId> |
264 | 264 | <artifactId>maven-pmd-plugin</artifactId> |
265 | - <version>2.7.1</version> | |
265 | + <version>2.7.1</version> <!-- 3.0 is buggy --> | |
266 | 266 | <configuration> |
267 | 267 | <targetJdk>${maven.compiler.target}</targetJdk> |
268 | 268 | <rulesets> |
@@ -416,7 +416,7 @@ | ||
416 | 416 | <plugin> |
417 | 417 | <groupId>org.apache.maven.plugins</groupId> |
418 | 418 | <artifactId>maven-surefire-report-plugin</artifactId> |
419 | - <version>2.12.4</version> | |
419 | + <version>2.13</version> | |
420 | 420 | <configuration> |
421 | 421 | <showSuccess>false</showSuccess> |
422 | 422 | </configuration> |
@@ -462,7 +462,7 @@ | ||
462 | 462 | <plugin> |
463 | 463 | <groupId>org.apache.maven.plugins</groupId> |
464 | 464 | <artifactId>maven-pmd-plugin</artifactId> |
465 | - <version>2.7.1</version> | |
465 | + <version>2.7.1</version> <!-- 3.0 is buggy --> | |
466 | 466 | <configuration> |
467 | 467 | <skip>false</skip> |
468 | 468 | <targetJdk>${maven.compiler.target}</targetJdk> |
@@ -1,30 +0,0 @@ | ||
1 | -/* | |
2 | - * MMD model file types. | |
3 | - * | |
4 | - * License : The MIT License | |
5 | - * Copyright(c) 2012 MikuToga Partners | |
6 | - */ | |
7 | - | |
8 | -package jp.sourceforge.mikutoga.pmd; | |
9 | - | |
10 | -/** | |
11 | - * モデルファイル種別。 | |
12 | - */ | |
13 | -public enum ModelFileType { | |
14 | - | |
15 | - /** 不明。 */ | |
16 | - NONE, | |
17 | - | |
18 | - /** MikuMikuDance ver7 前後で読み書きが可能なPMDファイル。 */ | |
19 | - PMD, | |
20 | - | |
21 | - /** | |
22 | - * スキーマ | |
23 | - * http://mikutoga.sourceforge.jp/xml/xsd/pmdxml-101009.xsd | |
24 | - * で定義されたXMLファイル。 | |
25 | - */ | |
26 | - XML_101009, | |
27 | - | |
28 | - ; | |
29 | - | |
30 | -} |
@@ -446,10 +446,10 @@ public class PmdParserBase extends CommonParser { | ||
446 | 446 | int parentId = parseLeUShortAsInt(); |
447 | 447 | int tailId = parseLeUShortAsInt(); |
448 | 448 | byte boneKind = parseByte(); |
449 | - int ikId = parseLeUShortAsInt(); | |
449 | + int srcId = parseLeUShortAsInt(); | |
450 | 450 | |
451 | 451 | this.boneHandler.pmdBoneInfo(boneName, boneKind); |
452 | - this.boneHandler.pmdBoneLink(parentId, tailId, ikId); | |
452 | + this.boneHandler.pmdBoneLink(parentId, tailId, srcId); | |
453 | 453 | |
454 | 454 | float xPos = parseLeFloat(); |
455 | 455 | float yPos = parseLeFloat(); |
@@ -114,8 +114,8 @@ class I18nAlias { | ||
114 | 114 | * <li>「ボーン」は「ボーン」になる |
115 | 115 | * <li>「ホ゛ーン9」は「ボーン9」になる |
116 | 116 | * </ul> |
117 | - * @param name | |
118 | - * @return | |
117 | + * @param name 正規化対象文字列 | |
118 | + * @return 正規化済み文字列 | |
119 | 119 | */ |
120 | 120 | protected static String normalize(CharSequence name){ |
121 | 121 | String result; |
@@ -126,7 +126,7 @@ class I18nAlias { | ||
126 | 126 | |
127 | 127 | /** |
128 | 128 | * オーダー番号を返す。 |
129 | - * @return | |
129 | + * @return オーダー番号 | |
130 | 130 | */ |
131 | 131 | protected int getOrderNo(){ |
132 | 132 | return this.orderNo; |
@@ -134,7 +134,7 @@ class I18nAlias { | ||
134 | 134 | |
135 | 135 | /** |
136 | 136 | * オーダー番号を設定する。 |
137 | - * @param orderNo | |
137 | + * @param orderNo オーダー番号 | |
138 | 138 | */ |
139 | 139 | protected void setOrderNo(int orderNo){ |
140 | 140 | this.orderNo = orderNo; |
@@ -47,18 +47,18 @@ public final class DomNsUtils { | ||
47 | 47 | * @return ノードの名前空間およびローカル名が一致したらtrue |
48 | 48 | */ |
49 | 49 | public static boolean hasNsLocalNameNode(Node node, |
50 | - String nsuri, | |
51 | - String localName ){ | |
50 | + String nsuri, | |
51 | + String localName ){ | |
52 | 52 | String nodeLocalName = node.getLocalName(); |
53 | 53 | String nodeNsUri = node.getNamespaceURI(); |
54 | 54 | |
55 | - boolean needLocalCmp = | |
56 | - localName != null; | |
57 | - boolean needUriCmp = | |
58 | - nsuri != null && nodeNsUri != null; | |
55 | + if(localName != null){ | |
56 | + if( ! localName.equals(nodeLocalName) ) return false; | |
57 | + } | |
59 | 58 | |
60 | - if(needLocalCmp && ! localName.equals(nodeLocalName) ) return false; | |
61 | - if(needUriCmp && ! nsuri.equals(nodeNsUri)) return false; | |
59 | + if(nsuri != null && nodeNsUri != null){ | |
60 | + if( ! nsuri.equals(nodeNsUri) ) return false; | |
61 | + } | |
62 | 62 | |
63 | 63 | return true; |
64 | 64 | } |
@@ -79,6 +79,28 @@ public final class DomNsUtils { | ||
79 | 79 | } |
80 | 80 | |
81 | 81 | /** |
82 | + * 親要素が指定された名前の子要素を持つか判定する。 | |
83 | + * @param parent 親要素 | |
84 | + * @param nsuri 名前空間URI | |
85 | + * @param localName ローカル名 | |
86 | + * @return 指定名の子要素が存在すればtrue | |
87 | + */ | |
88 | + public static boolean hasChild(Element parent, | |
89 | + String nsuri, | |
90 | + String localName ){ | |
91 | + for(Node node = parent.getFirstChild(); | |
92 | + node != null; | |
93 | + node = node.getNextSibling() ){ | |
94 | + | |
95 | + if(hasNsLocalNameElem(node, nsuri, localName)){ | |
96 | + return true; | |
97 | + } | |
98 | + } | |
99 | + | |
100 | + return false; | |
101 | + } | |
102 | + | |
103 | + /** | |
82 | 104 | * 指定された名前空間とローカル名に合致する最初の直下子要素を返す。 |
83 | 105 | * @param parent 親要素 |
84 | 106 | * @param nsuri 名前空間URI |
@@ -151,7 +151,7 @@ public final class DomUtils { | ||
151 | 151 | throw new TogaXmlException(message, e); |
152 | 152 | } |
153 | 153 | |
154 | - result.replace("" + '\u00a5', "" + BS_CHAR); | |
154 | + result = result.replace("" + '\u00a5', "" + BS_CHAR); | |
155 | 155 | |
156 | 156 | return result; |
157 | 157 | } |
@@ -39,7 +39,7 @@ public class XmlResourceResolver | ||
39 | 39 | "http://www.w3.org/2001/XMLSchema-instance"; |
40 | 40 | |
41 | 41 | private static final String LOCAL_SCHEMA_XML = |
42 | - "resources/xml-2009-01.xsd"; | |
42 | + "resources/xmlspace.xsd"; | |
43 | 43 | |
44 | 44 | private static final URI EMPTY_URI = URI.create(""); |
45 | 45 |
@@ -68,7 +68,7 @@ public class XmlResourceResolver | ||
68 | 68 | URI originalURI = URI.create(SCHEMA_XML); |
69 | 69 | URI redirectURI = URI.create(redirectResName); |
70 | 70 | |
71 | - putURIMapImpl(originalURI, redirectURI); | |
71 | + putRedirectedImpl(originalURI, redirectURI); | |
72 | 72 | |
73 | 73 | return; |
74 | 74 | } |
@@ -135,7 +135,7 @@ public class XmlResourceResolver | ||
135 | 135 | * @param original オリジナルURI |
136 | 136 | * @param redirect リダイレクトURI |
137 | 137 | */ |
138 | - private void putURIMapImpl(URI original, URI redirect){ | |
138 | + private void putRedirectedImpl(URI original, URI redirect){ | |
139 | 139 | URI oridinalNorm = original.normalize(); |
140 | 140 | URI redirectNorm = redirect.normalize(); |
141 | 141 |
@@ -150,12 +150,43 @@ public class XmlResourceResolver | ||
150 | 150 | * @param original オリジナルURI |
151 | 151 | * @param redirect リダイレクトURI |
152 | 152 | */ |
153 | - public void putURIMap(URI original, URI redirect){ | |
154 | - putURIMapImpl(original, redirect); | |
153 | + public void putRedirected(URI original, URI redirect){ | |
154 | + putRedirectedImpl(original, redirect); | |
155 | 155 | return; |
156 | 156 | } |
157 | 157 | |
158 | 158 | /** |
159 | + * 別リゾルバの登録内容を追加登録する。 | |
160 | + * @param other 別リゾルバ | |
161 | + */ | |
162 | + public void putRedirected(XmlResourceResolver other){ | |
163 | + this.uriMap.putAll(other.uriMap); | |
164 | + return; | |
165 | + } | |
166 | + | |
167 | + /** | |
168 | + * 登録済みリダイレクト先URIを返す。 | |
169 | + * @param original オリジナルURI | |
170 | + * @return リダイレクト先URI。未登録の場合はnull | |
171 | + */ | |
172 | + public URI getRedirected(URI original){ | |
173 | + URI keyURI = original.normalize(); | |
174 | + URI resourceURI = this.uriMap.get(keyURI); | |
175 | + return resourceURI; | |
176 | + } | |
177 | + | |
178 | + /** | |
179 | + * 登録済みリダイレクト先URIを返す。 | |
180 | + * @param original オリジナルURI | |
181 | + * @return リダイレクト先URI。未登録の場合はオリジナルを返す | |
182 | + */ | |
183 | + public URI resolveRedirected(URI original){ | |
184 | + URI result = getRedirected(original); | |
185 | + if(result == null) result = original; | |
186 | + return result; | |
187 | + } | |
188 | + | |
189 | + /** | |
159 | 190 | * 登録済みリダイレクト先リソースの入力ストリームを得る。 |
160 | 191 | * @param originalURI オリジナルURI |
161 | 192 | * @return 入力ストリーム。リダイレクト先が未登録の場合はnull |
@@ -164,11 +195,8 @@ public class XmlResourceResolver | ||
164 | 195 | */ |
165 | 196 | private InputStream getXMLResourceAsStream(URI originalURI) |
166 | 197 | throws IOException{ |
167 | - URI keyURI = originalURI.normalize(); | |
168 | - URI resourceURI = this.uriMap.get(keyURI); | |
169 | - if(resourceURI == null){ | |
170 | - return null; | |
171 | - } | |
198 | + URI resourceURI = getRedirected(originalURI); | |
199 | + if(resourceURI == null) return null; | |
172 | 200 | |
173 | 201 | URL resourceURL = resourceURI.toURL(); |
174 | 202 | InputStream is = resourceURL.openStream(); |
@@ -1,286 +0,0 @@ | ||
1 | -<?xml version='1.0'?> | |
2 | -<?xml-stylesheet href="../2008/09/xsd.xsl" type="text/xsl"?> | |
3 | -<xs:schema targetNamespace="http://www.w3.org/XML/1998/namespace" | |
4 | - xmlns:xs="http://www.w3.org/2001/XMLSchema" | |
5 | - xmlns ="http://www.w3.org/1999/xhtml" | |
6 | - xml:lang="en"> | |
7 | - | |
8 | - <xs:annotation> | |
9 | - <xs:documentation> | |
10 | - <div> | |
11 | - <h1>About the XML namespace</h1> | |
12 | - | |
13 | - <div class="bodytext"> | |
14 | - <p> | |
15 | - This schema document describes the XML namespace, in a form | |
16 | - suitable for import by other schema documents. | |
17 | - </p> | |
18 | - <p> | |
19 | - See <a href="http://www.w3.org/XML/1998/namespace.html"> | |
20 | - http://www.w3.org/XML/1998/namespace.html</a> and | |
21 | - <a href="http://www.w3.org/TR/REC-xml"> | |
22 | - http://www.w3.org/TR/REC-xml</a> for information | |
23 | - about this namespace. | |
24 | - </p> | |
25 | - <p> | |
26 | - Note that local names in this namespace are intended to be | |
27 | - defined only by the World Wide Web Consortium or its subgroups. | |
28 | - The names currently defined in this namespace are listed below. | |
29 | - They should not be used with conflicting semantics by any Working | |
30 | - Group, specification, or document instance. | |
31 | - </p> | |
32 | - <p> | |
33 | - See further below in this document for more information about <a | |
34 | - href="#usage">how to refer to this schema document from your own | |
35 | - XSD schema documents</a> and about <a href="#nsversioning">the | |
36 | - namespace-versioning policy governing this schema document</a>. | |
37 | - </p> | |
38 | - </div> | |
39 | - </div> | |
40 | - </xs:documentation> | |
41 | - </xs:annotation> | |
42 | - | |
43 | - <xs:attribute name="lang"> | |
44 | - <xs:annotation> | |
45 | - <xs:documentation> | |
46 | - <div> | |
47 | - | |
48 | - <h3>lang (as an attribute name)</h3> | |
49 | - <p> | |
50 | - denotes an attribute whose value | |
51 | - is a language code for the natural language of the content of | |
52 | - any element; its value is inherited. This name is reserved | |
53 | - by virtue of its definition in the XML specification.</p> | |
54 | - | |
55 | - </div> | |
56 | - <div> | |
57 | - <h4>Notes</h4> | |
58 | - <p> | |
59 | - Attempting to install the relevant ISO 2- and 3-letter | |
60 | - codes as the enumerated possible values is probably never | |
61 | - going to be a realistic possibility. | |
62 | - </p> | |
63 | - <p> | |
64 | - See BCP 47 at <a href="http://www.rfc-editor.org/rfc/bcp/bcp47.txt"> | |
65 | - http://www.rfc-editor.org/rfc/bcp/bcp47.txt</a> | |
66 | - and the IANA language subtag registry at | |
67 | - <a href="http://www.iana.org/assignments/language-subtag-registry"> | |
68 | - http://www.iana.org/assignments/language-subtag-registry</a> | |
69 | - for further information. | |
70 | - </p> | |
71 | - <p> | |
72 | - The union allows for the 'un-declaration' of xml:lang with | |
73 | - the empty string. | |
74 | - </p> | |
75 | - </div> | |
76 | - </xs:documentation> | |
77 | - </xs:annotation> | |
78 | - <xs:simpleType> | |
79 | - <xs:union memberTypes="xs:language"> | |
80 | - <xs:simpleType> | |
81 | - <xs:restriction base="xs:string"> | |
82 | - <xs:enumeration value=""/> | |
83 | - </xs:restriction> | |
84 | - </xs:simpleType> | |
85 | - </xs:union> | |
86 | - </xs:simpleType> | |
87 | - </xs:attribute> | |
88 | - | |
89 | - <xs:attribute name="space"> | |
90 | - <xs:annotation> | |
91 | - <xs:documentation> | |
92 | - <div> | |
93 | - | |
94 | - <h3>space (as an attribute name)</h3> | |
95 | - <p> | |
96 | - denotes an attribute whose | |
97 | - value is a keyword indicating what whitespace processing | |
98 | - discipline is intended for the content of the element; its | |
99 | - value is inherited. This name is reserved by virtue of its | |
100 | - definition in the XML specification.</p> | |
101 | - | |
102 | - </div> | |
103 | - </xs:documentation> | |
104 | - </xs:annotation> | |
105 | - <xs:simpleType> | |
106 | - <xs:restriction base="xs:NCName"> | |
107 | - <xs:enumeration value="default"/> | |
108 | - <xs:enumeration value="preserve"/> | |
109 | - </xs:restriction> | |
110 | - </xs:simpleType> | |
111 | - </xs:attribute> | |
112 | - | |
113 | - <xs:attribute name="base" type="xs:anyURI"> <xs:annotation> | |
114 | - <xs:documentation> | |
115 | - <div> | |
116 | - | |
117 | - <h3>base (as an attribute name)</h3> | |
118 | - <p> | |
119 | - denotes an attribute whose value | |
120 | - provides a URI to be used as the base for interpreting any | |
121 | - relative URIs in the scope of the element on which it | |
122 | - appears; its value is inherited. This name is reserved | |
123 | - by virtue of its definition in the XML Base specification.</p> | |
124 | - | |
125 | - <p> | |
126 | - See <a | |
127 | - href="http://www.w3.org/TR/xmlbase/">http://www.w3.org/TR/xmlbase/</a> | |
128 | - for information about this attribute. | |
129 | - </p> | |
130 | - </div> | |
131 | - </xs:documentation> | |
132 | - </xs:annotation> | |
133 | - </xs:attribute> | |
134 | - | |
135 | - <xs:attribute name="id" type="xs:ID"> | |
136 | - <xs:annotation> | |
137 | - <xs:documentation> | |
138 | - <div> | |
139 | - | |
140 | - <h3>id (as an attribute name)</h3> | |
141 | - <p> | |
142 | - denotes an attribute whose value | |
143 | - should be interpreted as if declared to be of type ID. | |
144 | - This name is reserved by virtue of its definition in the | |
145 | - xml:id specification.</p> | |
146 | - | |
147 | - <p> | |
148 | - See <a | |
149 | - href="http://www.w3.org/TR/xml-id/">http://www.w3.org/TR/xml-id/</a> | |
150 | - for information about this attribute. | |
151 | - </p> | |
152 | - </div> | |
153 | - </xs:documentation> | |
154 | - </xs:annotation> | |
155 | - </xs:attribute> | |
156 | - | |
157 | - <xs:attributeGroup name="specialAttrs"> | |
158 | - <xs:attribute ref="xml:base"/> | |
159 | - <xs:attribute ref="xml:lang"/> | |
160 | - <xs:attribute ref="xml:space"/> | |
161 | - <xs:attribute ref="xml:id"/> | |
162 | - </xs:attributeGroup> | |
163 | - | |
164 | - <xs:annotation> | |
165 | - <xs:documentation> | |
166 | - <div> | |
167 | - | |
168 | - <h3>Father (in any context at all)</h3> | |
169 | - | |
170 | - <div class="bodytext"> | |
171 | - <p> | |
172 | - denotes Jon Bosak, the chair of | |
173 | - the original XML Working Group. This name is reserved by | |
174 | - the following decision of the W3C XML Plenary and | |
175 | - XML Coordination groups: | |
176 | - </p> | |
177 | - <blockquote> | |
178 | - <p> | |
179 | - In appreciation for his vision, leadership and | |
180 | - dedication the W3C XML Plenary on this 10th day of | |
181 | - February, 2000, reserves for Jon Bosak in perpetuity | |
182 | - the XML name "xml:Father". | |
183 | - </p> | |
184 | - </blockquote> | |
185 | - </div> | |
186 | - </div> | |
187 | - </xs:documentation> | |
188 | - </xs:annotation> | |
189 | - | |
190 | - <xs:annotation> | |
191 | - <xs:documentation> | |
192 | - <div xml:id="usage" id="usage"> | |
193 | - <h2><a name="usage">About this schema document</a></h2> | |
194 | - | |
195 | - <div class="bodytext"> | |
196 | - <p> | |
197 | - This schema defines attributes and an attribute group suitable | |
198 | - for use by schemas wishing to allow <code>xml:base</code>, | |
199 | - <code>xml:lang</code>, <code>xml:space</code> or | |
200 | - <code>xml:id</code> attributes on elements they define. | |
201 | - </p> | |
202 | - <p> | |
203 | - To enable this, such a schema must import this schema for | |
204 | - the XML namespace, e.g. as follows: | |
205 | - </p> | |
206 | - <pre> | |
207 | - <schema . . .> | |
208 | - . . . | |
209 | - <import namespace="http://www.w3.org/XML/1998/namespace" | |
210 | - schemaLocation="http://www.w3.org/2001/xml.xsd"/> | |
211 | - </pre> | |
212 | - <p> | |
213 | - or | |
214 | - </p> | |
215 | - <pre> | |
216 | - <import namespace="http://www.w3.org/XML/1998/namespace" | |
217 | - schemaLocation="http://www.w3.org/2009/01/xml.xsd"/> | |
218 | - </pre> | |
219 | - <p> | |
220 | - Subsequently, qualified reference to any of the attributes or the | |
221 | - group defined below will have the desired effect, e.g. | |
222 | - </p> | |
223 | - <pre> | |
224 | - <type . . .> | |
225 | - . . . | |
226 | - <attributeGroup ref="xml:specialAttrs"/> | |
227 | - </pre> | |
228 | - <p> | |
229 | - will define a type which will schema-validate an instance element | |
230 | - with any of those attributes. | |
231 | - </p> | |
232 | - </div> | |
233 | - </div> | |
234 | - </xs:documentation> | |
235 | - </xs:annotation> | |
236 | - | |
237 | - <xs:annotation> | |
238 | - <xs:documentation> | |
239 | - <div id="nsversioning" xml:id="nsversioning"> | |
240 | - <h2><a name="nsversioning">Versioning policy for this schema document</a></h2> | |
241 | - <div class="bodytext"> | |
242 | - <p> | |
243 | - In keeping with the XML Schema WG's standard versioning | |
244 | - policy, this schema document will persist at | |
245 | - <a href="http://www.w3.org/2009/01/xml.xsd"> | |
246 | - http://www.w3.org/2009/01/xml.xsd</a>. | |
247 | - </p> | |
248 | - <p> | |
249 | - At the date of issue it can also be found at | |
250 | - <a href="http://www.w3.org/2001/xml.xsd"> | |
251 | - http://www.w3.org/2001/xml.xsd</a>. | |
252 | - </p> | |
253 | - <p> | |
254 | - The schema document at that URI may however change in the future, | |
255 | - in order to remain compatible with the latest version of XML | |
256 | - Schema itself, or with the XML namespace itself. In other words, | |
257 | - if the XML Schema or XML namespaces change, the version of this | |
258 | - document at <a href="http://www.w3.org/2001/xml.xsd"> | |
259 | - http://www.w3.org/2001/xml.xsd | |
260 | - </a> | |
261 | - will change accordingly; the version at | |
262 | - <a href="http://www.w3.org/2009/01/xml.xsd"> | |
263 | - http://www.w3.org/2009/01/xml.xsd | |
264 | - </a> | |
265 | - will not change. | |
266 | - </p> | |
267 | - <p> | |
268 | - Previous dated (and unchanging) versions of this schema | |
269 | - document are at: | |
270 | - </p> | |
271 | - <ul> | |
272 | - <li><a href="http://www.w3.org/2009/01/xml.xsd"> | |
273 | - http://www.w3.org/2009/01/xml.xsd</a></li> | |
274 | - <li><a href="http://www.w3.org/2007/08/xml.xsd"> | |
275 | - http://www.w3.org/2007/08/xml.xsd</a></li> | |
276 | - <li><a href="http://www.w3.org/2004/10/xml.xsd"> | |
277 | - http://www.w3.org/2004/10/xml.xsd</a></li> | |
278 | - <li><a href="http://www.w3.org/2001/03/xml.xsd"> | |
279 | - http://www.w3.org/2001/03/xml.xsd</a></li> | |
280 | - </ul> | |
281 | - </div> | |
282 | - </div> | |
283 | - </xs:documentation> | |
284 | - </xs:annotation> | |
285 | - | |
286 | -</xs:schema> |
@@ -0,0 +1,37 @@ | ||
1 | +<?xml version="1.0" encoding="UTF-8" ?> | |
2 | + | |
3 | +<xsd:schema | |
4 | + xmlns:xsd="http://www.w3.org/2001/XMLSchema" | |
5 | + targetNamespace="http://www.w3.org/XML/1998/namespace" | |
6 | +> | |
7 | + | |
8 | + <xsd:annotation> | |
9 | + <xsd:documentation> | |
10 | + Only for using "xml:space" in XML schema definition. | |
11 | + See | |
12 | + http://www.w3.org/2001/xml.xsd | |
13 | + http://www.w3.org/2009/01/xml.xsd | |
14 | + </xsd:documentation> | |
15 | + </xsd:annotation> | |
16 | + | |
17 | + <xsd:attribute name="space"> | |
18 | + | |
19 | + <xsd:annotation> | |
20 | + <xsd:documentation> | |
21 | + about xml:space attribute | |
22 | + </xsd:documentation> | |
23 | + </xsd:annotation> | |
24 | + | |
25 | + <xsd:simpleType> | |
26 | + <xsd:restriction base="xsd:NCName"> | |
27 | + <xsd:enumeration value="default"/> | |
28 | + <xsd:enumeration value="preserve"/> | |
29 | + </xsd:restriction> | |
30 | + </xsd:simpleType> | |
31 | + | |
32 | + </xsd:attribute> | |
33 | + | |
34 | +</xsd:schema> | |
35 | + | |
36 | + | |
37 | +<!-- EOF --> |