/**
  *
  * <!-- begin-user-doc -->
  * <!-- end-user-doc -->
  *
  * @generated
  */
 public boolean validateOppositePropertyCallExp(
     OppositePropertyCallExp oppositePropertyCallExp,
     DiagnosticChain diagnostics,
     Map<Object, Object> context) {
   boolean result =
       validate_EveryMultiplicityConforms(oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_EveryDataValueConforms(oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_EveryReferenceIsContained(oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_EveryProxyResolves(oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_UniqueID(oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_EveryKeyUnique(oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_EveryMapEntryUnique(oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         ecore_1Validator.validateOCLExpression_WellFormedName(
             oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         ecoreValidator.validateETypedElement_ValidLowerBound(
             oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         ecoreValidator.validateETypedElement_ValidUpperBound(
             oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         ecoreValidator.validateETypedElement_ConsistentBounds(
             oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         ecoreValidator.validateETypedElement_ValidType(
             oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         expressionsValidator.validatePropertyCallExp_checkPropertyType(
             oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         validateOppositePropertyCallExp_PropertyIsReference(
             oppositePropertyCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         validateOppositePropertyCallExp_PropertyIsUnidirectional(
             oppositePropertyCallExp, diagnostics, context);
   return result;
 }
 /**
  *
  * <!-- begin-user-doc -->
  * <!-- end-user-doc -->
  *
  * @generated
  */
 public boolean validateRelationCallExp(
     RelationCallExp relationCallExp, DiagnosticChain diagnostics, Map<Object, Object> context) {
   boolean result = validate_EveryMultiplicityConforms(relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_EveryDataValueConforms(relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_EveryReferenceIsContained(relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_EveryProxyResolves(relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_UniqueID(relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_EveryKeyUnique(relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validate_EveryMapEntryUnique(relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         ecore_1Validator.validateOCLExpression_WellFormedName(
             relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         ecoreValidator.validateETypedElement_ValidLowerBound(
             relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         ecoreValidator.validateETypedElement_ValidUpperBound(
             relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         ecoreValidator.validateETypedElement_ConsistentBounds(
             relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         ecoreValidator.validateETypedElement_ValidType(relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validateRelationCallExp_PatternExists(relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validateRelationCallExp_RelationExists(relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         validateRelationCallExp_InvokedFromWhenOrWhereClause(
             relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         validateRelationCallExp_ReferredRelationDeclaredByTransformation(
             relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         validateRelationCallExp_ReferredRelationArgumentNumberMatches(
             relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         validateRelationCallExp_EveryWhenReferredRelationArgumentTypeMatches(
             relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &=
         validateRelationCallExp_EveryWhereReferredRelationArgumentTypeIsMatchableWarning(
             relationCallExp, diagnostics, context);
   if (result || diagnostics != null)
     result &= validateRelationCallExp_TypeIsBoolean(relationCallExp, diagnostics, context);
   return result;
 }