#-------------------------------------------------------------------------------
# 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

# Method Search Page
searchStringLabel_text=Text (* = any string, ? = any character):
caseSensitiveCheckbox_text=Case sensitive
elementNameLabel_text=Method element name or presentation name pattern:
scopeGroup_text=Scope
roleCheckbox_text=Role
taskCheckbox_text=Task
workProductCheckbox_text=Work Product

# Method Search Query
searchQuery_text=Method Search

# Method Search Progress Dialog
scanLibraryTask_name=Scanning method library...
scanElementTask_name=Scanning method element ''{0}''...

# Method Search Error Dialog
searchError_title=Method Search
searchError_msg=IUPS0100E: Search operation cannot proceed.
searchError_reason=No method library is currently opened.\n\nOpen a method library and try again.

# Method Search Result
searchResult_methodContent=Method Content
searchResult_contentPackages=Content Packages
searchResult_standardCategories=Standard Categories
searchResult_disciplines=Disciplines
searchResult_domains=Domains
searchResult_workProductTypes=Work Product Types
searchResult_roleSets=Role Sets
searchResult_tools=Tools
searchResult_customCategories=Custom Categories
searchResult_processes=Processes
searchResult_capabilityPatterns=Capability Patterns
searchResult_deliveryProcesses=Delivery Processes
searchResult_match=''{0}'' - 1 match
searchResult_matches=''{0}'' - {1} matches
