# 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

# Method Element Names (Singular)
activity_text=Aktivit\u00e4t
artifact_text=Artefakt
capabilityPattern_text=Prozessmuster
checklist_text=Pr\u00fcfliste
checkItem_text=Pr\u00fcflisteneintrag
compositeRole_text=Kombinierte Rolle
concept_text=Konzept
contentPackage_text=Inhaltspaket
customCategory_text=Angepasste Kategorie
deliverable_text=Liefergegenstand
deliveryProcess_text=Bereitstellungsprozess
descriptor_text=Deskriptor
discipline_text=Disziplin
disciplineGrouping_text=Zusammenfassung von Disziplinen
domain_text=Dom\u00e4ne
estimate_text=Sch\u00e4tzen
estimatingMetric_text=Sch\u00e4tzmetrik
estimationConsiderations_text=Hinweise zum Sch\u00e4tzen
example_text=Beispiel
guidance_text=Anleitung
guideline_text=Richtlinie
iteration_text=Iteration
methodConfiguration_text=Methodenkonfiguration
methodContent_text=Methodeninhalt
methodLibrary_text=Methodenbibliothek
methodPackage_text=Methodenpaket
methodPlugin_text=Methoden-Plug-in
milestone_text=Meilenstein
outcome_text=Resultat
phase_text=Phase
practice_text=Verfahren
process_text=Prozess
processContribution_text=Unterschiedlicher Prozess
processFamily_text=Prozessfamilie
processPackage_text=Prozesspaket
report_text=Bericht
reusableAsset_text=Wiederverwendbares Asset
roadmap_text=Roadmap
roleDescriptor_text=Rollendeskriptor
role_text=Rolle
roleSet_text=Rollengruppe
roleSetGrouping_text=Zusammenfassung von Rollengruppen
standardCategory_text=Standardkategorie
step_text=Schritt
supportingMaterial_text=Unterst\u00fctzendes Material
task_text=Aufgabe
taskDescriptor_text=Aufgabendeskriptor
teamProfile_text=Teamprofil
template_text=Vorlage
termDefinition_text=Begriffsdefinition
tool_text=Tool
toolMentor_text=Toolmentor
whitepaper_text=White Paper
workProduct_text=Arbeitsergebnis
workProductDescriptor_text=Arbeitsergebnisdeskriptor
workProductElement_text=Arbeitsergebniselement
workProductType_text=Art des Arbeitsergebnisses

# Method Element Names (Plural)
activity_text_plural=Aktivit\u00e4ten
artifact_text_plural=Artefakte
capabilityPattern_text_plural=Prozessmuster
checklist_text_plural=Pr\u00fcflisten
checkItem_text_plural=Pr\u00fcflisteneintr\u00e4ge
compositeRole_text_plural=Kombinierte Rollen
concept_text_plural=Konzepte
contentPackage_text_plural=Inhaltspakete
customCategory_text_plural=Angepasste Kategorien
deliverable_text_plural=Liefergegenst\u00e4nde
deliveryProcess_text_plural=Bereitstellungsprozesse
descriptor_text_plural=Deskriptoren
discipline_text_plural=Disziplinen
disciplineGrouping_text_plural=Disziplingruppierungen
domain_text_plural=Dom\u00e4nen
estimate_text_plural=Sch\u00e4tzungen
estimatingMetric_text_plural=Sch\u00e4tzmetriken
estimationConsiderations_text_plural=Hinweise zum Sch\u00e4tzen
example_text_plural=Beispiele
guidance_text_plural=Anleitungen
guideline_text_plural=Richtlinien
iteration_text_plural=Iterationen
methodConfiguration_text_plural=Methodenkonfigurationen
methodContent_text_plural=Methodeninhalt
methodLibrary_text_plural=Methodenbibliotheken
methodPackage_text_plural=Methodenpakete
methodPlugin_text_plural=Methoden-Plug-ins
milestone_text_plural=Meilensteine
outcome_text_plural=Resultate
phase_text_plural=Phasen
practice_text_plural=Verfahren
process_text_plural=Prozesse
processContribution_text_plural=Unterschiedliche Prozesse
processFamily_text_plural=Prozessfamilien
processPackage_text_plural=Prozesspakete
report_text_plural=Berichte
reusableAsset_text_plural=Wiederverwendbare Assets
roadmap_text_plural=Roadmaps
roleDescriptor_text_plural=Rollendeskriptoren
role_text_plural=Rollen
roleSet_text_plural=Rollengruppen
roleSetGrouping_text_plural=Zusammenfassungen von Rollengruppen
standardCategory_text_plural=Standardkategorien
step_text_plural=Schritte
supportingMaterial_text_plural=Unterst\u00fctzendes Material
task_text_plural=Aufgaben
taskDescriptor_text_plural=Aufgabendeskriptoren
teamProfile_text_plural=Teamprofile
template_text_plural=Vorlagen
termDefinition_text_plural=Begriffsdefinitionen
tool_text_plural=Tools
toolMentor_text_plural=Toolmentoren
whitepaper_text_plural=White Paper
workProduct_text_plural=Arbeitsergebnisse
workProductDescriptor_text_plural=Arbeitsergebnisdeskriptoren
workProductElement_text_plural=Arbeitsergebniselemente
workProductType_text_plural=Arten von Arbeitsergebnissen

# Application title.
application_title={0} - {1}

# Open Method Library Wizard
openLibraryWizard_title=Methodenbibliothek \u00f6ffnen
openLibraryMainWizardPage_title=Pfad mit einer Methodenbibliothek angeben
openLibraryMainWizardPage_title_2=Methodenbibliothek ausw\u00e4hlen
openLibraryMainWizardPage_text={0} speichert Methoden und Prozesse in einem Ordner, der\nals Methodenbibliothek bezeichnet wird. W\u00e4hlen Sie einen Methodenbibliotheksordner f\u00fcr diese Sitzung aus.
pathLabel_text=Pfad:
nameLabel_text=Name:
uriLabel_text=URI:
openUnlistedLibraryCheckbox_text=\u00d6ffnen Sie eine Methodenbibliothek, die nicht oben in der Liste enthalten ist.
libraryTypeLabel_text=Typ:
libraryLabel_text=Bibliothek:
browseButton_text=Durchsuchen...
promptForLibraryCheckbox_text=Als Standard verwenden und nicht erneut anfragen.
openLibraryDialog_newLibrary_text=Es ist keine Methodenbibliothek in ''{0}'' vorhanden.\nEs wird eine neue Methodenbibliothek im angegebenen Verzeichnis erstellt und ge\u00f6ffnet.\n\nKlicken Sie auf OK, um die Operation fortzusetzen, oder klicken Sie auf Abbrechen,\num einen anderen Methodenbibliothekspfad anzugeben.
convertToSynProcessLib_msg=In automatisch synchronisierte Bibliothek konvertieren

# Select Method Library Folder Dialog
selectLibraryFolderDialog_title=Methodenbibliothek ausw\u00e4hlen
selectLibraryFolderDialog_text=W\u00e4hlen Sie einen Methodenbibliotheksordner aus.

# Open Library Progress Message
openingLibraryTask_name=Methodenbibliothek wird ge\u00f6ffnet...

# Open Method Library Error Dialog
openLibraryError_msg=IUPL0301E: Die Methodenbibliothek kann nicht erstellt werden.
openLibraryInternlError_reason=Es ist ein interner Fehler aufgetreten.
openLibraryError_reason1=Der angegebene Pfad f\u00fcr die Methodenbibliothek, ''{0}'', ist ung\u00fcltig.
openLibraryError_reason2=Es ist bereits eine Methodenbibliothek in ''{0}'' vorhanden.
openLibraryError_reason3=Der angegebene Ordner f\u00fcr die Methodenbibliothek, ''{0}'', kann nicht erstellt werden.
openLibraryError_reason4=Der angegebene Methodenbibliotheksordner ist ein Exportordner f\u00fcr ein Plug-in oder eine Konfigurationsspezifikation.
openLibraryError_advice=W\u00e4hlen Sie OK aus, um einen anderen Methodenbibliothekspfad anzugeben.

# Open Method Library Error Messages
invalidLibraryPath_msg=IUPL0302E: Die angegebene Methodenbibliothek kann nicht ge\u00f6ffnet werden.
invalidLibraryPath_reason=Der ausgew\u00e4hlte Methodenbibliotheksordner ist ung\u00fcltig, nicht vorhanden, oder Sie sind nicht berechtigt, auf den Ordner zuzugreifen.\n\nKlicken Sie auf OK, um einen anderen Bibliotheksordner auszuw\u00e4hlen.

# Read-only Project File Error Dialog
readOnlyProjectFile_text=IUPL0304E: ''{0}'' ist schreibgesch\u00fctzt. Bevor Sie den Vorgang fortsetzen, m\u00fcssen Sie daf\u00fcr sorgen, dass in die Datei geschrieben werden kann.
retryButton_text=Wiederholen
cancelButton_text=Abbrechen

# Version Mismatch Dialog
versionMismatchDialog_text=IUPL305E: Die ausgew\u00e4hlte Bibliothek kann nicht ge\u00f6ffnet werden. Sie m\u00fcssen einen Upgrade von {0} auf Version {1} oder h\u00f6her durchf\u00fchren, um diese Bibliothek \u00f6ffnen zu k\u00f6nnen.
versionMismatchDialog_text_unknown=IUPL306E: Die ausgew\u00e4hlte Bibliothek kann nicht ge\u00f6ffnet werden. Sie m\u00fcssen einen Upgrade von {0} auf eine h\u00f6here Version durchf\u00fchren, um diese Bibliothek \u00f6ffnen zu k\u00f6nnen.

# Upgrade Method Library Dialog
upgradeLibraryDialog_title=Upgrade der Methodenbibliothek durchf\u00fchren
upgradeLibraryDialog_text=Die ausgew\u00e4hlte Bibliothek muss f\u00fcr die neue Bibliotheksstruktur aktualisiert werden.\n\nM\u00f6chten Sie den Upgrade fortsetzen?
upgradingLibraryTask_name=Upgrade f\u00fcr Methodenbibliothek wird durchgef\u00fchrt...

# Upgrade Library Error Dialog
upgradeLibraryError_msg=IUPL0306E: Fehler beim Upgrade der Methodenbibliothek. Suchen Sie in der Protokolldatei nach weiteren Einzelheiten.

# Switch Configuration Dialog
switchConfigDialog_title=Konfiguration wechseln
switchConfigDialog_text=M\u00f6chten Sie von der aktuellen Konfiguration zur Standardkonfiguration ''{0}'', die dem ausgew\u00e4hlten Prozess zugeordnet ist, wechseln?
	
# Configuration Combo
currentConfigLabel_text=Aktuelle Konfiguration:
selectConfigLabel_text=W\u00e4hlen Sie eine Konfiguration aus.

# Delete Files Confirmation Message
deleteFilesConfirmation_msg=Der angegebene Pfad ''{0}'' ist bereits vorhanden. Es werden alle Dateien im Ordner gel\u00f6scht. Fortfahren?

# Paths/Files Error Messages
deleteFilesError_reason=Der Pfad ''{0}'' enth\u00e4lt mindestens eine Datei, die nicht gel\u00f6scht werden kann.\n\nW\u00e4hlen Sie einen anderen Pfad aus, und wiederholen Sie den Vorgang.
createPathError_reason=Der Pfad ''{0}'' kann nicht erstellt werden.\n\nW\u00e4hlen Sie einen anderen Pfad aus, und wiederholen Sie den Vorgang.
invalidPath_msg=Der angegebene Pfad ist nicht g\u00fcltig.
overrideCurrentLibraryError_msg0=Sie k\u00f6nnen nicht in ein Verzeichnis exportieren, das die aktuelle Methodenbibliothek enth\u00e4lt. W\u00e4hlen Sie ein anderes Verzeichnis aus, und wiederholen Sie den Vorgang.

# Backup Library Dialog
backupLibraryDialog_title=Sicherungsbibliothek
backupLibraryDialog_text=Es wird dringend empfohlen, die aktuelle Methodenbibliothek zu sichern, bevor Sie den Vorgang fortsetzen.\n\nKlicken Sie auf OK, um eine Sicherungskopie der Bibliothek im angegebenen Verzeichnis zu erstellen. Klicken Sie auf \u00dcberspringen, um den Vorgang ohne Erstellung der Sicherung fortzusetzen.
backingUpLibraryTask_name=Bibliotheksdateien werden gesichert...

# Copy Library Dialog
copyLibraryDialog_title=Bibliothek kopieren
copyLibraryDialog_text_readOnlyLib=Die Bibliothek, die Sie gerade \u00f6ffnen, ist eine mit RMC gelieferte Standardbibliothek. Es wird dringend empfohlen, dass Sie zum Bearbeiten eine Arbeitskopie dieser Bibliothek erstellen.\n\nGeben Sie eine Speicherposition und einen Bibliotheksnamen f\u00fcr die neue Bibliothek ein, und klicken Sie auf "Kopieren", um eine Arbeitskopie zu erstellen.\n\nKlicken Sie auf "\u00dcberspringen", um mit der Bearbeitung der Standardbibliothek in der aktuellen Speicherposition fortzufahren. Die Bearbeitungsfunktionalit\u00e4t f\u00fcr die Standardbibliothek ist aufgrund von Zugriffseinschr\u00e4nkungen Ihrer Plattform eingeschr\u00e4nkt.
copyLibraryTask_name=Kopie der Bibliotheksdateien wird erstellt ...
copyLibraryDialog_copyButton_text=Kopieren

# Path Selection Dialog
pathSelectionError_msg=Verzeichnis kann nicht erstellt werden
okButton_text=OK
skipButton_text=\u00dcberspringen

# Process Editor preferences
alwaysButton_text=Immer
neverButton_text=Nie
promptButton_text=Anfrage

# Add Link Dialog
linkToURL_name=URL
linkToFile_name=Datei
elementLink_name=Methodenelement
elementLinkWithType_name=Methodenelement mit Typpr\u00e4fix
elementLinkWithUserText_name=Methodenelement mit benutzerdefiniertem Text

# Convert Activity Type Dialog
convertActivityDialog_title=Aktivit\u00e4tstyp konvertieren
convertActivityDialog_text=W\u00e4hlen Sie den Zielaktivit\u00e4tstyp aus.
unsupportedActivityType_msg=IUPL0307E: Diese Aktivit\u00e4t kann nicht in einen anderen Typ konvertiert werden.
unsupportedActivityType_reason=Es gibt keinen kompatiblen Aktivit\u00e4tstyp f\u00fcr {0}.

# Select Process Wizard Page
selectProcessWizardPage_title=Prozess ausw\u00e4hlen
selectProcessWizardPage_text=W\u00e4hlen Sie ein Prozessmuster oder einen Bereitstellungsprozess f\u00fcr den Export aus.
processesLabel_text=Prozesse:
briefDescriptionLabel_text=Kurzbeschreibung:

# Export Process Wizard Error Message.
noOpenLibraryWarning_msg=IUPL0308E: Es ist derzeit keine Methodenbibliothek ge\u00f6ffnet. Klicken Sie auf Abbrechen, um eine Methodenbibliothek zu \u00f6ffnen oder eine neue Methodenbibliothek zu erstellen, und f\u00fchren Sie anschlie\u00dfend den Assistenten erneut aus. 

# Moved from Authoring UI plug-in to avoid Authoring UI dependency
errorDialog_title=Fehler
MethodElementDeleteAction_deleteconfirm_text=''{0}'' wirklich l\u00f6schen?
confirmDeleteDialog_title=L\u00f6schen best\u00e4tigen
confirmDeleteDialog_msg=''{0}'' wirklich l\u00f6schen?
confirmDeleteDialog_msgWithReference=''{0}'' wirklich l\u00f6schen?\n\nDie folgenden Elemente enthalten Referenzen auf die zu l\u00f6schenden Eintr\u00e4ge: {1}
ProcessDeleteAction_deletecofirm_text=Mit dieser Aktion wird der aktuelle Editor gespeichert und die \u00c4nderung permanent festgeschrieben. ''{0}'' wirklich l\u00f6schen?

# Save Method Library Dialog
saveLibraryDialog_title=Methodenbibliothek speichern
saveLibraryDialog_text=Die aktuelle Methodenbibliothek wurde ge\u00e4ndert. \u00c4nderungen speichern?

# Save Method Library Error Messages
saveLibraryError_msg=IUPL0308E: Die Methodenbibliothek kann nicht gespeichert werden.
error_reason=Es ist ein Fehler aufgetreten.\n\nKlicken Sie auf Details, um weitere Informationen zu erhalten.

# ElementTreeContentProvider Strings
elementTCProvider_methodContent=Methodeninhalt
elementTCProvider_contentPackages=Inhaltspakete
elementTCProvider_standardCategories=Standardkategorien
elementTCProvider_disciplines=Disziplinen
elementTCProvider_domains=Dom\u00e4nen
elementTCProvider_workProductTypes=Arbeitsergebnistypen
elementTCProvider_roleSets=Rollengruppen
elementTCProvider_tools=Tools
elementTCProvider_customCategories=Angepasste Kategorien
elementTCProvider_processes=Prozesse
elementTCProvider_capabilityPatterns=Prozessmuster
elementTCProvider_deliveryProcesses=Bereitstellungsprozesse
