# ====================================================================
# 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 Hummingbird Metamodels and IDE Integration Examples (Incubation)
providerName=Eclipse Modeling Project

description=Hummingbird metamodels and IDE integration including Model Explorer view contribution for Hummingbird content, generic Hummingbird form editor, exemplary graphical Hummingbird editors, exemplary validation services and constraints for Hummingbird, model transformation and code generation examples for Hummingbird, and more.

copyright=Copyright (c) 2008-2011 See4sys, BMW Car IT, Continental, 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