################################################################################
# Copyright (c) 2006, 2008 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
################################################################################

Boolean_True=True
Boolean_False=False
NoneSelected=Default ()
DefaultWithoutValue=Default ()
DefaultWithValue=Default ({0})
NoNameSet=<No name set>

MapAsComposite_changeMappingType=here
MapAsComposite_default=Default
MapAsComposite_dialogTitle=Mapping Type Selection
MapAsComposite_labelText=&Enter mapping type or pattern (*, ?, or camel case):
MapAsComposite_mappedAttributeText=Attribute ''{0}'' is mapped as {1}.
MapAsComposite_mappedTypeText=Type ''{0}'' is mapped as {1}.
MapAsComposite_unmappedAttributeText=Attribute ''{0}'' is not mapped, click here to change the mapping type.
MapAsComposite_unmappedTypeText=Type ''{0}'' is not mapped, click here to change the mapping type.
MapAsComposite_virtualAttributeText=Attribute ''{0}'' is not mapped.

BasicMappingUiProvider_label=Basic
EmbeddedMappingUiProvider_label=Embedded
EmbeddedIdMappingUiProvider_label=Embedded Id
IdMappingUiProvider_label=Id
OneToManyMappingUiProvider_label=One to Many
OneToOneMappingUiProvider_label=One to One
ManyToManyMappingUiProvider_label=Many to Many
ManyToOneMappingUiProvider_label=Many to One
TransientMappingUiProvider_label=Transient
VersionMappingUiProvider_label=Version
EmbeddableUiProvider_label=Embeddable
BasicMappingUiProvider_linkLabel=basic
EmbeddedMappingUiProvider_linkLabel=embedded
EmbeddedIdMappingUiProvider_linkLabel=embedded id
IdMappingUiProvider_linkLabel=id
OneToManyMappingUiProvider_linkLabel=one to many
OneToOneMappingUiProvider_linkLabel=one to one
ManyToManyMappingUiProvider_linkLabel=many to many
ManyToOneMappingUiProvider_linkLabel=many to one
TransientMappingUiProvider_linkLabel=transient
VersionMappingUiProvider_linkLabel=version
EmbeddableUiProvider_linkLabel=embeddable

DefaultBasicMappingUiProvider_label=Default (Basic)
DefaultEmbeddedMappingUiProvider_label=Default (Embedded)
DefaultBasicMappingUiProvider_linkLabel=default (basic)
DefaultEmbeddedMappingUiProvider_linkLabel=default (embedded)

EntityUiProvider_label=Entity
MappedSuperclassUiProvider_label=Mapped Superclass
NullTypeMappingUiProvider_label=Unmapped

EmbeddableUiProvider_linkLabel=embeddable
EntityUiProvider_linkLabel=entity
MappedSuperclassUiProvider_linkLabel=mapped superclass


EntityComposite_inheritance=Inheritance
EntityComposite_queries=Queries
EntityComposite_tableDefault=Default ({0})
EntityComposite_tableNoDefaultSpecified=Default ()

EntityGeneralSection_nameDefaultWithOneParam=Default ({0})
EntityGeneralSection_nameDefaultEmpty=Default ()
EntityGeneralSection_name=Name:

EntityNameComposite_name=Name:

BasicGeneralSection_name=Name:
BasicGeneralSection_nameDefault=Default ({0})
BasicGeneralSection_fetchLabel=Fetch:
BasicGeneralSection_optionalLabel=Optional
BasicGeneralSection_optionalLabelDefault=Optional ({0})
BasicGeneralSection_lobLabel=Lob
BasicGeneralSection_temporalLabel=Temporal:
BasicGeneralSection_enumeratedLabel=Enumerated:
TypeSection_type=Type
TypeSection_default=Default
TypeSection_lob=Lob
TypeSection_temporal=Temporal
TypeSection_enumerated=Enumerated

DatabaseObjectCombo_defaultEmpty=Default ()
DatabaseObjectCombo_defaultWithOneParm=Default ({0})


TableChooser_label=Name:
CatalogChooser_label=Catalog:
SchemaChooser_label=Schema:
TableComposite_tableSection=Table
TableComposite_defaultEmpty=Default ()
TableComposite_defaultWithOneParam=Default ({0})

TargetEntityChooser_label=Target entity:
TargetEntityChooser_defaultEmpty=Default ()
TargetEntityChooser_defaultWithOneParam=Default ({0})
TargetEntityChooser_browse=Browse...
TargetEntityChooser_selectTypeTitle=Select Type

NonOwningMapping_mappedByLabel=Mapped by:

IdClassComposite_label=Primary key class:

JoinTableComposite_add=Add...
JoinTableComposite_defaultEmpty=Default ()
JoinTableComposite_defaultWithOneParam=Default ({0})
JoinTableComposite_edit=Edit...
JoinTableComposite_inverseJoinColumn=Inverse join columns

JoinTableComposite_mappingBetweenTwoParamsDefault=Default ({0} -> {1})
JoinTableComposite_mappingBetweenTwoParamsFirstDefault=Default ({0}) -> {1}
JoinTableComposite_mappingBetweenTwoParamsSecDefault={0} -> Default ({1})
JoinTableComposite_mappingBetweenTwoParamsBothDefault=Default ({0}) -> Default ({1})
JoinTableComposite_mappingBetweenTwoParams={0} -> {1}
JoinTableComposite_joinColumn=Join columns
JoinTableComposite_name=Name:
JoinTableComposite_remove=Remove
JoinTableComposite_overrideDefaultJoinColumns=Override default
JoinTableComposite_overrideDefaultInverseJoinColumns=Override default

MultiRelationshipMappingComposite_general=General
MultiRelationshipMappingComposite_joinTable=Join Table
MultiRelationshipMappingComposite_targetEntity=Target entity:
MultiRelationshipMappingComposite_cascadeType=Cascade type:
MultiRelationshipMappingComposite_fetchType=Fetch type:
MultiRelationshipMappingComposite_mappedBy=Mapped by:

ColumnComposite_columnDefinition=Column definition:
ColumnComposite_columnSection=Column
ColumnComposite_defaultWithOneParam=Default ({0})
ColumnComposite_defaultEmpty=Default()
ColumnComposite_details=Details
ColumnComposite_insertable=Insertable
ColumnComposite_insertableWithDefault=Insertable ({0})
ColumnComposite_length=Length:
ColumnComposite_name=Name:
ColumnComposite_nullable=Nullable
ColumnComposite_nullableWithDefault=Nullable ({0})
ColumnComposite_precision=Precision:
ColumnComposite_scale=Scale:
ColumnComposite_table=Table:
ColumnComposite_unique=Unique
ColumnComposite_uniqueWithDefault=Unique ({0})
ColumnComposite_updatable=Updatable
ColumnComposite_updatableWithDefault=Updatable ({0})

JoinColumnComposite_joinColumn=Join columns
JoinColumnComposite_defaultEmpty=Default()
JoinColumnComposite_name=Name:
JoinColumnComposite_defaultWithOneParam=Default ({0})
JoinColumnComposite_add=Add...
JoinColumnComposite_edit=Edit...
JoinColumnComposite_mappingBetweenTwoParams={0} -> {1}
JoinColumnComposite_mappingBetweenTwoParamsDefault=Default ({0} -> {1})
JoinColumnComposite_mappingBetweenTwoParamsBothDefault=Default ({0}) -> Default ({1})
JoinColumnComposite_mappingBetweenTwoParamsFirstDefault=Default ({0}) -> {1}
JoinColumnComposite_mappingBetweenTwoParamsSecDefault={0} -> Default ({1})
JoinColumnComposite_remove=Remove
JoinColumnComposite_overrideDefaultJoinColumns=Override default

PrimaryKeyJoinColumnsComposite_overrideDefaultPrimaryKeyJoinColumns=Override default
PrimaryKeyJoinColumnsComposite_edit=Edit...
PrimaryKeyJoinColumnsComposite_defaultEmpty=Default()
PrimaryKeyJoinColumnsComposite_defaultWithOneParam=Default ({0})
PrimaryKeyJoinColumnsComposite_primaryKeyJoinColumn=Primary key join columns
PrimaryKeyJoinColumnsComposite_mappingBetweenTwoParams={0} -> {1}
PrimaryKeyJoinColumnsComposite_mappingBetweenTwoParamsDefault=Default ({0} -> {1})
PrimaryKeyJoinColumnsComposite_mappingBetweenTwoParamsBothDefault=Default ({0}) -> Default ({1})
PrimaryKeyJoinColumnsComposite_mappingBetweenTwoParamsFirstDefault=Default ({0}) -> {1}
PrimaryKeyJoinColumnsComposite_mappingBetweenTwoParamsSecDefault={0} -> Default ({1})

JoinColumnDialog_addJoinColumnDescriptionTitle=Create New Join Column
JoinColumnDialog_addJoinColumnTitle=Add Join Column
JoinColumnDialog_description=Specify a mapped column for joining an entity association.
JoinColumnDialog_editJoinColumnDescriptionTitle=Edit Join Column
JoinColumnDialog_editJoinColumnTitle=Edit Join Column
JoinColumnDialog_name=&Name:
JoinColumnDialog_referencedColumnName=&Referenced column name:

JoinColumnDialogPane_columnDefinition=&Column definition:
JoinColumnDialogPane_defaultEmpty=Default ()
JoinColumnDialogPane_defaultWithOneParam=Default ({0})
JoinColumnDialogPane_insertable=&Insertable
JoinColumnDialogPane_insertableWithDefault=&Insertable ({0})
JoinColumnDialogPane_nullable=&Nullable
JoinColumnDialogPane_nullableWithDefault=&Nullable ({0})
JoinColumnDialogPane_table=&Table:
JoinColumnDialogPane_unique=&Unique
JoinColumnDialogPane_uniqueWithDefault=&Unique ({0})
JoinColumnDialogPane_updatable=&Updatable
JoinColumnDialogPane_updatableWithDefault=&Updatable ({0})

InverseJoinColumnDialog_editInverseJoinColumnTitle=Edit Inverse Join Column

PrimaryKeyJoinColumnInSecondaryTableDialog_addDescriptionTitle=Create New Primary Key Join Column
PrimaryKeyJoinColumnInSecondaryTableDialog_addTitle=Add Primary Key Join Column
PrimaryKeyJoinColumnInSecondaryTableDialog_editDescriptionTitle=Edit Primary Key Join Column
PrimaryKeyJoinColumnInSecondaryTableDialog_editTitle=Edit Primary Key Join Column

PrimaryKeyJoinColumnDialog_addDescriptionTitle=Create New Primary Key Join Column
PrimaryKeyJoinColumnDialog_addTitle=Add Primary Key Join Column
PrimaryKeyJoinColumnDialog_editDescriptionTitle=Edit Primary Key Join Column
PrimaryKeyJoinColumnDialog_editTitle=Edit Primary Key Join Column

AttributeOverridesComposite_attributeOverridesSection=Attribute Overrides
AttributeOverridesComposite_attributeOverridesGroup=Attribute overrides
AttributeOverridesComposite_overrideDefault=Override default

OverridesComposite_association=Association Override
OverridesComposite_attribute=Attribute Override
OverridesComposite_noName=<Name not set>
OverridesComposite_joinColumn=Join columns

AbstractInheritanceComposite_char=Character
InheritanceComposite_detailsGroupBox=Details
InheritanceComposite_discriminatorColumnGroupBox=Discriminator column
InheritanceComposite_discriminatorValue=Discriminator value:
AbstractInheritanceComposite_integer=Integer
AbstractInheritanceComposite_joined=Joined
AbstractInheritanceComposite_single_table=Single Table
InheritanceComposite_strategy=Strategy:
AbstractInheritanceComposite_string=String
AbstractInheritanceComposite_table_per_class=Table per Class

DiscriminatorColumnComposite_defaultEmpty=Default(<provider-specific>)
DiscriminatorColumnComposite_discriminatorType=Type:
DiscriminatorColumnComposite_name=Name:

GeneratorsComposite_sequenceGeneratorCheckBox=Sequence generator
GeneratorsComposite_sequenceGeneratorSection=Sequence Generator
GeneratorsComposite_tableGeneratorCheckBox=Table generator
GeneratorsComposite_tableGeneratorSection=Table Generator

IdMappingComposite_pk_generation=PK Generation
IdMappingComposite_primaryKeyGenerationCheckBox=Primary key generation
IdMappingComposite_primaryKeyGenerationSection=Primary Key Generation
IdMappingComposite_tableGeneratorCheckBox=Table generator
IdMappingComposite_tableGeneratorSection=Table Generator
IdMappingComposite_sequenceGeneratorCheckBox=Sequence generator
IdMappingComposite_sequenceGeneratorSection=Sequence Generator

GeneratedValueComposite_generatedValue=Generated Value
GeneratedValueComposite_generatorName=Generator name:
GeneratedValueComposite_strategy=Strategy:
GeneratedValueComposite_auto=Auto
GeneratedValueComposite_identity=Identity
GeneratedValueComposite_sequence=Sequence
GeneratedValueComposite_table=Table

SequenceGeneratorComposite_sequenceGenerator=Sequence Generator
SequenceGeneratorComposite_name=Name:
SequenceGeneratorComposite_sequence=Sequence:
SequenceGeneratorComposite_default=Default

TableGeneratorComposite_catalog=Catalog:
TableGeneratorComposite_default=Default
TableGeneratorComposite_name=Name:
TableGeneratorComposite_pkColumn=Primary key column:
TableGeneratorComposite_pkColumnValue=Primary key column value:
TableGeneratorComposite_schema=Schema:
TableGeneratorComposite_table=Table:
TableGeneratorComposite_tableGenerator=Table Generator
TableGeneratorComposite_valueColumn=Value column:

GeneratorComposite_allocationSize=Allocation size:
GeneratorComposite_initialValue=Initial value:

OrderByComposite_orderByGroup=Order by
OrderByComposite_orderByLabel=Order by:
OrderByComposite_noOrdering=No ordering
OrderByComposite_primaryKeyOrdering=Primary key ordering
OrderByComposite_customOrdering=Custom ordering

SecondaryTablesComposite_secondaryTables=Secondary Tables
SecondaryTablesComposite_edit=Edit...

SecondaryTableDialog_addSecondaryTable=Add Secondary Table
SecondaryTableDialog_editSecondaryTable=Edit Secondary Table
SecondaryTableDialog_name=Name:
SecondaryTableDialog_catalog=Catalog:
SecondaryTableDialog_schema=Schema:
SecondaryTableDialog_defaultSchema=Default ({0})
SecondaryTableDialog_defaultCatalog=Default ({0})

AccessTypeCombo_default=Default
MetaDataCompleteCombo_Default=Default ({0})

OptionalComposite_false=False
OptionalComposite_true=True

EnumTypeComposite_ordinal=Ordinal
EnumTypeComposite_string=String

FetchTypeComposite_eager=Eager
FetchTypeComposite_lazy=Lazy

TemporalTypeComposite_date=Date
TemporalTypeComposite_time=Time
TemporalTypeComposite_timestamp=Timestamp

CascadeComposite_all=All
CascadeComposite_cascadeTitle=Cascade
CascadeComposite_merge=Merge
CascadeComposite_persist=Persist
CascadeComposite_refresh=Refresh
CascadeComposite_remove=Remove

QueriesComposite_addNamedQuery=Add...
QueriesComposite_addNamedQueryDescription=Create a new query, which searches against persistent entities independent of the mechanism used to store those entities.
QueriesComposite_addNamedQueryDescriptionTitle=Create new named query
QueriesComposite_addNamedQueryTitle=New Named Query
QueriesComposite_addNamedNativeQuery=Add Native...
QueriesComposite_addNamedNativeQueryDescription=Create a new native query, this is useful if you want to utilize database specific features.
QueriesComposite_addNamedNativeQueryDescriptionTitle=Create new named native query
QueriesComposite_addNamedNativeQueryTitle=New Named Native Query
QueriesComposite_displayString=<Name not set> {0}
QueriesComposite_edit=Edit...
QueriesComposite_editNamedNativeQueryTitle=Edit Named Native Query
QueriesComposite_editNamedNativeQueryDescription=Edit the name of the named native query.
QueriesComposite_editNamedNativeQueryDescriptionTitle=Edit named native query
QueriesComposite_editNamedQueryTitle=Edit Named Query
QueriesComposite_editNamedQueryDescription=Edit the name of the named query.
QueriesComposite_editNamedQueryDescriptionTitle=Edit named query
QueriesComposite_label=&Name:

NamedNativeQueryPropertyComposite_query=Query:
NamedNativeQueryPropertyComposite_queryHintsGroupBox=Query hints
NamedNativeQueryPropertyComposite_resultClass=Result class:

NamedQueryPropertyComposite_query=Query:
NamedQueryPropertyComposite_queryHintsGroupBox=Query hints

NewNameStateObject_nameMustBeSpecified=A name must be specified.
NewNameStateObject_nameAlreadyExists=A query with this name already exists.

QueryHintsComposite_nameColumn=Name
QueryHintsComposite_valueColumn=Value

OrmSecondaryTablesComposite_defineInXml=Define in XML

NullAttributeMappingUiProvider_label=Unmapped
