/*******************************************************************************
 * Copyright (c) 2012 Willink Transformations 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:
 *   E.D.Willink - Initial API and implementation
 *
 * This file provides additional validation constraints for use during the Complete OCL tutorial.
 *******************************************************************************/
import 'http://www.eclipse.org/2008/Xtext#/'

package xtext

context ReferencedMetamodel
inv NoAnonymousImports: alias <> null

context Action
inv NoActions : false

context ParserRule
inv CamelCaseName : name <> null implies name.matches('[A-Z][A-Za-z]*')

context xtext::TerminalRule
inv UpperName : name <> null implies name = name.toUpperCase()
 
endpackage