#-------------------------------------------------------------------------------
# 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
# The UI text in the XSL stylesheets.

additionalInfoText=Additional Information
additionalPerformerText=Additional Performers
aggregatesText=Aggregates
alternativesText=Alternatives
applicationText=Application
artifactText=Artifact
assetsText=Assets
assignmentApproachesText=Assignment Approaches
assistingText=Assisting
attachedFilesText=Attached Files
backgroundText=Background
briefOutlineText=Brief Outline
categoriesText=Categories
checkItemsText=Check Items
checklistsText=Checklists
collapseAllText=Collapse All Check Items
compositeRoleText=Composite Role
conceptsText=Concepts
containedArtifactsText=Contained Artifacts
containerArtifactText=Container Artifact
contentElementsText=Categorized Elements
contentReferencesText=Content References
deliverableText=Deliverable
deliverablePropertiesText=Deliverable Properties
deliveredPartsText=Deliverable Parts
deliveredWorkProductsText=Delivered Work Products
dependentText=Dependent Work Products
descriptionText=Description
disciplineText=Discipline
disciplinesText=Disciplines
subdisciplinesText=Subdisciplines
domainText=Domain
domainsText=Domains
examplesText=Examples
expandAllText=Expand All Check Items
extendsText=Extends
externalText=External
externalDescriptionText=External Description
goalsText=Goals
guidelinesText=Guidelines
illustrationsText=Illustrations	
impactOfNotHavingText=Impact of not having
impactingText=Impacting Work Products
inputsText=Inputs
inputToText=Input To
itemsText=Items
keyConsiderationsText=Key Considerations
levelsOfAdoptionText=Levels of Adoption
mandatoryText=Mandatory
mainText=Main
mainDescriptionText=Main Description
mainResponsibleText=Main Responsible
methodText=Method Work Product
modifiedByText=Modified By
moreInfoText=More Information
notationText=Notation
optionalText=Optional
outcomeText=Outcome
outputFromText=Output From
outputsText=Outputs
packagingInstructionsText=Packaging Instructions
packagingGuidanceText=Packaging Guidance
performingRolesText=Performing Roles
primaryPerformerText=Primary Performer
problemText=Problem
propertiesText=Properties
purposeText=Purpose
reasonsForNotNeedingText=Reasons for not needing
referenceWorkflowsText=Reference Workflows
relatedElementsText=Related Elements
relationshipsText=Relationships
reportsText=Reports
representationOptionsText=Representation Options
responsibleText=Responsible
responsibleForText=Responsible for
reusableAssetsText=Reusable Assets
roleText=Role
rolesText=Roles
roleSetsText=Role Sets
skillsText=Skills
staffingText=Staffing
stepsText=Steps
subcategoriesText=Sub-Categories	
subdomainsText=Subdomains
subPracticesText=Sub-Practices
superTeamText=Super-Team Profile
supportingMaterialsText=Supporting Materials
subteamsText=Sub-Teams Profiles
synonymsText=Synonyms
tailoringText=Tailoring
taskText=Task
tasksText=Tasks
tbsText=Team Allocation
teamProfileText=Team Profile
teamRolesText=Team Profile Roles
techniquesText=Guidelines
templatesText=Templates
toolMentorsText=Tool Mentors
toolText=Tool
usageText=Usage
wbsText=Work Breakdown Structure
whitepapersText=Whitepapers
workProductsText=Work Products
workProductTypesText=Work Product Kinds
wpbsText=Work Product Usage
workBreakdownText=Work Breakdown
workflowText=Workflow
workProductBreakdownText=Work Product Breakdown
workProductDependenciesText=Work Product Dependencies
teamProfileBreakdownText=Team Breakdown
teamStructureText=Team Structure
pageNotInstalledText=Page Not Installed
elementDoesNotExistText=Element Does Not Exist
isNotValidText=The referenced element is not a valid element in the current library.
elementMightBeDeletedText=The element may have been deleted from the library.
pleaseFixLinkText=Please check your content library and fix the link.
infoAboutMissingElementText=Information about the missing element:
elementNameText=Element Name:
guidText=GUID:
missingElementText=Referenced page is not in this configuration
notAvailableText=The referenced page is not available in the current configuration. This page may be available in another process configuration.
elementTypeText=Element Type:
pluginNameText=Plugin Name:
predecessorText=Predecessor
planningDataText=PlanningData
multipleOccurrencesText=Multiple Occurrences
eventDrivenText=Event Driven
ongoingText=Ongoing
plannedText=Planned
repeatableText=Repeatable
usageGuidanceText=Usage Guidance
inputsText=Inputs
outputsText=Outputs
activityEntryStateText=Activity Entry State
activityExitStateText=Activity Exit State
prefixText=Prefix
externalIdText=External Id
scopeText=Scope
roadmapText=Roadmap
typeofContractText=Type of Contract
projectCharacteristicsText=Project Characteristics
projectMemberExpertiseText=Project Member Expertise
riskLevelText=Risk Level
scaleText=Scale
usageNotesText=Usage Notes
contextText=Context
parentActivitiesText=Parent Activities
includedPatternsText=Included Patterns
checklistText=Checklist
communicationsMaterialsText=Communications Materials
educationMaterialsText=Education Materials
estimatingTechniqueText=Estimating Technique
additionalText=Additional
modifiesText=Modifies
additionallyPerformsText=Additionally Performs
indexText=Index
prefixText=Prefix
breakdownElementText=Breakdown Element
stepsText=Steps
predecessorsText=Predecessors
repeatableText=Repeatable
typeText=Type
ongoingText=Ongoing
eventDrivenText=Event-Driven
modelInfoText=Model Info
entryStateText=Entry State
exitStateText=Exit State
teamText=Team
parentPackageText=Parent Package
containedPackagesText=Contained Packages
contentsText=Contents
basedOnMethodRoleText=Based on Method Role
basedOnMethodTaskText=Based on Method Task
basedOnMethodWorkProductText=Based on Method Work Product
summaryText=Summary
performsText=Performs
replacesText=Replaces
contributesText=Contributes
noneText=None
estimationConsiderationsText=Estimation Considerations
activityReferencesText=Activity References
nameText=Name
presentationNameText=Presentation Name