###############################################################################
# Copyright (c) 2004 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
###############################################################################
XMLTableTreeViewer.0=Design
XMLMultiPageEditorPart.0=Source
XMLTreeExtension.0=Structure
XMLTreeExtension.1=Value
XMLTreeExtension.3=The document is empty.
XMLTreeExtension.4=Right mouse click here to insert content.
XMLTableTreeActionBarContributor.0=&XML
XMLTableTreeActionBarContributor.1=&Expand All
XMLTableTreeActionBarContributor.2=&Collapse All
XMLTableTreeActionBarContributor.3=Turn Grammar Constraints Off
XMLTableTreeActionBarContributor.4=&Turn Grammar Constraints Off
XMLTableTreeActionBarContributor.5=Turn Grammar Constraints On
XMLTableTreeActionBarContributor.6=&Turn Grammar Constraints On
XMLTableTreeActionBarContributor.7=Reload Dependencies
XMLTableTreeActionBarContributor.8=&Reload Dependencies
