You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by mr...@apache.org on 2011/12/29 05:13:09 UTC
svn commit: r1225426 [14/19] - in /xalan/java/trunk/src: ./
org/apache/xalan/ org/apache/xalan/res/
org/apache/xalan/xsltc/compiler/util/ org/apache/xalan/xsltc/dom/
org/apache/xalan/xsltc/runtime/ org/apache/xml/dtm/ org/apache/xml/res/
org/apache/xml...
Modified: xalan/java/trunk/src/org/apache/xml/serializer/utils/SerializerMessages_zh.java
URL: http://svn.apache.org/viewvc/xalan/java/trunk/src/org/apache/xml/serializer/utils/SerializerMessages_zh.java?rev=1225426&r1=1225425&r2=1225426&view=diff
==============================================================================
--- xalan/java/trunk/src/org/apache/xml/serializer/utils/SerializerMessages_zh.java (original)
+++ xalan/java/trunk/src/org/apache/xml/serializer/utils/SerializerMessages_zh.java Thu Dec 29 04:13:08 2011
@@ -1,291 +1,291 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-/*
- * $Id: SerializerMessages_zh.java,v 1.7 2005/03/07 20:34:36 minchau Exp $
- */
-
-
-package org.apache.xml.serializer.utils;
-
-import java.util.ListResourceBundle;
-import java.util.Locale;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-/**
- * An instance of this class is a ListResourceBundle that
- * has the required getContents() method that returns
- * an array of message-key/message associations.
- * <p>
- * The message keys are defined in {@link MsgKey}. The
- * messages that those keys map to are defined here.
- * <p>
- * The messages in the English version are intended to be
- * translated.
- *
- * This class is not a public API, it is only public because it is
- * used in org.apache.xml.serializer.
- *
- * @xsl.usage internal
- */
-public class SerializerMessages_zh extends ListResourceBundle {
-
- /*
- * This file contains error and warning messages related to
- * Serializer Error Handling.
- *
- * General notes to translators:
-
- * 1) A stylesheet is a description of how to transform an input XML document
- * into a resultant XML document (or HTML document or text). The
- * stylesheet itself is described in the form of an XML document.
-
- *
- * 2) An element is a mark-up tag in an XML document; an attribute is a
- * modifier on the tag. For example, in <elem attr='val' attr2='val2'>
- * "elem" is an element name, "attr" and "attr2" are attribute names with
- * the values "val" and "val2", respectively.
- *
- * 3) A namespace declaration is a special attribute that is used to associate
- * a prefix with a URI (the namespace). The meanings of element names and
- * attribute names that use that prefix are defined with respect to that
- * namespace.
- *
- *
- */
-
- /** The lookup table for error messages. */
- public Object[][] getContents() {
- Object[][] contents = new Object[][] {
- { MsgKey.BAD_MSGKEY,
- "\u6d88\u606f\u5bc6\u94a5\u201c{0}\u201d\u4e0d\u5728\u6d88\u606f\u7c7b\u201c{1}\u201d\u4e2d" },
-
- { MsgKey.BAD_MSGFORMAT,
- "\u6d88\u606f\u7c7b\u201c{1}\u201d\u4e2d\u7684\u6d88\u606f\u201c{0}\u201d\u7684\u683c\u5f0f\u65e0\u6548\u3002" },
-
- { MsgKey.ER_SERIALIZER_NOT_CONTENTHANDLER,
- "\u4e32\u884c\u5668\u7c7b\u201c{0}\u201d\u4e0d\u80fd\u5b9e\u73b0 org.xml.sax.ContentHandler\u3002" },
-
- { MsgKey.ER_RESOURCE_COULD_NOT_FIND,
- "\u627e\u4e0d\u5230\u8d44\u6e90 [ {0} ]\u3002\n {1}" },
-
- { MsgKey.ER_RESOURCE_COULD_NOT_LOAD,
- "\u8d44\u6e90 [ {0} ] \u65e0\u6cd5\u88c5\u5165\uff1a{1} \n {2} \t {3}" },
-
- { MsgKey.ER_BUFFER_SIZE_LESSTHAN_ZERO,
- "\u7f13\u51b2\u533a\u5927\u5c0f <=0" },
-
- { MsgKey.ER_INVALID_UTF16_SURROGATE,
- "\u68c0\u6d4b\u5230\u65e0\u6548\u7684 UTF-16 \u8d85\u5927\u5b57\u7b26\u96c6\uff1a{0}\uff1f" },
-
- { MsgKey.ER_OIERROR,
- "IO \u9519\u8bef" },
-
- { MsgKey.ER_ILLEGAL_ATTRIBUTE_POSITION,
- "\u5728\u751f\u6210\u5b50\u8282\u70b9\u4e4b\u540e\u6216\u5728\u751f\u6210\u5143\u7d20\u4e4b\u524d\u65e0\u6cd5\u6dfb\u52a0\u5c5e\u6027 {0}\u3002\u5c06\u5ffd\u7565\u5c5e\u6027\u3002" },
-
- /*
- * Note to translators: The stylesheet contained a reference to a
- * namespace prefix that was undefined. The value of the substitution
- * text is the name of the prefix.
- */
- { MsgKey.ER_NAMESPACE_PREFIX,
- "\u5c1a\u672a\u58f0\u660e\u524d\u7f00\u201c{0}\u201d\u7684\u540d\u79f0\u7a7a\u95f4\u3002" },
-
- /*
- * Note to translators: This message is reported if the stylesheet
- * being processed attempted to construct an XML document with an
- * attribute in a place other than on an element. The substitution text
- * specifies the name of the attribute.
- */
- { MsgKey.ER_STRAY_ATTRIBUTE,
- "\u5c5e\u6027\u201c{0}\u201d\u5728\u5143\u7d20\u5916\u3002" },
-
- /*
- * Note to translators: As with the preceding message, a namespace
- * declaration has the form of an attribute and is only permitted to
- * appear on an element. The substitution text {0} is the namespace
- * prefix and {1} is the URI that was being used in the erroneous
- * namespace declaration.
- */
- { MsgKey.ER_STRAY_NAMESPACE,
- "\u540d\u79f0\u7a7a\u95f4\u58f0\u660e\u201c{0}\u201d=\u201c{1}\u201d\u5728\u5143\u7d20\u5916\u3002" },
-
- { MsgKey.ER_COULD_NOT_LOAD_RESOURCE,
- "\u65e0\u6cd5\u88c5\u5165\u201c{0}\u201d\uff08\u68c0\u67e5 CLASSPATH\uff09\uff0c\u73b0\u5728\u53ea\u4f7f\u7528\u7f3a\u7701\u503c" },
-
- { MsgKey.ER_ILLEGAL_CHARACTER,
- "\u5c1d\u8bd5\u8f93\u51fa\u6574\u6570\u503c {0}\uff08\u5b83\u4e0d\u662f\u4ee5\u6307\u5b9a\u7684 {1} \u8f93\u51fa\u7f16\u7801\u8868\u793a\uff09\u7684\u5b57\u7b26\u3002" },
-
- { MsgKey.ER_COULD_NOT_LOAD_METHOD_PROPERTY,
- "\u65e0\u6cd5\u4e3a\u8f93\u51fa\u65b9\u6cd5\u201c{1}\u201d\u88c5\u5165\u5c5e\u6027\u6587\u4ef6\u201c{0}\u201d\uff08\u68c0\u67e5 CLASSPATH\uff09" },
-
- { MsgKey.ER_INVALID_PORT,
- "\u7aef\u53e3\u53f7\u65e0\u6548" },
-
- { MsgKey.ER_PORT_WHEN_HOST_NULL,
- "\u4e3b\u673a\u4e3a\u7a7a\u65f6\uff0c\u65e0\u6cd5\u8bbe\u7f6e\u7aef\u53e3" },
-
- { MsgKey.ER_HOST_ADDRESS_NOT_WELLFORMED,
- "\u4e3b\u673a\u4e0d\u662f\u683c\u5f0f\u6b63\u786e\u7684\u5730\u5740" },
-
- { MsgKey.ER_SCHEME_NOT_CONFORMANT,
- "\u6a21\u5f0f\u4e0d\u4e00\u81f4\u3002" },
-
- { MsgKey.ER_SCHEME_FROM_NULL_STRING,
- "\u65e0\u6cd5\u4ece\u7a7a\u5b57\u7b26\u4e32\u8bbe\u7f6e\u6a21\u5f0f" },
-
- { MsgKey.ER_PATH_CONTAINS_INVALID_ESCAPE_SEQUENCE,
- "\u8def\u5f84\u5305\u542b\u65e0\u6548\u7684\u8f6c\u4e49\u5e8f\u5217" },
-
- { MsgKey.ER_PATH_INVALID_CHAR,
- "\u8def\u5f84\u5305\u542b\u65e0\u6548\u7684\u5b57\u7b26\uff1a{0}" },
-
- { MsgKey.ER_FRAG_INVALID_CHAR,
- "\u7247\u6bb5\u5305\u542b\u65e0\u6548\u7684\u5b57\u7b26" },
-
- { MsgKey.ER_FRAG_WHEN_PATH_NULL,
- "\u8def\u5f84\u4e3a\u7a7a\u65f6\uff0c\u65e0\u6cd5\u8bbe\u7f6e\u7247\u6bb5" },
-
- { MsgKey.ER_FRAG_FOR_GENERIC_URI,
- "\u53ea\u80fd\u4e3a\u7c7b\u5c5e URI \u8bbe\u7f6e\u7247\u6bb5" },
-
- { MsgKey.ER_NO_SCHEME_IN_URI,
- "URI \u4e2d\u627e\u4e0d\u5230\u4efb\u4f55\u6a21\u5f0f" },
-
- { MsgKey.ER_CANNOT_INIT_URI_EMPTY_PARMS,
- "\u4e0d\u80fd\u4ee5\u7a7a\u53c2\u6570\u521d\u59cb\u5316 URI" },
-
- { MsgKey.ER_NO_FRAGMENT_STRING_IN_PATH,
- "\u8def\u5f84\u548c\u7247\u6bb5\u4e2d\u90fd\u4e0d\u80fd\u6307\u5b9a\u7247\u6bb5" },
-
- { MsgKey.ER_NO_QUERY_STRING_IN_PATH,
- "\u8def\u5f84\u548c\u67e5\u8be2\u5b57\u7b26\u4e32\u4e2d\u4e0d\u80fd\u6307\u5b9a\u67e5\u8be2\u5b57\u7b26\u4e32" },
-
- { MsgKey.ER_NO_PORT_IF_NO_HOST,
- "\u5982\u679c\u6ca1\u6709\u6307\u5b9a\u4e3b\u673a\uff0c\u5219\u4e0d\u53ef\u4ee5\u6307\u5b9a\u7aef\u53e3" },
-
- { MsgKey.ER_NO_USERINFO_IF_NO_HOST,
- "\u5982\u679c\u6ca1\u6709\u6307\u5b9a\u4e3b\u673a\uff0c\u5219\u4e0d\u53ef\u4ee5\u6307\u5b9a\u7528\u6237\u4fe1\u606f" },
- { MsgKey.ER_XML_VERSION_NOT_SUPPORTED,
- "\u8b66\u544a\uff1a\u8981\u6c42\u8f93\u51fa\u6587\u6863\u7684\u7248\u672c\u662f\u201c{0}\u201d\u3002\u4e0d\u652f\u6301\u6b64 XML \u7248\u672c\u3002\u8f93\u51fa\u6587\u6863\u7684\u7248\u672c\u5c06\u4f1a\u662f\u201c1.0\u201d\u3002" },
-
- { MsgKey.ER_SCHEME_REQUIRED,
- "\u6a21\u5f0f\u662f\u5fc5\u9700\u7684\uff01" },
-
- /*
- * Note to translators: The words 'Properties' and
- * 'SerializerFactory' in this message are Java class names
- * and should not be translated.
- */
- { MsgKey.ER_FACTORY_PROPERTY_MISSING,
- "\u4f20\u9012\u7ed9 SerializerFactory \u7684 Properties \u5bf9\u8c61\u4e0d\u5177\u6709\u5c5e\u6027\u201c{0}\u201d\u3002" },
-
- {MsgKey.ER_FEATURE_NOT_FOUND,
- "\u672a\u8bc6\u522b\u51fa\u53c2\u6570\u201c{0}\u201d\u3002"},
-
- {MsgKey.ER_FEATURE_NOT_SUPPORTED,
- "\u5df2\u8bc6\u522b\u51fa\u53c2\u6570\u201c{0}\u201d\uff0c\u4f46\u65e0\u6cd5\u8bbe\u7f6e\u8bf7\u6c42\u7684\u503c\u3002"},
-
- {MsgKey.ER_STRING_TOO_LONG,
- "\u4ea7\u751f\u7684\u5b57\u7b26\u4e32\u8fc7\u957f\u4e0d\u80fd\u88c5\u5165 DOMString\uff1a\u201c{0}\u201d\u3002"},
-
- {MsgKey.ER_TYPE_MISMATCH_ERR,
- "\u6b64\u53c2\u6570\u540d\u79f0\u7684\u503c\u7c7b\u578b\u4e0e\u671f\u671b\u7684\u503c\u7c7b\u578b\u4e0d\u517c\u5bb9\u3002"},
-
- {MsgKey.ER_NO_OUTPUT_SPECIFIED,
- "\u5c06\u8981\u5199\u5165\u6570\u636e\u7684\u8f93\u51fa\u76ee\u6807\u4e3a\u7a7a\u3002"},
-
- {MsgKey.ER_UNSUPPORTED_ENCODING,
- "\u9047\u5230\u4e0d\u53d7\u652f\u6301\u7684\u7f16\u7801\u3002"},
-
- {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
- "\u65e0\u6cd5\u5c06\u8282\u70b9\u5e8f\u5217\u5316\u3002 "},
-
- {MsgKey.ER_CDATA_SECTIONS_SPLIT,
- "CDATA \u90e8\u5206\u5305\u542b\u4e00\u4e2a\u6216\u591a\u4e2a\u7ec8\u6b62\u6807\u8bb0\u201c]]>\u201d\u3002"},
-
- {MsgKey.ER_WARNING_WF_NOT_CHECKED,
- "\u65e0\u6cd5\u521b\u5efa\u683c\u5f0f\u6b63\u786e\u6027\u68c0\u67e5\u5668\u7684\u5b9e\u4f8b\u3002\u201c\u683c\u5f0f\u6b63\u786e\u201d\u53c2\u6570\u5df2\u8bbe\u7f6e\u4e3a true\uff0c\u4f46\u65e0\u6cd5\u6267\u884c\u683c\u5f0f\u6b63\u786e\u6027\u68c0\u67e5\u3002"
- },
-
- {MsgKey.ER_WF_INVALID_CHARACTER,
- "\u8282\u70b9\u201c{0}\u201d\u5305\u542b\u65e0\u6548\u7684 XML \u5b57\u7b26\u3002"
- },
-
- { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
- "\u5728\u6ce8\u91ca\u4e2d\u627e\u5230\u65e0\u6548\u7684 XML \u5b57\u7b26 (Unicode: 0x''{0})''\u3002"
- },
-
- { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
- "\u5728\u5904\u7406\u6307\u4ee4\u6570\u636e\u4e2d\u627e\u5230\u65e0\u6548\u7684 XML \u5b57\u7b26 (Unicode: 0x''{0})''\u3002"
- },
-
- { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
- "\u5728 CDATA \u90e8\u5206\u7684\u5185\u5bb9\u4e2d\u627e\u5230\u65e0\u6548\u7684 XML \u5b57\u7b26 (Unicode: 0x''{0})''\u3002"
- },
-
- { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
- "\u5728\u8282\u70b9\u7684\u5b57\u7b26\u6570\u636e\u5185\u5bb9\u4e2d\u627e\u5230\u65e0\u6548\u7684 XML \u5b57\u7b26 (Unicode: 0x''{0})''\u3002"
- },
-
- { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
- "\u540d\u79f0\u4e3a\u201c{1})\u201d\u7684\u201c{0})\u201d\u4e2d\u627e\u5230\u65e0\u6548\u7684 XML \u5b57\u7b26\u3002"
- },
-
- { MsgKey.ER_WF_DASH_IN_COMMENT,
- "\u6ce8\u91ca\u4e2d\u4e0d\u5141\u8bb8\u6709\u5b57\u7b26\u4e32\u201c--\u201d\u3002"
- },
-
- {MsgKey.ER_WF_LT_IN_ATTVAL,
- "\u4e0e\u5143\u7d20\u7c7b\u578b\u201c{0}\u201d\u5173\u8054\u7684\u5c5e\u6027\u201c{1}\u201d\u7684\u503c\u4e0d\u5f97\u5305\u542b\u201c<\u201d\u5b57\u7b26\u3002"
- },
-
- {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
- "\u4e0d\u5141\u8bb8\u6709\u672a\u89e3\u6790\u7684\u5b9e\u4f53\u5f15\u7528\u201c&{0};\u201d\u3002"
- },
-
- {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
- "\u5c5e\u6027\u503c\u4e2d\u4e0d\u5141\u8bb8\u6709\u5916\u90e8\u5b9e\u4f53\u5f15\u7528\u201c&{0};\u201d\u3002"
- },
-
- {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
- "\u524d\u7f00\u201c{0}\u201d\u4e0d\u80fd\u7ed1\u5b9a\u5230\u540d\u79f0\u7a7a\u95f4\u201c{1}\u201d\u3002"
- },
-
- {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
- "\u5143\u7d20\u201c{0}\u201d\u7684\u5c40\u90e8\u540d\u4e3a\u7a7a\u3002"
- },
-
- {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
- "\u5c5e\u6027\u201c{0}\u201d\u7684\u5c40\u90e8\u540d\u4e3a\u7a7a\u3002"
- },
-
- { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
- "\u5b9e\u4f53\u8282\u70b9\u201c{0}\u201d\u7684\u66ff\u4ee3\u6587\u672c\u4e2d\u5305\u542b\u5143\u7d20\u8282\u70b9\u201c{1}\u201d\uff0c\u8be5\u8282\u70b9\u5177\u6709\u672a\u7ed1\u5b9a\u7684\u524d\u7f00\u201c{2}\u201d\u3002"
- },
-
- { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
- "\u5b9e\u4f53\u8282\u70b9\u201c{0}\u201d\u7684\u66ff\u4ee3\u6587\u672c\u4e2d\u5305\u542b\u5c5e\u6027\u8282\u70b9\u201c{1}\u201d\uff0c\u8be5\u8282\u70b9\u5177\u6709\u672a\u7ed1\u5b9a\u7684\u524d\u7f00\u201c{2}\u201d\u3002"
- },
-
- };
-
- return contents;
- }
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/*
+ * $Id$
+ */
+
+
+package org.apache.xml.serializer.utils;
+
+import java.util.ListResourceBundle;
+import java.util.Locale;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+/**
+ * An instance of this class is a ListResourceBundle that
+ * has the required getContents() method that returns
+ * an array of message-key/message associations.
+ * <p>
+ * The message keys are defined in {@link MsgKey}. The
+ * messages that those keys map to are defined here.
+ * <p>
+ * The messages in the English version are intended to be
+ * translated.
+ *
+ * This class is not a public API, it is only public because it is
+ * used in org.apache.xml.serializer.
+ *
+ * @xsl.usage internal
+ */
+public class SerializerMessages_zh extends ListResourceBundle {
+
+ /*
+ * This file contains error and warning messages related to
+ * Serializer Error Handling.
+ *
+ * General notes to translators:
+
+ * 1) A stylesheet is a description of how to transform an input XML document
+ * into a resultant XML document (or HTML document or text). The
+ * stylesheet itself is described in the form of an XML document.
+
+ *
+ * 2) An element is a mark-up tag in an XML document; an attribute is a
+ * modifier on the tag. For example, in <elem attr='val' attr2='val2'>
+ * "elem" is an element name, "attr" and "attr2" are attribute names with
+ * the values "val" and "val2", respectively.
+ *
+ * 3) A namespace declaration is a special attribute that is used to associate
+ * a prefix with a URI (the namespace). The meanings of element names and
+ * attribute names that use that prefix are defined with respect to that
+ * namespace.
+ *
+ *
+ */
+
+ /** The lookup table for error messages. */
+ public Object[][] getContents() {
+ Object[][] contents = new Object[][] {
+ { MsgKey.BAD_MSGKEY,
+ "\u6d88\u606f\u5bc6\u94a5\u201c{0}\u201d\u4e0d\u5728\u6d88\u606f\u7c7b\u201c{1}\u201d\u4e2d" },
+
+ { MsgKey.BAD_MSGFORMAT,
+ "\u6d88\u606f\u7c7b\u201c{1}\u201d\u4e2d\u7684\u6d88\u606f\u201c{0}\u201d\u7684\u683c\u5f0f\u65e0\u6548\u3002" },
+
+ { MsgKey.ER_SERIALIZER_NOT_CONTENTHANDLER,
+ "\u4e32\u884c\u5668\u7c7b\u201c{0}\u201d\u4e0d\u80fd\u5b9e\u73b0 org.xml.sax.ContentHandler\u3002" },
+
+ { MsgKey.ER_RESOURCE_COULD_NOT_FIND,
+ "\u627e\u4e0d\u5230\u8d44\u6e90 [ {0} ]\u3002\n {1}" },
+
+ { MsgKey.ER_RESOURCE_COULD_NOT_LOAD,
+ "\u8d44\u6e90 [ {0} ] \u65e0\u6cd5\u88c5\u5165\uff1a{1} \n {2} \t {3}" },
+
+ { MsgKey.ER_BUFFER_SIZE_LESSTHAN_ZERO,
+ "\u7f13\u51b2\u533a\u5927\u5c0f <=0" },
+
+ { MsgKey.ER_INVALID_UTF16_SURROGATE,
+ "\u68c0\u6d4b\u5230\u65e0\u6548\u7684 UTF-16 \u8d85\u5927\u5b57\u7b26\u96c6\uff1a{0}\uff1f" },
+
+ { MsgKey.ER_OIERROR,
+ "IO \u9519\u8bef" },
+
+ { MsgKey.ER_ILLEGAL_ATTRIBUTE_POSITION,
+ "\u5728\u751f\u6210\u5b50\u8282\u70b9\u4e4b\u540e\u6216\u5728\u751f\u6210\u5143\u7d20\u4e4b\u524d\u65e0\u6cd5\u6dfb\u52a0\u5c5e\u6027 {0}\u3002\u5c06\u5ffd\u7565\u5c5e\u6027\u3002" },
+
+ /*
+ * Note to translators: The stylesheet contained a reference to a
+ * namespace prefix that was undefined. The value of the substitution
+ * text is the name of the prefix.
+ */
+ { MsgKey.ER_NAMESPACE_PREFIX,
+ "\u5c1a\u672a\u58f0\u660e\u524d\u7f00\u201c{0}\u201d\u7684\u540d\u79f0\u7a7a\u95f4\u3002" },
+
+ /*
+ * Note to translators: This message is reported if the stylesheet
+ * being processed attempted to construct an XML document with an
+ * attribute in a place other than on an element. The substitution text
+ * specifies the name of the attribute.
+ */
+ { MsgKey.ER_STRAY_ATTRIBUTE,
+ "\u5c5e\u6027\u201c{0}\u201d\u5728\u5143\u7d20\u5916\u3002" },
+
+ /*
+ * Note to translators: As with the preceding message, a namespace
+ * declaration has the form of an attribute and is only permitted to
+ * appear on an element. The substitution text {0} is the namespace
+ * prefix and {1} is the URI that was being used in the erroneous
+ * namespace declaration.
+ */
+ { MsgKey.ER_STRAY_NAMESPACE,
+ "\u540d\u79f0\u7a7a\u95f4\u58f0\u660e\u201c{0}\u201d=\u201c{1}\u201d\u5728\u5143\u7d20\u5916\u3002" },
+
+ { MsgKey.ER_COULD_NOT_LOAD_RESOURCE,
+ "\u65e0\u6cd5\u88c5\u5165\u201c{0}\u201d\uff08\u68c0\u67e5 CLASSPATH\uff09\uff0c\u73b0\u5728\u53ea\u4f7f\u7528\u7f3a\u7701\u503c" },
+
+ { MsgKey.ER_ILLEGAL_CHARACTER,
+ "\u5c1d\u8bd5\u8f93\u51fa\u6574\u6570\u503c {0}\uff08\u5b83\u4e0d\u662f\u4ee5\u6307\u5b9a\u7684 {1} \u8f93\u51fa\u7f16\u7801\u8868\u793a\uff09\u7684\u5b57\u7b26\u3002" },
+
+ { MsgKey.ER_COULD_NOT_LOAD_METHOD_PROPERTY,
+ "\u65e0\u6cd5\u4e3a\u8f93\u51fa\u65b9\u6cd5\u201c{1}\u201d\u88c5\u5165\u5c5e\u6027\u6587\u4ef6\u201c{0}\u201d\uff08\u68c0\u67e5 CLASSPATH\uff09" },
+
+ { MsgKey.ER_INVALID_PORT,
+ "\u7aef\u53e3\u53f7\u65e0\u6548" },
+
+ { MsgKey.ER_PORT_WHEN_HOST_NULL,
+ "\u4e3b\u673a\u4e3a\u7a7a\u65f6\uff0c\u65e0\u6cd5\u8bbe\u7f6e\u7aef\u53e3" },
+
+ { MsgKey.ER_HOST_ADDRESS_NOT_WELLFORMED,
+ "\u4e3b\u673a\u4e0d\u662f\u683c\u5f0f\u6b63\u786e\u7684\u5730\u5740" },
+
+ { MsgKey.ER_SCHEME_NOT_CONFORMANT,
+ "\u6a21\u5f0f\u4e0d\u4e00\u81f4\u3002" },
+
+ { MsgKey.ER_SCHEME_FROM_NULL_STRING,
+ "\u65e0\u6cd5\u4ece\u7a7a\u5b57\u7b26\u4e32\u8bbe\u7f6e\u6a21\u5f0f" },
+
+ { MsgKey.ER_PATH_CONTAINS_INVALID_ESCAPE_SEQUENCE,
+ "\u8def\u5f84\u5305\u542b\u65e0\u6548\u7684\u8f6c\u4e49\u5e8f\u5217" },
+
+ { MsgKey.ER_PATH_INVALID_CHAR,
+ "\u8def\u5f84\u5305\u542b\u65e0\u6548\u7684\u5b57\u7b26\uff1a{0}" },
+
+ { MsgKey.ER_FRAG_INVALID_CHAR,
+ "\u7247\u6bb5\u5305\u542b\u65e0\u6548\u7684\u5b57\u7b26" },
+
+ { MsgKey.ER_FRAG_WHEN_PATH_NULL,
+ "\u8def\u5f84\u4e3a\u7a7a\u65f6\uff0c\u65e0\u6cd5\u8bbe\u7f6e\u7247\u6bb5" },
+
+ { MsgKey.ER_FRAG_FOR_GENERIC_URI,
+ "\u53ea\u80fd\u4e3a\u7c7b\u5c5e URI \u8bbe\u7f6e\u7247\u6bb5" },
+
+ { MsgKey.ER_NO_SCHEME_IN_URI,
+ "URI \u4e2d\u627e\u4e0d\u5230\u4efb\u4f55\u6a21\u5f0f" },
+
+ { MsgKey.ER_CANNOT_INIT_URI_EMPTY_PARMS,
+ "\u4e0d\u80fd\u4ee5\u7a7a\u53c2\u6570\u521d\u59cb\u5316 URI" },
+
+ { MsgKey.ER_NO_FRAGMENT_STRING_IN_PATH,
+ "\u8def\u5f84\u548c\u7247\u6bb5\u4e2d\u90fd\u4e0d\u80fd\u6307\u5b9a\u7247\u6bb5" },
+
+ { MsgKey.ER_NO_QUERY_STRING_IN_PATH,
+ "\u8def\u5f84\u548c\u67e5\u8be2\u5b57\u7b26\u4e32\u4e2d\u4e0d\u80fd\u6307\u5b9a\u67e5\u8be2\u5b57\u7b26\u4e32" },
+
+ { MsgKey.ER_NO_PORT_IF_NO_HOST,
+ "\u5982\u679c\u6ca1\u6709\u6307\u5b9a\u4e3b\u673a\uff0c\u5219\u4e0d\u53ef\u4ee5\u6307\u5b9a\u7aef\u53e3" },
+
+ { MsgKey.ER_NO_USERINFO_IF_NO_HOST,
+ "\u5982\u679c\u6ca1\u6709\u6307\u5b9a\u4e3b\u673a\uff0c\u5219\u4e0d\u53ef\u4ee5\u6307\u5b9a\u7528\u6237\u4fe1\u606f" },
+ { MsgKey.ER_XML_VERSION_NOT_SUPPORTED,
+ "\u8b66\u544a\uff1a\u8981\u6c42\u8f93\u51fa\u6587\u6863\u7684\u7248\u672c\u662f\u201c{0}\u201d\u3002\u4e0d\u652f\u6301\u6b64 XML \u7248\u672c\u3002\u8f93\u51fa\u6587\u6863\u7684\u7248\u672c\u5c06\u4f1a\u662f\u201c1.0\u201d\u3002" },
+
+ { MsgKey.ER_SCHEME_REQUIRED,
+ "\u6a21\u5f0f\u662f\u5fc5\u9700\u7684\uff01" },
+
+ /*
+ * Note to translators: The words 'Properties' and
+ * 'SerializerFactory' in this message are Java class names
+ * and should not be translated.
+ */
+ { MsgKey.ER_FACTORY_PROPERTY_MISSING,
+ "\u4f20\u9012\u7ed9 SerializerFactory \u7684 Properties \u5bf9\u8c61\u4e0d\u5177\u6709\u5c5e\u6027\u201c{0}\u201d\u3002" },
+
+ {MsgKey.ER_FEATURE_NOT_FOUND,
+ "\u672a\u8bc6\u522b\u51fa\u53c2\u6570\u201c{0}\u201d\u3002"},
+
+ {MsgKey.ER_FEATURE_NOT_SUPPORTED,
+ "\u5df2\u8bc6\u522b\u51fa\u53c2\u6570\u201c{0}\u201d\uff0c\u4f46\u65e0\u6cd5\u8bbe\u7f6e\u8bf7\u6c42\u7684\u503c\u3002"},
+
+ {MsgKey.ER_STRING_TOO_LONG,
+ "\u4ea7\u751f\u7684\u5b57\u7b26\u4e32\u8fc7\u957f\u4e0d\u80fd\u88c5\u5165 DOMString\uff1a\u201c{0}\u201d\u3002"},
+
+ {MsgKey.ER_TYPE_MISMATCH_ERR,
+ "\u6b64\u53c2\u6570\u540d\u79f0\u7684\u503c\u7c7b\u578b\u4e0e\u671f\u671b\u7684\u503c\u7c7b\u578b\u4e0d\u517c\u5bb9\u3002"},
+
+ {MsgKey.ER_NO_OUTPUT_SPECIFIED,
+ "\u5c06\u8981\u5199\u5165\u6570\u636e\u7684\u8f93\u51fa\u76ee\u6807\u4e3a\u7a7a\u3002"},
+
+ {MsgKey.ER_UNSUPPORTED_ENCODING,
+ "\u9047\u5230\u4e0d\u53d7\u652f\u6301\u7684\u7f16\u7801\u3002"},
+
+ {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
+ "\u65e0\u6cd5\u5c06\u8282\u70b9\u5e8f\u5217\u5316\u3002 "},
+
+ {MsgKey.ER_CDATA_SECTIONS_SPLIT,
+ "CDATA \u90e8\u5206\u5305\u542b\u4e00\u4e2a\u6216\u591a\u4e2a\u7ec8\u6b62\u6807\u8bb0\u201c]]>\u201d\u3002"},
+
+ {MsgKey.ER_WARNING_WF_NOT_CHECKED,
+ "\u65e0\u6cd5\u521b\u5efa\u683c\u5f0f\u6b63\u786e\u6027\u68c0\u67e5\u5668\u7684\u5b9e\u4f8b\u3002\u201c\u683c\u5f0f\u6b63\u786e\u201d\u53c2\u6570\u5df2\u8bbe\u7f6e\u4e3a true\uff0c\u4f46\u65e0\u6cd5\u6267\u884c\u683c\u5f0f\u6b63\u786e\u6027\u68c0\u67e5\u3002"
+ },
+
+ {MsgKey.ER_WF_INVALID_CHARACTER,
+ "\u8282\u70b9\u201c{0}\u201d\u5305\u542b\u65e0\u6548\u7684 XML \u5b57\u7b26\u3002"
+ },
+
+ { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
+ "\u5728\u6ce8\u91ca\u4e2d\u627e\u5230\u65e0\u6548\u7684 XML \u5b57\u7b26 (Unicode: 0x''{0})''\u3002"
+ },
+
+ { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
+ "\u5728\u5904\u7406\u6307\u4ee4\u6570\u636e\u4e2d\u627e\u5230\u65e0\u6548\u7684 XML \u5b57\u7b26 (Unicode: 0x''{0})''\u3002"
+ },
+
+ { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
+ "\u5728 CDATA \u90e8\u5206\u7684\u5185\u5bb9\u4e2d\u627e\u5230\u65e0\u6548\u7684 XML \u5b57\u7b26 (Unicode: 0x''{0})''\u3002"
+ },
+
+ { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
+ "\u5728\u8282\u70b9\u7684\u5b57\u7b26\u6570\u636e\u5185\u5bb9\u4e2d\u627e\u5230\u65e0\u6548\u7684 XML \u5b57\u7b26 (Unicode: 0x''{0})''\u3002"
+ },
+
+ { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
+ "\u540d\u79f0\u4e3a\u201c{1})\u201d\u7684\u201c{0})\u201d\u4e2d\u627e\u5230\u65e0\u6548\u7684 XML \u5b57\u7b26\u3002"
+ },
+
+ { MsgKey.ER_WF_DASH_IN_COMMENT,
+ "\u6ce8\u91ca\u4e2d\u4e0d\u5141\u8bb8\u6709\u5b57\u7b26\u4e32\u201c--\u201d\u3002"
+ },
+
+ {MsgKey.ER_WF_LT_IN_ATTVAL,
+ "\u4e0e\u5143\u7d20\u7c7b\u578b\u201c{0}\u201d\u5173\u8054\u7684\u5c5e\u6027\u201c{1}\u201d\u7684\u503c\u4e0d\u5f97\u5305\u542b\u201c<\u201d\u5b57\u7b26\u3002"
+ },
+
+ {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
+ "\u4e0d\u5141\u8bb8\u6709\u672a\u89e3\u6790\u7684\u5b9e\u4f53\u5f15\u7528\u201c&{0};\u201d\u3002"
+ },
+
+ {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
+ "\u5c5e\u6027\u503c\u4e2d\u4e0d\u5141\u8bb8\u6709\u5916\u90e8\u5b9e\u4f53\u5f15\u7528\u201c&{0};\u201d\u3002"
+ },
+
+ {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
+ "\u524d\u7f00\u201c{0}\u201d\u4e0d\u80fd\u7ed1\u5b9a\u5230\u540d\u79f0\u7a7a\u95f4\u201c{1}\u201d\u3002"
+ },
+
+ {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
+ "\u5143\u7d20\u201c{0}\u201d\u7684\u5c40\u90e8\u540d\u4e3a\u7a7a\u3002"
+ },
+
+ {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
+ "\u5c5e\u6027\u201c{0}\u201d\u7684\u5c40\u90e8\u540d\u4e3a\u7a7a\u3002"
+ },
+
+ { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
+ "\u5b9e\u4f53\u8282\u70b9\u201c{0}\u201d\u7684\u66ff\u4ee3\u6587\u672c\u4e2d\u5305\u542b\u5143\u7d20\u8282\u70b9\u201c{1}\u201d\uff0c\u8be5\u8282\u70b9\u5177\u6709\u672a\u7ed1\u5b9a\u7684\u524d\u7f00\u201c{2}\u201d\u3002"
+ },
+
+ { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
+ "\u5b9e\u4f53\u8282\u70b9\u201c{0}\u201d\u7684\u66ff\u4ee3\u6587\u672c\u4e2d\u5305\u542b\u5c5e\u6027\u8282\u70b9\u201c{1}\u201d\uff0c\u8be5\u8282\u70b9\u5177\u6709\u672a\u7ed1\u5b9a\u7684\u524d\u7f00\u201c{2}\u201d\u3002"
+ },
+
+ };
+
+ return contents;
+ }
+}
Propchange: xalan/java/trunk/src/org/apache/xml/serializer/utils/SerializerMessages_zh.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xalan/java/trunk/src/org/apache/xml/serializer/utils/SerializerMessages_zh.java
('svn:executable' removed)
Propchange: xalan/java/trunk/src/org/apache/xml/serializer/utils/SerializerMessages_zh.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified: xalan/java/trunk/src/org/apache/xml/serializer/utils/XML11Char.java
URL: http://svn.apache.org/viewvc/xalan/java/trunk/src/org/apache/xml/serializer/utils/XML11Char.java?rev=1225426&r1=1225425&r2=1225426&view=diff
==============================================================================
--- xalan/java/trunk/src/org/apache/xml/serializer/utils/XML11Char.java (original)
+++ xalan/java/trunk/src/org/apache/xml/serializer/utils/XML11Char.java Thu Dec 29 04:13:08 2011
@@ -1,414 +1,414 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.xml.serializer.utils;
-
-import java.util.Arrays;
-
-/**
- * THIS IS A COPY OF THE XERCES-2J CLASS org.apache.xerces.utls.XMLChar
- *
- * This class defines the basic properties of characters in XML 1.1. The data
- * in this class can be used to verify that a character is a valid
- * XML 1.1 character or if the character is a space, name start, or name
- * character.
- * <p>
- * A series of convenience methods are supplied to ease the burden
- * of the developer. Using the character as an index into the <code>XML11CHARS</code>
- * array and applying the appropriate mask flag (e.g.
- * <code>MASK_VALID</code>), yields the same results as calling the
- * convenience methods. There is one exception: check the comments
- * for the <code>isValid</code> method for details.
- *
- * @author Glenn Marcy, IBM
- * @author Andy Clark, IBM
- * @author Arnaud Le Hors, IBM
- * @author Neil Graham, IBM
- * @author Michael Glavassevich, IBM
- *
- * @version $Id: $
- */
-public class XML11Char {
-
- //
- // Constants
- //
-
- /** Character flags for XML 1.1. */
- private static final byte XML11CHARS [] = new byte [1 << 16];
-
- /** XML 1.1 Valid character mask. */
- public static final int MASK_XML11_VALID = 0x01;
-
- /** XML 1.1 Space character mask. */
- public static final int MASK_XML11_SPACE = 0x02;
-
- /** XML 1.1 Name start character mask. */
- public static final int MASK_XML11_NAME_START = 0x04;
-
- /** XML 1.1 Name character mask. */
- public static final int MASK_XML11_NAME = 0x08;
-
- /** XML 1.1 control character mask */
- public static final int MASK_XML11_CONTROL = 0x10;
-
- /** XML 1.1 content for external entities (valid - "special" chars - control chars) */
- public static final int MASK_XML11_CONTENT = 0x20;
-
- /** XML namespaces 1.1 NCNameStart */
- public static final int MASK_XML11_NCNAME_START = 0x40;
-
- /** XML namespaces 1.1 NCName */
- public static final int MASK_XML11_NCNAME = 0x80;
-
- /** XML 1.1 content for internal entities (valid - "special" chars) */
- public static final int MASK_XML11_CONTENT_INTERNAL = MASK_XML11_CONTROL | MASK_XML11_CONTENT;
-
- //
- // Static initialization
- //
-
- static {
-
- // Initializing the Character Flag Array
- // Code generated by: XML11CharGenerator.
-
- Arrays.fill(XML11CHARS, 1, 9, (byte) 17 ); // Fill 8 of value (byte) 17
- XML11CHARS[9] = 35;
- XML11CHARS[10] = 3;
- Arrays.fill(XML11CHARS, 11, 13, (byte) 17 ); // Fill 2 of value (byte) 17
- XML11CHARS[13] = 3;
- Arrays.fill(XML11CHARS, 14, 32, (byte) 17 ); // Fill 18 of value (byte) 17
- XML11CHARS[32] = 35;
- Arrays.fill(XML11CHARS, 33, 38, (byte) 33 ); // Fill 5 of value (byte) 33
- XML11CHARS[38] = 1;
- Arrays.fill(XML11CHARS, 39, 45, (byte) 33 ); // Fill 6 of value (byte) 33
- Arrays.fill(XML11CHARS, 45, 47, (byte) -87 ); // Fill 2 of value (byte) -87
- XML11CHARS[47] = 33;
- Arrays.fill(XML11CHARS, 48, 58, (byte) -87 ); // Fill 10 of value (byte) -87
- XML11CHARS[58] = 45;
- XML11CHARS[59] = 33;
- XML11CHARS[60] = 1;
- Arrays.fill(XML11CHARS, 61, 65, (byte) 33 ); // Fill 4 of value (byte) 33
- Arrays.fill(XML11CHARS, 65, 91, (byte) -19 ); // Fill 26 of value (byte) -19
- Arrays.fill(XML11CHARS, 91, 93, (byte) 33 ); // Fill 2 of value (byte) 33
- XML11CHARS[93] = 1;
- XML11CHARS[94] = 33;
- XML11CHARS[95] = -19;
- XML11CHARS[96] = 33;
- Arrays.fill(XML11CHARS, 97, 123, (byte) -19 ); // Fill 26 of value (byte) -19
- Arrays.fill(XML11CHARS, 123, 127, (byte) 33 ); // Fill 4 of value (byte) 33
- Arrays.fill(XML11CHARS, 127, 133, (byte) 17 ); // Fill 6 of value (byte) 17
- XML11CHARS[133] = 35;
- Arrays.fill(XML11CHARS, 134, 160, (byte) 17 ); // Fill 26 of value (byte) 17
- Arrays.fill(XML11CHARS, 160, 183, (byte) 33 ); // Fill 23 of value (byte) 33
- XML11CHARS[183] = -87;
- Arrays.fill(XML11CHARS, 184, 192, (byte) 33 ); // Fill 8 of value (byte) 33
- Arrays.fill(XML11CHARS, 192, 215, (byte) -19 ); // Fill 23 of value (byte) -19
- XML11CHARS[215] = 33;
- Arrays.fill(XML11CHARS, 216, 247, (byte) -19 ); // Fill 31 of value (byte) -19
- XML11CHARS[247] = 33;
- Arrays.fill(XML11CHARS, 248, 768, (byte) -19 ); // Fill 520 of value (byte) -19
- Arrays.fill(XML11CHARS, 768, 880, (byte) -87 ); // Fill 112 of value (byte) -87
- Arrays.fill(XML11CHARS, 880, 894, (byte) -19 ); // Fill 14 of value (byte) -19
- XML11CHARS[894] = 33;
- Arrays.fill(XML11CHARS, 895, 8192, (byte) -19 ); // Fill 7297 of value (byte) -19
- Arrays.fill(XML11CHARS, 8192, 8204, (byte) 33 ); // Fill 12 of value (byte) 33
- Arrays.fill(XML11CHARS, 8204, 8206, (byte) -19 ); // Fill 2 of value (byte) -19
- Arrays.fill(XML11CHARS, 8206, 8232, (byte) 33 ); // Fill 26 of value (byte) 33
- XML11CHARS[8232] = 35;
- Arrays.fill(XML11CHARS, 8233, 8255, (byte) 33 ); // Fill 22 of value (byte) 33
- Arrays.fill(XML11CHARS, 8255, 8257, (byte) -87 ); // Fill 2 of value (byte) -87
- Arrays.fill(XML11CHARS, 8257, 8304, (byte) 33 ); // Fill 47 of value (byte) 33
- Arrays.fill(XML11CHARS, 8304, 8592, (byte) -19 ); // Fill 288 of value (byte) -19
- Arrays.fill(XML11CHARS, 8592, 11264, (byte) 33 ); // Fill 2672 of value (byte) 33
- Arrays.fill(XML11CHARS, 11264, 12272, (byte) -19 ); // Fill 1008 of value (byte) -19
- Arrays.fill(XML11CHARS, 12272, 12289, (byte) 33 ); // Fill 17 of value (byte) 33
- Arrays.fill(XML11CHARS, 12289, 55296, (byte) -19 ); // Fill 43007 of value (byte) -19
- Arrays.fill(XML11CHARS, 57344, 63744, (byte) 33 ); // Fill 6400 of value (byte) 33
- Arrays.fill(XML11CHARS, 63744, 64976, (byte) -19 ); // Fill 1232 of value (byte) -19
- Arrays.fill(XML11CHARS, 64976, 65008, (byte) 33 ); // Fill 32 of value (byte) 33
- Arrays.fill(XML11CHARS, 65008, 65534, (byte) -19 ); // Fill 526 of value (byte) -19
-
- } // <clinit>()
-
- //
- // Public static methods
- //
-
- /**
- * Returns true if the specified character is a space character
- * as amdended in the XML 1.1 specification.
- *
- * @param c The character to check.
- */
- public static boolean isXML11Space(int c) {
- return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_SPACE) != 0);
- } // isXML11Space(int):boolean
-
- /**
- * Returns true if the specified character is valid. This method
- * also checks the surrogate character range from 0x10000 to 0x10FFFF.
- * <p>
- * If the program chooses to apply the mask directly to the
- * <code>XML11CHARS</code> array, then they are responsible for checking
- * the surrogate character range.
- *
- * @param c The character to check.
- */
- public static boolean isXML11Valid(int c) {
- return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_VALID) != 0)
- || (0x10000 <= c && c <= 0x10FFFF);
- } // isXML11Valid(int):boolean
-
- /**
- * Returns true if the specified character is invalid.
- *
- * @param c The character to check.
- */
- public static boolean isXML11Invalid(int c) {
- return !isXML11Valid(c);
- } // isXML11Invalid(int):boolean
-
- /**
- * Returns true if the specified character is valid and permitted outside
- * of a character reference.
- * That is, this method will return false for the same set as
- * isXML11Valid, except it also reports false for "control characters".
- *
- * @param c The character to check.
- */
- public static boolean isXML11ValidLiteral(int c) {
- return ((c < 0x10000 && ((XML11CHARS[c] & MASK_XML11_VALID) != 0 && (XML11CHARS[c] & MASK_XML11_CONTROL) == 0))
- || (0x10000 <= c && c <= 0x10FFFF));
- } // isXML11ValidLiteral(int):boolean
-
- /**
- * Returns true if the specified character can be considered
- * content in an external parsed entity.
- *
- * @param c The character to check.
- */
- public static boolean isXML11Content(int c) {
- return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_CONTENT) != 0) ||
- (0x10000 <= c && c <= 0x10FFFF);
- } // isXML11Content(int):boolean
-
- /**
- * Returns true if the specified character can be considered
- * content in an internal parsed entity.
- *
- * @param c The character to check.
- */
- public static boolean isXML11InternalEntityContent(int c) {
- return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_CONTENT_INTERNAL) != 0) ||
- (0x10000 <= c && c <= 0x10FFFF);
- } // isXML11InternalEntityContent(int):boolean
-
- /**
- * Returns true if the specified character is a valid name start
- * character as defined by production [4] in the XML 1.1
- * specification.
- *
- * @param c The character to check.
- */
- public static boolean isXML11NameStart(int c) {
- return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_NAME_START) != 0)
- || (0x10000 <= c && c < 0xF0000);
- } // isXML11NameStart(int):boolean
-
- /**
- * Returns true if the specified character is a valid name
- * character as defined by production [4a] in the XML 1.1
- * specification.
- *
- * @param c The character to check.
- */
- public static boolean isXML11Name(int c) {
- return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_NAME) != 0)
- || (c >= 0x10000 && c < 0xF0000);
- } // isXML11Name(int):boolean
-
- /**
- * Returns true if the specified character is a valid NCName start
- * character as defined by production [4] in Namespaces in XML
- * 1.1 recommendation.
- *
- * @param c The character to check.
- */
- public static boolean isXML11NCNameStart(int c) {
- return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_NCNAME_START) != 0)
- || (0x10000 <= c && c < 0xF0000);
- } // isXML11NCNameStart(int):boolean
-
- /**
- * Returns true if the specified character is a valid NCName
- * character as defined by production [5] in Namespaces in XML
- * 1.1 recommendation.
- *
- * @param c The character to check.
- */
- public static boolean isXML11NCName(int c) {
- return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_NCNAME) != 0)
- || (0x10000 <= c && c < 0xF0000);
- } // isXML11NCName(int):boolean
-
- /**
- * Returns whether the given character is a valid
- * high surrogate for a name character. This includes
- * all high surrogates for characters [0x10000-0xEFFFF].
- * In other words everything excluding planes 15 and 16.
- *
- * @param c The character to check.
- */
- public static boolean isXML11NameHighSurrogate(int c) {
- return (0xD800 <= c && c <= 0xDB7F);
- }
-
- /*
- * [5] Name ::= NameStartChar NameChar*
- */
- /**
- * Check to see if a string is a valid Name according to [5]
- * in the XML 1.1 Recommendation
- *
- * @param name string to check
- * @return true if name is a valid Name
- */
- public static boolean isXML11ValidName(String name) {
- int length = name.length();
- if (length == 0)
- return false;
- int i = 1;
- char ch = name.charAt(0);
- if( !isXML11NameStart(ch) ) {
- if ( length > 1 && isXML11NameHighSurrogate(ch) ) {
- char ch2 = name.charAt(1);
- if ( !XMLChar.isLowSurrogate(ch2) ||
- !isXML11NameStart(XMLChar.supplemental(ch, ch2)) ) {
- return false;
- }
- i = 2;
- }
- else {
- return false;
- }
- }
- while (i < length) {
- ch = name.charAt(i);
- if ( !isXML11Name(ch) ) {
- if ( ++i < length && isXML11NameHighSurrogate(ch) ) {
- char ch2 = name.charAt(i);
- if ( !XMLChar.isLowSurrogate(ch2) ||
- !isXML11Name(XMLChar.supplemental(ch, ch2)) ) {
- return false;
- }
- }
- else {
- return false;
- }
- }
- ++i;
- }
- return true;
- } // isXML11ValidName(String):boolean
-
-
- /*
- * from the namespace 1.1 rec
- * [4] NCName ::= NCNameStartChar NCNameChar*
- */
- /**
- * Check to see if a string is a valid NCName according to [4]
- * from the XML Namespaces 1.1 Recommendation
- *
- * @param ncName string to check
- * @return true if name is a valid NCName
- */
- public static boolean isXML11ValidNCName(String ncName) {
- int length = ncName.length();
- if (length == 0)
- return false;
- int i = 1;
- char ch = ncName.charAt(0);
- if( !isXML11NCNameStart(ch) ) {
- if ( length > 1 && isXML11NameHighSurrogate(ch) ) {
- char ch2 = ncName.charAt(1);
- if ( !XMLChar.isLowSurrogate(ch2) ||
- !isXML11NCNameStart(XMLChar.supplemental(ch, ch2)) ) {
- return false;
- }
- i = 2;
- }
- else {
- return false;
- }
- }
- while (i < length) {
- ch = ncName.charAt(i);
- if ( !isXML11NCName(ch) ) {
- if ( ++i < length && isXML11NameHighSurrogate(ch) ) {
- char ch2 = ncName.charAt(i);
- if ( !XMLChar.isLowSurrogate(ch2) ||
- !isXML11NCName(XMLChar.supplemental(ch, ch2)) ) {
- return false;
- }
- }
- else {
- return false;
- }
- }
- ++i;
- }
- return true;
- } // isXML11ValidNCName(String):boolean
-
- /*
- * [7] Nmtoken ::= (NameChar)+
- */
- /**
- * Check to see if a string is a valid Nmtoken according to [7]
- * in the XML 1.1 Recommendation
- *
- * @param nmtoken string to check
- * @return true if nmtoken is a valid Nmtoken
- */
- public static boolean isXML11ValidNmtoken(String nmtoken) {
- int length = nmtoken.length();
- if (length == 0)
- return false;
- for (int i = 0; i < length; ++i ) {
- char ch = nmtoken.charAt(i);
- if( !isXML11Name(ch) ) {
- if ( ++i < length && isXML11NameHighSurrogate(ch) ) {
- char ch2 = nmtoken.charAt(i);
- if ( !XMLChar.isLowSurrogate(ch2) ||
- !isXML11Name(XMLChar.supplemental(ch, ch2)) ) {
- return false;
- }
- }
- else {
- return false;
- }
- }
- }
- return true;
- } // isXML11ValidName(String):boolean
-
-} // class XML11Char
-
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.xml.serializer.utils;
+
+import java.util.Arrays;
+
+/**
+ * THIS IS A COPY OF THE XERCES-2J CLASS org.apache.xerces.utls.XMLChar
+ *
+ * This class defines the basic properties of characters in XML 1.1. The data
+ * in this class can be used to verify that a character is a valid
+ * XML 1.1 character or if the character is a space, name start, or name
+ * character.
+ * <p>
+ * A series of convenience methods are supplied to ease the burden
+ * of the developer. Using the character as an index into the <code>XML11CHARS</code>
+ * array and applying the appropriate mask flag (e.g.
+ * <code>MASK_VALID</code>), yields the same results as calling the
+ * convenience methods. There is one exception: check the comments
+ * for the <code>isValid</code> method for details.
+ *
+ * @author Glenn Marcy, IBM
+ * @author Andy Clark, IBM
+ * @author Arnaud Le Hors, IBM
+ * @author Neil Graham, IBM
+ * @author Michael Glavassevich, IBM
+ *
+ * @version $Id$
+ */
+public class XML11Char {
+
+ //
+ // Constants
+ //
+
+ /** Character flags for XML 1.1. */
+ private static final byte XML11CHARS [] = new byte [1 << 16];
+
+ /** XML 1.1 Valid character mask. */
+ public static final int MASK_XML11_VALID = 0x01;
+
+ /** XML 1.1 Space character mask. */
+ public static final int MASK_XML11_SPACE = 0x02;
+
+ /** XML 1.1 Name start character mask. */
+ public static final int MASK_XML11_NAME_START = 0x04;
+
+ /** XML 1.1 Name character mask. */
+ public static final int MASK_XML11_NAME = 0x08;
+
+ /** XML 1.1 control character mask */
+ public static final int MASK_XML11_CONTROL = 0x10;
+
+ /** XML 1.1 content for external entities (valid - "special" chars - control chars) */
+ public static final int MASK_XML11_CONTENT = 0x20;
+
+ /** XML namespaces 1.1 NCNameStart */
+ public static final int MASK_XML11_NCNAME_START = 0x40;
+
+ /** XML namespaces 1.1 NCName */
+ public static final int MASK_XML11_NCNAME = 0x80;
+
+ /** XML 1.1 content for internal entities (valid - "special" chars) */
+ public static final int MASK_XML11_CONTENT_INTERNAL = MASK_XML11_CONTROL | MASK_XML11_CONTENT;
+
+ //
+ // Static initialization
+ //
+
+ static {
+
+ // Initializing the Character Flag Array
+ // Code generated by: XML11CharGenerator.
+
+ Arrays.fill(XML11CHARS, 1, 9, (byte) 17 ); // Fill 8 of value (byte) 17
+ XML11CHARS[9] = 35;
+ XML11CHARS[10] = 3;
+ Arrays.fill(XML11CHARS, 11, 13, (byte) 17 ); // Fill 2 of value (byte) 17
+ XML11CHARS[13] = 3;
+ Arrays.fill(XML11CHARS, 14, 32, (byte) 17 ); // Fill 18 of value (byte) 17
+ XML11CHARS[32] = 35;
+ Arrays.fill(XML11CHARS, 33, 38, (byte) 33 ); // Fill 5 of value (byte) 33
+ XML11CHARS[38] = 1;
+ Arrays.fill(XML11CHARS, 39, 45, (byte) 33 ); // Fill 6 of value (byte) 33
+ Arrays.fill(XML11CHARS, 45, 47, (byte) -87 ); // Fill 2 of value (byte) -87
+ XML11CHARS[47] = 33;
+ Arrays.fill(XML11CHARS, 48, 58, (byte) -87 ); // Fill 10 of value (byte) -87
+ XML11CHARS[58] = 45;
+ XML11CHARS[59] = 33;
+ XML11CHARS[60] = 1;
+ Arrays.fill(XML11CHARS, 61, 65, (byte) 33 ); // Fill 4 of value (byte) 33
+ Arrays.fill(XML11CHARS, 65, 91, (byte) -19 ); // Fill 26 of value (byte) -19
+ Arrays.fill(XML11CHARS, 91, 93, (byte) 33 ); // Fill 2 of value (byte) 33
+ XML11CHARS[93] = 1;
+ XML11CHARS[94] = 33;
+ XML11CHARS[95] = -19;
+ XML11CHARS[96] = 33;
+ Arrays.fill(XML11CHARS, 97, 123, (byte) -19 ); // Fill 26 of value (byte) -19
+ Arrays.fill(XML11CHARS, 123, 127, (byte) 33 ); // Fill 4 of value (byte) 33
+ Arrays.fill(XML11CHARS, 127, 133, (byte) 17 ); // Fill 6 of value (byte) 17
+ XML11CHARS[133] = 35;
+ Arrays.fill(XML11CHARS, 134, 160, (byte) 17 ); // Fill 26 of value (byte) 17
+ Arrays.fill(XML11CHARS, 160, 183, (byte) 33 ); // Fill 23 of value (byte) 33
+ XML11CHARS[183] = -87;
+ Arrays.fill(XML11CHARS, 184, 192, (byte) 33 ); // Fill 8 of value (byte) 33
+ Arrays.fill(XML11CHARS, 192, 215, (byte) -19 ); // Fill 23 of value (byte) -19
+ XML11CHARS[215] = 33;
+ Arrays.fill(XML11CHARS, 216, 247, (byte) -19 ); // Fill 31 of value (byte) -19
+ XML11CHARS[247] = 33;
+ Arrays.fill(XML11CHARS, 248, 768, (byte) -19 ); // Fill 520 of value (byte) -19
+ Arrays.fill(XML11CHARS, 768, 880, (byte) -87 ); // Fill 112 of value (byte) -87
+ Arrays.fill(XML11CHARS, 880, 894, (byte) -19 ); // Fill 14 of value (byte) -19
+ XML11CHARS[894] = 33;
+ Arrays.fill(XML11CHARS, 895, 8192, (byte) -19 ); // Fill 7297 of value (byte) -19
+ Arrays.fill(XML11CHARS, 8192, 8204, (byte) 33 ); // Fill 12 of value (byte) 33
+ Arrays.fill(XML11CHARS, 8204, 8206, (byte) -19 ); // Fill 2 of value (byte) -19
+ Arrays.fill(XML11CHARS, 8206, 8232, (byte) 33 ); // Fill 26 of value (byte) 33
+ XML11CHARS[8232] = 35;
+ Arrays.fill(XML11CHARS, 8233, 8255, (byte) 33 ); // Fill 22 of value (byte) 33
+ Arrays.fill(XML11CHARS, 8255, 8257, (byte) -87 ); // Fill 2 of value (byte) -87
+ Arrays.fill(XML11CHARS, 8257, 8304, (byte) 33 ); // Fill 47 of value (byte) 33
+ Arrays.fill(XML11CHARS, 8304, 8592, (byte) -19 ); // Fill 288 of value (byte) -19
+ Arrays.fill(XML11CHARS, 8592, 11264, (byte) 33 ); // Fill 2672 of value (byte) 33
+ Arrays.fill(XML11CHARS, 11264, 12272, (byte) -19 ); // Fill 1008 of value (byte) -19
+ Arrays.fill(XML11CHARS, 12272, 12289, (byte) 33 ); // Fill 17 of value (byte) 33
+ Arrays.fill(XML11CHARS, 12289, 55296, (byte) -19 ); // Fill 43007 of value (byte) -19
+ Arrays.fill(XML11CHARS, 57344, 63744, (byte) 33 ); // Fill 6400 of value (byte) 33
+ Arrays.fill(XML11CHARS, 63744, 64976, (byte) -19 ); // Fill 1232 of value (byte) -19
+ Arrays.fill(XML11CHARS, 64976, 65008, (byte) 33 ); // Fill 32 of value (byte) 33
+ Arrays.fill(XML11CHARS, 65008, 65534, (byte) -19 ); // Fill 526 of value (byte) -19
+
+ } // <clinit>()
+
+ //
+ // Public static methods
+ //
+
+ /**
+ * Returns true if the specified character is a space character
+ * as amdended in the XML 1.1 specification.
+ *
+ * @param c The character to check.
+ */
+ public static boolean isXML11Space(int c) {
+ return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_SPACE) != 0);
+ } // isXML11Space(int):boolean
+
+ /**
+ * Returns true if the specified character is valid. This method
+ * also checks the surrogate character range from 0x10000 to 0x10FFFF.
+ * <p>
+ * If the program chooses to apply the mask directly to the
+ * <code>XML11CHARS</code> array, then they are responsible for checking
+ * the surrogate character range.
+ *
+ * @param c The character to check.
+ */
+ public static boolean isXML11Valid(int c) {
+ return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_VALID) != 0)
+ || (0x10000 <= c && c <= 0x10FFFF);
+ } // isXML11Valid(int):boolean
+
+ /**
+ * Returns true if the specified character is invalid.
+ *
+ * @param c The character to check.
+ */
+ public static boolean isXML11Invalid(int c) {
+ return !isXML11Valid(c);
+ } // isXML11Invalid(int):boolean
+
+ /**
+ * Returns true if the specified character is valid and permitted outside
+ * of a character reference.
+ * That is, this method will return false for the same set as
+ * isXML11Valid, except it also reports false for "control characters".
+ *
+ * @param c The character to check.
+ */
+ public static boolean isXML11ValidLiteral(int c) {
+ return ((c < 0x10000 && ((XML11CHARS[c] & MASK_XML11_VALID) != 0 && (XML11CHARS[c] & MASK_XML11_CONTROL) == 0))
+ || (0x10000 <= c && c <= 0x10FFFF));
+ } // isXML11ValidLiteral(int):boolean
+
+ /**
+ * Returns true if the specified character can be considered
+ * content in an external parsed entity.
+ *
+ * @param c The character to check.
+ */
+ public static boolean isXML11Content(int c) {
+ return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_CONTENT) != 0) ||
+ (0x10000 <= c && c <= 0x10FFFF);
+ } // isXML11Content(int):boolean
+
+ /**
+ * Returns true if the specified character can be considered
+ * content in an internal parsed entity.
+ *
+ * @param c The character to check.
+ */
+ public static boolean isXML11InternalEntityContent(int c) {
+ return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_CONTENT_INTERNAL) != 0) ||
+ (0x10000 <= c && c <= 0x10FFFF);
+ } // isXML11InternalEntityContent(int):boolean
+
+ /**
+ * Returns true if the specified character is a valid name start
+ * character as defined by production [4] in the XML 1.1
+ * specification.
+ *
+ * @param c The character to check.
+ */
+ public static boolean isXML11NameStart(int c) {
+ return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_NAME_START) != 0)
+ || (0x10000 <= c && c < 0xF0000);
+ } // isXML11NameStart(int):boolean
+
+ /**
+ * Returns true if the specified character is a valid name
+ * character as defined by production [4a] in the XML 1.1
+ * specification.
+ *
+ * @param c The character to check.
+ */
+ public static boolean isXML11Name(int c) {
+ return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_NAME) != 0)
+ || (c >= 0x10000 && c < 0xF0000);
+ } // isXML11Name(int):boolean
+
+ /**
+ * Returns true if the specified character is a valid NCName start
+ * character as defined by production [4] in Namespaces in XML
+ * 1.1 recommendation.
+ *
+ * @param c The character to check.
+ */
+ public static boolean isXML11NCNameStart(int c) {
+ return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_NCNAME_START) != 0)
+ || (0x10000 <= c && c < 0xF0000);
+ } // isXML11NCNameStart(int):boolean
+
+ /**
+ * Returns true if the specified character is a valid NCName
+ * character as defined by production [5] in Namespaces in XML
+ * 1.1 recommendation.
+ *
+ * @param c The character to check.
+ */
+ public static boolean isXML11NCName(int c) {
+ return (c < 0x10000 && (XML11CHARS[c] & MASK_XML11_NCNAME) != 0)
+ || (0x10000 <= c && c < 0xF0000);
+ } // isXML11NCName(int):boolean
+
+ /**
+ * Returns whether the given character is a valid
+ * high surrogate for a name character. This includes
+ * all high surrogates for characters [0x10000-0xEFFFF].
+ * In other words everything excluding planes 15 and 16.
+ *
+ * @param c The character to check.
+ */
+ public static boolean isXML11NameHighSurrogate(int c) {
+ return (0xD800 <= c && c <= 0xDB7F);
+ }
+
+ /*
+ * [5] Name ::= NameStartChar NameChar*
+ */
+ /**
+ * Check to see if a string is a valid Name according to [5]
+ * in the XML 1.1 Recommendation
+ *
+ * @param name string to check
+ * @return true if name is a valid Name
+ */
+ public static boolean isXML11ValidName(String name) {
+ int length = name.length();
+ if (length == 0)
+ return false;
+ int i = 1;
+ char ch = name.charAt(0);
+ if( !isXML11NameStart(ch) ) {
+ if ( length > 1 && isXML11NameHighSurrogate(ch) ) {
+ char ch2 = name.charAt(1);
+ if ( !XMLChar.isLowSurrogate(ch2) ||
+ !isXML11NameStart(XMLChar.supplemental(ch, ch2)) ) {
+ return false;
+ }
+ i = 2;
+ }
+ else {
+ return false;
+ }
+ }
+ while (i < length) {
+ ch = name.charAt(i);
+ if ( !isXML11Name(ch) ) {
+ if ( ++i < length && isXML11NameHighSurrogate(ch) ) {
+ char ch2 = name.charAt(i);
+ if ( !XMLChar.isLowSurrogate(ch2) ||
+ !isXML11Name(XMLChar.supplemental(ch, ch2)) ) {
+ return false;
+ }
+ }
+ else {
+ return false;
+ }
+ }
+ ++i;
+ }
+ return true;
+ } // isXML11ValidName(String):boolean
+
+
+ /*
+ * from the namespace 1.1 rec
+ * [4] NCName ::= NCNameStartChar NCNameChar*
+ */
+ /**
+ * Check to see if a string is a valid NCName according to [4]
+ * from the XML Namespaces 1.1 Recommendation
+ *
+ * @param ncName string to check
+ * @return true if name is a valid NCName
+ */
+ public static boolean isXML11ValidNCName(String ncName) {
+ int length = ncName.length();
+ if (length == 0)
+ return false;
+ int i = 1;
+ char ch = ncName.charAt(0);
+ if( !isXML11NCNameStart(ch) ) {
+ if ( length > 1 && isXML11NameHighSurrogate(ch) ) {
+ char ch2 = ncName.charAt(1);
+ if ( !XMLChar.isLowSurrogate(ch2) ||
+ !isXML11NCNameStart(XMLChar.supplemental(ch, ch2)) ) {
+ return false;
+ }
+ i = 2;
+ }
+ else {
+ return false;
+ }
+ }
+ while (i < length) {
+ ch = ncName.charAt(i);
+ if ( !isXML11NCName(ch) ) {
+ if ( ++i < length && isXML11NameHighSurrogate(ch) ) {
+ char ch2 = ncName.charAt(i);
+ if ( !XMLChar.isLowSurrogate(ch2) ||
+ !isXML11NCName(XMLChar.supplemental(ch, ch2)) ) {
+ return false;
+ }
+ }
+ else {
+ return false;
+ }
+ }
+ ++i;
+ }
+ return true;
+ } // isXML11ValidNCName(String):boolean
+
+ /*
+ * [7] Nmtoken ::= (NameChar)+
+ */
+ /**
+ * Check to see if a string is a valid Nmtoken according to [7]
+ * in the XML 1.1 Recommendation
+ *
+ * @param nmtoken string to check
+ * @return true if nmtoken is a valid Nmtoken
+ */
+ public static boolean isXML11ValidNmtoken(String nmtoken) {
+ int length = nmtoken.length();
+ if (length == 0)
+ return false;
+ for (int i = 0; i < length; ++i ) {
+ char ch = nmtoken.charAt(i);
+ if( !isXML11Name(ch) ) {
+ if ( ++i < length && isXML11NameHighSurrogate(ch) ) {
+ char ch2 = nmtoken.charAt(i);
+ if ( !XMLChar.isLowSurrogate(ch2) ||
+ !isXML11Name(XMLChar.supplemental(ch, ch2)) ) {
+ return false;
+ }
+ }
+ else {
+ return false;
+ }
+ }
+ }
+ return true;
+ } // isXML11ValidName(String):boolean
+
+} // class XML11Char
+
Propchange: xalan/java/trunk/src/org/apache/xml/serializer/utils/XML11Char.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xalan/java/trunk/src/org/apache/xml/serializer/utils/XML11Char.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org