################################################################################
# Copyright (c) 2009, 2011 Oracle. All rights reserved.
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License v1.0, which accompanies this distribution
# and is available at http://www.eclipse.org/legal/epl-v10.html.
# 
# Contributors:
#     Oracle - initial API and implementation
################################################################################

#Content is organized based on the categories and 
#Entries in each categories are listed alphabetically.
#If adding a new entry, please add it to the corresponding category at the right place.

PROJECT_LEVEL_CATEGORY=Project

NO_JPA_PROJECT=Project has JPA facet, but JPA project couldn't be created:
PERSISTENCE_MULTIPLE_PERSISTENCE_UNITS=Multiple persistence units defined:
PERSISTENCE_NO_PERSISTENCE_UNIT=No persistence unit defined:
PERSISTENCE_XML_INVALID_CONTENT=Invalid content (no root node):
PERSISTENCE_XML_UNSUPPORTED_CONTENT=Persistence.xml file does not have supported content for JPA platform:
PROJECT_NO_CONNECTION=No connection specified for project:
PROJECT_INACTIVE_CONNECTION=Connection is not active:
PROJECT_INVALID_CONNECTION=Connection does not exist:
PROJECT_INVALID_LIBRARY_PROVIDER=Selected library provider is invalid:
PROJECT_MULTIPLE_PERSISTENCE_XML=Multiple persistence.xml files in project:
PROJECT_NO_PERSISTENCE_XML=No persistence.xml file found in project:
XML_VERSION_NOT_LATEST=XML document version not most recent:

PERSISTENCE_UNIT_LEVEL_CATEGORY=Persistence unit

MAPPING_FILE_EXTRANEOUS_PERSISTENCE_UNIT_METADATA=Extraneous persistence unit metadata found:
PERSISTENT_TYPE_DUPLICATE_CLASS=Duplicate ORM class:
PERSISTENCE_UNIT_DUPLICATE_CLASS=Duplicate Java class:
PERSISTENCE_UNIT_DUPLICATE_JAR_FILE=Duplicate JAR file:
PERSISTENCE_UNIT_DUPLICATE_MAPPING_FILE=Duplicate mapping file:
PERSISTENCE_UNIT_INVALID_CLASS=Class is included in a persistence unit but is not mapped:
PERSISTENCE_UNIT_INVALID_MAPPING_FILE=Mapping file does not have ORM content:
PERSISTENCE_UNIT_JAR_FILE_DEPLOYMENT_PATH_WARNING=The path to the JAR file will vary:
PERSISTENCE_UNIT_NONEXISTENT_CLASS=Class cannot be resolved:
PERSISTENCE_UNIT_NONEXISTENT_JAR_FILE=JAR file cannot be resolved:
PERSISTENCE_UNIT_NONEXISTENT_MAPPING_FILE=Mapping file cannot be resolved:
PERSISTENCE_UNIT_REDUNDANT_CLASS=Class is already specified in mapping file:
PERSISTENCE_UNIT_UNSPECIFIED_CLASS=Unspecified class:
PERSISTENCE_UNIT_UNSPECIFIED_JAR_FILE=Unspecified JAR file:
PERSISTENCE_UNIT_UNSPECIFIED_MAPPING_FILE=Unspecified mapping file:
PERSISTENCE_UNIT_UNSUPPORTED_MAPPING_FILE_CONTENT=Mapping file does not have supported content:

TYPE_LEVEL_CATEGORY=Type
ENTITY_NAME_DUPLICATED=Entity name must be unique: 
ENTITY_NAME_MISSING=Entity name is empty:
ENTITY_NO_PK=Entity has no primary key:
ENTITY_NON_ROOT_ID_ATTRIBUTE_SPECIFIED=Primary key attribute should only be defined on the root entity or a mapped superclass:
ENTITY_NON_ROOT_ID_CLASS_SPECIFIED=ID class should only be defined on the root entity or a mapped superclass:
PERSISTENT_TYPE_ANNOTATED_BUT_NOT_INCLUDED_IN_PERSISTENCE_UNIT=Class is annotated, but is not in a persistence unit:
PERSISTENT_TYPE_MAPPED_BUT_NOT_INCLUDED_IN_PERSISTENCE_UNIT=Class is mapped, but is not in a persistence unit:
PERSISTENT_TYPE_UNRESOLVED_CLASS=Class in orm.xml cannot be resolved to a java class:
PERSISTENT_TYPE_UNSPECIFIED_CLASS=Class is unspecified in orm.xml:
TARGET_NOT_AN_EMBEDDABLE=Target type of an embedded mapping is not an embeddable:
TYPE_MAPPING_CLASS_MISSING_NO_ARG_CONSTRUCTOR=Mapped Java class has no no-arg constructor:
TYPE_MAPPING_CLASS_PRIVATE_NO_ARG_CONSTRUCTOR=Mapped Java class has a private no-arg constructor:
TYPE_MAPPING_FINAL_CLASS=Mapped Java class is final:
TYPE_MAPPING_ID_CLASS_AND_EMBEDDED_ID_BOTH_USED=ID class and embedded ID mapping are not allowed to use together:
TYPE_MAPPING_ID_CLASS_ATTRIBUTE_MAPPING_DUPLICATE_MATCH=Primary key attribute is a duplicate match for ID class:
TYPE_MAPPING_ID_CLASS_ATTRIBUTE_MAPPING_NO_MATCH=No ID class attribute matches primary key attribute:
TYPE_MAPPING_ID_CLASS_ATTRIBUTE_NO_MATCH=No primary key attribute matches ID class attribute:
TYPE_MAPPING_ID_CLASS_ATTRIBUTE_NOT_PRIMARY_KEY=Attribute matching ID class attribute is not mapped as a primary key:
TYPE_MAPPING_ID_CLASS_ATTRIBUTE_TYPE_DOES_NOT_AGREE=Attribute matching ID class attribute does not have the correct type:
TYPE_MAPPING_ID_CLASS_NAME_EMPTY=ID class has an empty name:
TYPE_MAPPING_ID_CLASS_NOT_EXIST=ID class does not exist on the project classpath:
TYPE_MAPPING_ID_CLASS_NOT_VALID=ID class should not be mapped:
TYPE_MAPPING_ID_CLASS_REDEFINED=ID class has already been defined on an ancestor of a class:
TYPE_MAPPING_ID_CLASS_REQUIRED=ID class must be used when multiple ID mappings defined:
TYPE_MAPPING_ID_CLASS_WITH_MAPS_ID="Maps Id" is not allowed to use in conjunction with an ID class:
TYPE_MAPPING_MAPS_ID_ATTRIBUTE_TYPE_DOES_NOT_AGREE=Type of "Maps ID" attribute does not agree with primary key class of target entity:
TYPE_MAPPING_MEMBER_CLASS=Mapped Java class is a member class:
TYPE_MAPPING_MULTIPLE_EMBEDDED_ID=Only one embedded ID mapping is allowed:
TYPE_MAPPING_PK_REDEFINED_ID_ATTRIBUTE=No ID mapping allowed on a class when its ancestor already defines primary key:
TYPE_MAPPING_PK_REDEFINED_ID_CLASS=No ID class allowed on a class when its ancestor already defines primary key:

ATTRIBUTE_LEVEL_CATEGORY=Attribute

ELEMENT_COLLECTION_TARGET_CLASS_DOES_NOT_EXIST=Element collection target class does not exist on the project classpath:
ELEMENT_COLLECTION_TARGET_CLASS_MUST_BE_EMBEDDABLE_OR_BASIC_TYPE=Element collection target class is not embeddable or basic type:
ELEMENT_COLLECTION_TARGET_CLASS_NOT_DEFINED=Element collection target class is not specified:
EMBEDDED_ID_MAPPING_MAPPED_BY_RELATIONSHIP_AND_ATTRIBUTE_OVERRIDES_SPECIFIED=Embedded IDs that are mapped by a relationship should not specify any attribute overrides:
ID_MAPPING_MAPPED_BY_RELATIONSHIP_AND_COLUMN_SPECIFIED=IDs that are mapped by a relationship should not specify a column:
MAPS_ID_VALUE_INVALID="Maps ID" attribute value invalid:
MAPS_ID_VALUE_NOT_RESOLVED="Maps ID" attribute value not resolved:
MAPS_ID_VALUE_NOT_SPECIFIED="Maps ID" attribute value not specified:
MAPPING_INVALID_MAPPED_BY=Attribute has invalid mapping for this relationship:
MAPPING_MAPPED_BY_ON_BOTH_SIDES=Relationship must have an owner:
MAPPING_MAPPED_BY_WITH_JOIN_TABLE=Cannot specify join table if attribute is mapped by another attribute:
MAPPING_UNRESOLVED_MAPPED_BY=Cannot resolve attribute name:
ORDER_COLUMN_AND_ORDER_BY_BOTH_SPECIFIED=OrderColumn and OrderBy annotations are both specified:
PERSISTENT_ATTRIBUTE_ELEMENT_COLLECTION_INVALID_VALUE_TYPE=Element collection value type is invalid for a Temporal mapping: 
PERSISTENT_ATTRIBUTE_FINAL_FIELD=The java field for attribute is final:
PERSISTENT_ATTRIBUTE_FINAL_GETTER=The java getter for attribute is final:
PERSISTENT_ATTRIBUTE_INHERITED_ATTRIBUTES_NOT_SUPPORTED=In orm.xml referenced inherited attribute may not be supported:
PERSISTENT_ATTRIBUTE_INVALID_MAPPING=Attribute has invalid mapping type:
PERSISTENT_ATTRIBUTE_INVALID_TEMPORAL_MAPPING_TYPE=Persistence field/property type is invalid for a Temporal mapping:
PERSISTENT_ATTRIBUTE_INVALID_TEMPORAL_MAP_KEY_TYPE=Persistence field/property map key type is invalid for a Temporal mapping:
PERSISTENT_ATTRIBUTE_INVALID_VERSION_MAPPING_TYPE=Persistence field/property type is invalid for a Version mapping:
PERSISTENT_ATTRIBUTE_PUBLIC_FIELD=The java field for attribute is public:
PERSISTENT_ATTRIBUTE_UNRESOLVED_NAME=Attribute in orm.xml cannot be resolved in the java class:
PERSISTENT_ATTRIBUTE_UNSPECIFIED_NAME=Attribute in orm.xml has unspecified name:
TARGET_ENTITY_IS_NOT_AN_ENTITY=Target entity is not an Entity:
TARGET_ENTITY_NOT_DEFINED=Target entity is not defined:
TARGET_ENTITY_NOT_EXIST=Target entity does not exist on the project classpath:
MAP_KEY_CLASS_NOT_DEFINED=Map key class not defined:
MAP_KEY_CLASS_NOT_EXIST=Map key class does not exist on the project classpath:

VIRTUAL_ATTRIBUTE_ELEMENT_COLLECTION_TARGET_CLASS_DOES_NOT_EXIST=Element collection target class does not exist on the project classpath:
VIRTUAL_ATTRIBUTE_ELEMENT_COLLECTION_TARGET_CLASS_MUST_BE_EMBEDDABLE_OR_BASIC_TYPE=Element collection target class is not embeddable or basic type:
VIRTUAL_ATTRIBUTE_ELEMENT_COLLECTION_TARGET_CLASS_NOT_DEFINED=Element collection target class is not specified:
VIRTUAL_ATTRIBUTE_TARGET_ENTITY_IS_NOT_AN_ENTITY=Target entity is not an Entity:
VIRTUAL_ATTRIBUTE_TARGET_ENTITY_NOT_DEFINED=Target entity is not defined:
VIRTUAL_ATTRIBUTE_MAP_KEY_CLASS_NOT_DEFINED=Map key class not defined:
VIRTUAL_ATTRIBUTE_INVALID_TEMPORAL_MAP_KEY_TYPE=Persistence field/property map key type is invalid for a Temporal mapping:
VIRTUAL_ATTRIBUTE_ELEMENT_COLLECTION_INVALID_VALUE_TYPE=Element collection value type is invalid for a Temporal mapping: 
VIRTUAL_ATTRIBUTE_INVALID_TEMPORAL_MAPPING_TYPE=Persistence field/property type is invalid for a Temporal mapping:


DATABASE_CATEGORY=Database
TABLE_CATEGORY=Table

COLLECTION_TABLE_UNRESOLVED_CATALOG=Catalog cannot be resolved for collection table:
COLLECTION_TABLE_UNRESOLVED_NAME=Collection table cannot be resolved:
COLLECTION_TABLE_UNRESOLVED_SCHEMA=Schema cannot be resolved for collection table:
JOIN_TABLE_UNRESOLVED_CATALOG=Catalog cannot be resolved for join table:
JOIN_TABLE_UNRESOLVED_NAME=Join table cannot be resolved:
JOIN_TABLE_UNRESOLVED_SCHEMA=Schema cannot be resolved for join table:
SECONDARY_TABLE_UNRESOLVED_CATALOG=Catalog cannot be resolved for secondary table:
SECONDARY_TABLE_UNRESOLVED_NAME=Secondary table cannot be resolved:
SECONDARY_TABLE_UNRESOLVED_SCHEMA=Schema cannot be resolved for secondary table:
TABLE_UNRESOLVED_CATALOG=Catalog cannot be resolved for table:
TABLE_UNRESOLVED_NAME=Table cannot be resolved:
TABLE_UNRESOLVED_SCHEMA=Schema cannot be resolved for table:

VIRTUAL_ATTRIBUTE_COLLECTION_TABLE_UNRESOLVED_CATALOG=Catalog cannot be resolved for collection table:
VIRTUAL_ATTRIBUTE_COLLECTION_TABLE_UNRESOLVED_NAME=Collection table cannot be resolved:
VIRTUAL_ATTRIBUTE_COLLECTION_TABLE_UNRESOLVED_SCHEMA=Schema cannot be resolved for collection table:
VIRTUAL_ATTRIBUTE_JOIN_TABLE_UNRESOLVED_CATALOG=Catalog cannot be resolved for join table:
VIRTUAL_ATTRIBUTE_JOIN_TABLE_UNRESOLVED_NAME=Join table cannot be resolved:
VIRTUAL_ATTRIBUTE_JOIN_TABLE_UNRESOLVED_SCHEMA=Schema cannot be resolved for join table:

COLUMN_CATEGORY=Column

COLUMN_TABLE_NOT_VALID=Table for column not valid given the context:
COLUMN_UNRESOLVED_NAME=Column cannot be resolved:
COLUMN_UNRESOLVED_TABLE=Table for column cannot be resolved:
INVERSE_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Inverse join column name must be specified when there are multiples:
INVERSE_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Inverse join column referenced column name must be specified when there are multiples:
INVERSE_JOIN_COLUMN_TABLE_NOT_VALID=Table for inverse join column is not valid:
INVERSE_JOIN_COLUMN_UNRESOLVED_NAME=Inverse join column cannot be resolved:
INVERSE_JOIN_COLUMN_UNRESOLVED_REFERENCED_COLUMN_NAME=Referenced column in inverse join column cannot be resolved:
JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Join column name must be specified when there are multiples:
JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Join column referenced column name must be specified when there are multiples:
JOIN_COLUMN_TABLE_NOT_VALID=Table for join column is not valid:
JOIN_COLUMN_UNRESOLVED_NAME=Join column cannot be resolved:
JOIN_COLUMN_UNRESOLVED_REFERENCED_COLUMN_NAME=Referenced column in join column cannot be resolved:
MAP_KEY_COLUMN_TABLE_NOT_VALID=Table for map key column is not valid:
MAP_KEY_COLUMN_UNRESOLVED_NAME=Map key column cannot be resolved on table:
ORDER_COLUMN_UNRESOLVED_NAME=Order column cannot be resolved:
PRIMARY_KEY_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Primary key join column name must be specified when there are multiples:
PRIMARY_KEY_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Primary key join column referenced column name must be specified when there are multiples:
PRIMARY_KEY_JOIN_COLUMN_UNRESOLVED_NAME=Primary key join column cannot be resolved:
PRIMARY_KEY_JOIN_COLUMN_UNRESOLVED_REFERENCED_COLUMN_NAME=Primary key join column referenced column cannot be resolved:
MAP_KEY_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Map key join column name must be specified when there are multiples:
MAP_KEY_JOIN_COLUMN_TABLE_NOT_VALID=Table for map key join column is not valid:
MAP_KEY_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Map key join column referenced column name must be specified when there are multiples:
MAP_KEY_JOIN_COLUMN_UNRESOLVED_NAME=Map key join column cannot be resolved:
MAP_KEY_JOIN_COLUMN_UNRESOLVED_REFERENCED_COLUMN_NAME=Referenced column in map key join column cannot be resolved:

VIRTUAL_ATTRIBUTE_COLUMN_TABLE_NOT_VALID=Table for column not valid:
VIRTUAL_ATTRIBUTE_COLUMN_UNRESOLVED_NAME=Column cannot be resolved:
VIRTUAL_ATTRIBUTE_INVERSE_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Inverse join column name must be specified when there are multiples:
VIRTUAL_ATTRIBUTE_INVERSE_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Inverse join column referenced column name must be specified when there are multiples:
VIRTUAL_ATTRIBUTE_INVERSE_JOIN_COLUMN_TABLE_NOT_VALID=Table for inverse join column is not valid:
VIRTUAL_ATTRIBUTE_INVERSE_JOIN_COLUMN_UNRESOLVED_NAME=Inverse join column cannot be resolved:
VIRTUAL_ATTRIBUTE_INVERSE_JOIN_COLUMN_UNRESOLVED_REFERENCED_COLUMN_NAME=Referenced column in inverse join column cannot be resolved:
VIRTUAL_ATTRIBUTE_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Join column name must be specified when there are multiples:
VIRTUAL_ATTRIBUTE_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Join column referenced column name must be specified when there are multiples:
VIRTUAL_ATTRIBUTE_JOIN_COLUMN_TABLE_NOT_VALID=Table for join column is not valid:
VIRTUAL_ATTRIBUTE_JOIN_COLUMN_UNRESOLVED_NAME=Join column cannot be resolved:
VIRTUAL_ATTRIBUTE_JOIN_COLUMN_UNRESOLVED_REFERENCED_COLUMN_NAME=Referenced column in join column cannot be resolved:
VIRTUAL_ATTRIBUTE_MAP_KEY_COLUMN_TABLE_NOT_VALID=Table for map key column is not valid:
VIRTUAL_ATTRIBUTE_MAP_KEY_COLUMN_UNRESOLVED_NAME=Map key attribute column cannot be resolved on table:
VIRTUAL_ATTRIBUTE_ORDER_COLUMN_UNRESOLVED_NAME=Order column cannot be resolved:
VIRTUAL_SECONDARY_TABLE_PRIMARY_KEY_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Secondary table primary key join column name must be specified when there are multiples:
VIRTUAL_SECONDARY_TABLE_PRIMARY_KEY_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Secondary table primary key join column referenced column name must be specified when there are multiples:
VIRTUAL_SECONDARY_TABLE_PRIMARY_KEY_JOIN_COLUMN_UNRESOLVED_NAME=Secondary table primary key join column cannot be resolved:
VIRTUAL_SECONDARY_TABLE_PRIMARY_KEY_JOIN_COLUMN_UNRESOLVED_REFERENCED_COLUMN_NAME=Secondary table primary key join column referenced column name cannot be resolved:
VIRTUAL_PRIMARY_KEY_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Primary key join column name must be specified when there are multiples:
VIRTUAL_PRIMARY_KEY_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Primary key join column referenced column name must be specified when there are multiples:
VIRTUAL_PRIMARY_KEY_JOIN_COLUMN_UNRESOLVED_NAME=Primary key join column cannot be resolved:
VIRTUAL_PRIMARY_KEY_JOIN_COLUMN_UNRESOLVED_REFERENCED_COLUMN_NAME=Primary key join column referenced column name cannot be resolved:
VIRTUAL_ATTRIBUTE_MAP_KEY_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_MAP_KEY_JOIN_COLUMNS=Map key join column name must be specified when there are multiples:
VIRTUAL_ATTRIBUTE_MAP_KEY_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_MAP_KEY_JOIN_COLUMNS=Map key join column referenced column name must be specified when there are multiples:
VIRTUAL_ATTRIBUTE_MAP_KEY_JOIN_COLUMN_TABLE_NOT_VALID=Table for map key join column is not valid:
VIRTUAL_ATTRIBUTE_MAP_KEY_JOIN_COLUMN_UNRESOLVED_NAME=Map key join column cannot be resolved:
VIRTUAL_ATTRIBUTE_MAP_KEY_JOIN_COLUMN_UNRESOLVED_REFERENCED_COLUMN_NAME=Referenced column in map key join column cannot be resolved:

OVERRIDES_CATEGORY=Attribute/association overrides
IMPLIED_ATTRIBUTE_LEVEL_CATEGORY=Implied attributes

ASSOCIATION_OVERRIDE_INVALID_NAME=Association override name cannot be resolved to an attribute
ATTRIBUTE_OVERRIDE_INVALID_NAME=Attribute override name cannot be resolved to an attribute
ATTRIBUTE_OVERRIDE_INVALID_TYPE=Attribute override type cannot be resolved to an attribute
ATTRIBUTE_OVERRIDE_MAPPED_BY_RELATIONSHIP_AND_SPECIFIED=Attributes (or subattributes of an attribute) mapped by a relationship should not be overridden:
VIRTUAL_ASSOCIATION_OVERRIDE_INVALID_NAME=Implied association override name cannot be resolved to an attribute
VIRTUAL_ASSOCIATION_OVERRIDE_INVERSE_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_INVERSE_JOIN_COLUMNS=Implied association override inverse join column name must be specified when there are multiples:
VIRTUAL_ASSOCIATION_OVERRIDE_INVERSE_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_INVERSE_JOIN_COLUMNS=Implied association override inverse join column referenced column name must be specified when there are multiples:
VIRTUAL_ASSOCIATION_OVERRIDE_INVERSE_JOIN_COLUMN_TABLE_NOT_VALID=Implied association override table for inverse join column is not valid:
VIRTUAL_ASSOCIATION_OVERRIDE_INVERSE_JOIN_COLUMN_UNRESOLVED_NAME=Implied association override inverse join column cannot be resolved:
VIRTUAL_ASSOCIATION_OVERRIDE_INVERSE_JOIN_COLUMN_UNRESOLVED_REFERENCED_COLUMN_NAME=Implied association override referenced column in inverse join column cannot be resolved:
VIRTUAL_ASSOCIATION_OVERRIDE_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Implied association override join column name must be specified when there are multiples:
VIRTUAL_ASSOCIATION_OVERRIDE_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Implied association override join column referenced column name must be specified when there are multiples:
VIRTUAL_ASSOCIATION_OVERRIDE_JOIN_COLUMN_TABLE_NOT_VALID=Implied association override table for join column is not valid:
VIRTUAL_ASSOCIATION_OVERRIDE_JOIN_COLUMN_UNRESOLVED_NAME=Implied association override join column cannot be resolved:
VIRTUAL_ASSOCIATION_OVERRIDE_JOIN_COLUMN_UNRESOLVED_REFERENCED_COLUMN_NAME=Implied association override referenced column in join column cannot be resolved:
VIRTUAL_ASSOCIATION_OVERRIDE_JOIN_TABLE_UNRESOLVED_CATALOG=Implied association override catalog cannot be resolved for join table:
VIRTUAL_ASSOCIATION_OVERRIDE_JOIN_TABLE_UNRESOLVED_NAME=Implied association override join table cannot be resolved:
VIRTUAL_ASSOCIATION_OVERRIDE_JOIN_TABLE_UNRESOLVED_SCHEMA=Implied association override schema cannot be resolved for join table:
VIRTUAL_ATTRIBUTE_OVERRIDE_COLUMN_TABLE_NOT_VALID=Implied attribute override table for column not valid:
VIRTUAL_ATTRIBUTE_OVERRIDE_COLUMN_UNRESOLVED_NAME=Implied attribute override column cannot be resolved:
VIRTUAL_ATTRIBUTE_OVERRIDE_INVALID_NAME=Implied attribute override name cannot be resolved to an attribute:
VIRTUAL_MAP_KEY_ATTRIBUTE_OVERRIDE_COLUMN_TABLE_NOT_VALID=Implied map key attribute override table for column is not valid:
VIRTUAL_MAP_KEY_ATTRIBUTE_OVERRIDE_INVALID_NAME=Implied map key attribute override name cannot be resolved to an attribute

VIRTUAL_ATTRIBUTE_ASSOCIATION_OVERRIDE_INVALID_NAME=Association override name cannot be resolved to an attribute
VIRTUAL_ATTRIBUTE_ASSOCIATION_OVERRIDE_INVERSE_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_INVERSE_JOIN_COLUMNS=Association override inverse join column name must be specified when there are multiples:
VIRTUAL_ATTRIBUTE_ASSOCIATION_OVERRIDE_INVERSE_JOIN_COLUMN_REFERENCED_COLUMN_UNRESOLVED_NAME=Association override inverse join column referenced column name cannot be resolved:
VIRTUAL_ATTRIBUTE_ASSOCIATION_OVERRIDE_INVERSE_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_INVERSE_JOIN_COLUMNS=Association override inverse join column referenced column name must be specified when there are multiples:
VIRTUAL_ATTRIBUTE_ASSOCIATION_OVERRIDE_INVERSE_JOIN_COLUMN_TABLE_NOT_VALID=Association override table for inverse join column is not valid:
VIRTUAL_ATTRIBUTE_ASSOCIATION_OVERRIDE_INVERSE_JOIN_COLUMN_UNRESOLVED_NAME=Association override inverse join column cannot be resolved:
VIRTUAL_ATTRIBUTE_ASSOCIATION_OVERRIDE_JOIN_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Association override join column name must be specified when there are multiples:
VIRTUAL_ATTRIBUTE_ASSOCIATION_OVERRIDE_JOIN_COLUMN_REFERENCED_COLUMN_NAME_MUST_BE_SPECIFIED_MULTIPLE_JOIN_COLUMNS=Association override join column referenced column name must be specified when there are multiples:
VIRTUAL_ATTRIBUTE_ASSOCIATION_OVERRIDE_JOIN_COLUMN_REFERENCED_COLUMN_UNRESOLVED_NAME=Association override join column referenced column name cannot be resolved:
VIRTUAL_ATTRIBUTE_ASSOCIATION_OVERRIDE_JOIN_COLUMN_TABLE_NOT_VALID=Association override table for join column is not valid:
VIRTUAL_ATTRIBUTE_ASSOCIATION_OVERRIDE_JOIN_COLUMN_UNRESOLVED_NAME=Association override join column cannot be resolved:
VIRTUAL_ATTRIBUTE_ATTRIBUTE_OVERRIDE_COLUMN_TABLE_NOT_VALID=Attribute override table for column not valid:
VIRTUAL_ATTRIBUTE_ATTRIBUTE_OVERRIDE_COLUMN_UNRESOLVED_NAME=Attribute override column cannot be resolved:
VIRTUAL_ATTRIBUTE_ATTRIBUTE_OVERRIDE_INVALID_NAME=Attribute override name cannot be resolved to an attribute
VIRTUAL_ATTRIBUTE_MAP_KEY_ATTRIBUTE_OVERRIDE_COLUMN_TABLE_NOT_VALID=Map key attribute override table for column not valid:
VIRTUAL_ATTRIBUTE_MAP_KEY_ATTRIBUTE_OVERRIDE_INVALID_NAME=Map key attribute override cannot be resolved to an attribute:
VIRTUAL_ATTRIBUTE_MAP_KEY_ATTRIBUTE_OVERRIDE_COLUMN_UNRESOLVED_NAME=Map key attribute override column cannot be resolved on table to an attribute:
VIRTUAL_MAP_KEY_ATTRIBUTE_OVERRIDE_COLUMN_UNRESOLVED_NAME=Column cannot be resolved on table to map key attribute override:

INHERITANCE_CATEGORY=Inheritance

DISCRIMINATOR_COLUMN_UNRESOLVED_NAME=Discriminator column cannot be resolved:
ENTITY_ABSTRACT_DISCRIMINATOR_VALUE_DEFINED=No discriminator value should be defined for abstract entity:
ENTITY_ABSTRACT_TABLE_PER_CLASS_DEFINES_TABLE=No table should be defined for abstract entity using table-per-concrete-class inheritance:
ENTITY_NON_ROOT_DISCRIMINATOR_COLUMN_DEFINED=No discriminator column should be defined for non-root entity:
ENTITY_SINGLE_TABLE_DESCENDANT_DEFINES_TABLE=No table should be defined for non-root entity using single-table inheritance:
ENTITY_TABLE_PER_CLASS_DISCRIMINATOR_COLUMN_DEFINED=No discriminator column should be defined for entity using table-per-concrete-class inheritance:
ENTITY_TABLE_PER_CLASS_DISCRIMINATOR_VALUE_DEFINED=No discriminator value should be defined for entity using table-per-concrete-class inheritance:
ENTITY_TABLE_PER_CLASS_NOT_PORTABLE_ON_PLATFORM=Entity uses table-per-concrete-class inheritance which is not portable:
ENTITY_TABLE_PER_CLASS_NOT_SUPPORTED_ON_PLATFORM=Entity cannot use table-per-concrete-class inheritance:

QUERIES_GENERATORS_CATEGORY=Queries and generators

GENERATOR_DUPLICATE_NAME=Duplicate generator defined:
GENERATOR_NAME_UNDEFINED=Generator is unnamed:
ID_MAPPING_UNRESOLVED_GENERATOR_NAME=Generator is not defined in the persistence unit:
JPQL_QUERY_VALIDATION=Invalid or incomplete JPQL queries:
QUERY_DUPLICATE_NAME=Duplicate query defined:
QUERY_NAME_UNDEFINED=Query is unnamed:
QUERY_STATEMENT_UNDEFINED=Query has no query statement:
