/**
 * generated by Xtext 2.14.0
 */
package com.minres.rdl.rdl;

import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see com.minres.rdl.rdl.RdlFactory
 * @model kind="package"
 * @generated
 */
public interface RdlPackage extends EPackage
{
  /**
   * The package name.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  String eNAME = "rdl";

  /**
   * The package namespace URI.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  String eNS_URI = "http://www.minres.com/rdl/RDL";

  /**
   * The package namespace name.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  String eNS_PREFIX = "rdl";

  /**
   * The singleton instance of the package.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  RdlPackage eINSTANCE = com.minres.rdl.rdl.impl.RdlPackageImpl.init();

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.RootImpl <em>Root</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.RootImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getRoot()
   * @generated
   */
  int ROOT = 0;

  /**
   * The feature id for the '<em><b>Includes</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ROOT__INCLUDES = 0;

  /**
   * The feature id for the '<em><b>Component Definitions</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ROOT__COMPONENT_DEFINITIONS = 1;

  /**
   * The feature id for the '<em><b>Enum Definitions</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ROOT__ENUM_DEFINITIONS = 2;

  /**
   * The feature id for the '<em><b>Instantiations</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ROOT__INSTANTIATIONS = 3;

  /**
   * The feature id for the '<em><b>Property Assignments</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ROOT__PROPERTY_ASSIGNMENTS = 4;

  /**
   * The feature id for the '<em><b>Property Definitions</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ROOT__PROPERTY_DEFINITIONS = 5;

  /**
   * The number of structural features of the '<em>Root</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ROOT_FEATURE_COUNT = 6;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.IncludeImpl <em>Include</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.IncludeImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getInclude()
   * @generated
   */
  int INCLUDE = 1;

  /**
   * The feature id for the '<em><b>Import URI</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INCLUDE__IMPORT_URI = 0;

  /**
   * The number of structural features of the '<em>Include</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INCLUDE_FEATURE_COUNT = 1;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.EntityImpl <em>Entity</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.EntityImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEntity()
   * @generated
   */
  int ENTITY = 14;

  /**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENTITY__NAME = 0;

  /**
   * The number of structural features of the '<em>Entity</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENTITY_FEATURE_COUNT = 1;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.PropertyDefinitionImpl <em>Property Definition</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.PropertyDefinitionImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyDefinition()
   * @generated
   */
  int PROPERTY_DEFINITION = 2;

  /**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_DEFINITION__NAME = ENTITY__NAME;

  /**
   * The feature id for the '<em><b>Type</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_DEFINITION__TYPE = ENTITY_FEATURE_COUNT + 0;

  /**
   * The feature id for the '<em><b>Usage</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_DEFINITION__USAGE = ENTITY_FEATURE_COUNT + 1;

  /**
   * The feature id for the '<em><b>Default</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_DEFINITION__DEFAULT = ENTITY_FEATURE_COUNT + 2;

  /**
   * The number of structural features of the '<em>Property Definition</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_DEFINITION_FEATURE_COUNT = ENTITY_FEATURE_COUNT + 3;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.PropertyDefaultImpl <em>Property Default</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.PropertyDefaultImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyDefault()
   * @generated
   */
  int PROPERTY_DEFAULT = 3;

  /**
   * The feature id for the '<em><b>String</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_DEFAULT__STRING = 0;

  /**
   * The feature id for the '<em><b>Value</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_DEFAULT__VALUE = 1;

  /**
   * The number of structural features of the '<em>Property Default</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_DEFAULT_FEATURE_COUNT = 2;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.PropertyUsageImpl <em>Property Usage</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.PropertyUsageImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyUsage()
   * @generated
   */
  int PROPERTY_USAGE = 4;

  /**
   * The feature id for the '<em><b>Components</b></em>' attribute list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_USAGE__COMPONENTS = 0;

  /**
   * The number of structural features of the '<em>Property Usage</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_USAGE_FEATURE_COUNT = 1;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.ComponentDefinitionImpl <em>Component Definition</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.ComponentDefinitionImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getComponentDefinition()
   * @generated
   */
  int COMPONENT_DEFINITION = 5;

  /**
   * The feature id for the '<em><b>Type</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_DEFINITION__TYPE = 0;

  /**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_DEFINITION__NAME = 1;

  /**
   * The feature id for the '<em><b>Component Definitions</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_DEFINITION__COMPONENT_DEFINITIONS = 2;

  /**
   * The feature id for the '<em><b>Instantiations</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_DEFINITION__INSTANTIATIONS = 3;

  /**
   * The feature id for the '<em><b>Property Assignments</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_DEFINITION__PROPERTY_ASSIGNMENTS = 4;

  /**
   * The feature id for the '<em><b>Enum Definitions</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_DEFINITION__ENUM_DEFINITIONS = 5;

  /**
   * The number of structural features of the '<em>Component Definition</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_DEFINITION_FEATURE_COUNT = 6;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.InstantiationImpl <em>Instantiation</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.InstantiationImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getInstantiation()
   * @generated
   */
  int INSTANTIATION = 6;

  /**
   * The feature id for the '<em><b>Instance Type</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANTIATION__INSTANCE_TYPE = 0;

  /**
   * The feature id for the '<em><b>Alias</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANTIATION__ALIAS = 1;

  /**
   * The feature id for the '<em><b>Component Ref</b></em>' reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANTIATION__COMPONENT_REF = 2;

  /**
   * The feature id for the '<em><b>Component</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANTIATION__COMPONENT = 3;

  /**
   * The feature id for the '<em><b>Component Instances</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANTIATION__COMPONENT_INSTANCES = 4;

  /**
   * The number of structural features of the '<em>Instantiation</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANTIATION_FEATURE_COUNT = 5;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.ComponentInstanceImpl <em>Component Instance</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.ComponentInstanceImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getComponentInstance()
   * @generated
   */
  int COMPONENT_INSTANCE = 7;

  /**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_INSTANCE__NAME = ENTITY__NAME;

  /**
   * The feature id for the '<em><b>Range</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_INSTANCE__RANGE = ENTITY_FEATURE_COUNT + 0;

  /**
   * The feature id for the '<em><b>Reset</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_INSTANCE__RESET = ENTITY_FEATURE_COUNT + 1;

  /**
   * The feature id for the '<em><b>Address</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_INSTANCE__ADDRESS = ENTITY_FEATURE_COUNT + 2;

  /**
   * The feature id for the '<em><b>Addr Inc</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_INSTANCE__ADDR_INC = ENTITY_FEATURE_COUNT + 3;

  /**
   * The feature id for the '<em><b>Addr Mod</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_INSTANCE__ADDR_MOD = ENTITY_FEATURE_COUNT + 4;

  /**
   * The number of structural features of the '<em>Component Instance</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int COMPONENT_INSTANCE_FEATURE_COUNT = ENTITY_FEATURE_COUNT + 5;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.RangeImpl <em>Range</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.RangeImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getRange()
   * @generated
   */
  int RANGE = 8;

  /**
   * The feature id for the '<em><b>Left</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int RANGE__LEFT = 0;

  /**
   * The feature id for the '<em><b>Right</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int RANGE__RIGHT = 1;

  /**
   * The feature id for the '<em><b>Size</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int RANGE__SIZE = 2;

  /**
   * The number of structural features of the '<em>Range</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int RANGE_FEATURE_COUNT = 3;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.PropertyAssignmentImpl <em>Property Assignment</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.PropertyAssignmentImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyAssignment()
   * @generated
   */
  int PROPERTY_ASSIGNMENT = 9;

  /**
   * The number of structural features of the '<em>Property Assignment</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_ASSIGNMENT_FEATURE_COUNT = 0;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.DefaultProperyAssignmentImpl <em>Default Propery Assignment</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.DefaultProperyAssignmentImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getDefaultProperyAssignment()
   * @generated
   */
  int DEFAULT_PROPERY_ASSIGNMENT = 10;

  /**
   * The number of structural features of the '<em>Default Propery Assignment</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int DEFAULT_PROPERY_ASSIGNMENT_FEATURE_COUNT = PROPERTY_ASSIGNMENT_FEATURE_COUNT + 0;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.ExplicitPropertyAssignmentImpl <em>Explicit Property Assignment</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.ExplicitPropertyAssignmentImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getExplicitPropertyAssignment()
   * @generated
   */
  int EXPLICIT_PROPERTY_ASSIGNMENT = 11;

  /**
   * The feature id for the '<em><b>Modifier</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int EXPLICIT_PROPERTY_ASSIGNMENT__MODIFIER = PROPERTY_ASSIGNMENT_FEATURE_COUNT + 0;

  /**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int EXPLICIT_PROPERTY_ASSIGNMENT__NAME = PROPERTY_ASSIGNMENT_FEATURE_COUNT + 1;

  /**
   * The feature id for the '<em><b>Rhs</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int EXPLICIT_PROPERTY_ASSIGNMENT__RHS = PROPERTY_ASSIGNMENT_FEATURE_COUNT + 2;

  /**
   * The number of structural features of the '<em>Explicit Property Assignment</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int EXPLICIT_PROPERTY_ASSIGNMENT_FEATURE_COUNT = PROPERTY_ASSIGNMENT_FEATURE_COUNT + 3;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.PostPropertyAssignmentImpl <em>Post Property Assignment</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.PostPropertyAssignmentImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPostPropertyAssignment()
   * @generated
   */
  int POST_PROPERTY_ASSIGNMENT = 12;

  /**
   * The feature id for the '<em><b>Instance</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int POST_PROPERTY_ASSIGNMENT__INSTANCE = PROPERTY_ASSIGNMENT_FEATURE_COUNT + 0;

  /**
   * The feature id for the '<em><b>Property Enum</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int POST_PROPERTY_ASSIGNMENT__PROPERTY_ENUM = PROPERTY_ASSIGNMENT_FEATURE_COUNT + 1;

  /**
   * The feature id for the '<em><b>Property</b></em>' reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int POST_PROPERTY_ASSIGNMENT__PROPERTY = PROPERTY_ASSIGNMENT_FEATURE_COUNT + 2;

  /**
   * The feature id for the '<em><b>Rhs</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int POST_PROPERTY_ASSIGNMENT__RHS = PROPERTY_ASSIGNMENT_FEATURE_COUNT + 3;

  /**
   * The number of structural features of the '<em>Post Property Assignment</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int POST_PROPERTY_ASSIGNMENT_FEATURE_COUNT = PROPERTY_ASSIGNMENT_FEATURE_COUNT + 4;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.InstancePropertyRefImpl <em>Instance Property Ref</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.InstancePropertyRefImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getInstancePropertyRef()
   * @generated
   */
  int INSTANCE_PROPERTY_REF = 13;

  /**
   * The feature id for the '<em><b>Instance</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANCE_PROPERTY_REF__INSTANCE = 0;

  /**
   * The feature id for the '<em><b>Property Enum</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANCE_PROPERTY_REF__PROPERTY_ENUM = 1;

  /**
   * The feature id for the '<em><b>Property</b></em>' reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANCE_PROPERTY_REF__PROPERTY = 2;

  /**
   * The number of structural features of the '<em>Instance Property Ref</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANCE_PROPERTY_REF_FEATURE_COUNT = 3;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.InstanceRefImpl <em>Instance Ref</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.InstanceRefImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getInstanceRef()
   * @generated
   */
  int INSTANCE_REF = 15;

  /**
   * The feature id for the '<em><b>Instance</b></em>' reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANCE_REF__INSTANCE = 0;

  /**
   * The feature id for the '<em><b>Tail</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANCE_REF__TAIL = 1;

  /**
   * The number of structural features of the '<em>Instance Ref</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int INSTANCE_REF_FEATURE_COUNT = 2;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.PropertyAssignmentRhsImpl <em>Property Assignment Rhs</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.PropertyAssignmentRhsImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyAssignmentRhs()
   * @generated
   */
  int PROPERTY_ASSIGNMENT_RHS = 16;

  /**
   * The feature id for the '<em><b>Value</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_ASSIGNMENT_RHS__VALUE = 0;

  /**
   * The feature id for the '<em><b>Inst Prop Ref</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_ASSIGNMENT_RHS__INST_PROP_REF = 1;

  /**
   * The feature id for the '<em><b>Enum Ref</b></em>' reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_ASSIGNMENT_RHS__ENUM_REF = 2;

  /**
   * The feature id for the '<em><b>Enums</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_ASSIGNMENT_RHS__ENUMS = 3;

  /**
   * The feature id for the '<em><b>Elements</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_ASSIGNMENT_RHS__ELEMENTS = 4;

  /**
   * The number of structural features of the '<em>Property Assignment Rhs</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int PROPERTY_ASSIGNMENT_RHS_FEATURE_COUNT = 5;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.ConcatImpl <em>Concat</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.ConcatImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getConcat()
   * @generated
   */
  int CONCAT = 17;

  /**
   * The feature id for the '<em><b>Elements</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int CONCAT__ELEMENTS = 0;

  /**
   * The number of structural features of the '<em>Concat</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int CONCAT_FEATURE_COUNT = 1;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.ConcatElemImpl <em>Concat Elem</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.ConcatElemImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getConcatElem()
   * @generated
   */
  int CONCAT_ELEM = 18;

  /**
   * The feature id for the '<em><b>Inst Prop Ref</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int CONCAT_ELEM__INST_PROP_REF = 0;

  /**
   * The feature id for the '<em><b>Value</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int CONCAT_ELEM__VALUE = 1;

  /**
   * The number of structural features of the '<em>Concat Elem</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int CONCAT_ELEM_FEATURE_COUNT = 2;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.RValueImpl <em>RValue</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.RValueImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getRValue()
   * @generated
   */
  int RVALUE = 19;

  /**
   * The feature id for the '<em><b>Val</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int RVALUE__VAL = 0;

  /**
   * The feature id for the '<em><b>Num</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int RVALUE__NUM = 1;

  /**
   * The feature id for the '<em><b>Str</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int RVALUE__STR = 2;

  /**
   * The number of structural features of the '<em>RValue</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int RVALUE_FEATURE_COUNT = 3;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.EnumDefinitionImpl <em>Enum Definition</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.EnumDefinitionImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEnumDefinition()
   * @generated
   */
  int ENUM_DEFINITION = 20;

  /**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_DEFINITION__NAME = ENTITY__NAME;

  /**
   * The feature id for the '<em><b>Body</b></em>' containment reference.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_DEFINITION__BODY = ENTITY_FEATURE_COUNT + 0;

  /**
   * The number of structural features of the '<em>Enum Definition</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_DEFINITION_FEATURE_COUNT = ENTITY_FEATURE_COUNT + 1;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.EnumBodyImpl <em>Enum Body</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.EnumBodyImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEnumBody()
   * @generated
   */
  int ENUM_BODY = 21;

  /**
   * The feature id for the '<em><b>Entries</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_BODY__ENTRIES = 0;

  /**
   * The number of structural features of the '<em>Enum Body</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_BODY_FEATURE_COUNT = 1;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.EnumEntryImpl <em>Enum Entry</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.EnumEntryImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEnumEntry()
   * @generated
   */
  int ENUM_ENTRY = 22;

  /**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_ENTRY__NAME = 0;

  /**
   * The feature id for the '<em><b>Index</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_ENTRY__INDEX = 1;

  /**
   * The feature id for the '<em><b>Properties</b></em>' containment reference list.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_ENTRY__PROPERTIES = 2;

  /**
   * The number of structural features of the '<em>Enum Entry</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_ENTRY_FEATURE_COUNT = 3;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.EnumPropertyImpl <em>Enum Property</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.EnumPropertyImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEnumProperty()
   * @generated
   */
  int ENUM_PROPERTY = 23;

  /**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_PROPERTY__NAME = 0;

  /**
   * The feature id for the '<em><b>Value</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_PROPERTY__VALUE = 1;

  /**
   * The number of structural features of the '<em>Enum Property</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_PROPERTY_FEATURE_COUNT = 2;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.impl.EnumInstanceTypeImpl <em>Enum Instance Type</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.impl.EnumInstanceTypeImpl
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEnumInstanceType()
   * @generated
   */
  int ENUM_INSTANCE_TYPE = 24;

  /**
   * The feature id for the '<em><b>EXTERNAL</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_INSTANCE_TYPE__EXTERNAL = 0;

  /**
   * The feature id for the '<em><b>INTERNAL</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_INSTANCE_TYPE__INTERNAL = 1;

  /**
   * The number of structural features of the '<em>Enum Instance Type</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
  int ENUM_INSTANCE_TYPE_FEATURE_COUNT = 2;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.PropertyTypeName <em>Property Type Name</em>}' enum.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.PropertyTypeName
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyTypeName()
   * @generated
   */
  int PROPERTY_TYPE_NAME = 25;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.PropertyComponent <em>Property Component</em>}' enum.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.PropertyComponent
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyComponent()
   * @generated
   */
  int PROPERTY_COMPONENT = 26;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.ComponentDefinitionType <em>Component Definition Type</em>}' enum.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.ComponentDefinitionType
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getComponentDefinitionType()
   * @generated
   */
  int COMPONENT_DEFINITION_TYPE = 27;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.PropertyEnum <em>Property Enum</em>}' enum.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.PropertyEnum
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyEnum()
   * @generated
   */
  int PROPERTY_ENUM = 28;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.RValueConstant <em>RValue Constant</em>}' enum.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.RValueConstant
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getRValueConstant()
   * @generated
   */
  int RVALUE_CONSTANT = 29;

  /**
   * The meta object id for the '{@link com.minres.rdl.rdl.PropertyModifier <em>Property Modifier</em>}' enum.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see com.minres.rdl.rdl.PropertyModifier
   * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyModifier()
   * @generated
   */
  int PROPERTY_MODIFIER = 30;


  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.Root <em>Root</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Root</em>'.
   * @see com.minres.rdl.rdl.Root
   * @generated
   */
  EClass getRoot();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.Root#getIncludes <em>Includes</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Includes</em>'.
   * @see com.minres.rdl.rdl.Root#getIncludes()
   * @see #getRoot()
   * @generated
   */
  EReference getRoot_Includes();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.Root#getComponentDefinitions <em>Component Definitions</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Component Definitions</em>'.
   * @see com.minres.rdl.rdl.Root#getComponentDefinitions()
   * @see #getRoot()
   * @generated
   */
  EReference getRoot_ComponentDefinitions();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.Root#getEnumDefinitions <em>Enum Definitions</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Enum Definitions</em>'.
   * @see com.minres.rdl.rdl.Root#getEnumDefinitions()
   * @see #getRoot()
   * @generated
   */
  EReference getRoot_EnumDefinitions();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.Root#getInstantiations <em>Instantiations</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Instantiations</em>'.
   * @see com.minres.rdl.rdl.Root#getInstantiations()
   * @see #getRoot()
   * @generated
   */
  EReference getRoot_Instantiations();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.Root#getPropertyAssignments <em>Property Assignments</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Property Assignments</em>'.
   * @see com.minres.rdl.rdl.Root#getPropertyAssignments()
   * @see #getRoot()
   * @generated
   */
  EReference getRoot_PropertyAssignments();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.Root#getPropertyDefinitions <em>Property Definitions</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Property Definitions</em>'.
   * @see com.minres.rdl.rdl.Root#getPropertyDefinitions()
   * @see #getRoot()
   * @generated
   */
  EReference getRoot_PropertyDefinitions();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.Include <em>Include</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Include</em>'.
   * @see com.minres.rdl.rdl.Include
   * @generated
   */
  EClass getInclude();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.Include#getImportURI <em>Import URI</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Import URI</em>'.
   * @see com.minres.rdl.rdl.Include#getImportURI()
   * @see #getInclude()
   * @generated
   */
  EAttribute getInclude_ImportURI();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.PropertyDefinition <em>Property Definition</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Property Definition</em>'.
   * @see com.minres.rdl.rdl.PropertyDefinition
   * @generated
   */
  EClass getPropertyDefinition();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.PropertyDefinition#getType <em>Type</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Type</em>'.
   * @see com.minres.rdl.rdl.PropertyDefinition#getType()
   * @see #getPropertyDefinition()
   * @generated
   */
  EAttribute getPropertyDefinition_Type();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.PropertyDefinition#getUsage <em>Usage</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Usage</em>'.
   * @see com.minres.rdl.rdl.PropertyDefinition#getUsage()
   * @see #getPropertyDefinition()
   * @generated
   */
  EReference getPropertyDefinition_Usage();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.PropertyDefinition#getDefault <em>Default</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Default</em>'.
   * @see com.minres.rdl.rdl.PropertyDefinition#getDefault()
   * @see #getPropertyDefinition()
   * @generated
   */
  EReference getPropertyDefinition_Default();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.PropertyDefault <em>Property Default</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Property Default</em>'.
   * @see com.minres.rdl.rdl.PropertyDefault
   * @generated
   */
  EClass getPropertyDefault();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.PropertyDefault#getString <em>String</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>String</em>'.
   * @see com.minres.rdl.rdl.PropertyDefault#getString()
   * @see #getPropertyDefault()
   * @generated
   */
  EAttribute getPropertyDefault_String();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.PropertyDefault#getValue <em>Value</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Value</em>'.
   * @see com.minres.rdl.rdl.PropertyDefault#getValue()
   * @see #getPropertyDefault()
   * @generated
   */
  EAttribute getPropertyDefault_Value();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.PropertyUsage <em>Property Usage</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Property Usage</em>'.
   * @see com.minres.rdl.rdl.PropertyUsage
   * @generated
   */
  EClass getPropertyUsage();

  /**
   * Returns the meta object for the attribute list '{@link com.minres.rdl.rdl.PropertyUsage#getComponents <em>Components</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute list '<em>Components</em>'.
   * @see com.minres.rdl.rdl.PropertyUsage#getComponents()
   * @see #getPropertyUsage()
   * @generated
   */
  EAttribute getPropertyUsage_Components();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.ComponentDefinition <em>Component Definition</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Component Definition</em>'.
   * @see com.minres.rdl.rdl.ComponentDefinition
   * @generated
   */
  EClass getComponentDefinition();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.ComponentDefinition#getType <em>Type</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Type</em>'.
   * @see com.minres.rdl.rdl.ComponentDefinition#getType()
   * @see #getComponentDefinition()
   * @generated
   */
  EAttribute getComponentDefinition_Type();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.ComponentDefinition#getName <em>Name</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Name</em>'.
   * @see com.minres.rdl.rdl.ComponentDefinition#getName()
   * @see #getComponentDefinition()
   * @generated
   */
  EAttribute getComponentDefinition_Name();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.ComponentDefinition#getComponentDefinitions <em>Component Definitions</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Component Definitions</em>'.
   * @see com.minres.rdl.rdl.ComponentDefinition#getComponentDefinitions()
   * @see #getComponentDefinition()
   * @generated
   */
  EReference getComponentDefinition_ComponentDefinitions();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.ComponentDefinition#getInstantiations <em>Instantiations</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Instantiations</em>'.
   * @see com.minres.rdl.rdl.ComponentDefinition#getInstantiations()
   * @see #getComponentDefinition()
   * @generated
   */
  EReference getComponentDefinition_Instantiations();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.ComponentDefinition#getPropertyAssignments <em>Property Assignments</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Property Assignments</em>'.
   * @see com.minres.rdl.rdl.ComponentDefinition#getPropertyAssignments()
   * @see #getComponentDefinition()
   * @generated
   */
  EReference getComponentDefinition_PropertyAssignments();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.ComponentDefinition#getEnumDefinitions <em>Enum Definitions</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Enum Definitions</em>'.
   * @see com.minres.rdl.rdl.ComponentDefinition#getEnumDefinitions()
   * @see #getComponentDefinition()
   * @generated
   */
  EReference getComponentDefinition_EnumDefinitions();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.Instantiation <em>Instantiation</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Instantiation</em>'.
   * @see com.minres.rdl.rdl.Instantiation
   * @generated
   */
  EClass getInstantiation();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.Instantiation#getInstanceType <em>Instance Type</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Instance Type</em>'.
   * @see com.minres.rdl.rdl.Instantiation#getInstanceType()
   * @see #getInstantiation()
   * @generated
   */
  EReference getInstantiation_InstanceType();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.Instantiation#getAlias <em>Alias</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Alias</em>'.
   * @see com.minres.rdl.rdl.Instantiation#getAlias()
   * @see #getInstantiation()
   * @generated
   */
  EAttribute getInstantiation_Alias();

  /**
   * Returns the meta object for the reference '{@link com.minres.rdl.rdl.Instantiation#getComponentRef <em>Component Ref</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Component Ref</em>'.
   * @see com.minres.rdl.rdl.Instantiation#getComponentRef()
   * @see #getInstantiation()
   * @generated
   */
  EReference getInstantiation_ComponentRef();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.Instantiation#getComponent <em>Component</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Component</em>'.
   * @see com.minres.rdl.rdl.Instantiation#getComponent()
   * @see #getInstantiation()
   * @generated
   */
  EReference getInstantiation_Component();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.Instantiation#getComponentInstances <em>Component Instances</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Component Instances</em>'.
   * @see com.minres.rdl.rdl.Instantiation#getComponentInstances()
   * @see #getInstantiation()
   * @generated
   */
  EReference getInstantiation_ComponentInstances();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.ComponentInstance <em>Component Instance</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Component Instance</em>'.
   * @see com.minres.rdl.rdl.ComponentInstance
   * @generated
   */
  EClass getComponentInstance();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.ComponentInstance#getRange <em>Range</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Range</em>'.
   * @see com.minres.rdl.rdl.ComponentInstance#getRange()
   * @see #getComponentInstance()
   * @generated
   */
  EReference getComponentInstance_Range();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.ComponentInstance#getReset <em>Reset</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Reset</em>'.
   * @see com.minres.rdl.rdl.ComponentInstance#getReset()
   * @see #getComponentInstance()
   * @generated
   */
  EAttribute getComponentInstance_Reset();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.ComponentInstance#getAddress <em>Address</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Address</em>'.
   * @see com.minres.rdl.rdl.ComponentInstance#getAddress()
   * @see #getComponentInstance()
   * @generated
   */
  EAttribute getComponentInstance_Address();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.ComponentInstance#getAddrInc <em>Addr Inc</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Addr Inc</em>'.
   * @see com.minres.rdl.rdl.ComponentInstance#getAddrInc()
   * @see #getComponentInstance()
   * @generated
   */
  EAttribute getComponentInstance_AddrInc();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.ComponentInstance#getAddrMod <em>Addr Mod</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Addr Mod</em>'.
   * @see com.minres.rdl.rdl.ComponentInstance#getAddrMod()
   * @see #getComponentInstance()
   * @generated
   */
  EAttribute getComponentInstance_AddrMod();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.Range <em>Range</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Range</em>'.
   * @see com.minres.rdl.rdl.Range
   * @generated
   */
  EClass getRange();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.Range#getLeft <em>Left</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Left</em>'.
   * @see com.minres.rdl.rdl.Range#getLeft()
   * @see #getRange()
   * @generated
   */
  EAttribute getRange_Left();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.Range#getRight <em>Right</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Right</em>'.
   * @see com.minres.rdl.rdl.Range#getRight()
   * @see #getRange()
   * @generated
   */
  EAttribute getRange_Right();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.Range#getSize <em>Size</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Size</em>'.
   * @see com.minres.rdl.rdl.Range#getSize()
   * @see #getRange()
   * @generated
   */
  EAttribute getRange_Size();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.PropertyAssignment <em>Property Assignment</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Property Assignment</em>'.
   * @see com.minres.rdl.rdl.PropertyAssignment
   * @generated
   */
  EClass getPropertyAssignment();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.DefaultProperyAssignment <em>Default Propery Assignment</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Default Propery Assignment</em>'.
   * @see com.minres.rdl.rdl.DefaultProperyAssignment
   * @generated
   */
  EClass getDefaultProperyAssignment();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.ExplicitPropertyAssignment <em>Explicit Property Assignment</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Explicit Property Assignment</em>'.
   * @see com.minres.rdl.rdl.ExplicitPropertyAssignment
   * @generated
   */
  EClass getExplicitPropertyAssignment();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.ExplicitPropertyAssignment#getModifier <em>Modifier</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Modifier</em>'.
   * @see com.minres.rdl.rdl.ExplicitPropertyAssignment#getModifier()
   * @see #getExplicitPropertyAssignment()
   * @generated
   */
  EAttribute getExplicitPropertyAssignment_Modifier();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.ExplicitPropertyAssignment#getName <em>Name</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Name</em>'.
   * @see com.minres.rdl.rdl.ExplicitPropertyAssignment#getName()
   * @see #getExplicitPropertyAssignment()
   * @generated
   */
  EAttribute getExplicitPropertyAssignment_Name();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.ExplicitPropertyAssignment#getRhs <em>Rhs</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Rhs</em>'.
   * @see com.minres.rdl.rdl.ExplicitPropertyAssignment#getRhs()
   * @see #getExplicitPropertyAssignment()
   * @generated
   */
  EReference getExplicitPropertyAssignment_Rhs();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.PostPropertyAssignment <em>Post Property Assignment</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Post Property Assignment</em>'.
   * @see com.minres.rdl.rdl.PostPropertyAssignment
   * @generated
   */
  EClass getPostPropertyAssignment();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.PostPropertyAssignment#getInstance <em>Instance</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Instance</em>'.
   * @see com.minres.rdl.rdl.PostPropertyAssignment#getInstance()
   * @see #getPostPropertyAssignment()
   * @generated
   */
  EReference getPostPropertyAssignment_Instance();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.PostPropertyAssignment#getPropertyEnum <em>Property Enum</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Property Enum</em>'.
   * @see com.minres.rdl.rdl.PostPropertyAssignment#getPropertyEnum()
   * @see #getPostPropertyAssignment()
   * @generated
   */
  EAttribute getPostPropertyAssignment_PropertyEnum();

  /**
   * Returns the meta object for the reference '{@link com.minres.rdl.rdl.PostPropertyAssignment#getProperty <em>Property</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Property</em>'.
   * @see com.minres.rdl.rdl.PostPropertyAssignment#getProperty()
   * @see #getPostPropertyAssignment()
   * @generated
   */
  EReference getPostPropertyAssignment_Property();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.PostPropertyAssignment#getRhs <em>Rhs</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Rhs</em>'.
   * @see com.minres.rdl.rdl.PostPropertyAssignment#getRhs()
   * @see #getPostPropertyAssignment()
   * @generated
   */
  EReference getPostPropertyAssignment_Rhs();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.InstancePropertyRef <em>Instance Property Ref</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Instance Property Ref</em>'.
   * @see com.minres.rdl.rdl.InstancePropertyRef
   * @generated
   */
  EClass getInstancePropertyRef();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.InstancePropertyRef#getInstance <em>Instance</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Instance</em>'.
   * @see com.minres.rdl.rdl.InstancePropertyRef#getInstance()
   * @see #getInstancePropertyRef()
   * @generated
   */
  EReference getInstancePropertyRef_Instance();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.InstancePropertyRef#getPropertyEnum <em>Property Enum</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Property Enum</em>'.
   * @see com.minres.rdl.rdl.InstancePropertyRef#getPropertyEnum()
   * @see #getInstancePropertyRef()
   * @generated
   */
  EAttribute getInstancePropertyRef_PropertyEnum();

  /**
   * Returns the meta object for the reference '{@link com.minres.rdl.rdl.InstancePropertyRef#getProperty <em>Property</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Property</em>'.
   * @see com.minres.rdl.rdl.InstancePropertyRef#getProperty()
   * @see #getInstancePropertyRef()
   * @generated
   */
  EReference getInstancePropertyRef_Property();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.Entity <em>Entity</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Entity</em>'.
   * @see com.minres.rdl.rdl.Entity
   * @generated
   */
  EClass getEntity();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.Entity#getName <em>Name</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Name</em>'.
   * @see com.minres.rdl.rdl.Entity#getName()
   * @see #getEntity()
   * @generated
   */
  EAttribute getEntity_Name();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.InstanceRef <em>Instance Ref</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Instance Ref</em>'.
   * @see com.minres.rdl.rdl.InstanceRef
   * @generated
   */
  EClass getInstanceRef();

  /**
   * Returns the meta object for the reference '{@link com.minres.rdl.rdl.InstanceRef#getInstance <em>Instance</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Instance</em>'.
   * @see com.minres.rdl.rdl.InstanceRef#getInstance()
   * @see #getInstanceRef()
   * @generated
   */
  EReference getInstanceRef_Instance();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.InstanceRef#getTail <em>Tail</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Tail</em>'.
   * @see com.minres.rdl.rdl.InstanceRef#getTail()
   * @see #getInstanceRef()
   * @generated
   */
  EReference getInstanceRef_Tail();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.PropertyAssignmentRhs <em>Property Assignment Rhs</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Property Assignment Rhs</em>'.
   * @see com.minres.rdl.rdl.PropertyAssignmentRhs
   * @generated
   */
  EClass getPropertyAssignmentRhs();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.PropertyAssignmentRhs#getValue <em>Value</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Value</em>'.
   * @see com.minres.rdl.rdl.PropertyAssignmentRhs#getValue()
   * @see #getPropertyAssignmentRhs()
   * @generated
   */
  EReference getPropertyAssignmentRhs_Value();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.PropertyAssignmentRhs#getInstPropRef <em>Inst Prop Ref</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Inst Prop Ref</em>'.
   * @see com.minres.rdl.rdl.PropertyAssignmentRhs#getInstPropRef()
   * @see #getPropertyAssignmentRhs()
   * @generated
   */
  EReference getPropertyAssignmentRhs_InstPropRef();

  /**
   * Returns the meta object for the reference '{@link com.minres.rdl.rdl.PropertyAssignmentRhs#getEnumRef <em>Enum Ref</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Enum Ref</em>'.
   * @see com.minres.rdl.rdl.PropertyAssignmentRhs#getEnumRef()
   * @see #getPropertyAssignmentRhs()
   * @generated
   */
  EReference getPropertyAssignmentRhs_EnumRef();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.PropertyAssignmentRhs#getEnums <em>Enums</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Enums</em>'.
   * @see com.minres.rdl.rdl.PropertyAssignmentRhs#getEnums()
   * @see #getPropertyAssignmentRhs()
   * @generated
   */
  EReference getPropertyAssignmentRhs_Enums();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.PropertyAssignmentRhs#getElements <em>Elements</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Elements</em>'.
   * @see com.minres.rdl.rdl.PropertyAssignmentRhs#getElements()
   * @see #getPropertyAssignmentRhs()
   * @generated
   */
  EReference getPropertyAssignmentRhs_Elements();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.Concat <em>Concat</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Concat</em>'.
   * @see com.minres.rdl.rdl.Concat
   * @generated
   */
  EClass getConcat();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.Concat#getElements <em>Elements</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Elements</em>'.
   * @see com.minres.rdl.rdl.Concat#getElements()
   * @see #getConcat()
   * @generated
   */
  EReference getConcat_Elements();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.ConcatElem <em>Concat Elem</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Concat Elem</em>'.
   * @see com.minres.rdl.rdl.ConcatElem
   * @generated
   */
  EClass getConcatElem();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.ConcatElem#getInstPropRef <em>Inst Prop Ref</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Inst Prop Ref</em>'.
   * @see com.minres.rdl.rdl.ConcatElem#getInstPropRef()
   * @see #getConcatElem()
   * @generated
   */
  EReference getConcatElem_InstPropRef();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.ConcatElem#getValue <em>Value</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Value</em>'.
   * @see com.minres.rdl.rdl.ConcatElem#getValue()
   * @see #getConcatElem()
   * @generated
   */
  EAttribute getConcatElem_Value();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.RValue <em>RValue</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>RValue</em>'.
   * @see com.minres.rdl.rdl.RValue
   * @generated
   */
  EClass getRValue();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.RValue#getVal <em>Val</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Val</em>'.
   * @see com.minres.rdl.rdl.RValue#getVal()
   * @see #getRValue()
   * @generated
   */
  EAttribute getRValue_Val();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.RValue#getNum <em>Num</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Num</em>'.
   * @see com.minres.rdl.rdl.RValue#getNum()
   * @see #getRValue()
   * @generated
   */
  EAttribute getRValue_Num();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.RValue#getStr <em>Str</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Str</em>'.
   * @see com.minres.rdl.rdl.RValue#getStr()
   * @see #getRValue()
   * @generated
   */
  EAttribute getRValue_Str();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.EnumDefinition <em>Enum Definition</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Enum Definition</em>'.
   * @see com.minres.rdl.rdl.EnumDefinition
   * @generated
   */
  EClass getEnumDefinition();

  /**
   * Returns the meta object for the containment reference '{@link com.minres.rdl.rdl.EnumDefinition#getBody <em>Body</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Body</em>'.
   * @see com.minres.rdl.rdl.EnumDefinition#getBody()
   * @see #getEnumDefinition()
   * @generated
   */
  EReference getEnumDefinition_Body();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.EnumBody <em>Enum Body</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Enum Body</em>'.
   * @see com.minres.rdl.rdl.EnumBody
   * @generated
   */
  EClass getEnumBody();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.EnumBody#getEntries <em>Entries</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Entries</em>'.
   * @see com.minres.rdl.rdl.EnumBody#getEntries()
   * @see #getEnumBody()
   * @generated
   */
  EReference getEnumBody_Entries();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.EnumEntry <em>Enum Entry</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Enum Entry</em>'.
   * @see com.minres.rdl.rdl.EnumEntry
   * @generated
   */
  EClass getEnumEntry();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.EnumEntry#getName <em>Name</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Name</em>'.
   * @see com.minres.rdl.rdl.EnumEntry#getName()
   * @see #getEnumEntry()
   * @generated
   */
  EAttribute getEnumEntry_Name();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.EnumEntry#getIndex <em>Index</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Index</em>'.
   * @see com.minres.rdl.rdl.EnumEntry#getIndex()
   * @see #getEnumEntry()
   * @generated
   */
  EAttribute getEnumEntry_Index();

  /**
   * Returns the meta object for the containment reference list '{@link com.minres.rdl.rdl.EnumEntry#getProperties <em>Properties</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Properties</em>'.
   * @see com.minres.rdl.rdl.EnumEntry#getProperties()
   * @see #getEnumEntry()
   * @generated
   */
  EReference getEnumEntry_Properties();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.EnumProperty <em>Enum Property</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Enum Property</em>'.
   * @see com.minres.rdl.rdl.EnumProperty
   * @generated
   */
  EClass getEnumProperty();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.EnumProperty#getName <em>Name</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Name</em>'.
   * @see com.minres.rdl.rdl.EnumProperty#getName()
   * @see #getEnumProperty()
   * @generated
   */
  EAttribute getEnumProperty_Name();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.EnumProperty#getValue <em>Value</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Value</em>'.
   * @see com.minres.rdl.rdl.EnumProperty#getValue()
   * @see #getEnumProperty()
   * @generated
   */
  EAttribute getEnumProperty_Value();

  /**
   * Returns the meta object for class '{@link com.minres.rdl.rdl.EnumInstanceType <em>Enum Instance Type</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for class '<em>Enum Instance Type</em>'.
   * @see com.minres.rdl.rdl.EnumInstanceType
   * @generated
   */
  EClass getEnumInstanceType();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.EnumInstanceType#getEXTERNAL <em>EXTERNAL</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>EXTERNAL</em>'.
   * @see com.minres.rdl.rdl.EnumInstanceType#getEXTERNAL()
   * @see #getEnumInstanceType()
   * @generated
   */
  EAttribute getEnumInstanceType_EXTERNAL();

  /**
   * Returns the meta object for the attribute '{@link com.minres.rdl.rdl.EnumInstanceType#getINTERNAL <em>INTERNAL</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>INTERNAL</em>'.
   * @see com.minres.rdl.rdl.EnumInstanceType#getINTERNAL()
   * @see #getEnumInstanceType()
   * @generated
   */
  EAttribute getEnumInstanceType_INTERNAL();

  /**
   * Returns the meta object for enum '{@link com.minres.rdl.rdl.PropertyTypeName <em>Property Type Name</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for enum '<em>Property Type Name</em>'.
   * @see com.minres.rdl.rdl.PropertyTypeName
   * @generated
   */
  EEnum getPropertyTypeName();

  /**
   * Returns the meta object for enum '{@link com.minres.rdl.rdl.PropertyComponent <em>Property Component</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for enum '<em>Property Component</em>'.
   * @see com.minres.rdl.rdl.PropertyComponent
   * @generated
   */
  EEnum getPropertyComponent();

  /**
   * Returns the meta object for enum '{@link com.minres.rdl.rdl.ComponentDefinitionType <em>Component Definition Type</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for enum '<em>Component Definition Type</em>'.
   * @see com.minres.rdl.rdl.ComponentDefinitionType
   * @generated
   */
  EEnum getComponentDefinitionType();

  /**
   * Returns the meta object for enum '{@link com.minres.rdl.rdl.PropertyEnum <em>Property Enum</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for enum '<em>Property Enum</em>'.
   * @see com.minres.rdl.rdl.PropertyEnum
   * @generated
   */
  EEnum getPropertyEnum();

  /**
   * Returns the meta object for enum '{@link com.minres.rdl.rdl.RValueConstant <em>RValue Constant</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for enum '<em>RValue Constant</em>'.
   * @see com.minres.rdl.rdl.RValueConstant
   * @generated
   */
  EEnum getRValueConstant();

  /**
   * Returns the meta object for enum '{@link com.minres.rdl.rdl.PropertyModifier <em>Property Modifier</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the meta object for enum '<em>Property Modifier</em>'.
   * @see com.minres.rdl.rdl.PropertyModifier
   * @generated
   */
  EEnum getPropertyModifier();

  /**
   * Returns the factory that creates the instances of the model.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return the factory that creates the instances of the model.
   * @generated
   */
  RdlFactory getRdlFactory();

  /**
   * <!-- begin-user-doc -->
   * Defines literals for the meta objects that represent
   * <ul>
   *   <li>each class,</li>
   *   <li>each feature of each class,</li>
   *   <li>each enum,</li>
   *   <li>and each data type</li>
   * </ul>
   * <!-- end-user-doc -->
   * @generated
   */
  interface Literals
  {
    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.RootImpl <em>Root</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.RootImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getRoot()
     * @generated
     */
    EClass ROOT = eINSTANCE.getRoot();

    /**
     * The meta object literal for the '<em><b>Includes</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference ROOT__INCLUDES = eINSTANCE.getRoot_Includes();

    /**
     * The meta object literal for the '<em><b>Component Definitions</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference ROOT__COMPONENT_DEFINITIONS = eINSTANCE.getRoot_ComponentDefinitions();

    /**
     * The meta object literal for the '<em><b>Enum Definitions</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference ROOT__ENUM_DEFINITIONS = eINSTANCE.getRoot_EnumDefinitions();

    /**
     * The meta object literal for the '<em><b>Instantiations</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference ROOT__INSTANTIATIONS = eINSTANCE.getRoot_Instantiations();

    /**
     * The meta object literal for the '<em><b>Property Assignments</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference ROOT__PROPERTY_ASSIGNMENTS = eINSTANCE.getRoot_PropertyAssignments();

    /**
     * The meta object literal for the '<em><b>Property Definitions</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference ROOT__PROPERTY_DEFINITIONS = eINSTANCE.getRoot_PropertyDefinitions();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.IncludeImpl <em>Include</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.IncludeImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getInclude()
     * @generated
     */
    EClass INCLUDE = eINSTANCE.getInclude();

    /**
     * The meta object literal for the '<em><b>Import URI</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute INCLUDE__IMPORT_URI = eINSTANCE.getInclude_ImportURI();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.PropertyDefinitionImpl <em>Property Definition</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.PropertyDefinitionImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyDefinition()
     * @generated
     */
    EClass PROPERTY_DEFINITION = eINSTANCE.getPropertyDefinition();

    /**
     * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute PROPERTY_DEFINITION__TYPE = eINSTANCE.getPropertyDefinition_Type();

    /**
     * The meta object literal for the '<em><b>Usage</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference PROPERTY_DEFINITION__USAGE = eINSTANCE.getPropertyDefinition_Usage();

    /**
     * The meta object literal for the '<em><b>Default</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference PROPERTY_DEFINITION__DEFAULT = eINSTANCE.getPropertyDefinition_Default();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.PropertyDefaultImpl <em>Property Default</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.PropertyDefaultImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyDefault()
     * @generated
     */
    EClass PROPERTY_DEFAULT = eINSTANCE.getPropertyDefault();

    /**
     * The meta object literal for the '<em><b>String</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute PROPERTY_DEFAULT__STRING = eINSTANCE.getPropertyDefault_String();

    /**
     * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute PROPERTY_DEFAULT__VALUE = eINSTANCE.getPropertyDefault_Value();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.PropertyUsageImpl <em>Property Usage</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.PropertyUsageImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyUsage()
     * @generated
     */
    EClass PROPERTY_USAGE = eINSTANCE.getPropertyUsage();

    /**
     * The meta object literal for the '<em><b>Components</b></em>' attribute list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute PROPERTY_USAGE__COMPONENTS = eINSTANCE.getPropertyUsage_Components();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.ComponentDefinitionImpl <em>Component Definition</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.ComponentDefinitionImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getComponentDefinition()
     * @generated
     */
    EClass COMPONENT_DEFINITION = eINSTANCE.getComponentDefinition();

    /**
     * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute COMPONENT_DEFINITION__TYPE = eINSTANCE.getComponentDefinition_Type();

    /**
     * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute COMPONENT_DEFINITION__NAME = eINSTANCE.getComponentDefinition_Name();

    /**
     * The meta object literal for the '<em><b>Component Definitions</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference COMPONENT_DEFINITION__COMPONENT_DEFINITIONS = eINSTANCE.getComponentDefinition_ComponentDefinitions();

    /**
     * The meta object literal for the '<em><b>Instantiations</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference COMPONENT_DEFINITION__INSTANTIATIONS = eINSTANCE.getComponentDefinition_Instantiations();

    /**
     * The meta object literal for the '<em><b>Property Assignments</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference COMPONENT_DEFINITION__PROPERTY_ASSIGNMENTS = eINSTANCE.getComponentDefinition_PropertyAssignments();

    /**
     * The meta object literal for the '<em><b>Enum Definitions</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference COMPONENT_DEFINITION__ENUM_DEFINITIONS = eINSTANCE.getComponentDefinition_EnumDefinitions();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.InstantiationImpl <em>Instantiation</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.InstantiationImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getInstantiation()
     * @generated
     */
    EClass INSTANTIATION = eINSTANCE.getInstantiation();

    /**
     * The meta object literal for the '<em><b>Instance Type</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference INSTANTIATION__INSTANCE_TYPE = eINSTANCE.getInstantiation_InstanceType();

    /**
     * The meta object literal for the '<em><b>Alias</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute INSTANTIATION__ALIAS = eINSTANCE.getInstantiation_Alias();

    /**
     * The meta object literal for the '<em><b>Component Ref</b></em>' reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference INSTANTIATION__COMPONENT_REF = eINSTANCE.getInstantiation_ComponentRef();

    /**
     * The meta object literal for the '<em><b>Component</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference INSTANTIATION__COMPONENT = eINSTANCE.getInstantiation_Component();

    /**
     * The meta object literal for the '<em><b>Component Instances</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference INSTANTIATION__COMPONENT_INSTANCES = eINSTANCE.getInstantiation_ComponentInstances();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.ComponentInstanceImpl <em>Component Instance</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.ComponentInstanceImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getComponentInstance()
     * @generated
     */
    EClass COMPONENT_INSTANCE = eINSTANCE.getComponentInstance();

    /**
     * The meta object literal for the '<em><b>Range</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference COMPONENT_INSTANCE__RANGE = eINSTANCE.getComponentInstance_Range();

    /**
     * The meta object literal for the '<em><b>Reset</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute COMPONENT_INSTANCE__RESET = eINSTANCE.getComponentInstance_Reset();

    /**
     * The meta object literal for the '<em><b>Address</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute COMPONENT_INSTANCE__ADDRESS = eINSTANCE.getComponentInstance_Address();

    /**
     * The meta object literal for the '<em><b>Addr Inc</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute COMPONENT_INSTANCE__ADDR_INC = eINSTANCE.getComponentInstance_AddrInc();

    /**
     * The meta object literal for the '<em><b>Addr Mod</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute COMPONENT_INSTANCE__ADDR_MOD = eINSTANCE.getComponentInstance_AddrMod();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.RangeImpl <em>Range</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.RangeImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getRange()
     * @generated
     */
    EClass RANGE = eINSTANCE.getRange();

    /**
     * The meta object literal for the '<em><b>Left</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute RANGE__LEFT = eINSTANCE.getRange_Left();

    /**
     * The meta object literal for the '<em><b>Right</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute RANGE__RIGHT = eINSTANCE.getRange_Right();

    /**
     * The meta object literal for the '<em><b>Size</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute RANGE__SIZE = eINSTANCE.getRange_Size();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.PropertyAssignmentImpl <em>Property Assignment</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.PropertyAssignmentImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyAssignment()
     * @generated
     */
    EClass PROPERTY_ASSIGNMENT = eINSTANCE.getPropertyAssignment();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.DefaultProperyAssignmentImpl <em>Default Propery Assignment</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.DefaultProperyAssignmentImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getDefaultProperyAssignment()
     * @generated
     */
    EClass DEFAULT_PROPERY_ASSIGNMENT = eINSTANCE.getDefaultProperyAssignment();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.ExplicitPropertyAssignmentImpl <em>Explicit Property Assignment</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.ExplicitPropertyAssignmentImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getExplicitPropertyAssignment()
     * @generated
     */
    EClass EXPLICIT_PROPERTY_ASSIGNMENT = eINSTANCE.getExplicitPropertyAssignment();

    /**
     * The meta object literal for the '<em><b>Modifier</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute EXPLICIT_PROPERTY_ASSIGNMENT__MODIFIER = eINSTANCE.getExplicitPropertyAssignment_Modifier();

    /**
     * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute EXPLICIT_PROPERTY_ASSIGNMENT__NAME = eINSTANCE.getExplicitPropertyAssignment_Name();

    /**
     * The meta object literal for the '<em><b>Rhs</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference EXPLICIT_PROPERTY_ASSIGNMENT__RHS = eINSTANCE.getExplicitPropertyAssignment_Rhs();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.PostPropertyAssignmentImpl <em>Post Property Assignment</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.PostPropertyAssignmentImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPostPropertyAssignment()
     * @generated
     */
    EClass POST_PROPERTY_ASSIGNMENT = eINSTANCE.getPostPropertyAssignment();

    /**
     * The meta object literal for the '<em><b>Instance</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference POST_PROPERTY_ASSIGNMENT__INSTANCE = eINSTANCE.getPostPropertyAssignment_Instance();

    /**
     * The meta object literal for the '<em><b>Property Enum</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute POST_PROPERTY_ASSIGNMENT__PROPERTY_ENUM = eINSTANCE.getPostPropertyAssignment_PropertyEnum();

    /**
     * The meta object literal for the '<em><b>Property</b></em>' reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference POST_PROPERTY_ASSIGNMENT__PROPERTY = eINSTANCE.getPostPropertyAssignment_Property();

    /**
     * The meta object literal for the '<em><b>Rhs</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference POST_PROPERTY_ASSIGNMENT__RHS = eINSTANCE.getPostPropertyAssignment_Rhs();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.InstancePropertyRefImpl <em>Instance Property Ref</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.InstancePropertyRefImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getInstancePropertyRef()
     * @generated
     */
    EClass INSTANCE_PROPERTY_REF = eINSTANCE.getInstancePropertyRef();

    /**
     * The meta object literal for the '<em><b>Instance</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference INSTANCE_PROPERTY_REF__INSTANCE = eINSTANCE.getInstancePropertyRef_Instance();

    /**
     * The meta object literal for the '<em><b>Property Enum</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute INSTANCE_PROPERTY_REF__PROPERTY_ENUM = eINSTANCE.getInstancePropertyRef_PropertyEnum();

    /**
     * The meta object literal for the '<em><b>Property</b></em>' reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference INSTANCE_PROPERTY_REF__PROPERTY = eINSTANCE.getInstancePropertyRef_Property();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.EntityImpl <em>Entity</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.EntityImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEntity()
     * @generated
     */
    EClass ENTITY = eINSTANCE.getEntity();

    /**
     * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute ENTITY__NAME = eINSTANCE.getEntity_Name();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.InstanceRefImpl <em>Instance Ref</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.InstanceRefImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getInstanceRef()
     * @generated
     */
    EClass INSTANCE_REF = eINSTANCE.getInstanceRef();

    /**
     * The meta object literal for the '<em><b>Instance</b></em>' reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference INSTANCE_REF__INSTANCE = eINSTANCE.getInstanceRef_Instance();

    /**
     * The meta object literal for the '<em><b>Tail</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference INSTANCE_REF__TAIL = eINSTANCE.getInstanceRef_Tail();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.PropertyAssignmentRhsImpl <em>Property Assignment Rhs</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.PropertyAssignmentRhsImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyAssignmentRhs()
     * @generated
     */
    EClass PROPERTY_ASSIGNMENT_RHS = eINSTANCE.getPropertyAssignmentRhs();

    /**
     * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference PROPERTY_ASSIGNMENT_RHS__VALUE = eINSTANCE.getPropertyAssignmentRhs_Value();

    /**
     * The meta object literal for the '<em><b>Inst Prop Ref</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference PROPERTY_ASSIGNMENT_RHS__INST_PROP_REF = eINSTANCE.getPropertyAssignmentRhs_InstPropRef();

    /**
     * The meta object literal for the '<em><b>Enum Ref</b></em>' reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference PROPERTY_ASSIGNMENT_RHS__ENUM_REF = eINSTANCE.getPropertyAssignmentRhs_EnumRef();

    /**
     * The meta object literal for the '<em><b>Enums</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference PROPERTY_ASSIGNMENT_RHS__ENUMS = eINSTANCE.getPropertyAssignmentRhs_Enums();

    /**
     * The meta object literal for the '<em><b>Elements</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference PROPERTY_ASSIGNMENT_RHS__ELEMENTS = eINSTANCE.getPropertyAssignmentRhs_Elements();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.ConcatImpl <em>Concat</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.ConcatImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getConcat()
     * @generated
     */
    EClass CONCAT = eINSTANCE.getConcat();

    /**
     * The meta object literal for the '<em><b>Elements</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference CONCAT__ELEMENTS = eINSTANCE.getConcat_Elements();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.ConcatElemImpl <em>Concat Elem</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.ConcatElemImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getConcatElem()
     * @generated
     */
    EClass CONCAT_ELEM = eINSTANCE.getConcatElem();

    /**
     * The meta object literal for the '<em><b>Inst Prop Ref</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference CONCAT_ELEM__INST_PROP_REF = eINSTANCE.getConcatElem_InstPropRef();

    /**
     * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute CONCAT_ELEM__VALUE = eINSTANCE.getConcatElem_Value();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.RValueImpl <em>RValue</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.RValueImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getRValue()
     * @generated
     */
    EClass RVALUE = eINSTANCE.getRValue();

    /**
     * The meta object literal for the '<em><b>Val</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute RVALUE__VAL = eINSTANCE.getRValue_Val();

    /**
     * The meta object literal for the '<em><b>Num</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute RVALUE__NUM = eINSTANCE.getRValue_Num();

    /**
     * The meta object literal for the '<em><b>Str</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute RVALUE__STR = eINSTANCE.getRValue_Str();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.EnumDefinitionImpl <em>Enum Definition</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.EnumDefinitionImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEnumDefinition()
     * @generated
     */
    EClass ENUM_DEFINITION = eINSTANCE.getEnumDefinition();

    /**
     * The meta object literal for the '<em><b>Body</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference ENUM_DEFINITION__BODY = eINSTANCE.getEnumDefinition_Body();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.EnumBodyImpl <em>Enum Body</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.EnumBodyImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEnumBody()
     * @generated
     */
    EClass ENUM_BODY = eINSTANCE.getEnumBody();

    /**
     * The meta object literal for the '<em><b>Entries</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference ENUM_BODY__ENTRIES = eINSTANCE.getEnumBody_Entries();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.EnumEntryImpl <em>Enum Entry</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.EnumEntryImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEnumEntry()
     * @generated
     */
    EClass ENUM_ENTRY = eINSTANCE.getEnumEntry();

    /**
     * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute ENUM_ENTRY__NAME = eINSTANCE.getEnumEntry_Name();

    /**
     * The meta object literal for the '<em><b>Index</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute ENUM_ENTRY__INDEX = eINSTANCE.getEnumEntry_Index();

    /**
     * The meta object literal for the '<em><b>Properties</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EReference ENUM_ENTRY__PROPERTIES = eINSTANCE.getEnumEntry_Properties();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.EnumPropertyImpl <em>Enum Property</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.EnumPropertyImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEnumProperty()
     * @generated
     */
    EClass ENUM_PROPERTY = eINSTANCE.getEnumProperty();

    /**
     * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute ENUM_PROPERTY__NAME = eINSTANCE.getEnumProperty_Name();

    /**
     * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute ENUM_PROPERTY__VALUE = eINSTANCE.getEnumProperty_Value();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.impl.EnumInstanceTypeImpl <em>Enum Instance Type</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.impl.EnumInstanceTypeImpl
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getEnumInstanceType()
     * @generated
     */
    EClass ENUM_INSTANCE_TYPE = eINSTANCE.getEnumInstanceType();

    /**
     * The meta object literal for the '<em><b>EXTERNAL</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute ENUM_INSTANCE_TYPE__EXTERNAL = eINSTANCE.getEnumInstanceType_EXTERNAL();

    /**
     * The meta object literal for the '<em><b>INTERNAL</b></em>' attribute feature.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    EAttribute ENUM_INSTANCE_TYPE__INTERNAL = eINSTANCE.getEnumInstanceType_INTERNAL();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.PropertyTypeName <em>Property Type Name</em>}' enum.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.PropertyTypeName
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyTypeName()
     * @generated
     */
    EEnum PROPERTY_TYPE_NAME = eINSTANCE.getPropertyTypeName();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.PropertyComponent <em>Property Component</em>}' enum.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.PropertyComponent
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyComponent()
     * @generated
     */
    EEnum PROPERTY_COMPONENT = eINSTANCE.getPropertyComponent();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.ComponentDefinitionType <em>Component Definition Type</em>}' enum.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.ComponentDefinitionType
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getComponentDefinitionType()
     * @generated
     */
    EEnum COMPONENT_DEFINITION_TYPE = eINSTANCE.getComponentDefinitionType();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.PropertyEnum <em>Property Enum</em>}' enum.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.PropertyEnum
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyEnum()
     * @generated
     */
    EEnum PROPERTY_ENUM = eINSTANCE.getPropertyEnum();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.RValueConstant <em>RValue Constant</em>}' enum.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.RValueConstant
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getRValueConstant()
     * @generated
     */
    EEnum RVALUE_CONSTANT = eINSTANCE.getRValueConstant();

    /**
     * The meta object literal for the '{@link com.minres.rdl.rdl.PropertyModifier <em>Property Modifier</em>}' enum.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @see com.minres.rdl.rdl.PropertyModifier
     * @see com.minres.rdl.rdl.impl.RdlPackageImpl#getPropertyModifier()
     * @generated
     */
    EEnum PROPERTY_MODIFIER = eINSTANCE.getPropertyModifier();

  }

} //RdlPackage
