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

#
# begin element type text section
# user can customize the type text before publishing
#
activityText=Activity
artifactText=Artifact
capabilityPatternText=Capability Pattern
checklistText=Checklist
compositeRoleText=Composite Role
conceptText=Concept
customCategoryText=Custom Category
deliverableText=Deliverable
deliveryProcessText=Delivery Process
disciplineText=Discipline
disciplineGroupingText=Discipline Grouping
domainText=Domain
estimationConsiderationsText=Estimation Considerations
exampleText=Example
guidelineText=Guideline
iterationText=Iteration
milestoneText=Milestone
outcomeText=Outcome
phaseText=Phase
practiceText=Practice
reportText=Report
reusableAssetText=Reusable Asset
roadmapText=Roadmap
roleText=Role
roleDescriptorText=Role Descriptor
roleSetText=Role Set
roleSetGroupingText=Role Set Grouping
supportingMaterialText=Supporting Material
taskText=Task
taskDescriptorText=Task Descriptor
teamProfileText=Team Profile
templateText=Template
termDefinitionText=Term Definition
toolText=Tool
toolMentorText=Tool Mentor
whitepaperText=Whitepaper
workProductDescriptorText=Work Product Descriptor
workProductTypeText=Work Product Kind

#
# end element type text section
#

#
# other layout text below
#
additionalInfoText=Additional Information
additionalPerformerText=Additional Performers
aggregatesText=Aggregates
alternativesText=Alternatives
applicationText=Application

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

conceptsText=Concepts
containedArtifactsText=Contained Artifacts
containerArtifactText=Container Artifact
contentElementsText=Categorized Elements
contentReferencesText=Content References

deliverablePropertiesText=Deliverable Properties
deliveredPartsText=Deliverable Parts
deliveredWorkProductsText=Delivered Work Products
dependentText=Dependent Work Products
descriptionText=Description
descriptorsText=Descriptors

disciplinesText=Disciplines
subdisciplinesText=Subdisciplines

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

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

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

tasksText=Tasks
tbsText=Team Allocation

teamRolesText=Team Profile Roles
techniquesText=Guidelines
templatesText=Templates
toolMentorsText=Tool Mentors

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=Plug-in Name:
predecessorText=Predecessor
planningDataText=Planning Data
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

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

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

activityReferencesText=Activity References
nameText=Name
presentationNameText=Presentation Name
representationText=Selected Representation
projectSpecificsText=Project Specifics
extendsReplacesText=Extends and Replaces
workProductText=Work Product
processUsageText=Process Usage