###############################################################################
# Copyright (c) 2001, 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 API and implementation
###############################################################################

title=UDDI

# Nodes
NODE_NAME_UDDI_MAIN=UDDI Main
NODE_NAME_QUERIES_FOLDER=Executed Queries
NODE_NAME_PUBLISHED_BUSINESSES_FOLDER=Published Businesses
NODE_NAME_PUBLISHED_SERVICES_FOLDER=Published Services
NODE_NAME_PUBLISHED_SERVICE_INTERFACES_FOLDER=Published Service Interfaces

# OpenRegistryAction
ALT_OPEN_REGISTRY=Open Registry
FORM_LABEL_OPEN_REGISTRY_DESC=Specify the name and inquiry URL of the registry to be opened. Selecting a favorite registry will automatically fill in the required information. Press <strong>Go</strong> to open the registry.
FORM_LABEL_FAVORITE_REGISTRY=Favorite Registry
FORM_LABEL_REGISTRY_NAME=Registry Name
FORM_LABEL_INQUIRY_URL=Inquiry URL
MSG_ERROR_INVALID_REGISTRY_NAME=IWAB0136E Enter a valid registry name.
MSG_ERROR_INVALID_INQUIRY_URL=IWAB0138E Enter a valid inquiry URL.
MSG_INFO_REGISTRY_OPENED=IWAB0139I The registry named %1 located at %2 was opened successfully.

# User-defined Categories
FORM_LABEL_ADD_CATEGORY_DATA=<a href="%1">Click here</a> to load this category's data.
FORM_CONTROL_TITLE_CATEGORY_FILE=Category data file name
MSG_INFO_NO_USER_DEFINED_CATEGORIES_FOUND=IWAB0371I No user defined categories detected.
MSG_INFO_NO_CATEGORY_DATA=IWAB0372I Category data for %1 is not available or is invalid.
MSG_INFO_USER_DEFINED_CATEGORY_DATA_LOADED=IWAB0373I Data for user defined category %1 was successfully loaded.
MSG_ERROR_INVALID_USER_DEFINED_CATEGORY_DATA_FILE_KEY=IWAB0374E Invalid data file for user defined category %1. A category key '%2' was found but '%3' was expected.
MSG_ERROR_INVALID_USER_DEFINED_CATEGORY_DATA_FILE_FORMAT=IWAB0473E Unknown format in line: %1 of the data file for user defined category %2. The line is: "%3"
MSG_ERROR_INVALID_USER_DEFINED_CATEGORY_DATA_FILE=IWAB0375E Invalid data file for user defined category %1.
MSG_ERROR_SAVING_CATEGORY_DATA=IWAB0474E An error occured while saving data for category %1. Exception text: %2

# UDDI Category Browser
TITLE_CATEGORY_BROWSER=Category Browser
ALT_CATEGORIES=Categories

# Details
ALT_REGISTRY_DETAILS=Registry Details
ALT_BUSINESS_DETAILS=Business Details
ALT_SERVICE_DETAILS=Service Details
ALT_SERVICE_INTERFACE_DETAILS=Service Interface Details
FORM_LABEL_DETAILS_EDITABLE=Details for <strong>%1</strong> are shown below. Some items may be added, removed, or changed. Authentication may be required for changes. Other actions are listed at the bottom of this page.

# Get
ALT_GET=Get

# Common Form Control Title
FORM_CONTROL_TITLE_NAME_TEXT_VALUE=Name value
FORM_CONTROL_TITLE_DESCRIPTION_TEXT_VALUE=Description value
FORM_CONTROL_TITLE_CATEGORY_KEY_NAME=Category key name
FORM_CONTROL_TITLE_CATEGORY_KEY_VALUE=Category key value
FORM_CONTROL_TITLE_IDENTIFIER_KEY_NAME=Identifier key name
FORM_CONTROL_TITLE_IDENTIFIER_KEY_VALUE=Identifier key value
FORM_CONTROL_TITLE_DISCOVERY_URL=Discovery URL
FORM_CONTROL_TITLE_INPUT_TEXT_VALUE=UDDI registry name

# Find actions
ALT_FIND=Find
ALT_SUBQUERY=Find %1 Subquery
FORM_LABEL_QUERY_NAME=Name of this query
DEFAULT_QUERY_NAME=query results
DEFAULT_SUBQUERY_NAME=%1 - %2 subquery
FORM_LABEL_SEARCH_FOR=Search for
FORM_OPTION_BUSINESSES=Businesses
FORM_OPTION_SERVICES=Services
FORM_OPTION_SERVICE_INTERFACES=Service Interfaces
FORM_LABEL_SEARCH_TYPE=Type of search
FORM_RADIO_SIMPLE=Simple
FORM_RADIO_ADVANCED=Advanced
FORM_RADIO_UUID=UUID
FORM_LABEL_FIND_BUSINESSES_SIMPLE_DESC=Enter the partial or complete name of a business to search for. The '%' symbol can be used as a wildcard that matches any character. Press <strong>Go</strong> to execute the search.
FORM_LABEL_FIND_ADVANCED_DESC=Enter values for one or more of the parameters listed below. The '%' symbol can be used as a wildcard that matches any character in the Name field of the Names table. Authentication may be required. Press <strong>Go</strong> to execute the search.
FORM_LABEL_FIND_BUSINESS_UUID_DESC=Enter the UUID of the business to search for. Press <strong>Go</strong> to execute the search.
FORM_LABEL_NAMES=Names
FORM_LINK_ADD=Add
FORM_LINK_GET=Get
FORM_LINK_FIND=Find
FORM_LINK_REMOVE=Remove
FORM_LABEL_OWNED=Owned
FORM_LABEL_PUBLISH_URL=Publish URL
FORM_LABEL_USERID=User ID
FORM_LABEL_PASSWORD=Password
FORM_LABEL_LANGUAGE=Language
FORM_LABEL_NAME=Name
FORM_LABEL_DESCRIPTION=Description
FORM_OPTION_LANGUAGE_EN=English
FORM_OPTION_LANGUAGE_AA=Afar
FORM_OPTION_LANGUAGE_AB=Abkhazian
FORM_OPTION_LANGUAGE_AF=Afrikaans
FORM_OPTION_LANGUAGE_AM=Amharic
FORM_OPTION_LANGUAGE_AR=Arabic
FORM_OPTION_LANGUAGE_AS=Assamese
FORM_OPTION_LANGUAGE_AY=Aymara
FORM_OPTION_LANGUAGE_AZ=Azerbaijani
FORM_OPTION_LANGUAGE_BA=Bashkir
FORM_OPTION_LANGUAGE_BE=Byelorussian
FORM_OPTION_LANGUAGE_BG=Bulgarian
FORM_OPTION_LANGUAGE_BH=Bihari
FORM_OPTION_LANGUAGE_BI=Bislama
FORM_OPTION_LANGUAGE_BN=Bengali; Bangla
FORM_OPTION_LANGUAGE_BO=Tibetan
FORM_OPTION_LANGUAGE_BR=Breton
FORM_OPTION_LANGUAGE_CA=Catalan
FORM_OPTION_LANGUAGE_CO=Corsican
FORM_OPTION_LANGUAGE_CZ=Czech
FORM_OPTION_LANGUAGE_CY=Welsh
FORM_OPTION_LANGUAGE_DA=Danish
FORM_OPTION_LANGUAGE_DE=German
FORM_OPTION_LANGUAGE_DZ=Bhutani
FORM_OPTION_LANGUAGE_EL=Greek
FORM_OPTION_LANGUAGE_EO=Esperanto
FORM_OPTION_LANGUAGE_ES=Spanish
FORM_OPTION_LANGUAGE_ET=Estonian
FORM_OPTION_LANGUAGE_EU=Basque
FORM_OPTION_LANGUAGE_FA=Persian
FORM_OPTION_LANGUAGE_FI=Finnish
FORM_OPTION_LANGUAGE_FJ=Fiji
FORM_OPTION_LANGUAGE_FO=Faeroese
FORM_OPTION_LANGUAGE_FR=French
FORM_OPTION_LANGUAGE_FY=Frisian
FORM_OPTION_LANGUAGE_GA=Irish
FORM_OPTION_LANGUAGE_GD=Scots Gaelic
FORM_OPTION_LANGUAGE_GL=Galician
FORM_OPTION_LANGUAGE_GN=Guarani
FORM_OPTION_LANGUAGE_GU=Gujarati
FORM_OPTION_LANGUAGE_HA=Hausa
FORM_OPTION_LANGUAGE_HI=Hindi
FORM_OPTION_LANGUAGE_HR=Croatian
FORM_OPTION_LANGUAGE_HU=Hungarian
FORM_OPTION_LANGUAGE_HY=Armenian
FORM_OPTION_LANGUAGE_IA=Interlingua
FORM_OPTION_LANGUAGE_IE=Interlingue
FORM_OPTION_LANGUAGE_IK=Inupiak
FORM_OPTION_LANGUAGE_IN=Indonesian
FORM_OPTION_LANGUAGE_IS=Icelandic
FORM_OPTION_LANGUAGE_IT=Italian
FORM_OPTION_LANGUAGE_IW=Hebrew
FORM_OPTION_LANGUAGE_JA=Japanese
FORM_OPTION_LANGUAGE_JI=Yiddish
FORM_OPTION_LANGUAGE_JW=Javanese
FORM_OPTION_LANGUAGE_KA=Georgian
FORM_OPTION_LANGUAGE_KK=Kazakh
FORM_OPTION_LANGUAGE_KL=Greenlandic
FORM_OPTION_LANGUAGE_KM=Cambodian
FORM_OPTION_LANGUAGE_KN=Kannada
FORM_OPTION_LANGUAGE_KO=Korean
FORM_OPTION_LANGUAGE_KS=Kashmiri
FORM_OPTION_LANGUAGE_KU=Kurdish
FORM_OPTION_LANGUAGE_KY=Kirghiz
FORM_OPTION_LANGUAGE_LA=Latin
FORM_OPTION_LANGUAGE_LN=Lingala
FORM_OPTION_LANGUAGE_LO=Laothian
FORM_OPTION_LANGUAGE_LT=Lithuanian
FORM_OPTION_LANGUAGE_LV=Latvian, Lettish
FORM_OPTION_LANGUAGE_MG=Malagasy
FORM_OPTION_LANGUAGE_MI=Maori
FORM_OPTION_LANGUAGE_MK=Macedonian
FORM_OPTION_LANGUAGE_ML=Malayalam
FORM_OPTION_LANGUAGE_MN=Mongolian
FORM_OPTION_LANGUAGE_MO=Moldavian
FORM_OPTION_LANGUAGE_MR=Marathi
FORM_OPTION_LANGUAGE_MS=Malay
FORM_OPTION_LANGUAGE_MT=Maltese
FORM_OPTION_LANGUAGE_MY=Burmese
FORM_OPTION_LANGUAGE_NA=Nauru
FORM_OPTION_LANGUAGE_NE=Nepali
FORM_OPTION_LANGUAGE_NL=Dutch
FORM_OPTION_LANGUAGE_NO=Norwegian
FORM_OPTION_LANGUAGE_OC=Occitan
FORM_OPTION_LANGUAGE_OM=(Afan) Oromo
FORM_OPTION_LANGUAGE_OR=Oriya
FORM_OPTION_LANGUAGE_PA=Punjabi
FORM_OPTION_LANGUAGE_PL=Polish
FORM_OPTION_LANGUAGE_PS=Pashto, Pushto
FORM_OPTION_LANGUAGE_PT=Portuguese
FORM_OPTION_LANGUAGE_QU=Quechua
FORM_OPTION_LANGUAGE_RM=Rhaeto-Romance
FORM_OPTION_LANGUAGE_RN=Kirundi
FORM_OPTION_LANGUAGE_RO=Romanian
FORM_OPTION_LANGUAGE_RU=Russian
FORM_OPTION_LANGUAGE_RW=Kinyarwanda
FORM_OPTION_LANGUAGE_SA=Sanskrit
FORM_OPTION_LANGUAGE_SD=Sindhi
FORM_OPTION_LANGUAGE_SG=Sangro
FORM_OPTION_LANGUAGE_SH=Serbo-Croatian
FORM_OPTION_LANGUAGE_SI=Singhalese
FORM_OPTION_LANGUAGE_SK=Slovak
FORM_OPTION_LANGUAGE_SL=Slovenian
FORM_OPTION_LANGUAGE_SM=Samoan
FORM_OPTION_LANGUAGE_SN=Shona
FORM_OPTION_LANGUAGE_SO=Somali
FORM_OPTION_LANGUAGE_SQ=Albanian
FORM_OPTION_LANGUAGE_SR=Serbian
FORM_OPTION_LANGUAGE_SS=Siswati
FORM_OPTION_LANGUAGE_ST=Sesotho
FORM_OPTION_LANGUAGE_SU=Sundanese
FORM_OPTION_LANGUAGE_SV=Swedish
FORM_OPTION_LANGUAGE_SW=Swahili
FORM_OPTION_LANGUAGE_TA=Tamil
FORM_OPTION_LANGUAGE_TE=Tegulu
FORM_OPTION_LANGUAGE_TG=Tajik
FORM_OPTION_LANGUAGE_TH=Thai
FORM_OPTION_LANGUAGE_TI=Tigrinya
FORM_OPTION_LANGUAGE_TK=Turkmen
FORM_OPTION_LANGUAGE_TL=Tagalog
FORM_OPTION_LANGUAGE_TN=Setswana
FORM_OPTION_LANGUAGE_TO=Tonga
FORM_OPTION_LANGUAGE_TR=Turkish
FORM_OPTION_LANGUAGE_TS=Tsonga
FORM_OPTION_LANGUAGE_TT=Tatar
FORM_OPTION_LANGUAGE_TW=Twi
FORM_OPTION_LANGUAGE_UK=Ukrainian
FORM_OPTION_LANGUAGE_UR=Urdu
FORM_OPTION_LANGUAGE_UZ=Uzbek
FORM_OPTION_LANGUAGE_VI=Vietnamese
FORM_OPTION_LANGUAGE_VO=Volapuk
FORM_OPTION_LANGUAGE_WO=Wolof
FORM_OPTION_LANGUAGE_XH=Xhosa
FORM_OPTION_LANGUAGE_YO=Yoruba
FORM_OPTION_LANGUAGE_ZH=Chinese
FORM_OPTION_LANGUAGE_ZU=Zulu
FORM_LABEL_EXACT_NAME_MATCH=Exact match
FORM_LABEL_CASE_SENSITIVE_MATCH=Case sensitive
FORM_LABEL_SOUNDEX=Sound alike
FORM_LABEL_IDENTIFIERS=Identifiers
FORM_LABEL_IDENTIFIER_TYPE=Type

# Do not translate the two items below.
FORM_OPTION_IDENTIFIER_DUNS=D-U-N-S
FORM_OPTION_IDENTIFIER_THOMAS_REGISTRY=Thomas Registry

FORM_LABEL_KEY_NAME=Key name
FORM_LABEL_KEY_VALUE=Key value
FORM_LABEL_CATEGORIES=Categories
FORM_LABEL_CATEGORY_TYPE=Type
FORM_OPTION_CATEGORY_NAICS=NAICS
FORM_OPTION_CATEGORY_UNSPSC_73=UNSPSC 7.3
FORM_OPTION_CATEGORY_GEO=GEO
FORM_LABEL_BUSINESS_CATEGORIES=Compare with:
FORM_OPTION_BUSINESSES_ONLY=Businesses only
FORM_OPTION_SERVICES_ONLY=Services only
FORM_OPTION_BOTH=Businesses and Services
FORM_LABEL_DISCOVERYURLS=Discovery URLs
FORM_LABEL_DISCOVERYURL=Discovery URL
FORM_LABEL_FINDQUALIFIERS=Find Qualifiers
FORM_LABEL_COMBINE_KEYS=Combine keys:
FORM_OPTION_ANDALLKEYS=And
FORM_OPTION_ORALLKEYS=Or
FORM_OPTION_ORLIKEKEYS=Or Like
FORM_LABEL_SORT_BY_NAME=Sort by name:
FORM_RADIO_SORT_ASC=Ascending
FORM_RADIO_SORT_DESC=Descending
FORM_LABEL_SORT_BY_DATE=Sort by date:
FORM_LABEL_MAX_SEARCH_SET=Maximum size of search set:
FORM_LABEL_MAX_RESULTS=Maximum number of results:
FORM_LABEL_FIND_SERVICES_SIMPLE_DESC=Enter the partial or complete name of a service to search for. The '%' symbol can be used as a wildcard that matches any character. Press <strong>Go</strong> to execute the search.
FORM_LABEL_FIND_SERVICE_UUID_DESC=Enter the UUID of the service to search for. Press <strong>Go</strong> to execute the search.
FORM_LABEL_FIND_SERVICE_INTERFACES_SIMPLE_DESC=Enter the partial or complete name of a service interface to search for. The '%' symbol can be used as a wildcard that matches any character. Press <strong>Go</strong> to execute the search.
FORM_LABEL_FIND_SERVICE_INTERFACE_UUID_DESC=Enter the UUID of the service interface to search for. Press <strong>Go</strong> to execute the search.
FORM_LABEL_SERVICE_INTERFACES=Service Interfaces
FORM_LABEL_UUID_KEY=UUID Key:
FORM_LABEL_USE_SERVICE=Use service
FORM_LABEL_SERVICE=Service
FORM_LABEL_BUSINESS=Business
FORM_LABEL_PUBLISH_ASSERTIONS=Publisher Assertions
FORM_LABEL_DIRECTION=Direction
FORM_LABEL_FROM_KEY=From Key
FORM_LABEL_TO_KEY=To Key
FORM_LABEL_STATUS=Status
FORM_LABEL_ASSERTION_TYPE=Assertion Type
FORM_OPTION_ASSERTION_TYPE_PARENT_CHILD=Parent-Child
FORM_OPTION_ASSERTION_TYPE_PEER_TO_PEER=Peer-Peer
FORM_OPTION_ASSERTION_TYPE_IDENTITY=Identity
FORM_LABEL_ASSERTION_DIRETION_DESC=Direction <strong>From</strong> will create a publisher assertion from this business to the businesses above.  Direction <strong>To</strong> will create a publisher assertion from the above businesses to this business.
FORM_OPTION_ASSERTION_DIRECTION_FROM=--->
FORM_OPTION_ASSERTION_DIRECTION_TO=<---
FORM_LABEL_THIS_BUSINESS=This
MSG_ERROR_INVALID_QUERY_NAME=IWAB0140E Enter a valid name for the query.
MSG_ERROR_INVALID_NAMES=IWAB0141E Enter a series of valid names.
MSG_ERROR_INVALID_PUBLISH_URL=IWAB0142E Enter a valid publish URL.
MSG_ERROR_INVALID_USERID=IWAB0143E Enter a valid user ID.
MSG_ERROR_INVALID_MAX_SEARCH_SET=IWAB0145E Enter a valid size for the maximum search set.
MSG_ERROR_INVALID_MAX_RESULTS=IWAB0146E Enter a valid size for the maximum number of results.
MSG_INFO_BUSINESSES_FOUND=IWAB0147I Number of businesses found: %1
MSG_ERROR_NO_BUSINESSES_FOUND=IWAB0148E No businesses found.
MSG_INFO_SERVICES_FOUND=IWAB0149I Number of services found: %1
MSG_ERROR_NO_SERVICES_FOUND=IWAB0150E No services found.
MSG_ERROR_SINGLE_ITEM=IWAB0151E Select just one item.
MSG_QUESTION_ITEM_REPLACEMENT=The selection will replace an item already in the target. Do you wish to proceed?
MSG_INFO_SERVICE_INTERFACES_FOUND=IWAB0152I Number of service interfaces found: %1
MSG_ERROR_NO_SERVICE_INTERFACES_FOUND=IWAB0153E No service interfaces found.
MSG_ERROR_NOTHING_SELECTED=IWAB0154E Select at least one item.
MSG_ERROR_INVALID_UUID_KEY=IWAB0155E Enter a valid UUID key.
MSG_ERROR_QUERY_NAME_CONFLICT=IWAB0156E The subquery's query name cannot be the same as the originator.
MSG_ERROR_NO_ITEMS_TO_GET=IWAB0157E No items of the specified type have been published or discovered yet.
MSG_INFO_NO_BUSINESSES_OR_SERVICE_INTERFACES_FOUND=IWAB0162I No Businesses, Services or Service Interfaces found.

# Results
ALT_QUERY_RESULTS=Query Results
FORM_LABEL_SUBQUERY=The results may be used as inputs of another operation. Click the <strong>target</strong> link at the top to see the operation. Selected results can be used in the operation by clicking the <strong>Transfer</strong> button.
FORM_LABEL_QUERY=Select a result to see more details or select a set of results and click a button to perform an operation.
FORM_LINK_TARGET=target
FORM_BUTTON_TRANSFER=Transfer
FORM_BUTTON_REFRESH=Refresh
FORM_BUTTON_ADD_TO_FAVORITES=Add to favorites
FORM_BUTTON_UNPUBLISH=Unpublish
FORM_BUTTON_CLEAR=Clear

# Publish actions
ALT_PUBLISH=Publish
FORM_LABEL_PUBLISH=Publish:
FORM_OPTION_BUSINESS=Business
FORM_OPTION_SERVICE=Service
FORM_OPTION_SERVICE_INTERFACE=Service Interface
FORM_LABEL_PUBLISH_BUSINESS_SIMPLE_DESC=Enter a name and an optional description for the business to be published. Authentication may be required.
FORM_LABEL_PUBLISH_BUSINESS_ADVANCED_DESC=Provide a name for the business to be published. Other parameters may also be specified. Authentication may be required.
FORM_LABEL_PUBLISH_SERVICE_SIMPLE_DESC=Get or find a business and then provide the WSDL URL, name and an optional description for the service to be published. Authentication may be required.
FORM_LABEL_PUBLISH_SERVICE_ADVANCED_DESC=Get or find a business and then provide the WSDL URL and a name for the service to be published. Other parameters may also be specified. Authentication may be required.
FORM_LABEL_BUSINESS_PUBLISH_SERVICE_SIMPLE_DESC=Provide the WSDL URL, name and an optional description for the service to be published. Authentication may be required.
FORM_LABEL_BUSINESS_PUBLISH_SERVICE_ADVANCED_DESC=Provide the WSDL URL and a name for the service to be published. Other parameters may also be specified. Authentication may be required.
FORM_LABEL_PUBLISH_SERVICE_INTERFACE_SIMPLE_DESC=Enter a WSDL URL, name and an optional description for the service interface to be published. Authentication may be required.
FORM_LABEL_PUBLISH_SERVICE_INTERFACE_ADVANCED_DESC=Provide the WSDL URL and name for the service interface to be published. Other parameters may also be specified. Authentication may be required.
FORM_LABEL_PUBLISH_FORM=Publication format
FORM_LABEL_DESCRIPTION=Description
FORM_LABEL_DESCRIPTIONS=Descriptions
MSG_INFO_BUSINESS_PUBLISHED=IWAB0158I Business %1 was successfully published.
MSG_INFO_SERVICE_PUBLISHED=IWAB0159I Service %1 was successfully published.
MSG_INFO_SERVICE_INTERFACE_PUBLISHED=IWAB0160I Service interface %1 was successfully published.
MSG_ERROR_INVALID_NAME=IWAB0161E Enter a valid name.
MSG_ERROR_ROW_BLANK_LANGUAGE=IWAB0250E Select a non-blank language for the %1 in row %2. Only the first row can have a blank language.
MSG_ERROR_ROW_DUPLICATE_LANGUAGE=IWAB0251E Change the language for the %1 in row %2. The current one is already in use.
MSG_ERROR_ROW_INVALID_TEXT=IWAB0252E Enter a valid %1 in row %2
MSG_ERROR_INVALID_WSDL_URL=IWAB0253E Enter a valid WSDL URL.
MSG_ERROR_NO_NAMES=IWAB0254E Add at least one name.
MSG_ERROR_INVALID_SERVICE=IWAB0255E Provide a valid service.
MSG_ERROR_INVALID_BUSINESS=IWAB0256E Provide a valid business.

# Business Publish Service action
ALT_PUBLISH_SERVICE=Publish Service

# Login actions
ALT_LOGIN=Login
ALT_LOGOUT=Logout
MSG_INFO_NO_MULTIPLE_LOGIN=Multiple logins with same ID not allowed
MSG_INFO_LOGGED_IN_NODE=%1 - logged in as %2

# WSDL Browser
TITLE_WSDL_BROWSER=WSDL Browser - %1
FORM_LABEL_WSDL_SOURCE=Select a WSDL source:
FORM_LABEL_WSDL_SOURCE_WEBPROJECTS=Web Projects
FORM_LABEL_WSDL_SOURCE_FAVORITES=Favorites
FORM_LABEL_WEB_PROJECT=Web Project
FORM_LABEL_WSDL_URL=WSDL URL
ALT_WSDL_BROWSER=WSDL Browser

# Details
FORM_LINK_EDIT=Edit
FORM_LINK_CANCEL=Cancel
FORM_LABEL_BUSINESS_KEY=Business Key
FORM_LABEL_SERVICE_KEY=Service Key
FORM_LABEL_SERVICE_INTERFACE_KEY=TModel Key
FORM_LABEL_USER_DEFINED_CATEGORIES=User Defined Categories
FORM_LABEL_CHECKED=Checked
FORM_LABEL_FILE=File
MSG_QUESTION_PUBLISH_ITEM=The item could not be found in the registry. Do you wish to publish it?
MSG_QUESTION_SERVICE_PUBLISH_BUSINESS=The service and its business could not be found in the registry. Proceed to publish?
MSG_INFO_BUSINESS_UPDATED=IWAB0257I Business %1 was successfully updated.
MSG_INFO_SERVICE_UPDATED=IWAB0258I Service %1 was successfully updated.
MSG_INFO_SERVICE_INTERFACE_UPDATED=IWAB0259I Service Interface %1 was successfully updated.
MSG_INFO_REGISTRY_UPDATED=IWAB0323I Registry %1 was successfully updated.

# UnpublishAction
ALT_UNPUBLISH_BUSINESS=Unpublish Business
ALT_UNPUBLISH_SERVICE=Unpublish Service
ALT_UNPUBLISH_SERVICE_INTERFACE=Unpublish Service Interface
FORM_LABEL_UNPUBLISH_DESC=Press <strong>Go</strong> to unpublish this object. Authentication may be required.
MSG_INFO_BUSINESS_UNPUBLISHED=IWAB0260I Business %1 was successfully unpublished.
MSG_INFO_SERVICE_UNPUBLISHED=IWAB0261I Service %1 was successfully unpublished.
MSG_INFO_SERVICE_INTERFACE_UNPUBLISHED=IWAB0262I Service Interface %1 was successfully unpublished.

# Add to WSDL Perspective
ALT_ADD_TO_WSDL_PERSPECTIVE=Add To WSDL Page
MSG_INFO_WSDL_ADDED_TO_WSDL_PERSPECTIVE=IWAB0376I %1 was successfully added to WSDL page.
MSG_ERROR_WSDL_NOT_ADDED_TO_WSDL_PERSPECTIVE=IWAB0377E %1 could not be added to WSDL page.

# Add to Favorites
ALT_ADD_TO_FAVORITES=Add To Favorites
MSG_INFO_FAVORITE_ADDED=IWAB0263I %1 was successfully added to favorites.
MSG_ERROR_FAVORITE_NOT_ADDED=IWAB0264E %1 could not be added to favorites.
MSG_ERROR_FAVORITE_ALREADY_EXISTS=IWAB0324E %1 already exists in favorties.
MSG_QUESTION_OVERWRITE_FAVORITES=Favorite already exists.  Do you wish to overwrite?

# Refresh
MSG_INFO_NODE_REFRESHED=IWAB0265I %1 refreshed.
MSG_QUESTION_REMOVE_NODE=%1 could not be found in the registry. Do you wish to clear it?

# ManageReferencedServices
ALT_MANAGE_REFERENCED_SERVICES=Manage Referenced Services
FORM_LABEL_MANAGE_REFERENCED_SERVICES_DESC=Add discovered or published services to the list of referenced services by clicking the <strong>Add Services</strong> button. Remove selected references by clicking the <strong>Remove References</strong> button. Authentication may be required for changes.
FORM_LABEL_REFERENCED_SERVICES=Referenced Services
FORM_BUTTON_ADD_SERVICES=Add Services
FORM_BUTTON_REMOVE_REFERENCES=Remove References
MSG_ERROR_NO_REFERENCE_SELECTED=IWAB0266E Select at least one referenced service before proceeding.
MSG_ERROR_NO_SERVICES=IWAB0267E Get or find at least one service before proceeding.
MSG_ERROR_SERVICE_NOT_REFERENCED=IWAB0268E Service %1 could not be referenced.
MSG_ERROR_REFERENCE_NOT_REMOVED=IWAB0269E Service reference %1 could not be removed.
MSG_INFO_SERVICE_REFERENCED=IWAB0270I Service %1 was successfully referenced.
MSG_INFO_SERVICE_REFERENCE_REMOVED=IWAB0271I Service reference %1 was successfully removed.

# ManagePublisherAssertions
ALT_MANAGE_PUBLISHER_ASSERTIONS=Manage Publisher Assertions
FORM_LABEL_MANAGE_PUBLISHER_ASSERTIONS_DESC=Add discovered or published businesses to the list of publisher assertions by clicking <strong>Add Assertions</strong>. Remove selected assertions by clicking <strong>Remove Assertions</strong>. Complete selected assertions by clicking <strong>Complete Assertions</strong>. Click <strong>Refresh Assertions</strong> to refresh the list of assertions.
FORM_LABEL_INCOMPLETE_ASSERTIONS_VISIBILITY_DESC=Please note that incomplete publisher assertions are visible only to the owner of the business.
FORM_LABEL_BUSINESSES=Businesses
FORM_BUTTON_SHOW_ALL_PUBLISHER_ASSERTIONS=Refresh Assertions
FORM_BUTTON_COMPLETE_PUBLISHER_ASSERTIONS=Complete Assertions
FORM_BUTTON_ADD_PUBLISHER_ASSERTIONS=Add Assertions
FORM_BUTTON_REMOVE_PUBLISHER_ASSERTIONS=Remove Assertions
MSG_INFO_PUBLISHER_ASSERTIONS_REFRESHED=IWAB0325I Publisher Assertions are refreshed.
MSG_ERROR_NO_INCOMPLETE_ASSERTION_SELECTED=IWAB0326E Select at least one incomplete publisher assertion.
MSG_ERROR_NOT_OWNED_BUSINESS=IWAB0327E This operation cannot be performed on a business owned by another party.

# GetBusinesses
ALT_GET_BUSINESS=Get Business
ALT_GET_BUSINESSES=Get Businesses
NODE_NAME_SERVICE_BUSINESS=Business for service %1
NODE_NAME_SI_BUSINESSES=Businesses for service interface %1
MSG_QUESTION_REMOVE_SERVICE_NODE=The service could not be found in the registry. Do you wish to remove this node?

# GetServiceInterfaces
ALT_GET_SERVICE_INTERFACES=Get Service Interfaces
NODE_NAME_SERVICE_SERVICE_INTERFACES=Service interfaces for service %1
MSG_QUESTION_GET_SI_REMOVE_SERVICE_NODE=The service could not be found in the registry. Do you wish to remove this node?

# GetServices
ALT_GET_SERVICES=Get Services
NODE_NAME_SI_SERVICES=Services for service interface %1
NODE_NAME_BUSINESS_SERVICES=Services for business %1
MSG_QUESTION_REMOVE_SI_NODE=The service interface could not be found in the registry. Do you wish to remove this node?
MSG_QUESTION_REMOVE_BUSINESS_NODE=The business could not be found in the registry. Do you wish to remove this node?

# RefreshUDDINodesAction
MSG_ERROR_NODE_DATA_VALIDATION_FAILED=IWAB0272E %1 could not be found in the registry.

# Summaries
ALT_SUMMARY_QUERIES=Summary of Queries
ALT_SUMMARY_BUSINESSES=Summary of Businesses
ALT_SUMMARY_SERVICES=Summary of Services
ALT_SUMMARY_SERVICE_INTERFACES=Summary of Service Interfaces
FORM_LABEL_QUERIES=Queries

# SelectSubQueryItemAction
MSG_QUESTION_ITEM_VALIDATION_FAILED=%1 could not be found in the registry. Do you wish to remove it?

# Frame titles
FRAME_TITLE_NAVIGATOR_CONTAINER=Navigator Container
FRAME_TITLE_NAVIGATOR_TOOLBAR=Navigator Toolbar
FRAME_TITLE_NAVIGATOR_CONTENT=Navigator Content
FRAME_TITLE_ACTIONS_CONTAINER=Actions Container
FRAME_TITLE_PROPERTIES_CONTAINER=Properties Container
FRAME_TITLE_PROPERTIES_TOOLBAR=Properties Toolbar
FRAME_TITLE_PROPERTIES_CONTENT=Properties Content
FRAME_TITLE_STATUS_CONTAINER=Status Container
FRAME_TITLE_STATUS_TOOLBAR=Status Toolbar
FRAME_TITLE_STATUS_CONTENT=Status Content
FRAME_TITLE_UDDI_PERSPECTIVE_CONTENT=UDDI Page Content
FRAME_TITLE_CATEGORIES_WORKAREA=Categories Work Area
FRAME_TITLE_CATEGORIES_TOOLBAR=Categories Toolbar
FRAME_TITLE_CATEGORIES_CONTENT=Categories Content
FRAME_TITLE_WSDL_TOOLBAR=WSDL Browser Toolbar
FRAME_TITLE_WSDL_CONTENT=WSDL Browser Content

# Form titles
FORM_TITLE_BUSINESS_DETAILS=Business Details Form
FORM_TITLE_BUSINESS_PUBLISH_SERVICE=Business Publish Service Form
FORM_TITLE_GET_FORM=Select from Discovered and Published Objects Form
FORM_TITLE_ITEMS_SUMMARY=Summary of Items Form
FORM_TITLE_MANAGE_PUBLISHER_ASSERTIONS=Manage Publisher Assertions Form
FORM_TITLE_MANAGE_REFERENCED_SERVICES=Manage Referenced Services Form
FORM_TITLE_OPEN_REGISTRY=Open Registry Form
FORM_TITLE_REGISTRY_DETAILS=Registry Details Form
FORM_TITLE_REGISTRY_PUBLISH=Registry Publish Form
FORM_TITLE_REGISTRY_FIND=Registry Find Form
FORM_TITLE_RESULTS=Results Form
FORM_TITLE_SERVICE_DETAILS=Service Details Form
FORM_TITLE_SERVICE_INTERFACE_DETAILS=Service Interface Details Form
FORM_TITLE_UNPUBLISH=Unpublish Form
