# NLS_ENCODING=UNICODE
#-------------------------------------------------------------------------------
# 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:
#

# Export XML Wizard
exportXMLWizard_title=\u532f\u51fa XML

# Select Export Type Wizard Page
selectExportTypePage_desc=\u9078\u53d6\u8981\u532f\u51fa\u7684\u65b9\u6cd5\u7a0b\u5f0f\u5eab\u5167\u5bb9\u7684\u985e\u578b\u3002
exportLibraryRadioButton_text=\u532f\u51fa\u6574\u500b\u65b9\u6cd5\u7a0b\u5f0f\u5eab
exportPluginsRadioButton_text=\u532f\u51fa\u4e00\u6216\u591a\u500b\u65b9\u6cd5\u5916\u639b\u7a0b\u5f0f
exportConfigsRadioButton_text=\u532f\u51fa\u65b9\u6cd5\u914d\u7f6e

# Select Destination XML File Wizard Page
selectXMLFilePage_title=\u6307\u5b9a\u532f\u51fa\u6a94
selectXMLFilePage_desc=\u6307\u5b9a\u76ee\u7684\u5730 XML \u6a94\uff0c\u7528\u4f86\u5132\u5b58\u532f\u51fa\u7684\u65b9\u6cd5\u7a0b\u5f0f\u5eab\u5167\u5bb9\u3002
fileLabel_text=XML \u6a94\uff1a
browseButton_text=\u700f\u89bd...

# Overwrite Confirmation Dialog
overwriteText_msg=''{0}'' \u5df2\u5b58\u5728\u3002\n\u60a8\u8981\u6539\u5beb\u5b83\u55ce\uff1f
overwriteText_msg1=''{0}'' \u5df2\u5b58\u5728\u3002\n\u60a8\u8981\u6539\u5beb\u5b83\u53ca\u6240\u5305\u542b\u7684\u8cc7\u6599\u593e ''{1}'' \u55ce\uff1f

# Progress Messages
exportingXML_text=\u5c07\u65b9\u6cd5\u7a0b\u5f0f\u5eab\u7684\u5167\u5bb9\u532f\u51fa\u5230 XML \u6a94...

# Error Messages
invalidXMLFile_error=\u6307\u5b9a\u7684 XML \u6a94\u7121\u6548\u3002
exportXMLWizard_error=IUPM0000E: \u532f\u51fa\u5931\u6557\uff1a{0}
exportXMLWizard_reviewLog=\u532f\u51fa\u5b8c\u6210\u3002\u8acb\u67e5\u95b1\u532f\u51fa\u76ee\u9304\u4e0b\u7684\u65e5\u8a8c\u6a94\u3002
exportXMLService_error=\u532f\u51fa\u7a0b\u5f0f\u5eab\u6642\u767c\u751f\u932f\u8aa4\uff1a{0}
exportXMLService_feature_error=\u8a2d\u5b9a\u7279\u6027\u503c\u6642\u767c\u751f\u932f\u8aa4\uff1a\u5143\u7d20={0}\uff0c\u7279\u6027={1}
xmlLibrary_error_load_xml=\u7121\u6cd5\u8f09\u5165 XML \u4f86\u6e90 ''{0}''
xmlLibrary_no_plugin=ID {0} \u6c92\u6709\u65b9\u6cd5\u5916\u639b\u7a0b\u5f0f
xmlLibrary_no_feature=\u7121\u6cd5\u53d6\u5f97 {0}_{1} \u7684 XML \u7279\u6027
xmlLibrary_no_class=\u7121\u6cd5\u53d6\u5f97 {0} \u7684 EClass
xmlLibrary_error_create_element=\u5efa\u7acb\u5143\u7d20\u6642\u767c\u751f\u932f\u8aa4\uff0c\u4e0d\u77e5\u5982\u4f55\u8a2d\u5b9a\u7279\u6027 {0} \u7684\u503c
xmlLibrary_error_set_value=\u5efa\u7acb\u5143\u7d20\u6642\u767c\u751f\u932f\u8aa4\uff0c\u7121\u6cd5\u5c07\u503c {0} \u8a2d\u70ba\u5132\u5b58\u5668 {1}
xmlLibrary_invalid_feature_value=\u7279\u6027 {0} \u7684\u5c6c\u6027\u7279\u6027\u503c\u7121\u6548\uff0c\u503c\u70ba {1}
xmlLibrary_error_set_value_2=\u8a2d\u5b9a\u5c6c\u6027\u6642\u767c\u751f\u932f\u8aa4\uff0c\u7121\u6cd5\u8a2d\u5b9a\u503c\uff0c\u7279\u6027={0}\uff0c\u7269\u4ef6={1}\uff0c\u503c={2}
xmlLibrary_error_set_value_3=\u4e0d\u77e5\u5982\u4f55\u8a2d\u5b9a\u503c\uff0c\u7279\u6027={0}\uff0c\u7269\u4ef6={1}\uff0c\u503c={2}
xmlLibrary_error_set_reference=\u8a2d\u5b9a\u53c3\u7167\u6642\u767c\u751f\u932f\u8aa4\uff0c\u7121\u6cd5\u8a2d\u5b9a\u503c\uff0c\u7279\u6027={0}\uff0c\u7269\u4ef6={1}\uff0c\u503c={2}
xmlLibrary_error_process_wrong_container=\u7a0b\u5e8f ''{0}'' \u7f3a\u5c11\u6709\u6548\u7684\u5132\u5b58\u5668\u3002\u5132\u5b58\u5668\u7684\u985e\u578b\u70ba ''{1}'' \u985e\u578b\uff0c\u9019\u4e0d\u662f\u7a0b\u5e8f\u5957\u4ef6\u3002
xmlLibrary_new_id=\u5143\u7d20 {0} \u7f3a\u5c11\u6709\u6548\u7684 ID\uff0c\u5df2\u6307\u6d3e\u65b0\u7684 ID {1}
xmlLibrary_id_not_unique=\u6709\u591a\u500b\u5143\u7d20\u4f7f\u7528\u5143\u7d20 ID ''{0}''

export_config_to_temp_location=\u5c07\u914d\u7f6e\u532f\u51fa\u81f3\u66ab\u6642\u4f4d\u7f6e
open_lib_from_temp_exported_location=\u5f9e\u66ab\u6642\u7684\u532f\u51fa\u4f4d\u7f6e\u958b\u555f\u7a0b\u5f0f\u5eab


