# 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=XML \u306e\u30a8\u30af\u30b9\u30dd\u30fc\u30c8

# Select Export Type Wizard Page
selectExportTypePage_desc=\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u30fb\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u30bf\u30a4\u30d7\u3092\u9078\u629e\u3057\u307e\u3059\u3002
exportLibraryRadioButton_text=\u30e1\u30bd\u30c3\u30c9\u30fb\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc\u5168\u4f53\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8
exportPluginsRadioButton_text=1 \u3064\u4ee5\u4e0a\u306e\u30e1\u30bd\u30c3\u30c9\u30fb\u30d7\u30e9\u30b0\u30a4\u30f3\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8
exportConfigsRadioButton_text=\u30e1\u30bd\u30c3\u30c9\u69cb\u6210\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8

# Select Destination XML File Wizard Page
selectXMLFilePage_title=\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u30fb\u30d5\u30a1\u30a4\u30eb\u306e\u6307\u5b9a
selectXMLFilePage_desc=\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3055\u308c\u305f\u30e1\u30bd\u30c3\u30c9\u30fb\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u4fdd\u7ba1\u3059\u308b XML \u30d5\u30a1\u30a4\u30eb\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002
fileLabel_text=XML \u30d5\u30a1\u30a4\u30eb:
browseButton_text=\u53c2\u7167...

# Overwrite Confirmation Dialog
overwriteText_msg=''{0}'' \u306f\u65e2\u306b\u5b58\u5728\u3057\u307e\u3059\u3002\n\u4e0a\u66f8\u304d\u3057\u307e\u3059\u304b?
overwriteText_msg1=''{0}'' \u306f\u65e2\u306b\u5b58\u5728\u3057\u307e\u3059\u3002\n\u3053\u308c\u3068\u3053\u308c\u306b\u542b\u307e\u308c\u3066\u3044\u308b\u30d5\u30a9\u30eb\u30c0\u30fc ''{1}'' \u3092\u4e0a\u66f8\u304d\u3057\u307e\u3059\u304b?

# Progress Messages
exportingXML_text=\u30e1\u30bd\u30c3\u30c9\u30fb\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u3092 XML \u30d5\u30a1\u30a4\u30eb\u306b\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059...

# Error Messages
invalidXMLFile_error=\u6307\u5b9a\u3055\u308c\u305f XML \u30d5\u30a1\u30a4\u30eb\u306f\u7121\u52b9\u3067\u3059\u3002
exportXMLWizard_error=IUPM0000E: \u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u306f\u5931\u6557\u3057\u307e\u3057\u305f: {0}
exportXMLWizard_reviewLog=\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002 \u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u30fb\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30fc\u306b\u3042\u308b\u30ed\u30b0\u30fb\u30d5\u30a1\u30a4\u30eb\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002
exportXMLService_error=\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc\u306e\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u30fb\u30a8\u30e9\u30fc: {0}
exportXMLService_feature_error=\u30d5\u30a3\u30fc\u30c1\u30e3\u30fc\u5024:: \u8981\u7d20={0}\u3001\u30d5\u30a3\u30fc\u30c1\u30e3\u30fc={1} \u306e\u8a2d\u5b9a\u30a8\u30e9\u30fc
xmlLibrary_error_load_xml=XML \u30bd\u30fc\u30b9 ''{0}'' \u3092\u30ed\u30fc\u30c9\u3067\u304d\u307e\u305b\u3093
xmlLibrary_no_plugin=ID {0} \u306e \u30e1\u30bd\u30c3\u30c9\u30fb\u30d7\u30e9\u30b0\u30a4\u30f3\u304c\u3042\u308a\u307e\u305b\u3093
xmlLibrary_no_feature={0}_{1} \u306e XML \u30d5\u30a3\u30fc\u30c1\u30e3\u30fc\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093
xmlLibrary_no_class={0} \u306e EClass \u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093
xmlLibrary_error_create_element=\u8981\u7d20\u306e\u4f5c\u6210\u30a8\u30e9\u30fc\u3067\u3059\u3002\u30d5\u30a3\u30fc\u30c1\u30e3\u30fc {0} \u306e\u5024\u306e\u8a2d\u5b9a\u65b9\u6cd5\u304c\u4e0d\u660e\u3067\u3059
xmlLibrary_error_set_value=\u8981\u7d20\u306e\u4f5c\u6210\u30a8\u30e9\u30fc\u3067\u3059\u3002\u30b3\u30f3\u30c6\u30ca\u30fc {1} \u306b\u5024 {0} \u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093
xmlLibrary_invalid_feature_value=\u5024 {1} \u3092\u6301\u3064\u30d5\u30a3\u30fc\u30c1\u30e3\u30fc {0} \u306e\u5c5e\u6027\u30d5\u30a3\u30fc\u30c1\u30e3\u30fc\u5024\u304c\u7121\u52b9\u3067\u3059
xmlLibrary_error_set_value_2=\u5c5e\u6027\u306e\u8a2d\u5b9a\u30a8\u30e9\u30fc\u3067\u3059\u3002\u30d5\u30a3\u30fc\u30c1\u30e3\u30fc={0}\u3001\u30aa\u30d6\u30b8\u30a7\u30af\u30c8={1}\u3001\u5024={2} \u306e\u5024\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093
xmlLibrary_error_set_value_3=\u30d5\u30a3\u30fc\u30c1\u30e3\u30fc={0}\u3001\u30aa\u30d6\u30b8\u30a7\u30af\u30c8={1}\u3001\u5024={2} \u306e\u5024\u306e\u8a2d\u5b9a\u65b9\u6cd5\u304c\u4e0d\u660e\u3067\u3059
xmlLibrary_error_set_reference=\u53c2\u7167\u306e\u8a2d\u5b9a\u30a8\u30e9\u30fc\u3067\u3059\u3002\u30d5\u30a3\u30fc\u30c1\u30e3\u30fc={0}\u3001\u30aa\u30d6\u30b8\u30a7\u30af\u30c8={1}\u3001\u5024={2} \u306e\u5024\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093
xmlLibrary_error_process_wrong_container=\u30d7\u30ed\u30bb\u30b9 ''{0}'' \u306b\u6709\u52b9\u306a\u30b3\u30f3\u30c6\u30ca\u30fc\u304c\u3042\u308a\u307e\u305b\u3093\u3002 \u30b3\u30f3\u30c6\u30ca\u30fc\u306e\u30bf\u30a4\u30d7\u306f ''{1}'' \u3067\u3059\u304c\u3001\u3053\u308c\u306f\u30d7\u30ed\u30bb\u30b9\u30fb\u30d1\u30c3\u30b1\u30fc\u30b8\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002
xmlLibrary_new_id=\u8981\u7d20 {0} \u306b\u6709\u52b9\u306a ID \u304c\u306a\u3044\u305f\u3081\u3001\u65b0\u898f ID {1} \u304c\u5272\u308a\u5f53\u3066\u3089\u308c\u307e\u3059
xmlLibrary_id_not_unique=\u8981\u7d20 ID ''{0}'' \u306f\u8907\u6570\u306e\u8981\u7d20\u306b\u3088\u3063\u3066\u4f7f\u7528\u3055\u308c\u3066\u3044\u307e\u3059

export_config_to_temp_location=\u4e00\u6642\u7684\u306a\u5834\u6240\u306b\u69cb\u6210\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u307e\u3059
open_lib_from_temp_exported_location=\u4e00\u6642\u7684\u306b\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u305f\u5834\u6240\u304b\u3089\u30e9\u30a4\u30d6\u30e9\u30ea\u30fc\u3092\u958b\u304d\u307e\u3059


