#-------------------------------------------------------------------------------
# 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=\u6b63\u5728\u53d1\u5e03\u914d\u7f6e...
initializingDirTask_name=\u6b63\u5728\u521d\u59cb\u5316\u76ee\u6807\u76ee\u5f55...
copyingFilesTask_name=\u6b63\u5728\u590d\u5236\u6587\u4ef6...
generatingBookmarksTask_name=\u6b63\u5728\u751f\u6210\u4e66\u7b7e...
generatingBookmarkTask_name=\u6b63\u5728\u751f\u6210\u4e66\u7b7e\u201c{0}\u201d...
generatingBookmarkIndexTask_name=\u6b63\u5728\u751f\u6210\u4e66\u7b7e\u7d22\u5f15...
publishingLinkedElementTask_name=\u53d1\u5e03\u65b9\u6cd5\u5143\u7d20\uff1a\u5df2\u53d1\u5e03 {0} \u4e2a\uff0c\u5269\u4f59 {1} \u4e2a
publishingElementTask_name=\u53d1\u5e03\u65b9\u6cd5\u5143\u7d20\uff1a{0}\uff1a{1}
generatingGlossaryTask_name=\u6b63\u5728\u751f\u6210\u8bcd\u6c47\u8868...
generatingSearchIndexTask_name=\u6b63\u5728\u751f\u6210\u641c\u7d22\u7d22\u5f15...
buildingProcessClosureTask_name=\u6b63\u5728\u6784\u5efa\u6d41\u7a0b\u95ed\u5408...
buildingElementClosureTask_name=\u6b63\u5728\u4e3a\u201c{0}\u201d\u6784\u5efa\u5143\u7d20\u95ed\u5408...
loadLibraryTask_name=\u6b63\u5728\u88c5\u5165\u5e93\u5185\u5bb9...

# Error Messages logged in the Publishing Report
publishElementError_msg=IUPP0000E: \u53d1\u5e03\u5143\u7d20\u65f6\u51fa\u9519\uff1a{0}
serverError_msg=IUPP0001E: \u670d\u52a1\u5668\u672a\u8fd4\u56de\u4efb\u4f55\u6570\u636e\u3002
invalidHttpResponseError_msg=IUPP0002E: \u6765\u81ea http://{0}:{1}:{2} \u7684\u54cd\u5e94\u65e0\u6548

# Warning Messages logged in the Publishing Report
invalidElementWarning_msg=IUPP0003W: \u5143\u7d20\u672a\u53d1\u5e03\uff0c\u56e0\u4e3a\u5b83\u4e0d\u662f\u914d\u7f6e\u4e2d\u7684\u6709\u6548\u5143\u7d20\u3002
invalidMethodElementWarning_msg=IUPP0004W: \u5143\u7d20\u672a\u53d1\u5e03\uff0c\u56e0\u4e3a\u5b83\u4e0d\u662f\u65b9\u6cd5\u5143\u7d20\uff1a{0}
copyFileWarning_msg=IUPP0005W: \u65e0\u6cd5\u5c06\u6587\u4ef6\u4ece\u201c{0}\u201d\u590d\u5236\u5230\u201c{1}\u201d\u3002
missingIconFileWarning_msg=IUPP0006W: \u8282\u70b9\u56fe\u6807\u6587\u4ef6\u201c{0}\u201d\u4e0d\u5b58\u5728\u3002
missingIconNameWarning_msg=IUPP0007W: \u65e0\u6cd5\u68c0\u7d22\u8282\u70b9\u56fe\u6807\u7684\u540d\u79f0\u3002
externalUrl_msg=\u6b63\u5728\u5f15\u7528\u5916\u90e8 url\uff1a{0}
discaredCategoryWarning_msg=\u672a\u53d1\u5e03\u7a7a\u7684\u5185\u5bb9\u7c7b\u522b\u5143\u7d20\u3002

# Error Details
createSearchIndexError_msg=IUPP0008E: \u641c\u7d22\u7d22\u5f15\u6587\u4ef6\u672a\u521b\u5efa\u3002

# Process Tree Nodes
referenceWorkflowsNode_text=\u5f15\u7528\u5de5\u4f5c\u6d41
taskNode_text=\u4efb\u52a1
primarilyPerformsNode_text=\u4e3b\u8981\u6267\u884c
additionallyPerformsNode_text=\u8fd8\u6267\u884c
performingRolesNode_text=\u6267\u884c\u89d2\u8272
inputWorkProductsNode_text=\u8f93\u5165\u5de5\u4f5c\u4ea7\u54c1
outputWorkProductsNode_text=\u8f93\u51fa\u5de5\u4f5c\u4ea7\u54c1
responsibleForNode_text=\u8d1f\u8d23
modifiesNode_text=\u4fee\u6539
responsibleRoleNode_text=\u8d1f\u8d23\u7684\u89d2\u8272
containingWorkProductNode_text=\u5305\u542b\u5de5\u4f5c\u4ea7\u54c1
containedWorkProductsNode_text=\u88ab\u5305\u542b\u5de5\u4f5c\u4ea7\u54c1
guidanceNode_text=\u6307\u5bfc\u4fe1\u606f
inputToNode_text=\u8f93\u5165\u81f3
outputFromNode_text=\u8f93\u51fa\u81ea

# HTML Title for Index Page
indexLabel_text=\u7d22\u5f15
