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

################################################################################
# BEGIN NO TRANSLATION
################################################################################

# Role diagram fonts and layout
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_name=Arial
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_name_ja=\u30c0\u30a4\u30a2\u30ed\u30b0
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_name_ko=\ub300\ud654 \uc0c1\uc790
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_name_zh=\u5bf9\u8bdd\u6846
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_name_zh_TW=Dialogue
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_name_win32=Arial
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_name_win32_ja=MS Gothic
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_name_win32_ko=\uad74\ub9bc\uccb4
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_name_win32_zh=\u9ed1\u4f53
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_name_win32_zh_TW=\u7d30\u660e\u9ad4
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_size=10
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagramFont_size_win32=10
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagram_xMargin=200
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagram_xSpacing=70
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
roleDiagram_ySpacing=30

################################################################################
# END NO TRANSLATION
################################################################################

unknown_text=Inconnu

# Error Reasons
emptyLibraryPathError_reason=Le chemin de biblioth\u00e8que de m\u00e9thodes est vide.
missingLibraryFileError_reason=Le fichier de mod\u00e8le de la biblioth\u00e8que de m\u00e9thodes est manquant.
unresolvedProxyError_reason=La biblioth\u00e8que de m\u00e9thodes s\u00e9lectionn\u00e9e contient des r\u00e9f\u00e9rences d'\u00e9l\u00e9ments non r\u00e9solues. Ceci est g\u00e9n\u00e9ralement d\u00fb \u00e0 des fichiers XMI manquants ou ayant \u00e9t\u00e9 d\u00e9plac\u00e9s dans le dossier Biblioth\u00e8que.\n\nFermez cette bo\u00eete de dialogue et affichez la vue Probl\u00e8mes afin d'identifier les r\u00e9f\u00e9rences non r\u00e9solues. Afin d'\u00e9viter d'endommager la biblioth\u00e8que, il est fortement recommand\u00e9 de commencer par r\u00e9soudre ces r\u00e9f\u00e9rences avant d'ajouter d'autres modifications \u00e0 la biblioth\u00e8que.

# Warning Messages
configClosureWarning_msg1=IUPL0007W : un ou plusieurs \u00e9l\u00e9ments enfant contiennent des r\u00e9f\u00e9rences manquantes
configClosureWarning_msg2=IUPL0008W: Cet \u00e9l\u00e9ment doit \u00eatre s\u00e9lectionn\u00e9 afin de r\u00e9soudre une ou plusieurs r\u00e9f\u00e9rences manquantes
configClosureWarning_msg3=IUPL0009W: Cet \u00e9l\u00e9ment r\u00e9f\u00e9rence un ou plusieurs \u00e9l\u00e9ments d'un package non s\u00e9lectionn\u00e9

ElementError_missing_element=''{0}'' r\u00e9f\u00e9rence l''\u00e9l\u00e9ment manquant ''{1}''
ElementError_contributor_missing_base=''{0}'' contribue \u00e0 l''\u00e9l\u00e9ment de base manquant ''{1}''
ElementError_extender_missing_base=''{0}'' \u00e9tend l''\u00e9l\u00e9ment manquant ''{1}''
ElementError_replacer_missing_base=''{0}'' remplace l''\u00e9l\u00e9ment manquant ''{1}''
ElementError_missing_primary_performer=''{0}'' r\u00e9f\u00e9rence l''ex\u00e9cutant principal manquant ''{1}''
ElementError_missing_mandatory_input=''{0}'' r\u00e9f\u00e9rence l''entr\u00e9e obligatoire manquante ''{1}''
ElementError_missing_output=''{0}'' r\u00e9f\u00e9rence la sortie manquante ''{1}''
ElementError_missing_responsible_for_workProduct=''{0}'' r\u00e9f\u00e9rence le responsable manquant pour le produit ''{1}''
ElementError_having_multiple_replacers=''{0}'' a plusieurs \u00e9l\u00e9ments de remplacement : ''{1}''

# Error Messages
loadResourcesError_msg=IUPL0000E : La biblioth\u00e8que de m\u00e9thodes a \u00e9t\u00e9 charg\u00e9e mais des erreurs ont \u00e9t\u00e9 d\u00e9tect\u00e9es.
unsupportedGuidanceTypeError_msg=IUPL0001E : Ce conseil ne peut pas \u00eatre converti dans un autre type.
convertGuidanceError_msg=IUPL0002E : Ce conseil ne peut pas \u00eatre converti dans le type cible.
saveConvertedGuidanceError_msg=IUPL0003E : Impossible de sauvegarder le conseil converti ''{0}''.

# Convert activity
convertActivityError_title=Erreur de conversion de type d'activit\u00e9
convertActivityError_msg=IUPL0006E : Cette activit\u00e9 ne peut pas \u00eatre convertie dans le type cible.
saveConvertedActivityError_msg=IUPL0007E : Impossible de sauvegarder l''activit\u00e9 convertie ''{0}''.

# Error Reasons
error_reason=IUPL0004E : Une erreur s'est produite. Cliquez sur OK pour plus d'informations.
unsupportedGuidanceTypeError_reason=Il n''existe aucun type de conseil compatible pour {0}.
invalidLibraryPathError_reason=Chemin de biblioth\u00e8que non valide. Le fichier projet n'a pas pu \u00eatre cr\u00e9\u00e9.
couldNotLockLibrary_reason=Impossible de verrouiller la biblioth\u00e8que.

# Progress Messages
copyingAttachmentsTask_name=Copie des pi\u00e8ces jointes...

# Convert Guidance Dialog
convertGuidanceDialog_title=Convertir le type de conseil
convertGuidanceDialog_text=S\u00e9lectionnez le type de conseil cible.

# Guidance type names for Convert Guidance Dialog
checklist_text=Liste de contr\u00f4le
concept_text=Concept
example_text=Exemple
guideline_text=Instructions
estimate_text=Estimation
estimatingMetric_text=Mesure d'estimation
estimationConsiderations_text=Consid\u00e9rations relatives \u00e0 l'estimation
report_text=Rapport
template_text=Canevas
supportingMaterial_text=Documents d'accompagnement
toolMentor_text=Guide d'utilisation de l'outil
whitepaper_text=Livre blanc
termDefinition_text=D\u00e9finition du terme
practice_text=Pratique
reusableAsset_text=Ressource r\u00e9utilisable

#activity breakdown info strings
ActivityLayout_primaryTasks_text=Effectue en tant que propri\u00e9taire
ActivityLayout_additionalTasks_text=Effectue en suppl\u00e9ment
ActivityLayout_assistTasks_text=Effectue en tant qu'aide

# Convert Guidance Error Messages
convertGuidanceError_title=Erreur de conversion du type de conseil

# Load Resources Error Dialog
loadResourcesError_title=Erreur d'ouverture de la biblioth\u00e8que de m\u00e9thodes
loadResourcesError_reason=Certaines ressources de biblioth\u00e8que n'ont pas pu \u00eatre charg\u00e9es.\n\n Cliquez sur D\u00e9tails pour r\u00e9viser les erreurs et les r\u00e9soudre avant d'ajouter davantage de modifications \u00e0 la biblioth\u00e8que.

# Role Diagrams
roleDiagramPerforms_text=ex\u00e9cute
roleDiagramResponsibleFor_text=responsable de

DefaultContentValidator_MSG0=El\u00e9ment r\u00e9f\u00e9renc\u00e9 : {0}
DefaultContentValidator_MSG1=Info : {0}
DefaultContentValidator_MSG4=Avertissement : {0}
DefaultContentValidator_MSG7=Erreur : {0}
DefaultContentValidator_MSG10=El\u00e9ment r\u00e9f\u00e9renc\u00e9 {0} manquant
DefaultContentValidator_MSG11=Impossible de trouver d''\u00e9l\u00e9ment pour l''identificateur global unique {0}
DefaultContentValidator_MSG12=Le fichier ''{0}'' r\u00e9f\u00e9rence la ressource manquante ''{1}''
DefaultContentValidator_MSG15=Fichier de ressources ''{0}'' manquant
DefaultContentValidator_MSG17=Connexion \u00e0 l''URL ''{0}'' impossible
DefaultContentValidator_MSG19=Connexion \u00e0 l''URL ''{0}'' impossible : {1}
ImportExportUtil_MSG8=Fichier ''{0}'' introuvable.
ImportExportUtil_MSG9=Impossible de cr\u00e9er le r\u00e9pertoire temporaire ''{0}''.
unknownGuidance_text=Inconnu

CopyAttachmentsToNewLocation_log_noContentPath=CopyAttachmentsToNewLocation.HandleAttachmentsPlugin: aucun chemin de contenu pour {0}
LibraryModificationHelper_cannotUpdate=IUPL0006W : Impossible de mettre \u00e0 jour {0} {1}
warningDlg_title=Avertissement
errorDlg_title=Erreur
errorDlg_saveError=IUPL0005E : Erreur lors de l''enregistrement des modifications dans le fichier ''{0}''

# activity diagram names
activityDiagramName=Diagramme d''activit\u00e9 : {0}
activityDetailDiagramName=Diagramme d\u00e9taill\u00e9 d''activit\u00e9 : {0}
wpDependencyDiagramName=Diagramme de d\u00e9pendance de produit de travail : {0}

# localize the value based on locale.  for example, 
# for English, the value is ". "
#colon_with_space=: 
# for French, the value is " . ", you need to use a \ to preserve the leading space
#colon_with_space=\ : 
# for Chinese, the colon should be double bytes
# Don't trim the spaces after the colon.
colon_with_space=: 

oldToolVersion_err_msg=Cette version de {0} n''est pas compatible avec votre fichier de biblioth\u00e8que ''{2}''. Vous devez effectuer une mise \u00e0 niveau de {0} vers la version {1} ou sup\u00e9rieure pour pouvoir ouvrir cette biblioth\u00e8que.
toolVersionMismatch_err_msg=Cette version de {0} n''est pas compatible avec votre fichier de biblioth\u00e8que ''{2}''. Vous devez effectuer une mise \u00e0 niveau de {0} vers une version sup\u00e9rieure pour pouvoir ouvrir cette biblioth\u00e8que.
libUpgradeRequired_err_msg=La biblioth\u00e8que que vous avez indiqu\u00e9e doit \u00eatre mise \u00e0 niveau vers la nouvelle structure de biblioth\u00e8ques. Ouvrez la biblioth\u00e8que pour la mettre \u00e0 niveau et refaites une tentative.

WorkProductSlot_text=Emplacement de produit

libraryProblemMonitor=Contr\u00f4le des probl\u00e8mes des biblioth\u00e8ques

references_unresolved_base_txt=R\u00e9f\u00e9rences aux plug-ins de base non r\u00e9solus
