#-------------------------------------------------------------------------------
# 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
#
# Message ID Range: IUPP0000E - IUPP0099E
#

# Progress Messages
publishingConfigurationTask_name=Pubblicazione della configurazione in corso...
initializingDirTask_name=Inizializzazione della directory di destinazione in corso...
copyingFilesTask_name=Copia dei file in corso...
generatingBookmarksTask_name=Generazione dei segnalibri in corso...
generatingBookmarkTask_name=Generazione del segnalibro ''{0}'' in corso...
generatingBookmarkIndexTask_name=Generazione dell'indice del segnalibro in corso...
publishingLinkedElementTask_name=Pubblicazione degli elementi di metodo: {0} pubblicati, {1} restanti
publishingElementTask_name=Pubblicazione dell''elemento di metodo: {0}:{1}
generatingGlossaryTask_name=Generazione del glossario in corso...
generatingSearchIndexTask_name=Generazione dell'indice di ricerca in corso...
generatingWARFileTask_name=Generazione file WAR in corso...
buildingProcessClosureTask_name=Creazione della chiusura del processo in corso...
buildingElementClosureTask_name=Creazione dell''elemento di chiusura per ''{0}'' in corso...
loadLibraryTask_name=Caricamento del contenuto della libreria in corso...

# Error Messages logged in the Publishing Report
publishElementError_msg=IUPP0000E: Errore durante la pubblicazione dell''elemento: {0}
serverError_msg=IUPP0001E: Nessun dato restituito dal server.
invalidHttpResponseError_msg=IUPP0002E: Risposta non valida da http://{0}:{1}:{2}

# Warning Messages logged in the Publishing Report
invalidElementWarning_msg=IUPP0003W: L'elemento non \u00e8 stato pubblicato in quanto non \u00e8 un elemento valido della configurazione.
invalidMethodElementWarning_msg=IUPP0004W: L''elemento non \u00e8 stato pubblicato in quanto non \u00e8 un elemento di metodo: {0}
copyFileWarning_msg=IUPP0005W: Impossibile copiare il file da ''{0}'' in ''{1}''.
missingIconFileWarning_msg=IUPP0006W: Il file icona del nodo ''{0}'' non esiste.
missingIconNameWarning_msg=IUPP0007W: Impossibile recuperare il nome dell'icona del nodo.
externalUrl_msg={0} mini-secondi che fanno riferimento all''URL esterno: {1}
discaredCategoryWarning_msg=Elemento categoria contenuto vuoto non pubblicato.

# Error Details
createSearchIndexError_msg=IUPP0008E: Il file dell'indice di ricerca non \u00e8 stato creato.

# Process Tree Nodes
referenceWorkflowsNode_text=Flussi di lavoro di riferimento
taskNode_text=Operazioni
primarilyPerformsNode_text=Esegue principalmente
additionallyPerformsNode_text=Esegue anche
performingRolesNode_text=Ruoli esecutivi
inputWorkProductsNode_text=Prodotti di lavoro input
outputWorkProductsNode_text=Prodotti di lavoro output
responsibleForNode_text=Responsabile di
modifiesNode_text=Modifica
responsibleRoleNode_text=Ruolo responsabile
containingWorkProductNode_text=Prodotto di lavoro da includere
containedWorkProductsNode_text=Prodotti di lavoro contenuti
guidanceNode_text=Guida
inputToNode_text=Input in
outputFromNode_text=Output di

# HTML Title for Index Page
indexLabel_text=Indice
