#-------------------------------------------------------------------------------
# Copyright (c) 2005, 2006 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

# Method Search Page
searchStringLabel_text=\u6587\u5b57\uff08* = \u4efb\u4f55\u5b57\u4e32\uff0c? = \u4efb\u4f55\u5b57\u5143\uff09\uff1a
caseSensitiveCheckbox_text=\u5340\u5206\u5927\u5c0f\u5beb
elementNameLabel_text=\u65b9\u6cd5\u5143\u7d20\u540d\u7a31\u6216\u5448\u73fe\u540d\u7a31\u578b\u6a23\uff1a
scopeGroup_text=\u7bc4\u570d
roleCheckbox_text=\u89d2\u8272
taskCheckbox_text=\u4f5c\u696d
workProductCheckbox_text=\u5de5\u4f5c\u6210\u679c

# Method Search Query
searchQuery_text=\u65b9\u6cd5\u641c\u5c0b

# Method Search Progress Dialog
scanLibraryTask_name=\u6b63\u5728\u6383\u63cf\u65b9\u6cd5\u7a0b\u5f0f\u5eab...
scanElementTask_name=\u6b63\u5728\u6383\u63cf\u65b9\u6cd5\u5143\u7d20 ''{0}''...

# Method Search Error Dialog
searchError_title=\u65b9\u6cd5\u641c\u5c0b
searchError_msg=IUPS0100E: \u7121\u6cd5\u7e7c\u7e8c\u641c\u5c0b\u4f5c\u696d\u3002
searchError_reason=\u76ee\u524d\u672a\u958b\u555f\u4efb\u4f55\u65b9\u6cd5\u7a0b\u5f0f\u5eab\u3002\n\n\u8acb\u958b\u555f\u4e00\u500b\u65b9\u6cd5\u7a0b\u5f0f\u5eab\uff0c\u7136\u5f8c\u518d\u8a66\u4e00\u6b21\u3002

# Method Search Result
searchResult_methodContent=\u65b9\u6cd5\u5167\u5bb9
searchResult_contentPackages=\u5167\u5bb9\u5957\u4ef6
searchResult_standardCategories=\u6a19\u6e96\u7a2e\u985e
searchResult_disciplines=\u898f\u7bc4
searchResult_domains=\u9818\u57df
searchResult_workProductTypes=\u5de5\u4f5c\u6210\u679c\u985e\u578b
searchResult_roleSets=\u89d2\u8272\u96c6
searchResult_tools=\u5de5\u5177
searchResult_customCategories=\u81ea\u8a02\u7a2e\u985e
searchResult_processes=\u7a0b\u5e8f
searchResult_capabilityPatterns=\u529f\u80fd\u578b\u6a23
searchResult_deliveryProcesses=\u4ea4\u4ed8\u6d41\u7a0b
searchResult_match=''{0}'' - 1 \u500b\u76f8\u7b26
searchResult_matches=''{0}'' - {1} \u500b\u76f8\u7b26
