#
# Copyright (c) 1997, 2021 Oracle and/or its affiliates. All rights reserved.
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Distribution License v. 1.0, which is available at
# http://www.eclipse.org/org/documents/edl-v10.php.
#
# SPDX-License-Identifier: BSD-3-Clause
#


#
# Message resource file
#



BGMBuilder.NoGlobalElement = \u6a21\u5f0f\u4e0d\u5305\u542b\u5168\u5c40\u5143\u7d20\u58f0\u660e\u3002

UnusedCustomizationChecker.WarnUnusedExpectedContentTypes = xmime:expectedContentTypes \u5c5e\u6027\u4f4d\u4e8e\u4e0d\u6b63\u786e\u7684\u5143\u7d20\u4e0a

BGMBuilder.MultipleSchemaBindings = \u4e3a\u76ee\u6807\u540d\u79f0\u7a7a\u95f4 "{0}" \u5b9a\u4e49\u4e86\u591a\u4e2a <schemaBindings>

BGMBuilder.MultipleSchemaBindings.Location = \u5728\u6b64\u5904\u5b9a\u4e49\u4e86\u5176\u4ed6 <schemaBindings>



ClassSelector.ClassNameIsRequired = \u65e0\u6cd5\u4ece\u6a21\u5f0f\u6d3e\u751f\u540d\u79f0\u3002\u4e3a <class> \u5b9a\u5236\u8bbe\u7f6e\u6307\u5b9a\u4e86\u540d\u79f0\u5c5e\u6027\u3002

ClassSelector.IncorrectClassName = \u6307\u5b9a\u7684\u540d\u79f0 ''{0}'' \u4e0d\u662f\u6709\u6548\u7684 Java \u6807\u8bc6\u7b26\u3002

ClassSelector.IncorrectPackageName = \u7528\u4e8e\u6b64\u6a21\u5f0f\u7684\u7a0b\u5e8f\u5305\u540d\u79f0 ''{1}'' \u4e0d\u662f\u6709\u6548\u7684\u7a0b\u5e8f\u5305\u540d\u79f0\u3002

# {0} - name-identifier-format-enum
ClassSelector.JavadocHeading = <p>{0}\u7684 Java \u7c7b\u3002\n\n<p>\u4ee5\u4e0b\u6a21\u5f0f\u7247\u6bb5\u6307\u5b9a\u5305\u542b\u5728\u6b64\u7c7b\u4e2d\u7684\u9884\u671f\u5185\u5bb9\u3002

ClassSelector.JavadocLineUnknown = \u672a\u77e5

ClassSelector.ReservedClassName = \u5c1d\u8bd5\u521b\u5efa\u4e0e\u4fdd\u7559\u5173\u952e\u5b57 "{0}" \u540c\u540d\u7684\u7c7b\u3002


CollisionInfo.CollisionInfo = \u5b57\u6bb5\u540d\u79f0 "{0}" \u7531\u6a21\u5f0f\u7684\u4e24\u4e2a\u4e0d\u540c\u90e8\u5206\u4f7f\u7528\u3002\u8bf7\u53c2\u9605: \n{1}\n{2}

CollisionInfo.UnknownFile = \u672a\u77e5\u6587\u4ef6

# Concatenated with CollisionInfo.CollisionInfo (CollisionInfo.CollisionInfo + CollisionInfo.LineXOfY + CollisionInfo.LineXOfY) e.g.: The field name "FieldName" is used by two different parts of a schema. See: line X of file:Schema.xsd line Y of file:Schema2.xsd
CollisionInfo.LineXOfY = {1}\u7684\u7b2c {0} \u884c


ConversionFinder.CannotBeTypeSafeEnum = \u4e3a\u65e0\u6cd5\u6620\u5c04\u5230\u7c7b\u578b\u5b89\u5168\u7684\u679a\u4e3e\u7684\u7b80\u5355\u7c7b\u578b\u6307\u5b9a\u4e86\u7c7b\u578b\u5b89\u5168\u7684\u679a\u4e3e\u5b9a\u5236\u8bbe\u7f6e\u3002
ConversionFinder.CannotBeTypeSafeEnum.Location = \u5728\u6b64\u4f4d\u7f6e\u4e2d\u6307\u5b9a\u76f8\u5173\u7b80\u5355\u7c7b\u578b\u58f0\u660e
ConversionFinder.NoEnumNameAvailable = \u4e3a\u7c7b\u578b\u5b89\u5168\u7684\u679a\u4e3e\u5b9a\u5236\u533f\u540d\u7b80\u5355\u7c7b\u578b\u65f6, \u9700\u8981\u540d\u79f0\u5c5e\u6027\u3002
ConversionFinder.NoEnumFacet= \u5728\u6ca1\u6709\u679a\u4e3e\u9762\u7684\u7c7b\u578b\u4e0a\u6307\u5b9a\u4e86\u679a\u4e3e\u7c7b\u5b9a\u5236\u8bbe\u7f6e\u3002
ERR_ILLEGAL_EXPECTED_MIME_TYPE = \u65e0\u6cd5\u89e3\u6790\u9884\u671f\u7684 MIME \u7c7b\u578b "{0}"\u3002{1}\u3002


DatatypeBuilder.DatatypeError = \u7b80\u5355\u7c7b\u578b\u9519\u8bef: {0}






DefaultParticleBinder.UnableToGenerateNameFromModelGroup = \u65e0\u6cd5\u4ece\u6a21\u578b\u7ec4\u751f\u6210\u5c5e\u6027\u540d\u3002\u9700\u8981\u5b9a\u5236\u8bbe\u7f6e\u3002

# {0} - CollisionInfo.CollisionInfo is injected with parameters field name, location at first schema, location at second schema e.g.: Gets the rest of the content model. You are getting this "catch-all" property because of the following reason: The field name "OverviewURL" is used by two different parts of a schema. See: line 392 of file:/C:/Development/Projects/jUDDI_v3/uddi-ws/src/main/resources/uddi_v3.xsd line 390 of file:/C:/Development/Projects/jUDDI_v3/uddi-ws/src/main/resources/uddi_v3.xsd To get rid of this property, apply a property customization to one of both of the following declarations to change their names: Gets the value of the content property.
DefaultParticleBinder.FallbackJavadoc = \u83b7\u53d6\u5185\u5bb9\u6a21\u578b\u7684\u5176\u4f59\u90e8\u5206\u3002\n\n<p>\n\u7531\u4e8e\u4ee5\u4e0b\u539f\u56e0, \u60a8\u83b7\u53d6\u7684\u662f\u6b64 "catch-all" \u5c5e\u6027: \n{0}\n<p>\n\u8981\u6e05\u9664\u6b64\u5c5e\u6027, \u8bf7\u5c06\u5c5e\u6027\u5b9a\u5236\u8bbe\u7f6e\u5e94\u7528\u4e8e\u4ee5\u4e0b\u4e24\u4e2a\u58f0\u660e\n\u6216\u5176\u4e2d\u4e00\u4e2a\u4ee5\u66f4\u6539\u5176\u540d\u79f0: \n







FieldBuilder.IncorrectFixedValue = \u56fa\u5b9a\u5c5e\u6027 "{0}" \u4e2d\u6307\u5b9a\u7684\u503c\u4e0d\u662f\u6570\u636e\u7c7b\u578b\u7684\u6709\u6548\u503c

FieldBuilder.IncorrectDefaultValue = \u9ed8\u8ba4\u5c5e\u6027 "{0}" \u4e2d\u6307\u5b9a\u7684\u503c\u4e0d\u662f\u6570\u636e\u7c7b\u578b\u7684\u6709\u6548\u503c

FieldBuilder.ConflictBetweenUserTypeAndActualType.AttUse = "{0}" \u662f\u7531\u5b9a\u5236\u8bbe\u7f6e\u6307\u5b9a\u7684, \u4f46\u6b64\u5c5e\u6027\u5177\u6709\u4e0d\u517c\u5bb9\u7c7b\u578b "{1}"

FieldBuilder.ConflictBetweenUserTypeAndActualType.AttUse.Source = \u5728\u6b64\u4f4d\u7f6e\u6307\u5b9a\u4e86\u76f8\u5173\t\u5b9a\u5236\u8bbe\u7f6e

FieldBuilder.Javadoc.NilProperty = \u6b64\u5c5e\u6027\u7528\u4e8e\u63a7\u5236 W3C XML \u6a21\u5f0f\u7684 <a href="http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/#Nils">xsi:nil \u529f\u80fd</a>\u3002\n\u5c06\u6b64\u5c5e\u6027\u8bbe\u7f6e\u4e3a\u201c\u771f\u201d\u5c06\u4f1a\u5bfc\u81f4\u8f93\u51fa\u4e3a &lt;{0} xsi:nil="true" />, \u800c\u4e0d\u8003\u8651\u5176\u4ed6\u5c5e\u6027\u7684\u503c\u3002

FieldBuilder.Javadoc.ValueObject = \u83b7\u53d6/\u8bbe\u7f6e\u4e0e\u6b64\u5143\u7d20\u5173\u8054\u7684\u590d\u6742\u7c7b\u578b\u503c\u3002\n\u5728\u5bf9\u5305\u542b xsi:type \u7684\u6587\u6863\u8fdb\u884c\u89e3\u7f16\u96c6\u65f6, get{1} \u65b9\u6cd5\u5c06\u8fd4\u56de ''{''@link {0}''}'' \u7684\u6d3e\u751f\u7c7b\u7684\u5b9e\u4f8b\u3002\u540c\u6837, \u5982\u679c\u8bbe\u7f6e\u6d3e\u751f\u7c7b\u7684\u5b9e\u4f8b, \u5219\u5728\u7f16\u96c6 XML \u8f93\u51fa\u65f6\u4e5f\u5c06\u83b7\u53d6\u5177\u6709 xsi:type \u7684\u5b9e\u4f8b\u3002


SimpleTypeBuilder.UnnestedJavaTypeCustomization = \u5fc5\u987b\u5d4c\u5957\u6b64\u4e0a\u4e0b\u6587\u4e2d\u7684 <javaType> \u5b9a\u5236\u8bbe\u7f6e (JAXB \u89c4\u8303\u7b2c 6.8.1 \u8282): \n\t<property>\n\t  <baseType>\n\t    <javaType ...>\n\t  </baseType>\n\t</property>

UnusedCustomizationChecker.UnacknolwedgedCustomization = \u7f16\u8bd1\u5668\u65e0\u6cd5\u652f\u6301\u6b64{0}\u5b9a\u5236\u8bbe\u7f6e\u3002\u8be5\u5b9a\u5236\u8bbe\u7f6e\u9644\u52a0\u5230\u9519\u8bef\u7684\u4f4d\u7f6e, \u6216\u8005\u4e0e\u5176\u4ed6\u7ed1\u5b9a\u4e0d\u4e00\u81f4\u3002

UnusedCustomizationChecker.UnacknolwedgedCustomization.Relevant = (\u4e0a\u8ff0\u5b9a\u5236\u8bbe\u7f6e\u5df2\u9644\u52a0\u5230\u6a21\u5f0f\u4e2d\u7684\u4ee5\u4e0b\u4f4d\u7f6e)

ERR_ENUM_MEMBER_NAME_COLLISION = \u4e24\u4e2a\u679a\u4e3e\u6210\u5458\u4ea7\u751f\u4e86\u76f8\u540c\u7684\u5e38\u91cf\u540d{0}

# Not concatenated with any other String (written on a separate line) but printed after ERR_ENUM_MEMBER_NAME_COLLISION, followed by a line with the position of the problem in a particular file
ERR_ENUM_MEMBER_NAME_COLLISION_RELATED = (\u4e0e\u4e0a\u6587\u76f8\u5173) \u5728\u6b64\u4f4d\u7f6e\u5b9a\u4e49\u4e86\u53e6\u4e00\u4e2a\u679a\u4e3e

WARN_ENUM_MEMBER_SIZE_CAP = \u7531\u4e8e EnumMemberSizeCap \u9650\u5236, \u7b80\u5355\u7c7b\u578b "{0}" \u672a\u6620\u5c04\u5230\u679a\u4e3e\u3002\u9762\u8ba1\u6570: {1}, \u5f53\u524d\u9650\u5236: {2}\u3002\u53ef\u4ee5\u4f7f\u7528\u5b9a\u5236\u8bbe\u7f6e\u5c5e\u6027 "typesafeEnumMaxMembers" \u6269\u5c55\u8be5\u9650\u5236\u3002

ERR_CANNOT_GENERATE_ENUM_NAME = \u65e0\u6cd5\u4ece\u679a\u4e3e\u7c7b\u578b "{0}" \u751f\u6210\u5e38\u91cf\u540d\u3002\u8bf7\u4f7f\u7528 <jaxb:typesafeEnumMember name="..."/> \u6307\u5b9a\u4e00\u4e2a\u5e38\u91cf\u540d\u3002

# Wrapped into an Exception. Not concatenated with any other string.
ERR_MULTIPLE_GLOBAL_BINDINGS = \u6574\u4e2a\u7f16\u8bd1\u4e2d\u53ea\u5141\u8bb8\u6709\u4e00\u4e2a globalBindings \u5b9a\u5236\u8bbe\u7f6e

# Not concatenated with any other String (written on a separate line) but printed after ERR_MULTIPLE_GLOBAL_BINDINGS, followed by a line with the position of the problem in a particular file, e.g. parsing a schema... \n [ERROR] only one globalBindings customization is allowed in a whole compilation \n line 8 of file:/C:/kohsuke/Sun/JAXB/jaxb-ri/sandbox/issue98/base.xjb \n [ERROR] (related to above) but one is already given at this location \n line 8 of file:/C:/kohsuke/Sun/JAXB/jaxb-ri/sandbox/issue98/sub1.xjb
ERR_MULTIPLE_GLOBAL_BINDINGS_OTHER = (\u4e0e\u4e0a\u6587\u76f8\u5173) \u4f46\u6b64\u4f4d\u7f6e\u5df2\u6307\u5b9a\u4e00\u4e2a

ERR_REFERENCE_TO_NONEXPORTED_CLASS = {0}\u4f4d\u4e8e\u5f15\u7528\u7684\u6a21\u5f0f\u4e2d, \u5e76\u4e14\u6ca1\u6709\u7531 <jaxb:class ref="..."/> \u5b9a\u5236\u8bbe\u7f6e\u6307\u5b9a\u7684\u76f8\u5e94 Java \u7c7b\u3002\u56e0\u6b64\u65e0\u6cd5\u4ece\u5916\u90e8\u5f15\u7528\u5b83\u3002

# Not concatenated with any other string (written on a separate line) but printed after ERR_REFERENCE_TO_NONEXPORTED_CLASS.
ERR_REFERENCE_TO_NONEXPORTED_CLASS_MAP_FALSE = (\u4e0e\u4e0a\u6587\u76f8\u5173) \u540d\u79f0\u7a7a\u95f4 "{0}" (\u5305\u542b\u4e0a\u8ff0\u7ec4\u4ef6) \u7684\u6a21\u5f0f\u5df2\u6307\u5b9a\u4e3a\u53ea\u80fd\u7531\u6b64\u5b9a\u5236\u8bbe\u7f6e\u5f15\u7528\u3002

# Not concatenated with any other string (written on a separate line) but printed after ERR_REFERENCE_TO_NONEXPORTED_CLASS and ERR_REFERENCE_TO_NONEXPORTED_CLASS_MAP_FALSE.
ERR_REFERENCE_TO_NONEXPORTED_CLASS_REFERER = (\u4e0e\u4e0a\u6587\u76f8\u5173) \u4ece\u6b64\u7ec4\u4ef6\u5f15\u7528\u4e86\u6709\u95ee\u9898\u7684\u6a21\u5f0f\u7ec4\u4ef6: {0}

WARN_DEFAULT_VALUE_PRIMITIVE_TYPE = \u65e0\u6cd5\u4e3a\u57fa\u5143\u7c7b\u578b "{0}" \u751f\u6210\u9ed8\u8ba4\u503c\u3002
