###############################################################################
#
# Properties for plug-in: org.eclipse.datatools.connectivity.doc.user
# Version: 1.7.0.20090521092446
#
# Properties file generated by TPS_build: ditamap.pipeline.1-3_20090521092446
#
###############################################################################
#
# Plug-in name as shown in Help>About dialogs
pluginName = Data Tools Platform Connectivity User Documentation

#
# Provider name as shown in Help>About dialogs
providerName = Eclipse Data Tools Platform
#
#