# /**
#  * Copyright (c) 2002-2010 IBM Corporation and others.
#  * All rights reserved.   This program and the accompanying materials
#  * are made available under the terms of the Eclipse Public License v2.0
#  * which accompanies this distribution, and is available at
#  * http://www.eclipse.org/legal/epl-v20.html
#  *
#  * Contributors:
#  *   IBM - Initial API and implementation
#  */

# NLS_MESSAGEFORMAT_VAR

featureName=XSD Documentation

featureText=XSD Documentation\n\
Version: {featureVersion}\n\
Build: {0}\n\
Commit: {1}\n\
\n\
(c) Copyright Eclipse contributors and others. 2002, 2018.  All rights reserved.\n\
\n\
XSD is a reference library for manipulating the components of an\n\
XML Schema as described by the W3C XML Schema specifications.\n\
Visit http://www.eclipse.org/xsd/
