#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2007 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
# IBM Corporation - initial implementation.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR
#
# Message ID Range:
#

# Import XML Wizard
importXMLWizard_title=\u532f\u5165 XML

# Select Import XML File Wizard Page
selectXMLFilePage_title=\u6307\u5b9a\u532f\u5165\u6a94
selectXMLFilePage_desc=\u6307\u5b9a XML \u6a94\uff0c\u5167\u542b\u8981\u532f\u5165\u7684\u65b9\u6cd5\u7a0b\u5f0f\u5eab\u5167\u5bb9\uff0c\u4e26\u9078\u53d6\u9069\u7576\u7684\u532f\u5165\u4f5c\u696d\u4f86\u57f7\u884c\u3002
fileLabel_text=XML \u6a94\uff1a
browseButton_text=\u700f\u89bd...
optionGroup_text=\u5408\u4f75\u9078\u9805
optionGroup1_text=\u6aa2\u67e5\u57fa\u672c\u5916\u639b\u7a0b\u5f0f\u9078\u9805
overwriteRadioButton_text=\u4ee5\u532f\u5165\u7684\u5167\u5bb9\u4f86\u7f6e\u63db\u73fe\u6709\u7684\u65b9\u6cd5\u7a0b\u5f0f\u5eab\u5167\u5bb9
mergeRadioButton_text=\u5c07\u532f\u5165\u7684\u5167\u5bb9\u5408\u4f75\u81f3\u73fe\u6709\u7684\u65b9\u6cd5\u7a0b\u5f0f\u5eab

# Progress Messages
importingXML_text=\u6b63\u5728\u5c07 XML \u7a0b\u5f0f\u5eab\u5167\u5bb9\u532f\u5165\u73fe\u884c\u65b9\u6cd5\u7a0b\u5f0f\u5eab...

# Import XML Error Dialog
review_log_files=\u532f\u5165\u4f5c\u696d\u5df2\u5b8c\u6210\u3002\u8acb\u67e5\u95b1\n''{0}'' \u8cc7\u6599\u593e\u4e2d\u7684\u65e5\u8a8c\u6a94\u662f\u5426\u6709\u4efb\u4f55\u932f\u8aa4\u3002
importXMLError_msg=IUPM0000E: \u7121\u6cd5\u7e7c\u7e8c\u532f\u5165\u4f5c\u696d\u3002
importXMLError_reason=IUPM0009E: \u73fe\u884c\u65b9\u6cd5\u7a0b\u5f0f\u5eab\u662f\u552f\u8b80\u7684\u3002\n\n\u8acb\u78ba\u5b9a\u53ef\u5beb\u5165 ''{0}''\uff0c\u6216\u5efa\u7acb\u65b0\u7684\u65b9\u6cd5\u7a0b\u5f0f\u5eab\uff0c\u7136\u5f8c\u518d\u8a66\u4e00\u6b21\u3002

# Error Messages
invalidXMLFile_error=\u6307\u5b9a\u7684 XML \u6a94\u7121\u6548\u3002
versionMismatch_oldData=IUPM0010E: \u6307\u5b9a\u7684 XML \u6a94\u662f\u5f9e\u820a\u7248 ({0}) \u7684 {1} \u532f\u51fa\u3002\u6a94\u6848\u5fc5\u9808\u4ee5 {1} \u73fe\u884c\u7248\u672c\u532f\u51fa\u3002
versionMismatch_oldData_unknown=IUPM0011E: \u6307\u5b9a\u7684 XML \u6a94\u662f\u5f9e\u820a\u7248\u7684 {0} \u532f\u51fa\u3002\u6a94\u6848\u5fc5\u9808\u4ee5 {0} \u73fe\u884c\u7248\u672c\u532f\u51fa\u3002
versionMismatch_oldTool=IUPM0012E: \u6307\u5b9a\u7684 XML \u6a94\u662f\u5f9e\u8f03\u65b0\u7248 ({0}) \u7684 {1} \u532f\u51fa\u3002\u60a8\u5fc5\u9808\u5347\u7d1a {1} \u624d\u80fd\u532f\u5165\u6a94\u6848\u3002
versionMismatch_oldTool_unknown=IUPM0013E: \u7121\u6cd5\u958b\u555f\u6307\u5b9a\u7684 XML \u6a94\u6848\u3002\u60a8\u5fc5\u9808\u5347\u7d1a {0} \u624d\u80fd\u532f\u5165\u6a94\u6848\u3002

importXMLService_element_not_handled=\u672a\u8655\u7406\u7684\u5143\u7d20\uff1a{0}
importXMLService_element_without_id=\u7121 ID \u7684\u5143\u7d20\uff1a{0}
importXMLService_import_failed=\u532f\u5165\u5931\u6557\uff1a{0}
importXMLService_missing_plugin=\u907a\u6f0f\u5fc5\u8981\u7684\u5916\u639b\u7a0b\u5f0f {0}
importXMLService_error_missing_plugins=\u907a\u6f0f\u5fc5\u8981\u7684\u5916\u639b\u7a0b\u5f0f\u3002\u5982\u9700\u8a73\u7d30\u8cc7\u6599\uff0c\u8acb\u67e5\u770b\u65e5\u8a8c\u6a94

library_error_no_eclass=\u5efa\u7acb ContentCategory \u6642\u767c\u751f\u932f\u8aa4\uff1a\u7121\u6cd5\u53d6\u5f97 {0} \u7684 EClass
library_no_package=\u627e\u4e0d\u5230\u7269\u4ef6 {0} \u7684\u4e3b\u63a7\u5957\u4ef6
library_error_create_element=\u5efa\u7acb\u5143\u7d20\u6642\u767c\u751f\u932f\u8aa4\uff1a{0}
library_object_string=\u7269\u4ef6 {0}\uff0c\u7279\u6027 {1}
library_error_set_attribute_2=\u8a2d\u5b9a\u5c6c\u6027\u6642\u767c\u751f\u932f\u8aa4\uff1a\u5c6c\u6027\u7279\u6027\u503c {0} \u7121\u6548
library_error_set_attribute=\u8a2d\u5b9a\u5c6c\u6027\u6642\u767c\u751f\u932f\u8aa4\uff1a\u7269\u4ef6 {0}\uff0c\u7279\u6027 {1}\uff0c\u503c {2}
library_error_set_attribute_3=\u4e0d\u77e5\u5982\u4f55\u8a2d\u5b9a\u5c6c\u6027\uff1a\u7269\u4ef6 {0}\uff0c\u7279\u6027 {1}\uff0c\u503c {2}
library_error_set_reference=\u8a2d\u5b9a\u7279\u6027 {0} \u7684\u53c3\u7167\u6642\u767c\u751f\u932f\u8aa4\uff1a\u627e\u4e0d\u5230 ID {1} \u7684\u5143\u7d20
library_error_set_reference_2=\u8a2d\u5b9a\u53c3\u7167\u6642\u767c\u751f\u932f\u8aa4\uff1a\u7269\u4ef6 {0}\uff0c\u7279\u6027 {1}\uff0c\u503c {2}

