# 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

################################################################################
# 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=Dialog
# !! 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=Sconosciuto

# Error Reasons
emptyLibraryPathError_reason=Il percorso della libreria dei metodi \u00e8 vuoto.
missingLibraryFileError_reason=Il file del modello della libreria dei metodi manca.
unresolvedProxyError_reason=La libreria dei metodi selezionata contiene riferimenti ad elementi non risolti. Di solito, questo problema \u00e8 causato da file XMI che mancano o che sono stati spostati nella cartella delle librerie.\n\nChiudere questa finestra di dialogo e visualizzare la vista Problemi per identificare i riferimenti non risolti. Per evitare che la libreria si danneggi, si consiglia di risolvere questi riferimenti prima di apportare ulteriori modifiche alla libreria.

# Warning Messages
configClosureWarning_msg1=IUPL0007W: Uno o pi\u00f9 elementi child contengono riferimenti mancanti
configClosureWarning_msg2=IUPL0008W: Questo elemento dovrebbe essere selezionato per risolvere uno o pi\u00f9 elementi mancanti
configClosureWarning_msg3=IUPL0009W: Questo elemento fa riferimento a uno o pi\u00f9 elementi di un pacchetto non selezionato

ElementError_missing_element=''{0}'' fa riferimento all''elemento ''{1}'' mancante
ElementError_contributor_missing_base=''{0}'' contribuisce all''elemento di base ''{1}'' mancante
ElementError_extender_missing_base=''{0}'' estende l''elemento di base ''{1}'' mancante
ElementError_replacer_missing_base=''{0}'' sostituisce l''elemento di base ''{1}'' mancante
ElementError_missing_primary_performer=''{0}'' fa riferimento all''esecutore ''{1}'' mancante
ElementError_missing_mandatory_input=''{0}'' fa riferimento all''input obbligatorio ''{1}'' mancante
ElementError_missing_output=''{0}'' fa riferimento all''output ''{1}'' mancante
ElementError_missing_responsible_for_workProduct=''{0}'' fa riferimento al responsabile mancante per il prodotto di lavoro ''{1}''
ElementError_having_multiple_replacers=''{0}'' presenta pi\u00f9 replacer: ''{1}''

# Error Messages
loadResourcesError_msg=IUPL0000E: La libreria dei metodi \u00e8 stata caricata, ma sono stati rilevati alcuni errori.
unsupportedGuidanceTypeError_msg=IUPL0001E: Questa guida non pu\u00f2 essere convertita in un altro tipo.
convertGuidanceError_msg=IUPL0002E: Questa guida non pu\u00f2 essere convertita nel tipo di destinazione.
saveConvertedGuidanceError_msg=IUPL0003E: La guida convertita ''{0}'' non pu\u00f2 essere salvata.

# Convert activity
convertActivityError_title=Errore durante la conversione del tipo di attivit\u00e0
convertActivityError_msg=IUPL0006E: Questa attivit\u00e0 non pu\u00f2 essere convertita nel tipo di destinazione.
saveConvertedActivityError_msg=IUPL0007E: L''attivit\u00e0 convertita ''{0}'' non pu\u00f2 essere salvata.

# Error Reasons
error_reason=IUPL0004E: Si \u00e8 verificato un errore. Fare clic su OK per ulteriori informazioni.
unsupportedGuidanceTypeError_reason=Non c''\u00e8 un tipo di guida compatibile per {0}.
invalidLibraryPathError_reason=Percorso della libreria non valido. Impossibile creare il file .project.
couldNotLockLibrary_reason=Impossibile bloccare la libreria.

# Progress Messages
copyingAttachmentsTask_name=Copia degli allegati in corso...

# Convert Guidance Dialog
convertGuidanceDialog_title=Converti tipo di guida
convertGuidanceDialog_text=Selezionare il tipo di guida di destinazione.

# Guidance type names for Convert Guidance Dialog
checklist_text=Elenco di controllo
concept_text=Concetto
example_text=Esempio
guideline_text=Linea guida
estimate_text=Valutazione
estimatingMetric_text=Metrica di valutazione
estimationConsiderations_text=Considerazioni sulla valutazione
report_text=Prospetto
template_text=Modello
supportingMaterial_text=Materiale di supporto
toolMentor_text=Guida al tool
whitepaper_text=Whitepaper
termDefinition_text=Definizione termine
practice_text=Procedura
reusableAsset_text=Risorsa riutilizzabile

#activity breakdown info strings
ActivityLayout_primaryTasks_text=Esegue come proprietario
ActivityLayout_additionalTasks_text=Esegue come aggiuntivo
ActivityLayout_assistTasks_text=Esegue come assistente
ActivityLayout_performAs_text=Esegue come {0}

# Convert Guidance Error Messages
convertGuidanceError_title=Errore durante la conversione del tipo di guida

# Load Resources Error Dialog
loadResourcesError_title=Errore durante l'apertura della libreria dei metodi
loadResourcesError_reason=Non \u00e8 stato possibile caricare alcune risorse della libreria.\n\nFare clic su Dettagli per esaminare gli errori e risolverli prima di apportare ulteriori modifiche alla libreria.

# Role Diagrams
roleDiagramPerforms_text=esegue
roleDiagramResponsibleFor_text=responsabile di

DefaultContentValidator_MSG0=Elemento a cui si fa riferimento: {0}
DefaultContentValidator_MSG1=Info: {0}
DefaultContentValidator_MSG4=Avviso: {0}
DefaultContentValidator_MSG7=Errore: {0}
DefaultContentValidator_MSG10=Elemento a cui si fa riferimento mancante {0}
DefaultContentValidator_MSG11=Impossibile trovare l''elemento per il guid {0}
DefaultContentValidator_MSG12=Il file ''{0}'' fa riferimento alla risorsa mancante ''{1}''
DefaultContentValidator_MSG15=File di risorse mancante ''{0}''
DefaultContentValidator_MSG17=Impossibile connettersi all''URL ''{0}''
DefaultContentValidator_MSG19=Impossibile connettersi all''URL ''{0}'': {1}
ImportExportUtil_MSG8=Impossibile trovare il file ''{0}''.
ImportExportUtil_MSG9=Impossibile creare la directory temporanea ''{0}''.
unknownGuidance_text=Sconosciuto

CopyAttachmentsToNewLocation_log_noContentPath=CopyAttachmentsToNewLocation.HandleAttachmentsPlugin: no contentPath for {0}
LibraryModificationHelper_cannotUpdate=IUPL0006W: Impossibile aggiornare {0} {1}
warningDlg_title=Avviso
errorDlg_title=Errore
errorDlg_saveError=IUPL0005E: Si \u00e8 verificato un errore durante le modifiche al file ''{0}''

# activity diagram names
activityDiagramName=Diagramma di attivit\u00e0: {0}
activityDetailDiagramName=Diagramma dettaglio attivit\u00e0: {0}
wpDependencyDiagramName=Diagramma dipendenza prodotto di lavoro: {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=La versione di {0} non \u00e8 compatibile con il file della libreria ''{2}''. \u00c8 necessario aggiornare {0} alla versione {1} o superiore per aprirlo.
toolVersionMismatch_err_msg=La versione di {0} non \u00e8 compatibile con il file della libreria ''{2}''. \u00c8 necessario aggiornare {0} a una versione superiore per aprirlo.
libUpgradeRequired_err_msg=La libreria specificata deve essere aggiornata alla nuova struttura di libreria. Aprire la libreria per aggiornarla e provare di nuovo.

WorkProductSlot_text=Slot del prodotto di lavoro

libraryProblemMonitor=Monitor dei problemi di libreria

references_unresolved_base_txt=Riferimenti di plugin base non risolti

configFreeProcessView_title=Vista processo senza configurazione
systemCreatedCustomCategory_brief=Questa \u00e8 una categoria personalizzata creata dal sistema per il raggruppamento degli elementi dello stesso tipo.

UndeclaredDep_MarkerTxt0=Dipendenza plug-in non dichiarata
UndeclaredDep_MarkerTxt1=Dipendenza plug-in non dichiarata da ''{0}'' a
UndeclaredDep_MarkerTxt2=Elementi offender

