#-------------------------------------------------------------------------------
# Copyright (c) 2005, 2006 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=Publicando a configura\u00e7\u00e3o...
initializingDirTask_name=Inicializando o diret\u00f3rio de destino...
copyingFilesTask_name=Copiando arquivos...
generatingBookmarksTask_name=Gerando marcadores...
generatingBookmarkTask_name=Gerando o marcador ''{0}''...
generatingBookmarkIndexTask_name=Gerando \u00edndice de marcadores...
publishingLinkedElementTask_name=Publicando elementos de m\u00e9todo: {0} publicados, {1} restantes
publishingElementTask_name=Publicando o elemento de m\u00e9todo: {0}:{1}
generatingGlossaryTask_name=Gerando gloss\u00e1rio...
generatingSearchIndexTask_name=Gerando \u00edndice de procura...
buildingProcessClosureTask_name=Construindo fechamento do processo...
buildingElementClosureTask_name=Construindo fechamento de elemento para ''{0}''...
loadLibraryTask_name=Carregando conte\u00fado da biblioteca...

# Error Messages logged in the Publishing Report
publishElementError_msg=IUPP0000E: Erro ao publicar o elemento: {0}
serverError_msg=IUPP0001E: Nenhum dado retornado do servidor.
invalidHttpResponseError_msg=IUPP0002E: Resposta inv\u00e1lida de http://{0}:{1}:{2}

# Warning Messages logged in the Publishing Report
invalidElementWarning_msg=IUPP0003W: O elemento n\u00e3o foi publicado porque n\u00e3o \u00e9 um elemento v\u00e1lido na configura\u00e7\u00e3o.
invalidMethodElementWarning_msg=IUPP0004W: O elemento n\u00e3o foi publicado porque n\u00e3o \u00e9 um elemento de m\u00e9todo: {0}
copyFileWarning_msg=IUPP0005W: N\u00e3o foi poss\u00edvel copiar o arquivo de ''{0}'' para ''{1}''.
missingIconFileWarning_msg=IUPP0006W: O arquivo de \u00edcone do n\u00f3 ''{0}'' n\u00e3o existe.
missingIconNameWarning_msg=IUPP0007W: N\u00e3o foi poss\u00edvel recuperar o nome do \u00edcone do n\u00f3.
externalUrl_msg=referenciando URL externa: {0}
discaredCategoryWarning_msg=O elemento da categoria de conte\u00fado vazio n\u00e3o foi publicado.

# Error Details
createSearchIndexError_msg=IUPP0008E: O arquivo de \u00edndice de procura n\u00e3o foi criado.

# Process Tree Nodes
referenceWorkflowsNode_text=Fluxos de Trabalho de Refer\u00eancia
taskNode_text=Tarefas
primarilyPerformsNode_text=Primariamente Desempenha
additionallyPerformsNode_text=Adicionalmente Desempenha
performingRolesNode_text=Desempenhando Fun\u00e7\u00f5es
inputWorkProductsNode_text=Produtos de Trabalho de Entrada
outputWorkProductsNode_text=Produtos de Trabalho de Sa\u00edda
responsibleForNode_text=Respons\u00e1vel por
modifiesNode_text=Modifica
responsibleRoleNode_text=Fun\u00e7\u00e3o Respons\u00e1vel
containingWorkProductNode_text=Contendo Produto de Trabalho
containedWorkProductsNode_text=Continha Produtos de Trabalho
guidanceNode_text=Orienta\u00e7\u00e3o
inputToNode_text=Entrada para
outputFromNode_text=Sa\u00edda de

# HTML Title for Index Page
indexLabel_text=\u00cdndice
