# ====================================================================
# To code developer:
#   Do NOT change the properties between this line and the
#   "%%% END OF TRANSLATED PROPERTIES %%%" line.
#   Make a new property name, append to the end of the file and change
#   the code to use the new property.
# ====================================================================

# ====================================================================
# %%% END OF TRANSLATED PROPERTIES %%%
# ====================================================================

featureName=Sphinx Viatra/Query Extension Examples (Incubation)
providerName=Eclipse Modeling Project

description=Includes Sphinx Viatra/Query Extension Examples (with source code).

copyright=Copyright (c) 2014-2017 itemis and others.\n\
All rights reserved. This program and the accompanying materials\n\
are made available under the terms of the Eclipse Public License v2.0\n\
which accompanies this distribution, and is available at\n\
https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html