#-------------------------------------------------------------------------------
# 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
# The UI text in the XSL stylesheets.

selectedConfigurationText=La configuraci\u00f3n seleccionada se publica en la siguiente ubicaci\u00f3n
detailInfoText=La informaci\u00f3n detallada se registra en los siguientes archivos de la carpeta de registros
showErrorText=muestra cualquier error que se produzca durante la publicaci\u00f3n.
logsWarningText=registra todos los mensajes de aviso como, por ejemplo, referencias que faltan, enlaces rotos y categor\u00edas no publicadas sin elementos categorizados.
pagesNotInstalledText=En la carpeta p\u00e1ginas_no_instaladas, encontrar\u00e1 todas las referencias ausentes de esta configuraci\u00f3n.
invalidExternalText=Se han identificado enlaces externos no v\u00e1lidos en la configuraci\u00f3n
ownerElementText=Elemento de propietario
nonExistingText=Los elementos de propietario hacen referencia a elementos que no existen. Es posible que los elementos se hayan eliminado de la biblioteca despu\u00e9s de crear los enlaces del elemento. Busque otros elementos de propietario y arregle estas referencias no v\u00e1lidas.
missingReferencesTitleText=Referencias ausentes
missingReferencesText=Los elementos de propietario hacen referencia a elementos ausentes en la configuraci\u00f3n seleccionada. Compruebe el cierre de la configuraci\u00f3n y arregle las referencias ausentes.                   
missingResourceFilesTitleText=Archivos de recursos ausentes
missingResourceFilesText=Los elementos de propietario hacen referencia a archivos de recursos ausentes. El contenido de los elementos o los archivos de datos adjuntos asociados hacen referencia a esos archivos de recursos.
missingResourceText=Recurso ausente
ownerResourceText=Recurso de propietario
missingElementText=Elemento ausente
invalidElementText=Elemento no v\u00e1lido
invalidElementLinksText=Enlace del elemento no v\u00e1lido
pleaseCheckText=Compruebe el cierre de la configuraci\u00f3n y arregle las referencias ausentes.
pleaseFindText=Busque otros elementos de propietario y arregle estas referencias no v\u00e1lidas.
glossaryText=Glosario
indexText=\u00cdndice
feedbackText=Informaci\u00f3n de retorno
aboutText=Acerca de
searchText=Buscar
printText=Imprimir
summaryText=Resumen
publishingReportText=Publicar informe:
whereAmIText=D\u00f3nde estoy
treeSetsText=Conjuntos de \u00e1rboles

searchTitleText=B\u00fasqueda de proceso
label1Text=
label2Text=
label3Text=
lable4Text=
searchButtonText=Buscar
searchExpressionText=* = cualquier cadena, ? = cualquier car\u00e1cter, "" = frase, AND, OR, NOT = operadores booleanos

detailsText=Detalles
infoText=Informaci\u00f3n
messgeText=Mensaje
descriptionText=Descripci\u00f3n
