Skip to main content
aboutsummaryrefslogtreecommitdiffstats
ModeNameSize
-rw-r--r--AbstractDebugCheckboxSelectionDialog.java5830logstatsplainblame
-rw-r--r--AbstractDebugListSelectionDialog.java3448logstatsplainblame
-rw-r--r--AbstractDebugSelectionDialog.java7039logstatsplainblame
-rw-r--r--BreakpointImageProvider.java2159logstatsplainblame
-rw-r--r--ColorManager.java1412logstatsplainblame
-rw-r--r--CompositeDebugImageDescriptor.java3268logstatsplainblame
-rw-r--r--DebugModelPropertyTester.java3902logstatsplainblame
-rw-r--r--DebugPerspectiveFactory.java3104logstatsplainblame
-rw-r--r--DebugPluginImages.java25636logstatsplainblame
-rw-r--r--DebugUIAdapterFactory.java2215logstatsplainblame
-rw-r--r--DebugUIMessages.java11496logstatsplainblame
-rw-r--r--DebugUIMessages.properties11635logstatsplainblame
-rw-r--r--DebugUIPlugin.java55555logstatsplainblame
-rw-r--r--DebugUIPreferenceInitializer.java10739logstatsplainblame
-rw-r--r--DefaultLabelProvider.java19627logstatsplainblame
-rw-r--r--DelegatingModelPresentation.java17045logstatsplainblame
-rw-r--r--DynamicInstructionPointerAnnotation.java1945logstatsplainblame
-rw-r--r--IDebugHelpContextIds.java14009logstatsplainblame
-rw-r--r--IInternalDebugUIConstants.java23150logstatsplainblame
-rw-r--r--ILaunchHistoryChangedListener.java1173logstatsplainblame
-rw-r--r--ILaunchLabelChangedListener.java1439logstatsplainblame
-rw-r--r--ImageDescriptorRegistry.java2924logstatsplainblame
-rw-r--r--InstructionPointerAnnotation.java1523logstatsplainblame
-rw-r--r--InstructionPointerContext.java2562logstatsplainblame
-rw-r--r--InstructionPointerImageProvider.java1596logstatsplainblame
-rw-r--r--InstructionPointerManager.java10646logstatsplainblame
-rw-r--r--LaunchConfigurationTabExtension.java3880logstatsplainblame
-rw-r--r--LazyModelPresentation.java17215logstatsplainblame
-rw-r--r--MultipleInputDialog.java12987logstatsplainblame
-rw-r--r--Pair.java1086logstatsplainblame
-rw-r--r--ResourceExtender.java5859logstatsplainblame
-rwxr-xr-xSWTFactory.java24132logstatsplainblame
-rw-r--r--VariableValueEditorManager.java4192logstatsplainblame
-rw-r--r--VariablesViewModelPresentation.java1757logstatsplainblame
-rw-r--r--WorkingDirectoryStatusHandler.java1473logstatsplainblame
d---------actions2352logstatsplain
d---------breakpoints / provisional38logstatsplain
d---------commands / actions34logstatsplain
d---------contextlaunching205logstatsplain
d---------contexts347logstatsplain
d---------elements / adapters35logstatsplain
d---------importexport85logstatsplain
d---------launchConfigurations3139logstatsplain
d---------memory363logstatsplain
d---------model / elements35logstatsplain
d---------preferences808logstatsplain
d---------sourcelookup1611logstatsplain
d---------stringsubstitution808logstatsplain
d---------viewers1202logstatsplain
d---------views612logstatsplain

Back to the top

d class='right'>13
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.branding/.cvsignore1
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.branding/.project22
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.branding/META-INF/MANIFEST.MF7
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.html34
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.ini44
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.mappings6
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.properties24
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.branding/build.properties17
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.branding/component.xml7
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.branding/icons/WTP_icon_x32_v2.pngbin5616 -> 0 bytes-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.branding/plugin.properties13
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/.classpath16
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/.cvsignore1
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/.project28
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/META-INF/MANIFEST.MF23
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/about.html34
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/build.properties19
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/plugin.properties23
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/plugin.xml151
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/property_files/jpt_common_eclipselink_core.properties15
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_0.xsd3128
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_1.xsd3248
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_2.xsd3519
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_0.xsd3625
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_1.xsd4108
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_2.xsd4778
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_3.xsd5479
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_0.xsd260
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_1.xsd462
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_2.xsd562
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_3.xsd589
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_1.1.xsd4183
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_1.2.xsd4253
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_2.0.xsd4253
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_sessions_1.0.xsd1477
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_sessions_1.1.xsd1585
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_sessions_1.2.xsd1586
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_sessions_2.0.xsd1591
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/src/org/eclipse/jpt/common/eclipselink/core/JptCommonEclipseLinkCorePlugin.java90
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/src/org/eclipse/jpt/common/eclipselink/core/internal/JptCommonEclipseLinkCoreMessages.java35
-rw-r--r--common/plugins/org.eclipse.jpt.common.eclipselink.core/src/org/eclipse/jpt/common/eclipselink/core/internal/libval/EclipseLinkLibValUtil.java84
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/.classpath13
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/.cvsignore1
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/.project28
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/META-INF/MANIFEST.MF73
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/about.html34
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/build.properties17
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/plugin.properties23
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/property_files/jpt_common_ui.properties30
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/JptCommonUiPlugin.java65
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/WidgetFactory.java240
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/JptCommonUiMessages.java55
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/Tracing.java161
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/dialogs/OptionalMessageDialog.java107
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/AbstractItemExtendedLabelProvider.java235
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/AbstractItemStructuredStateProviderManager.java280
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/AbstractItemTreeContentProvider.java187
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/AbstractSelectionProvider.java82
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/ArchiveFileViewerFilter.java71
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/ContentProvider.java40
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/EmptySelection.java43
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/ImageImageDescriptor.java47
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/ItemStructuredStateProviderManager.java45
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/ItemTreeStateProviderManager.java101
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/LabelProviderAdapter.java30
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/NavigatorContentProvider.java135
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/NavigatorLabelProvider.java117
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/SelectionChangedAdapter.java30
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/SimpleItemTreeStateProviderFactoryProvider.java48
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/SimpleMessageTreeContent.java100
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/StaticItemExtendedLabelProvider.java54
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/StaticItemLabelProvider.java59
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/StaticItemTreeContentProvider.java79
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/StructuredContentProvider.java32
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/StructuredContentProviderAdapter.java265
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/jface/TreeContentProvider.java44
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/listeners/SWTCollectionChangeListenerWrapper.java141
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/listeners/SWTListChangeListenerWrapper.java187
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/listeners/SWTPropertyChangeListenerWrapper.java76
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/listeners/SWTStateChangeListenerWrapper.java72
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/properties/JptProjectPropertiesPage.java449
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/swt/AbstractComboModelAdapter.java704
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/swt/ColumnAdapter.java55
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/swt/ComboModelAdapter.java210
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/swt/DateTimeModelAdapter.java352
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/swt/DisposeAdapter.java29
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/swt/SpinnerModelAdapter.java214
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/swt/TableItemModelAdapter.java209
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/swt/TableModelAdapter.java746
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/swt/TriStateCheckBoxModelAdapter.java188
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/util/ControlAligner.java913
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/util/ControlSwitcher.java147
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/util/LabeledButton.java64
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/util/LabeledControl.java37
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/util/LabeledControlUpdater.java130
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/util/LabeledLabel.java64
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/util/PaneEnabler.java175
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/util/PaneVisibilityEnabler.java173
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/util/SWTUtil.java369
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/util/StateController.java320
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/util/TableLayoutComposite.java207
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/AbstractUiCommandExecutor.java60
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/AsynchronousUiCommandExecutor.java44
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/PageAdapter.java35
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/PartAdapter.java41
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/PartAdapter2.java50
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/PropertyAdapter.java29
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/SynchronousUiCommandExecutor.java44
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/WindowAdapter.java38
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/AbstractListWidgetAdapter.java42
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/BooleanButtonModelBinding.java190
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/BooleanStateController.java213
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/DropDownListBoxSelectionBinding.java283
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/ListBoxSelectionBinding.java305
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/ListWidgetModelBinding.java428
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/MultiControlBooleanStateController.java160
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/SWTComboAdapter.java67
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/SWTListAdapter.java49
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/SWTTools.java392
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/SimpleBooleanStateController.java67
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/utility/swt/TextFieldModelBinding.java196
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/AddRemoveListPane.java554
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/AddRemovePane.java923
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/AddRemoveTablePane.java314
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/ChooserPane.java167
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/ClassChooserComboPane.java92
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/ClassChooserPane.java375
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/ComboPane.java289
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/DefaultWidgetFactory.java260
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/Dialog.java329
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/DialogPane.java109
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/EnumComboViewer.java332
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/EnumDialogComboViewer.java77
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/EnumFormComboViewer.java77
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/FileChooserComboPane.java105
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/FileChooserPane.java167
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/FolderChooserComboPane.java106
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/FolderChooserPane.java140
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/FormWidgetFactory.java338
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/IntegerCombo.java181
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/NewNameDialog.java166
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/NewNameDialogBuilder.java179
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/NewNameStateObject.java146
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/PackageChooserPane.java241
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/Pane.java3746
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/PropertySheetWidgetFactory.java66
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/TriStateCheckBox.java284
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/widgets/ValidatingDialog.java233
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/internal/wizards/JavaProjectWizardPage.java256
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/ExtendedLabelProvider.java29
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/ItemExtendedLabelProvider.java49
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/ItemExtendedLabelProviderFactory.java26
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/ItemLabelProvider.java61
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/ItemLabelProviderFactory.java26
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/ItemStructuredContentProvider.java105
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/ItemStructuredContentProviderFactory.java26
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/ItemTreeContentProvider.java111
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/ItemTreeContentProviderFactory.java29
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/ItemTreeStateProviderFactoryProvider.java34
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/StructuredStateProvider.java32
-rw-r--r--common/plugins/org.eclipse.jpt.common.ui/src/org/eclipse/jpt/common/ui/jface/TreeStateProvider.java29
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/.classpath7
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/.cvsignore1
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/.project28
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/META-INF/MANIFEST.MF122
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/about.html34
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/build.properties15
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/component.xml11
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/plugin.properties24
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/BooleanReference.java166
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/ExceptionHandler.java94
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/Filter.java131
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/IndentingPrintWriter.java155
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/JavaType.java135
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/MethodSignature.java73
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/ModifiableObjectReference.java29
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/ObjectReference.java42
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/command/Command.java93
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/command/CommandExecutor.java96
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/command/ExtendedCommandExecutor.java126
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/command/InterruptibleCommand.java65
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/command/InterruptibleCommandExecutor.java65
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/command/NotifyingRepeatingCommand.java102
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/command/RepeatingCommand.java80
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/command/StatefulCommandExecutor.java35
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/command/StatefulExtendedCommandExecutor.java25
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/AbstractAssociation.java69
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/AbstractBooleanReference.java85
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/AbstractTransformer.java30
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/ArrayTools.java3122
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/Association.java46
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/Bag.java197
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/BidiFilter.java128
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/BidiStringConverter.java157
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/BidiTransformer.java97
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/BitTools.java214
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/BooleanTools.java105
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/ClassName.java431
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/Classpath.java939
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/CollectingExceptionHandler.java54
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/CollectionTools.java1977
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/CompositeException.java96
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/ConsumerThreadCoordinator.java243
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/FileTools.java1002
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/FilterAdapter.java30
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/FlaggedObjectReference.java69
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/HashBag.java882
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/IdentityHashBag.java924
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/IntReference.java145
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/JDBCTools.java349
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/JDBCType.java162
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/KeyedSet.java129
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/LazyObjectReference.java107
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/ListenerList.java171
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/ModifiableBooleanReference.java50
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/ModifiableIntReference.java40
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/NameTools.java377
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/NonEmptyStringFilter.java49
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/NonNullBooleanTransformer.java79
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/NotBooleanTransformer.java57
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/NotNullFilter.java51
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/NullList.java151
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/Queue.java80
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/Range.java87
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/ReflectionTools.java1544
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/ReverseComparator.java40
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/RunnableAdapter.java26
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SimpleAssociation.java69
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SimpleBooleanReference.java127
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SimpleFilter.java114
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SimpleIntReference.java186
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SimpleJavaType.java213
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SimpleMethodSignature.java240
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SimpleObjectReference.java98
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SimpleQueue.java90
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SimpleStack.java100
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SimpleStringMatcher.java259
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SimpleThreadFactory.java53
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/Stack.java80
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/StringCollator.java62
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/StringConverter.java83
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/StringMatcher.java66
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/StringTools.java5109
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SynchronizedBag.java220
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SynchronizedBoolean.java650
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SynchronizedInt.java914
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SynchronizedObject.java472
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SynchronizedQueue.java347
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/SynchronizedStack.java325
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/Tools.java96
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/Transformer.java98
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/TransformerAdapter.java27
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/VersionComparator.java246
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/XMLStringEncoder.java182
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/AbstractAsynchronousCommandExecutor.java276
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/AbstractQueueingCommandExecutor.java96
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/AbstractSafeCommandExecutor.java57
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/AbstractSingleUseQueueingCommandExecutor.java165
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/AbstractStatefulCommandExecutor.java67
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/AbstractThreadLocalCommandExecutor.java63
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/AsynchronousCommandExecutor.java100
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/AsynchronousExtendedCommandExecutor.java153
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/AsynchronousNotifyingRepeatingCommandWrapper.java160
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/AsynchronousRepeatingCommandWrapper.java287
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/CommandRunnable.java38
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/CompositeCommand.java47
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/NotifyingRepeatingCommandWrapper.java98
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/QueueingCommandExecutor.java32
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/QueueingExtendedCommandExecutor.java83
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/RepeatingCommandState.java220
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/RepeatingCommandWrapper.java170
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/RunnableCommand.java38
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/SafeCommandExecutor.java44
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/SafeExtendedCommandExecutor.java63
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/SimpleStatefulCommandExecutor.java32
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/SimpleStatefulExtendedCommandExecutor.java64
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/SingleUseQueueingCommandExecutor.java33
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/SingleUseQueueingExtendedCommandExecutor.java78
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/SynchronizingCommand.java163
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/ThreadLocalCommand.java67
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/ThreadLocalCommandExecutor.java30
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/command/ThreadLocalExtendedCommandExecutor.java40
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/enumerations/EmptyEnumeration.java62
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/enumerations/IteratorEnumeration.java57
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/ArrayIterable.java77
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/ArrayListIterable.java59
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/ChainIterable.java96
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/CloneIterable.java66
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/CloneListIterable.java92
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/CompositeIterable.java98
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/CompositeListIterable.java135
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/EmptyIterable.java65
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/EmptyListIterable.java65
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/FilteringIterable.java95
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/GraphIterable.java156
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/LateralIterableWrapper.java47
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/LateralListIterableWrapper.java53
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/ListIterable.java27
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/ListListIterable.java35
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/LiveCloneIterable.java85
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/LiveCloneListIterable.java85
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/PeekableIterable.java56
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/QueueIterable.java51
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/ReadOnlyCompositeListIterable.java100
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/ReadOnlyIterable.java50
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/ReadOnlyListIterable.java50
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/SingleElementIterable.java55
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/SingleElementListIterable.java58
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/SnapshotCloneIterable.java124
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/SnapshotCloneListIterable.java102
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/StackIterable.java51
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/SubIterableWrapper.java50
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/SubListIterableWrapper.java54
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/SuperIterableWrapper.java45
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/SuperListIterableWrapper.java54
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/TransformationIterable.java91
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/TransformationListIterable.java111
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterables/TreeIterable.java137
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/ArrayIterator.java88
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/ArrayListIterator.java93
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/ChainIterator.java163
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/CloneIterator.java193
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/CloneListIterator.java292
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/CompositeIterator.java162
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/CompositeListIterator.java270
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/EmptyIterator.java68
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/EmptyListIterator.java92
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/EnumerationIterator.java52
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/FilteringIterator.java148
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/GraphIterator.java286
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/LateralIteratorWrapper.java60
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/LateralListIteratorWrapper.java93
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/PeekableIterator.java112
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/QueueIterator.java59
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/ReadOnlyCompositeListIterator.java252
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/ReadOnlyIterator.java65
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/ReadOnlyListIterator.java108
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/ResultSetIterator.java163
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/ReverseIterator.java82
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/SingleElementIterator.java67
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/SingleElementListIterator.java98
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/StackIterator.java59
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/SubIteratorWrapper.java38
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/SubListIteratorWrapper.java56
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/SuperIteratorWrapper.java57
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/SuperListIteratorWrapper.java88
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/SynchronizedIterator.java76
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/SynchronizedListIterator.java122
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/TransformationIterator.java103
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/TransformationListIterator.java152
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/iterators/TreeIterator.java257
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/AbstractModel.java1007
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/AspectChangeSupport.java349
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/ChangeSupport.java2844
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/SingleAspectChangeSupport.java380
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/listener/awt/AWTChangeListenerWrapper.java454
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/listener/awt/AWTCollectionChangeListenerWrapper.java161
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/listener/awt/AWTListChangeListenerWrapper.java211
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/listener/awt/AWTPropertyChangeListenerWrapper.java87
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/listener/awt/AWTStateChangeListenerWrapper.java86
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/listener/awt/AWTTreeChangeListenerWrapper.java161
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/AbstractCollectionValueModel.java124
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/AbstractListValueModel.java124
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/AbstractPropertyValueModel.java125
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/AbstractPropertyValueModelAdapter.java118
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/AbstractTreeNodeValueModel.java194
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/AspectAdapter.java284
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/AspectCollectionValueModelAdapter.java156
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/AspectListValueModelAdapter.java201
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/AspectPropertyValueModelAdapter.java186
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/BufferedWritablePropertyValueModel.java397
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/CachingPropertyValueModelWrapper.java101
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ChangePropertyValueModelAdapter.java101
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/CollectionAspectAdapter.java166
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/CollectionListValueModelAdapter.java216
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/CollectionPropertyValueModelAdapter.java174
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/CollectionValueModelWrapper.java132
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/CompositeBooleanPropertyValueModel.java352
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/CompositeCollectionValueModel.java448
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/CompositeListValueModel.java682
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/CompositePropertyValueModel.java197
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/DoubleModifiablePropertyValueModel.java53
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/DoublePropertyValueModel.java165
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ElementPropertyValueModelAdapter.java130
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ExtendedListValueModelWrapper.java211
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/FilteringCollectionValueModel.java176
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/FilteringPropertyValueModel.java114
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/FilteringWritablePropertyValueModel.java89
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ItemAspectListValueModelAdapter.java274
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ItemChangeListValueModelAdapter.java68
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ItemCollectionListValueModelAdapter.java101
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ItemListListValueModelAdapter.java109
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ItemPropertyListValueModelAdapter.java84
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ItemStateListValueModelAdapter.java74
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ItemTreeListValueModelAdapter.java101
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ListAspectAdapter.java186
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ListCollectionValueModelAdapter.java232
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ListCurator.java229
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ListPropertyValueModelAdapter.java176
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ListValueModelWrapper.java163
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ModifiablePropertyCollectionValueModelAdapter.java60
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ModifiablePropertyListValueModelAdapter.java60
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/NullCollectionValueModel.java58
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/NullListValueModel.java71
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/NullPropertyValueModel.java43
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/NullTreeValueModel.java52
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/PropertyAspectAdapter.java133
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/PropertyCollectionValueModelAdapter.java140
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/PropertyListValueModelAdapter.java156
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/PropertyValueModelWrapper.java110
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ReadOnlyWritablePropertyValueModelWrapper.java48
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/SetCollectionValueModel.java133
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/SimpleCollectionValueModel.java188
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/SimpleListValueModel.java322
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/SimplePropertyValueModel.java68
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/SortedListValueModelAdapter.java125
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/SortedListValueModelWrapper.java249
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/StatePropertyValueModelAdapter.java100
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/StaticCollectionValueModel.java73
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/StaticListValueModel.java93
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/StaticPropertyValueModel.java53
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/StaticTreeValueModel.java57
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/TransformationListValueModel.java308
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/TransformationPropertyValueModel.java164
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/TransformationWritablePropertyValueModel.java146
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ValueAspectAdapter.java195
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ValueChangeAdapter.java75
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ValueCollectionAdapter.java107
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ValueListAdapter.java123
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ValuePropertyAdapter.java82
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ValueStateAdapter.java73
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/ValueTreeAdapter.java107
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/prefs/PreferencePropertyValueModel.java349
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/prefs/PreferencesCollectionValueModel.java202
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/AbstractTreeModel.java216
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/CheckBoxModelAdapter.java43
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/ColumnAdapter.java49
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/ComboBoxModelAdapter.java140
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/DateSpinnerModelAdapter.java198
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/DocumentAdapter.java375
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/ListModelAdapter.java292
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/ListSpinnerModelAdapter.java218
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/NumberSpinnerModelAdapter.java223
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/ObjectListSelectionModel.java427
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/PrimitiveListTreeModel.java239
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/RadioButtonModelAdapter.java165
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/SpinnerModelAdapter.java207
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/TableModelAdapter.java420
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/ToggleButtonModelAdapter.java224
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/model/value/swing/TreeModelAdapter.java914
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/node/AbstractNode.java940
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/node/AsynchronousValidator.java50
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/node/DefaultProblem.java85
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/node/Node.java377
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/node/PluggableValidator.java127
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/node/Problem.java51
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/node/SynchronousValidator.java44
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/CachingComboBoxModel.java42
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/CheckBoxTableCellRenderer.java206
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/ComboBoxTableCellRenderer.java328
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/Displayable.java44
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/EmptyIcon.java54
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/FilteringListBrowser.java140
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/FilteringListPanel.java455
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/ListChooser.java430
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/NodeSelector.java32
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/NonCachingComboBoxModel.java73
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/SimpleDisplayable.java170
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/SimpleListBrowser.java86
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/SimpleListCellRenderer.java128
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/SpinnerTableCellRenderer.java186
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/swing/TableCellEditorAdapter.java96
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/synchronizers/CallbackSynchronousSynchronizer.java82
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/synchronizers/SynchronousSynchronizer.java257
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/Model.java143
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/ChangeEvent.java66
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/CollectionAddEvent.java124
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/CollectionChangeEvent.java105
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/CollectionClearEvent.java61
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/CollectionEvent.java63
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/CollectionRemoveEvent.java112
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/ListAddEvent.java134
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/ListChangeEvent.java105
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/ListClearEvent.java61
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/ListEvent.java64
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/ListMoveEvent.java120
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/ListRemoveEvent.java134
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/ListReplaceEvent.java150
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/PropertyChangeEvent.java109
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/StateChangeEvent.java51
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/TreeAddEvent.java81
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/TreeChangeEvent.java90
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/TreeClearEvent.java61
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/TreeEvent.java62
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/event/TreeRemoveEvent.java81
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/AbstractChangeListener.java136
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/ChangeAdapter.java119
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/ChangeListener.java25
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/CollectionChangeAdapter.java54
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/CollectionChangeListener.java65
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/CommandChangeListener.java43
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/ListChangeAdapter.java64
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/ListChangeListener.java87
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/MultiMethodReflectiveChangeListener.java160
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/PropertyChangeAdapter.java42
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/PropertyChangeListener.java37
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/ReflectiveChangeListener.java377
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/SingleMethodReflectiveChangeListener.java60
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/StateChangeAdapter.java31
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/StateChangeListener.java37
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/TreeChangeAdapter.java51
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/listener/TreeChangeListener.java67
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/value/CollectionValueModel.java42
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/value/ListValueModel.java57
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/value/ModifiableCollectionValueModel.java32
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/value/ModifiableListValueModel.java32
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/value/ModifiablePropertyValueModel.java31
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/value/PropertyValueModel.java34
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/value/TreeNodeValueModel.java74
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/model/value/TreeValueModel.java36
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/synchronizers/CallbackSynchronizer.java94
-rw-r--r--common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/synchronizers/Synchronizer.java85
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/.classpath13
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/.cvsignore1
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/.project28
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/META-INF/MANIFEST.MF21
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/about.html34
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/build.properties16
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/plugin.properties23
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/JptCommonCoreTests.java30
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/projects/TestFacetedProject.java85
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/projects/TestJavaProject.java121
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/projects/TestPlatformProject.java97
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/resource/java/JavaResourceModelTestCase.java197
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/resource/java/JptCommonCoreResourceJavaTests.java28
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/resource/java/SourceAttributeTests.java135
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/ASTToolsTests.java196
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/AnnotationTestCase.java1099
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/CombinationIndexedDeclarationAnnotationAdapterTests.java744
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/DefaultAnnotationEditFormatterTests.java75
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/JDTToolsTests.java65
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/JptCommonCoreUtilityJdtTests.java36
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/MemberAnnotationElementAdapterTests.java1298
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/MiscTests.java48
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/NestedDeclarationAnnotationAdapterTests.java763
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/NestedIndexedDeclarationAnnotationAdapterTests.java2229
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/SimpleDeclarationAnnotationAdapterTests.java274
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/src/org/eclipse/jpt/common/core/tests/internal/utility/jdt/TypeTests.java52
-rw-r--r--common/tests/org.eclipse.jpt.common.core.tests/test.xml45
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/.classpath12
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/.cvsignore1
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/.project28
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/META-INF/MANIFEST.MF21
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/build.properties13
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/plugin.properties23
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/JptCommonUiTests.java34
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/jface/DelegatingLabelProviderUiTest.java565
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/jface/DelegatingTreeContentProviderUiTest.java554
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/swt/AbstractComboModelAdapterTest.java777
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/swt/ComboModelAdapterTest.java78
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/swt/JptUiSWTTests.java38
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/swt/SpinnerModelAdapterTest.java342
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/swt/TableModelAdapterTest.java1201
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/swt/TriStateCheckBoxModelAdapterUITest.java319
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/util/ControlAlignerTest.java803
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/util/ControlEnablerTest.java85
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/util/ControlSwitcherTest.java189
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/util/ControlVisibilityEnablerTest.java85
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/util/JptUiUtilTests.java44
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/util/LabeledButtonTest.java122
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/util/LabeledControlUpdaterTest.java124
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/util/LabeledLabelTest.java122
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/util/PaneEnablerTest.java93
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/util/PaneVisibilityEnablerTest.java93
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/utility/swt/BooleanStateControllerUITest.java278
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/utility/swt/CheckBoxModelBindingUITest.java318
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/utility/swt/DropDownListBoxModelBindingUITest.java664
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/utility/swt/ListBoxModelBindingUITest.java626
-rw-r--r--common/tests/org.eclipse.jpt.common.ui.tests/src/org/eclipse/jpt/common/ui/tests/internal/utility/swt/TextFieldModelBindingUITest.java252
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/.classpath11
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/.cvsignore1
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/.project28
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/META-INF/MANIFEST.MF22
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/about.html34
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/build.properties16
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/plugin.properties24
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/resource/ClassTools.java1680
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/ArrayToolsTests.java3523
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/BagTests.java82
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/BidiFilterTests.java88
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/BidiStringConverterTests.java115
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/BidiTransformerTests.java73
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/BitToolsTests.java262
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/BooleanToolsTests.java89
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/ClassNameTests.java368
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/ClasspathTests.java402
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/CollectionToolsTests.java2418
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/ExceptionHandlerTests.java65
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/FileToolsTests.java593
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/FilterTests.java78
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/HashBagTests.java555
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/IdentityHashBagTests.java573
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/IndentingPrintWriterTests.java109
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/JDBCTypeTests.java67
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/JavaTypeTests.java252
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/JptCommonUtilityTests.java87
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/KeyedSetTests.java124
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/ListenerListTests.java194
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/MethodSignatureTests.java208
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/MultiThreadedTestCase.java141
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/NameToolsTests.java226
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/NotNullFilterTests.java37
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/RangeTests.java74
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/ReflectionToolsTests.java440
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/ReverseComparatorTests.java102
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/SimpleAssociationTests.java112
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/SimpleBooleanReferenceTests.java110
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/SimpleIntReferenceTests.java314
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/SimpleObjectReferenceTests.java88
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/SimpleQueueTests.java149
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/SimpleStackTests.java148
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/StringToolsTests.java1871
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/SynchronizedBooleanTests.java341
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/SynchronizedIntTests.java361
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/SynchronizedObjectTests.java238
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/SynchronizedQueueTests.java256
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/SynchronizedStackTests.java257
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/TestCommand.java18
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/TestTools.java254
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/ToolsTests.java63
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/VersionComparatorTests.java205
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/XMLStringEncoderTests.java136
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/command/AsynchronousCommandExecutorTests.java46
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/command/AsynchronousRepeatingCommandWrapperTests.java445
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/command/CommandExecutorTests.java122
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/command/CommandRunnableTests.java54
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/command/CommandTests.java138
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/command/CompositeCommandTests.java60
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/command/JptUtilityCommandTests.java37
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/enumerations/EmptyEnumerationTests.java55
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/enumerations/IteratorEnumerationTests.java100
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/enumerations/JptUtilityEnumerationsTests.java34
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/ArrayIterableTests.java79
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/ArrayListIterableTests.java92
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/ChainIterableTests.java84
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/CloneIterableTests.java144
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/CompositeIterableTests.java115
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/CompositeListIterableTests.java117
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/EmptyIterableTests.java39
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/EmptyListIterableTests.java39
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/FilteringIterableTests.java98
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/GraphIterableTests.java167
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/JptUtilityIterablesTests.java57
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/LiveCloneIterableTests.java71
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/LiveCloneListIterableTests.java131
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/PeekableIterableTests.java47
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/QueueIterableTests.java48
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/ReadOnlyCompositeListIterableTests.java127
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/ReadOnlyIterableTests.java68
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/ReadOnlyListIterableTests.java74
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/SingleElementIterableTests.java66
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/SingleElementListIterableTests.java70
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/SnapshotCloneIterableTests.java71
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/SnapshotCloneListIterableTests.java131
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/StackIterableTests.java50
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/SuperIterableWrapperTests.java50
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/TransformationIterableTests.java104
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/TransformationListIterableTests.java104
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterables/TreeIterableTests.java155
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/ArrayIteratorTests.java135
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/ArrayListIteratorTests.java140
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/ChainIteratorTests.java133
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/CloneIteratorTests.java237
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/CloneListIteratorTests.java397
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/CompositeIteratorTests.java351
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/CompositeListIteratorTests.java331
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/EmptyIteratorTests.java64
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/EmptyListIteratorTests.java128
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/EnumerationIteratorTests.java120
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/FilteringIteratorTests.java266
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/GraphIteratorTests.java197
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/JptUtilityIteratorsTests.java56
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/PeekableIteratorTests.java141
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/ReadOnlyCompositeListIteratorTests.java205
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/ReadOnlyIteratorTests.java119
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/ReadOnlyListIteratorTests.java204
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/SingleElementIteratorTests.java72
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/SingleElementListIteratorTests.java112
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/SuperIteratorWrapperTests.java52
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/SynchronizedIteratorTests.java310
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/SynchronizedListIteratorTests.java524
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/TransformationIteratorTests.java230
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/TransformationListIteratorTests.java322
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/iterators/TreeIteratorTests.java211
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/ChangeSupportTests.java4575
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/JptUtilityModelTests.java37
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/NewEventTests.java181
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/SingleAspectChangeSupportTests.java192
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/listener/JptUtilityModelListenerTests.java34
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/listener/ReflectiveCollectionChangeListenerTests.java331
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/listener/ReflectiveListChangeListenerTests.java498
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/listener/ReflectivePropertyChangeListenerTests.java176
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/listener/ReflectiveStateChangeListenerTests.java145
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/listener/ReflectiveTreeChangeListenerTests.java362
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/BufferedWritablePropertyValueModelTests.java504
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/CachingTransformationPropertyValueModelTests.java239
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/CachingTransformationWritablePropertyValueModelTests.java259
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/CollectionAspectAdapterTests.java370
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/CollectionListValueModelAdapterTests.java247
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/CollectionPropertyValueModelAdapterTests.java238
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/CompositeBooleanPropertyValueModelTests.java201
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/CompositeCollectionValueModelTests.java415
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/CompositeListValueModelTests.java1248
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/CompositePropertyValueModelTests.java193
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/CoordinatedBag.java163
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/CoordinatedList.java264
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/DoubleModifiablePropertyValueModelTests.java118
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/DoublePropertyValueModelTests.java223
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ExtendedListValueModelWrapperTests.java313
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/FilteringCollectionValueModelTests.java348
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/FilteringPropertyValueModelTests.java194
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ItemCollectionListValueModelAdapterTests.java243
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ItemListListValueModelAdapterTests.java244
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ItemPropertyListValueModelAdapterTests.java335
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ItemStateListValueModelAdapterTests.java306
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/JptUtilityModelValueTests.java78
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ListAspectAdapterTests.java475
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ListCollectionValueModelAdapterTests.java282
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ListCuratorTests.java348
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/NullCollectionValueModelTests.java44
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/NullListValueModelTests.java54
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/NullPropertyValueModelTests.java40
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/PropertyAspectAdapterTests.java343
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/PropertyCollectionValueModelAdapterTests.java162
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/PropertyListValueModelAdapterTests.java211
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ReadOnlyWritablePropertyValueModelWrapperTests.java157
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/SetCollectionValueModelTests.java328
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/SimpleCollectionValueModelTests.java443
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/SimpleListValueModelTests.java378
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/SimplePropertyValueModelTests.java97
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/SortedListValueModelAdapterTests.java222
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/SortedListValueModelWrapperTests.java237
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/StaticCollectionValueModelTests.java62
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/StaticListValueModelTests.java65
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/StaticValueModelTests.java47
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/TransformationListValueModelTests.java339
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/TransformationPropertyValueModelTests.java206
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ValueCollectionAdapterTests.java159
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ValueListAdapterTests.java169
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ValuePropertyAdapterTests.java145
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/ValueStateAdapterTests.java145
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/prefs/JptUtilityModelValuePrefsTests.java31
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/prefs/PreferencePropertyValueModelTests.java398
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/prefs/PreferencesCollectionValueModelTests.java312
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/prefs/PreferencesTestCase.java82
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/CheckBoxModelAdapterTests.java135
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/CheckBoxModelAdapterUITest.java314
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ComboBoxModelAdapterTests.java111
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ComboBoxModelAdapterUITest.java393
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ComboBoxModelAdapterUITest2.java75
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/DateSpinnerModelAdapterTests.java160
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/DocumentAdapterTests.java159
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/DocumentAdapterUITest.java256
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/JptUtilityModelValueSwingTests.java42
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ListModelAdapterTests.java320
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ListModelAdapterUITest.java370
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ListSpinnerModelAdapterTests.java134
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/NumberSpinnerModelAdapterTests.java148
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ObjectListSelectionModelTests.java205
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/PrimitiveListTreeModelTests.java198
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/RadioButtonModelAdapterTests.java230
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/RadioButtonModelAdapterUITest.java260
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/ReadOnlyTableModelAdapterUITest.java39
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/SpinnerModelAdapterTests.java118
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/SpinnerModelAdapterUITest.java344
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/TableModelAdapterTests.java641
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/TableModelAdapterUITest.java733
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/TreeModelAdapterTests.java812
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/model/value/swing/TreeModelAdapterUITest.java425
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/node/AbstractNodeTests.java495
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/node/JptUtilityNodeTests.java29
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/synchronizers/JptUtilitySynchronizersTests.java33
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/synchronizers/SynchronizerTests.java41
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/src/org/eclipse/jpt/common/utility/tests/internal/synchronizers/SynchronousSynchronizerTests.java755
-rw-r--r--common/tests/org.eclipse.jpt.common.utility.tests/test.xml38
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/.project17
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/build.properties13
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/feature.properties43
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/feature.xml69
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateBundle/about.html27
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateBundle/about.ini31
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateBundle/about.mappings6
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateBundle/about.properties26
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateBundle/build.properties21
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateBundle/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateBundle/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateBundle/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateBundle/epl-v10.html328
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateBundle/license.html86
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateBundle/plugin.properties13
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateFeature/build.properties14
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateFeature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplateFeature/feature.properties48
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplatePlugin/about.html27
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplatePlugin/about.ini31
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplatePlugin/about.mappings6
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplatePlugin/about.properties26
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplatePlugin/build.properties21
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplatePlugin/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplatePlugin/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplatePlugin/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplatePlugin/epl-v10.html328
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplatePlugin/license.html86
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature/sourceTemplatePlugin/plugin.properties13
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink_sdk.feature/.cvsignore2
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink_sdk.feature/.project17
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink_sdk.feature/build.properties5
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink_sdk.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink_sdk.feature/feature.properties43
-rw-r--r--jaxb/features/org.eclipse.jpt.dbws.eclipselink_sdk.feature/feature.xml30
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/.project17
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/build.properties13
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/feature.properties43
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/feature.xml63
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateBundle/about.html27
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateBundle/about.ini31
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateBundle/about.mappings6
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateBundle/about.properties26
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateBundle/build.properties21
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateBundle/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateBundle/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateBundle/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateBundle/epl-v10.html328
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateBundle/license.html86
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateBundle/plugin.properties13
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateFeature/build.properties14
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateFeature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplateFeature/feature.properties48
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplatePlugin/about.html27
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplatePlugin/about.ini31
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplatePlugin/about.mappings6
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplatePlugin/about.properties26
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplatePlugin/build.properties21
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplatePlugin/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplatePlugin/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplatePlugin/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplatePlugin/epl-v10.html328
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplatePlugin/license.html86
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/sourceTemplatePlugin/plugin.properties13
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.tests.feature/.cvsignore1
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.tests.feature/.project17
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.tests.feature/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.tests.feature/build.properties7
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.tests.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.tests.feature/feature.properties51
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink.tests.feature/feature.xml32
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink_sdk.feature/.cvsignore2
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink_sdk.feature/.project17
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink_sdk.feature/build.properties5
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink_sdk.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink_sdk.feature/feature.properties43
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.eclipselink_sdk.feature/feature.xml30
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/.project17
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/build.properties13
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/feature.properties43
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/feature.xml55
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateBundle/about.html27
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateBundle/about.ini31
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateBundle/about.mappings6
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateBundle/about.properties26
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateBundle/build.properties12
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateBundle/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateBundle/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateBundle/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateBundle/epl-v10.html328
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateBundle/license.html86
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateBundle/plugin.properties13
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateFeature/build.properties14
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateFeature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplateFeature/feature.properties48
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplatePlugin/about.html27
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplatePlugin/about.ini31
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplatePlugin/about.mappings6
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplatePlugin/about.properties26
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplatePlugin/build.properties12
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplatePlugin/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplatePlugin/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplatePlugin/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplatePlugin/epl-v10.html328
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplatePlugin/license.html86
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.feature/sourceTemplatePlugin/plugin.properties13
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.tests.feature/.cvsignore1
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.tests.feature/.project17
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.tests.feature/build.properties7
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.tests.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.tests.feature/feature.properties51
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb.tests.feature/feature.xml32
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb_sdk.feature/.cvsignore2
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb_sdk.feature/.project17
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb_sdk.feature/build.properties5
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb_sdk.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb_sdk.feature/feature.properties43
-rw-r--r--jaxb/features/org.eclipse.jpt.jaxb_sdk.feature/feature.xml30
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding/.cvsignore1
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding/.project22
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding/META-INF/MANIFEST.MF7
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding/about.html34
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding/about.ini44
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding/about.mappings6
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding/about.properties24
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding/build.properties17
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding/component.xml10
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding/icons/WTP_icon_x32_v2.pngbin5616 -> 0 bytes-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding/plugin.properties13
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/.classpath7
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/.cvsignore1
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/.project28
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/META-INF/MANIFEST.MF13
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/about.html47
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/build.properties16
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/plugin.properties24
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/src/org/eclipse/jpt/dbws/eclipselink/core/gen/Main.java241
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/src/org/eclipse/jpt/dbws/eclipselink/core/gen/internal/JptDbwsCoreMessages.java44
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/src/org/eclipse/jpt/dbws/eclipselink/core/gen/internal/Tools.java110
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen/src/org/eclipse/jpt/dbws/eclipselink/core/gen/internal/jpt_dbws_core.properties17
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/.classpath15
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/.cvsignore1
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/.project28
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/META-INF/MANIFEST.MF31
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/about.html34
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/build.properties18
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/component.xml1
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/icons/full/etool16/newclient_webserv_wiz.gifbin587 -> 0 bytes-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/icons/full/obj16/XSDFile.gifbin574 -> 0 bytes-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/icons/full/obj16/dtdfile.gifbin351 -> 0 bytes-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/icons/full/obj16/text.gifbin349 -> 0 bytes-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/icons/full/ovr16/error_ovr.gifbin82 -> 0 bytes-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/icons/full/wizban/webservicesclient_wiz.gifbin1834 -> 0 bytes-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/plugin.properties31
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/plugin.xml77
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/property_files/jpt_dbws_ui.properties49
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/core/internal/gen/DbwsGenerator.java143
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/JptDbwsUiPlugin.java111
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/DbwsGeneratorUi.java275
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/JptDbwsUiIcons.java18
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/JptDbwsUiMessages.java68
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/actions/GenerateDbwsAction.java27
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/actions/ObjectAction.java63
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/wizards/gen/BuilderXmlWizardPage.java186
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/wizards/gen/DbwsGeneratorWizard.java216
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/wizards/gen/JdbcDriverWizardPage.java355
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/wizards/gen/SelectFileOrXMLCatalogIdPanel.java142
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/wizards/gen/SelectSingleFileViewFacade.java59
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/wizards/gen/SelectXMLCatalogIdPanel.java146
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/wizards/gen/WebDynamicProjectWizardPage.java38
-rw-r--r--jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui/src/org/eclipse/jpt/dbws/eclipselink/ui/internal/wizards/gen/XMLCatalogTableViewer.java195
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.branding/.cvsignore1
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.branding/.project22
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.branding/META-INF/MANIFEST.MF7
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.branding/about.html34
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.branding/about.ini44
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.branding/about.mappings6
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.branding/about.properties24
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.branding/build.properties18
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.branding/component.xml11
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.branding/icons/WTP_icon_x32_v2.pngbin5616 -> 0 bytes-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.branding/plugin.properties13
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.branding/.cvsignore1
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.branding/.project22
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.branding/META-INF/MANIFEST.MF7
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.branding/about.html34
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.branding/about.ini44
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.branding/about.mappings6
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.branding/about.properties24
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.branding/build.properties17
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.branding/component.xml12
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.branding/icons/WTP_icon_x32_v2.pngbin5616 -> 0 bytes-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.branding/plugin.properties13
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/.classpath7
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/.cvsignore1
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/.project28
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/META-INF/MANIFEST.MF12
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/about.html47
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/build.properties17
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/plugin.properties24
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/src/org/eclipse/jpt/jaxb/eclipselink/core/schemagen/Main.java290
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/src/org/eclipse/jpt/jaxb/eclipselink/core/schemagen/internal/JptEclipseLinkJaxbCoreMessages.java43
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/src/org/eclipse/jpt/jaxb/eclipselink/core/schemagen/internal/Tools.java104
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen/src/org/eclipse/jpt/jaxb/eclipselink/core/schemagen/internal/jpt_eclipselink_jaxb_core.properties21
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/.classpath13
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/.cvsignore1
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/.project28
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/META-INF/MANIFEST.MF27
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/about.html34
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/build.properties18
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/icons/full/obj16/xml-inverse-reference.gifbin908 -> 0 bytes-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/icons/full/obj16/xml-transformation.gifbin908 -> 0 bytes-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/plugin.properties23
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/plugin.xml40
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/src/org/eclipse/jpt/jaxb/eclipselink/ui/Activator.java30
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/src/org/eclipse/jpt/jaxb/eclipselink/ui/JptJaxbEclipseLinkUiPlugin.java105
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/src/org/eclipse/jpt/jaxb/eclipselink/ui/internal/ELJaxbMappingImageHelper.java37
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/src/org/eclipse/jpt/jaxb/eclipselink/ui/internal/ELJaxbNavigatorItemLabelProviderFactory.java42
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/src/org/eclipse/jpt/jaxb/eclipselink/ui/internal/ELJaxbNavigatorUi.java36
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/src/org/eclipse/jpt/jaxb/eclipselink/ui/internal/ELJaxbPersistentAttributeItemLabelProvider.java30
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/src/org/eclipse/jpt/jaxb/eclipselink/ui/internal/JptJaxbEclipseLinkUiIcons.java17
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/src/org/eclipse/jpt/jaxb/eclipselink/ui/internal/v2_1/ELJaxb_2_1_PlatformUi.java23
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/src/org/eclipse/jpt/jaxb/eclipselink/ui/internal/v2_2/ELJaxb_2_2_PlatformUi.java23
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/src/org/eclipse/jpt/jaxb/eclipselink/ui/internal/v2_3/ELJaxb_2_3_PlatformUi.java23
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.ui/src/org/eclipse/jpt/jaxb/eclipselink/ui/internal/v2_4/ELJaxb_2_4_PlatformUi.java23
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/.classpath13
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/.cvsignore1
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/.project28
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/META-INF/MANIFEST.MF31
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/about.html34
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/build.properties16
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/plugin.properties23
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/JptJaxbCoreTestsPlugin.java58
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/JaxbCoreTests.java66
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/JaxbTestCase.java82
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/SchemaLibraryTests.java122
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/GenericContextRootTests.java517
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/JaxbContextModelTestCase.java98
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/JaxbCoreContextModelTests.java40
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaAttributeXmlJavaTypeAdapterTests.java185
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaClassMappingTests.java2142
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaElementFactoryMethodTests.java413
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaEnumConstantTests.java137
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaEnumMappingTests.java381
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaPackageInfoTests.java793
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaPackageXmlJavaTypeAdapterTests.java160
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaPersistentAttributeTests.java112
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaRegistryTests.java197
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaTypeXmlJavaTypeAdapterTests.java173
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlAdapterTests.java112
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlAnyAttributeMappingTests.java153
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlAnyElementMappingTests.java533
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlAttributeMappingTests.java731
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlElementMappingTests.java1055
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlElementRefMappingTests.java594
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlElementRefsMappingTests.java415
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlElementsMappingTests.java371
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlRootElementTests.java169
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlSchemaTests.java669
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlSchemaTypeTests.java206
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlSeeAlsoTests.java152
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/GenericJavaXmlValueMappingTests.java306
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/context/java/JaxbCoreJavaContextModelTests.java52
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/projects/TestJaxbProject.java125
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/JaxbCoreResourceModelTests.java41
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/JaxbIndexResourceTests.java94
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/JaxbPropertiesResourceTests.java76
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/JaxbJavaResourceModelTestCase.java41
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/JaxbJavaResourceModelTests.java63
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlAccessorOrderPackageAnnotationTests.java60
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlAccessorOrderTypeAnnotationTests.java94
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlAccessorTypePackageAnnotationTests.java66
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlAccessorTypeTypeAnnotationTests.java106
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlAnyAttributeAnnotationTests.java51
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlAnyElementAnnotationTests.java136
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlAttachmentRefAnnotationTests.java51
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlAttributeAnnotationTests.java174
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlElementAnnotationTests.java305
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlElementDeclAnnotationTests.java280
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlElementRefAnnotationTests.java237
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlElementRefsAnnotationTests.java290
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlElementWrapperAnnotationTests.java203
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlElementsAnnotationTests.java380
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlEnumAnnotationTests.java89
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlEnumValueAnnotationTests.java109
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlIDAnnotationTests.java51
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlIDREFAnnotationTests.java51
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlInlineBinaryDataAttributeAnnotationTests.java51
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlInlineBinaryDataTypeAnnotationTests.java49
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlJavaTypeAdapterPackageAnnotationTests.java267
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlJavaTypeAdapterTypeAnnotationTests.java111
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlListAnnotationTests.java51
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlMimeTypeAnnotationTests.java108
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlMixedAnnotationTests.java51
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlRegistryAnnotationTests.java49
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlRootElementAnnotationTests.java131
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlSchemaAnnotationTests.java263
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlSchemaTypeAttributeAnnotationTests.java156
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlSchemaTypePackageAnnotationTests.java240
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlSeeAlsoAnnotationTests.java144
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlTransientAttributeAnnotationTests.java51
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlTransientTypeAnnotationTests.java49
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlTypeAnnotationTests.java340
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/src/org/eclipse/jpt/jaxb/core/tests/internal/resource/java/XmlValueAnnotationTests.java51
-rw-r--r--jaxb/tests/org.eclipse.jpt.jaxb.core.tests/test.xml35
-rw-r--r--jpa/features/org.eclipse.jpt.eclipselink.feature/.project5
-rw-r--r--jpa/features/org.eclipse.jpt.eclipselink_sdk.feature/.project5
-rw-r--r--jpa/features/org.eclipse.jpt.feature/.project5
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/.cvsignore1
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/.project17
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/build.properties13
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/feature.properties43
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/feature.xml91
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateBundle/about.html27
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateBundle/about.ini31
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateBundle/about.mappings6
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateBundle/about.properties26
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateBundle/build.properties21
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateBundle/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateBundle/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateBundle/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateBundle/epl-v10.html328
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateBundle/license.html86
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateBundle/plugin.properties13
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateFeature/build.properties14
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateFeature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplateFeature/feature.properties48
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplatePlugin/about.html27
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplatePlugin/about.ini31
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplatePlugin/about.mappings6
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplatePlugin/about.properties26
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplatePlugin/build.properties21
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplatePlugin/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplatePlugin/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplatePlugin/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplatePlugin/epl-v10.html328
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplatePlugin/license.html86
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.feature/sourceTemplatePlugin/plugin.properties13
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.tests.feature/.cvsignore1
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.tests.feature/.project17
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.tests.feature/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.tests.feature/build.properties7
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.tests.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.tests.feature/feature.properties51
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink.tests.feature/feature.xml32
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink_sdk.feature/.cvsignore3
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink_sdk.feature/.project17
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink_sdk.feature/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink_sdk.feature/build.properties5
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink_sdk.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink_sdk.feature/feature.properties43
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.eclipselink_sdk.feature/feature.xml30
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/.cvsignore1
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/.project17
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/build.properties13
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/feature.properties43
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/feature.xml121
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateBundle/about.html27
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateBundle/about.ini31
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateBundle/about.mappings6
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateBundle/about.properties26
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateBundle/build.properties12
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateBundle/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateBundle/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateBundle/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateBundle/epl-v10.html328
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateBundle/license.html86
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateBundle/plugin.properties13
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateFeature/build.properties14
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateFeature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplateFeature/feature.properties48
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplatePlugin/about.html27
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplatePlugin/about.ini31
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplatePlugin/about.mappings6
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplatePlugin/about.properties26
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplatePlugin/build.properties12
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplatePlugin/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplatePlugin/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplatePlugin/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplatePlugin/epl-v10.html328
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplatePlugin/license.html86
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.feature/sourceTemplatePlugin/plugin.properties13
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.tests.feature/.cvsignore1
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.tests.feature/.project17
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.tests.feature/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.tests.feature/build.properties7
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.tests.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa.tests.feature/feature.properties51
-rw-r--r--jpa/features/org.eclipse.jpt.jpa.tests.feature/feature.xml38
-rw-r--r--jpa/features/org.eclipse.jpt.jpa_sdk.feature/.cvsignore3
-rw-r--r--jpa/features/org.eclipse.jpt.jpa_sdk.feature/.project17
-rw-r--r--jpa/features/org.eclipse.jpt.jpa_sdk.feature/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--jpa/features/org.eclipse.jpt.jpa_sdk.feature/build.properties5
-rw-r--r--jpa/features/org.eclipse.jpt.jpa_sdk.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa/features/org.eclipse.jpt.jpa_sdk.feature/feature.properties43
-rw-r--r--jpa/features/org.eclipse.jpt.jpa_sdk.feature/feature.xml37
-rw-r--r--jpa/features/org.eclipse.jpt.tests.feature/.project5
-rw-r--r--jpa/features/org.eclipse.jpt_sdk.feature/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.branding/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.db.ui/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.db/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/.project22
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/META-INF/MANIFEST.MF9
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/about.htm43
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/about.html43
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/build.properties136
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/cheatsheets/add_persistence.xml63
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/cheatsheets/create_entity.xml44
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/cheatsheets/map_entity.xml88
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/concept_mapping.htm46
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/concept_persistence.htm41
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/concepts.htm63
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/concepts001.htm43
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/concepts002.htm58
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/concepts003.htm60
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/contexts.xml646
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/dcommon/css/blafdoc.css21
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/dcommon/html/cpyr.htm11
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/getting_started.htm47
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/getting_started001.htm80
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/getting_started002.htm49
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/getting_started003.htm105
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/getting_started004.htm204
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/address.java_jpa_details.pngbin14825 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/address_id_details_quickstart.pngbin11473 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/address_java_JPA_structure_quickstart.pngbin4148 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/create_jpa_entity_wizard.pngbin21428 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/create_jpa_fields.pngbin21454 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/customize_default_entity_generation.pngbin27589 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/customize_individual_entities.pngbin24998 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/details_entitymappings.pngbin10563 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/error_sample.pngbin13762 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/generate_classes_from_schema.pngbin16127 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/generate_entities.pngbin11583 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/icon_basicmapmappings.pngbin361 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/icon_basicmapping.pngbin476 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/inheritance_join.pngbin11615 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/inheritance_single.pngbin3359 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/inheritance_tab.pngbin8101 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/java_editor_address.pngbin8380 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/jaxb_schmea_generation_dialog.pngbin18846 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/jpa_wizard_create_fields.pngbin7864 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/mapped_entity_type_link.pngbin14896 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/mapping_file_new.pngbin19392 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/mapping_type_selection_embed.pngbin15128 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/mapping_type_selection_entity.pngbin14985 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/mapping_type_selection_superclass.pngbin15162 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/modify_faceted_project.pngbin28047 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_basicmappings.pngbin332 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_embeddableentitymapping.pngbin700 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_embeddedidmapping.pngbin477 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_embeddedmapping.pngbin321 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_idmapping.pngbin461 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_manytomanymapping.pngbin311 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_manytoonemapping.pngbin316 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_mappedentity.pngbin682 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_mappedsuperclass.pngbin681 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_onetomanymapping.pngbin325 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_onetoonemapping.pngbin270 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_transientmapping.pngbin303 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_icon_versionmapping.pngbin373 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_jpa_facet_task.pngbin27810 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_jpa_perspective_button.pngbin387 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/new_jpa_project_task.pngbin26056 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/ngrelc.pngbin667 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/ngrelr.pngbin615 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/ngrelt.pngbin568 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/persistence_outline_view.pngbin8746 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/project_properties_tasks.pngbin29075 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/quickstart_project.pngbin9676 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/secondary_tables.pngbin4408 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/select_a_wizard_entity.pngbin20222 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/select_a_wizard_jpa_project.pngbin20446 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/select_a_wizard_mapping.pngbin22231 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/select_jaxb_schema_wizard.pngbin20015 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/select_tables.pngbin21639 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/synchornize_classes.pngbin10643 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/table_associations.pngbin26207 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/table_entity.pngbin9169 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/task_entering_query.pngbin9338 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/img/upgrade_persistence_jpa_version.pngbin5208 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/index.xml668
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/legal.htm40
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/plugin.properties32
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/plugin.xml37
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_EntityClassPage.htm115
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_EntityPropertiesPage.htm117
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_add_converter.htm78
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_association_cardinality.htm65
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_association_table.htm74
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_configure_jaxb_class_generation_dialog.htm77
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_create_custom_entities_wizard.htm53
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_create_jpa_entity_wizard.htm46
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_create_new_association_wizard.htm50
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_customizIndividualEntities.htm89
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_customizeDefaultEntityGeneration.htm96
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_details_orm.htm56
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_eclipselink_mapping_file.htm81
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_java_page.htm74
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_jaxb_schema_wizard.htm50
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_join_columns.htm50
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_jpa_facet.htm122
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_mapping_general.htm272
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_new_jpa_project.htm104
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_new_jpa_project_wizard.htm49
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_persistence_general.htm126
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_persistence_map_view.htm52
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_persistence_outline.htm49
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_persistence_perspective.htm56
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_persistence_prop_view.htm52
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_persistence_xmll_editor.htm82
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_primary_key.htm142
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_project_properties.htm98
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_schema_from_classes_page.htm42
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_selectTables.htm79
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_select_cascade_dialog.htm40
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/ref_tableAssociations.htm78
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference.htm60
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference001.htm58
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference002.htm39
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference003.htm134
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference004.htm49
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference005.htm52
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference006.htm122
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference007.htm80
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference008.htm48
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference009.htm113
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference010.htm47
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference011.htm82
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference012.htm71
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference013.htm98
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference014.htm106
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference015.htm116
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference016.htm76
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference017.htm46
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference018.htm183
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference019.htm221
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference020.htm185
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference021.htm241
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference022.htm170
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference023.htm143
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference024.htm41
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference025.htm46
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference026.htm46
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference027.htm108
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference028.htm49
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference029.htm67
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference030.htm46
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference031.htm125
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference032.htm62
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/reference033.htm53
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/task_add_persistence.htm60
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/task_additonal_tables.htm84
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/task_create_jpa_entity.htm160
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/task_create_new_project.htm141
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/task_generate_classes_from_schema.htm55
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/task_generating_schema_from_classes.htm74
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/task_inheritance.htm138
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/task_manage_orm.htm64
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/task_manage_persistence.htm222
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/task_mapping.htm77
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks.htm81
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks001.htm85
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks002.htm74
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks003.htm43
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks004.htm58
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks005.htm66
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks006.htm96
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks007.htm70
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks008.htm84
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks009.htm65
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks010.htm183
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks011.htm97
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks012.htm91
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks013.htm176
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks014.htm179
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks015.htm167
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks016.htm197
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks017.htm146
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks018.htm66
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks019.htm136
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks020.htm40
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks021.htm95
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks022.htm61
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks023.htm54
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks024.htm92
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks025.htm50
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tasks026.htm63
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/tips_and_tricks.htm68
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/toc.xml155
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/whats_new.htm50
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/whats_new001.htm39
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/whats_new002.htm51
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/whats_new003.htm63
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/whats_new004.htm41
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/whats_new005.htm41
-rw-r--r--jpa/plugins/org.eclipse.jpt.doc.user/whats_new006.htm39
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.branding/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.core.ddlgen/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.core/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.jaxb.core.schemagen/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.eclipselink.ui/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.gen/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.jaxb.core.schemagen/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.jaxb.ui/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/.cvsignore2
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/.project22
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/META-INF/MANIFEST.MF7
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/about.html34
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/about.ini44
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/about.mappings6
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/about.properties24
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/build.properties18
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/component.xml14
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/icons/WTP_icon_x32_v2.pngbin5616 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.branding/plugin.properties13
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db.ui/.classpath7
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db.ui/.cvsignore1
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db.ui/.project28
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db.ui/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db.ui/META-INF/MANIFEST.MF15
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db.ui/about.html34
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db.ui/build.properties16
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db.ui/component.xml12
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db.ui/plugin.properties24
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db.ui/src/org/eclipse/jpt/jpa/db/ui/internal/DTPUiTools.java106
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/.classpath11
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/.cvsignore1
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/.project28
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/META-INF/MANIFEST.MF20
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/about.html34
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/build.properties16
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/component.xml12
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/plugin.properties24
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/Catalog.java25
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/Column.java120
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/ConnectionAdapter.java78
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/ConnectionListener.java41
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/ConnectionProfile.java219
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/ConnectionProfileAdapter.java35
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/ConnectionProfileFactory.java61
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/ConnectionProfileListener.java42
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/Database.java160
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/DatabaseIdentifierAdapter.java57
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/DatabaseObject.java102
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/ForeignKey.java156
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/JptJpaDbPlugin.java140
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/Schema.java102
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/SchemaContainer.java84
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/Sequence.java28
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/Table.java126
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPCatalogWrapper.java96
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPColumnWrapper.java235
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPConnectionProfileFactory.java173
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPConnectionProfileWrapper.java537
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPDatabaseObject.java29
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPDatabaseObjectWrapper.java206
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPDatabaseWrapper.java358
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPForeignKeyWrapper.java337
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPSchemaContainerWrapper.java227
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPSchemaWrapper.java338
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPSequenceWrapper.java70
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/DTPTableWrapper.java412
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/AbstractDTPDriverAdapter.java488
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/CatalogStrategy.java41
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/DB2.java48
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/DTPDriverAdapter.java140
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/DTPDriverAdapterFactory.java27
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/DTPDriverAdapterManager.java84
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/Derby.java63
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/FauxCatalogStrategy.java72
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/FoldingStrategy.java28
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/HSQLDB.java53
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/Informix.java58
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/LowerCaseFoldingStrategy.java49
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/MaxDB.java52
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/MySQL.java311
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/NoCatalogStrategy.java45
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/NonFoldingStrategy.java57
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/Oracle.java51
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/PostgreSQL.java94
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/SQLServer.java111
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/SimpleCatalogStrategy.java46
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/Sybase.java120
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/Unknown.java44
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/UnknownCatalogStrategy.java96
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.db/src/org/eclipse/jpt/jpa/db/internal/driver/UpperCaseFoldingStrategy.java49
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/.cvsignore1
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/.project22
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/META-INF/MANIFEST.MF7
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/about.html34
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/about.ini44
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/about.mappings6
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/about.properties24
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/build.properties18
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/component.xml9
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/icons/WTP_icon_x32_v2.pngbin5616 -> 0 bytes-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.branding/plugin.properties13
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.core.ddlgen/.classpath7
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.core.ddlgen/.cvsignore1
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.core.ddlgen/.project28
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.core.ddlgen/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.core.ddlgen/META-INF/MANIFEST.MF11
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.core.ddlgen/about.html47
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.core.ddlgen/build.properties16
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.core.ddlgen/plugin.properties23
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.eclipselink.core.ddlgen/src/org/eclipse/jpt/jpa/eclipselink/core/ddlgen/Main.java169
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/.classpath8
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/.cvsignore1
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/.project28
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/META-INF/MANIFEST.MF25
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/about.html34
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/build.properties18
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/component.xml12
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/plugin.properties23
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/property_files/jpt_gen.properties20
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/Association.java388
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/AssociationRole.java277
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/BaseEntityGenCustomizer.java230
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/DatabaseAnnotationNameBuilder.java108
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/JptGenMessages.java38
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/JptJpaGenPlugin.java33
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/ORMGenColumn.java419
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/ORMGenCustomizer.java824
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/ORMGenTable.java1037
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/OverwriteConfirmer.java72
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/PackageGenerator.java325
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/TagNames.java46
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/util/CompilationUnitModifier.java131
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/util/DTPUtil.java80
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/util/EntityGenTools.java80
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/util/FileUtil.java218
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/util/ForeignKeyInfo.java120
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/util/StringUtil.java648
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/src/org/eclipse/jpt/jpa/gen/internal/util/UrlUtil.java125
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/templates/entities/column.vm54
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/templates/entities/join.vm81
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/templates/entities/main.java.vm134
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/templates/entities/manyToMany.vm26
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/templates/entities/manyToOne.vm13
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/templates/entities/mappingKind.vm34
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/templates/entities/oneToMany.vm18
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/templates/entities/oneToOne.vm22
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.gen/templates/entities/pk.java.vm66
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/.project5
-rw-r--r--jpa/plugins/org.eclipse.jpt.utility/.project5
-rw-r--r--jpa/tests/org.eclipse.jpt.core.tests.extension.resource/.project5
-rw-r--r--jpa/tests/org.eclipse.jpt.core.tests/.project5
-rw-r--r--jpa/tests/org.eclipse.jpt.db.tests/.project5
-rw-r--r--jpa/tests/org.eclipse.jpt.eclipselink.core.tests/.project5
-rw-r--r--jpa/tests/org.eclipse.jpt.gen.tests/.project5
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/.classpath13
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/.cvsignore1
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/.project28
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/META-INF/MANIFEST.MF25
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/about.html34
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/build.properties17
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/plugin.properties23
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/plugin.xml34
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/src/org/eclipse/jpt/jpa/core/tests/extension/resource/ExtensionTestPlugin.java55
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/src/org/eclipse/jpt/jpa/core/tests/extension/resource/JavaTestAttributeMapping.java35
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/src/org/eclipse/jpt/jpa/core/tests/extension/resource/JavaTestAttributeMappingDefinition.java63
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/src/org/eclipse/jpt/jpa/core/tests/extension/resource/JavaTestTypeMapping.java48
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/src/org/eclipse/jpt/jpa/core/tests/extension/resource/JavaTestTypeMappingDefinition.java54
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/src/org/eclipse/jpt/jpa/core/tests/extension/resource/TestJavaBasicMapping.java21
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/src/org/eclipse/jpt/jpa/core/tests/extension/resource/TestJavaEntity.java31
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/src/org/eclipse/jpt/jpa/core/tests/extension/resource/TestJpaFactory.java39
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/src/org/eclipse/jpt/jpa/core/tests/extension/resource/TestJpaPlatformFactory.java72
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/src/org/eclipse/jpt/jpa/core/tests/extension/resource/TestJpaPlatformProvider.java163
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource/src/org/eclipse/jpt/jpa/core/tests/extension/resource/TestJpaPlatformUiFactory.java34
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/.classpath15
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/.cvsignore1
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/.project28
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/META-INF/MANIFEST.MF45
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/about.html34
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/build.properties16
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/plugin.properties23
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/JptJpaCoreTestsPlugin.java66
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/MiscTests.java65
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/JptJpaCoreTests.java75
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/ContextModelTestCase.java235
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/JpaFileTests.java445
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/JpaProjectTests.java172
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/JptJpaCoreContextModelTests.java52
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/GenericJavaPersistentAttributeTests.java313
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/GenericJavaPersistentTypeTests.java935
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaAssociationOverrideTests.java447
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaAttributeOverrideTests.java261
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaBasicMappingTests.java997
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaCascadeTests.java322
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaColumnTests.java844
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaDiscriminatorColumnTests.java459
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaEmbeddableTests.java171
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaEmbeddedIdMappingTests.java656
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaEmbeddedMappingTests.java861
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaEntityTests.java3438
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaGeneratedValueTests.java151
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaIdMappingTests.java716
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaJoinColumnTests.java550
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaJoinTableTests.java1179
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaManyToManyMappingTests.java1183
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaManyToOneMappingTests.java964
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaMappedSuperclassTests.java289
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaNamedNativeQueryTests.java433
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaNamedQueryTests.java334
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaOneToManyMappingTests.java1163
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaOneToOneMappingTests.java1516
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaPrimaryKeyJoinColumnTests.java304
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaQueryHintTests.java150
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaSecondaryTableTests.java731
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaSequenceGeneratorTests.java236
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaTableGeneratorTests.java672
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaTableTests.java611
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaTransientMappingTests.java250
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JavaVersionMappingTests.java401
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/java/JptCoreContextJavaModelTests.java59
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/EntityMappingsTests.java1066
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/GenericOrmPersistentAttributeTests.java319
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/GenericOrmPersistentTypeTests.java502
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/JptCoreOrmContextModelTests.java62
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmAssociationOverrideTests.java267
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmAttributeOverrideTests.java99
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmBasicMappingTests.java724
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmCascadeTests.java290
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmColumnTests.java856
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmDiscriminatorColumnTests.java456
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmEmbeddableTests.java295
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmEmbeddedIdMappingTests.java928
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmEmbeddedMappingTests.java948
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmEntityTests.java2803
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmGeneratedValueTests.java138
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmIdMappingTests.java767
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmJoinColumnTests.java522
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmJoinTableTests.java1386
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmManyToManyMappingTests.java1088
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmManyToOneMappingTests.java629
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmMappedSuperclassTests.java386
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmNamedNativeQueryTests.java358
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmNamedQueryTests.java273
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmOneToManyMappingTests.java1080
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmOneToOneMappingTests.java1220
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmPrimaryKeyJoinColumnTests.java253
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmQueryHintTests.java122
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmSecondaryTableTests.java767
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmSequenceGeneratorTests.java172
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmTableGeneratorTests.java609
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmTableTests.java827
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmTransientMappingTests.java309
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmVersionMappingTests.java493
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/OrmXmlTests.java69
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/PersistenceUnitDefaultsTests.java369
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/orm/PersistenceUnitMetadataTests.java104
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/persistence/ClassRefTests.java113
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/persistence/JptCorePersistenceContextModelTests.java33
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/persistence/MappingFileRefTests.java98
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/persistence/PersistenceTests.java134
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/persistence/PersistenceUnitTestCase.java367
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/persistence/PersistenceUnitTests.java1245
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/persistence/PersistenceXmlTests.java56
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/context/persistence/RootContextNodeTests.java53
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/Generic2_0ContextModelTestCase.java46
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/Generic2_0JavaContextModelTests.java45
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaAssociationOverride2_0Tests.java580
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaBasicMapping2_0Tests.java417
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaCascade2_0Tests.java107
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaCollectionTable2_0Tests.java723
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaElementCollectionMapping2_0Tests.java2615
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaEmbeddedIdMapping2_0Tests.java368
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaEmbeddedMapping2_0Tests.java1608
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaEntity2_0Tests.java2057
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaIdMapping2_0Tests.java423
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaManyToManyMapping2_0Tests.java1953
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaManyToOneMapping2_0Tests.java682
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaOneToManyMapping2_0Tests.java2214
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaOneToOneMapping2_0Tests.java1141
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaPersistentAttribute2_0Tests.java162
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaPersistentType2_0Tests.java863
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaSequenceGenerator2_0Tests.java197
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/java/GenericJavaVersionMapping2_0Tests.java352
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/Generic2_0OrmContextModelTests.java41
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmAssociationOverride2_0Tests.java534
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmCascade2_0Tests.java91
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmCollectionTable2_0Tests.java770
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmElementCollectionMapping2_0Tests.java1741
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmEmbeddedMapping2_0Tests.java1739
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmEntity2_0Tests.java1972
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmManyToManyMapping2_0Tests.java1209
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmManyToOneMapping2_0Tests.java673
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmOneToManyMapping2_0Tests.java1500
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmOneToOneMapping2_0Tests.java992
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmPersistentAttribute2_0Tests.java565
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmPersistentType2_0Tests.java285
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/orm/GenericOrmSequenceGenerator2_0Tests.java91
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/persistence/Generic2_0ConnectionTests.java186
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/persistence/Generic2_0OptionsTests.java520
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/persistence/Generic2_0PersistenceContextModelTests.java30
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/context/persistence/Generic2_0PersistenceUnitTests.java58
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/Access2_0AnnotationTests.java177
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/AssociationOverride2_0Tests.java861
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/AssociationOverrides2_0Tests.java949
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/Cacheable2_0AnnotationTests.java106
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/CollectionTable2_0AnnotationTests.java499
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/ElementCollection2_0AnnotationTests.java170
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/JavaResource2_0Tests.java48
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/JavaResourceModel2_0TestCase.java29
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/ManyToMany2_0AnnotationTests.java410
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/ManyToOne2_0AnnotationTests.java403
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/MapKeyClass2_0AnnotationTests.java109
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/MapKeyColumn2_0AnnotationTests.java405
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/MapKeyEnumerated2_0AnnotationTests.java92
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/MapKeyJoinColumn2_0AnnotationTests.java358
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/MapKeyJoinColumns2_0AnnotationTests.java448
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/MapKeyTemporal2_0AnnotationTests.java90
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/MapsId2_0AnnotationTests.java87
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/OneToMany2_0AnnotationTests.java413
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/OneToOne2_0AnnotationTests.java463
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/OrderColumn2_0AnnotationTests.java253
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/jpa2/resource/java/SequenceGenerator2_0AnnotationTests.java116
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/model/JpaProjectManagerTests.java288
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/model/JptJpaCoreModelTests.java28
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/platform/BaseJpaPlatformTests.java77
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/platform/JpaPlatformExtensionTests.java96
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/platform/JpaPlatformTests.java129
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/projects/TestJpaProject.java101
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/JptJpaCoreResourceModelTests.java42
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/AssociationOverrideTests.java251
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/AssociationOverridesTests.java344
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/AttributeOverrideTests.java163
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/AttributeOverridesTests.java298
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/BasicTests.java152
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/ColumnTests.java405
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/DiscriminatorColumnTests.java212
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/DiscriminatorValueTests.java83
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/EmbeddableTests.java74
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/EmbeddedIdTests.java51
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/EmbeddedTests.java51
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/EntityTests.java124
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/EnumeratedTests.java90
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/GeneratedValueTests.java134
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/IdClassTests.java103
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/IdTests.java51
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/InheritanceTests.java83
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/JPTToolsTests.java479
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/JavaResourceAttributeTests.java718
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/JavaResourceModelTestCase.java173
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/JavaResourceTypeTests.java679
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/JoinColumnTests.java353
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/JoinColumnsTests.java446
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/JoinTableTests.java656
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/JpaJavaResourceModelTestCase.java48
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/JptJavaResourceTests.java75
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/LobTests.java50
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/ManyToManyTests.java395
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/ManyToOneTests.java388
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/MapKeyTests.java89
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/MappedSuperclassTests.java74
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/NamedNativeQueriesTests.java425
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/NamedNativeQueryTests.java341
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/NamedQueriesTests.java339
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/NamedQueryTests.java259
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/OneToManyTests.java398
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/OneToOneTests.java448
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/OrderByTests.java88
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/PrimaryKeyJoinColumnTests.java188
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/PrimaryKeyJoinColumnsTests.java273
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/QueryHintTests.java65
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/SecondaryTableTests.java436
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/SecondaryTablesTests.java503
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/SequenceGeneratorTests.java234
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/TableGeneratorTests.java502
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/TableTests.java346
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/TemporalTests.java89
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/TransientTests.java51
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/src/org/eclipse/jpt/jpa/core/tests/internal/resource/java/VersionTests.java50
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.core.tests/test.xml35
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/.classpath11
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/.cvsignore1
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/.project28
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/META-INF/MANIFEST.MF19
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/about.html34
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/build.properties14
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/config/derby.properties24
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/config/mysql.properties23
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/config/oracle10g.properties24
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/config/oracle10gXE.properties24
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/config/oracle9i.properties24
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/config/postgresql.properties23
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/config/sqlserver.properties24
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/config/sybase.properties24
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/plugin.properties24
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/JDBCTests.java135
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/JDBCTools.java105
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/JptJpaDbTests.java34
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/JptJpaDbTestsPlugin.java56
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/platforms/AllPlatformTests.java37
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/platforms/DTPPlatformTests.java1030
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/platforms/DerbyTests.java482
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/platforms/MySQLTests.java417
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/platforms/Oracle10gTests.java397
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/platforms/Oracle10gXETests.java79
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/platforms/Oracle9iTests.java79
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/platforms/PostgreSQLTests.java486
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/platforms/SQLServerTests.java83
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.db.tests/src/org/eclipse/jpt/jpa/db/tests/internal/platforms/SybaseTests.java443
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.gen.tests/.classpath11
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.gen.tests/.cvsignore1
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.gen.tests/.project28
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.gen.tests/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.gen.tests/META-INF/MANIFEST.MF14
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.gen.tests/about.html34
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.gen.tests/build.properties16
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.gen.tests/plugin.properties23
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.gen.tests/src/org/eclipse/jpt/jpa/gen/tests/internal/EntityGenToolsTests.java143
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.gen.tests/src/org/eclipse/jpt/jpa/gen/tests/internal/JptJpaGenTests.java32
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.gen.tests/test.xml49
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.ui.tests/.classpath14
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.ui.tests/.cvsignore1
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.ui.tests/.project28
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.ui.tests/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.ui.tests/META-INF/MANIFEST.MF23
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.ui.tests/build.properties13
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.ui.tests/plugin.properties23
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.ui.tests/src/org/eclipse/jpt/jpa/ui/tests/JptUiTests.java32
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.ui.tests/src/org/eclipse/jpt/jpa/ui/tests/internal/platform/JpaPlatformUiExtensionTests.java65
-rw-r--r--jpa/tests/org.eclipse.jpt.jpa.ui.tests/src/org/eclipse/jpt/jpa/ui/tests/internal/platform/JptUiPlatformTests.java27
-rw-r--r--jpa/tests/org.eclipse.jpt.ui.tests/.project5
-rw-r--r--jpa/tests/org.eclipse.jpt.utility.tests/.project5
-rw-r--r--jpa_diagram_editor/development/org.eclipse.jpt.jpadiagrameditor.releng/.project11
-rw-r--r--jpa_diagram_editor/development/org.eclipse.jpt.jpadiagrameditor.releng/pom.xml59
-rw-r--r--jpa_diagram_editor/development/org.eclipse.jpt.jpadiagrameditor.repository/.project17
-rw-r--r--jpa_diagram_editor/development/org.eclipse.jpt.jpadiagrameditor.repository/pom.xml28
-rw-r--r--jpa_diagram_editor/development/org.eclipse.jpt.jpadiagrameditor.repository/site.xml7
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/.cvsignore1
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/.project17
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/build.properties13
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/feature.properties43
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/feature.xml49
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/pom.xml16
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateBundle/about.html27
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateBundle/about.ini31
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateBundle/about.mappings6
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateBundle/about.properties15
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateBundle/build.properties11
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateBundle/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateBundle/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateBundle/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateBundle/epl-v10.html328
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateBundle/license.html86
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateBundle/plugin.properties2
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateFeature/build.properties4
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateFeature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplateFeature/feature.properties38
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplatePlugin/about.html27
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplatePlugin/about.ini31
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplatePlugin/about.mappings6
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplatePlugin/about.properties16
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplatePlugin/build.properties11
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplatePlugin/eclipse32.gifbin1706 -> 0 bytes-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplatePlugin/eclipse32.pngbin4634 -> 0 bytes-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplatePlugin/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplatePlugin/epl-v10.html328
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplatePlugin/license.html86
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature/sourceTemplatePlugin/plugin.properties3
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.tests.feature/.cvsignore2
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.tests.feature/.project17
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.tests.feature/build.properties7
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.tests.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.tests.feature/feature.properties43
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.tests.feature/feature.xml34
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor_sdk.feature/.cvsignore2
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor_sdk.feature/.project17
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor_sdk.feature/build.properties5
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor_sdk.feature/eclipse_update_120.jpgbin21695 -> 0 bytes-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor_sdk.feature/feature.properties43
-rw-r--r--jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor_sdk.feature/feature.xml30
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding/.cvsignore1
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding/.project22
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding/META-INF/MANIFEST.MF7
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding/about.html34
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding/about.ini33
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding/about.mappings6
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding/about.properties13
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding/build.properties8
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding/component.xml7
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding/icons/WTP_icon_x32_v2.pngbin5616 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding/plugin.properties2
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/.project22
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/META-INF/MANIFEST.MF8
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/about.html34
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/build.properties9
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/html/getting_started.html67
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/html/reference_project_page.html69
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/html/task_20_support.html48
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/html/task_configuring_editor.html66
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/html/task_manage_entities.html107
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/html/task_open_diagram.html62
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/html/task_open_miniature_view.html43
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/html/task_refactor_entities.html105
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/html/task_remove_entities.html57
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/html/toc.html13
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/img/jpa_diagram_delete_attribute.gifbin5379 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/img/jpa_diagram_editor.gifbin11668 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/img/jpa_diagram_entity_operations.gifbin7342 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/img/jpa_miniature_view.gifbin6940 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/img/jpaeditor_entity.gifbin1775 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/plugin.properties13
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/plugin.xml16
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user/toc.xml31
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/.classpath7
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/.cvsignore1
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/.project28
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/META-INF/MANIFEST.MF44
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/about.html47
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/build.properties18
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/component.xml1
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/CompoundKey.gifbin923 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/EJB_15x16.gifbin140 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/cmpEntity_obj.gifbin581 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/add_attribute.gifbin913 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/add_entity.gifbin1013 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/basic.gifbin897 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/embeddable.gifbin1003 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/embedded-id.gifbin953 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/embedded.gifbin905 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/entity-mappings.gifbin974 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/entity.gifbin1010 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/id.gifbin938 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/jpa-content.gifbin896 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/jpa-file.gifbin968 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/many-to-many-1-dir.gifbin933 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/many-to-many-2-dir.gifbin935 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/many-to-many.gifbin328 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/many-to-one-1-dir.gifbin917 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/many-to-one-2-dir.gifbin923 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/many-to-one.gifbin307 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/mapped-superclass.gifbin1005 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/null-attribute-mapping.gifbin911 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/null-type-mapping.gifbin586 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/one-to-many-1-dir.gifbin915 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/one-to-many.gifbin306 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/one-to-one-1-dir.gifbin889 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/one-to-one-2-dir.gifbin896 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/one-to-one.gifbin283 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/persistence-unit.gifbin931 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/persistence.gifbin961 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/remove_attribute.gifbin918 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/transient.gifbin892 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/version.gifbin321 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/ent/warning.gifbin338 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/restore.gifbin224 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/save.gifbin914 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/icons/save_and_remove.gifbin905 -> 0 bytes-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/plugin.properties31
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/plugin.xml149
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/pom.xml16
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/JPADiagramEditor.java316
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/JPADiagramEditorPlugin.java129
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/dialog/SelectTypeDialog.java265
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/facade/DisplayFacade.java27
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/facade/EclipseFacade.java47
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/facade/JavaCoreFacade.java29
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/facade/StaticIDE.java38
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/AddAllEntitiesFeature.java180
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/AddAttributeFeature.java117
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/AddJPAEntityFeature.java447
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/AddRelationFeature.java295
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/ClickAddAttributeButtonFeature.java98
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/ClickRemoveAttributeButtonFeature.java119
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CollapseAllEntitiesFeature.java84
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CollapseCompartmentShapeFeature.java94
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CollapseEntityFeature.java101
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateJPAEntityFeature.java178
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateJPAEntityFromMappedSuperclassFeature.java98
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateManyToManyBiDirRelationFeature.java64
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateManyToManyRelationFeature.java28
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateManyToManyUniDirRelationFeature.java56
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateManyToOneBiDirRelationFeature.java64
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateManyToOneRelationFeature.java27
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateManyToOneUniDirRelationFeature.java56
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateOneToManyRelationFeature.java27
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateOneToManyUniDirRelationFeature.java58
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateOneToOneBiDirRelationFeature.java63
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateOneToOneRelationFeature.java26
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateOneToOneUniDirRelationFeature.java58
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/CreateRelationFeature.java93
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DeleteJPAEntityFeature.java109
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DeleteRelationFeature.java136
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DirectEditAttributeFeature.java132
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DirectEditJPAEntityFeature.java167
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/DiscardAndRemoveAllEntitiesFeature.java65
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/ExpandAllEntitiesFeature.java91
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/ExpandCompartmentShapeFeature.java114
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/ExpandEntityFeature.java108
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/GraphicalAddAttributeFeature.java143
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/GraphicalRemoveAttributeFeature.java154
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/JPAMoveConnectionDecoratorFeature.java31
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/LayoutJPAEntityFeature.java227
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/MoveAttributeFeature.java50
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/MoveEntityFeature.java47
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/MoveEntityShapeFeature.java72
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/OpenJPADetailsViewFeature.java52
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/OpenMiniatureViewFeature.java52
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/RefactorAttributeTypeFeature.java102
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/RefactorEntityFeature.java364
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/RemoveAllEntitiesFeature.java65
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/RemoveAndSaveEntityFeature.java70
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/RemoveAttributeFeature.java161
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/RemoveJPAEntityFeature.java131
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/RemoveRelationFeature.java136
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/RenameEntityFeature.java48
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/RenameEntityWithoutUIFeature.java45
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/ResizeAttributeFeature.java44
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/ResizeJPAEntityFeature.java76
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/RestoreEntityFeature.java75
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/SaveAndRemoveAllEntitiesFeature.java64
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/SaveEntityFeature.java51
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/feature/UpdateAttributeFeature.java147
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/i18n/JPAEditorMessages.java268
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/i18n/messages.properties215
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/modelintegration/ui/JPADiagramEditorInput.java142
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/modelintegration/ui/JPAEditorMatchingStrategy.java133
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/modelintegration/ui/OpenJpaDiagramActionDelegate.java210
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/modelintegration/util/CreateDiagramJob.java70
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/modelintegration/util/IModelIntegrationUtil.java23
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/modelintegration/util/ModelIntegrationUtil.java367
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/modelintegration/util/ModelIntegrationUtilImpl.java26
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/preferences/JPAEditorPreferenceInitializer.java77
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/preferences/JPAEditorPreferencesPage.java313
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/propertypage/JPADiagramPropertyPage.java631
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/propertytester/JpaProjectFacetVersionPropertyTester.java26
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/provider/AddEntityContext.java54
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/provider/IAddEntityContext.java26
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/provider/IJPAEditorFeatureProvider.java102
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/provider/IJPAEditorImageCreator.java49
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/provider/JPAEditorContextMenuProvider.java45
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/provider/JPAEditorDiagramTypeProvider.java317
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/provider/JPAEditorFeatureProvider.java641
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/provider/JPAEditorImageCreator.java110
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/provider/JPAEditorImageProvider.java95
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/provider/JPAEditorToolBehaviorProvider.java619
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/AbstractRelation.java127
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/BidirectionalRelation.java30
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/IRelation.java57
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/ManyToManyBiDirRelation.java117
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/ManyToManyRelation.java30
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/ManyToManyUniDirRelation.java79
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/ManyToOneBiDirRelation.java106
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/ManyToOneRelation.java30
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/ManyToOneUniDirRelation.java76
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/OneToManyRelation.java30
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/OneToManyUniDirRelation.java77
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/OneToOneBiDirRelation.java103
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/OneToOneRelation.java31
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/OneToOneUniDirRelation.java75
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/relations/UnidirectionalRelation.java26
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/EntitiesCoordinatesXML.java243
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/EntityChangeListener.java199
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/GraphicsUpdater.java198
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/GraphicsUpdaterImpl.java26
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/IDisplayFacade.java21
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/IEclipseFacade.java29
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/IGraphicsUpdater.java24
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/IJPADiagramEditorInput.java27
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/IJPAEditorUtil.java75
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/IJavaCoreFacade.java24
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/IJpaSolver.java27
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/IPeServiceUtil.java35
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/IStaticIDE.java24
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/JPACheckSum.java120
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/JPAEditorConstants.java226
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/JPAEditorUtil.java1475
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/JPAEditorUtilImpl.java104
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/JPASolver.java1473
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/JpaArtifactFactory.java2282
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/PeServiceUtilImpl.java46
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/ResourceChangeListener.java55
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/SizePosition.java53
-rw-r--r--jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/Wrp.java30
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/.classpath12
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/.cvsignore1
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/.project28
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/META-INF/MANIFEST.MF39
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/about.html34
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/build.properties16
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/plugin.properties14
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/pom.xml42
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/AllJpaEditorTests.java120
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/JPACreateFactory.java640
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/JPAEditorTestsActivator.java65
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/editor/CreateDiagramTest.java63
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/editor/EditorTest.java166
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/AddAttributeFeatureTest.java188
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/AddJPAEntityFeatureTest.java277
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/AddRelationFeatureTest.java329
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/ClickAddFeatureTest.java116
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/CreateDeleteOnlyAttributeTest.java225
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/CreateRelationFeaturesTest.java556
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/DeleteRelationFeatureTest.java76
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/DirectEditAttributeFeatureTest.java114
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/LayoutEntityFeatureTest.java60
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/OpenMiniatureViewFeatureTest.java63
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/RefactorAttributeTypeFeatureTest.java96
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/RemoveAttributeFeatureTest.java112
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/SaveEntityFeatureTest.java104
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/feature/UpdateAttributeFeatureTest.java120
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/listener/JPAProjectListenerTest.java131
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/modelintegration/ui/ModelIntegrationTest.java221
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/modelintegration/util/ModelIntegrationUtilTest.java88
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/preferences/JPAEditorPreferenceInitializerTest.java38
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/preferences/JPAEditorPreferencesPageTest.java86
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/provider/JPAEditorFeatureProviderTest.java169
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/provider/JPAEditorToolBehaviorProviderTest.java252
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/relation/CreateRelationAttributesTest.java604
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/relation/CreateRelationsInFieldAnnotatedEntitiesTest.java492
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/relation/CreateRelationsTest.java481
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/util/CreateDeleteEntity.java117
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/util/IEditor.java22
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/util/JPAEditorUtilTest.java418
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/util/JPASolverTest.java167
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/util/JpaArtifactFactoryTest.java204
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/src/org/eclipse/jpt/jpadiagrameditor/ui/tests/internal/util/URLEscaper.java18
-rw-r--r--jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests/test.xml48
2275 files changed, 0 insertions, 398768 deletions
diff --git a/assembly/features/org.eclipse.jpt.assembly.feature/.cvsignore b/assembly/features/org.eclipse.jpt.assembly.feature/.cvsignore
deleted file mode 100644
index de8b73fb72..0000000000
--- a/assembly/features/org.eclipse.jpt.assembly.feature/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-build.xml
-org.eclipse.jpt_1.0.0.*
diff --git a/assembly/features/org.eclipse.jpt.assembly.feature/.project b/assembly/features/org.eclipse.jpt.assembly.feature/.project
deleted file mode 100644
index 1e211aff8d..0000000000
--- a/assembly/features/org.eclipse.jpt.assembly.feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.assembly.feature</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.FeatureBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.FeatureNature</nature>
- </natures>
-</projectDescription>
diff --git a/assembly/features/org.eclipse.jpt.assembly.feature/build.properties b/assembly/features/org.eclipse.jpt.assembly.feature/build.properties
deleted file mode 100644
index e69de29bb2..0000000000
--- a/assembly/features/org.eclipse.jpt.assembly.feature/build.properties
+++ /dev/null
diff --git a/assembly/features/org.eclipse.jpt.assembly.feature/eclipse_update_120.jpg b/assembly/features/org.eclipse.jpt.assembly.feature/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/assembly/features/org.eclipse.jpt.assembly.feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/assembly/features/org.eclipse.jpt.assembly.feature/feature.properties b/assembly/features/org.eclipse.jpt.assembly.feature/feature.properties
deleted file mode 100644
index 67207bfc0c..0000000000
--- a/assembly/features/org.eclipse.jpt.assembly.feature/feature.properties
+++ /dev/null
@@ -1,50 +0,0 @@
-###############################################################################
-# Copyright (c) 2006 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
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Dali Java Persistence Tools
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-# "updateSiteName" property - label for the update site
-updateSiteName=The Eclipse Web Tools Platform (WTP) Project update site
-
-# "description" property - description of the feature
-description=Dali Java Persistence Tools - Runtime
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-########### end of license property ##########################################
diff --git a/assembly/features/org.eclipse.jpt.assembly.feature/feature.xml b/assembly/features/org.eclipse.jpt.assembly.feature/feature.xml
deleted file mode 100644
index eb5e52803e..0000000000
--- a/assembly/features/org.eclipse.jpt.assembly.feature/feature.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
- id="org.eclipse.jpt.assembly.feature"
- label="%featureName"
- version="2.3.1.qualifier"
- provider-name="%providerName"
- image="eclipse_update_120.jpg"
- license-feature="org.eclipse.license"
- license-feature-version="1.0.0.qualifier">
-
- <description>
- %description
- </description>
-
- <copyright>
- %copyright
- </copyright>
-
- <license url="license.html">
- %license
- </license>
-
- <url>
- <update label="%updateSiteName" url="http://download.eclipse.org/webtools/updates"/>
- <discovery label="Web Tools Platform (WTP) Updates" url="http://download.eclipse.org/webtools/updates"/>
- </url>
-
- <includes
- id="org.eclipse.jpt.common.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.common.eclipselink.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jpa.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jpa.eclipselink.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jaxb.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jaxb.eclipselink.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.dbws.eclipselink.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jpadiagrameditor.feature"
- version="0.0.0"/>
-
-</feature>
diff --git a/assembly/features/org.eclipse.jpt.patch/.project b/assembly/features/org.eclipse.jpt.patch/.project
deleted file mode 100644
index b7a2bf552d..0000000000
--- a/assembly/features/org.eclipse.jpt.patch/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.patch</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.FeatureBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.FeatureNature</nature>
- </natures>
-</projectDescription>
diff --git a/assembly/features/org.eclipse.jpt.patch/build.properties b/assembly/features/org.eclipse.jpt.patch/build.properties
deleted file mode 100644
index c381fb22bb..0000000000
--- a/assembly/features/org.eclipse.jpt.patch/build.properties
+++ /dev/null
@@ -1,10 +0,0 @@
-bin.includes = feature.xml,\
- license.html,\
- feature.properties,\
- epl-v10.html,\
- eclipse_update_120.jpg
-src.includes = eclipse_update_120.jpg,\
- epl-v10.html,\
- feature.properties,\
- feature.xml,\
- license.html
diff --git a/assembly/features/org.eclipse.jpt.patch/buildnotes_org.eclipse.jpt.patch.html b/assembly/features/org.eclipse.jpt.patch/buildnotes_org.eclipse.jpt.patch.html
deleted file mode 100644
index 0d115f43fb..0000000000
--- a/assembly/features/org.eclipse.jpt.patch/buildnotes_org.eclipse.jpt.patch.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <meta name="Build" content="Build">
- <title>Java Persistence Tools (JTP) 1.0.2 Patches</title>
-</head>
-
-<body>
-
-<h1>JTP 2.0.2 Patches</h1>
-
-<h2>Feature Patched: org.eclipse.jpt.patch</h2>
-<h3>Plugin(s) replaced:</h3>
-<ul><li>org.eclipse.jpt.gen</li></ul>
-<p>Bug <a href='https://bugs.eclipse.org/220297'>220297</a>. Entity generation creates Embeddables with compile errors in some cases.</p>
-
-
-</body></html> \ No newline at end of file
diff --git a/assembly/features/org.eclipse.jpt.patch/eclipse_update_120.jpg b/assembly/features/org.eclipse.jpt.patch/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/assembly/features/org.eclipse.jpt.patch/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/assembly/features/org.eclipse.jpt.patch/epl-v10.html b/assembly/features/org.eclipse.jpt.patch/epl-v10.html
deleted file mode 100644
index ed4b196655..0000000000
--- a/assembly/features/org.eclipse.jpt.patch/epl-v10.html
+++ /dev/null
@@ -1,328 +0,0 @@
-<html xmlns:o="urn:schemas-microsoft-com:office:office"
-xmlns:w="urn:schemas-microsoft-com:office:word"
-xmlns="http://www.w3.org/TR/REC-html40">
-
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
-<meta name=ProgId content=Word.Document>
-<meta name=Generator content="Microsoft Word 9">
-<meta name=Originator content="Microsoft Word 9">
-<link rel=File-List
-href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
-<title>Eclipse Public License - Version 1.0</title>
-<!--[if gte mso 9]><xml>
- <o:DocumentProperties>
- <o:Revision>2</o:Revision>
- <o:TotalTime>3</o:TotalTime>
- <o:Created>2004-03-05T23:03:00Z</o:Created>
- <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved>
- <o:Pages>4</o:Pages>
- <o:Words>1626</o:Words>
- <o:Characters>9270</o:Characters>
- <o:Lines>77</o:Lines>
- <o:Paragraphs>18</o:Paragraphs>
- <o:CharactersWithSpaces>11384</o:CharactersWithSpaces>
- <o:Version>9.4402</o:Version>
- </o:DocumentProperties>
-</xml><![endif]--><!--[if gte mso 9]><xml>
- <w:WordDocument>
- <w:TrackRevisions/>
- </w:WordDocument>
-</xml><![endif]-->
-<style>
-<!--
- /* Font Definitions */
-@font-face
- {font-family:Tahoma;
- panose-1:2 11 6 4 3 5 4 4 2 4;
- mso-font-charset:0;
- mso-generic-font-family:swiss;
- mso-font-pitch:variable;
- mso-font-signature:553679495 -2147483648 8 0 66047 0;}
- /* Style Definitions */
-p.MsoNormal, li.MsoNormal, div.MsoNormal
- {mso-style-parent:"";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p
- {margin-right:0in;
- mso-margin-top-alt:auto;
- mso-margin-bottom-alt:auto;
- margin-left:0in;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p.BalloonText, li.BalloonText, div.BalloonText
- {mso-style-name:"Balloon Text";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:8.0pt;
- font-family:Tahoma;
- mso-fareast-font-family:"Times New Roman";}
-@page Section1
- {size:8.5in 11.0in;
- margin:1.0in 1.25in 1.0in 1.25in;
- mso-header-margin:.5in;
- mso-footer-margin:.5in;
- mso-paper-source:0;}
-div.Section1
- {page:Section1;}
--->
-</style>
-</head>
-
-<body lang=EN-US style='tab-interval:.5in'>
-
-<div class=Section1>
-
-<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
-</p>
-
-<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
-THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE,
-REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
-OF THIS AGREEMENT.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Contribution&quot; means:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-in the case of the initial Contributor, the initial code and documentation
-distributed under this Agreement, and<br clear=left>
-b) in the case of each subsequent Contributor:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-changes to the Program, and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-additions to the Program;</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
-such changes and/or additions to the Program originate from and are distributed
-by that particular Contributor. A Contribution 'originates' from a Contributor
-if it was added to the Program by such Contributor itself or anyone acting on
-such Contributor's behalf. Contributions do not include additions to the
-Program which: (i) are separate modules of software distributed in conjunction
-with the Program under their own license agreement, and (ii) are not derivative
-works of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Contributor&quot; means any person or
-entity that distributes the Program.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Licensed Patents &quot; mean patent
-claims licensable by a Contributor which are necessarily infringed by the use
-or sale of its Contribution alone or when combined with the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Program&quot; means the Contributions
-distributed in accordance with this Agreement.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Recipient&quot; means anyone who
-receives the Program under this Agreement, including all Contributors.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-Subject to the terms of this Agreement, each Contributor hereby grants Recipient
-a non-exclusive, worldwide, royalty-free copyright license to<span
-style='color:red'> </span>reproduce, prepare derivative works of, publicly
-display, publicly perform, distribute and sublicense the Contribution of such
-Contributor, if any, and such derivative works, in source code and object code
-form.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-Subject to the terms of this Agreement, each Contributor hereby grants
-Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
-patent license under Licensed Patents to make, use, sell, offer to sell, import
-and otherwise transfer the Contribution of such Contributor, if any, in source
-code and object code form. This patent license shall apply to the combination
-of the Contribution and the Program if, at the time the Contribution is added
-by the Contributor, such addition of the Contribution causes such combination
-to be covered by the Licensed Patents. The patent license shall not apply to
-any other combinations which include the Contribution. No hardware per se is
-licensed hereunder. </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
-Recipient understands that although each Contributor grants the licenses to its
-Contributions set forth herein, no assurances are provided by any Contributor
-that the Program does not infringe the patent or other intellectual property
-rights of any other entity. Each Contributor disclaims any liability to Recipient
-for claims brought by any other entity based on infringement of intellectual
-property rights or otherwise. As a condition to exercising the rights and
-licenses granted hereunder, each Recipient hereby assumes sole responsibility
-to secure any other intellectual property rights needed, if any. For example,
-if a third party patent license is required to allow Recipient to distribute
-the Program, it is Recipient's responsibility to acquire that license before
-distributing the Program.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
-Each Contributor represents that to its knowledge it has sufficient copyright
-rights in its Contribution, if any, to grant the copyright license set forth in
-this Agreement. </span></p>
-
-<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
-Program in object code form under its own license agreement, provided that:</span>
-</p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it complies with the terms and conditions of this Agreement; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-its license agreement:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-effectively disclaims on behalf of all Contributors all warranties and
-conditions, express and implied, including warranties or conditions of title
-and non-infringement, and implied warranties or conditions of merchantability
-and fitness for a particular purpose; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-effectively excludes on behalf of all Contributors all liability for damages,
-including direct, indirect, special, incidental and consequential damages, such
-as lost profits; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
-states that any provisions which differ from this Agreement are offered by that
-Contributor alone and not by any other party; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
-states that source code for the Program is available from such Contributor, and
-informs licensees how to obtain it in a reasonable manner on or through a
-medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
-
-<p><span style='font-size:10.0pt'>When the Program is made available in source
-code form:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it must be made available under this Agreement; and </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
-copy of this Agreement must be included with each copy of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
-copyright notices contained within the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
-originator of its Contribution, if any, in a manner that reasonably allows
-subsequent Recipients to identify the originator of the Contribution. </span></p>
-
-<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
-
-<p><span style='font-size:10.0pt'>Commercial distributors of software may
-accept certain responsibilities with respect to end users, business partners
-and the like. While this license is intended to facilitate the commercial use
-of the Program, the Contributor who includes the Program in a commercial
-product offering should do so in a manner which does not create potential
-liability for other Contributors. Therefore, if a Contributor includes the
-Program in a commercial product offering, such Contributor (&quot;Commercial
-Contributor&quot;) hereby agrees to defend and indemnify every other
-Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and
-costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other
-legal actions brought by a third party against the Indemnified Contributor to
-the extent caused by the acts or omissions of such Commercial Contributor in
-connection with its distribution of the Program in a commercial product
-offering. The obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement. In order
-to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
-Contributor in writing of such claim, and b) allow the Commercial Contributor
-to control, and cooperate with the Commercial Contributor in, the defense and
-any related settlement negotiations. The Indemnified Contributor may participate
-in any such claim at its own expense.</span> </p>
-
-<p><span style='font-size:10.0pt'>For example, a Contributor might include the
-Program in a commercial product offering, Product X. That Contributor is then a
-Commercial Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance claims and
-warranties are such Commercial Contributor's responsibility alone. Under this
-section, the Commercial Contributor would have to defend claims against the
-other Contributors related to those performance claims and warranties, and if a
-court requires any other Contributor to pay any damages as a result, the
-Commercial Contributor must pay those damages.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
-WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
-MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and distributing the
-Program and assumes all risks associated with its exercise of rights under this
-Agreement , including but not limited to the risks and costs of program errors,
-compliance with applicable laws, damage to or loss of data, programs or
-equipment, and unavailability or interruption of operations. </span></p>
-
-<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
-OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
-THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
-
-<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
-or unenforceable under applicable law, it shall not affect the validity or
-enforceability of the remainder of the terms of this Agreement, and without
-further action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.</span> </p>
-
-<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
-against any entity (including a cross-claim or counterclaim in a lawsuit)
-alleging that the Program itself (excluding combinations of the Program with
-other software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of the date
-such litigation is filed. </span></p>
-
-<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
-shall terminate if it fails to comply with any of the material terms or
-conditions of this Agreement and does not cure such failure in a reasonable
-period of time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use and
-distribution of the Program as soon as reasonably practicable. However,
-Recipient's obligations under this Agreement and any licenses granted by
-Recipient relating to the Program shall continue and survive. </span></p>
-
-<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
-copies of this Agreement, but in order to avoid inconsistency the Agreement is
-copyrighted and may only be modified in the following manner. The Agreement
-Steward reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement Steward has
-the right to modify this Agreement. The Eclipse Foundation is the initial
-Agreement Steward. The Eclipse Foundation may assign the responsibility to
-serve as the Agreement Steward to a suitable separate entity. Each new version
-of the Agreement will be given a distinguishing version number. The Program
-(including Contributions) may always be distributed subject to the version of
-the Agreement under which it was received. In addition, after a new version of
-the Agreement is published, Contributor may elect to distribute the Program
-(including its Contributions) under the new version. Except as expressly stated
-in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
-the intellectual property of any Contributor under this Agreement, whether
-expressly, by implication, estoppel or otherwise. All rights in the Program not
-expressly granted under this Agreement are reserved.</span> </p>
-
-<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
-State of New York and the intellectual property laws of the United States of
-America. No party to this Agreement will bring a legal action under this
-Agreement more than one year after the cause of action arose. Each party waives
-its rights to a jury trial in any resulting litigation.</span> </p>
-
-<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
-
-</div>
-
-</body>
-
-</html> \ No newline at end of file
diff --git a/assembly/features/org.eclipse.jpt.patch/feature.properties b/assembly/features/org.eclipse.jpt.patch/feature.properties
deleted file mode 100644
index a8457ea0cc..0000000000
--- a/assembly/features/org.eclipse.jpt.patch/feature.properties
+++ /dev/null
@@ -1,143 +0,0 @@
-###############################################################################
-# Copyright (c) 2006 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
-###############################################################################
-
-# "featureName" property - name of the feature
-featureName=Java Persistence Tools (JTP) Patches
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=The Eclipse Web Tools Platform (WTP) Project update site
-
-# "description" property - description of the feature
-description=\
-Patch(s) for Java Persistence API (JPA) Tools. \n\
-See bug 220297 (https://bugs.eclipse.org/bugs/220297) Entity generation creates Embeddables with compile errors in some cases \n\
-
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006-08 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE FOUNDATION SOFTWARE USER AGREEMENT\n\
-June 06, 2007\n\
-\n\
-Usage Of Content\n\
-\n\
-THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by the Eclipse Foundation\n\
-is provided to you under the terms and conditions of the Eclipse Public\n\
-License Version 1.0 ("EPL"). A copy of the EPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\
-For purposes of the EPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
- - Content may be structured and packaged into modules to facilitate delivering,\n\
- extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\
- plug-in fragments ("Fragments"), and features ("Features").\n\
- - Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java? ARchive)\n\
- in a directory named "plugins".\n\
- - A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\
- Each Feature may be packaged as a sub-directory in a directory named "features".\n\
- Within a Feature, files named "feature.xml" may contain a list of the names and version\n\
- numbers of the Plug-ins and/or Fragments associated with that Feature.\n\
- - Features may also include other Features ("Included Features"). Within a Feature, files\n\
- named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
- - The top-level (root) directory\n\
- - Plug-in and Fragment directories\n\
- - Inside Plug-ins and Fragments packaged as JARs\n\
- - Sub-directories of the directory named "src" of certain Plug-ins\n\
- - Feature directories\n\
-\n\
-Note: if a Feature made available by the Eclipse Foundation is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
- - Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\
- - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
- - Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\
- - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
- - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
- - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
- - Common Development and Distribution License (CDDL) Version 1.0 (available at http://www.sun.com/cddl/cddl.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n\
-\n\
-Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.\n
-########### end of license property ##########################################
diff --git a/assembly/features/org.eclipse.jpt.patch/feature.xml b/assembly/features/org.eclipse.jpt.patch/feature.xml
deleted file mode 100644
index 4fae92b5fa..0000000000
--- a/assembly/features/org.eclipse.jpt.patch/feature.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
- id="org.eclipse.jpt.patch"
- label="%featureName"
- version="1.0.2.qualifier"
- provider-name="%providerName">
-
- <description url="http://download.eclipse.org/webtools/patches/">
- %description
- </description>
-
- <copyright>
- %copyright
- </copyright>
-
- <license url="%licenseURL">
- %license
- </license>
-
- <url>
- <update label="Web Tools Platform (WTP) Patches" url="http://download.eclipse.org/webtools/patches/"/>
- </url>
-
- <requires>
- <import feature="org.eclipse.jpt.feature" version="1.0.2.v200802140100-77-7_CYQCD2CaLYCHCD" patch="true"/>
- </requires>
-
- <plugin
- id="org.eclipse.jpt.gen"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
-</feature>
diff --git a/assembly/features/org.eclipse.jpt.patch/license.html b/assembly/features/org.eclipse.jpt.patch/license.html
deleted file mode 100644
index 2347060ef3..0000000000
--- a/assembly/features/org.eclipse.jpt.patch/license.html
+++ /dev/null
@@ -1,93 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
-<!-- saved from url=(0044)http://www.eclipse.org/legal/epl/notice.html -->
-<HTML><HEAD><TITLE>Eclipse.org Software User Agreement</TITLE>
-<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
-<META content="MSHTML 6.00.2800.1479" name=GENERATOR></HEAD>
-<BODY lang=EN-US vLink=purple link=blue>
-<H2>Eclipse Foundation Software User Agreement</H2>
-<P>January 28, 2005</P>
-<H3>Usage Of Content</H3>
-<P>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION
-AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT"). USE OF
-THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE
-TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED
-BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED
-BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE
-AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS OF ANY
-APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU
-MAY NOT USE THE CONTENT.</P>
-<H3>Applicable Licenses</H3>
-<P>Unless otherwise indicated, all Content made available by the Eclipse
-Foundation is provided to you under the terms and conditions of the Eclipse
-Public License Version 1.0 ("EPL"). A copy of the EPL is provided with this
-Content and is also available at <A
-href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</A>.
-For purposes of the EPL, "Program" will mean the Content.</P>
-<P>Content includes, but is not limited to, source code, object code,
-documentation and other files maintained in the Eclipse.org CVS repository
-("Repository") in CVS modules ("Modules") and made available as downloadable
-archives ("Downloads").</P>
-<P>Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments
-("Fragments"), and features ("Features"). A Feature is a bundle of one or more
-Plug-ins and/or Fragments and associated material. Files named "feature.xml" may
-contain a list of the names and version numbers of the Plug-ins and/or Fragments
-associated with a Feature. Plug-ins and Fragments are located in directories
-named "plugins" and Features are located in directories named "features".</P>
-<P>Features may also include other Features ("Included Features"). Files named
-"feature.xml" may contain a list of the names and version numbers of Included
-Features.</P>
-<P>The terms and conditions governing Plug-ins and Fragments should be contained
-in files named "about.html" ("Abouts"). The terms and conditions governing
-Features and Included Features should be contained in files named "license.html"
-("Feature Licenses"). Abouts and Feature Licenses may be located in any
-directory of a Download or Module including, but not limited to the following
-locations:</P>
-<UL>
- <LI>The top-level (root) directory
- <LI>Plug-in and Fragment directories
- <LI>Subdirectories of the directory named "src" of certain Plug-ins
- <LI>Feature directories </LI></UL>
-<P>Note: if a Feature made available by the Eclipse Foundation is installed
-using the Eclipse Update Manager, you must agree to a license ("Feature Update
-License") during the installation process. If the Feature contains Included
-Features, the Feature Update License should either provide you with the terms
-and conditions governing the Included Features or inform you where you can
-locate them. Feature Update Licenses may be found in the "license" property of
-files named "feature.properties". Such Abouts, Feature Licenses and Feature
-Update Licenses contain the terms and conditions (or references to such terms
-and conditions) that govern your use of the associated Content in that
-directory.</P>
-<P>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL
-OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</P>
-<UL>
- <LI>Common Public License Version 1.0 (available at <A
- href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</A>)
-
- <LI>Apache Software License 1.1 (available at <A
- href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</A>)
-
- <LI>Apache Software License 2.0 (available at <A
- href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</A>)
-
- <LI>IBM Public License 1.0 (available at <A
- href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</A>)
-
- <LI>Metro Link Public License 1.00 (available at <A
- href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</A>)
-
- <LI>Mozilla Public License Version 1.1 (available at <A
- href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</A>)
- </LI></UL>
-<P>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License is
-provided, please contact the Eclipse Foundation to determine what terms and
-conditions govern that particular Content.</P>
-<H3>Cryptography</H3>
-<P>Content may contain encryption software. The country in which you are
-currently may have restrictions on the import, possession, and use, and/or
-re-export to another country, of encryption software. BEFORE using any
-encryption software, please check the country's laws, regulations and policies
-concerning the import, possession, or use, and re-export of encryption software,
-to see if this is permitted.</P></BODY></HTML>
diff --git a/assembly/features/org.eclipse.jpt.sdk/.cvsignore b/assembly/features/org.eclipse.jpt.sdk/.cvsignore
deleted file mode 100644
index bc2abf75c1..0000000000
--- a/assembly/features/org.eclipse.jpt.sdk/.cvsignore
+++ /dev/null
@@ -1,4 +0,0 @@
-*.bin.dist.zip
-build.xml
-features
-plugins
diff --git a/assembly/features/org.eclipse.jpt.sdk/.project b/assembly/features/org.eclipse.jpt.sdk/.project
deleted file mode 100644
index 821d453136..0000000000
--- a/assembly/features/org.eclipse.jpt.sdk/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.sdk</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.FeatureBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.FeatureNature</nature>
- </natures>
-</projectDescription>
diff --git a/assembly/features/org.eclipse.jpt.sdk/build.properties b/assembly/features/org.eclipse.jpt.sdk/build.properties
deleted file mode 100644
index 7200939aca..0000000000
--- a/assembly/features/org.eclipse.jpt.sdk/build.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2006 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
-###############################################################################
-bin.includes = feature.xml,\
- eclipse_update_120.jpg,\
- epl-v10.html,\
- license.html,\
- feature.properties
diff --git a/assembly/features/org.eclipse.jpt.sdk/eclipse_update_120.jpg b/assembly/features/org.eclipse.jpt.sdk/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/assembly/features/org.eclipse.jpt.sdk/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/assembly/features/org.eclipse.jpt.sdk/epl-v10.html b/assembly/features/org.eclipse.jpt.sdk/epl-v10.html
deleted file mode 100644
index ed4b196655..0000000000
--- a/assembly/features/org.eclipse.jpt.sdk/epl-v10.html
+++ /dev/null
@@ -1,328 +0,0 @@
-<html xmlns:o="urn:schemas-microsoft-com:office:office"
-xmlns:w="urn:schemas-microsoft-com:office:word"
-xmlns="http://www.w3.org/TR/REC-html40">
-
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
-<meta name=ProgId content=Word.Document>
-<meta name=Generator content="Microsoft Word 9">
-<meta name=Originator content="Microsoft Word 9">
-<link rel=File-List
-href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
-<title>Eclipse Public License - Version 1.0</title>
-<!--[if gte mso 9]><xml>
- <o:DocumentProperties>
- <o:Revision>2</o:Revision>
- <o:TotalTime>3</o:TotalTime>
- <o:Created>2004-03-05T23:03:00Z</o:Created>
- <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved>
- <o:Pages>4</o:Pages>
- <o:Words>1626</o:Words>
- <o:Characters>9270</o:Characters>
- <o:Lines>77</o:Lines>
- <o:Paragraphs>18</o:Paragraphs>
- <o:CharactersWithSpaces>11384</o:CharactersWithSpaces>
- <o:Version>9.4402</o:Version>
- </o:DocumentProperties>
-</xml><![endif]--><!--[if gte mso 9]><xml>
- <w:WordDocument>
- <w:TrackRevisions/>
- </w:WordDocument>
-</xml><![endif]-->
-<style>
-<!--
- /* Font Definitions */
-@font-face
- {font-family:Tahoma;
- panose-1:2 11 6 4 3 5 4 4 2 4;
- mso-font-charset:0;
- mso-generic-font-family:swiss;
- mso-font-pitch:variable;
- mso-font-signature:553679495 -2147483648 8 0 66047 0;}
- /* Style Definitions */
-p.MsoNormal, li.MsoNormal, div.MsoNormal
- {mso-style-parent:"";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p
- {margin-right:0in;
- mso-margin-top-alt:auto;
- mso-margin-bottom-alt:auto;
- margin-left:0in;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p.BalloonText, li.BalloonText, div.BalloonText
- {mso-style-name:"Balloon Text";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:8.0pt;
- font-family:Tahoma;
- mso-fareast-font-family:"Times New Roman";}
-@page Section1
- {size:8.5in 11.0in;
- margin:1.0in 1.25in 1.0in 1.25in;
- mso-header-margin:.5in;
- mso-footer-margin:.5in;
- mso-paper-source:0;}
-div.Section1
- {page:Section1;}
--->
-</style>
-</head>
-
-<body lang=EN-US style='tab-interval:.5in'>
-
-<div class=Section1>
-
-<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
-</p>
-
-<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
-THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE,
-REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
-OF THIS AGREEMENT.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Contribution&quot; means:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-in the case of the initial Contributor, the initial code and documentation
-distributed under this Agreement, and<br clear=left>
-b) in the case of each subsequent Contributor:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-changes to the Program, and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-additions to the Program;</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
-such changes and/or additions to the Program originate from and are distributed
-by that particular Contributor. A Contribution 'originates' from a Contributor
-if it was added to the Program by such Contributor itself or anyone acting on
-such Contributor's behalf. Contributions do not include additions to the
-Program which: (i) are separate modules of software distributed in conjunction
-with the Program under their own license agreement, and (ii) are not derivative
-works of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Contributor&quot; means any person or
-entity that distributes the Program.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Licensed Patents &quot; mean patent
-claims licensable by a Contributor which are necessarily infringed by the use
-or sale of its Contribution alone or when combined with the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Program&quot; means the Contributions
-distributed in accordance with this Agreement.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Recipient&quot; means anyone who
-receives the Program under this Agreement, including all Contributors.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-Subject to the terms of this Agreement, each Contributor hereby grants Recipient
-a non-exclusive, worldwide, royalty-free copyright license to<span
-style='color:red'> </span>reproduce, prepare derivative works of, publicly
-display, publicly perform, distribute and sublicense the Contribution of such
-Contributor, if any, and such derivative works, in source code and object code
-form.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-Subject to the terms of this Agreement, each Contributor hereby grants
-Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
-patent license under Licensed Patents to make, use, sell, offer to sell, import
-and otherwise transfer the Contribution of such Contributor, if any, in source
-code and object code form. This patent license shall apply to the combination
-of the Contribution and the Program if, at the time the Contribution is added
-by the Contributor, such addition of the Contribution causes such combination
-to be covered by the Licensed Patents. The patent license shall not apply to
-any other combinations which include the Contribution. No hardware per se is
-licensed hereunder. </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
-Recipient understands that although each Contributor grants the licenses to its
-Contributions set forth herein, no assurances are provided by any Contributor
-that the Program does not infringe the patent or other intellectual property
-rights of any other entity. Each Contributor disclaims any liability to Recipient
-for claims brought by any other entity based on infringement of intellectual
-property rights or otherwise. As a condition to exercising the rights and
-licenses granted hereunder, each Recipient hereby assumes sole responsibility
-to secure any other intellectual property rights needed, if any. For example,
-if a third party patent license is required to allow Recipient to distribute
-the Program, it is Recipient's responsibility to acquire that license before
-distributing the Program.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
-Each Contributor represents that to its knowledge it has sufficient copyright
-rights in its Contribution, if any, to grant the copyright license set forth in
-this Agreement. </span></p>
-
-<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
-Program in object code form under its own license agreement, provided that:</span>
-</p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it complies with the terms and conditions of this Agreement; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-its license agreement:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-effectively disclaims on behalf of all Contributors all warranties and
-conditions, express and implied, including warranties or conditions of title
-and non-infringement, and implied warranties or conditions of merchantability
-and fitness for a particular purpose; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-effectively excludes on behalf of all Contributors all liability for damages,
-including direct, indirect, special, incidental and consequential damages, such
-as lost profits; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
-states that any provisions which differ from this Agreement are offered by that
-Contributor alone and not by any other party; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
-states that source code for the Program is available from such Contributor, and
-informs licensees how to obtain it in a reasonable manner on or through a
-medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
-
-<p><span style='font-size:10.0pt'>When the Program is made available in source
-code form:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it must be made available under this Agreement; and </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
-copy of this Agreement must be included with each copy of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
-copyright notices contained within the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
-originator of its Contribution, if any, in a manner that reasonably allows
-subsequent Recipients to identify the originator of the Contribution. </span></p>
-
-<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
-
-<p><span style='font-size:10.0pt'>Commercial distributors of software may
-accept certain responsibilities with respect to end users, business partners
-and the like. While this license is intended to facilitate the commercial use
-of the Program, the Contributor who includes the Program in a commercial
-product offering should do so in a manner which does not create potential
-liability for other Contributors. Therefore, if a Contributor includes the
-Program in a commercial product offering, such Contributor (&quot;Commercial
-Contributor&quot;) hereby agrees to defend and indemnify every other
-Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and
-costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other
-legal actions brought by a third party against the Indemnified Contributor to
-the extent caused by the acts or omissions of such Commercial Contributor in
-connection with its distribution of the Program in a commercial product
-offering. The obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement. In order
-to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
-Contributor in writing of such claim, and b) allow the Commercial Contributor
-to control, and cooperate with the Commercial Contributor in, the defense and
-any related settlement negotiations. The Indemnified Contributor may participate
-in any such claim at its own expense.</span> </p>
-
-<p><span style='font-size:10.0pt'>For example, a Contributor might include the
-Program in a commercial product offering, Product X. That Contributor is then a
-Commercial Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance claims and
-warranties are such Commercial Contributor's responsibility alone. Under this
-section, the Commercial Contributor would have to defend claims against the
-other Contributors related to those performance claims and warranties, and if a
-court requires any other Contributor to pay any damages as a result, the
-Commercial Contributor must pay those damages.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
-WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
-MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and distributing the
-Program and assumes all risks associated with its exercise of rights under this
-Agreement , including but not limited to the risks and costs of program errors,
-compliance with applicable laws, damage to or loss of data, programs or
-equipment, and unavailability or interruption of operations. </span></p>
-
-<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
-OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
-THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
-
-<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
-or unenforceable under applicable law, it shall not affect the validity or
-enforceability of the remainder of the terms of this Agreement, and without
-further action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.</span> </p>
-
-<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
-against any entity (including a cross-claim or counterclaim in a lawsuit)
-alleging that the Program itself (excluding combinations of the Program with
-other software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of the date
-such litigation is filed. </span></p>
-
-<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
-shall terminate if it fails to comply with any of the material terms or
-conditions of this Agreement and does not cure such failure in a reasonable
-period of time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use and
-distribution of the Program as soon as reasonably practicable. However,
-Recipient's obligations under this Agreement and any licenses granted by
-Recipient relating to the Program shall continue and survive. </span></p>
-
-<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
-copies of this Agreement, but in order to avoid inconsistency the Agreement is
-copyrighted and may only be modified in the following manner. The Agreement
-Steward reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement Steward has
-the right to modify this Agreement. The Eclipse Foundation is the initial
-Agreement Steward. The Eclipse Foundation may assign the responsibility to
-serve as the Agreement Steward to a suitable separate entity. Each new version
-of the Agreement will be given a distinguishing version number. The Program
-(including Contributions) may always be distributed subject to the version of
-the Agreement under which it was received. In addition, after a new version of
-the Agreement is published, Contributor may elect to distribute the Program
-(including its Contributions) under the new version. Except as expressly stated
-in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
-the intellectual property of any Contributor under this Agreement, whether
-expressly, by implication, estoppel or otherwise. All rights in the Program not
-expressly granted under this Agreement are reserved.</span> </p>
-
-<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
-State of New York and the intellectual property laws of the United States of
-America. No party to this Agreement will bring a legal action under this
-Agreement more than one year after the cause of action arose. Each party waives
-its rights to a jury trial in any resulting litigation.</span> </p>
-
-<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
-
-</div>
-
-</body>
-
-</html> \ No newline at end of file
diff --git a/assembly/features/org.eclipse.jpt.sdk/feature.properties b/assembly/features/org.eclipse.jpt.sdk/feature.properties
deleted file mode 100644
index 64b1fab799..0000000000
--- a/assembly/features/org.eclipse.jpt.sdk/feature.properties
+++ /dev/null
@@ -1,170 +0,0 @@
-###############################################################################
-# Copyright (c) 2006 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
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Dali Java Persistence Tools project SDK
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=The Eclipse Web Tools Platform (WTP) Project update site
-
-# "description" property - description of the feature
-description=Dali Java Persistence Tools project SDK
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-Eclipse Foundation Software User Agreement\n\
-April 14, 2010\n\
-\n\
-Usage Of Content\n\
-\n\
-THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by the\n\
-Eclipse Foundation is provided to you under the terms and conditions of\n\
-the Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is\n\
-provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\
-For purposes of the EPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse Foundation source code\n\
-repository ("Repository") in software modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
- - Content may be structured and packaged into modules to facilitate delivering,\n\
- extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\
- plug-in fragments ("Fragments"), and features ("Features").\n\
- - Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java(TM) ARchive)\n\
- in a directory named "plugins".\n\
- - A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\
- Each Feature may be packaged as a sub-directory in a directory named "features".\n\
- Within a Feature, files named "feature.xml" may contain a list of the names and version\n\
- numbers of the Plug-ins and/or Fragments associated with that Feature.\n\
- - Features may also include other Features ("Included Features"). Within a Feature, files\n\
- named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
- - The top-level (root) directory\n\
- - Plug-in and Fragment directories\n\
- - Inside Plug-ins and Fragments packaged as JARs\n\
- - Sub-directories of the directory named "src" of certain Plug-ins\n\
- - Feature directories\n\
-\n\
-Note: if a Feature made available by the Eclipse Foundation is installed using the\n\
-Provisioning Technology (as defined below), you must agree to a license ("Feature \n\
-Update License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties" found within a Feature.\n\
-Such Abouts, Feature Licenses, and Feature Update Licenses contain the\n\
-terms and conditions (or references to such terms and conditions) that\n\
-govern your use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
- - Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\
- - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
- - Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\
- - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
- - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License\n\
-is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-\n\Use of Provisioning Technology\n\
-\n\
-The Eclipse Foundation makes available provisioning software, examples of which include,\n\
-but are not limited to, p2 and the Eclipse Update Manager ("Provisioning Technology") for\n\
-the purpose of allowing users to install software, documentation, information and/or\n\
-other materials (collectively "Installable Software"). This capability is provided with\n\
-the intent of allowing such users to install, extend and update Eclipse-based products.\n\
-Information about packaging Installable Software is available at\n\
-http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").\n\
-\n\
-You may use Provisioning Technology to allow other parties to install Installable Software.\n\
-You shall be responsible for enabling the applicable license agreements relating to the\n\
-Installable Software to be presented to, and accepted by, the users of the Provisioning Technology\n\
-in accordance with the Specification. By using Provisioning Technology in such a manner and\n\
-making it available in accordance with the Specification, you further acknowledge your\n\
-agreement to, and the acquisition of all necessary rights to permit the following:\n\
-\n\
- 1. A series of actions may occur ("Provisioning Process") in which a user may execute\n\
- the Provisioning Technology on a machine ("Target Machine") with the intent of installing,\n\
- extending or updating the functionality of an Eclipse-based product.\n\
- 2. During the Provisioning Process, the Provisioning Technology may cause third party\n\
- Installable Software or a portion thereof to be accessed and copied to the Target Machine.\n\
- 3. Pursuant to the Specification, you will provide to the user the terms and conditions that\n\
- govern the use of the Installable Software ("Installable Software Agreement") and such\n\
- Installable Software Agreement shall be accessed from the Target Machine in accordance\n\
- with the Specification. Such Installable Software Agreement must inform the user of the\n\
- terms and conditions that govern the Installable Software and must solicit acceptance by\n\
- the end user in the manner prescribed in such Installable Software Agreement. Upon such\n\
- indication of agreement by the user, the provisioning Technology will complete installation\n\
- of the Installable Software.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use, and\n\
-re-export of encryption software, to see if this is permitted.\n\
-\n\
-Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.\n
-########### end of license property ##########################################
diff --git a/assembly/features/org.eclipse.jpt.sdk/feature.xml b/assembly/features/org.eclipse.jpt.sdk/feature.xml
deleted file mode 100644
index 28dc74f6c8..0000000000
--- a/assembly/features/org.eclipse.jpt.sdk/feature.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
- id="org.eclipse.jpt.sdk"
- label="%featureName"
- version="2.3.1.qualifier"
- provider-name="%providerName"
- plugin="org.eclipse.jpt"
- image="eclipse_update_120.jpg">
-
- <description>
- %description
- </description>
-
- <copyright>
- %copyright
- </copyright>
-
- <license url="license.html">
- %license
- </license>
-
- <url>
- <update label="%updateSiteName" url="http://download.eclipse.org/webtools/updates"/>
- <discovery label="Web Tools Platform (WTP) Updates" url="http://download.eclipse.org/webtools/updates"/>
- </url>
-
- <includes
- id="org.eclipse.jpt_sdk.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.eclipselink_sdk.feature"
- version="0.0.0"/>
-
- <plugin
- id="org.eclipse.jpt"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
-</feature>
diff --git a/assembly/features/org.eclipse.jpt.sdk/license.html b/assembly/features/org.eclipse.jpt.sdk/license.html
deleted file mode 100644
index c184ca36a9..0000000000
--- a/assembly/features/org.eclipse.jpt.sdk/license.html
+++ /dev/null
@@ -1,107 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>Eclipse Foundation Software User Agreement</title>
-</head>
-
-<body lang="EN-US">
-<h2>Eclipse Foundation Software User Agreement</h2>
-<p>April 14, 2010</p>
-
-<h3>Usage Of Content</h3>
-
-<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
- (COLLECTIVELY &quot;CONTENT&quot;). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
- CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
- OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
- NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
- CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
-
-<h3>Applicable Licenses</h3>
-
-<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0
- (&quot;EPL&quot;). A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
- For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
- repository (&quot;Repository&quot;) in software modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
-
-<ul>
- <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
- <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
- <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;. Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
- and/or Fragments associated with that Feature.</li>
- <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
-</ul>
-
-<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
-Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;). Abouts and Feature Licenses may be located in any directory of a Download or Module
-including, but not limited to the following locations:</p>
-
-<ul>
- <li>The top-level (root) directory</li>
- <li>Plug-in and Fragment directories</li>
- <li>Inside Plug-ins and Fragments packaged as JARs</li>
- <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
- <li>Feature directories</li>
-</ul>
-
-<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license (&quot;Feature Update License&quot;) during the
-installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
-inform you where you can locate them. Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
-Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
-that directory.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
- <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
- <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
- <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
- <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
- <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License is provided, please
-contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
-
-
-<h3>Use of Provisioning Technology</h3>
-
-<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
- Update Manager (&quot;Provisioning Technology&quot;) for the purpose of allowing users to install software, documentation, information and/or
- other materials (collectively &quot;Installable Software&quot;). This capability is provided with the intent of allowing such users to
- install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a
- href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
- (&quot;Specification&quot;).</p>
-
-<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the
- applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
- in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the
- Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p>
-
-<ol>
- <li>A series of actions may occur (&quot;Provisioning Process&quot;) in which a user may execute the Provisioning Technology
- on a machine (&quot;Target Machine&quot;) with the intent of installing, extending or updating the functionality of an Eclipse-based
- product.</li>
- <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be
- accessed and copied to the Target Machine.</li>
- <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
- Software (&quot;Installable Software Agreement&quot;) and such Installable Software Agreement shall be accessed from the Target
- Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern
- the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such
- indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li>
-</ol>
-
-<h3>Cryptography</h3>
-
-<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
- another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
- possession, or use, and re-export of encryption software, to see if this is permitted.</p>
-
-<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
-</body>
-</html>
diff --git a/assembly/features/org.eclipse.jpt.tests.assembly.feature/.cvsignore b/assembly/features/org.eclipse.jpt.tests.assembly.feature/.cvsignore
deleted file mode 100644
index 2544693f86..0000000000
--- a/assembly/features/org.eclipse.jpt.tests.assembly.feature/.cvsignore
+++ /dev/null
@@ -1,3 +0,0 @@
-*.bin.dist.zip
-build.xml
-org.eclipse.jpt.tests_1.0.0.* \ No newline at end of file
diff --git a/assembly/features/org.eclipse.jpt.tests.assembly.feature/.project b/assembly/features/org.eclipse.jpt.tests.assembly.feature/.project
deleted file mode 100644
index f34899cb8b..0000000000
--- a/assembly/features/org.eclipse.jpt.tests.assembly.feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.tests.assembly.feature</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.FeatureBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.FeatureNature</nature>
- </natures>
-</projectDescription>
diff --git a/assembly/features/org.eclipse.jpt.tests.assembly.feature/.settings/org.eclipse.core.resources.prefs b/assembly/features/org.eclipse.jpt.tests.assembly.feature/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 17acb651a8..0000000000
--- a/assembly/features/org.eclipse.jpt.tests.assembly.feature/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Sun May 27 15:11:05 EDT 2007
-eclipse.preferences.version=1
-encoding/<project>=ISO-8859-1
diff --git a/assembly/features/org.eclipse.jpt.tests.assembly.feature/build.properties b/assembly/features/org.eclipse.jpt.tests.assembly.feature/build.properties
deleted file mode 100644
index e69de29bb2..0000000000
--- a/assembly/features/org.eclipse.jpt.tests.assembly.feature/build.properties
+++ /dev/null
diff --git a/assembly/features/org.eclipse.jpt.tests.assembly.feature/eclipse_update_120.jpg b/assembly/features/org.eclipse.jpt.tests.assembly.feature/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/assembly/features/org.eclipse.jpt.tests.assembly.feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/assembly/features/org.eclipse.jpt.tests.assembly.feature/feature.properties b/assembly/features/org.eclipse.jpt.tests.assembly.feature/feature.properties
deleted file mode 100644
index 0f26029475..0000000000
--- a/assembly/features/org.eclipse.jpt.tests.assembly.feature/feature.properties
+++ /dev/null
@@ -1,50 +0,0 @@
-###############################################################################
-# Copyright (c) 2006 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
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Dali Java Persistence Tools Tests
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-# "updateSiteName" property - label for the update site
-updateSiteName=The Eclipse Web Tools Platform (WTP) Project update site
-
-# "description" property - description of the feature
-description=Dali Java Persistence Tools project Tests
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-########### end of license property ##########################################
diff --git a/assembly/features/org.eclipse.jpt.tests.assembly.feature/feature.xml b/assembly/features/org.eclipse.jpt.tests.assembly.feature/feature.xml
deleted file mode 100644
index 3894af980d..0000000000
--- a/assembly/features/org.eclipse.jpt.tests.assembly.feature/feature.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
- id="org.eclipse.jpt.tests.assembly.feature"
- label="%featureName"
- version="2.3.1.qualifier"
- provider-name="%providerName"
- license-feature="org.eclipse.license"
- license-feature-version="1.0.0.qualifier">
-
- <description>
- %description
- </description>
-
- <copyright>
- %copyright
- </copyright>
-
- <license url="license.html">
- %license
- </license>
-
- <url>
- <update label="%updateSiteName" url="http://download.eclipse.org/webtools/updates/"/>
- </url>
-
- <includes
- id="org.eclipse.jpt.common.tests.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jpa.tests.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jpa.eclipselink.tests.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jaxb.tests.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jaxb.eclipselink.tests.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jpadiagrameditor.tests.feature"
- version="0.0.0"/>
-
-</feature>
diff --git a/assembly/features/org.eclipse.jpt.tests/.project b/assembly/features/org.eclipse.jpt.tests/.project
deleted file mode 100644
index c9a282f03f..0000000000
--- a/assembly/features/org.eclipse.jpt.tests/.project
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.tests</name>
- <comment>Unused Project</comment>
-</projectDescription> \ No newline at end of file
diff --git a/assembly/features/org.eclipse.jpt/.project b/assembly/features/org.eclipse.jpt/.project
deleted file mode 100644
index 7a69c2f3bf..0000000000
--- a/assembly/features/org.eclipse.jpt/.project
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt</name>
- <comment>Unused Project</comment>
-</projectDescription> \ No newline at end of file
diff --git a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/.cvsignore b/assembly/features/org.eclipse.jpt_sdk.assembly.feature/.cvsignore
deleted file mode 100644
index bc2abf75c1..0000000000
--- a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/.cvsignore
+++ /dev/null
@@ -1,4 +0,0 @@
-*.bin.dist.zip
-build.xml
-features
-plugins
diff --git a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/.project b/assembly/features/org.eclipse.jpt_sdk.assembly.feature/.project
deleted file mode 100644
index e901372085..0000000000
--- a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt_sdk.assembly.feature</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.FeatureBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.FeatureNature</nature>
- </natures>
-</projectDescription>
diff --git a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/build.properties b/assembly/features/org.eclipse.jpt_sdk.assembly.feature/build.properties
deleted file mode 100644
index e69de29bb2..0000000000
--- a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/build.properties
+++ /dev/null
diff --git a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/eclipse_update_120.jpg b/assembly/features/org.eclipse.jpt_sdk.assembly.feature/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/feature.properties b/assembly/features/org.eclipse.jpt_sdk.assembly.feature/feature.properties
deleted file mode 100644
index afcb117163..0000000000
--- a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/feature.properties
+++ /dev/null
@@ -1,50 +0,0 @@
-###############################################################################
-# Copyright (c) 2006 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
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Dali Java Persistence Tools SDK
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-# "updateSiteName" property - label for the update site
-updateSiteName=The Eclipse Web Tools Platform (WTP) Project update site
-
-# "description" property - description of the feature
-description=Dali Java Persistence Tools project SDK
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-########### end of license property ##########################################
diff --git a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/feature.xml b/assembly/features/org.eclipse.jpt_sdk.assembly.feature/feature.xml
deleted file mode 100644
index 91dbc3a498..0000000000
--- a/assembly/features/org.eclipse.jpt_sdk.assembly.feature/feature.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
- id="org.eclipse.jpt_sdk.assembly.feature"
- label="%featureName"
- version="2.3.1.qualifier"
- provider-name="%providerName"
- image="eclipse_update_120.jpg"
- license-feature="org.eclipse.license"
- license-feature-version="1.0.0.qualifier">
-
- <description>
- %description
- </description>
-
- <copyright>
- %copyright
- </copyright>
-
- <license url="license.html">
- %license
- </license>
-
- <url>
- <update label="%updateSiteName" url="http://download.eclipse.org/webtools/updates"/>
- <discovery label="Web Tools Platform (WTP) Updates" url="http://download.eclipse.org/webtools/updates"/>
- </url>
-
- <includes
- id="org.eclipse.jpt.common_sdk.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.common.eclipselink_sdk.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jpa_sdk.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jpa.eclipselink_sdk.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jaxb_sdk.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jaxb.eclipselink_sdk.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.dbws.eclipselink_sdk.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.jpadiagrameditor_sdk.feature"
- version="0.0.0"/>
-
-</feature>
diff --git a/assembly/plugins/org.eclipse.jpt/.cvsignore b/assembly/plugins/org.eclipse.jpt/.cvsignore
deleted file mode 100644
index c9401a2c83..0000000000
--- a/assembly/plugins/org.eclipse.jpt/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-build.xml
-org.eclipse.jpt_1.0.0.* \ No newline at end of file
diff --git a/assembly/plugins/org.eclipse.jpt/.project b/assembly/plugins/org.eclipse.jpt/.project
deleted file mode 100644
index f51b04cc90..0000000000
--- a/assembly/plugins/org.eclipse.jpt/.project
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/assembly/plugins/org.eclipse.jpt/.settings/org.eclipse.core.resources.prefs b/assembly/plugins/org.eclipse.jpt/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 4aec29d1cd..0000000000
--- a/assembly/plugins/org.eclipse.jpt/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Sun May 27 15:10:09 EDT 2007
-eclipse.preferences.version=1
-encoding/<project>=ISO-8859-1
diff --git a/assembly/plugins/org.eclipse.jpt/META-INF/MANIFEST.MF b/assembly/plugins/org.eclipse.jpt/META-INF/MANIFEST.MF
deleted file mode 100644
index a5fbedd077..0000000000
--- a/assembly/plugins/org.eclipse.jpt/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,7 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jpt; singleton:=true
-Bundle-Version: 2.3.1.qualifier
-Bundle-Localization: plugin
-Bundle-Vendor: %providerName
diff --git a/assembly/plugins/org.eclipse.jpt/about.html b/assembly/plugins/org.eclipse.jpt/about.html
deleted file mode 100644
index ca606b1bb5..0000000000
--- a/assembly/plugins/org.eclipse.jpt/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>June 06, 2007</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in
-("Content"). Unless otherwise indicated below, the Content is provided to you
-under the terms and conditions of the Eclipse Public License Version 1.0
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>.
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the
-Content is being redistributed by another party ("Redistributor") and different
-terms and conditions may apply to your use of any object code in the Content.
-Check the Redistributor's license that was provided with the Content. If no such
-license exists, contact the Redistributor. Unless otherwise indicated below, the
-terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML> \ No newline at end of file
diff --git a/assembly/plugins/org.eclipse.jpt/about.ini b/assembly/plugins/org.eclipse.jpt/about.ini
deleted file mode 100644
index 588a325a8f..0000000000
--- a/assembly/plugins/org.eclipse.jpt/about.ini
+++ /dev/null
@@ -1,44 +0,0 @@
-###############################################################################
-# Copyright (c) 2006 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
-###############################################################################
-
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.gif
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-# Property "tipsAndTricksHref" contains the Help topic href to a tips and tricks page
-# optional
-tipsAndTricksHref=/org.eclipse.jpt.doc.user/tips_and_tricks.htm
-
-
diff --git a/assembly/plugins/org.eclipse.jpt/about.mappings b/assembly/plugins/org.eclipse.jpt/about.mappings
deleted file mode 100644
index bddaab4310..0000000000
--- a/assembly/plugins/org.eclipse.jpt/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=@build@ \ No newline at end of file
diff --git a/assembly/plugins/org.eclipse.jpt/about.properties b/assembly/plugins/org.eclipse.jpt/about.properties
deleted file mode 100644
index c74a186a13..0000000000
--- a/assembly/plugins/org.eclipse.jpt/about.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-###############################################################################
-# Copyright (c) 2006 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
-###############################################################################
-
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-
-blurb=Dali Java Persistence Tools\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others 2006. All rights reserved.\n\
-Visit http://www.eclipse.org/webtools
diff --git a/assembly/plugins/org.eclipse.jpt/build.properties b/assembly/plugins/org.eclipse.jpt/build.properties
deleted file mode 100644
index 0ccfb0ebb8..0000000000
--- a/assembly/plugins/org.eclipse.jpt/build.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-###############################################################################
-# Copyright (c) 2006, 2007 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
-###############################################################################
-bin.includes = META-INF/,\
- about.ini,\
- about.html,\
- about.mappings,\
- about.properties,\
- eclipse32.gif,\
- eclipse32.png,\
- plugin.properties,\
- component.xml
diff --git a/assembly/plugins/org.eclipse.jpt/component.xml b/assembly/plugins/org.eclipse.jpt/component.xml
deleted file mode 100644
index 11f133f65a..0000000000
--- a/assembly/plugins/org.eclipse.jpt/component.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/wtp/releng/tools/component-model" name="org.eclipse.jpt">
-<description url=""></description>
-<component-depends unrestricted="true"></component-depends>
-<plugin id="org.eclipse.jpt" fragment="false"/>
-<plugin id="org.eclipse.jpt.core" fragment="false"/>
-<plugin id="org.eclipse.jpt.db" fragment="false"/>
-<plugin id="org.eclipse.jpt.db.ui" fragment="false"/>
-<plugin id="org.eclipse.jpt.gen" fragment="false"/>
-<plugin id="org.eclipse.jpt.ui" fragment="false"/>
-<plugin id="org.eclipse.jpt.utility" fragment="false"/>
-</component> \ No newline at end of file
diff --git a/assembly/plugins/org.eclipse.jpt/eclipse32.gif b/assembly/plugins/org.eclipse.jpt/eclipse32.gif
deleted file mode 100644
index e6ad7ccd75..0000000000
--- a/assembly/plugins/org.eclipse.jpt/eclipse32.gif
+++ /dev/null
Binary files differ
diff --git a/assembly/plugins/org.eclipse.jpt/eclipse32.png b/assembly/plugins/org.eclipse.jpt/eclipse32.png
deleted file mode 100644
index 568fac1d05..0000000000
--- a/assembly/plugins/org.eclipse.jpt/eclipse32.png
+++ /dev/null
Binary files differ
diff --git a/assembly/plugins/org.eclipse.jpt/plugin.properties b/assembly/plugins/org.eclipse.jpt/plugin.properties
deleted file mode 100644
index c3c055a778..0000000000
--- a/assembly/plugins/org.eclipse.jpt/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 2006 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
-###############################################################################
-
-pluginName = Dali Java Persistence Tools
-providerName = Eclipse.org
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/.project b/common/features/org.eclipse.jpt.common.eclipselink.feature/.project
deleted file mode 100644
index 04b106dcd1..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.common.eclipselink.feature</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.FeatureBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.FeatureNature</nature>
- </natures>
-</projectDescription>
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/build.properties b/common/features/org.eclipse.jpt.common.eclipselink.feature/build.properties
deleted file mode 100644
index 4f50d146f4..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/build.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = feature.xml,\
- eclipse_update_120.jpg,\
- feature.properties
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/eclipse_update_120.jpg b/common/features/org.eclipse.jpt.common.eclipselink.feature/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/feature.properties b/common/features/org.eclipse.jpt.common.eclipselink.feature/feature.properties
deleted file mode 100644
index 8a0aad2c52..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/feature.properties
+++ /dev/null
@@ -1,43 +0,0 @@
-###############################################################################
-# Copyright (c) 2010, 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
-###############################################################################
-
-# "featureName" property - name of the feature
-featureName=Dali Java Persistence Tools - EclipseLink Common
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-
-# "description" property - description of the feature
-description=Dali Java Persistence Tools - EclipseLink Common
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006, 2011 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-########### end of license property ##########################################
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/feature.xml b/common/features/org.eclipse.jpt.common.eclipselink.feature/feature.xml
deleted file mode 100644
index 9119bbfd08..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/feature.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
- id="org.eclipse.jpt.common.eclipselink.feature"
- label="%featureName"
- version="1.1.0.qualifier"
- provider-name="%providerName"
- plugin="org.eclipse.jpt.common.eclipselink.branding"
- license-feature="org.eclipse.license"
- license-feature-version="1.0.0.qualifier">
-
- <description>
- %description
- </description>
-
- <copyright>
- %copyright
- </copyright>
-
- <license url="license.html">
- %license
- </license>
-
- <requires>
- <import feature="org.eclipse.jpt.common.feature" version="1.1.0"/>
- </requires>
-
- <plugin
- id="org.eclipse.jpt.common.eclipselink.core"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.eclipse.jpt.common.eclipselink.branding"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
-</feature>
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.html b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.html
deleted file mode 100644
index d4916df475..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 06, 2007</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-<h3>Source Code</h3>
-<p>This plug-in contains source code zip files (&quot;Source Zips&quot;) that correspond to binary content in other plug-ins. These Source Zips may be distributed under different license
-agreements and/or notices. Details about these license agreements and notices are contained in &quot;about.html&quot; files (&quot;Abouts&quot;) located in sub-directories in the
-src/ directory of this plug-in. Such Abouts govern your use of the Source Zips in that directory, not the EPL.</p>
-
-</body>
-</html>
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.ini b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.ini
deleted file mode 100644
index 2dee36a2e2..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.ini
+++ /dev/null
@@ -1,31 +0,0 @@
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.gif
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (not translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-
-
-
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.mappings b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.mappings
deleted file mode 100644
index a28390a75e..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=@build@
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.properties b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.properties
deleted file mode 100644
index 243586dc0f..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/about.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-###############################################################################
-# Copyright (c) 2008, 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
-###############################################################################
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-#
-# Do not translate any values surrounded by {}
-
-blurb=Dali Java Persistence Tools - EclipseLink Common Source\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others 2006, 2011. All rights reserved.\n\
-Visit http://www.eclipse.org/webtools
-
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/build.properties b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/build.properties
deleted file mode 100644
index 1c3e2eb73b..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = \
- about.html,\
- about.ini,\
- about.mappings,\
- about.properties,\
- eclipse32.gif,\
- plugin.properties,\
- plugin.xml,\
- src/**,\
- META-INF/
-sourcePlugin = true
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/eclipse32.gif b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/eclipse32.gif
deleted file mode 100644
index e6ad7ccd75..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/eclipse32.gif
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/eclipse32.png b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/eclipse32.png
deleted file mode 100644
index 50ae49de24..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/eclipse32.png
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/eclipse_update_120.jpg b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/epl-v10.html b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/epl-v10.html
deleted file mode 100644
index 022ad2955b..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/epl-v10.html
+++ /dev/null
@@ -1,328 +0,0 @@
-<html xmlns:o="urn:schemas-microsoft-com:office:office"
-xmlns:w="urn:schemas-microsoft-com:office:word"
-xmlns="http://www.w3.org/TR/REC-html40">
-
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
-<meta name=ProgId content=Word.Document>
-<meta name=Generator content="Microsoft Word 9">
-<meta name=Originator content="Microsoft Word 9">
-<link rel=File-List
-href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
-<title>Eclipse Public License - Version 1.0</title>
-<!--[if gte mso 9]><xml>
- <o:DocumentProperties>
- <o:Revision>2</o:Revision>
- <o:TotalTime>3</o:TotalTime>
- <o:Created>2004-03-05T23:03:00Z</o:Created>
- <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved>
- <o:Pages>4</o:Pages>
- <o:Words>1626</o:Words>
- <o:Characters>9270</o:Characters>
- <o:Lines>77</o:Lines>
- <o:Paragraphs>18</o:Paragraphs>
- <o:CharactersWithSpaces>11384</o:CharactersWithSpaces>
- <o:Version>9.4402</o:Version>
- </o:DocumentProperties>
-</xml><![endif]--><!--[if gte mso 9]><xml>
- <w:WordDocument>
- <w:TrackRevisions/>
- </w:WordDocument>
-</xml><![endif]-->
-<style>
-<!--
- /* Font Definitions */
-@font-face
- {font-family:Tahoma;
- panose-1:2 11 6 4 3 5 4 4 2 4;
- mso-font-charset:0;
- mso-generic-font-family:swiss;
- mso-font-pitch:variable;
- mso-font-signature:553679495 -2147483648 8 0 66047 0;}
- /* Style Definitions */
-p.MsoNormal, li.MsoNormal, div.MsoNormal
- {mso-style-parent:"";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p
- {margin-right:0in;
- mso-margin-top-alt:auto;
- mso-margin-bottom-alt:auto;
- margin-left:0in;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p.BalloonText, li.BalloonText, div.BalloonText
- {mso-style-name:"Balloon Text";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:8.0pt;
- font-family:Tahoma;
- mso-fareast-font-family:"Times New Roman";}
-@page Section1
- {size:8.5in 11.0in;
- margin:1.0in 1.25in 1.0in 1.25in;
- mso-header-margin:.5in;
- mso-footer-margin:.5in;
- mso-paper-source:0;}
-div.Section1
- {page:Section1;}
--->
-</style>
-</head>
-
-<body lang=EN-US style='tab-interval:.5in'>
-
-<div class=Section1>
-
-<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
-</p>
-
-<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
-THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE,
-REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
-OF THIS AGREEMENT.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Contribution&quot; means:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-in the case of the initial Contributor, the initial code and documentation
-distributed under this Agreement, and<br clear=left>
-b) in the case of each subsequent Contributor:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-changes to the Program, and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-additions to the Program;</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
-such changes and/or additions to the Program originate from and are distributed
-by that particular Contributor. A Contribution 'originates' from a Contributor
-if it was added to the Program by such Contributor itself or anyone acting on
-such Contributor's behalf. Contributions do not include additions to the
-Program which: (i) are separate modules of software distributed in conjunction
-with the Program under their own license agreement, and (ii) are not derivative
-works of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Contributor&quot; means any person or
-entity that distributes the Program.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Licensed Patents &quot; mean patent
-claims licensable by a Contributor which are necessarily infringed by the use
-or sale of its Contribution alone or when combined with the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Program&quot; means the Contributions
-distributed in accordance with this Agreement.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Recipient&quot; means anyone who
-receives the Program under this Agreement, including all Contributors.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-Subject to the terms of this Agreement, each Contributor hereby grants Recipient
-a non-exclusive, worldwide, royalty-free copyright license to<span
-style='color:red'> </span>reproduce, prepare derivative works of, publicly
-display, publicly perform, distribute and sublicense the Contribution of such
-Contributor, if any, and such derivative works, in source code and object code
-form.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-Subject to the terms of this Agreement, each Contributor hereby grants
-Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
-patent license under Licensed Patents to make, use, sell, offer to sell, import
-and otherwise transfer the Contribution of such Contributor, if any, in source
-code and object code form. This patent license shall apply to the combination
-of the Contribution and the Program if, at the time the Contribution is added
-by the Contributor, such addition of the Contribution causes such combination
-to be covered by the Licensed Patents. The patent license shall not apply to
-any other combinations which include the Contribution. No hardware per se is
-licensed hereunder. </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
-Recipient understands that although each Contributor grants the licenses to its
-Contributions set forth herein, no assurances are provided by any Contributor
-that the Program does not infringe the patent or other intellectual property
-rights of any other entity. Each Contributor disclaims any liability to Recipient
-for claims brought by any other entity based on infringement of intellectual
-property rights or otherwise. As a condition to exercising the rights and
-licenses granted hereunder, each Recipient hereby assumes sole responsibility
-to secure any other intellectual property rights needed, if any. For example,
-if a third party patent license is required to allow Recipient to distribute
-the Program, it is Recipient's responsibility to acquire that license before
-distributing the Program.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
-Each Contributor represents that to its knowledge it has sufficient copyright
-rights in its Contribution, if any, to grant the copyright license set forth in
-this Agreement. </span></p>
-
-<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
-Program in object code form under its own license agreement, provided that:</span>
-</p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it complies with the terms and conditions of this Agreement; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-its license agreement:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-effectively disclaims on behalf of all Contributors all warranties and
-conditions, express and implied, including warranties or conditions of title
-and non-infringement, and implied warranties or conditions of merchantability
-and fitness for a particular purpose; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-effectively excludes on behalf of all Contributors all liability for damages,
-including direct, indirect, special, incidental and consequential damages, such
-as lost profits; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
-states that any provisions which differ from this Agreement are offered by that
-Contributor alone and not by any other party; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
-states that source code for the Program is available from such Contributor, and
-informs licensees how to obtain it in a reasonable manner on or through a
-medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
-
-<p><span style='font-size:10.0pt'>When the Program is made available in source
-code form:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it must be made available under this Agreement; and </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
-copy of this Agreement must be included with each copy of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
-copyright notices contained within the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
-originator of its Contribution, if any, in a manner that reasonably allows
-subsequent Recipients to identify the originator of the Contribution. </span></p>
-
-<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
-
-<p><span style='font-size:10.0pt'>Commercial distributors of software may
-accept certain responsibilities with respect to end users, business partners
-and the like. While this license is intended to facilitate the commercial use
-of the Program, the Contributor who includes the Program in a commercial
-product offering should do so in a manner which does not create potential
-liability for other Contributors. Therefore, if a Contributor includes the
-Program in a commercial product offering, such Contributor (&quot;Commercial
-Contributor&quot;) hereby agrees to defend and indemnify every other
-Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and
-costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other
-legal actions brought by a third party against the Indemnified Contributor to
-the extent caused by the acts or omissions of such Commercial Contributor in
-connection with its distribution of the Program in a commercial product
-offering. The obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement. In order
-to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
-Contributor in writing of such claim, and b) allow the Commercial Contributor
-to control, and cooperate with the Commercial Contributor in, the defense and
-any related settlement negotiations. The Indemnified Contributor may participate
-in any such claim at its own expense.</span> </p>
-
-<p><span style='font-size:10.0pt'>For example, a Contributor might include the
-Program in a commercial product offering, Product X. That Contributor is then a
-Commercial Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance claims and
-warranties are such Commercial Contributor's responsibility alone. Under this
-section, the Commercial Contributor would have to defend claims against the
-other Contributors related to those performance claims and warranties, and if a
-court requires any other Contributor to pay any damages as a result, the
-Commercial Contributor must pay those damages.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
-WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
-MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and distributing the
-Program and assumes all risks associated with its exercise of rights under this
-Agreement , including but not limited to the risks and costs of program errors,
-compliance with applicable laws, damage to or loss of data, programs or
-equipment, and unavailability or interruption of operations. </span></p>
-
-<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
-OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
-THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
-
-<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
-or unenforceable under applicable law, it shall not affect the validity or
-enforceability of the remainder of the terms of this Agreement, and without
-further action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.</span> </p>
-
-<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
-against any entity (including a cross-claim or counterclaim in a lawsuit)
-alleging that the Program itself (excluding combinations of the Program with
-other software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of the date
-such litigation is filed. </span></p>
-
-<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
-shall terminate if it fails to comply with any of the material terms or
-conditions of this Agreement and does not cure such failure in a reasonable
-period of time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use and
-distribution of the Program as soon as reasonably practicable. However,
-Recipient's obligations under this Agreement and any licenses granted by
-Recipient relating to the Program shall continue and survive. </span></p>
-
-<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
-copies of this Agreement, but in order to avoid inconsistency the Agreement is
-copyrighted and may only be modified in the following manner. The Agreement
-Steward reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement Steward has
-the right to modify this Agreement. The Eclipse Foundation is the initial
-Agreement Steward. The Eclipse Foundation may assign the responsibility to
-serve as the Agreement Steward to a suitable separate entity. Each new version
-of the Agreement will be given a distinguishing version number. The Program
-(including Contributions) may always be distributed subject to the version of
-the Agreement under which it was received. In addition, after a new version of
-the Agreement is published, Contributor may elect to distribute the Program
-(including its Contributions) under the new version. Except as expressly stated
-in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
-the intellectual property of any Contributor under this Agreement, whether
-expressly, by implication, estoppel or otherwise. All rights in the Program not
-expressly granted under this Agreement are reserved.</span> </p>
-
-<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
-State of New York and the intellectual property laws of the United States of
-America. No party to this Agreement will bring a legal action under this
-Agreement more than one year after the cause of action arose. Each party waives
-its rights to a jury trial in any resulting litigation.</span> </p>
-
-<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
-
-</div>
-
-</body>
-
-</html>
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/license.html b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/license.html
deleted file mode 100644
index 5ad00ba719..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/license.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
-<title>Eclipse.org Software User Agreement</title>
-</head>
-
-<body lang="EN-US" link=blue vlink=purple>
-<h2>Eclipse Foundation Software User Agreement</h2>
-<p>March 17, 2005</p>
-
-<h3>Usage Of Content</h3>
-
-<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
- (COLLECTIVELY &quot;CONTENT&quot;). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
- CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
- OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
- NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
- CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
-
-<h3>Applicable Licenses</h3>
-
-<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0
- (&quot;EPL&quot;). A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
- For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse.org CVS repository (&quot;Repository&quot;) in CVS
- modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
-
-<ul>
- <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
-
- <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
- <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;. Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
- and/or Fragments associated with that Feature.</li>
- <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
-
-</ul>
-
-<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
-Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;). Abouts and Feature Licenses may be located in any directory of a Download or Module
-including, but not limited to the following locations:</p>
-
-<ul>
- <li>The top-level (root) directory</li>
-
- <li>Plug-in and Fragment directories</li>
- <li>Inside Plug-ins and Fragments packaged as JARs</li>
- <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
- <li>Feature directories</li>
-</ul>
-
-
-<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Eclipse Update Manager, you must agree to a license (&quot;Feature Update License&quot;) during the
-installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
-inform you where you can locate them. Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
-Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
-that directory.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
- <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
-
- <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
- <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
- <li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>
- <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-
- <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License is provided, please
-contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
-
-<h3>Cryptography</h3>
-
-<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
- another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
- possession, or use, and re-export of encryption software, to see if this is permitted.</p>
-
-<small>Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.</small>
-
-</body>
-</html>
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/plugin.properties b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/plugin.properties
deleted file mode 100644
index 11a79f2639..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateBundle/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 2010, 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
-###############################################################################
-
-pluginName = Dali Java Persistence Tools - EclipseLink Common
-providerName = Eclipse Web Tools Platform
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateFeature/build.properties b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateFeature/build.properties
deleted file mode 100644
index 897839fcea..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateFeature/build.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = \
- eclipse_update_120.jpg,\
- feature.xml,\
- feature.properties
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateFeature/eclipse_update_120.jpg b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateFeature/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateFeature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateFeature/feature.properties b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateFeature/feature.properties
deleted file mode 100644
index 33b324c9b1..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplateFeature/feature.properties
+++ /dev/null
@@ -1,48 +0,0 @@
-###############################################################################
-# Copyright (c) 2010, 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
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Dali Java Persistence Tools - EclipseLink Common
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-
-# "description" property - description of the feature
-description=Source code zips for Dali Java Persistence Tools EclipseLink Common
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006, 2011 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-########### end of license property ##########################################
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.html b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.html
deleted file mode 100644
index d4916df475..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 06, 2007</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-<h3>Source Code</h3>
-<p>This plug-in contains source code zip files (&quot;Source Zips&quot;) that correspond to binary content in other plug-ins. These Source Zips may be distributed under different license
-agreements and/or notices. Details about these license agreements and notices are contained in &quot;about.html&quot; files (&quot;Abouts&quot;) located in sub-directories in the
-src/ directory of this plug-in. Such Abouts govern your use of the Source Zips in that directory, not the EPL.</p>
-
-</body>
-</html>
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.ini b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.ini
deleted file mode 100644
index 2dee36a2e2..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.ini
+++ /dev/null
@@ -1,31 +0,0 @@
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.gif
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (not translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-
-
-
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.mappings b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.mappings
deleted file mode 100644
index a28390a75e..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=@build@
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.properties b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.properties
deleted file mode 100644
index b16ba1fbf9..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/about.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-###############################################################################
-# Copyright (c) 2010, 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
-###############################################################################
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-#
-# Do not translate any values surrounded by {}
-
-blurb=Dali Java Persistence Tools - EclipseLink Common Source\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others 2006, 2011. All rights reserved.\n\
-Visit http://www.eclipse.org/webtools
-
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/build.properties b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/build.properties
deleted file mode 100644
index 6dcfcd6269..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = \
- about.html,\
- about.ini,\
- about.mappings,\
- about.properties,\
- eclipse32.gif,\
- plugin.properties,\
- plugin.xml,\
- src/**,\
- META-INF/
-sourcePlugin = true
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/eclipse32.gif b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/eclipse32.gif
deleted file mode 100644
index e6ad7ccd75..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/eclipse32.gif
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/eclipse32.png b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/eclipse32.png
deleted file mode 100644
index 50ae49de24..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/eclipse32.png
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/eclipse_update_120.jpg b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/epl-v10.html b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/epl-v10.html
deleted file mode 100644
index 022ad2955b..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/epl-v10.html
+++ /dev/null
@@ -1,328 +0,0 @@
-<html xmlns:o="urn:schemas-microsoft-com:office:office"
-xmlns:w="urn:schemas-microsoft-com:office:word"
-xmlns="http://www.w3.org/TR/REC-html40">
-
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
-<meta name=ProgId content=Word.Document>
-<meta name=Generator content="Microsoft Word 9">
-<meta name=Originator content="Microsoft Word 9">
-<link rel=File-List
-href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
-<title>Eclipse Public License - Version 1.0</title>
-<!--[if gte mso 9]><xml>
- <o:DocumentProperties>
- <o:Revision>2</o:Revision>
- <o:TotalTime>3</o:TotalTime>
- <o:Created>2004-03-05T23:03:00Z</o:Created>
- <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved>
- <o:Pages>4</o:Pages>
- <o:Words>1626</o:Words>
- <o:Characters>9270</o:Characters>
- <o:Lines>77</o:Lines>
- <o:Paragraphs>18</o:Paragraphs>
- <o:CharactersWithSpaces>11384</o:CharactersWithSpaces>
- <o:Version>9.4402</o:Version>
- </o:DocumentProperties>
-</xml><![endif]--><!--[if gte mso 9]><xml>
- <w:WordDocument>
- <w:TrackRevisions/>
- </w:WordDocument>
-</xml><![endif]-->
-<style>
-<!--
- /* Font Definitions */
-@font-face
- {font-family:Tahoma;
- panose-1:2 11 6 4 3 5 4 4 2 4;
- mso-font-charset:0;
- mso-generic-font-family:swiss;
- mso-font-pitch:variable;
- mso-font-signature:553679495 -2147483648 8 0 66047 0;}
- /* Style Definitions */
-p.MsoNormal, li.MsoNormal, div.MsoNormal
- {mso-style-parent:"";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p
- {margin-right:0in;
- mso-margin-top-alt:auto;
- mso-margin-bottom-alt:auto;
- margin-left:0in;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p.BalloonText, li.BalloonText, div.BalloonText
- {mso-style-name:"Balloon Text";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:8.0pt;
- font-family:Tahoma;
- mso-fareast-font-family:"Times New Roman";}
-@page Section1
- {size:8.5in 11.0in;
- margin:1.0in 1.25in 1.0in 1.25in;
- mso-header-margin:.5in;
- mso-footer-margin:.5in;
- mso-paper-source:0;}
-div.Section1
- {page:Section1;}
--->
-</style>
-</head>
-
-<body lang=EN-US style='tab-interval:.5in'>
-
-<div class=Section1>
-
-<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
-</p>
-
-<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
-THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE,
-REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
-OF THIS AGREEMENT.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Contribution&quot; means:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-in the case of the initial Contributor, the initial code and documentation
-distributed under this Agreement, and<br clear=left>
-b) in the case of each subsequent Contributor:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-changes to the Program, and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-additions to the Program;</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
-such changes and/or additions to the Program originate from and are distributed
-by that particular Contributor. A Contribution 'originates' from a Contributor
-if it was added to the Program by such Contributor itself or anyone acting on
-such Contributor's behalf. Contributions do not include additions to the
-Program which: (i) are separate modules of software distributed in conjunction
-with the Program under their own license agreement, and (ii) are not derivative
-works of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Contributor&quot; means any person or
-entity that distributes the Program.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Licensed Patents &quot; mean patent
-claims licensable by a Contributor which are necessarily infringed by the use
-or sale of its Contribution alone or when combined with the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Program&quot; means the Contributions
-distributed in accordance with this Agreement.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Recipient&quot; means anyone who
-receives the Program under this Agreement, including all Contributors.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-Subject to the terms of this Agreement, each Contributor hereby grants Recipient
-a non-exclusive, worldwide, royalty-free copyright license to<span
-style='color:red'> </span>reproduce, prepare derivative works of, publicly
-display, publicly perform, distribute and sublicense the Contribution of such
-Contributor, if any, and such derivative works, in source code and object code
-form.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-Subject to the terms of this Agreement, each Contributor hereby grants
-Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
-patent license under Licensed Patents to make, use, sell, offer to sell, import
-and otherwise transfer the Contribution of such Contributor, if any, in source
-code and object code form. This patent license shall apply to the combination
-of the Contribution and the Program if, at the time the Contribution is added
-by the Contributor, such addition of the Contribution causes such combination
-to be covered by the Licensed Patents. The patent license shall not apply to
-any other combinations which include the Contribution. No hardware per se is
-licensed hereunder. </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
-Recipient understands that although each Contributor grants the licenses to its
-Contributions set forth herein, no assurances are provided by any Contributor
-that the Program does not infringe the patent or other intellectual property
-rights of any other entity. Each Contributor disclaims any liability to Recipient
-for claims brought by any other entity based on infringement of intellectual
-property rights or otherwise. As a condition to exercising the rights and
-licenses granted hereunder, each Recipient hereby assumes sole responsibility
-to secure any other intellectual property rights needed, if any. For example,
-if a third party patent license is required to allow Recipient to distribute
-the Program, it is Recipient's responsibility to acquire that license before
-distributing the Program.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
-Each Contributor represents that to its knowledge it has sufficient copyright
-rights in its Contribution, if any, to grant the copyright license set forth in
-this Agreement. </span></p>
-
-<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
-Program in object code form under its own license agreement, provided that:</span>
-</p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it complies with the terms and conditions of this Agreement; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-its license agreement:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-effectively disclaims on behalf of all Contributors all warranties and
-conditions, express and implied, including warranties or conditions of title
-and non-infringement, and implied warranties or conditions of merchantability
-and fitness for a particular purpose; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-effectively excludes on behalf of all Contributors all liability for damages,
-including direct, indirect, special, incidental and consequential damages, such
-as lost profits; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
-states that any provisions which differ from this Agreement are offered by that
-Contributor alone and not by any other party; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
-states that source code for the Program is available from such Contributor, and
-informs licensees how to obtain it in a reasonable manner on or through a
-medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
-
-<p><span style='font-size:10.0pt'>When the Program is made available in source
-code form:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it must be made available under this Agreement; and </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
-copy of this Agreement must be included with each copy of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
-copyright notices contained within the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
-originator of its Contribution, if any, in a manner that reasonably allows
-subsequent Recipients to identify the originator of the Contribution. </span></p>
-
-<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
-
-<p><span style='font-size:10.0pt'>Commercial distributors of software may
-accept certain responsibilities with respect to end users, business partners
-and the like. While this license is intended to facilitate the commercial use
-of the Program, the Contributor who includes the Program in a commercial
-product offering should do so in a manner which does not create potential
-liability for other Contributors. Therefore, if a Contributor includes the
-Program in a commercial product offering, such Contributor (&quot;Commercial
-Contributor&quot;) hereby agrees to defend and indemnify every other
-Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and
-costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other
-legal actions brought by a third party against the Indemnified Contributor to
-the extent caused by the acts or omissions of such Commercial Contributor in
-connection with its distribution of the Program in a commercial product
-offering. The obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement. In order
-to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
-Contributor in writing of such claim, and b) allow the Commercial Contributor
-to control, and cooperate with the Commercial Contributor in, the defense and
-any related settlement negotiations. The Indemnified Contributor may participate
-in any such claim at its own expense.</span> </p>
-
-<p><span style='font-size:10.0pt'>For example, a Contributor might include the
-Program in a commercial product offering, Product X. That Contributor is then a
-Commercial Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance claims and
-warranties are such Commercial Contributor's responsibility alone. Under this
-section, the Commercial Contributor would have to defend claims against the
-other Contributors related to those performance claims and warranties, and if a
-court requires any other Contributor to pay any damages as a result, the
-Commercial Contributor must pay those damages.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
-WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
-MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and distributing the
-Program and assumes all risks associated with its exercise of rights under this
-Agreement , including but not limited to the risks and costs of program errors,
-compliance with applicable laws, damage to or loss of data, programs or
-equipment, and unavailability or interruption of operations. </span></p>
-
-<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
-OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
-THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
-
-<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
-or unenforceable under applicable law, it shall not affect the validity or
-enforceability of the remainder of the terms of this Agreement, and without
-further action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.</span> </p>
-
-<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
-against any entity (including a cross-claim or counterclaim in a lawsuit)
-alleging that the Program itself (excluding combinations of the Program with
-other software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of the date
-such litigation is filed. </span></p>
-
-<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
-shall terminate if it fails to comply with any of the material terms or
-conditions of this Agreement and does not cure such failure in a reasonable
-period of time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use and
-distribution of the Program as soon as reasonably practicable. However,
-Recipient's obligations under this Agreement and any licenses granted by
-Recipient relating to the Program shall continue and survive. </span></p>
-
-<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
-copies of this Agreement, but in order to avoid inconsistency the Agreement is
-copyrighted and may only be modified in the following manner. The Agreement
-Steward reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement Steward has
-the right to modify this Agreement. The Eclipse Foundation is the initial
-Agreement Steward. The Eclipse Foundation may assign the responsibility to
-serve as the Agreement Steward to a suitable separate entity. Each new version
-of the Agreement will be given a distinguishing version number. The Program
-(including Contributions) may always be distributed subject to the version of
-the Agreement under which it was received. In addition, after a new version of
-the Agreement is published, Contributor may elect to distribute the Program
-(including its Contributions) under the new version. Except as expressly stated
-in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
-the intellectual property of any Contributor under this Agreement, whether
-expressly, by implication, estoppel or otherwise. All rights in the Program not
-expressly granted under this Agreement are reserved.</span> </p>
-
-<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
-State of New York and the intellectual property laws of the United States of
-America. No party to this Agreement will bring a legal action under this
-Agreement more than one year after the cause of action arose. Each party waives
-its rights to a jury trial in any resulting litigation.</span> </p>
-
-<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
-
-</div>
-
-</body>
-
-</html>
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/license.html b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/license.html
deleted file mode 100644
index 5ad00ba719..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/license.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
-<title>Eclipse.org Software User Agreement</title>
-</head>
-
-<body lang="EN-US" link=blue vlink=purple>
-<h2>Eclipse Foundation Software User Agreement</h2>
-<p>March 17, 2005</p>
-
-<h3>Usage Of Content</h3>
-
-<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
- (COLLECTIVELY &quot;CONTENT&quot;). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
- CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
- OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
- NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
- CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
-
-<h3>Applicable Licenses</h3>
-
-<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0
- (&quot;EPL&quot;). A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
- For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse.org CVS repository (&quot;Repository&quot;) in CVS
- modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
-
-<ul>
- <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
-
- <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
- <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;. Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
- and/or Fragments associated with that Feature.</li>
- <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
-
-</ul>
-
-<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
-Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;). Abouts and Feature Licenses may be located in any directory of a Download or Module
-including, but not limited to the following locations:</p>
-
-<ul>
- <li>The top-level (root) directory</li>
-
- <li>Plug-in and Fragment directories</li>
- <li>Inside Plug-ins and Fragments packaged as JARs</li>
- <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
- <li>Feature directories</li>
-</ul>
-
-
-<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Eclipse Update Manager, you must agree to a license (&quot;Feature Update License&quot;) during the
-installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
-inform you where you can locate them. Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
-Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
-that directory.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
- <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
-
- <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
- <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
- <li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>
- <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-
- <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License is provided, please
-contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
-
-<h3>Cryptography</h3>
-
-<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
- another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
- possession, or use, and re-export of encryption software, to see if this is permitted.</p>
-
-<small>Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.</small>
-
-</body>
-</html>
diff --git a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/plugin.properties b/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/plugin.properties
deleted file mode 100644
index 11a79f2639..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink.feature/sourceTemplatePlugin/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 2010, 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
-###############################################################################
-
-pluginName = Dali Java Persistence Tools - EclipseLink Common
-providerName = Eclipse Web Tools Platform
diff --git a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/.cvsignore b/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/.cvsignore
deleted file mode 100644
index 9d0e114f67..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-feature.temp.folder
-build.xml
diff --git a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/.project b/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/.project
deleted file mode 100644
index 0b7335445e..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.common.eclipselink_sdk.feature</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.FeatureBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.FeatureNature</nature>
- </natures>
-</projectDescription>
diff --git a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/build.properties b/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/build.properties
deleted file mode 100644
index 6f317aefa0..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/build.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = feature.xml,\
- feature.properties,\
- eclipse_update_120.jpg
-
-generate.feature@org.eclipse.jpt.common.eclipselink.feature.source=org.eclipse.jpt.common.eclipselink.feature
diff --git a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/eclipse_update_120.jpg b/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/feature.properties b/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/feature.properties
deleted file mode 100644
index 465b51a640..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/feature.properties
+++ /dev/null
@@ -1,43 +0,0 @@
-###############################################################################
-# Copyright (c) 2010, 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
-###############################################################################
-
-# "featureName" property - name of the feature
-featureName=Dali Java Persistence Tools - EclipseLink Common SDK
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-
-# "description" property - description of the feature
-description=Source code archives for Dali Java Persistence - EclipseLink Common
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006, 2011 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-########### end of license property ##########################################
diff --git a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/feature.xml b/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/feature.xml
deleted file mode 100644
index 04d49b12e6..0000000000
--- a/common/features/org.eclipse.jpt.common.eclipselink_sdk.feature/feature.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
- id="org.eclipse.jpt.common.eclipselink_sdk.feature"
- label="%featureName"
- version="1.1.0.qualifier"
- provider-name="%providerName"
- license-feature="org.eclipse.license"
- license-feature-version="1.0.0.qualifier">
-
- <description>
- %description
- </description>
-
- <copyright>
- %copyright
- </copyright>
-
- <license url="license.html">
- %license
- </license>
-
- <includes
- id="org.eclipse.jpt.common.eclipselink.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.common.eclipselink.feature.source"
- version="0.0.0"/>
-
-</feature>
diff --git a/common/features/org.eclipse.jpt.common.feature/.project b/common/features/org.eclipse.jpt.common.feature/.project
deleted file mode 100644
index d3dad03e08..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.common.feature</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.FeatureBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.FeatureNature</nature>
- </natures>
-</projectDescription>
diff --git a/common/features/org.eclipse.jpt.common.feature/build.properties b/common/features/org.eclipse.jpt.common.feature/build.properties
deleted file mode 100644
index b6886beb14..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/build.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = feature.xml,\
- eclipse_update_120.jpg,\
- feature.properties
diff --git a/common/features/org.eclipse.jpt.common.feature/eclipse_update_120.jpg b/common/features/org.eclipse.jpt.common.feature/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.feature/feature.properties b/common/features/org.eclipse.jpt.common.feature/feature.properties
deleted file mode 100644
index 05d3200141..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/feature.properties
+++ /dev/null
@@ -1,43 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-
-# "featureName" property - name of the feature
-featureName=Dali Java Persistence Tools - Common
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-
-# "description" property - description of the feature
-description=Dali Java Persistence Tools - Common
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006, 2011 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-########### end of license property ##########################################
diff --git a/common/features/org.eclipse.jpt.common.feature/feature.xml b/common/features/org.eclipse.jpt.common.feature/feature.xml
deleted file mode 100644
index 32c1805e6c..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/feature.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
- id="org.eclipse.jpt.common.feature"
- label="%featureName"
- version="1.1.0.qualifier"
- provider-name="%providerName"
- plugin="org.eclipse.jpt.common.branding"
- license-feature="org.eclipse.license"
- license-feature-version="1.0.0.qualifier">
-
- <description>
- %description
- </description>
-
- <copyright>
- %copyright
- </copyright>
-
- <license url="license.html">
- %license
- </license>
-
- <plugin
- id="org.eclipse.jpt.common.utility"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.eclipse.jpt.common.core"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.eclipse.jpt.common.ui"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
- <plugin
- id="org.eclipse.jpt.common.branding"
- download-size="0"
- install-size="0"
- version="0.0.0"
- unpack="false"/>
-
-</feature>
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.html b/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.html
deleted file mode 100644
index d4916df475..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 06, 2007</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-<h3>Source Code</h3>
-<p>This plug-in contains source code zip files (&quot;Source Zips&quot;) that correspond to binary content in other plug-ins. These Source Zips may be distributed under different license
-agreements and/or notices. Details about these license agreements and notices are contained in &quot;about.html&quot; files (&quot;Abouts&quot;) located in sub-directories in the
-src/ directory of this plug-in. Such Abouts govern your use of the Source Zips in that directory, not the EPL.</p>
-
-</body>
-</html>
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.ini b/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.ini
deleted file mode 100644
index 2dee36a2e2..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.ini
+++ /dev/null
@@ -1,31 +0,0 @@
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.gif
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (not translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-
-
-
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.mappings b/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.mappings
deleted file mode 100644
index a28390a75e..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=@build@
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.properties b/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.properties
deleted file mode 100644
index e40c332da8..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/about.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-#
-# Do not translate any values surrounded by {}
-
-blurb=Dali Java Persistence Tools - Common Source\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others 2006, 2011. All rights reserved.\n\
-Visit http://www.eclipse.org/webtools
-
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/build.properties b/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/build.properties
deleted file mode 100644
index 1c3e2eb73b..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = \
- about.html,\
- about.ini,\
- about.mappings,\
- about.properties,\
- eclipse32.gif,\
- plugin.properties,\
- plugin.xml,\
- src/**,\
- META-INF/
-sourcePlugin = true
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/eclipse32.gif b/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/eclipse32.gif
deleted file mode 100644
index e6ad7ccd75..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/eclipse32.gif
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/eclipse32.png b/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/eclipse32.png
deleted file mode 100644
index 50ae49de24..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/eclipse32.png
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/eclipse_update_120.jpg b/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/epl-v10.html b/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/epl-v10.html
deleted file mode 100644
index 022ad2955b..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/epl-v10.html
+++ /dev/null
@@ -1,328 +0,0 @@
-<html xmlns:o="urn:schemas-microsoft-com:office:office"
-xmlns:w="urn:schemas-microsoft-com:office:word"
-xmlns="http://www.w3.org/TR/REC-html40">
-
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
-<meta name=ProgId content=Word.Document>
-<meta name=Generator content="Microsoft Word 9">
-<meta name=Originator content="Microsoft Word 9">
-<link rel=File-List
-href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
-<title>Eclipse Public License - Version 1.0</title>
-<!--[if gte mso 9]><xml>
- <o:DocumentProperties>
- <o:Revision>2</o:Revision>
- <o:TotalTime>3</o:TotalTime>
- <o:Created>2004-03-05T23:03:00Z</o:Created>
- <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved>
- <o:Pages>4</o:Pages>
- <o:Words>1626</o:Words>
- <o:Characters>9270</o:Characters>
- <o:Lines>77</o:Lines>
- <o:Paragraphs>18</o:Paragraphs>
- <o:CharactersWithSpaces>11384</o:CharactersWithSpaces>
- <o:Version>9.4402</o:Version>
- </o:DocumentProperties>
-</xml><![endif]--><!--[if gte mso 9]><xml>
- <w:WordDocument>
- <w:TrackRevisions/>
- </w:WordDocument>
-</xml><![endif]-->
-<style>
-<!--
- /* Font Definitions */
-@font-face
- {font-family:Tahoma;
- panose-1:2 11 6 4 3 5 4 4 2 4;
- mso-font-charset:0;
- mso-generic-font-family:swiss;
- mso-font-pitch:variable;
- mso-font-signature:553679495 -2147483648 8 0 66047 0;}
- /* Style Definitions */
-p.MsoNormal, li.MsoNormal, div.MsoNormal
- {mso-style-parent:"";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p
- {margin-right:0in;
- mso-margin-top-alt:auto;
- mso-margin-bottom-alt:auto;
- margin-left:0in;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p.BalloonText, li.BalloonText, div.BalloonText
- {mso-style-name:"Balloon Text";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:8.0pt;
- font-family:Tahoma;
- mso-fareast-font-family:"Times New Roman";}
-@page Section1
- {size:8.5in 11.0in;
- margin:1.0in 1.25in 1.0in 1.25in;
- mso-header-margin:.5in;
- mso-footer-margin:.5in;
- mso-paper-source:0;}
-div.Section1
- {page:Section1;}
--->
-</style>
-</head>
-
-<body lang=EN-US style='tab-interval:.5in'>
-
-<div class=Section1>
-
-<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
-</p>
-
-<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
-THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE,
-REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
-OF THIS AGREEMENT.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Contribution&quot; means:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-in the case of the initial Contributor, the initial code and documentation
-distributed under this Agreement, and<br clear=left>
-b) in the case of each subsequent Contributor:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-changes to the Program, and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-additions to the Program;</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
-such changes and/or additions to the Program originate from and are distributed
-by that particular Contributor. A Contribution 'originates' from a Contributor
-if it was added to the Program by such Contributor itself or anyone acting on
-such Contributor's behalf. Contributions do not include additions to the
-Program which: (i) are separate modules of software distributed in conjunction
-with the Program under their own license agreement, and (ii) are not derivative
-works of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Contributor&quot; means any person or
-entity that distributes the Program.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Licensed Patents &quot; mean patent
-claims licensable by a Contributor which are necessarily infringed by the use
-or sale of its Contribution alone or when combined with the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Program&quot; means the Contributions
-distributed in accordance with this Agreement.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Recipient&quot; means anyone who
-receives the Program under this Agreement, including all Contributors.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-Subject to the terms of this Agreement, each Contributor hereby grants Recipient
-a non-exclusive, worldwide, royalty-free copyright license to<span
-style='color:red'> </span>reproduce, prepare derivative works of, publicly
-display, publicly perform, distribute and sublicense the Contribution of such
-Contributor, if any, and such derivative works, in source code and object code
-form.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-Subject to the terms of this Agreement, each Contributor hereby grants
-Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
-patent license under Licensed Patents to make, use, sell, offer to sell, import
-and otherwise transfer the Contribution of such Contributor, if any, in source
-code and object code form. This patent license shall apply to the combination
-of the Contribution and the Program if, at the time the Contribution is added
-by the Contributor, such addition of the Contribution causes such combination
-to be covered by the Licensed Patents. The patent license shall not apply to
-any other combinations which include the Contribution. No hardware per se is
-licensed hereunder. </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
-Recipient understands that although each Contributor grants the licenses to its
-Contributions set forth herein, no assurances are provided by any Contributor
-that the Program does not infringe the patent or other intellectual property
-rights of any other entity. Each Contributor disclaims any liability to Recipient
-for claims brought by any other entity based on infringement of intellectual
-property rights or otherwise. As a condition to exercising the rights and
-licenses granted hereunder, each Recipient hereby assumes sole responsibility
-to secure any other intellectual property rights needed, if any. For example,
-if a third party patent license is required to allow Recipient to distribute
-the Program, it is Recipient's responsibility to acquire that license before
-distributing the Program.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
-Each Contributor represents that to its knowledge it has sufficient copyright
-rights in its Contribution, if any, to grant the copyright license set forth in
-this Agreement. </span></p>
-
-<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
-Program in object code form under its own license agreement, provided that:</span>
-</p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it complies with the terms and conditions of this Agreement; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-its license agreement:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-effectively disclaims on behalf of all Contributors all warranties and
-conditions, express and implied, including warranties or conditions of title
-and non-infringement, and implied warranties or conditions of merchantability
-and fitness for a particular purpose; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-effectively excludes on behalf of all Contributors all liability for damages,
-including direct, indirect, special, incidental and consequential damages, such
-as lost profits; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
-states that any provisions which differ from this Agreement are offered by that
-Contributor alone and not by any other party; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
-states that source code for the Program is available from such Contributor, and
-informs licensees how to obtain it in a reasonable manner on or through a
-medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
-
-<p><span style='font-size:10.0pt'>When the Program is made available in source
-code form:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it must be made available under this Agreement; and </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
-copy of this Agreement must be included with each copy of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
-copyright notices contained within the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
-originator of its Contribution, if any, in a manner that reasonably allows
-subsequent Recipients to identify the originator of the Contribution. </span></p>
-
-<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
-
-<p><span style='font-size:10.0pt'>Commercial distributors of software may
-accept certain responsibilities with respect to end users, business partners
-and the like. While this license is intended to facilitate the commercial use
-of the Program, the Contributor who includes the Program in a commercial
-product offering should do so in a manner which does not create potential
-liability for other Contributors. Therefore, if a Contributor includes the
-Program in a commercial product offering, such Contributor (&quot;Commercial
-Contributor&quot;) hereby agrees to defend and indemnify every other
-Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and
-costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other
-legal actions brought by a third party against the Indemnified Contributor to
-the extent caused by the acts or omissions of such Commercial Contributor in
-connection with its distribution of the Program in a commercial product
-offering. The obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement. In order
-to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
-Contributor in writing of such claim, and b) allow the Commercial Contributor
-to control, and cooperate with the Commercial Contributor in, the defense and
-any related settlement negotiations. The Indemnified Contributor may participate
-in any such claim at its own expense.</span> </p>
-
-<p><span style='font-size:10.0pt'>For example, a Contributor might include the
-Program in a commercial product offering, Product X. That Contributor is then a
-Commercial Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance claims and
-warranties are such Commercial Contributor's responsibility alone. Under this
-section, the Commercial Contributor would have to defend claims against the
-other Contributors related to those performance claims and warranties, and if a
-court requires any other Contributor to pay any damages as a result, the
-Commercial Contributor must pay those damages.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
-WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
-MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and distributing the
-Program and assumes all risks associated with its exercise of rights under this
-Agreement , including but not limited to the risks and costs of program errors,
-compliance with applicable laws, damage to or loss of data, programs or
-equipment, and unavailability or interruption of operations. </span></p>
-
-<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
-OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
-THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
-
-<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
-or unenforceable under applicable law, it shall not affect the validity or
-enforceability of the remainder of the terms of this Agreement, and without
-further action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.</span> </p>
-
-<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
-against any entity (including a cross-claim or counterclaim in a lawsuit)
-alleging that the Program itself (excluding combinations of the Program with
-other software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of the date
-such litigation is filed. </span></p>
-
-<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
-shall terminate if it fails to comply with any of the material terms or
-conditions of this Agreement and does not cure such failure in a reasonable
-period of time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use and
-distribution of the Program as soon as reasonably practicable. However,
-Recipient's obligations under this Agreement and any licenses granted by
-Recipient relating to the Program shall continue and survive. </span></p>
-
-<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
-copies of this Agreement, but in order to avoid inconsistency the Agreement is
-copyrighted and may only be modified in the following manner. The Agreement
-Steward reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement Steward has
-the right to modify this Agreement. The Eclipse Foundation is the initial
-Agreement Steward. The Eclipse Foundation may assign the responsibility to
-serve as the Agreement Steward to a suitable separate entity. Each new version
-of the Agreement will be given a distinguishing version number. The Program
-(including Contributions) may always be distributed subject to the version of
-the Agreement under which it was received. In addition, after a new version of
-the Agreement is published, Contributor may elect to distribute the Program
-(including its Contributions) under the new version. Except as expressly stated
-in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
-the intellectual property of any Contributor under this Agreement, whether
-expressly, by implication, estoppel or otherwise. All rights in the Program not
-expressly granted under this Agreement are reserved.</span> </p>
-
-<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
-State of New York and the intellectual property laws of the United States of
-America. No party to this Agreement will bring a legal action under this
-Agreement more than one year after the cause of action arose. Each party waives
-its rights to a jury trial in any resulting litigation.</span> </p>
-
-<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
-
-</div>
-
-</body>
-
-</html>
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/license.html b/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/license.html
deleted file mode 100644
index 5ad00ba719..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/license.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
-<title>Eclipse.org Software User Agreement</title>
-</head>
-
-<body lang="EN-US" link=blue vlink=purple>
-<h2>Eclipse Foundation Software User Agreement</h2>
-<p>March 17, 2005</p>
-
-<h3>Usage Of Content</h3>
-
-<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
- (COLLECTIVELY &quot;CONTENT&quot;). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
- CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
- OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
- NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
- CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
-
-<h3>Applicable Licenses</h3>
-
-<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0
- (&quot;EPL&quot;). A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
- For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse.org CVS repository (&quot;Repository&quot;) in CVS
- modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
-
-<ul>
- <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
-
- <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
- <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;. Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
- and/or Fragments associated with that Feature.</li>
- <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
-
-</ul>
-
-<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
-Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;). Abouts and Feature Licenses may be located in any directory of a Download or Module
-including, but not limited to the following locations:</p>
-
-<ul>
- <li>The top-level (root) directory</li>
-
- <li>Plug-in and Fragment directories</li>
- <li>Inside Plug-ins and Fragments packaged as JARs</li>
- <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
- <li>Feature directories</li>
-</ul>
-
-
-<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Eclipse Update Manager, you must agree to a license (&quot;Feature Update License&quot;) during the
-installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
-inform you where you can locate them. Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
-Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
-that directory.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
- <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
-
- <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
- <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
- <li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>
- <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-
- <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License is provided, please
-contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
-
-<h3>Cryptography</h3>
-
-<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
- another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
- possession, or use, and re-export of encryption software, to see if this is permitted.</p>
-
-<small>Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.</small>
-
-</body>
-</html>
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/plugin.properties b/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/plugin.properties
deleted file mode 100644
index 5d10675de1..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateBundle/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-
-pluginName = Dali Java Persistence Tools - Common
-providerName = Eclipse Web Tools Platform
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateFeature/build.properties b/common/features/org.eclipse.jpt.common.feature/sourceTemplateFeature/build.properties
deleted file mode 100644
index 897839fcea..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateFeature/build.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = \
- eclipse_update_120.jpg,\
- feature.xml,\
- feature.properties
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateFeature/eclipse_update_120.jpg b/common/features/org.eclipse.jpt.common.feature/sourceTemplateFeature/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateFeature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplateFeature/feature.properties b/common/features/org.eclipse.jpt.common.feature/sourceTemplateFeature/feature.properties
deleted file mode 100644
index c96ff3f69b..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplateFeature/feature.properties
+++ /dev/null
@@ -1,48 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Dali Java Persistence Tools - Common
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-
-# "description" property - description of the feature
-description=Source code zips for Dali Java Persistence Tools Common
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006, 2011 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-########### end of license property ##########################################
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.html b/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.html
deleted file mode 100644
index d4916df475..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 06, 2007</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-<h3>Source Code</h3>
-<p>This plug-in contains source code zip files (&quot;Source Zips&quot;) that correspond to binary content in other plug-ins. These Source Zips may be distributed under different license
-agreements and/or notices. Details about these license agreements and notices are contained in &quot;about.html&quot; files (&quot;Abouts&quot;) located in sub-directories in the
-src/ directory of this plug-in. Such Abouts govern your use of the Source Zips in that directory, not the EPL.</p>
-
-</body>
-</html>
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.ini b/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.ini
deleted file mode 100644
index 2dee36a2e2..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.ini
+++ /dev/null
@@ -1,31 +0,0 @@
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.gif
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (not translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-
-
-
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.mappings b/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.mappings
deleted file mode 100644
index a28390a75e..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=@build@
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.properties b/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.properties
deleted file mode 100644
index e40c332da8..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/about.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-#
-# Do not translate any values surrounded by {}
-
-blurb=Dali Java Persistence Tools - Common Source\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others 2006, 2011. All rights reserved.\n\
-Visit http://www.eclipse.org/webtools
-
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/build.properties b/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/build.properties
deleted file mode 100644
index 6dcfcd6269..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = \
- about.html,\
- about.ini,\
- about.mappings,\
- about.properties,\
- eclipse32.gif,\
- plugin.properties,\
- plugin.xml,\
- src/**,\
- META-INF/
-sourcePlugin = true
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/eclipse32.gif b/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/eclipse32.gif
deleted file mode 100644
index e6ad7ccd75..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/eclipse32.gif
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/eclipse32.png b/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/eclipse32.png
deleted file mode 100644
index 50ae49de24..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/eclipse32.png
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/eclipse_update_120.jpg b/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/epl-v10.html b/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/epl-v10.html
deleted file mode 100644
index 022ad2955b..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/epl-v10.html
+++ /dev/null
@@ -1,328 +0,0 @@
-<html xmlns:o="urn:schemas-microsoft-com:office:office"
-xmlns:w="urn:schemas-microsoft-com:office:word"
-xmlns="http://www.w3.org/TR/REC-html40">
-
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
-<meta name=ProgId content=Word.Document>
-<meta name=Generator content="Microsoft Word 9">
-<meta name=Originator content="Microsoft Word 9">
-<link rel=File-List
-href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
-<title>Eclipse Public License - Version 1.0</title>
-<!--[if gte mso 9]><xml>
- <o:DocumentProperties>
- <o:Revision>2</o:Revision>
- <o:TotalTime>3</o:TotalTime>
- <o:Created>2004-03-05T23:03:00Z</o:Created>
- <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved>
- <o:Pages>4</o:Pages>
- <o:Words>1626</o:Words>
- <o:Characters>9270</o:Characters>
- <o:Lines>77</o:Lines>
- <o:Paragraphs>18</o:Paragraphs>
- <o:CharactersWithSpaces>11384</o:CharactersWithSpaces>
- <o:Version>9.4402</o:Version>
- </o:DocumentProperties>
-</xml><![endif]--><!--[if gte mso 9]><xml>
- <w:WordDocument>
- <w:TrackRevisions/>
- </w:WordDocument>
-</xml><![endif]-->
-<style>
-<!--
- /* Font Definitions */
-@font-face
- {font-family:Tahoma;
- panose-1:2 11 6 4 3 5 4 4 2 4;
- mso-font-charset:0;
- mso-generic-font-family:swiss;
- mso-font-pitch:variable;
- mso-font-signature:553679495 -2147483648 8 0 66047 0;}
- /* Style Definitions */
-p.MsoNormal, li.MsoNormal, div.MsoNormal
- {mso-style-parent:"";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p
- {margin-right:0in;
- mso-margin-top-alt:auto;
- mso-margin-bottom-alt:auto;
- margin-left:0in;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-p.BalloonText, li.BalloonText, div.BalloonText
- {mso-style-name:"Balloon Text";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:8.0pt;
- font-family:Tahoma;
- mso-fareast-font-family:"Times New Roman";}
-@page Section1
- {size:8.5in 11.0in;
- margin:1.0in 1.25in 1.0in 1.25in;
- mso-header-margin:.5in;
- mso-footer-margin:.5in;
- mso-paper-source:0;}
-div.Section1
- {page:Section1;}
--->
-</style>
-</head>
-
-<body lang=EN-US style='tab-interval:.5in'>
-
-<div class=Section1>
-
-<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
-</p>
-
-<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
-THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE,
-REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
-OF THIS AGREEMENT.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Contribution&quot; means:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-in the case of the initial Contributor, the initial code and documentation
-distributed under this Agreement, and<br clear=left>
-b) in the case of each subsequent Contributor:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-changes to the Program, and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-additions to the Program;</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
-such changes and/or additions to the Program originate from and are distributed
-by that particular Contributor. A Contribution 'originates' from a Contributor
-if it was added to the Program by such Contributor itself or anyone acting on
-such Contributor's behalf. Contributions do not include additions to the
-Program which: (i) are separate modules of software distributed in conjunction
-with the Program under their own license agreement, and (ii) are not derivative
-works of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Contributor&quot; means any person or
-entity that distributes the Program.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Licensed Patents &quot; mean patent
-claims licensable by a Contributor which are necessarily infringed by the use
-or sale of its Contribution alone or when combined with the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Program&quot; means the Contributions
-distributed in accordance with this Agreement.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Recipient&quot; means anyone who
-receives the Program under this Agreement, including all Contributors.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-Subject to the terms of this Agreement, each Contributor hereby grants Recipient
-a non-exclusive, worldwide, royalty-free copyright license to<span
-style='color:red'> </span>reproduce, prepare derivative works of, publicly
-display, publicly perform, distribute and sublicense the Contribution of such
-Contributor, if any, and such derivative works, in source code and object code
-form.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-Subject to the terms of this Agreement, each Contributor hereby grants
-Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
-patent license under Licensed Patents to make, use, sell, offer to sell, import
-and otherwise transfer the Contribution of such Contributor, if any, in source
-code and object code form. This patent license shall apply to the combination
-of the Contribution and the Program if, at the time the Contribution is added
-by the Contributor, such addition of the Contribution causes such combination
-to be covered by the Licensed Patents. The patent license shall not apply to
-any other combinations which include the Contribution. No hardware per se is
-licensed hereunder. </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
-Recipient understands that although each Contributor grants the licenses to its
-Contributions set forth herein, no assurances are provided by any Contributor
-that the Program does not infringe the patent or other intellectual property
-rights of any other entity. Each Contributor disclaims any liability to Recipient
-for claims brought by any other entity based on infringement of intellectual
-property rights or otherwise. As a condition to exercising the rights and
-licenses granted hereunder, each Recipient hereby assumes sole responsibility
-to secure any other intellectual property rights needed, if any. For example,
-if a third party patent license is required to allow Recipient to distribute
-the Program, it is Recipient's responsibility to acquire that license before
-distributing the Program.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
-Each Contributor represents that to its knowledge it has sufficient copyright
-rights in its Contribution, if any, to grant the copyright license set forth in
-this Agreement. </span></p>
-
-<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
-Program in object code form under its own license agreement, provided that:</span>
-</p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it complies with the terms and conditions of this Agreement; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-its license agreement:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-effectively disclaims on behalf of all Contributors all warranties and
-conditions, express and implied, including warranties or conditions of title
-and non-infringement, and implied warranties or conditions of merchantability
-and fitness for a particular purpose; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-effectively excludes on behalf of all Contributors all liability for damages,
-including direct, indirect, special, incidental and consequential damages, such
-as lost profits; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
-states that any provisions which differ from this Agreement are offered by that
-Contributor alone and not by any other party; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
-states that source code for the Program is available from such Contributor, and
-informs licensees how to obtain it in a reasonable manner on or through a
-medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
-
-<p><span style='font-size:10.0pt'>When the Program is made available in source
-code form:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it must be made available under this Agreement; and </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
-copy of this Agreement must be included with each copy of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
-copyright notices contained within the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
-originator of its Contribution, if any, in a manner that reasonably allows
-subsequent Recipients to identify the originator of the Contribution. </span></p>
-
-<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
-
-<p><span style='font-size:10.0pt'>Commercial distributors of software may
-accept certain responsibilities with respect to end users, business partners
-and the like. While this license is intended to facilitate the commercial use
-of the Program, the Contributor who includes the Program in a commercial
-product offering should do so in a manner which does not create potential
-liability for other Contributors. Therefore, if a Contributor includes the
-Program in a commercial product offering, such Contributor (&quot;Commercial
-Contributor&quot;) hereby agrees to defend and indemnify every other
-Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and
-costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other
-legal actions brought by a third party against the Indemnified Contributor to
-the extent caused by the acts or omissions of such Commercial Contributor in
-connection with its distribution of the Program in a commercial product
-offering. The obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement. In order
-to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
-Contributor in writing of such claim, and b) allow the Commercial Contributor
-to control, and cooperate with the Commercial Contributor in, the defense and
-any related settlement negotiations. The Indemnified Contributor may participate
-in any such claim at its own expense.</span> </p>
-
-<p><span style='font-size:10.0pt'>For example, a Contributor might include the
-Program in a commercial product offering, Product X. That Contributor is then a
-Commercial Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance claims and
-warranties are such Commercial Contributor's responsibility alone. Under this
-section, the Commercial Contributor would have to defend claims against the
-other Contributors related to those performance claims and warranties, and if a
-court requires any other Contributor to pay any damages as a result, the
-Commercial Contributor must pay those damages.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
-WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
-MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and distributing the
-Program and assumes all risks associated with its exercise of rights under this
-Agreement , including but not limited to the risks and costs of program errors,
-compliance with applicable laws, damage to or loss of data, programs or
-equipment, and unavailability or interruption of operations. </span></p>
-
-<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
-OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
-THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
-
-<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
-or unenforceable under applicable law, it shall not affect the validity or
-enforceability of the remainder of the terms of this Agreement, and without
-further action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.</span> </p>
-
-<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
-against any entity (including a cross-claim or counterclaim in a lawsuit)
-alleging that the Program itself (excluding combinations of the Program with
-other software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of the date
-such litigation is filed. </span></p>
-
-<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
-shall terminate if it fails to comply with any of the material terms or
-conditions of this Agreement and does not cure such failure in a reasonable
-period of time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use and
-distribution of the Program as soon as reasonably practicable. However,
-Recipient's obligations under this Agreement and any licenses granted by
-Recipient relating to the Program shall continue and survive. </span></p>
-
-<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
-copies of this Agreement, but in order to avoid inconsistency the Agreement is
-copyrighted and may only be modified in the following manner. The Agreement
-Steward reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement Steward has
-the right to modify this Agreement. The Eclipse Foundation is the initial
-Agreement Steward. The Eclipse Foundation may assign the responsibility to
-serve as the Agreement Steward to a suitable separate entity. Each new version
-of the Agreement will be given a distinguishing version number. The Program
-(including Contributions) may always be distributed subject to the version of
-the Agreement under which it was received. In addition, after a new version of
-the Agreement is published, Contributor may elect to distribute the Program
-(including its Contributions) under the new version. Except as expressly stated
-in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
-the intellectual property of any Contributor under this Agreement, whether
-expressly, by implication, estoppel or otherwise. All rights in the Program not
-expressly granted under this Agreement are reserved.</span> </p>
-
-<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
-State of New York and the intellectual property laws of the United States of
-America. No party to this Agreement will bring a legal action under this
-Agreement more than one year after the cause of action arose. Each party waives
-its rights to a jury trial in any resulting litigation.</span> </p>
-
-<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
-
-</div>
-
-</body>
-
-</html>
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/license.html b/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/license.html
deleted file mode 100644
index 5ad00ba719..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/license.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
-<title>Eclipse.org Software User Agreement</title>
-</head>
-
-<body lang="EN-US" link=blue vlink=purple>
-<h2>Eclipse Foundation Software User Agreement</h2>
-<p>March 17, 2005</p>
-
-<h3>Usage Of Content</h3>
-
-<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
- (COLLECTIVELY &quot;CONTENT&quot;). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
- CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
- OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
- NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
- CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
-
-<h3>Applicable Licenses</h3>
-
-<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0
- (&quot;EPL&quot;). A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
- For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse.org CVS repository (&quot;Repository&quot;) in CVS
- modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
-
-<ul>
- <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
-
- <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
- <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;. Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
- and/or Fragments associated with that Feature.</li>
- <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
-
-</ul>
-
-<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
-Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;). Abouts and Feature Licenses may be located in any directory of a Download or Module
-including, but not limited to the following locations:</p>
-
-<ul>
- <li>The top-level (root) directory</li>
-
- <li>Plug-in and Fragment directories</li>
- <li>Inside Plug-ins and Fragments packaged as JARs</li>
- <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
- <li>Feature directories</li>
-</ul>
-
-
-<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Eclipse Update Manager, you must agree to a license (&quot;Feature Update License&quot;) during the
-installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
-inform you where you can locate them. Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
-Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
-that directory.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
- <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
-
- <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
- <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
- <li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>
- <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-
- <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License is provided, please
-contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
-
-<h3>Cryptography</h3>
-
-<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
- another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
- possession, or use, and re-export of encryption software, to see if this is permitted.</p>
-
-<small>Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.</small>
-
-</body>
-</html>
diff --git a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/plugin.properties b/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/plugin.properties
deleted file mode 100644
index 5d10675de1..0000000000
--- a/common/features/org.eclipse.jpt.common.feature/sourceTemplatePlugin/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-
-pluginName = Dali Java Persistence Tools - Common
-providerName = Eclipse Web Tools Platform
diff --git a/common/features/org.eclipse.jpt.common.tests.feature/.cvsignore b/common/features/org.eclipse.jpt.common.tests.feature/.cvsignore
deleted file mode 100644
index c14487ceac..0000000000
--- a/common/features/org.eclipse.jpt.common.tests.feature/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-build.xml
diff --git a/common/features/org.eclipse.jpt.common.tests.feature/.project b/common/features/org.eclipse.jpt.common.tests.feature/.project
deleted file mode 100644
index 89783a78c1..0000000000
--- a/common/features/org.eclipse.jpt.common.tests.feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.common.tests.feature</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.FeatureBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.FeatureNature</nature>
- </natures>
-</projectDescription>
diff --git a/common/features/org.eclipse.jpt.common.tests.feature/build.properties b/common/features/org.eclipse.jpt.common.tests.feature/build.properties
deleted file mode 100644
index 34b9c1ac57..0000000000
--- a/common/features/org.eclipse.jpt.common.tests.feature/build.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = feature.xml,\
- eclipse_update_120.jpg,\
- feature.properties
-src.includes = \
- feature.xml,\
- eclipse_update_120.jpg,\
- build.properties
diff --git a/common/features/org.eclipse.jpt.common.tests.feature/eclipse_update_120.jpg b/common/features/org.eclipse.jpt.common.tests.feature/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/common/features/org.eclipse.jpt.common.tests.feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common.tests.feature/feature.properties b/common/features/org.eclipse.jpt.common.tests.feature/feature.properties
deleted file mode 100644
index 54ef2287a3..0000000000
--- a/common/features/org.eclipse.jpt.common.tests.feature/feature.properties
+++ /dev/null
@@ -1,51 +0,0 @@
-###############################################################################
-# Copyright (c) 2006, 2010 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
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Dali Java Persistence Tools - Common JUnit Tests
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-# "updateSiteName" property - label for the update site
-# TOREVIEW - updateSiteName
-updateSiteName=Web Tools Platform (WTP) Updates
-
-# "description" property - description of the feature
-description=Dali Java Persistence Tools Common JUnit Tests
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006, 2010 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-########### end of license property ##########################################
diff --git a/common/features/org.eclipse.jpt.common.tests.feature/feature.xml b/common/features/org.eclipse.jpt.common.tests.feature/feature.xml
deleted file mode 100644
index 70d5612786..0000000000
--- a/common/features/org.eclipse.jpt.common.tests.feature/feature.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
- id="org.eclipse.jpt.common.tests.feature"
- label="%featureName"
- version="1.1.0.qualifier"
- provider-name="%providerName"
- license-feature="org.eclipse.license"
- license-feature-version="1.0.0.qualifier">
-
- <description>
- %description
- </description>
-
- <copyright>
- %copyright
- </copyright>
-
- <license url="license.html">
- %license
- </license>
-
- <requires>
- <import feature="org.eclipse.jpt.common.feature" version="1.0.0"/>
- </requires>
-
- <plugin
- id="org.eclipse.jpt.common.utility.tests"
- download-size="0"
- install-size="0"
- version="0.0.0"/>
-
- <plugin
- id="org.eclipse.jpt.common.core.tests"
- download-size="0"
- install-size="0"
- version="0.0.0"/>
-
-</feature>
diff --git a/common/features/org.eclipse.jpt.common_sdk.feature/.cvsignore b/common/features/org.eclipse.jpt.common_sdk.feature/.cvsignore
deleted file mode 100644
index 9d0e114f67..0000000000
--- a/common/features/org.eclipse.jpt.common_sdk.feature/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-feature.temp.folder
-build.xml
diff --git a/common/features/org.eclipse.jpt.common_sdk.feature/.project b/common/features/org.eclipse.jpt.common_sdk.feature/.project
deleted file mode 100644
index 24b45742af..0000000000
--- a/common/features/org.eclipse.jpt.common_sdk.feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.common_sdk.feature</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.FeatureBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.FeatureNature</nature>
- </natures>
-</projectDescription>
diff --git a/common/features/org.eclipse.jpt.common_sdk.feature/build.properties b/common/features/org.eclipse.jpt.common_sdk.feature/build.properties
deleted file mode 100644
index 1be2ea1e6a..0000000000
--- a/common/features/org.eclipse.jpt.common_sdk.feature/build.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = feature.xml,\
- feature.properties,\
- eclipse_update_120.jpg
-
-generate.feature@org.eclipse.jpt.common.feature.source=org.eclipse.jpt.common.feature
diff --git a/common/features/org.eclipse.jpt.common_sdk.feature/eclipse_update_120.jpg b/common/features/org.eclipse.jpt.common_sdk.feature/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708ad6..0000000000
--- a/common/features/org.eclipse.jpt.common_sdk.feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/common/features/org.eclipse.jpt.common_sdk.feature/feature.properties b/common/features/org.eclipse.jpt.common_sdk.feature/feature.properties
deleted file mode 100644
index 8578168b7a..0000000000
--- a/common/features/org.eclipse.jpt.common_sdk.feature/feature.properties
+++ /dev/null
@@ -1,43 +0,0 @@
-###############################################################################
-# Copyright (c) 2010, 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
-###############################################################################
-
-# "featureName" property - name of the feature
-featureName=Dali Java Persistence Tools - Common SDK
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-
-# "description" property - description of the feature
-description=Source code archives for Dali Java Persistence - Common
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2006, 2011 Oracle Corporation.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
- Oracle - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-# license and licenseURL properties were removed as a result to migrating to new PDE license support.
-# Those properties are now added at build time. See http://wiki.eclipse.org/Equinox/p2/License_Mechanism.
-########### end of license property ##########################################
diff --git a/common/features/org.eclipse.jpt.common_sdk.feature/feature.xml b/common/features/org.eclipse.jpt.common_sdk.feature/feature.xml
deleted file mode 100644
index 4433094fa4..0000000000
--- a/common/features/org.eclipse.jpt.common_sdk.feature/feature.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
- id="org.eclipse.jpt.common_sdk.feature"
- label="%featureName"
- version="1.1.0.qualifier"
- provider-name="%providerName"
- license-feature="org.eclipse.license"
- license-feature-version="1.0.0.qualifier">
-
- <description>
- %description
- </description>
-
- <copyright>
- %copyright
- </copyright>
-
- <license url="license.html">
- %license
- </license>
-
- <includes
- id="org.eclipse.jpt.common.feature"
- version="0.0.0"/>
-
- <includes
- id="org.eclipse.jpt.common.feature.source"
- version="0.0.0"/>
-
-</feature>
diff --git a/common/plugins/org.eclipse.jpt.common.branding/.cvsignore b/common/plugins/org.eclipse.jpt.common.branding/.cvsignore
deleted file mode 100644
index c14487ceac..0000000000
--- a/common/plugins/org.eclipse.jpt.common.branding/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-build.xml
diff --git a/common/plugins/org.eclipse.jpt.common.branding/.project b/common/plugins/org.eclipse.jpt.common.branding/.project
deleted file mode 100644
index d794011572..0000000000
--- a/common/plugins/org.eclipse.jpt.common.branding/.project
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.common.branding</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/common/plugins/org.eclipse.jpt.common.branding/META-INF/MANIFEST.MF b/common/plugins/org.eclipse.jpt.common.branding/META-INF/MANIFEST.MF
deleted file mode 100644
index f2170877de..0000000000
--- a/common/plugins/org.eclipse.jpt.common.branding/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,7 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jpt.common.branding;singleton:=true
-Bundle-Version: 1.1.0.qualifier
-Bundle-Localization: plugin
-Bundle-Vendor: %providerName
diff --git a/common/plugins/org.eclipse.jpt.common.branding/about.html b/common/plugins/org.eclipse.jpt.common.branding/about.html
deleted file mode 100644
index ca606b1bb5..0000000000
--- a/common/plugins/org.eclipse.jpt.common.branding/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>June 06, 2007</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in
-("Content"). Unless otherwise indicated below, the Content is provided to you
-under the terms and conditions of the Eclipse Public License Version 1.0
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>.
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the
-Content is being redistributed by another party ("Redistributor") and different
-terms and conditions may apply to your use of any object code in the Content.
-Check the Redistributor's license that was provided with the Content. If no such
-license exists, contact the Redistributor. Unless otherwise indicated below, the
-terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML> \ No newline at end of file
diff --git a/common/plugins/org.eclipse.jpt.common.branding/about.ini b/common/plugins/org.eclipse.jpt.common.branding/about.ini
deleted file mode 100644
index 6c107d466d..0000000000
--- a/common/plugins/org.eclipse.jpt.common.branding/about.ini
+++ /dev/null
@@ -1,44 +0,0 @@
-###############################################################################
-# Copyright (c) 2006, 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
-###############################################################################
-
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=icons/WTP_icon_x32_v2.png
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-# Property "tipsAndTricksHref" contains the Help topic href to a tips and tricks page
-# optional
-tipsAndTricksHref=/org.eclipse.jpt.doc.user/tips_and_tricks.htm
-
-
diff --git a/common/plugins/org.eclipse.jpt.common.branding/about.mappings b/common/plugins/org.eclipse.jpt.common.branding/about.mappings
deleted file mode 100644
index bddaab4310..0000000000
--- a/common/plugins/org.eclipse.jpt.common.branding/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=@build@ \ No newline at end of file
diff --git a/common/plugins/org.eclipse.jpt.common.branding/about.properties b/common/plugins/org.eclipse.jpt.common.branding/about.properties
deleted file mode 100644
index 5d9827f286..0000000000
--- a/common/plugins/org.eclipse.jpt.common.branding/about.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-
-blurb=Dali Java Persistence Tools - Common\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Oracle contributors and others 2011. All rights reserved.\n\
-Visit http://www.eclipse.org/webtools
diff --git a/common/plugins/org.eclipse.jpt.common.branding/build.properties b/common/plugins/org.eclipse.jpt.common.branding/build.properties
deleted file mode 100644
index 6c20e3b027..0000000000
--- a/common/plugins/org.eclipse.jpt.common.branding/build.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2010, 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
-###############################################################################
-bin.includes = META-INF/,\
- about.ini,\
- about.html,\
- about.mappings,\
- about.properties,\
- icons/,\
- plugin.properties
diff --git a/common/plugins/org.eclipse.jpt.common.branding/component.xml b/common/plugins/org.eclipse.jpt.common.branding/component.xml
deleted file mode 100644
index f437ec94d5..0000000000
--- a/common/plugins/org.eclipse.jpt.common.branding/component.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/wtp/releng/tools/component-model" name="org.eclipse.jpt.common.branding">
-<description url=""></description>
-<component-depends unrestricted="true"></component-depends>
-<plugin id="org.eclipse.jpt.common.branding" fragment="false"/>
-<plugin id="org.eclipse.jpt.common.utility" fragment="false"/>
-<plugin id="org.eclipse.jpt.common.core" fragment="false"/>
-<plugin id="org.eclipse.jpt.common.ui" fragment="false"/>
-</component> \ No newline at end of file
diff --git a/common/plugins/org.eclipse.jpt.common.branding/icons/WTP_icon_x32_v2.png b/common/plugins/org.eclipse.jpt.common.branding/icons/WTP_icon_x32_v2.png
deleted file mode 100644
index 6f09c2a700..0000000000
--- a/common/plugins/org.eclipse.jpt.common.branding/icons/WTP_icon_x32_v2.png
+++ /dev/null
Binary files differ
diff --git a/common/plugins/org.eclipse.jpt.common.branding/plugin.properties b/common/plugins/org.eclipse.jpt.common.branding/plugin.properties
deleted file mode 100644
index 58b4eea0ab..0000000000
--- a/common/plugins/org.eclipse.jpt.common.branding/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 2010, 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
-###############################################################################
-
-pluginName = Dali Java Persistence Tools - Common
-providerName = Eclipse Web Tools Platform
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/.cvsignore b/common/plugins/org.eclipse.jpt.common.eclipselink.branding/.cvsignore
deleted file mode 100644
index c14487ceac..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-build.xml
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/.project b/common/plugins/org.eclipse.jpt.common.eclipselink.branding/.project
deleted file mode 100644
index 9427ca0805..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/.project
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.common.eclipselink.branding</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/META-INF/MANIFEST.MF b/common/plugins/org.eclipse.jpt.common.eclipselink.branding/META-INF/MANIFEST.MF
deleted file mode 100644
index 2bb1128e0a..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,7 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jpt.common.eclipselink.branding;singleton:=true
-Bundle-Version: 1.1.0.qualifier
-Bundle-Localization: plugin
-Bundle-Vendor: %providerName
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.html b/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.html
deleted file mode 100644
index ca606b1bb5..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>June 06, 2007</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in
-("Content"). Unless otherwise indicated below, the Content is provided to you
-under the terms and conditions of the Eclipse Public License Version 1.0
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>.
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the
-Content is being redistributed by another party ("Redistributor") and different
-terms and conditions may apply to your use of any object code in the Content.
-Check the Redistributor's license that was provided with the Content. If no such
-license exists, contact the Redistributor. Unless otherwise indicated below, the
-terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML> \ No newline at end of file
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.ini b/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.ini
deleted file mode 100644
index 6c107d466d..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.ini
+++ /dev/null
@@ -1,44 +0,0 @@
-###############################################################################
-# Copyright (c) 2006, 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
-###############################################################################
-
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=icons/WTP_icon_x32_v2.png
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-# Property "tipsAndTricksHref" contains the Help topic href to a tips and tricks page
-# optional
-tipsAndTricksHref=/org.eclipse.jpt.doc.user/tips_and_tricks.htm
-
-
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.mappings b/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.mappings
deleted file mode 100644
index bddaab4310..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=@build@ \ No newline at end of file
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.properties b/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.properties
deleted file mode 100644
index 129f69e36a..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/about.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-
-blurb=Dali Java Persistence Tools - EclipseLink Common\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Oracle contributors and others 2011. All rights reserved.\n\
-Visit http://www.eclipse.org/webtools
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/build.properties b/common/plugins/org.eclipse.jpt.common.eclipselink.branding/build.properties
deleted file mode 100644
index 6c20e3b027..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/build.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2010, 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
-###############################################################################
-bin.includes = META-INF/,\
- about.ini,\
- about.html,\
- about.mappings,\
- about.properties,\
- icons/,\
- plugin.properties
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/component.xml b/common/plugins/org.eclipse.jpt.common.eclipselink.branding/component.xml
deleted file mode 100644
index a433d25681..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/component.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/wtp/releng/tools/component-model" name="org.eclipse.jpt.common.eclipselink.branding">
-<description url=""></description>
-<component-depends unrestricted="true"></component-depends>
-<plugin id="org.eclipse.jpt.common.eclipselink.branding" fragment="false"/>
-<plugin id="org.eclipse.jpt.common.eclipselink.core" fragment="false"/>
-</component> \ No newline at end of file
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/icons/WTP_icon_x32_v2.png b/common/plugins/org.eclipse.jpt.common.eclipselink.branding/icons/WTP_icon_x32_v2.png
deleted file mode 100644
index 6f09c2a700..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/icons/WTP_icon_x32_v2.png
+++ /dev/null
Binary files differ
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/plugin.properties b/common/plugins/org.eclipse.jpt.common.eclipselink.branding/plugin.properties
deleted file mode 100644
index 11a79f2639..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.branding/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 2010, 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
-###############################################################################
-
-pluginName = Dali Java Persistence Tools - EclipseLink Common
-providerName = Eclipse Web Tools Platform
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/.classpath b/common/plugins/org.eclipse.jpt.common.eclipselink.core/.classpath
deleted file mode 100644
index 042690f1e1..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/.classpath
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="property_files"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
- <accessrules>
- <accessrule kind="nonaccessible" pattern="org/eclipse/jpt/common/utility/model/value/**"/>
- <accessrule kind="nonaccessible" pattern="org/eclipse/jpt/common/utility/internal/model/listener/awt/**"/>
- <accessrule kind="nonaccessible" pattern="org/eclipse/jpt/common/utility/internal/model/value/**"/>
- <accessrule kind="nonaccessible" pattern="org/eclipse/jpt/common/utility/internal/swing/**"/>
- <accessrule kind="accessible" pattern="org/eclipse/jpt/common/utility/**"/>
- </accessrules>
- </classpathentry>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/.cvsignore b/common/plugins/org.eclipse.jpt.common.eclipselink.core/.cvsignore
deleted file mode 100644
index ba077a4031..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/.project b/common/plugins/org.eclipse.jpt.common.eclipselink.core/.project
deleted file mode 100644
index 4179bd967e..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jpt.common.eclipselink.core</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/.settings/org.eclipse.jdt.core.prefs b/common/plugins/org.eclipse.jpt.common.eclipselink.core/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 1322043060..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,12 +0,0 @@
-#Tue Mar 08 12:06:31 EST 2011
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.5
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/META-INF/MANIFEST.MF b/common/plugins/org.eclipse.jpt.common.eclipselink.core/META-INF/MANIFEST.MF
deleted file mode 100644
index a0ad89c547..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,23 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-Vendor: %providerName
-Bundle-SymbolicName: org.eclipse.jpt.common.eclipselink.core;singleton:=true
-Bundle-Version: 1.1.0.qualifier
-Bundle-Activator: org.eclipse.jpt.common.eclipselink.core.JptCommonEclipseLinkCorePlugin
-Bundle-ActivationPolicy: lazy
-Bundle-ClassPath: .
-Bundle-Localization: plugin
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.7.0,4.0.0)",
- org.eclipse.jdt.core;bundle-version="[3.7.0,4.0.0)",
- org.eclipse.jpt.common.utility;bundle-version="[2.0.0,3.0.0)",
- org.eclipse.jst.common.project.facet.core;bundle-version="[1.4.200,2.0.0)",
- org.eclipse.wst.xml.core;bundle-version="[1.1.600,2.0.0)"
-Export-Package: org.eclipse.jpt.common.eclipselink.core,
- org.eclipse.jpt.common.eclipselink.core.internal;
- x-friends:="org.eclipse.jpt.jpa.eclipselink.core,
- org.eclipse.jpt.jaxb.eclipselink.core",
- org.eclipse.jpt.common.eclipselink.core.internal.libval;
- x-friends:="org.eclipse.jpt.jpa.eclipselink.core,
- org.eclipse.jpt.jaxb.eclipselink.core"
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/about.html b/common/plugins/org.eclipse.jpt.common.eclipselink.core/about.html
deleted file mode 100644
index be534ba44f..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>May 02, 2008</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in
-("Content"). Unless otherwise indicated below, the Content is provided to you
-under the terms and conditions of the Eclipse Public License Version 1.0
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>.
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the
-Content is being redistributed by another party ("Redistributor") and different
-terms and conditions may apply to your use of any object code in the Content.
-Check the Redistributor's license that was provided with the Content. If no such
-license exists, contact the Redistributor. Unless otherwise indicated below, the
-terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/build.properties b/common/plugins/org.eclipse.jpt.common.eclipselink.core/build.properties
deleted file mode 100644
index d5ecbb9699..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/build.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-################################################################################
-# Copyright (c) 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
-################################################################################
-source.. = src/,\
- property_files/
-output.. = bin/
-bin.includes = .,\
- META-INF/,\
- about.html,\
- plugin.xml,\
- plugin.properties,\
- schemas/
-src.includes = schemas/
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/plugin.properties b/common/plugins/org.eclipse.jpt.common.eclipselink.core/plugin.properties
deleted file mode 100644
index c3865d8607..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/plugin.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-# ====================================================================
-# To code developer:
-# Do NOT change the properties between this line and the
-# "%%% END OF TRANSLATED PROPERTIES %%%" line.
-# Make a new property name, append to the end of the file and change
-# the code to use the new property.
-# ====================================================================
-
-# ====================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# ====================================================================
-
-pluginName = Dali Java Persistence Tools - Common EclipseLink Core
-providerName = Eclipse Web Tools Platform
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/plugin.xml b/common/plugins/org.eclipse.jpt.common.eclipselink.core/plugin.xml
deleted file mode 100644
index c03f9269c5..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/plugin.xml
+++ /dev/null
@@ -1,151 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.4"?>
-<!--
- Copyright (c) 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
- -->
-
-<plugin>
-
- <!--
- ******************************************
- * Library Provider Framework Integration *
- ******************************************
- -->
-
- <extension point="org.eclipse.jst.common.project.facet.core.downloadableLibraries">
-
- <import-definitions
- url="http://www.eclipse.org/webtools/dali/dev/eclipselink/eclipselink-downloadable-libs.xml">
- <enablement>
- <with variable="requestingProjectFacet">
- <or>
- <test
- property="org.eclipse.wst.common.project.facet.core.projectFacet"
- value="jpt.jaxb"
- forcePluginActivation="true"/>
- <test
- property="org.eclipse.wst.common.project.facet.core.projectFacet"
- value="jpt.jpa"
- forcePluginActivation="true"/>
- </or>
- </with>
- </enablement>
- </import-definitions>
-
- </extension>
-
-
- <!--
- ******************************************
- * EclipseLink schemas *
- ******************************************
- -->
-
- <extension
- point="org.eclipse.wst.xml.core.catalogContributions">
-
- <catalogContribution id="default">
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_1_0.xsd"
- uri="schemas/eclipselink_orm_1_0.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_1_1.xsd"
- uri="schemas/eclipselink_orm_1_1.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_1_2.xsd"
- uri="schemas/eclipselink_orm_1_2.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_2_0.xsd"
- uri="schemas/eclipselink_orm_2_0.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_2_1.xsd"
- uri="schemas/eclipselink_orm_2_1.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_2_2.xsd"
- uri="schemas/eclipselink_orm_2_2.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_2_3.xsd"
- uri="schemas/eclipselink_orm_2_3.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_2_4.xsd"
- uri="platform:/plugin/org.eclipse.persistence.jpa/org/eclipse/persistence/jpa/eclipselink_orm_2_4.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_oxm_2_0.xsd"
- uri="schemas/eclipselink_oxm_2_0.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_oxm_2_1.xsd"
- uri="schemas/eclipselink_oxm_2_1.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_oxm_2_2.xsd"
- uri="schemas/eclipselink_oxm_2_2.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_oxm_2_3.xsd"
- uri="schemas/eclipselink_oxm_2_3.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_oxm_2_4.xsd"
- uri="platform:/plugin/org.eclipse.persistence.moxy/org/eclipse/persistence/jaxb/eclipselink_oxm_2_4.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_persistence_map_1.0.xsd"
- uri="platform:/plugin/org.eclipse.persistence.core/org/eclipse/persistence/eclipselink_persistence_map_1.0.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_persistence_map_1.1.xsd"
- uri="schemas/eclipselink_persistence_map_1.1.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_persistence_map_1.2.xsd"
- uri="schemas/eclipselink_persistence_map_1.2.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_persistence_map_2.0.xsd"
- uri="schemas/eclipselink_persistence_map_2.0.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_persistence_map_2.3.xsd"
- uri="platform:/plugin/org.eclipse.persistence.core/org/eclipse/persistence/eclipselink_persistence_map_2.3.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_sessions_1.0.xsd"
- uri="schemas/eclipselink_sessions_1.0.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_sessions_1.1.xsd"
- uri="schemas/eclipselink_sessions_1.1.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_sessions_1.2.xsd"
- uri="schemas/eclipselink_sessions_1.2.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_sessions_2.0.xsd"
- uri="schemas/eclipselink_sessions_2.0.xsd"/>
-
- <uri
- name="http://www.eclipse.org/eclipselink/xsds/eclipselink_sessions_2.1.xsd"
- uri="platform:/plugin/org.eclipse.persistence.core/org/eclipse/persistence/eclipselink_sessions_2.1.xsd"/>
-
- </catalogContribution>
-
- </extension>
-
-</plugin>
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/property_files/jpt_common_eclipselink_core.properties b/common/plugins/org.eclipse.jpt.common.eclipselink.core/property_files/jpt_common_eclipselink_core.properties
deleted file mode 100644
index 7b7ba929f4..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/property_files/jpt_common_eclipselink_core.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-################################################################################
-# Copyright (c) 2010 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
-################################################################################
-
-EclipseLinkLibraryValidator_noEclipseLinkVersion=Selected libraries do not include required EclipseLink annotation classes.
-EclipseLinkLibraryValidator_multipleEclipseLinkVersions=There are multiple versions of EclipseLink in selected libraries.
-EclipseLinkLibraryValidator_improperEclipseLinkVersion=EclipseLink version does not meet platform requirements.
-
-ELJaxbUserLibraryValidator_noXjcClasses=Class generation may not be available if com.sun.tools.xjc and com.sun.xml.bind jars are not on project classpath.
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_0.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_0.xsd
deleted file mode 100644
index af1d1dadad..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_0.xsd
+++ /dev/null
@@ -1,3128 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Java Persistence API object-relational mapping file schema -->
-<xsd:schema targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:orm="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="1.0">
-
- <xsd:annotation>
- <xsd:documentation>
- @(#)eclipselink_orm_1_0.xsd 1.0 February 1 2008
- </xsd:documentation>
- </xsd:annotation>
- <xsd:annotation>
- <xsd:documentation><![CDATA[
-
- This is the XML Schema for the new native EclipseLink XML metadata
- format used for JPA and native deployment xml files.
-
- ]]></xsd:documentation>
- </xsd:annotation>
-
- <xsd:complexType name="emptyType"/>
-
- <xsd:simpleType name="versionType">
- <xsd:restriction base="xsd:token">
- <xsd:pattern value="[0-9]+(\.[0-9]+)*"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:element name="entity-mappings">
- <xsd:complexType>
- <xsd:annotation>
- <xsd:documentation>
-
- The entity-mappings element is the root element of an mapping
- file. It contains the following four types of elements:
-
- 1. The persistence-unit-metadata element contains metadata
- for the entire persistence unit. It is undefined if this element
- occurs in multiple mapping files within the same persistence unit.
-
- 2. The package, schema, catalog and access elements apply to all of
- the entity, mapped-superclass and embeddable elements defined in
- the same file in which they occur.
-
- 3. The sequence-generator, table-generator, named-query,
- named-native-query and sql-result-set-mapping elements are global
- to the persistence unit. It is undefined to have more than one
- sequence-generator or table-generator of the same name in the same
- or different mapping files in a persistence unit. It is also
- undefined to have more than one named-query or named-native-query
- of the same name in the same or different mapping files in a
- persistence unit.
-
- 4. The entity, mapped-superclass and embeddable elements each define
- the mapping information for a managed persistent class. The mapping
- information contained in these elements may be complete or it may
- be partial.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="persistence-unit-metadata"
- type="orm:persistence-unit-metadata"
- minOccurs="0"/>
- <xsd:element name="package" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type"
- minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="mapped-superclass" type="orm:mapped-superclass"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="entity" type="orm:entity"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embeddable" type="orm:embeddable"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="version" type="orm:versionType"
- fixed="1.0" use="required"/>
- </xsd:complexType>
- </xsd:element>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-metadata">
- <xsd:annotation>
- <xsd:documentation>
-
- Metadata that applies to the persistence unit and not just to
- the mapping file in which it is contained.
-
- If the xml-mapping-metadata-complete element is specified then
- the complete set of mapping metadata for the persistence unit
- is contained in the XML mapping files for the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="xml-mapping-metadata-complete" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-default-mappings" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="persistence-unit-defaults"
- type="orm:persistence-unit-defaults"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-defaults">
- <xsd:annotation>
- <xsd:documentation>
-
- These defaults are applied to the persistence unit as a whole
- unless they are overridden by local annotation or XML
- element settings.
-
- schema - Used as the schema for all tables or secondary tables
- that apply to the persistence unit
- catalog - Used as the catalog for all tables or secondary tables
- that apply to the persistence unit
- access - Used as the access type for all managed classes in
- the persistence unit
- cascade-persist - Adds cascade-persist to the set of cascade options
- in entity relationships of the persistence unit
- entity-listeners - List of default entity listeners to be invoked
- on each entity in the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="schema" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type"
- minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for an entity. Is allowed to be
- sparsely populated and used in conjunction with the annotations.
- Alternatively, the metadata-complete attribute can be used to
- indicate that no annotations on the entity class (and its fields
- or properties) are to be processed. If this is the case then
- the defaulting rules for the entity and its subelements will
- be recursively applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface Entity {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking"
- minOccurs="0"/>
- <xsd:element name="table" type="orm:table" minOccurs="0"/>
- <xsd:element name="secondary-table" type="orm:secondary-table"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="inheritance" type="orm:inheritance" minOccurs="0"/>
- <xsd:element name="discriminator-value" type="orm:discriminator-value"
- minOccurs="0"/>
- <xsd:element name="discriminator-column"
- type="orm:discriminator-column"
- minOccurs="0"/>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking"
- minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override" type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="attributes">
- <xsd:annotation>
- <xsd:documentation>
-
- This element contains the entity field or property mappings.
- It may be sparsely populated to include only a subset of the
- fields or properties. If metadata-complete for the entity is true
- then the remainder of the attributes will be defaulted according
- to the default rules.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="id" type="orm:id"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded-id" type="orm:embedded-id"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="basic" type="orm:basic"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-collection" type="orm:basic-collection"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-map" type="orm:basic-map"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="version" type="orm:version"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-one" type="orm:many-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-many" type="orm:one-to-many"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-one" type="orm:one-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="variable-one-to-one" type="orm:variable-one-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-many" type="orm:many-to-many"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded" type="orm:embedded"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transformation" type="orm:transformation"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transient" type="orm:transient"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="access-type">
- <xsd:annotation>
- <xsd:documentation>
-
- This element determines how the persistence provider accesses the
- state of an entity or embedded object.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="PROPERTY"/>
- <xsd:enumeration value="FIELD"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-listeners">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface EntityListeners {
- Class[] value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="entity-listener" type="orm:entity-listener"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-listener">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines an entity listener to be invoked at lifecycle events
- for the entities that list this listener.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PrePersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostPersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-load">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostLoad {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="property">
- <xsd:annotation>
- <xsd:documentation>
- A user defined mapping's property.
- @Target({METHOD, FIELD, TYPE})
- @Retention(RUNTIME)
- public @interface Property {
- /**
- * Property name.
- */
- String name();
-
- /**
- * String representation of Property value,
- * converted to an instance of valueType.
- */
- String value();
-
- /**
- * Property value type.
- * The value converted to valueType by ConversionManager.
- * If specified must be a simple type that could be handled by
- * ConversionManager:
- * numerical, boolean, temporal.
- */
- Class valueType() default String.class;
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- <xsd:attribute name="value-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="query-hint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface QueryHint {
- String name();
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedQuery {
- String name();
- String query();
- QueryHint[] hints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="hint" type="orm:query-hint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-native-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedNativeQuery {
- String name();
- String query();
- QueryHint[] hints() default {};
- Class resultClass() default void.class;
- String resultSetMapping() default ""; //named SqlResultSetMapping
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="hint" type="orm:query-hint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="sql-result-set-mapping">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SqlResultSetMapping {
- String name();
- EntityResult[] entities() default {};
- ColumnResult[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="entity-result" type="orm:entity-result"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="column-result" type="orm:column-result"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface EntityResult {
- Class entityClass();
- FieldResult[] fields() default {};
- String discriminatorColumn() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field-result" type="orm:field-result"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="entity-class" type="xsd:string" use="required"/>
- <xsd:attribute name="discriminator-column" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="field-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface FieldResult {
- String name();
- String column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="column" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface ColumnResult {
- String name();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Table {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="secondary-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SecondaryTable {
- String name();
- String catalog() default "";
- String schema() default "";
- PrimaryKeyJoinColumn[] pkJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="unique-constraint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface UniqueConstraint {
- String[] columnNames();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column-name" type="xsd:string"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Column {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="generation-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum GenerationType { TABLE, SEQUENCE, IDENTITY, AUTO };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="TABLE"/>
- <xsd:enumeration value="SEQUENCE"/>
- <xsd:enumeration value="IDENTITY"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="access-methods">
- <xsd:annotation>
- <xsd:documentation>
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="get-method" type="xsd:string" use="required"/>
- <xsd:attribute name="set-method" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="attribute-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AttributeOverride {
- String name();
- Column column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="association-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AssociationOverride {
- String name();
- JoinColumn[] joinColumns();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="id-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface IdClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Id {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value" minOccurs="0"/>
- <xsd:element name="temporal" type="orm:temporal" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded-id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface EmbeddedId {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="transient">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Transient {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="version">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Version {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="temporal" type="orm:temporal" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Basic {
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="lob" type="orm:lob" minOccurs="0"/>
- <xsd:element name="temporal" type="orm:temporal" minOccurs="0"/>
- <xsd:element name="enumerated" type="orm:enumerated" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="read-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * Unless the TransformationMapping is write-only, it should have a
- * ReadTransformer, it defines transformation of database column(s)
- * value(s)into attribute value.
- *
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReadTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.AttributeTransformer
- * interface. The class will be instantiated, its
- * buildAttributeValue will be used to create the value to be
- * assigned to the attribute.
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be assigned to the attribute (not assigns the value to
- * the attribute). Either transformerClass or method must be
- * specified, but not both.
- */
- String method() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <xsd:complexType name="write-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- *
- * A single WriteTransformer may be specified directly on the method or
- * attribute. Multiple WriteTransformers should be wrapped into
- * WriteTransformers annotation. No WriteTransformers specified for
- * read-only mapping. Unless the TransformationMapping is write-only, it
- * should have a ReadTransformer, it defines transformation of database
- * column(s) value(s)into attribute value.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface WriteTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.FieldTransformer
- * interface. The class will be instantiated, its buildFieldValue
- * will be used to create the value to be written into the database
- * column. Note that for ddl generation and returning to be
- * supported the method buildFieldValue in the class should be
- * defined to return the relevant Java type, not just Object as
- * defined in the interface, for instance:
- * public Time buildFieldValue(Object instance, String fieldName, Session session).
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be written into the database column.
- * Note that for ddl generation and returning to be supported the
- * method should be defined to return a particular type, not just
- * Object, for instance:
- * public Time getStartTime().
- * The method may require a Transient annotation to avoid being
- * mapped as Basic by default.
- * Either transformerClass or method must be specified, but not both.
- */
- String method() default "";
-
- /**
- * Specify here the column into which the value should be written.
- * The only case when this could be skipped is if a single
- * WriteTransformer annotates an attribute - the attribute's name
- * will be used as a column name.
- */
- Column column() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <xsd:complexType name="transformation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Transformation is an optional annotation for
- * org.eclipse.persistence.mappings.TransformationMapping.
- * TransformationMapping allows to map an attribute to one or more
- * database columns.
- *
- * Transformation annotation is an optional part of
- * TransformationMapping definition. Unless the TransformationMapping is
- * write-only, it should have a ReadTransformer, it defines
- * transformation of database column(s) value(s)into attribute value.
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Transformation {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) The optional element is a hint as to whether the value
- * of the field or property may be null. It is disregarded
- * for primitive types, which are considered non-optional.
- */
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="read-transformer" type="orm:read-transformer"/>
- <xsd:element name="write-transformer" type="orm:write-transformer" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access" type="orm:access-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum FetchType { LAZY, EAGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="LAZY"/>
- <xsd:enumeration value="EAGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="lob">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Lob {}
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Temporal {
- TemporalType value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:temporal-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum TemporalType {
- DATE, // java.sql.Date
- TIME, // java.sql.Time
- TIMESTAMP // java.sql.Timestamp
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="DATE"/>
- <xsd:enumeration value="TIME"/>
- <xsd:enumeration value="TIMESTAMP"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="enumerated">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Enumerated {
- EnumType value() default ORDINAL;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:enum-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="enum-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum EnumType {
- ORDINAL,
- STRING
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ORDINAL"/>
- <xsd:enumeration value="STRING"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="many-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cascade-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum CascadeType { ALL, PERSIST, MERGE, REMOVE, REFRESH};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade-all" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-merge" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-remove" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-refresh" type="orm:emptyType"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="one-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="one-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/>
- <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- public @interface JoinTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- JoinColumn[] inverseJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="inverse-join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="many-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/>
- <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="generated-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface GeneratedValue {
- GenerationType strategy() default AUTO;
- String generator() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:generation-type"/>
- <xsd:attribute name="generator" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKey {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-by">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderBy {
- String value() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="inheritance">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Inheritance {
- InheritanceType strategy() default SINGLE_TABLE;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:inheritance-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="inheritance-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum InheritanceType
- { SINGLE_TABLE, JOINED, TABLE_PER_CLASS};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SINGLE_TABLE"/>
- <xsd:enumeration value="JOINED"/>
- <xsd:enumeration value="TABLE_PER_CLASS"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorValue {
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum DiscriminatorType { STRING, CHAR, INTEGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="STRING"/>
- <xsd:enumeration value="CHAR"/>
- <xsd:enumeration value="INTEGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="primary-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface PrimaryKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorColumn {
- String name() default "DTYPE";
- DiscriminatorType discriminatorType() default STRING;
- String columnDefinition() default "";
- int length() default 31;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="discriminator-type" type="orm:discriminator-type"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embeddable">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for embeddable objects. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- in the class. If this is the case then the defaulting rules will
- be recursively applied.
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Embeddable {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking"
- minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes"
- minOccurs="0"/>
- <xsd:element name="copy-policy" type="orm:copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Embedded {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="mapped-superclass">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for a mapped superclass. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- If this is the case then the defaulting rules will be recursively
- applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface MappedSuperclass{}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking"
- minOccurs="0"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking"
- minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="sequence-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface SequenceGenerator {
- String name();
- String sequenceName() default "";
- int initialValue() default 1;
- int allocationSize() default 50;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="sequence-name" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface TableGenerator {
- String name();
- String table() default "";
- String catalog() default "";
- String schema() default "";
- String pkColumnName() default "";
- String valueColumnName() default "";
- String pkColumnValue() default "";
- int initialValue() default 0;
- int allocationSize() default 50;
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="pk-column-name" type="xsd:string"/>
- <xsd:attribute name="value-column-name" type="xsd:string"/>
- <xsd:attribute name="pk-column-value" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Converter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must implement
- * the org.eclipse.persistence.mappings.converters.Converter interface.
- */
- Class converterClass();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface TypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence field
- * or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent field
- * or property.
- */
- Class objectType() default void.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="object-type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ObjectTypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence
- * field or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent
- * field or property.
- */
- Class objectType() default void.class;
-
- /**
- * (Required) Specify the conversion values to be used
- * with the object converter.
- */
- ConversionValue[] conversionValues();
-
- /**
- * (Optional) Specify a default object value. Used for
- * legacy data if the data value is missing.
- */
- String defaultObjectValue() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="conversion-value" type="orm:conversion-value" minOccurs="1" maxOccurs="unbounded"/>
- <xsd:element name="default-object-value" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="conversion-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface ConversionValue {
- /**
- * (Required) Specify the database value.
- */
- String dataValue();
-
- /**
- * (Required) Specify the object value.
- */
- String objectValue();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="data-value" type="xsd:string" use="required"/>
- <xsd:attribute name="object-value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="struct-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface StructConverter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must
- * implement the EclipseLink interface
- * org.eclipse.persistence.mappings.converters.Converter
- */
- String converter();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="converter" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CopyPolicy is used to set a
- * org.eclipse.persistence.descriptors.copying.CopyPolicy on an Entity.
- * It is required that a class that implements
- * org.eclipse.persistence.descriptors.copying.CopyPolicy be specified
- * as the argument.
- *
- * A CopyPolicy should be specified on an Entity or MappedSuperclass.
- *
- * For instance:
- * @Entity
- * @CopyPolicy("example.MyCopyPolicy")
- */
- public @interface CopyPolicy {
-
- /*
- * (Required)
- * This defines the class of the copy policy. It must specify a class
- * that implements org.eclipse.persistence.descriptors.copying.CopyPolicy
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="instantiation-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * An InstantiationCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.InstantiationCopyPolicy
- * on an Entity. InstantiationCopyPolicy is the default CopyPolicy in
- * EclipseLink and therefore this configuration option is only used to
- * override other types of copy policies
- *
- * An InstantiationCopyPolicy should be specified on an Entity or
- * MappedSuperclass.
- *
- * Example:
- * @Entity
- * @InstantiationCopyPolicy
- */
- public @interface InstantiationCopyPolicy {
- }
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="clone-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CloneCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.CloneCopyPolicy on an
- * Entity. A CloneCopyPolicy must specify at one or both of the "method"
- * or "workingCopyMethod". "workingCopyMethod" is used to clone objects
- * that will be returned to the user as they are registered in
- * EclipseLink's transactional mechanism, the UnitOfWork. "method" will
- * be used for the clone that is used for comparison in conjunction with
- * EclipseLink's DeferredChangeDetectionPolicy
- *
- * A CloneCopyPolicy should be specified on an Entity or
- * MappedSuperclass.
- *
- * Example:
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod", workingCopyMethod="myWorkingCopyCloneMethod")
- *
- * or:
- *
- @Entity
- * @CloneCopyPolicy(workingCopyMethodName="myWorkingCopyClone")
- */
- public @interface CloneCopyPolicy {
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified this defines
- * a method that will be used to create a clone that will be used
- * for comparison by
- * EclipseLink's DeferredChangeDetectionPolicy
- */
- String method();
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified
- * this defines a method that will be used to create a clone that
- * will be used to create the object returned when registering an
- * Object in an EclipseLink UnitOfWork
- */
- String workingCopyMethod();
-
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method" type="xsd:string"/>
- <xsd:attribute name="working-copy-method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface CollectionTable {
- /**
- * (Optional) The name of the collection table. If it is not
- * specified, it is defaulted to the concatenation of the following:
- * the name of the source entity; "_" ; the name of the relationship
- * property or field of the source entity.
- */
- String name() default "";
-
- /**
- * (Optional) The catalog of the table. It defaults to the persistence
- * unit default catalog.
- */
- String catalog() default "";
-
- /**
- * (Optional) The schema of the table. It defaults to the persistence
- * unit default schema.
- */
- String schema() default "";
-
- /**
- * (Optional) Used to specify a primary key column that is used as a
- * foreign key to join to another table. If the source entity uses a
- * composite primary key, a primary key join column must be specified
- * for each field of the composite primary key. In a single primary
- * key case, a primary key join column may optionally be specified.
- * Defaulting will apply otherwise as follows:
- * name, the same name as the primary key column of the primary table
- * of the source entity. referencedColumnName, the same name of
- * primary key column of the primary table of the source entity.
- */
- PrimaryKeyJoinColumn[] primaryKeyJoinColumns() default {};
-
- /**
- * (Optional) Unique constraints that are to be placed on the table.
- * These are only used if table generation is in effect.
- */
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicCollection {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the value column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- <xsd:element name="collection-table" type="orm:collection-table" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-map">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicMap {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the data column that holds the direct map
- * key. If the name on te key column is "", the name will default to:
- * the name of the property or field; "_key".
- */
- Column keyColumn();
-
- /**
- * (Optional) Specify the key converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the direct map key.
- */
- Convert keyConverter() default @Convert;
-
- /**
- * (Optional) The name of the data column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
-
- /**
- * (Optional) Specify the value converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the value column mapping.
- */
- Convert valueConverter() default @Convert;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="key-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="key-converter" type="xsd:string"/>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="value-converter" type="xsd:string"/>
- <xsd:element name="collection-table" type="orm:collection-table" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum JoinFetchType {
- /**
- * An inner join is used to fetch the related object.
- * This does not allow for null/empty values.
- */
- INNER,
-
- /**
- * An inner join is used to fetch the related object.
- * This allows for null/empty values.
- */
- OUTER,
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="INNER"/>
- <xsd:enumeration value="OUTER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="optimistic-locking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An optimistic-locking element is used to specify the type of
- * optimistic locking EclipseLink should use when updating or deleting
- * entities. An optimistic-locking specification is supported on
- * an entity or mapped-superclass.
- *
- * It is used in conjunction with the optimistic-locking-type.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface OptimisticLocking {
- /**
- * (Optional) The type of optimistic locking policy to use.
- */
- OptimisticLockingType type() default VERSION_COLUMN;
-
- /**
- * (Optional) For an optimistic locking policy of type
- * SELECTED_COLUMNS, this annotation member becomes a (Required)
- * field.
- */
- Column[] selectedColumns() default {};
-
- /**
- * (Optional) Specify where the optimistic locking policy should
- * cascade lock. Currently only supported with VERSION_COLUMN locking.
- */
- boolean cascade() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="selected-column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="type" type="orm:optimistic-locking-type"/>
- <xsd:attribute name="cascade" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="optimistic-locking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A simple type that is used within an optimistic-locking
- * specification to specify the type of optimistic-locking that
- * EclipseLink should use when updating or deleting entities.
- */
- public enum OptimisticLockingType {
- /**
- * Using this type of locking policy compares every field in the table
- * in the WHERE clause when doing an update or a delete. If any field
- * has been changed, an optimistic locking exception will be thrown.
- */
- ALL_COLUMNS,
-
- /**
- * Using this type of locking policy compares only the changed fields
- * in the WHERE clause when doing an update. If any field has been
- * changed, an optimistic locking exception will be thrown. A delete
- * will only compare the primary key.
- */
- CHANGED_COLUMNS,
-
- /**
- * Using this type of locking compares selected fields in the WHERE
- * clause when doing an update or a delete. If any field has been
- * changed, an optimistic locking exception will be thrown. Note that
- * the fields specified must be mapped and not be primary keys.
- */
- SELECTED_COLUMNS,
-
- /**
- * Using this type of locking policy compares a single version number
- * in the where clause when doing an update. The version field must be
- * mapped and not be the primary key.
- */
- VERSION_COLUMN
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ALL_COLUMNS"/>
- <xsd:enumeration value="CHANGED_COLUMNS"/>
- <xsd:enumeration value="SELECTED_COLUMNS"/>
- <xsd:enumeration value="VERSION_COLUMN"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cache">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Cache annotation is used to set an
- * org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy
- * which sets objects in EclipseLink's identity maps to be invalid
- * following given rules. By default in EclipseLink, objects do not
- * expire in the cache. Several different policies are available to
- * allow objects to expire.
- *
- * @see org.eclipse.persistence.annotations.CacheType
- *
- * A Cache anotation may be defined on an Entity or MappedSuperclass.
- * In the case of inheritance, a Cache annotation should only be defined
- * on the root of the inheritance hierarchy.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Cache {
- /**
- * (Optional) The type of cache to use.
- */
- CacheType type() default SOFT_WEAK;
-
- /**
- * (Optional) The size of cache to use.
- */
- int size() default 100;
-
- /**
- * (Optional) Cached instances in the shared cache or a client
- * isolated cache.
- */
- boolean shared() default true;
-
- /**
- * (Optional) Expire cached instance after a fix period of time (ms).
- * Queries executed against the cache after this will be forced back
- * to the database for a refreshed copy
- */
- int expiry() default -1; // minus one is no expiry.
-
- /**
- * (Optional) Expire cached instance a specific time of day. Queries
- * executed against the cache after this will be forced back to the
- * database for a refreshed copy
- */
- TimeOfDay expiryTimeOfDay() default @TimeOfDay(specified=false);
-
- /**
- * (Optional) Force all queries that go to the database to always
- * refresh the cache.
- */
- boolean alwaysRefresh() default false;
-
- /**
- * (Optional) For all queries that go to the database, refresh the
- * cache only if the data received from the database by a query is
- * newer than the data in the cache (as determined by the optimistic
- * locking field)
- */
- boolean refreshOnlyIfNewer() default false;
-
- /**
- * (Optional) Setting to true will force all queries to bypass the
- * cache for hits but still resolve against the cache for identity.
- * This forces all queries to hit the database.
- */
- boolean disableHits() default false;
-
- /**
- * (Optional) The cache coordination mode.
- */
- CacheCoordinationType coordinationType() default SEND_OBJECT_CHANGES;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:choice>
- <xsd:element name="expiry" type="xsd:integer" minOccurs="0"/>
- <xsd:element name="expiry-time-of-day" type="orm:time-of-day" minOccurs="0"/>
- </xsd:choice>
- <xsd:attribute name="size" type="xsd:integer"/>
- <xsd:attribute name="shared" type="xsd:boolean"/>
- <xsd:attribute name="type" type="orm:cache-type"/>
- <xsd:attribute name="always-refresh" type="xsd:boolean"/>
- <xsd:attribute name="refresh-only-if-newer" type="xsd:boolean"/>
- <xsd:attribute name="disable-hits" type="xsd:boolean"/>
- <xsd:attribute name="coordination-type" type="orm:cache-coordination-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The CacheType enum is used with the Cache annotation for a
- * persistent class. It defines the type of IdentityMap/Cache used for
- * the class. By default the SOFT_WEAK cache type is used.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheType {
- /**
- * Provides full caching and guaranteed identity. Caches all objects
- * and does not remove them.
- * WARNING: This method may be memory intensive when many objects are
- * read.
- */
- FULL,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using weak references. This method allows full garbage
- * collection and provides full caching and guaranteed identity.
- */
- WEAK,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using soft references. This method allows full garbage
- * collection when memory is low and provides full caching and
- * guaranteed identity.
- */
- SOFT,
-
- /**
- * Similar to the WEAK identity map except that it maintains a
- * most-frequently-used sub-cache. The size of the sub-cache is
- * proportional to the size of the identity map as specified by
- * descriptor's setIdentityMapSize() method. The sub-cache
- * uses soft references to ensure that these objects are
- * garbage-collected only if the system is low on memory.
- */
- SOFT_WEAK,
-
- /**
- * Identical to the soft cache weak (SOFT_WEAK) identity map except
- * that it uses hard references in the sub-cache. Use this identity
- * map if soft references do not behave properly on your platform.
- */
- HARD_WEAK,
-
- /**
- * A cache identity map maintains a fixed number of objects
- * specified by the application. Objects are removed from the cache
- * on a least-recently-used basis. This method allows object
- * identity for the most commonly used objects.
- * WARNING: Furnishes caching and identity, but does not guarantee
- * identity.
- */
- CACHE,
-
- /**
- * WARNING: Does not preserve object identity and does not cache
- * objects.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="FULL"/>
- <xsd:enumeration value="WEAK"/>
- <xsd:enumeration value="SOFT"/>
- <xsd:enumeration value="SOFT_WEAK"/>
- <xsd:enumeration value="HARD_WEAK"/>
- <xsd:enumeration value="CACHE"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-coordination-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the Cache annotation.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheCoordinationType {
- /**
- * Sends a list of changed objects including data about the changes.
- * This data is merged into the receiving cache.
- */
- SEND_OBJECT_CHANGES,
-
- /**
- * Sends a list of the identities of the objects that have changed.
- * The receiving cache invalidates the objects (rather than changing
- * any of the data)
- */
- INVALIDATE_CHANGED_OBJECTS,
-
- /**
- * Same as SEND_OBJECT_CHANGES except it also includes any newly
- * created objects from the transaction.
- */
- SEND_NEW_OBJECTS_WITH_CHANGES,
-
- /**
- * Does no cache coordination.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SEND_OBJECT_CHANGES"/>
- <xsd:enumeration value="INVALIDATE_CHANGED_OBJECTS"/>
- <xsd:enumeration value="SEND_NEW_OBJECTS_WITH_CHANGES"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="time-of-day">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface TimeOfDay {
- /**
- * (Optional) Hour of the day.
- */
- int hour() default 0;
-
- /**
- * (Optional) Minute of the day.
- */
- int minute() default 0;
-
- /**
- * (Optional) Second of the day.
- */
- int second() default 0;
-
- /**
- * (Optional) Millisecond of the day.
- */
- int millisecond() default 0;
-
- /**
- * Internal use. Do not modify.
- */
- boolean specified() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="hour" type="xsd:integer"/>
- <xsd:attribute name="minute" type="xsd:integer"/>
- <xsd:attribute name="second" type="xsd:integer"/>
- <xsd:attribute name="millisecond" type="xsd:integer"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="change-tracking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The ChangeTracking annotation is used to specify the
- * org.eclipse.persistence.descriptors.changetracking.ObjectChangePolicy
- * which computes changes sets for EclipseLink's UnitOfWork commit
- * process. An ObjectChangePolicy is stored on an Entity's descriptor.
- *
- * A ChangeTracking annotation may be specified on an Entity or
- * MappedSuperclass.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface ChangeTracking {
- /**
- * (Optional) The type of change tracking to use.
- */
- ChangeTrackingType value() default AUTO;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="type" type="orm:change-tracking-type" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="change-tracking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the ChangeTracking annotation.
- */
- public enum ChangeTrackingType {
- /**
- * An ATTRIBUTE change tracking type allows change tracking at the
- * attribute level of an object. Objects with changed attributes will
- * be processed in the commit process to include any changes in the
- * results of the commit. Unchanged objects will be ignored.
- */
- ATTRIBUTE,
-
- /**
- * An OBJECT change tracking policy allows an object to calculate for
- * itself whether it has changed. Changed objects will be processed in
- * the commit process to include any changes in the results of the
- * commit. Unchanged objects will be ignored.
- */
- OBJECT,
-
- /**
- * A DEFERRED change tracking policy defers all change detection to
- * the UnitOfWork's change detection process. Essentially, the
- * calculateChanges() method will run for all objects in a UnitOfWork.
- * This is the default ObjectChangePolicy
- */
- DEFERRED,
-
- /**
- * Will not set any change tracking policy.
- */
- AUTO
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ATTRIBUTE"/>
- <xsd:enumeration value="OBJECT"/>
- <xsd:enumeration value="DEFERRED"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="customizer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Customizer annotation is used to specify a class that implements
- * the org.eclipse.persistence.internal.sessions.factories.DescriptorCustomizer
- * interface and is to run against an enetity's class descriptor after all
- * metadata processing has been completed.
- *
- * The Customizer annotation may be defined on an Entity, MappedSuperclass
- * or Embeddable class. In the case of inheritance, a Customizer is not
- * inherited from its parent classes.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Customizer {
- /**
- * (Required) Defines the name of the descriptor customizer class that
- * should be applied for the related entity or embeddable class.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-stored-procedure-query">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A NamedStoredProcedureQuery annotation allows the definition of
- * queries that call stored procedures as named queries.
-
- * A NamedStoredProcedureQuery annotation may be defined on an Entity or
- * MappedSuperclass.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface NamedStoredProcedureQuery {
- /**
- * (Required) Unique name that references this stored procedure query.
- */
- String name();
-
- /**
- * (Optional) Query hints.
- */
- QueryHint[] hints() default {};
-
- /**
- * (Optional) Refers to the class of the result.
- */
- Class resultClass() default void.class;
-
- /**
- * (Optional) The name of the SQLResultMapping.
- */
- String resultSetMapping() default "";
-
- /**
- * (Required) The name of the stored procedure.
- */
- String procedureName();
-
- /**
- * (Optional) Whether the query should return a result set.
- */
- boolean returnsResultSet() default true;
-
- /**
- * (Optional) Defines arguments to the stored procedure.
- */
- StoredProcedureParameter[] parameters() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="parameter" type="orm:stored-procedure-parameter"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- <xsd:attribute name="procedure-name" type="xsd:string" use="required"/>
- <xsd:attribute name="returns-result-set" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="stored-procedure-parameter">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A StoredProcedureParameter annotation is used within a
- * NamedStoredProcedureQuery annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface StoredProcedureParameter {
- /**
- * (Optional) The direction of the stored procedure parameter.
- */
- Direction direction() default IN;
-
- /**
- * (Optional) Stored procedure parameter name.
- */
- String name() default "";
-
- /**
- * (Required) The query parameter name.
- */
- String queryParameter();
-
- /**
- * (Optional) The type of Java class desired back from the procedure,
- * this is dependent on the type returned from the procedure.
- */
- Class type() default void.class;
-
- /**
- * (Optional) The JDBC type code, this dependent on the type returned
- * from the procedure.
- */
- int jdbcType() default -1;
-
- /**
- * (Optional) The JDBC type name, this may be required for ARRAY or
- * STRUCT types.
- */
- String jdbcTypeName() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="direction" type="orm:direction-type"/>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="query-parameter" type="xsd:string" use="required"/>
- <xsd:attribute name="type" type="xsd:string"/>
- <xsd:attribute name="jdbc-type" type="xsd:integer"/>
- <xsd:attribute name="jdbc-type-name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="direction-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the StoredProcedureParameter annotation.
- * It is used to specify the direction of the stored procedure
- * parameters of a named stored procedure query.
- */
- public enum Direction {
- /**
- * Input parameter
- */
- IN,
-
- /**
- * Output parameter
- */
- OUT,
-
- /**
- * Input and output parameter
- */
- IN_OUT,
-
- /**
- * Output cursor
- */
- OUT_CURSOR
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="IN"/>
- <xsd:enumeration value="OUT"/>
- <xsd:enumeration value="IN_OUT"/>
- <xsd:enumeration value="OUT_CURSOR"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="variable-one-to-one">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * Variable one to one mappings are used to represent a pointer
- * references between a java object and an implementer of an interface.
- * This mapping is usually represented by a single pointer (stored in an
- * instance variable) between the source and target objects. In the
- * relational database tables, these mappings are normally implemented
- * using a foreign key and a type code.
- *
- * A VariableOneToOne can be specified within an Entity,
- * MappedSuperclass and Embeddable class.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface VariableOneToOne {
- /**
- * (Optional) The interface class that is the target of the
- * association. If not specified it will be inferred from the type
- * of the object being referenced.
- */
- Class targetInterface() default void.class;
-
- /**
- * (Optional) The operations that must be cascaded to the target of
- * the association.
- */
- CascadeType[] cascade() default {};
-
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) Whether the association is optional. If set to false
- * then a non-null relationship must always exist.
- */
- boolean optional() default true;
-
- /**
- * (Optional) The discriminator column will hold the type
- * indicators. If the DiscriminatorColumn is not specified, the name
- * of the discriminator column defaults to "DTYPE" and the
- * discriminator type to STRING.
- */
- DiscriminatorColumn discriminatorColumn() default @DiscriminatorColumn;
-
- /**
- * (Optional) The list of discriminator types that can be used with
- * this VariableOneToOne. If none are specified then those entities
- * within the persistence unit that implement the target interface
- * will be added to the list of types. The discriminator type will
- * default as follows:
- * - If DiscriminatorColumn type is STRING: Entity.name()
- * - If DiscriminatorColumn type is CHAR: First letter of the
- * Entity class
- * - If DiscriminatorColumn type is INTEGER: The next integer after
- * the highest integer explicitly added.
- */
- DiscriminatorClass[] discriminatorClasses() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column"
- minOccurs="0"/>
- <xsd:element name="discriminator-class" type="orm:discriminator-class"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-interface" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-class">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A DiscriminatorClass is used within a VariableOneToOne annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface DiscriminatorClass {
- /**
- * (Required) The discriminator to be stored on the database.
- */
- String discriminator();
-
- /**
- * (Required) The class to the instantiated with the given
- * discriminator.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="discriminator" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="existence-type">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * The ExistenceChecking annotation is used to specify the type of
- * checking EclipseLink should use when updating entities.
- *
- * An existence-checking specification is supported on an Entity or
- * MappedSuperclass annotation.
- */
- public @interface ExistenceChecking {
- /**
- * (Optional) Set the existence check for determining
- * if an insert or update should occur for an object.
- */
- ExistenceType value() default CHECK_CACHE;
- }
-
- /**
- * Assume that if the objects primary key does not include null and
- * it is in the cache, then it must exist.
- */
- CHECK_CACHE,
-
- /**
- * Perform does exist check on the database.
- */
- CHECK_DATABASE,
-
- /**
- * Assume that if the objects primary key does not include null then
- * it must exist. This may be used if the application guarantees or
- * does not care about the existence check.
- */
- ASSUME_EXISTENCE,
-
- /**
- * Assume that the object does not exist. This may be used if the
- * application guarantees or does not care about the existence check.
- * This will always force an insert to be called.
- */
- ASSUME_NON_EXISTENCE
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="CHECK_CACHE" />
- <xsd:enumeration value="CHECK_DATABASE" />
- <xsd:enumeration value="ASSUME_EXISTENCE" />
- <xsd:enumeration value="ASSUME_NON_EXISTENCE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-</xsd:schema>
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_1.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_1.xsd
deleted file mode 100644
index 0d3ff1747c..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_1.xsd
+++ /dev/null
@@ -1,3248 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Java Persistence API object-relational mapping file schema -->
-<xsd:schema targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:orm="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="1.1">
-
- <xsd:annotation>
- <xsd:documentation>
- @(#)eclipselink_orm_1_1.xsd 1.1 February 4 2009
- </xsd:documentation>
- </xsd:annotation>
- <xsd:annotation>
- <xsd:documentation><![CDATA[
-
- This is the XML Schema for the new native EclipseLink XML metadata
- format used for JPA and native deployment xml files.
-
- ]]></xsd:documentation>
- </xsd:annotation>
-
- <xsd:complexType name="emptyType"/>
-
- <xsd:simpleType name="versionType">
- <xsd:restriction base="xsd:token">
- <xsd:pattern value="[0-9]+(\.[0-9]+)*"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:element name="entity-mappings">
- <xsd:complexType>
- <xsd:annotation>
- <xsd:documentation>
-
- The entity-mappings element is the root element of an mapping
- file. It contains the following four types of elements:
-
- 1. The persistence-unit-metadata element contains metadata
- for the entire persistence unit. It is undefined if this element
- occurs in multiple mapping files within the same persistence unit.
-
- 2. The package, schema, catalog and access elements apply to all of
- the entity, mapped-superclass and embeddable elements defined in
- the same file in which they occur.
-
- 3. The sequence-generator, table-generator, named-query,
- named-native-query and sql-result-set-mapping elements are global
- to the persistence unit. It is undefined to have more than one
- sequence-generator or table-generator of the same name in the same
- or different mapping files in a persistence unit. It is also
- undefined to have more than one named-query or named-native-query
- of the same name in the same or different mapping files in a
- persistence unit.
-
- 4. The entity, mapped-superclass and embeddable elements each define
- the mapping information for a managed persistent class. The mapping
- information contained in these elements may be complete or it may
- be partial.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="persistence-unit-metadata"
- type="orm:persistence-unit-metadata"
- minOccurs="0"/>
- <xsd:element name="package" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type"
- minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="mapped-superclass" type="orm:mapped-superclass"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="entity" type="orm:entity"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embeddable" type="orm:embeddable"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="version" type="orm:versionType"
- fixed="1.1" use="required"/>
- </xsd:complexType>
- </xsd:element>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-metadata">
- <xsd:annotation>
- <xsd:documentation>
-
- Metadata that applies to the persistence unit and not just to
- the mapping file in which it is contained.
-
- If the xml-mapping-metadata-complete element is specified then
- the complete set of mapping metadata for the persistence unit
- is contained in the XML mapping files for the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="xml-mapping-metadata-complete" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-default-mappings" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="persistence-unit-defaults"
- type="orm:persistence-unit-defaults"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-defaults">
- <xsd:annotation>
- <xsd:documentation>
-
- These defaults are applied to the persistence unit as a whole
- unless they are overridden by local annotation or XML
- element settings.
-
- schema - Used as the schema for all tables or secondary tables
- that apply to the persistence unit
- catalog - Used as the catalog for all tables or secondary tables
- that apply to the persistence unit
- access - Used as the access type for all managed classes in
- the persistence unit
- cascade-persist - Adds cascade-persist to the set of cascade options
- in entity relationships of the persistence unit
- entity-listeners - List of default entity listeners to be invoked
- on each entity in the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="schema" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type"
- minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for an entity. Is allowed to be
- sparsely populated and used in conjunction with the annotations.
- Alternatively, the metadata-complete attribute can be used to
- indicate that no annotations on the entity class (and its fields
- or properties) are to be processed. If this is the case then
- the defaulting rules for the entity and its subelements will
- be recursively applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface Entity {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking"
- minOccurs="0"/>
- <xsd:element name="table" type="orm:table" minOccurs="0"/>
- <xsd:element name="secondary-table" type="orm:secondary-table"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="inheritance" type="orm:inheritance" minOccurs="0"/>
- <xsd:element name="discriminator-value" type="orm:discriminator-value"
- minOccurs="0"/>
- <xsd:element name="discriminator-column"
- type="orm:discriminator-column"
- minOccurs="0"/>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking"
- minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override" type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="attributes">
- <xsd:annotation>
- <xsd:documentation>
-
- This element contains the entity field or property mappings.
- It may be sparsely populated to include only a subset of the
- fields or properties. If metadata-complete for the entity is true
- then the remainder of the attributes will be defaulted according
- to the default rules.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="id" type="orm:id"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded-id" type="orm:embedded-id"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="basic" type="orm:basic"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-collection" type="orm:basic-collection"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-map" type="orm:basic-map"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="version" type="orm:version"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-one" type="orm:many-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-many" type="orm:one-to-many"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-one" type="orm:one-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="variable-one-to-one" type="orm:variable-one-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-many" type="orm:many-to-many"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded" type="orm:embedded"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transformation" type="orm:transformation"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transient" type="orm:transient"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="access-type">
- <xsd:annotation>
- <xsd:documentation>
-
- This element determines how the persistence provider accesses the
- state of an entity or embedded object.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="PROPERTY"/>
- <xsd:enumeration value="FIELD"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-listeners">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface EntityListeners {
- Class[] value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="entity-listener" type="orm:entity-listener"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-listener">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines an entity listener to be invoked at lifecycle events
- for the entities that list this listener.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PrePersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostPersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-load">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostLoad {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="property">
- <xsd:annotation>
- <xsd:documentation>
- A user defined mapping's property.
- @Target({METHOD, FIELD, TYPE})
- @Retention(RUNTIME)
- public @interface Property {
- /**
- * Property name.
- */
- String name();
-
- /**
- * String representation of Property value,
- * converted to an instance of valueType.
- */
- String value();
-
- /**
- * Property value type.
- * The value converted to valueType by ConversionManager.
- * If specified must be a simple type that could be handled by
- * ConversionManager:
- * numerical, boolean, temporal.
- */
- Class valueType() default String.class;
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- <xsd:attribute name="value-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="query-hint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface QueryHint {
- String name();
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedQuery {
- String name();
- String query();
- QueryHint[] hints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="hint" type="orm:query-hint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-native-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedNativeQuery {
- String name();
- String query();
- QueryHint[] hints() default {};
- Class resultClass() default void.class;
- String resultSetMapping() default ""; //named SqlResultSetMapping
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="hint" type="orm:query-hint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="sql-result-set-mapping">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SqlResultSetMapping {
- String name();
- EntityResult[] entities() default {};
- ColumnResult[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="entity-result" type="orm:entity-result"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="column-result" type="orm:column-result"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface EntityResult {
- Class entityClass();
- FieldResult[] fields() default {};
- String discriminatorColumn() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field-result" type="orm:field-result"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="entity-class" type="xsd:string" use="required"/>
- <xsd:attribute name="discriminator-column" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="field-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface FieldResult {
- String name();
- String column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="column" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface ColumnResult {
- String name();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Table {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="secondary-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SecondaryTable {
- String name();
- String catalog() default "";
- String schema() default "";
- PrimaryKeyJoinColumn[] pkJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="unique-constraint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface UniqueConstraint {
- String[] columnNames();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column-name" type="xsd:string"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Column {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="generation-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum GenerationType { TABLE, SEQUENCE, IDENTITY, AUTO };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="TABLE"/>
- <xsd:enumeration value="SEQUENCE"/>
- <xsd:enumeration value="IDENTITY"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="access-methods">
- <xsd:annotation>
- <xsd:documentation>
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="get-method" type="xsd:string" use="required"/>
- <xsd:attribute name="set-method" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="attribute-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AttributeOverride {
- String name();
- Column column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="association-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AssociationOverride {
- String name();
- JoinColumn[] joinColumns();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="id-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface IdClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Id {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded-id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface EmbeddedId {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="transient">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Transient {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="version">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Version {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal" />
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Basic {
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="lob" type="orm:lob"/>
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="enumerated" type="orm:enumerated"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="read-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * Unless the TransformationMapping is write-only, it should have a
- * ReadTransformer, it defines transformation of database column(s)
- * value(s)into attribute value.
- *
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReadTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.AttributeTransformer
- * interface. The class will be instantiated, its
- * buildAttributeValue will be used to create the value to be
- * assigned to the attribute.
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be assigned to the attribute (not assigns the value to
- * the attribute). Either transformerClass or method must be
- * specified, but not both.
- */
- String method() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <xsd:complexType name="write-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- *
- * A single WriteTransformer may be specified directly on the method or
- * attribute. Multiple WriteTransformers should be wrapped into
- * WriteTransformers annotation. No WriteTransformers specified for
- * read-only mapping. Unless the TransformationMapping is write-only, it
- * should have a ReadTransformer, it defines transformation of database
- * column(s) value(s)into attribute value.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface WriteTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.FieldTransformer
- * interface. The class will be instantiated, its buildFieldValue
- * will be used to create the value to be written into the database
- * column. Note that for ddl generation and returning to be
- * supported the method buildFieldValue in the class should be
- * defined to return the relevant Java type, not just Object as
- * defined in the interface, for instance:
- * public Time buildFieldValue(Object instance, String fieldName, Session session).
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be written into the database column.
- * Note that for ddl generation and returning to be supported the
- * method should be defined to return a particular type, not just
- * Object, for instance:
- * public Time getStartTime().
- * The method may require a Transient annotation to avoid being
- * mapped as Basic by default.
- * Either transformerClass or method must be specified, but not both.
- */
- String method() default "";
-
- /**
- * Specify here the column into which the value should be written.
- * The only case when this could be skipped is if a single
- * WriteTransformer annotates an attribute - the attribute's name
- * will be used as a column name.
- */
- Column column() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <xsd:complexType name="transformation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Transformation is an optional annotation for
- * org.eclipse.persistence.mappings.TransformationMapping.
- * TransformationMapping allows to map an attribute to one or more
- * database columns.
- *
- * Transformation annotation is an optional part of
- * TransformationMapping definition. Unless the TransformationMapping is
- * write-only, it should have a ReadTransformer, it defines
- * transformation of database column(s) value(s)into attribute value.
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Transformation {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) The optional element is a hint as to whether the value
- * of the field or property may be null. It is disregarded
- * for primitive types, which are considered non-optional.
- */
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="read-transformer" type="orm:read-transformer"/>
- <xsd:element name="write-transformer" type="orm:write-transformer" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access" type="orm:access-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum FetchType { LAZY, EAGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="LAZY"/>
- <xsd:enumeration value="EAGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="lob">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Lob {}
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Temporal {
- TemporalType value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:temporal-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum TemporalType {
- DATE, // java.sql.Date
- TIME, // java.sql.Time
- TIMESTAMP // java.sql.Timestamp
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="DATE"/>
- <xsd:enumeration value="TIME"/>
- <xsd:enumeration value="TIMESTAMP"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="enumerated">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Enumerated {
- EnumType value() default ORDINAL;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:enum-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="enum-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum EnumType {
- ORDINAL,
- STRING
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ORDINAL"/>
- <xsd:enumeration value="STRING"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="many-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cascade-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum CascadeType { ALL, PERSIST, MERGE, REMOVE, REFRESH};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade-all" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-merge" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-remove" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-refresh" type="orm:emptyType"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="one-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="one-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/>
- <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- public @interface JoinTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- JoinColumn[] inverseJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="inverse-join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="many-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/>
- <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="generated-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface GeneratedValue {
- GenerationType strategy() default AUTO;
- String generator() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:generation-type"/>
- <xsd:attribute name="generator" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKey {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-by">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderBy {
- String value() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="inheritance">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Inheritance {
- InheritanceType strategy() default SINGLE_TABLE;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:inheritance-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="inheritance-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum InheritanceType
- { SINGLE_TABLE, JOINED, TABLE_PER_CLASS};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SINGLE_TABLE"/>
- <xsd:enumeration value="JOINED"/>
- <xsd:enumeration value="TABLE_PER_CLASS"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorValue {
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum DiscriminatorType { STRING, CHAR, INTEGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="STRING"/>
- <xsd:enumeration value="CHAR"/>
- <xsd:enumeration value="INTEGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="primary-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface PrimaryKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorColumn {
- String name() default "DTYPE";
- DiscriminatorType discriminatorType() default STRING;
- String columnDefinition() default "";
- int length() default 31;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="discriminator-type" type="orm:discriminator-type"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embeddable">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for embeddable objects. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- in the class. If this is the case then the defaulting rules will
- be recursively applied.
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Embeddable {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking"
- minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes"
- minOccurs="0"/>
- <xsd:element name="copy-policy" type="orm:copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Embedded {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="mapped-superclass">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for a mapped superclass. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- If this is the case then the defaulting rules will be recursively
- applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface MappedSuperclass{}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking"
- minOccurs="0"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking"
- minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy"
- minOccurs="0" maxOccurs="1"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="sequence-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface SequenceGenerator {
- String name();
- String sequenceName() default "";
- int initialValue() default 1;
- int allocationSize() default 50;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="sequence-name" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface TableGenerator {
- String name();
- String table() default "";
- String catalog() default "";
- String schema() default "";
- String pkColumnName() default "";
- String valueColumnName() default "";
- String pkColumnValue() default "";
- int initialValue() default 0;
- int allocationSize() default 50;
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="pk-column-name" type="xsd:string"/>
- <xsd:attribute name="value-column-name" type="xsd:string"/>
- <xsd:attribute name="pk-column-value" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Converter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must implement
- * the org.eclipse.persistence.mappings.converters.Converter interface.
- */
- Class converterClass();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface TypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence field
- * or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent field
- * or property.
- */
- Class objectType() default void.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="object-type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ObjectTypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence
- * field or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent
- * field or property.
- */
- Class objectType() default void.class;
-
- /**
- * (Required) Specify the conversion values to be used
- * with the object converter.
- */
- ConversionValue[] conversionValues();
-
- /**
- * (Optional) Specify a default object value. Used for
- * legacy data if the data value is missing.
- */
- String defaultObjectValue() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="conversion-value" type="orm:conversion-value" minOccurs="1" maxOccurs="unbounded"/>
- <xsd:element name="default-object-value" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="conversion-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface ConversionValue {
- /**
- * (Required) Specify the database value.
- */
- String dataValue();
-
- /**
- * (Required) Specify the object value.
- */
- String objectValue();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="data-value" type="xsd:string" use="required"/>
- <xsd:attribute name="object-value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="struct-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface StructConverter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must
- * implement the EclipseLink interface
- * org.eclipse.persistence.mappings.converters.Converter
- */
- String converter();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="converter" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CopyPolicy is used to set a
- * org.eclipse.persistence.descriptors.copying.CopyPolicy on an Entity.
- * It is required that a class that implements
- * org.eclipse.persistence.descriptors.copying.CopyPolicy be specified
- * as the argument.
- *
- * A CopyPolicy should be specified on an Entity, MappedSuperclass or
- * Embeddable.
- *
- * For instance:
- * @Entity
- * @CopyPolicy("example.MyCopyPolicy")
- */
- public @interface CopyPolicy {
-
- /*
- * (Required)
- * This defines the class of the copy policy. It must specify a class
- * that implements org.eclipse.persistence.descriptors.copying.CopyPolicy
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="instantiation-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * An InstantiationCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.InstantiationCopyPolicy
- * on an Entity. InstantiationCopyPolicy is the default CopyPolicy in
- * EclipseLink and therefore this configuration option is only used to
- * override other types of copy policies
- *
- * An InstantiationCopyPolicy should be specified on an Entity,
- * MappedSuperclass or Embeddable.
- *
- * Example:
- * @Entity
- * @InstantiationCopyPolicy
- */
- public @interface InstantiationCopyPolicy {
- }
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="clone-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CloneCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.CloneCopyPolicy on an
- * Entity. A CloneCopyPolicy must specify at one or both of the "method"
- * or "workingCopyMethod". "workingCopyMethod" is used to clone objects
- * that will be returned to the user as they are registered in
- * EclipseLink's transactional mechanism, the UnitOfWork. "method" will
- * be used for the clone that is used for comparison in conjunction with
- * EclipseLink's DeferredChangeDetectionPolicy
- *
- * A CloneCopyPolicy should be specified on an Entity, MappedSuperclass
- * or Embeddable.
- *
- * Example:
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod", workingCopyMethod="myWorkingCopyCloneMethod")
- *
- * or:
- *
- @Entity
- * @CloneCopyPolicy(workingCopyMethodName="myWorkingCopyClone")
- */
- public @interface CloneCopyPolicy {
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified this defines
- * a method that will be used to create a clone that will be used
- * for comparison by
- * EclipseLink's DeferredChangeDetectionPolicy
- */
- String method();
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified
- * this defines a method that will be used to create a clone that
- * will be used to create the object returned when registering an
- * Object in an EclipseLink UnitOfWork
- */
- String workingCopyMethod();
-
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method" type="xsd:string"/>
- <xsd:attribute name="working-copy-method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface CollectionTable {
- /**
- * (Optional) The name of the collection table. If it is not
- * specified, it is defaulted to the concatenation of the following:
- * the name of the source entity; "_" ; the name of the relationship
- * property or field of the source entity.
- */
- String name() default "";
-
- /**
- * (Optional) The catalog of the table. It defaults to the persistence
- * unit default catalog.
- */
- String catalog() default "";
-
- /**
- * (Optional) The schema of the table. It defaults to the persistence
- * unit default schema.
- */
- String schema() default "";
-
- /**
- * (Optional) Used to specify a primary key column that is used as a
- * foreign key to join to another table. If the source entity uses a
- * composite primary key, a primary key join column must be specified
- * for each field of the composite primary key. In a single primary
- * key case, a primary key join column may optionally be specified.
- * Defaulting will apply otherwise as follows:
- * name, the same name as the primary key column of the primary table
- * of the source entity. referencedColumnName, the same name of
- * primary key column of the primary table of the source entity.
- */
- PrimaryKeyJoinColumn[] primaryKeyJoinColumns() default {};
-
- /**
- * (Optional) Unique constraints that are to be placed on the table.
- * These are only used if table generation is in effect.
- */
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicCollection {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the value column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:collection-table" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-map">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicMap {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the data column that holds the direct map
- * key. If the name on te key column is "", the name will default to:
- * the name of the property or field; "_KEY".
- */
- Column keyColumn() default @Column;
-
- /**
- * (Optional) Specify the key converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the direct map key.
- */
- Convert keyConverter() default @Convert;
-
- /**
- * (Optional) The name of the data column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
-
- /**
- * (Optional) Specify the value converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the value column mapping.
- */
- Convert valueConverter() default @Convert;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="key-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="key-converter" type="xsd:string" minOccurs="0"/>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="value-converter" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:collection-table" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum JoinFetchType {
- /**
- * An inner join is used to fetch the related object.
- * This does not allow for null/empty values.
- */
- INNER,
-
- /**
- * An inner join is used to fetch the related object.
- * This allows for null/empty values.
- */
- OUTER,
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="INNER"/>
- <xsd:enumeration value="OUTER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="optimistic-locking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An optimistic-locking element is used to specify the type of
- * optimistic locking EclipseLink should use when updating or deleting
- * entities. An optimistic-locking specification is supported on
- * an entity or mapped-superclass.
- *
- * It is used in conjunction with the optimistic-locking-type.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface OptimisticLocking {
- /**
- * (Optional) The type of optimistic locking policy to use.
- */
- OptimisticLockingType type() default VERSION_COLUMN;
-
- /**
- * (Optional) For an optimistic locking policy of type
- * SELECTED_COLUMNS, this annotation member becomes a (Required)
- * field.
- */
- Column[] selectedColumns() default {};
-
- /**
- * (Optional) Specify where the optimistic locking policy should
- * cascade lock. Currently only supported with VERSION_COLUMN locking.
- */
- boolean cascade() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="selected-column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="type" type="orm:optimistic-locking-type"/>
- <xsd:attribute name="cascade" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="optimistic-locking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A simple type that is used within an optimistic-locking
- * specification to specify the type of optimistic-locking that
- * EclipseLink should use when updating or deleting entities.
- */
- public enum OptimisticLockingType {
- /**
- * Using this type of locking policy compares every field in the table
- * in the WHERE clause when doing an update or a delete. If any field
- * has been changed, an optimistic locking exception will be thrown.
- */
- ALL_COLUMNS,
-
- /**
- * Using this type of locking policy compares only the changed fields
- * in the WHERE clause when doing an update. If any field has been
- * changed, an optimistic locking exception will be thrown. A delete
- * will only compare the primary key.
- */
- CHANGED_COLUMNS,
-
- /**
- * Using this type of locking compares selected fields in the WHERE
- * clause when doing an update or a delete. If any field has been
- * changed, an optimistic locking exception will be thrown. Note that
- * the fields specified must be mapped and not be primary keys.
- */
- SELECTED_COLUMNS,
-
- /**
- * Using this type of locking policy compares a single version number
- * in the where clause when doing an update. The version field must be
- * mapped and not be the primary key.
- */
- VERSION_COLUMN
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ALL_COLUMNS"/>
- <xsd:enumeration value="CHANGED_COLUMNS"/>
- <xsd:enumeration value="SELECTED_COLUMNS"/>
- <xsd:enumeration value="VERSION_COLUMN"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="primary-key">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The PrimaryKey annotation allows advanced configuration of the Id.
- * A validation policy can be given that allows specifying if zero is a valid id value.
- * The set of primary key columns can also be specified precisely.
- *
- * @author James Sutherland
- * @since EclipseLink 1.1
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface PrimaryKey {
- /**
- * (Optional) Configures what id validation is done.
- * By default 0 is not a valid id value, this can be used to allow 0 id values.
- */
- IdValidation validation() default IdValidation.ZERO;
-
- /**
- * (Optional) Used to specify the primary key columns directly.
- * This can be used instead of @Id if the primary key includes a non basic field,
- * such as a foreign key, or a inheritance discriminator, embedded, or transformation mapped field.
- */
- Column[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="validation" type="orm:id-validation"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="id-validation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The IdValidation enum determines the type value that are valid for an Id.
- * By default null is not allowed, and 0 is not allow for singleton ids of long or int type.
- * The default value is ZERO for singleton ids, and NULL for composite ids.
- * This can be set using the @PrimaryKey annotation, or ClassDescriptor API.
- *
- * @see PrimaryKey
- * @see org.eclipse.persistence.descriptors.ClassDescriptor#setIdValidation(IdValidation)
- * @author James Sutherland
- * @since EclipseLink 1.0
- */
- public enum IdValidation {
- /**
- * Only null is not allowed as an id value, 0 is allowed.
- */
- NULL,
-
- /**
- * null and 0 are not allowed, (only int and long).
- */
- ZERO,
-
- /**
- * No id validation is done.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="NULL"/>
- <xsd:enumeration value="ZERO"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cache">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Cache annotation is used to set an
- * org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy
- * which sets objects in EclipseLink's identity maps to be invalid
- * following given rules. By default in EclipseLink, objects do not
- * expire in the cache. Several different policies are available to
- * allow objects to expire.
- *
- * @see org.eclipse.persistence.annotations.CacheType
- *
- * A Cache anotation may be defined on an Entity or MappedSuperclass.
- * In the case of inheritance, a Cache annotation should only be defined
- * on the root of the inheritance hierarchy.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Cache {
- /**
- * (Optional) The type of cache to use.
- */
- CacheType type() default SOFT_WEAK;
-
- /**
- * (Optional) The size of cache to use.
- */
- int size() default 100;
-
- /**
- * (Optional) Cached instances in the shared cache or a client
- * isolated cache.
- */
- boolean shared() default true;
-
- /**
- * (Optional) Expire cached instance after a fix period of time (ms).
- * Queries executed against the cache after this will be forced back
- * to the database for a refreshed copy
- */
- int expiry() default -1; // minus one is no expiry.
-
- /**
- * (Optional) Expire cached instance a specific time of day. Queries
- * executed against the cache after this will be forced back to the
- * database for a refreshed copy
- */
- TimeOfDay expiryTimeOfDay() default @TimeOfDay(specified=false);
-
- /**
- * (Optional) Force all queries that go to the database to always
- * refresh the cache.
- */
- boolean alwaysRefresh() default false;
-
- /**
- * (Optional) For all queries that go to the database, refresh the
- * cache only if the data received from the database by a query is
- * newer than the data in the cache (as determined by the optimistic
- * locking field)
- */
- boolean refreshOnlyIfNewer() default false;
-
- /**
- * (Optional) Setting to true will force all queries to bypass the
- * cache for hits but still resolve against the cache for identity.
- * This forces all queries to hit the database.
- */
- boolean disableHits() default false;
-
- /**
- * (Optional) The cache coordination mode.
- */
- CacheCoordinationType coordinationType() default SEND_OBJECT_CHANGES;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:choice>
- <xsd:element name="expiry" type="xsd:integer" minOccurs="0"/>
- <xsd:element name="expiry-time-of-day" type="orm:time-of-day" minOccurs="0"/>
- </xsd:choice>
- <xsd:attribute name="size" type="xsd:integer"/>
- <xsd:attribute name="shared" type="xsd:boolean"/>
- <xsd:attribute name="type" type="orm:cache-type"/>
- <xsd:attribute name="always-refresh" type="xsd:boolean"/>
- <xsd:attribute name="refresh-only-if-newer" type="xsd:boolean"/>
- <xsd:attribute name="disable-hits" type="xsd:boolean"/>
- <xsd:attribute name="coordination-type" type="orm:cache-coordination-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The CacheType enum is used with the Cache annotation for a
- * persistent class. It defines the type of IdentityMap/Cache used for
- * the class. By default the SOFT_WEAK cache type is used.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheType {
- /**
- * Provides full caching and guaranteed identity. Caches all objects
- * and does not remove them.
- * WARNING: This method may be memory intensive when many objects are
- * read.
- */
- FULL,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using weak references. This method allows full garbage
- * collection and provides full caching and guaranteed identity.
- */
- WEAK,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using soft references. This method allows full garbage
- * collection when memory is low and provides full caching and
- * guaranteed identity.
- */
- SOFT,
-
- /**
- * Similar to the WEAK identity map except that it maintains a
- * most-frequently-used sub-cache. The size of the sub-cache is
- * proportional to the size of the identity map as specified by
- * descriptor's setIdentityMapSize() method. The sub-cache
- * uses soft references to ensure that these objects are
- * garbage-collected only if the system is low on memory.
- */
- SOFT_WEAK,
-
- /**
- * Identical to the soft cache weak (SOFT_WEAK) identity map except
- * that it uses hard references in the sub-cache. Use this identity
- * map if soft references do not behave properly on your platform.
- */
- HARD_WEAK,
-
- /**
- * A cache identity map maintains a fixed number of objects
- * specified by the application. Objects are removed from the cache
- * on a least-recently-used basis. This method allows object
- * identity for the most commonly used objects.
- * WARNING: Furnishes caching and identity, but does not guarantee
- * identity.
- */
- CACHE,
-
- /**
- * WARNING: Does not preserve object identity and does not cache
- * objects.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="FULL"/>
- <xsd:enumeration value="WEAK"/>
- <xsd:enumeration value="SOFT"/>
- <xsd:enumeration value="SOFT_WEAK"/>
- <xsd:enumeration value="HARD_WEAK"/>
- <xsd:enumeration value="CACHE"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-coordination-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the Cache annotation.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheCoordinationType {
- /**
- * Sends a list of changed objects including data about the changes.
- * This data is merged into the receiving cache.
- */
- SEND_OBJECT_CHANGES,
-
- /**
- * Sends a list of the identities of the objects that have changed.
- * The receiving cache invalidates the objects (rather than changing
- * any of the data)
- */
- INVALIDATE_CHANGED_OBJECTS,
-
- /**
- * Same as SEND_OBJECT_CHANGES except it also includes any newly
- * created objects from the transaction.
- */
- SEND_NEW_OBJECTS_WITH_CHANGES,
-
- /**
- * Does no cache coordination.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SEND_OBJECT_CHANGES"/>
- <xsd:enumeration value="INVALIDATE_CHANGED_OBJECTS"/>
- <xsd:enumeration value="SEND_NEW_OBJECTS_WITH_CHANGES"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="time-of-day">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface TimeOfDay {
- /**
- * (Optional) Hour of the day.
- */
- int hour() default 0;
-
- /**
- * (Optional) Minute of the day.
- */
- int minute() default 0;
-
- /**
- * (Optional) Second of the day.
- */
- int second() default 0;
-
- /**
- * (Optional) Millisecond of the day.
- */
- int millisecond() default 0;
-
- /**
- * Internal use. Do not modify.
- */
- boolean specified() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="hour" type="xsd:integer"/>
- <xsd:attribute name="minute" type="xsd:integer"/>
- <xsd:attribute name="second" type="xsd:integer"/>
- <xsd:attribute name="millisecond" type="xsd:integer"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="change-tracking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The ChangeTracking annotation is used to specify the
- * org.eclipse.persistence.descriptors.changetracking.ObjectChangePolicy
- * which computes changes sets for EclipseLink's UnitOfWork commit
- * process. An ObjectChangePolicy is stored on an Entity's descriptor.
- *
- * A ChangeTracking annotation may be specified on an Entity,
- * MappedSuperclass or Embeddable.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface ChangeTracking {
- /**
- * (Optional) The type of change tracking to use.
- */
- ChangeTrackingType value() default AUTO;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="type" type="orm:change-tracking-type" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="change-tracking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the ChangeTracking annotation.
- */
- public enum ChangeTrackingType {
- /**
- * An ATTRIBUTE change tracking type allows change tracking at the
- * attribute level of an object. Objects with changed attributes will
- * be processed in the commit process to include any changes in the
- * results of the commit. Unchanged objects will be ignored.
- */
- ATTRIBUTE,
-
- /**
- * An OBJECT change tracking policy allows an object to calculate for
- * itself whether it has changed. Changed objects will be processed in
- * the commit process to include any changes in the results of the
- * commit. Unchanged objects will be ignored.
- */
- OBJECT,
-
- /**
- * A DEFERRED change tracking policy defers all change detection to
- * the UnitOfWork's change detection process. Essentially, the
- * calculateChanges() method will run for all objects in a UnitOfWork.
- * This is the default ObjectChangePolicy
- */
- DEFERRED,
-
- /**
- * Will not set any change tracking policy.
- */
- AUTO
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ATTRIBUTE"/>
- <xsd:enumeration value="OBJECT"/>
- <xsd:enumeration value="DEFERRED"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="customizer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Customizer annotation is used to specify a class that implements
- * the org.eclipse.persistence.config.DescriptorCustomizer
- * interface and is to run against an enetity's class descriptor after all
- * metadata processing has been completed.
- *
- * The Customizer annotation may be defined on an Entity, MappedSuperclass
- * or Embeddable class. In the case of inheritance, a Customizer is not
- * inherited from its parent classes.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Customizer {
- /**
- * (Required) Defines the name of the descriptor customizer class that
- * should be applied for the related entity or embeddable class.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-stored-procedure-query">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A NamedStoredProcedureQuery annotation allows the definition of
- * queries that call stored procedures as named queries.
-
- * A NamedStoredProcedureQuery annotation may be defined on an Entity or
- * MappedSuperclass.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface NamedStoredProcedureQuery {
- /**
- * (Required) Unique name that references this stored procedure query.
- */
- String name();
-
- /**
- * (Optional) Query hints.
- */
- QueryHint[] hints() default {};
-
- /**
- * (Optional) Refers to the class of the result.
- */
- Class resultClass() default void.class;
-
- /**
- * (Optional) The name of the SQLResultMapping.
- */
- String resultSetMapping() default "";
-
- /**
- * (Required) The name of the stored procedure.
- */
- String procedureName();
-
- /**
- * (Optional) Whether the query should return a result set.
- */
- boolean returnsResultSet() default true;
-
- /**
- * (Optional) Defines arguments to the stored procedure.
- */
- StoredProcedureParameter[] parameters() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0"
- maxOccurs="unbounded"/>
- <xsd:element name="parameter" type="orm:stored-procedure-parameter"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- <xsd:attribute name="procedure-name" type="xsd:string" use="required"/>
- <xsd:attribute name="returns-result-set" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="stored-procedure-parameter">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A StoredProcedureParameter annotation is used within a
- * NamedStoredProcedureQuery annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface StoredProcedureParameter {
- /**
- * (Optional) The direction of the stored procedure parameter.
- */
- Direction direction() default IN;
-
- /**
- * (Optional) Stored procedure parameter name.
- */
- String name() default "";
-
- /**
- * (Required) The query parameter name.
- */
- String queryParameter();
-
- /**
- * (Optional) The type of Java class desired back from the procedure,
- * this is dependent on the type returned from the procedure.
- */
- Class type() default void.class;
-
- /**
- * (Optional) The JDBC type code, this dependent on the type returned
- * from the procedure.
- */
- int jdbcType() default -1;
-
- /**
- * (Optional) The JDBC type name, this may be required for ARRAY or
- * STRUCT types.
- */
- String jdbcTypeName() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="direction" type="orm:direction-type"/>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="query-parameter" type="xsd:string" use="required"/>
- <xsd:attribute name="type" type="xsd:string"/>
- <xsd:attribute name="jdbc-type" type="xsd:integer"/>
- <xsd:attribute name="jdbc-type-name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="direction-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the StoredProcedureParameter annotation.
- * It is used to specify the direction of the stored procedure
- * parameters of a named stored procedure query.
- */
- public enum Direction {
- /**
- * Input parameter
- */
- IN,
-
- /**
- * Output parameter
- */
- OUT,
-
- /**
- * Input and output parameter
- */
- IN_OUT,
-
- /**
- * Output cursor
- */
- OUT_CURSOR
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="IN"/>
- <xsd:enumeration value="OUT"/>
- <xsd:enumeration value="IN_OUT"/>
- <xsd:enumeration value="OUT_CURSOR"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="variable-one-to-one">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * Variable one to one mappings are used to represent a pointer
- * references between a java object and an implementer of an interface.
- * This mapping is usually represented by a single pointer (stored in an
- * instance variable) between the source and target objects. In the
- * relational database tables, these mappings are normally implemented
- * using a foreign key and a type code.
- *
- * A VariableOneToOne can be specified within an Entity,
- * MappedSuperclass and Embeddable class.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface VariableOneToOne {
- /**
- * (Optional) The interface class that is the target of the
- * association. If not specified it will be inferred from the type
- * of the object being referenced.
- */
- Class targetInterface() default void.class;
-
- /**
- * (Optional) The operations that must be cascaded to the target of
- * the association.
- */
- CascadeType[] cascade() default {};
-
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) Whether the association is optional. If set to false
- * then a non-null relationship must always exist.
- */
- boolean optional() default true;
-
- /**
- * (Optional) The discriminator column will hold the type
- * indicators. If the DiscriminatorColumn is not specified, the name
- * of the discriminator column defaults to "DTYPE" and the
- * discriminator type to STRING.
- */
- DiscriminatorColumn discriminatorColumn() default @DiscriminatorColumn;
-
- /**
- * (Optional) The list of discriminator types that can be used with
- * this VariableOneToOne. If none are specified then those entities
- * within the persistence unit that implement the target interface
- * will be added to the list of types. The discriminator type will
- * default as follows:
- * - If DiscriminatorColumn type is STRING: Entity.name()
- * - If DiscriminatorColumn type is CHAR: First letter of the
- * Entity class
- * - If DiscriminatorColumn type is INTEGER: The next integer after
- * the highest integer explicitly added.
- */
- DiscriminatorClass[] discriminatorClasses() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column" minOccurs="0"/>
- <xsd:element name="discriminator-class" type="orm:discriminator-class" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-interface" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-class">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A DiscriminatorClass is used within a VariableOneToOne annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface DiscriminatorClass {
- /**
- * (Required) The discriminator to be stored on the database.
- */
- String discriminator();
-
- /**
- * (Required) The class to the instantiated with the given
- * discriminator.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="discriminator" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="existence-type">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * The ExistenceChecking annotation is used to specify the type of
- * checking EclipseLink should use when updating entities.
- *
- * An existence-checking specification is supported on an Entity or
- * MappedSuperclass annotation.
- */
- public @interface ExistenceChecking {
- /**
- * (Optional) Set the existence check for determining
- * if an insert or update should occur for an object.
- */
- ExistenceType value() default CHECK_CACHE;
- }
-
- /**
- * Assume that if the objects primary key does not include null and
- * it is in the cache, then it must exist.
- */
- CHECK_CACHE,
-
- /**
- * Perform does exist check on the database.
- */
- CHECK_DATABASE,
-
- /**
- * Assume that if the objects primary key does not include null then
- * it must exist. This may be used if the application guarantees or
- * does not care about the existence check.
- */
- ASSUME_EXISTENCE,
-
- /**
- * Assume that the object does not exist. This may be used if the
- * application guarantees or does not care about the existence check.
- * This will always force an insert to be called.
- */
- ASSUME_NON_EXISTENCE
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="CHECK_CACHE" />
- <xsd:enumeration value="CHECK_DATABASE" />
- <xsd:enumeration value="ASSUME_EXISTENCE" />
- <xsd:enumeration value="ASSUME_NON_EXISTENCE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-</xsd:schema>
-
-
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_2.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_2.xsd
deleted file mode 100644
index f7c2b26770..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_1_2.xsd
+++ /dev/null
@@ -1,3519 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-******************************************************************************
- Copyright (c) 1998, 2009 Oracle. All rights reserved.
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
- which accompanies this distribution.
- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
- and the Eclipse Distribution License is available at
- http://www.eclipse.org/org/documents/edl-v10.php.
-
- Contributors:
- Oracle - initial API and implementation from Oracle TopLink
-*****************************************************************************/
--->
-
-<!-- Java Persistence API object-relational mapping file schema -->
-<xsd:schema targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:orm="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="1.2">
-
- <xsd:annotation>
- <xsd:documentation>
- @(#)eclipselink_orm_1_2.xsd 1.0 February 1 2008
- </xsd:documentation>
- </xsd:annotation>
- <xsd:annotation>
- <xsd:documentation><![CDATA[
-
- This is the XML Schema for the native Eclipselink XML mapping file
- The file may be named "META-INF/eclipselink-orm.xml" in the persistence
- archive or it may be named some other name which would be
- used to locate the file as resource on the classpath.
- Object/relational mapping files must indicate the object/relational
- mapping file schema by using the persistence namespace:
-
- http://www.eclipse.org/eclipselink/xsds/persistence/orm
-
- and indicate the version of the schema by using the version element as shown below:
-
- <entity-mappings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.eclipse.org/eclipselink/xsds/persistence/orm
- eclipselink_orm_1_2.xsd
- version="1.2">
- ...
- </entity-mappings>
-
- ]]></xsd:documentation>
- </xsd:annotation>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="emptyType"/>
- <xsd:simpleType name="versionType">
- <xsd:restriction base="xsd:token">
- <xsd:pattern value="[0-9]+(\.[0-9]+)*"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="access-methods">
- <xsd:annotation>
- <xsd:documentation>
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="get-method" type="xsd:string" use="required"/>
- <xsd:attribute name="set-method" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cache">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Cache annotation is used to set an
- * org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy
- * which sets objects in EclipseLink's identity maps to be invalid
- * following given rules. By default in EclipseLink, objects do not
- * expire in the cache. Several different policies are available to
- * allow objects to expire.
- *
- * @see org.eclipse.persistence.annotations.CacheType
- *
- * A Cache anotation may be defined on an Entity or MappedSuperclass.
- * In the case of inheritance, a Cache annotation should only be defined
- * on the root of the inheritance hierarchy.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Cache {
- /**
- * (Optional) The type of cache to use.
- */
- CacheType type() default SOFT_WEAK;
-
- /**
- * (Optional) The size of cache to use.
- */
- int size() default 100;
-
- /**
- * (Optional) Cached instances in the shared cache or a client
- * isolated cache.
- */
- boolean shared() default true;
-
- /**
- * (Optional) Expire cached instance after a fix period of time (ms).
- * Queries executed against the cache after this will be forced back
- * to the database for a refreshed copy
- */
- int expiry() default -1; // minus one is no expiry.
-
- /**
- * (Optional) Expire cached instance a specific time of day. Queries
- * executed against the cache after this will be forced back to the
- * database for a refreshed copy
- */
- TimeOfDay expiryTimeOfDay() default @TimeOfDay(specified=false);
-
- /**
- * (Optional) Force all queries that go to the database to always
- * refresh the cache.
- */
- boolean alwaysRefresh() default false;
-
- /**
- * (Optional) For all queries that go to the database, refresh the
- * cache only if the data received from the database by a query is
- * newer than the data in the cache (as determined by the optimistic
- * locking field)
- */
- boolean refreshOnlyIfNewer() default false;
-
- /**
- * (Optional) Setting to true will force all queries to bypass the
- * cache for hits but still resolve against the cache for identity.
- * This forces all queries to hit the database.
- */
- boolean disableHits() default false;
-
- /**
- * (Optional) The cache coordination mode.
- */
- CacheCoordinationType coordinationType() default SEND_OBJECT_CHANGES;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:choice>
- <xsd:element name="expiry" type="xsd:integer" minOccurs="0"/>
- <xsd:element name="expiry-time-of-day" type="orm:time-of-day" minOccurs="0"/>
- </xsd:choice>
- <xsd:attribute name="size" type="xsd:integer"/>
- <xsd:attribute name="shared" type="xsd:boolean"/>
- <xsd:attribute name="type" type="orm:cache-type"/>
- <xsd:attribute name="always-refresh" type="xsd:boolean"/>
- <xsd:attribute name="refresh-only-if-newer" type="xsd:boolean"/>
- <xsd:attribute name="disable-hits" type="xsd:boolean"/>
- <xsd:attribute name="coordination-type" type="orm:cache-coordination-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The CacheType enum is used with the Cache annotation for a
- * persistent class. It defines the type of IdentityMap/Cache used for
- * the class. By default the SOFT_WEAK cache type is used.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheType {
- /**
- * Provides full caching and guaranteed identity. Caches all objects
- * and does not remove them.
- * WARNING: This method may be memory intensive when many objects are
- * read.
- */
- FULL,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using weak references. This method allows full garbage
- * collection and provides full caching and guaranteed identity.
- */
- WEAK,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using soft references. This method allows full garbage
- * collection when memory is low and provides full caching and
- * guaranteed identity.
- */
- SOFT,
-
- /**
- * Similar to the WEAK identity map except that it maintains a
- * most-frequently-used sub-cache. The size of the sub-cache is
- * proportional to the size of the identity map as specified by
- * descriptor's setIdentityMapSize() method. The sub-cache
- * uses soft references to ensure that these objects are
- * garbage-collected only if the system is low on memory.
- */
- SOFT_WEAK,
-
- /**
- * Identical to the soft cache weak (SOFT_WEAK) identity map except
- * that it uses hard references in the sub-cache. Use this identity
- * map if soft references do not behave properly on your platform.
- */
- HARD_WEAK,
-
- /**
- * A cache identity map maintains a fixed number of objects
- * specified by the application. Objects are removed from the cache
- * on a least-recently-used basis. This method allows object
- * identity for the most commonly used objects.
- * WARNING: Furnishes caching and identity, but does not guarantee
- * identity.
- */
- CACHE,
-
- /**
- * WARNING: Does not preserve object identity and does not cache
- * objects.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="FULL"/>
- <xsd:enumeration value="WEAK"/>
- <xsd:enumeration value="SOFT"/>
- <xsd:enumeration value="SOFT_WEAK"/>
- <xsd:enumeration value="HARD_WEAK"/>
- <xsd:enumeration value="CACHE"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-coordination-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the Cache annotation.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheCoordinationType {
- /**
- * Sends a list of changed objects including data about the changes.
- * This data is merged into the receiving cache.
- */
- SEND_OBJECT_CHANGES,
-
- /**
- * Sends a list of the identities of the objects that have changed.
- * The receiving cache invalidates the objects (rather than changing
- * any of the data)
- */
- INVALIDATE_CHANGED_OBJECTS,
-
- /**
- * Same as SEND_OBJECT_CHANGES except it also includes any newly
- * created objects from the transaction.
- */
- SEND_NEW_OBJECTS_WITH_CHANGES,
-
- /**
- * Does no cache coordination.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SEND_OBJECT_CHANGES"/>
- <xsd:enumeration value="INVALIDATE_CHANGED_OBJECTS"/>
- <xsd:enumeration value="SEND_NEW_OBJECTS_WITH_CHANGES"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="change-tracking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The ChangeTracking annotation is used to specify the
- * org.eclipse.persistence.descriptors.changetracking.ObjectChangePolicy
- * which computes changes sets for EclipseLink's UnitOfWork commit
- * process. An ObjectChangePolicy is stored on an Entity's descriptor.
- *
- * A ChangeTracking annotation may be specified on an Entity,
- * MappedSuperclass or Embeddable.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface ChangeTracking {
- /**
- * (Optional) The type of change tracking to use.
- */
- ChangeTrackingType value() default AUTO;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="type" type="orm:change-tracking-type" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="change-tracking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the ChangeTracking annotation.
- */
- public enum ChangeTrackingType {
- /**
- * An ATTRIBUTE change tracking type allows change tracking at the
- * attribute level of an object. Objects with changed attributes will
- * be processed in the commit process to include any changes in the
- * results of the commit. Unchanged objects will be ignored.
- */
- ATTRIBUTE,
-
- /**
- * An OBJECT change tracking policy allows an object to calculate for
- * itself whether it has changed. Changed objects will be processed in
- * the commit process to include any changes in the results of the
- * commit. Unchanged objects will be ignored.
- */
- OBJECT,
-
- /**
- * A DEFERRED change tracking policy defers all change detection to
- * the UnitOfWork's change detection process. Essentially, the
- * calculateChanges() method will run for all objects in a UnitOfWork.
- * This is the default ObjectChangePolicy
- */
- DEFERRED,
-
- /**
- * Will not set any change tracking policy.
- */
- AUTO
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ATTRIBUTE"/>
- <xsd:enumeration value="OBJECT"/>
- <xsd:enumeration value="DEFERRED"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="customizer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Customizer annotation is used to specify a class that implements
- * the org.eclipse.persistence.config.DescriptorCustomizer
- * interface and is to run against an enetity's class descriptor after all
- * metadata processing has been completed.
- *
- * The Customizer annotation may be defined on an Entity, MappedSuperclass
- * or Embeddable class. In the case of inheritance, a Customizer is not
- * inherited from its parent classes.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Customizer {
- /**
- * (Required) Defines the name of the descriptor customizer class that
- * should be applied for the related entity or embeddable class.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="direction-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the StoredProcedureParameter annotation.
- * It is used to specify the direction of the stored procedure
- * parameters of a named stored procedure query.
- */
- public enum Direction {
- /**
- * Input parameter
- */
- IN,
-
- /**
- * Output parameter
- */
- OUT,
-
- /**
- * Input and output parameter
- */
- IN_OUT,
-
- /**
- * Output cursor
- */
- OUT_CURSOR
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="IN"/>
- <xsd:enumeration value="OUT"/>
- <xsd:enumeration value="IN_OUT"/>
- <xsd:enumeration value="OUT_CURSOR"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:element name="entity-mappings">
- <xsd:complexType>
- <xsd:annotation>
- <xsd:documentation>
-
- The entity-mappings element is the root element of an mapping
- file. It contains the following four types of elements:
-
- 1. The persistence-unit-metadata element contains metadata
- for the entire persistence unit. It is undefined if this element
- occurs in multiple mapping files within the same persistence unit.
-
- 2. The package, schema, catalog and access elements apply to all of
- the entity, mapped-superclass and embeddable elements defined in
- the same file in which they occur.
-
- 3. The sequence-generator, table-generator, named-query,
- named-native-query and sql-result-set-mapping elements are global
- to the persistence unit. It is undefined to have more than one
- sequence-generator or table-generator of the same name in the same
- or different mapping files in a persistence unit. It is also
- undefined to have more than one named-query, named-native-query, or
- result-set-mapping of the same name in the same or different mapping
- files in a persistence unit.
-
- 4. The entity, mapped-superclass and embeddable elements each define
- the mapping information for a managed persistent class. The mapping
- information contained in these elements may be complete or it may
- be partial.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="persistence-unit-metadata" type="orm:persistence-unit-metadata" minOccurs="0"/>
- <xsd:element name="package" type="xsd:string" minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string" minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string" minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-query" type="orm:named-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping" type="orm:sql-result-set-mapping" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="mapped-superclass" type="orm:mapped-superclass" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="entity" type="orm:entity" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embeddable" type="orm:embeddable" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="version" type="orm:versionType" fixed="1.2" use="required"/>
- </xsd:complexType>
- </xsd:element>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="existence-type">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * The ExistenceChecking annotation is used to specify the type of
- * checking EclipseLink should use when updating entities.
- *
- * An existence-checking specification is supported on an Entity or
- * MappedSuperclass annotation.
- */
- public @interface ExistenceChecking {
-
- /**
- * (Optional) Set the existence check for determining
- * if an insert or update should occur for an object.
- */
- ExistenceType value() default CHECK_CACHE;
- }
-
- /**
- * Assume that if the objects primary key does not include null and
- * it is in the cache, then it must exist.
- */
- CHECK_CACHE,
-
- /**
- * Perform does exist check on the database.
- */
- CHECK_DATABASE,
-
- /**
- * Assume that if the objects primary key does not include null then
- * it must exist. This may be used if the application guarantees or
- * does not care about the existence check.
- */
- ASSUME_EXISTENCE,
-
- /**
- * Assume that the object does not exist. This may be used if the
- * application guarantees or does not care about the existence check.
- * This will always force an insert to be called.
- */
- ASSUME_NON_EXISTENCE
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="CHECK_CACHE"/>
- <xsd:enumeration value="CHECK_DATABASE"/>
- <xsd:enumeration value="ASSUME_EXISTENCE"/>
- <xsd:enumeration value="ASSUME_NON_EXISTENCE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-metadata">
- <xsd:annotation>
- <xsd:documentation>
-
- Metadata that applies to the persistence unit and not just to
- the mapping file in which it is contained.
-
- If the xml-mapping-metadata-complete element is specified,
- the complete set of mapping metadata for the persistence unit
- is contained in the XML mapping files for the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="xml-mapping-metadata-complete" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="exclude-default-mappings" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="persistence-unit-defaults" type="orm:persistence-unit-defaults" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-defaults">
- <xsd:annotation>
- <xsd:documentation>
-
- These defaults are applied to the persistence unit as a whole
- unless they are overridden by local annotation or XML
- element settings.
-
- schema - Used as the schema for all tables, secondary tables,
- collection tables, sequence generators, and table generators
- that apply to the persistence unit
- catalog - Used as the catalog for all tables, secondary tables,
- collection tables, sequence generators, and table generators
- that apply to the persistence unit
- access - Used as the access type for all managed classes in
- the persistence unit
- cascade-persist - Adds cascade-persist to the set of cascade options
- in all entity relationships of the persistence unit
- entity-listeners - List of default entity listeners to be invoked
- on each entity in the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string" minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string" minOccurs="0"/>
- <xsd:element name="delimited-identifiers" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type" minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for an entity. Is allowed to be
- sparsely populated and used in conjunction with the annotations.
- Alternatively, the metadata-complete attribute can be used to
- indicate that no annotations on the entity class (and its fields
- or properties) are to be processed. If this is the case then
- the defaulting rules for the entity and its sub-elements will
- be recursively applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface Entity {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="table" type="orm:table" minOccurs="0"/>
- <xsd:element name="secondary-table" type="orm:secondary-table" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="inheritance" type="orm:inheritance" minOccurs="0"/>
- <xsd:element name="discriminator-value" type="orm:discriminator-value" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column" minOccurs="0"/>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking" minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="named-query" type="orm:named-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping" type="orm:sql-result-set-mapping" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners" minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist" minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="cacheable" type="xsd:boolean"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="access-type">
- <xsd:annotation>
- <xsd:documentation>
-
- This element determines how the persistence provider accesses the
- state of an entity or embedded object.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="PROPERTY"/>
- <xsd:enumeration value="FIELD"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="association-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AssociationOverride {
- String name();
- JoinColumn[] joinColumns() default{};
- JoinTable joinTable() default @JoinTable;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="attribute-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AttributeOverride {
- String name();
- Column column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="attributes">
- <xsd:annotation>
- <xsd:documentation>
-
- This element contains the entity field or property mappings.
- It may be sparsely populated to include only a subset of the
- fields or properties. If metadata-complete for the entity is true
- then the remainder of the attributes will be defaulted according
- to the default rules.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="id" type="orm:id" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded-id" type="orm:embedded-id" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="basic" type="orm:basic" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-collection" type="orm:basic-collection" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-map" type="orm:basic-map" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="version" type="orm:version" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-one" type="orm:many-to-one" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-many" type="orm:one-to-many" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-one" type="orm:one-to-one" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="variable-one-to-one" type="orm:variable-one-to-one" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-many" type="orm:many-to-many" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="element-collection" type="orm:element-collection" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded" type="orm:embedded" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transformation" type="orm:transformation" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transient" type="orm:transient" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Basic {
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="lob" type="orm:lob"/>
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="enumerated" type="orm:enumerated"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicCollection {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the value column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:eclipselink-collection-table" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-map">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicMap {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the data column that holds the direct map
- * key. If the name on te key column is "", the name will default to:
- * the name of the property or field; "_KEY".
- */
- Column keyColumn() default @Column;
-
- /**
- * (Optional) Specify the key converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the direct map key.
- */
- Convert keyConverter() default @Convert;
-
- /**
- * (Optional) The name of the data column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
-
- /**
- * (Optional) Specify the value converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the value column mapping.
- */
- Convert valueConverter() default @Convert;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="key-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="key-converter" type="xsd:string" minOccurs="0"/>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="value-converter" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:eclipselink-collection-table" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cascade-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum CascadeType { ALL, PERSIST, MERGE, REMOVE, REFRESH};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade-all" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="cascade-merge" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="cascade-remove" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="cascade-refresh" type="orm:emptyType" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="clone-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CloneCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.CloneCopyPolicy on an
- * Entity. A CloneCopyPolicy must specify at one or both of the "method"
- * or "workingCopyMethod". "workingCopyMethod" is used to clone objects
- * that will be returned to the user as they are registered in
- * EclipseLink's transactional mechanism, the UnitOfWork. "method" will
- * be used for the clone that is used for comparison in conjunction with
- * EclipseLink's DeferredChangeDetectionPolicy
- *
- * A CloneCopyPolicy should be specified on an Entity, MappedSuperclass
- * or Embeddable.
- *
- * Example:
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod", workingCopyMethod="myWorkingCopyCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(workingCopyMethodName="myWorkingCopyClone")
- */
- public @interface CloneCopyPolicy {
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified this defines
- * a method that will be used to create a clone that will be used
- * for comparison by
- * EclipseLink's DeferredChangeDetectionPolicy
- */
- String method();
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified
- * this defines a method that will be used to create a clone that
- * will be used to create the object returned when registering an
- * Object in an EclipseLink UnitOfWork
- */
- String workingCopyMethod();
-
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method" type="xsd:string"/>
- <xsd:attribute name="working-copy-method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface CollectionTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="eclipselink-collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface CollectionTable {
- /**
- * (Optional) The name of the collection table. If it is not
- * specified, it is defaulted to the concatenation of the following:
- * the name of the source entity; "_" ; the name of the relationship
- * property or field of the source entity.
- */
- String name() default "";
-
- /**
- * (Optional) The catalog of the table. It defaults to the persistence
- * unit default catalog.
- */
- String catalog() default "";
-
- /**
- * (Optional) The schema of the table. It defaults to the persistence
- * unit default schema.
- */
- String schema() default "";
-
- /**
- * (Optional) Used to specify a primary key column that is used as a
- * foreign key to join to another table. If the source entity uses a
- * composite primary key, a primary key join column must be specified
- * for each field of the composite primary key. In a single primary
- * key case, a primary key join column may optionally be specified.
- * Defaulting will apply otherwise as follows:
- * name, the same name as the primary key column of the primary table
- * of the source entity. referencedColumnName, the same name of
- * primary key column of the primary table of the source entity.
- */
- PrimaryKeyJoinColumn[] primaryKeyJoinColumns() default {};
-
- /**
- * (Optional) Unique constraints that are to be placed on the table.
- * These are only used if table generation is in effect.
- */
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Column {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="conversion-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface ConversionValue {
- /**
- * (Required) Specify the database value.
- */
- String dataValue();
-
- /**
- * (Required) Specify the object value.
- */
- String objectValue();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="data-value" type="xsd:string" use="required"/>
- <xsd:attribute name="object-value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Converter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must implement
- * the org.eclipse.persistence.mappings.converters.Converter interface.
- */
- Class converterClass();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface ColumnResult {
- String name();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CopyPolicy is used to set a
- * org.eclipse.persistence.descriptors.copying.CopyPolicy on an Entity.
- * It is required that a class that implements
- * org.eclipse.persistence.descriptors.copying.CopyPolicy be specified
- * as the argument.
- *
- * A CopyPolicy should be specified on an Entity, MappedSuperclass or
- * Embeddable.
- *
- * For instance:
- * @Entity
- * @CopyPolicy("example.MyCopyPolicy")
- */
- public @interface CopyPolicy {
-
- /*
- * (Required)
- * This defines the class of the copy policy. It must specify a class
- * that implements org.eclipse.persistence.descriptors.copying.CopyPolicy
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorColumn {
- String name() default "DTYPE";
- DiscriminatorType discriminatorType() default STRING;
- String columnDefinition() default "";
- int length() default 31;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="discriminator-type" type="orm:discriminator-type"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-class">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A DiscriminatorClass is used within a VariableOneToOne annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface DiscriminatorClass {
- /**
- * (Required) The discriminator to be stored on the database.
- */
- String discriminator();
-
- /**
- * (Required) The class to the instantiated with the given
- * discriminator.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="discriminator" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum DiscriminatorType { STRING, CHAR, INTEGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="STRING"/>
- <xsd:enumeration value="CHAR"/>
- <xsd:enumeration value="INTEGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorValue {
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="element-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ElementCollection {
- Class targetClass() default void.class;
- FetchType fetch() default LAZY;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column" minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal" type="orm:temporal" minOccurs="0"/>
- <xsd:element name="map-key-enumerated" type="orm:enumerated" minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column" minOccurs="0"/>
- <xsd:element name="map-key-join-column" type="orm:map-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="temporal" type="orm:temporal" minOccurs="0"/>
- <xsd:element name="enumerated" type="orm:enumerated" minOccurs="0"/>
- <xsd:element name="lob" type="orm:lob" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:collection-table" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-class" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embeddable">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for embeddable objects. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- in the class. If this is the case then the defaulting rules will
- be recursively applied.
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Embeddable {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Embedded {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded-id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface EmbeddedId {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-listener">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines an entity listener to be invoked at lifecycle events
- for the entities that list this listener.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist" minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-listeners">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface EntityListeners {
- Class[] value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="entity-listener" type="orm:entity-listener" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface EntityResult {
- Class entityClass();
- FieldResult[] fields() default {};
- String discriminatorColumn() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field-result" type="orm:field-result" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="entity-class" type="xsd:string" use="required"/>
- <xsd:attribute name="discriminator-column" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="enum-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum EnumType {
- ORDINAL,
- STRING
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ORDINAL"/>
- <xsd:enumeration value="STRING"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="enumerated">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Enumerated {
- EnumType value() default ORDINAL;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:enum-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum FetchType { LAZY, EAGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="LAZY"/>
- <xsd:enumeration value="EAGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="field-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface FieldResult {
- String name();
- String column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="column" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="generated-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface GeneratedValue {
- GenerationType strategy() default AUTO;
- String generator() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:generation-type"/>
- <xsd:attribute name="generator" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="generation-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum GenerationType { TABLE, SEQUENCE, IDENTITY, AUTO };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="TABLE"/>
- <xsd:enumeration value="SEQUENCE"/>
- <xsd:enumeration value="IDENTITY"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Id {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="id-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface IdClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="id-validation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The IdValidation enum determines the type value that are valid for an Id.
- * By default null is not allowed, and 0 is not allow for singleton ids of long or int type.
- * The default value is ZERO for singleton ids, and NULL for composite ids.
- * This can be set using the @PrimaryKey annotation, or ClassDescriptor API.
- *
- * @see PrimaryKey
- * @see org.eclipse.persistence.descriptors.ClassDescriptor#setIdValidation(IdValidation)
- * @author James Sutherland
- * @since EclipseLink 1.0
- */
- public enum IdValidation {
- /**
- * Only null is not allowed as an id value, 0 is allowed.
- */
- NULL,
-
- /**
- * null and 0 are not allowed, (only int and long).
- */
- ZERO,
-
- /**
- * No id validation is done.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="NULL"/>
- <xsd:enumeration value="ZERO"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="inheritance">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Inheritance {
- InheritanceType strategy() default SINGLE_TABLE;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:inheritance-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="inheritance-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum InheritanceType { SINGLE_TABLE, JOINED, TABLE_PER_CLASS };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SINGLE_TABLE"/>
- <xsd:enumeration value="JOINED"/>
- <xsd:enumeration value="TABLE_PER_CLASS"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="instantiation-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * An InstantiationCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.InstantiationCopyPolicy
- * on an Entity. InstantiationCopyPolicy is the default CopyPolicy in
- * EclipseLink and therefore this configuration option is only used to
- * override other types of copy policies
- *
- * An InstantiationCopyPolicy should be specified on an Entity,
- * MappedSuperclass or Embeddable.
- *
- * Example:
- * @Entity
- * @InstantiationCopyPolicy
- */
- public @interface InstantiationCopyPolicy {
- }
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum JoinFetchType {
- /**
- * An inner join is used to fetch the related object.
- * This does not allow for null/empty values.
- */
- INNER,
-
- /**
- * An inner join is used to fetch the related object.
- * This allows for null/empty values.
- */
- OUTER,
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="INNER"/>
- <xsd:enumeration value="OUTER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- JoinColumn[] inverseJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="inverse-join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="lob">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Lob {}
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="lock-mode-type">
- <xsd:annotation>
- <xsd:documentation>
- public enum LockModeType { READ, WRITE, OPTIMISTIC,
- OPTIMISTIC_FORCE_INCREMENT, PESSIMISTIC_READ, PESSIMISTIC_WRITE,
- PESSIMISTIC_FORCE_INCREMENT, NONE};
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="READ"/>
- <xsd:enumeration value="WRITE"/>
- <xsd:enumeration value="OPTIMISTIC"/>
- <xsd:enumeration value="OPTIMISTIC_FORCE_INCREMENT"/>
- <xsd:enumeration value="PESSIMISTIC_READ"/>
- <xsd:enumeration value="PESSIMISTIC_WRITE"/>
- <xsd:enumeration value="PESSIMISTIC_FORCE_INCREMENT"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="many-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column" minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal" type="orm:temporal" minOccurs="0"/>
- <xsd:element name="map-key-enumerated" type="orm:enumerated" minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column" minOccurs="0"/>
- <xsd:element name="map-key-join-column" type="orm:map-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="1">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="many-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by-id" type="xsd:string"/>
- <xsd:attribute name="id" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKey {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyColumn {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default false;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default false;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="mapped-superclass">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for a mapped superclass. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- If this is the case then the defaulting rules will be recursively
- applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface MappedSuperclass{}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking" minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners" minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist" minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="cacheable" type="xsd:boolean"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-native-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedNativeQuery {
- String name();
- String query();
- QueryHint[] hints() default {};
- Class resultClass() default void.class;
- String resultSetMapping() default ""; //named SqlResultSetMapping
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedQuery {
- String name();
- String query();
- QueryHint[] hints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="lock-mode" type="orm:lock-mode-type" minOccurs="0"/>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-stored-procedure-query">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A NamedStoredProcedureQuery annotation allows the definition of
- * queries that call stored procedures as named queries.
- * A NamedStoredProcedureQuery annotation may be defined on an Entity or
- * MappedSuperclass.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface NamedStoredProcedureQuery {
- /**
- * (Required) Unique name that references this stored procedure query.
- */
- String name();
-
- /**
- * (Optional) Query hints.
- */
- QueryHint[] hints() default {};
-
- /**
- * (Optional) Refers to the class of the result.
- */
- Class resultClass() default void.class;
-
- /**
- * (Optional) The name of the SQLResultMapping.
- */
- String resultSetMapping() default "";
-
- /**
- * (Required) The name of the stored procedure.
- */
- String procedureName();
-
- /**
- * (Optional) Whether the query should return a result set.
- */
- boolean returnsResultSet() default true;
-
- /**
- * (Optional) Defines arguments to the stored procedure.
- */
- StoredProcedureParameter[] parameters() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="parameter" type="orm:stored-procedure-parameter" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- <xsd:attribute name="procedure-name" type="xsd:string" use="required"/>
- <xsd:attribute name="returns-result-set" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="object-type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ObjectTypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence
- * field or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent
- * field or property.
- */
- Class objectType() default void.class;
-
- /**
- * (Required) Specify the conversion values to be used
- * with the object converter.
- */
- ConversionValue[] conversionValues();
-
- /**
- * (Optional) Specify a default object value. Used for
- * legacy data if the data value is missing.
- */
- String defaultObjectValue() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="conversion-value" type="orm:conversion-value" minOccurs="1" maxOccurs="unbounded"/>
- <xsd:element name="default-object-value" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="one-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column" minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal" type="orm:temporal" minOccurs="0"/>
- <xsd:element name="map-key-enumerated" type="orm:enumerated" minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column" minOccurs="0"/>
- <xsd:element name="map-key-join-column" type="orm:map-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="1">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="one-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- String mappedBy() default "";
- boolean orphanRemoval() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- <xsd:attribute name="mapped-by-id" type="xsd:string"/>
- <xsd:attribute name="id" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="optimistic-locking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An optimistic-locking element is used to specify the type of
- * optimistic locking EclipseLink should use when updating or deleting
- * entities. An optimistic-locking specification is supported on
- * an entity or mapped-superclass.
- *
- * It is used in conjunction with the optimistic-locking-type.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface OptimisticLocking {
- /**
- * (Optional) The type of optimistic locking policy to use.
- */
- OptimisticLockingType type() default VERSION_COLUMN;
-
- /**
- * (Optional) For an optimistic locking policy of type
- * SELECTED_COLUMNS, this annotation member becomes a (Required)
- * field.
- */
- Column[] selectedColumns() default {};
-
- /**
- * (Optional) Specify where the optimistic locking policy should
- * cascade lock. Currently only supported with VERSION_COLUMN locking.
- */
- boolean cascade() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="selected-column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="type" type="orm:optimistic-locking-type"/>
- <xsd:attribute name="cascade" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="optimistic-locking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A simple type that is used within an optimistic-locking
- * specification to specify the type of optimistic-locking that
- * EclipseLink should use when updating or deleting entities.
- */
- public enum OptimisticLockingType {
- /**
- * Using this type of locking policy compares every field in the table
- * in the WHERE clause when doing an update or a delete. If any field
- * has been changed, an optimistic locking exception will be thrown.
- */
- ALL_COLUMNS,
-
- /**
- * Using this type of locking policy compares only the changed fields
- * in the WHERE clause when doing an update. If any field has been
- * changed, an optimistic locking exception will be thrown. A delete
- * will only compare the primary key.
- */
- CHANGED_COLUMNS,
-
- /**
- * Using this type of locking compares selected fields in the WHERE
- * clause when doing an update or a delete. If any field has been
- * changed, an optimistic locking exception will be thrown. Note that
- * the fields specified must be mapped and not be primary keys.
- */
- SELECTED_COLUMNS,
-
- /**
- * Using this type of locking policy compares a single version number
- * in the where clause when doing an update. The version field must be
- * mapped and not be the primary key.
- */
- VERSION_COLUMN
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ALL_COLUMNS"/>
- <xsd:enumeration value="CHANGED_COLUMNS"/>
- <xsd:enumeration value="SELECTED_COLUMNS"/>
- <xsd:enumeration value="VERSION_COLUMN"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-by">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderBy {
- String value() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="order-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderColumn {
- String name() default "";
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="validation-mode" type="orm:order-column-validation-mode"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-column-validation-mode">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum OrderColumnValidationMode {
- NONE,
- CORRECTION,
- EXCEPTION
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="NONE"/>
- <xsd:enumeration value="CORRECTION"/>
- <xsd:enumeration value="EXCEPTION"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-load">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostLoad {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostPersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PrePersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="primary-key">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The PrimaryKey annotation allows advanced configuration of the Id.
- * A validation policy can be given that allows specifying if zero is a valid id value.
- * The set of primary key columns can also be specified precisely.
- *
- * @author James Sutherland
- * @since EclipseLink 1.1
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface PrimaryKey {
- /**
- * (Optional) Configures what id validation is done.
- * By default 0 is not a valid id value, this can be used to allow 0 id values.
- */
- IdValidation validation() default IdValidation.ZERO;
-
- /**
- * (Optional) Used to specify the primary key columns directly.
- * This can be used instead of @Id if the primary key includes a non basic field,
- * such as a foreign key, or a inheritance discriminator, embedded, or transformation mapped field.
- */
- Column[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="validation" type="orm:id-validation"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="primary-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface PrimaryKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="property">
- <xsd:annotation>
- <xsd:documentation>
-
- A user defined mapping's property.
- @Target({METHOD, FIELD, TYPE})
- @Retention(RUNTIME)
- public @interface Property {
- /**
- * Property name.
- */
- String name();
-
- /**
- * String representation of Property value,
- * converted to an instance of valueType.
- */
- String value();
-
- /**
- * Property value type.
- * The value converted to valueType by ConversionManager.
- * If specified must be a simple type that could be handled by
- * ConversionManager:
- * numerical, boolean, temporal.
- */
- Class valueType() default String.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- <xsd:attribute name="value-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="query-hint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface QueryHint {
- String name();
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="read-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * Unless the TransformationMapping is write-only, it should have a
- * ReadTransformer, it defines transformation of database column(s)
- * value(s)into attribute value.
- *
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReadTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.AttributeTransformer
- * interface. The class will be instantiated, its
- * buildAttributeValue will be used to create the value to be
- * assigned to the attribute.
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be assigned to the attribute (not assigns the value to
- * the attribute). Either transformerClass or method must be
- * specified, but not both.
- */
- String method() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="secondary-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SecondaryTable {
- String name();
- String catalog() default "";
- String schema() default "";
- PrimaryKeyJoinColumn[] pkJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="sequence-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface SequenceGenerator {
- String name();
- String sequenceName() default "";
- String catalog() default "";
- String schema() default "";
- int initialValue() default 1;
- int allocationSize() default 50;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="sequence-name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="sql-result-set-mapping">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SqlResultSetMapping {
- String name();
- EntityResult[] entities() default {};
- ColumnResult[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="entity-result" type="orm:entity-result" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="column-result" type="orm:column-result" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="stored-procedure-parameter">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A StoredProcedureParameter annotation is used within a
- * NamedStoredProcedureQuery annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface StoredProcedureParameter {
- /**
- * (Optional) The direction of the stored procedure parameter.
- */
- Direction direction() default IN;
-
- /**
- * (Optional) Stored procedure parameter name.
- */
- String name() default "";
-
- /**
- * (Required) The query parameter name.
- */
- String queryParameter();
-
- /**
- * (Optional) The type of Java class desired back from the procedure,
- * this is dependent on the type returned from the procedure.
- */
- Class type() default void.class;
-
- /**
- * (Optional) The JDBC type code, this dependent on the type returned
- * from the procedure.
- */
- int jdbcType() default -1;
-
- /**
- * (Optional) The JDBC type name, this may be required for ARRAY or
- * STRUCT types.
- */
- String jdbcTypeName() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="direction" type="orm:direction-type"/>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="query-parameter" type="xsd:string" use="required"/>
- <xsd:attribute name="type" type="xsd:string"/>
- <xsd:attribute name="jdbc-type" type="xsd:integer"/>
- <xsd:attribute name="jdbc-type-name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="struct-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface StructConverter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must
- * implement the EclipseLink interface
- * org.eclipse.persistence.mappings.converters.Converter
- */
- String converter();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="converter" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Table {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface TableGenerator {
- String name();
- String table() default "";
- String catalog() default "";
- String schema() default "";
- String pkColumnName() default "";
- String valueColumnName() default "";
- String pkColumnValue() default "";
- int initialValue() default 0;
- int allocationSize() default 50;
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="pk-column-name" type="xsd:string"/>
- <xsd:attribute name="value-column-name" type="xsd:string"/>
- <xsd:attribute name="pk-column-value" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Temporal {
- TemporalType value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:temporal-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum TemporalType {
- DATE, // java.sql.Date
- TIME, // java.sql.Time
- TIMESTAMP // java.sql.Timestamp
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="DATE"/>
- <xsd:enumeration value="TIME"/>
- <xsd:enumeration value="TIMESTAMP"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="time-of-day">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface TimeOfDay {
- /**
- * (Optional) Hour of the day.
- */
- int hour() default 0;
-
- /**
- * (Optional) Minute of the day.
- */
- int minute() default 0;
-
- /**
- * (Optional) Second of the day.
- */
- int second() default 0;
-
- /**
- * (Optional) Millisecond of the day.
- */
- int millisecond() default 0;
-
- /**
- * Internal use. Do not modify.
- */
- boolean specified() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="hour" type="xsd:integer"/>
- <xsd:attribute name="minute" type="xsd:integer"/>
- <xsd:attribute name="second" type="xsd:integer"/>
- <xsd:attribute name="millisecond" type="xsd:integer"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="transformation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Transformation is an optional annotation for
- * org.eclipse.persistence.mappings.TransformationMapping.
- * TransformationMapping allows to map an attribute to one or more
- * database columns.
- *
- * Transformation annotation is an optional part of
- * TransformationMapping definition. Unless the TransformationMapping is
- * write-only, it should have a ReadTransformer, it defines
- * transformation of database column(s) value(s)into attribute value.
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Transformation {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) The optional element is a hint as to whether the value
- * of the field or property may be null. It is disregarded
- * for primitive types, which are considered non-optional.
- */
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="read-transformer" type="orm:read-transformer"/>
- <xsd:element name="write-transformer" type="orm:write-transformer" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access" type="orm:access-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="transient">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Transient {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface TypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence field
- * or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent field
- * or property.
- */
- Class objectType() default void.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="unique-constraint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface UniqueConstraint {
- String name() default "";
- String[] columnNames();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="name" type="xsd:string" minOccurs="0"/>
- <xsd:element name="column-name" type="xsd:string" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="variable-one-to-one">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * Variable one to one mappings are used to represent a pointer
- * references between a java object and an implementer of an interface.
- * This mapping is usually represented by a single pointer (stored in an
- * instance variable) between the source and target objects. In the
- * relational database tables, these mappings are normally implemented
- * using a foreign key and a type code.
- *
- * A VariableOneToOne can be specified within an Entity,
- * MappedSuperclass and Embeddable class.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface VariableOneToOne {
- /**
- * (Optional) The interface class that is the target of the
- * association. If not specified it will be inferred from the type
- * of the object being referenced.
- */
- Class targetInterface() default void.class;
-
- /**
- * (Optional) The operations that must be cascaded to the target of
- * the association.
- */
- CascadeType[] cascade() default {};
-
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) Whether the association is optional. If set to false
- * then a non-null relationship must always exist.
- */
- boolean optional() default true;
-
- /**
- * (Optional) The discriminator column will hold the type
- * indicators. If the DiscriminatorColumn is not specified, the name
- * of the discriminator column defaults to "DTYPE" and the
- * discriminator type to STRING.
- */
- DiscriminatorColumn discriminatorColumn() default @DiscriminatorColumn;
-
- /**
- * (Optional) The list of discriminator types that can be used with
- * this VariableOneToOne. If none are specified then those entities
- * within the persistence unit that implement the target interface
- * will be added to the list of types. The discriminator type will
- * default as follows:
- * - If DiscriminatorColumn type is STRING: Entity.name()
- * - If DiscriminatorColumn type is CHAR: First letter of the
- * Entity class
- * - If DiscriminatorColumn type is INTEGER: The next integer after
- * the highest integer explicitly added.
- */
- DiscriminatorClass[] discriminatorClasses() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column" minOccurs="0"/>
- <xsd:element name="discriminator-class" type="orm:discriminator-class" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-interface" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="version">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Version {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="write-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- *
- * A single WriteTransformer may be specified directly on the method or
- * attribute. Multiple WriteTransformers should be wrapped into
- * WriteTransformers annotation. No WriteTransformers specified for
- * read-only mapping. Unless the TransformationMapping is write-only, it
- * should have a ReadTransformer, it defines transformation of database
- * column(s) value(s)into attribute value.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface WriteTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.FieldTransformer
- * interface. The class will be instantiated, its buildFieldValue
- * will be used to create the value to be written into the database
- * column. Note that for ddl generation and returning to be
- * supported the method buildFieldValue in the class should be
- * defined to return the relevant Java type, not just Object as
- * defined in the interface, for instance:
- * public Time buildFieldValue(Object instance, String fieldName, Session session).
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be written into the database column.
- * Note that for ddl generation and returning to be supported the
- * method should be defined to return a particular type, not just
- * Object, for instance:
- * public Time getStartTime().
- * The method may require a Transient annotation to avoid being
- * mapped as Basic by default.
- * Either transformerClass or method must be specified, but not both.
- */
- String method() default "";
-
- /**
- * Specify here the column into which the value should be written.
- * The only case when this could be skipped is if a single
- * WriteTransformer annotates an attribute - the attribute's name
- * will be used as a column name.
- */
- Column column() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
-</xsd:schema> \ No newline at end of file
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_0.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_0.xsd
deleted file mode 100644
index 2aa23acf3e..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_0.xsd
+++ /dev/null
@@ -1,3625 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-******************************************************************************
- Copyright (c) 1998, 2010 Oracle. All rights reserved.
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
- which accompanies this distribution.
- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
- and the Eclipse Distribution License is available at
- http://www.eclipse.org/org/documents/edl-v10.php.
-
- Contributors:
- Oracle - initial API and implementation from Oracle TopLink
- tware - update version number to 2.0
-*****************************************************************************/
--->
-
-<!-- Java Persistence API object-relational mapping file schema -->
-<xsd:schema targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:orm="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.0">
-
- <xsd:annotation>
- <xsd:documentation>
- @(#)eclipselink_orm_2_0.xsd 2.0 October 5 2008
- </xsd:documentation>
- </xsd:annotation>
- <xsd:annotation>
- <xsd:documentation><![CDATA[
-
- This is the XML Schema for the native Eclipselink XML mapping file
- The file may be named "META-INF/eclipselink-orm.xml" in the persistence
- archive or it may be named some other name which would be
- used to locate the file as resource on the classpath.
- Object/relational mapping files must indicate the object/relational
- mapping file schema by using the persistence namespace:
-
- http://www.eclipse.org/eclipselink/xsds/persistence/orm
-
- and indicate the version of the schema by using the version element as shown below:
-
- <entity-mappings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.eclipse.org/eclipselink/xsds/persistence/orm
- eclipselink_orm_2_0.xsd
- version="2.0">
- ...
- </entity-mappings>
-
- ]]></xsd:documentation>
- </xsd:annotation>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="emptyType"/>
- <xsd:simpleType name="versionType">
- <xsd:restriction base="xsd:token">
- <xsd:pattern value="[0-9]+(\.[0-9]+)*"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="access-methods">
- <xsd:annotation>
- <xsd:documentation>
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="get-method" type="xsd:string" use="required"/>
- <xsd:attribute name="set-method" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cache">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Cache annotation is used to set an
- * org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy
- * which sets objects in EclipseLink's identity maps to be invalid
- * following given rules. By default in EclipseLink, objects do not
- * expire in the cache. Several different policies are available to
- * allow objects to expire.
- *
- * @see org.eclipse.persistence.annotations.CacheType
- *
- * A Cache anotation may be defined on an Entity or MappedSuperclass.
- * In the case of inheritance, a Cache annotation should only be defined
- * on the root of the inheritance hierarchy.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Cache {
- /**
- * (Optional) The type of cache to use.
- */
- CacheType type() default SOFT_WEAK;
-
- /**
- * (Optional) The size of cache to use.
- */
- int size() default 100;
-
- /**
- * (Optional) Cached instances in the shared cache or a client
- * isolated cache.
- */
- boolean shared() default true;
-
- /**
- * (Optional) Expire cached instance after a fix period of time (ms).
- * Queries executed against the cache after this will be forced back
- * to the database for a refreshed copy
- */
- int expiry() default -1; // minus one is no expiry.
-
- /**
- * (Optional) Expire cached instance a specific time of day. Queries
- * executed against the cache after this will be forced back to the
- * database for a refreshed copy
- */
- TimeOfDay expiryTimeOfDay() default @TimeOfDay(specified=false);
-
- /**
- * (Optional) Force all queries that go to the database to always
- * refresh the cache.
- */
- boolean alwaysRefresh() default false;
-
- /**
- * (Optional) For all queries that go to the database, refresh the
- * cache only if the data received from the database by a query is
- * newer than the data in the cache (as determined by the optimistic
- * locking field)
- */
- boolean refreshOnlyIfNewer() default false;
-
- /**
- * (Optional) Setting to true will force all queries to bypass the
- * cache for hits but still resolve against the cache for identity.
- * This forces all queries to hit the database.
- */
- boolean disableHits() default false;
-
- /**
- * (Optional) The cache coordination mode.
- */
- CacheCoordinationType coordinationType() default SEND_OBJECT_CHANGES;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:choice>
- <xsd:element name="expiry" type="xsd:integer" minOccurs="0"/>
- <xsd:element name="expiry-time-of-day" type="orm:time-of-day" minOccurs="0"/>
- </xsd:choice>
- <xsd:attribute name="size" type="xsd:integer"/>
- <xsd:attribute name="shared" type="xsd:boolean"/>
- <xsd:attribute name="type" type="orm:cache-type"/>
- <xsd:attribute name="always-refresh" type="xsd:boolean"/>
- <xsd:attribute name="refresh-only-if-newer" type="xsd:boolean"/>
- <xsd:attribute name="disable-hits" type="xsd:boolean"/>
- <xsd:attribute name="coordination-type" type="orm:cache-coordination-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cache-interceptor">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface CacheInterceptor {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
- <!-- **************************************************** -->
-
-
- <xsd:simpleType name="cache-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The CacheType enum is used with the Cache annotation for a
- * persistent class. It defines the type of IdentityMap/Cache used for
- * the class. By default the SOFT_WEAK cache type is used.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheType {
- /**
- * Provides full caching and guaranteed identity. Caches all objects
- * and does not remove them.
- * WARNING: This method may be memory intensive when many objects are
- * read.
- */
- FULL,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using weak references. This method allows full garbage
- * collection and provides full caching and guaranteed identity.
- */
- WEAK,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using soft references. This method allows full garbage
- * collection when memory is low and provides full caching and
- * guaranteed identity.
- */
- SOFT,
-
- /**
- * Similar to the WEAK identity map except that it maintains a
- * most-frequently-used sub-cache. The size of the sub-cache is
- * proportional to the size of the identity map as specified by
- * descriptor's setIdentityMapSize() method. The sub-cache
- * uses soft references to ensure that these objects are
- * garbage-collected only if the system is low on memory.
- */
- SOFT_WEAK,
-
- /**
- * Identical to the soft cache weak (SOFT_WEAK) identity map except
- * that it uses hard references in the sub-cache. Use this identity
- * map if soft references do not behave properly on your platform.
- */
- HARD_WEAK,
-
- /**
- * A cache identity map maintains a fixed number of objects
- * specified by the application. Objects are removed from the cache
- * on a least-recently-used basis. This method allows object
- * identity for the most commonly used objects.
- * WARNING: Furnishes caching and identity, but does not guarantee
- * identity.
- */
- CACHE,
-
- /**
- * WARNING: Does not preserve object identity and does not cache
- * objects.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="FULL"/>
- <xsd:enumeration value="WEAK"/>
- <xsd:enumeration value="SOFT"/>
- <xsd:enumeration value="SOFT_WEAK"/>
- <xsd:enumeration value="HARD_WEAK"/>
- <xsd:enumeration value="CACHE"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-coordination-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the Cache annotation.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheCoordinationType {
- /**
- * Sends a list of changed objects including data about the changes.
- * This data is merged into the receiving cache.
- */
- SEND_OBJECT_CHANGES,
-
- /**
- * Sends a list of the identities of the objects that have changed.
- * The receiving cache invalidates the objects (rather than changing
- * any of the data)
- */
- INVALIDATE_CHANGED_OBJECTS,
-
- /**
- * Same as SEND_OBJECT_CHANGES except it also includes any newly
- * created objects from the transaction.
- */
- SEND_NEW_OBJECTS_WITH_CHANGES,
-
- /**
- * Does no cache coordination.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SEND_OBJECT_CHANGES"/>
- <xsd:enumeration value="INVALIDATE_CHANGED_OBJECTS"/>
- <xsd:enumeration value="SEND_NEW_OBJECTS_WITH_CHANGES"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="change-tracking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The ChangeTracking annotation is used to specify the
- * org.eclipse.persistence.descriptors.changetracking.ObjectChangePolicy
- * which computes changes sets for EclipseLink's UnitOfWork commit
- * process. An ObjectChangePolicy is stored on an Entity's descriptor.
- *
- * A ChangeTracking annotation may be specified on an Entity,
- * MappedSuperclass or Embeddable.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface ChangeTracking {
- /**
- * (Optional) The type of change tracking to use.
- */
- ChangeTrackingType value() default AUTO;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="type" type="orm:change-tracking-type" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="change-tracking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the ChangeTracking annotation.
- */
- public enum ChangeTrackingType {
- /**
- * An ATTRIBUTE change tracking type allows change tracking at the
- * attribute level of an object. Objects with changed attributes will
- * be processed in the commit process to include any changes in the
- * results of the commit. Unchanged objects will be ignored.
- */
- ATTRIBUTE,
-
- /**
- * An OBJECT change tracking policy allows an object to calculate for
- * itself whether it has changed. Changed objects will be processed in
- * the commit process to include any changes in the results of the
- * commit. Unchanged objects will be ignored.
- */
- OBJECT,
-
- /**
- * A DEFERRED change tracking policy defers all change detection to
- * the UnitOfWork's change detection process. Essentially, the
- * calculateChanges() method will run for all objects in a UnitOfWork.
- * This is the default ObjectChangePolicy
- */
- DEFERRED,
-
- /**
- * Will not set any change tracking policy.
- */
- AUTO
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ATTRIBUTE"/>
- <xsd:enumeration value="OBJECT"/>
- <xsd:enumeration value="DEFERRED"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="customizer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Customizer annotation is used to specify a class that implements
- * the org.eclipse.persistence.config.DescriptorCustomizer
- * interface and is to run against an enetity's class descriptor after all
- * metadata processing has been completed.
- *
- * The Customizer annotation may be defined on an Entity, MappedSuperclass
- * or Embeddable class. In the case of inheritance, a Customizer is not
- * inherited from its parent classes.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Customizer {
- /**
- * (Required) Defines the name of the descriptor customizer class that
- * should be applied for the related entity or embeddable class.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="direction-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the StoredProcedureParameter annotation.
- * It is used to specify the direction of the stored procedure
- * parameters of a named stored procedure query.
- */
- public enum Direction {
- /**
- * Input parameter
- */
- IN,
-
- /**
- * Output parameter
- */
- OUT,
-
- /**
- * Input and output parameter
- */
- IN_OUT,
-
- /**
- * Output cursor
- */
- OUT_CURSOR
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="IN"/>
- <xsd:enumeration value="OUT"/>
- <xsd:enumeration value="IN_OUT"/>
- <xsd:enumeration value="OUT_CURSOR"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:element name="entity-mappings">
- <xsd:complexType>
- <xsd:annotation>
- <xsd:documentation>
-
- The entity-mappings element is the root element of an mapping
- file. It contains the following four types of elements:
-
- 1. The persistence-unit-metadata element contains metadata
- for the entire persistence unit. It is undefined if this element
- occurs in multiple mapping files within the same persistence unit.
-
- 2. The package, schema, catalog and access elements apply to all of
- the entity, mapped-superclass and embeddable elements defined in
- the same file in which they occur.
-
- 3. The sequence-generator, table-generator, named-query,
- named-native-query and sql-result-set-mapping elements are global
- to the persistence unit. It is undefined to have more than one
- sequence-generator or table-generator of the same name in the same
- or different mapping files in a persistence unit. It is also
- undefined to have more than one named-query, named-native-query, or
- result-set-mapping of the same name in the same or different mapping
- files in a persistence unit.
-
- 4. The entity, mapped-superclass and embeddable elements each define
- the mapping information for a managed persistent class. The mapping
- information contained in these elements may be complete or it may
- be partial.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="persistence-unit-metadata" type="orm:persistence-unit-metadata" minOccurs="0"/>
- <xsd:element name="package" type="xsd:string" minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string" minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string" minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-query" type="orm:named-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping" type="orm:sql-result-set-mapping" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="mapped-superclass" type="orm:mapped-superclass" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="entity" type="orm:entity" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embeddable" type="orm:embeddable" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="version" type="orm:versionType" fixed="2.0" use="required"/>
- </xsd:complexType>
- </xsd:element>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="existence-type">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * The ExistenceChecking annotation is used to specify the type of
- * checking EclipseLink should use when updating entities.
- *
- * An existence-checking specification is supported on an Entity or
- * MappedSuperclass annotation.
- */
- public @interface ExistenceChecking {
-
- /**
- * (Optional) Set the existence check for determining
- * if an insert or update should occur for an object.
- */
- ExistenceType value() default CHECK_CACHE;
- }
-
- /**
- * Assume that if the objects primary key does not include null and
- * it is in the cache, then it must exist.
- */
- CHECK_CACHE,
-
- /**
- * Perform does exist check on the database.
- */
- CHECK_DATABASE,
-
- /**
- * Assume that if the objects primary key does not include null then
- * it must exist. This may be used if the application guarantees or
- * does not care about the existence check.
- */
- ASSUME_EXISTENCE,
-
- /**
- * Assume that the object does not exist. This may be used if the
- * application guarantees or does not care about the existence check.
- * This will always force an insert to be called.
- */
- ASSUME_NON_EXISTENCE
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="CHECK_CACHE"/>
- <xsd:enumeration value="CHECK_DATABASE"/>
- <xsd:enumeration value="ASSUME_EXISTENCE"/>
- <xsd:enumeration value="ASSUME_NON_EXISTENCE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-metadata">
- <xsd:annotation>
- <xsd:documentation>
-
- Metadata that applies to the persistence unit and not just to
- the mapping file in which it is contained.
-
- If the xml-mapping-metadata-complete element is specified,
- the complete set of mapping metadata for the persistence unit
- is contained in the XML mapping files for the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="xml-mapping-metadata-complete" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="exclude-default-mappings" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="persistence-unit-defaults" type="orm:persistence-unit-defaults" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-defaults">
- <xsd:annotation>
- <xsd:documentation>
-
- These defaults are applied to the persistence unit as a whole
- unless they are overridden by local annotation or XML
- element settings.
-
- schema - Used as the schema for all tables, secondary tables,
- collection tables, sequence generators, and table generators
- that apply to the persistence unit
- catalog - Used as the catalog for all tables, secondary tables,
- collection tables, sequence generators, and table generators
- that apply to the persistence unit
- access - Used as the access type for all managed classes in
- the persistence unit
- cascade-persist - Adds cascade-persist to the set of cascade options
- in all entity relationships of the persistence unit
- entity-listeners - List of default entity listeners to be invoked
- on each entity in the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string" minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string" minOccurs="0"/>
- <xsd:element name="delimited-identifiers" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type" minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for an entity. Is allowed to be
- sparsely populated and used in conjunction with the annotations.
- Alternatively, the metadata-complete attribute can be used to
- indicate that no annotations on the entity class (and its fields
- or properties) are to be processed. If this is the case then
- the defaulting rules for the entity and its sub-elements will
- be recursively applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface Entity {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="table" type="orm:table" minOccurs="0"/>
- <xsd:element name="secondary-table" type="orm:secondary-table" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="inheritance" type="orm:inheritance" minOccurs="0"/>
- <xsd:element name="discriminator-value" type="orm:discriminator-value" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column" minOccurs="0"/>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking" minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="cache-interceptor" type="orm:cache-interceptor" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="named-query" type="orm:named-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping" type="orm:sql-result-set-mapping" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="query-redirectors" type="orm:query-redirectors" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners" minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist" minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="cacheable" type="xsd:boolean"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="access-type">
- <xsd:annotation>
- <xsd:documentation>
-
- This element determines how the persistence provider accesses the
- state of an entity or embedded object.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="PROPERTY"/>
- <xsd:enumeration value="FIELD"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="association-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AssociationOverride {
- String name();
- JoinColumn[] joinColumns() default{};
- JoinTable joinTable() default @JoinTable;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="attribute-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AttributeOverride {
- String name();
- Column column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="attributes">
- <xsd:annotation>
- <xsd:documentation>
-
- This element contains the entity field or property mappings.
- It may be sparsely populated to include only a subset of the
- fields or properties. If metadata-complete for the entity is true
- then the remainder of the attributes will be defaulted according
- to the default rules.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="id" type="orm:id" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded-id" type="orm:embedded-id" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="basic" type="orm:basic" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-collection" type="orm:basic-collection" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-map" type="orm:basic-map" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="version" type="orm:version" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-one" type="orm:many-to-one" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-many" type="orm:one-to-many" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-one" type="orm:one-to-one" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="variable-one-to-one" type="orm:variable-one-to-one" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-many" type="orm:many-to-many" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="element-collection" type="orm:element-collection" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded" type="orm:embedded" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transformation" type="orm:transformation" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transient" type="orm:transient" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Basic {
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="lob" type="orm:lob"/>
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="enumerated" type="orm:enumerated"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicCollection {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the value column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:eclipselink-collection-table" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-map">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicMap {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the data column that holds the direct map
- * key. If the name on te key column is "", the name will default to:
- * the name of the property or field; "_KEY".
- */
- Column keyColumn() default @Column;
-
- /**
- * (Optional) Specify the key converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the direct map key.
- */
- Convert keyConverter() default @Convert;
-
- /**
- * (Optional) The name of the data column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
-
- /**
- * (Optional) Specify the value converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the value column mapping.
- */
- Convert valueConverter() default @Convert;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="key-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="key-converter" type="xsd:string" minOccurs="0"/>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="value-converter" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:eclipselink-collection-table" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cascade-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum CascadeType { ALL, PERSIST, MERGE, REMOVE, REFRESH};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade-all" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="cascade-merge" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="cascade-remove" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="cascade-refresh" type="orm:emptyType" minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="clone-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CloneCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.CloneCopyPolicy on an
- * Entity. A CloneCopyPolicy must specify at one or both of the "method"
- * or "workingCopyMethod". "workingCopyMethod" is used to clone objects
- * that will be returned to the user as they are registered in
- * EclipseLink's transactional mechanism, the UnitOfWork. "method" will
- * be used for the clone that is used for comparison in conjunction with
- * EclipseLink's DeferredChangeDetectionPolicy
- *
- * A CloneCopyPolicy should be specified on an Entity, MappedSuperclass
- * or Embeddable.
- *
- * Example:
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod", workingCopyMethod="myWorkingCopyCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(workingCopyMethodName="myWorkingCopyClone")
- */
- public @interface CloneCopyPolicy {
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified this defines
- * a method that will be used to create a clone that will be used
- * for comparison by
- * EclipseLink's DeferredChangeDetectionPolicy
- */
- String method();
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified
- * this defines a method that will be used to create a clone that
- * will be used to create the object returned when registering an
- * Object in an EclipseLink UnitOfWork
- */
- String workingCopyMethod();
-
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method" type="xsd:string"/>
- <xsd:attribute name="working-copy-method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface CollectionTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="eclipselink-collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface CollectionTable {
- /**
- * (Optional) The name of the collection table. If it is not
- * specified, it is defaulted to the concatenation of the following:
- * the name of the source entity; "_" ; the name of the relationship
- * property or field of the source entity.
- */
- String name() default "";
-
- /**
- * (Optional) The catalog of the table. It defaults to the persistence
- * unit default catalog.
- */
- String catalog() default "";
-
- /**
- * (Optional) The schema of the table. It defaults to the persistence
- * unit default schema.
- */
- String schema() default "";
-
- /**
- * (Optional) Used to specify a primary key column that is used as a
- * foreign key to join to another table. If the source entity uses a
- * composite primary key, a primary key join column must be specified
- * for each field of the composite primary key. In a single primary
- * key case, a primary key join column may optionally be specified.
- * Defaulting will apply otherwise as follows:
- * name, the same name as the primary key column of the primary table
- * of the source entity. referencedColumnName, the same name of
- * primary key column of the primary table of the source entity.
- */
- PrimaryKeyJoinColumn[] primaryKeyJoinColumns() default {};
-
- /**
- * (Optional) Unique constraints that are to be placed on the table.
- * These are only used if table generation is in effect.
- */
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Column {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="conversion-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface ConversionValue {
- /**
- * (Required) Specify the database value.
- */
- String dataValue();
-
- /**
- * (Required) Specify the object value.
- */
- String objectValue();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="data-value" type="xsd:string" use="required"/>
- <xsd:attribute name="object-value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Converter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must implement
- * the org.eclipse.persistence.mappings.converters.Converter interface.
- */
- Class converterClass();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface ColumnResult {
- String name();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CopyPolicy is used to set a
- * org.eclipse.persistence.descriptors.copying.CopyPolicy on an Entity.
- * It is required that a class that implements
- * org.eclipse.persistence.descriptors.copying.CopyPolicy be specified
- * as the argument.
- *
- * A CopyPolicy should be specified on an Entity, MappedSuperclass or
- * Embeddable.
- *
- * For instance:
- * @Entity
- * @CopyPolicy("example.MyCopyPolicy")
- */
- public @interface CopyPolicy {
-
- /*
- * (Required)
- * This defines the class of the copy policy. It must specify a class
- * that implements org.eclipse.persistence.descriptors.copying.CopyPolicy
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorColumn {
- String name() default "DTYPE";
- DiscriminatorType discriminatorType() default STRING;
- String columnDefinition() default "";
- int length() default 31;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="discriminator-type" type="orm:discriminator-type"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-class">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A DiscriminatorClass is used within a VariableOneToOne annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface DiscriminatorClass {
- /**
- * (Required) The discriminator to be stored on the database.
- */
- String discriminator();
-
- /**
- * (Required) The class to the instantiated with the given
- * discriminator.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="discriminator" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum DiscriminatorType { STRING, CHAR, INTEGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="STRING"/>
- <xsd:enumeration value="CHAR"/>
- <xsd:enumeration value="INTEGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorValue {
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="element-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ElementCollection {
- Class targetClass() default void.class;
- FetchType fetch() default LAZY;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column" minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal" type="orm:temporal" minOccurs="0"/>
- <xsd:element name="map-key-enumerated" type="orm:enumerated" minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column" minOccurs="0"/>
- <xsd:element name="map-key-join-column" type="orm:map-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="temporal" type="orm:temporal" minOccurs="0"/>
- <xsd:element name="enumerated" type="orm:enumerated" minOccurs="0"/>
- <xsd:element name="lob" type="orm:lob" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:collection-table" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-class" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embeddable">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for embeddable objects. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- in the class. If this is the case then the defaulting rules will
- be recursively applied.
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Embeddable {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Embedded {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded-id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface EmbeddedId {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-listener">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines an entity listener to be invoked at lifecycle events
- for the entities that list this listener.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist" minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-listeners">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface EntityListeners {
- Class[] value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="entity-listener" type="orm:entity-listener" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface EntityResult {
- Class entityClass();
- FieldResult[] fields() default {};
- String discriminatorColumn() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field-result" type="orm:field-result" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="entity-class" type="xsd:string" use="required"/>
- <xsd:attribute name="discriminator-column" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="enum-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum EnumType {
- ORDINAL,
- STRING
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ORDINAL"/>
- <xsd:enumeration value="STRING"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="enumerated">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Enumerated {
- EnumType value() default ORDINAL;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:enum-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum FetchType { LAZY, EAGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="LAZY"/>
- <xsd:enumeration value="EAGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="field-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface FieldResult {
- String name();
- String column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="column" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="generated-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface GeneratedValue {
- GenerationType strategy() default AUTO;
- String generator() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:generation-type"/>
- <xsd:attribute name="generator" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="generation-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum GenerationType { TABLE, SEQUENCE, IDENTITY, AUTO };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="TABLE"/>
- <xsd:enumeration value="SEQUENCE"/>
- <xsd:enumeration value="IDENTITY"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Id {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="id-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface IdClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="id-validation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The IdValidation enum determines the type value that are valid for an Id.
- * By default null is not allowed, and 0 is not allow for singleton ids of long or int type.
- * The default value is ZERO for singleton ids, and NULL for composite ids.
- * This can be set using the @PrimaryKey annotation, or ClassDescriptor API.
- *
- * @see PrimaryKey
- * @see org.eclipse.persistence.descriptors.ClassDescriptor#setIdValidation(IdValidation)
- * @author James Sutherland
- * @since EclipseLink 1.0
- */
- public enum IdValidation {
- /**
- * Only null is not allowed as an id value, 0 is allowed.
- */
- NULL,
-
- /**
- * null and 0 are not allowed, (only int and long).
- */
- ZERO,
-
- /**
- * No id validation is done.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="NULL"/>
- <xsd:enumeration value="ZERO"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="inheritance">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Inheritance {
- InheritanceType strategy() default SINGLE_TABLE;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:inheritance-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="inheritance-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum InheritanceType { SINGLE_TABLE, JOINED, TABLE_PER_CLASS };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SINGLE_TABLE"/>
- <xsd:enumeration value="JOINED"/>
- <xsd:enumeration value="TABLE_PER_CLASS"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="instantiation-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * An InstantiationCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.InstantiationCopyPolicy
- * on an Entity. InstantiationCopyPolicy is the default CopyPolicy in
- * EclipseLink and therefore this configuration option is only used to
- * override other types of copy policies
- *
- * An InstantiationCopyPolicy should be specified on an Entity,
- * MappedSuperclass or Embeddable.
- *
- * Example:
- * @Entity
- * @InstantiationCopyPolicy
- */
- public @interface InstantiationCopyPolicy {
- }
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum JoinFetchType {
- /**
- * An inner join is used to fetch the related object.
- * This does not allow for null/empty values.
- */
- INNER,
-
- /**
- * An inner join is used to fetch the related object.
- * This allows for null/empty values.
- */
- OUTER,
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="INNER"/>
- <xsd:enumeration value="OUTER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- JoinColumn[] inverseJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="inverse-join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="lob">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Lob {}
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="lock-mode-type">
- <xsd:annotation>
- <xsd:documentation>
- public enum LockModeType { READ, WRITE, OPTIMISTIC,
- OPTIMISTIC_FORCE_INCREMENT, PESSIMISTIC_READ, PESSIMISTIC_WRITE,
- PESSIMISTIC_FORCE_INCREMENT, NONE};
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="READ"/>
- <xsd:enumeration value="WRITE"/>
- <xsd:enumeration value="OPTIMISTIC"/>
- <xsd:enumeration value="OPTIMISTIC_FORCE_INCREMENT"/>
- <xsd:enumeration value="PESSIMISTIC_READ"/>
- <xsd:enumeration value="PESSIMISTIC_WRITE"/>
- <xsd:enumeration value="PESSIMISTIC_FORCE_INCREMENT"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="many-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column" minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal" type="orm:temporal" minOccurs="0"/>
- <xsd:element name="map-key-enumerated" type="orm:enumerated" minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column" minOccurs="0"/>
- <xsd:element name="map-key-join-column" type="orm:map-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="1">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="many-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="maps-id" type="xsd:string"/>
- <xsd:attribute name="id" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKey {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyColumn {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default false;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default false;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="mapped-superclass">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for a mapped superclass. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- If this is the case then the defaulting rules will be recursively
- applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface MappedSuperclass{}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking" minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="cache-interceptor" type="orm:cache-interceptor" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners" minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist" minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="cacheable" type="xsd:boolean"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-native-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedNativeQuery {
- String name();
- String query();
- QueryHint[] hints() default {};
- Class resultClass() default void.class;
- String resultSetMapping() default ""; //named SqlResultSetMapping
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedQuery {
- String name();
- String query();
- QueryHint[] hints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="lock-mode" type="orm:lock-mode-type" minOccurs="0"/>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-stored-procedure-query">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A NamedStoredProcedureQuery annotation allows the definition of
- * queries that call stored procedures as named queries.
- * A NamedStoredProcedureQuery annotation may be defined on an Entity or
- * MappedSuperclass.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface NamedStoredProcedureQuery {
- /**
- * (Required) Unique name that references this stored procedure query.
- */
- String name();
-
- /**
- * (Optional) Query hints.
- */
- QueryHint[] hints() default {};
-
- /**
- * (Optional) Refers to the class of the result.
- */
- Class resultClass() default void.class;
-
- /**
- * (Optional) The name of the SQLResultMapping.
- */
- String resultSetMapping() default "";
-
- /**
- * (Required) The name of the stored procedure.
- */
- String procedureName();
-
- /**
- * (Optional) Whether the query should return a result set.
- */
- boolean returnsResultSet() default true;
-
- /**
- * (Optional) Defines arguments to the stored procedure.
- */
- StoredProcedureParameter[] parameters() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="parameter" type="orm:stored-procedure-parameter" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- <xsd:attribute name="procedure-name" type="xsd:string" use="required"/>
- <xsd:attribute name="returns-result-set" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="object-type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ObjectTypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence
- * field or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent
- * field or property.
- */
- Class objectType() default void.class;
-
- /**
- * (Required) Specify the conversion values to be used
- * with the object converter.
- */
- ConversionValue[] conversionValues();
-
- /**
- * (Optional) Specify a default object value. Used for
- * legacy data if the data value is missing.
- */
- String defaultObjectValue() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="conversion-value" type="orm:conversion-value" minOccurs="1" maxOccurs="unbounded"/>
- <xsd:element name="default-object-value" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="one-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by" minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column" minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key" minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal" type="orm:temporal" minOccurs="0"/>
- <xsd:element name="map-key-enumerated" type="orm:enumerated" minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column" minOccurs="0"/>
- <xsd:element name="map-key-join-column" type="orm:map-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="1">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="one-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- String mappedBy() default "";
- boolean orphanRemoval() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- <xsd:attribute name="maps-id" type="xsd:string"/>
- <xsd:attribute name="id" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="optimistic-locking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An optimistic-locking element is used to specify the type of
- * optimistic locking EclipseLink should use when updating or deleting
- * entities. An optimistic-locking specification is supported on
- * an entity or mapped-superclass.
- *
- * It is used in conjunction with the optimistic-locking-type.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface OptimisticLocking {
- /**
- * (Optional) The type of optimistic locking policy to use.
- */
- OptimisticLockingType type() default VERSION_COLUMN;
-
- /**
- * (Optional) For an optimistic locking policy of type
- * SELECTED_COLUMNS, this annotation member becomes a (Required)
- * field.
- */
- Column[] selectedColumns() default {};
-
- /**
- * (Optional) Specify where the optimistic locking policy should
- * cascade lock. Currently only supported with VERSION_COLUMN locking.
- */
- boolean cascade() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="selected-column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="type" type="orm:optimistic-locking-type"/>
- <xsd:attribute name="cascade" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="optimistic-locking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A simple type that is used within an optimistic-locking
- * specification to specify the type of optimistic-locking that
- * EclipseLink should use when updating or deleting entities.
- */
- public enum OptimisticLockingType {
- /**
- * Using this type of locking policy compares every field in the table
- * in the WHERE clause when doing an update or a delete. If any field
- * has been changed, an optimistic locking exception will be thrown.
- */
- ALL_COLUMNS,
-
- /**
- * Using this type of locking policy compares only the changed fields
- * in the WHERE clause when doing an update. If any field has been
- * changed, an optimistic locking exception will be thrown. A delete
- * will only compare the primary key.
- */
- CHANGED_COLUMNS,
-
- /**
- * Using this type of locking compares selected fields in the WHERE
- * clause when doing an update or a delete. If any field has been
- * changed, an optimistic locking exception will be thrown. Note that
- * the fields specified must be mapped and not be primary keys.
- */
- SELECTED_COLUMNS,
-
- /**
- * Using this type of locking policy compares a single version number
- * in the where clause when doing an update. The version field must be
- * mapped and not be the primary key.
- */
- VERSION_COLUMN
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ALL_COLUMNS"/>
- <xsd:enumeration value="CHANGED_COLUMNS"/>
- <xsd:enumeration value="SELECTED_COLUMNS"/>
- <xsd:enumeration value="VERSION_COLUMN"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-by">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderBy {
- String value() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="order-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderColumn {
- String name() default "";
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="correction-type" type="orm:order-column-correction-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-column-correction-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum OrderCorrectionType {
- READ,
- READ_WRITE,
- EXCEPTION
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="READ"/>
- <xsd:enumeration value="READ_WRITE"/>
- <xsd:enumeration value="EXCEPTION"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-load">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostLoad {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostPersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PrePersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="primary-key">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The PrimaryKey annotation allows advanced configuration of the Id.
- * A validation policy can be given that allows specifying if zero is a valid id value.
- * The set of primary key columns can also be specified precisely.
- *
- * @author James Sutherland
- * @since EclipseLink 1.1
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface PrimaryKey {
- /**
- * (Optional) Configures what id validation is done.
- * By default 0 is not a valid id value, this can be used to allow 0 id values.
- */
- IdValidation validation() default IdValidation.ZERO;
-
- /**
- * (Optional) Used to specify the primary key columns directly.
- * This can be used instead of @Id if the primary key includes a non basic field,
- * such as a foreign key, or a inheritance discriminator, embedded, or transformation mapped field.
- */
- Column[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="validation" type="orm:id-validation"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="primary-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface PrimaryKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="property">
- <xsd:annotation>
- <xsd:documentation>
-
- A user defined mapping's property.
- @Target({METHOD, FIELD, TYPE})
- @Retention(RUNTIME)
- public @interface Property {
- /**
- * Property name.
- */
- String name();
-
- /**
- * String representation of Property value,
- * converted to an instance of valueType.
- */
- String value();
-
- /**
- * Property value type.
- * The value converted to valueType by ConversionManager.
- * If specified must be a simple type that could be handled by
- * ConversionManager:
- * numerical, boolean, temporal.
- */
- Class valueType() default String.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- <xsd:attribute name="value-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="query-hint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface QueryHint {
- String name();
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="query-redirectors">
- <xsd:annotation>
- <xsd:documentation>
-
-@Target({TYPE}) @Retention(RUNTIME)
-public @interface QueryRedirectors {
-
- /**
- * This AllQueries Query Redirector will be applied to any executing object query
- * that does not have a more precise redirector (like the
- * ReadObjectQuery Redirector) or a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- *
- */
- Class allQueries() default void.class;
-
- /**
- * A Default ReadAll Query Redirector will be applied to any executing
- * ReadAllQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query through the getResultList() API this is the redirector that will be invoked
- */
- Class readAll() default void.class;
-
- /**
- * A Default ReadObject Query Redirector will be applied to any executing
- * ReadObjectQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query through the getSingleResult() API or EntityManager.find() this is the redirector that will be invoked
- */
- Class readObject() default void.class;
-
- /**
- * A Default ReportQuery Redirector will be applied to any executing
- * ReportQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query that contains agregate functions or selects multiple entities this is the redirector that will be invoked
- */
- Class report() default void.class;
-
- /**
- * A Default Update Query Redirector will be applied to any executing
- * UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.
- * In EclipseLink an UpdateObjectQuery is executed whenever flushing changes to the datasource.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class update() default void.class;
-
- /**
- * A Default Insert Query Redirector will be applied to any executing
- * InsertObjectQuery that does not have a redirector set directly on the query.
- * In EclipseLink an InsertObjectQuery is executed when persisting an object to the datasource.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class insert() default void.class;
-
- /**
- * A Default Delete Object Query Redirector will be applied to any executing
- * DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class delete() default void.class;
-
-}
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="all-queries" type="xsd:string"/>
- <xsd:attribute name="read-all" type="xsd:string"/>
- <xsd:attribute name="read-object" type="xsd:string"/>
- <xsd:attribute name="report" type="xsd:string"/>
- <xsd:attribute name="update" type="xsd:string"/>
- <xsd:attribute name="insert" type="xsd:string"/>
- <xsd:attribute name="delete" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="read-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * Unless the TransformationMapping is write-only, it should have a
- * ReadTransformer, it defines transformation of database column(s)
- * value(s)into attribute value.
- *
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReadTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.AttributeTransformer
- * interface. The class will be instantiated, its
- * buildAttributeValue will be used to create the value to be
- * assigned to the attribute.
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be assigned to the attribute (not assigns the value to
- * the attribute). Either transformerClass or method must be
- * specified, but not both.
- */
- String method() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="secondary-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SecondaryTable {
- String name();
- String catalog() default "";
- String schema() default "";
- PrimaryKeyJoinColumn[] pkJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="sequence-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface SequenceGenerator {
- String name();
- String sequenceName() default "";
- String catalog() default "";
- String schema() default "";
- int initialValue() default 1;
- int allocationSize() default 50;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="sequence-name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="sql-result-set-mapping">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SqlResultSetMapping {
- String name();
- EntityResult[] entities() default {};
- ColumnResult[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="entity-result" type="orm:entity-result" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="column-result" type="orm:column-result" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="stored-procedure-parameter">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A StoredProcedureParameter annotation is used within a
- * NamedStoredProcedureQuery annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface StoredProcedureParameter {
- /**
- * (Optional) The direction of the stored procedure parameter.
- */
- Direction direction() default IN;
-
- /**
- * (Optional) Stored procedure parameter name.
- */
- String name() default "";
-
- /**
- * (Required) The query parameter name.
- */
- String queryParameter();
-
- /**
- * (Optional) The type of Java class desired back from the procedure,
- * this is dependent on the type returned from the procedure.
- */
- Class type() default void.class;
-
- /**
- * (Optional) The JDBC type code, this dependent on the type returned
- * from the procedure.
- */
- int jdbcType() default -1;
-
- /**
- * (Optional) The JDBC type name, this may be required for ARRAY or
- * STRUCT types.
- */
- String jdbcTypeName() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="direction" type="orm:direction-type"/>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="query-parameter" type="xsd:string" use="required"/>
- <xsd:attribute name="type" type="xsd:string"/>
- <xsd:attribute name="jdbc-type" type="xsd:integer"/>
- <xsd:attribute name="jdbc-type-name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="struct-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface StructConverter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must
- * implement the EclipseLink interface
- * org.eclipse.persistence.mappings.converters.Converter
- */
- String converter();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="converter" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Table {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface TableGenerator {
- String name();
- String table() default "";
- String catalog() default "";
- String schema() default "";
- String pkColumnName() default "";
- String valueColumnName() default "";
- String pkColumnValue() default "";
- int initialValue() default 0;
- int allocationSize() default 50;
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="pk-column-name" type="xsd:string"/>
- <xsd:attribute name="value-column-name" type="xsd:string"/>
- <xsd:attribute name="pk-column-value" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Temporal {
- TemporalType value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:temporal-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum TemporalType {
- DATE, // java.sql.Date
- TIME, // java.sql.Time
- TIMESTAMP // java.sql.Timestamp
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="DATE"/>
- <xsd:enumeration value="TIME"/>
- <xsd:enumeration value="TIMESTAMP"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="time-of-day">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface TimeOfDay {
- /**
- * (Optional) Hour of the day.
- */
- int hour() default 0;
-
- /**
- * (Optional) Minute of the day.
- */
- int minute() default 0;
-
- /**
- * (Optional) Second of the day.
- */
- int second() default 0;
-
- /**
- * (Optional) Millisecond of the day.
- */
- int millisecond() default 0;
-
- /**
- * Internal use. Do not modify.
- */
- boolean specified() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="hour" type="xsd:integer"/>
- <xsd:attribute name="minute" type="xsd:integer"/>
- <xsd:attribute name="second" type="xsd:integer"/>
- <xsd:attribute name="millisecond" type="xsd:integer"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="transformation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Transformation is an optional annotation for
- * org.eclipse.persistence.mappings.TransformationMapping.
- * TransformationMapping allows to map an attribute to one or more
- * database columns.
- *
- * Transformation annotation is an optional part of
- * TransformationMapping definition. Unless the TransformationMapping is
- * write-only, it should have a ReadTransformer, it defines
- * transformation of database column(s) value(s)into attribute value.
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Transformation {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) The optional element is a hint as to whether the value
- * of the field or property may be null. It is disregarded
- * for primitive types, which are considered non-optional.
- */
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="read-transformer" type="orm:read-transformer"/>
- <xsd:element name="write-transformer" type="orm:write-transformer" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access" type="orm:access-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="transient">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Transient {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface TypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence field
- * or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent field
- * or property.
- */
- Class objectType() default void.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="unique-constraint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface UniqueConstraint {
- String name() default "";
- String[] columnNames();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column-name" type="xsd:string" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="variable-one-to-one">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * Variable one to one mappings are used to represent a pointer
- * references between a java object and an implementer of an interface.
- * This mapping is usually represented by a single pointer (stored in an
- * instance variable) between the source and target objects. In the
- * relational database tables, these mappings are normally implemented
- * using a foreign key and a type code.
- *
- * A VariableOneToOne can be specified within an Entity,
- * MappedSuperclass and Embeddable class.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface VariableOneToOne {
- /**
- * (Optional) The interface class that is the target of the
- * association. If not specified it will be inferred from the type
- * of the object being referenced.
- */
- Class targetInterface() default void.class;
-
- /**
- * (Optional) The operations that must be cascaded to the target of
- * the association.
- */
- CascadeType[] cascade() default {};
-
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) Whether the association is optional. If set to false
- * then a non-null relationship must always exist.
- */
- boolean optional() default true;
-
- /**
- * (Optional) The discriminator column will hold the type
- * indicators. If the DiscriminatorColumn is not specified, the name
- * of the discriminator column defaults to "DTYPE" and the
- * discriminator type to STRING.
- */
- DiscriminatorColumn discriminatorColumn() default @DiscriminatorColumn;
-
- /**
- * (Optional) The list of discriminator types that can be used with
- * this VariableOneToOne. If none are specified then those entities
- * within the persistence unit that implement the target interface
- * will be added to the list of types. The discriminator type will
- * default as follows:
- * - If DiscriminatorColumn type is STRING: Entity.name()
- * - If DiscriminatorColumn type is CHAR: First letter of the
- * Entity class
- * - If DiscriminatorColumn type is INTEGER: The next integer after
- * the highest integer explicitly added.
- */
- DiscriminatorClass[] discriminatorClasses() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column" minOccurs="0"/>
- <xsd:element name="discriminator-class" type="orm:discriminator-class" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-interface" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="version">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Version {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="write-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- *
- * A single WriteTransformer may be specified directly on the method or
- * attribute. Multiple WriteTransformers should be wrapped into
- * WriteTransformers annotation. No WriteTransformers specified for
- * read-only mapping. Unless the TransformationMapping is write-only, it
- * should have a ReadTransformer, it defines transformation of database
- * column(s) value(s)into attribute value.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface WriteTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.FieldTransformer
- * interface. The class will be instantiated, its buildFieldValue
- * will be used to create the value to be written into the database
- * column. Note that for ddl generation and returning to be
- * supported the method buildFieldValue in the class should be
- * defined to return the relevant Java type, not just Object as
- * defined in the interface, for instance:
- * public Time buildFieldValue(Object instance, String fieldName, Session session).
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be written into the database column.
- * Note that for ddl generation and returning to be supported the
- * method should be defined to return a particular type, not just
- * Object, for instance:
- * public Time getStartTime().
- * The method may require a Transient annotation to avoid being
- * mapped as Basic by default.
- * Either transformerClass or method must be specified, but not both.
- */
- String method() default "";
-
- /**
- * Specify here the column into which the value should be written.
- * The only case when this could be skipped is if a single
- * WriteTransformer annotates an attribute - the attribute's name
- * will be used as a column name.
- */
- Column column() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
-</xsd:schema>
-
-
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_1.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_1.xsd
deleted file mode 100644
index 5e3ce57249..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_1.xsd
+++ /dev/null
@@ -1,4108 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ************************************************************************************************************************** -->
-<!-- Copyright (c) 1998, 2010 Oracle. All rights reserved. -->
-<!-- This program and the accompanying materials are made available under the -->
-<!-- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0 -->
-<!-- which accompanies this distribution. -->
-<!-- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html -->
-<!-- and the Eclipse Distribution License is available at -->
-<!-- http://www.eclipse.org/org/documents/edl-v10.php. -->
-<!-- -->
-<!-- Contributors: -->
-<!-- Oracle - initial API and implementation from Oracle TopLink -->
-<!-- tware - update version number to 2.0 -->
-<!-- 12/2/2009-2.1 Guy Pelletier -->
-<!-- - 296289: Add current annotation metadata support on mapped superclasses to EclipseLink-ORM.XML Schema -->
-<!-- - 296612: Add current annotation only metadata support of return insert/update to the EclipseLink-ORM.XML Schema -->
-<!-- - formatted to match orm_2_0.xsd so that users can easily compare the two schemas -->
-<!-- 5/4/2010-2.1 Guy Pelletier -->
-<!-- - 227219: Expand EclipseLink-ORM.XML schema functionality for 2.1 release (update version to 2.1) -->
-<!-- ************************************************************************************************************************** -->
-
-<!-- Java Persistence API object-relational mapping file schema -->
-<xsd:schema targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:orm="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.1">
-
- <xsd:annotation>
- <xsd:documentation>
- @(#)eclipselink_orm_2_1.xsd 2.1 April 05 2010
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation><![CDATA[
-
- This is the XML Schema for the native Eclipselink XML mapping file
- The file may be named "META-INF/eclipselink-orm.xml" in the persistence
- archive or it may be named some other name which would be
- used to locate the file as resource on the classpath.
- Object/relational mapping files must indicate the object/relational
- mapping file schema by using the persistence namespace:
-
- http://www.eclipse.org/eclipselink/xsds/persistence/orm
-
- and indicate the version of the schema by using the version element as shown below:
-
- <entity-mappings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.eclipse.org/eclipselink/xsds/persistence/orm
- eclipselink_orm_2_1.xsd
- version="2.1">
- ...
- </entity-mappings>
-
- ]]></xsd:documentation>
- </xsd:annotation>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="emptyType"/>
- <xsd:simpleType name="versionType">
- <xsd:restriction base="xsd:token">
- <xsd:pattern value="[0-9]+(\.[0-9]+)*"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="access-methods">
- <xsd:annotation>
- <xsd:documentation>
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="get-method" type="xsd:string" use="required"/>
- <xsd:attribute name="set-method" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cache">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Cache annotation is used to set an
- * org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy
- * which sets objects in EclipseLink's identity maps to be invalid
- * following given rules. By default in EclipseLink, objects do not
- * expire in the cache. Several different policies are available to
- * allow objects to expire.
- *
- * @see org.eclipse.persistence.annotations.CacheType
- *
- * A Cache anotation may be defined on an Entity or MappedSuperclass.
- * In the case of inheritance, a Cache annotation should only be defined
- * on the root of the inheritance hierarchy.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Cache {
- /**
- * (Optional) The type of cache to use.
- */
- CacheType type() default SOFT_WEAK;
-
- /**
- * (Optional) The size of cache to use.
- */
- int size() default 100;
-
- /**
- * (Optional) Cached instances in the shared cache or a client
- * isolated cache.
- */
- boolean shared() default true;
-
- /**
- * (Optional) Expire cached instance after a fix period of time (ms).
- * Queries executed against the cache after this will be forced back
- * to the database for a refreshed copy
- */
- int expiry() default -1; // minus one is no expiry.
-
- /**
- * (Optional) Expire cached instance a specific time of day. Queries
- * executed against the cache after this will be forced back to the
- * database for a refreshed copy
- */
- TimeOfDay expiryTimeOfDay() default @TimeOfDay(specified=false);
-
- /**
- * (Optional) Force all queries that go to the database to always
- * refresh the cache.
- */
- boolean alwaysRefresh() default false;
-
- /**
- * (Optional) For all queries that go to the database, refresh the
- * cache only if the data received from the database by a query is
- * newer than the data in the cache (as determined by the optimistic
- * locking field)
- */
- boolean refreshOnlyIfNewer() default false;
-
- /**
- * (Optional) Setting to true will force all queries to bypass the
- * cache for hits but still resolve against the cache for identity.
- * This forces all queries to hit the database.
- */
- boolean disableHits() default false;
-
- /**
- * (Optional) The cache coordination mode.
- */
- CacheCoordinationType coordinationType() default SEND_OBJECT_CHANGES;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:choice>
- <xsd:element name="expiry" type="xsd:integer" minOccurs="0"/>
- <xsd:element name="expiry-time-of-day" type="orm:time-of-day" minOccurs="0"/>
- </xsd:choice>
- <xsd:attribute name="size" type="xsd:integer"/>
- <xsd:attribute name="shared" type="xsd:boolean"/>
- <xsd:attribute name="type" type="orm:cache-type"/>
- <xsd:attribute name="always-refresh" type="xsd:boolean"/>
- <xsd:attribute name="refresh-only-if-newer" type="xsd:boolean"/>
- <xsd:attribute name="disable-hits" type="xsd:boolean"/>
- <xsd:attribute name="coordination-type" type="orm:cache-coordination-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cache-interceptor">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface CacheInterceptor {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
-
- <xsd:simpleType name="cache-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The CacheType enum is used with the Cache annotation for a
- * persistent class. It defines the type of IdentityMap/Cache used for
- * the class. By default the SOFT_WEAK cache type is used.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheType {
- /**
- * Provides full caching and guaranteed identity. Caches all objects
- * and does not remove them.
- * WARNING: This method may be memory intensive when many objects are
- * read.
- */
- FULL,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using weak references. This method allows full garbage
- * collection and provides full caching and guaranteed identity.
- */
- WEAK,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using soft references. This method allows full garbage
- * collection when memory is low and provides full caching and
- * guaranteed identity.
- */
- SOFT,
-
- /**
- * Similar to the WEAK identity map except that it maintains a
- * most-frequently-used sub-cache. The size of the sub-cache is
- * proportional to the size of the identity map as specified by
- * descriptor's setIdentityMapSize() method. The sub-cache
- * uses soft references to ensure that these objects are
- * garbage-collected only if the system is low on memory.
- */
- SOFT_WEAK,
-
- /**
- * Identical to the soft cache weak (SOFT_WEAK) identity map except
- * that it uses hard references in the sub-cache. Use this identity
- * map if soft references do not behave properly on your platform.
- */
- HARD_WEAK,
-
- /**
- * A cache identity map maintains a fixed number of objects
- * specified by the application. Objects are removed from the cache
- * on a least-recently-used basis. This method allows object
- * identity for the most commonly used objects.
- * WARNING: Furnishes caching and identity, but does not guarantee
- * identity.
- */
- CACHE,
-
- /**
- * WARNING: Does not preserve object identity and does not cache
- * objects.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="FULL"/>
- <xsd:enumeration value="WEAK"/>
- <xsd:enumeration value="SOFT"/>
- <xsd:enumeration value="SOFT_WEAK"/>
- <xsd:enumeration value="HARD_WEAK"/>
- <xsd:enumeration value="CACHE"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-coordination-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the Cache annotation.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheCoordinationType {
- /**
- * Sends a list of changed objects including data about the changes.
- * This data is merged into the receiving cache.
- */
- SEND_OBJECT_CHANGES,
-
- /**
- * Sends a list of the identities of the objects that have changed.
- * The receiving cache invalidates the objects (rather than changing
- * any of the data)
- */
- INVALIDATE_CHANGED_OBJECTS,
-
- /**
- * Same as SEND_OBJECT_CHANGES except it also includes any newly
- * created objects from the transaction.
- */
- SEND_NEW_OBJECTS_WITH_CHANGES,
-
- /**
- * Does no cache coordination.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SEND_OBJECT_CHANGES"/>
- <xsd:enumeration value="INVALIDATE_CHANGED_OBJECTS"/>
- <xsd:enumeration value="SEND_NEW_OBJECTS_WITH_CHANGES"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="change-tracking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The ChangeTracking annotation is used to specify the
- * org.eclipse.persistence.descriptors.changetracking.ObjectChangePolicy
- * which computes changes sets for EclipseLink's UnitOfWork commit
- * process. An ObjectChangePolicy is stored on an Entity's descriptor.
- *
- * A ChangeTracking annotation may be specified on an Entity,
- * MappedSuperclass or Embeddable.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface ChangeTracking {
- /**
- * (Optional) The type of change tracking to use.
- */
- ChangeTrackingType value() default AUTO;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="type" type="orm:change-tracking-type" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="change-tracking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the ChangeTracking annotation.
- */
- public enum ChangeTrackingType {
- /**
- * An ATTRIBUTE change tracking type allows change tracking at the
- * attribute level of an object. Objects with changed attributes will
- * be processed in the commit process to include any changes in the
- * results of the commit. Unchanged objects will be ignored.
- */
- ATTRIBUTE,
-
- /**
- * An OBJECT change tracking policy allows an object to calculate for
- * itself whether it has changed. Changed objects will be processed in
- * the commit process to include any changes in the results of the
- * commit. Unchanged objects will be ignored.
- */
- OBJECT,
-
- /**
- * A DEFERRED change tracking policy defers all change detection to
- * the UnitOfWork's change detection process. Essentially, the
- * calculateChanges() method will run for all objects in a UnitOfWork.
- * This is the default ObjectChangePolicy
- */
- DEFERRED,
-
- /**
- * Will not set any change tracking policy.
- */
- AUTO
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ATTRIBUTE"/>
- <xsd:enumeration value="OBJECT"/>
- <xsd:enumeration value="DEFERRED"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="customizer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Customizer annotation is used to specify a class that implements
- * the org.eclipse.persistence.config.DescriptorCustomizer
- * interface and is to run against an enetity's class descriptor after all
- * metadata processing has been completed.
- *
- * The Customizer annotation may be defined on an Entity, MappedSuperclass
- * or Embeddable class. In the case of inheritance, a Customizer is not
- * inherited from its parent classes.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Customizer {
- /**
- * (Required) Defines the name of the descriptor customizer class that
- * should be applied for the related entity or embeddable class.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="direction-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the StoredProcedureParameter annotation.
- * It is used to specify the direction of the stored procedure
- * parameters of a named stored procedure query.
- */
- public enum Direction {
- /**
- * Input parameter
- */
- IN,
-
- /**
- * Output parameter
- */
- OUT,
-
- /**
- * Input and output parameter
- */
- IN_OUT,
-
- /**
- * Output cursor
- */
- OUT_CURSOR
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="IN"/>
- <xsd:enumeration value="OUT"/>
- <xsd:enumeration value="IN_OUT"/>
- <xsd:enumeration value="OUT_CURSOR"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:element name="entity-mappings">
- <xsd:complexType>
- <xsd:annotation>
- <xsd:documentation>
-
- The entity-mappings element is the root element of a mapping
- file. It contains the following four types of elements:
-
- 1. The persistence-unit-metadata element contains metadata
- for the entire persistence unit. It is undefined if this element
- occurs in multiple mapping files within the same persistence unit.
-
- 2. The package, schema, catalog and access elements apply to all of
- the entity, mapped-superclass and embeddable elements defined in
- the same file in which they occur.
-
- 3. The sequence-generator, table-generator, named-query,
- named-native-query and sql-result-set-mapping elements are global
- to the persistence unit. It is undefined to have more than one
- sequence-generator or table-generator of the same name in the same
- or different mapping files in a persistence unit. It is also
- undefined to have more than one named-query, named-native-query, or
- result-set-mapping of the same name in the same or different mapping
- files in a persistence unit.
-
- 4. The entity, mapped-superclass and embeddable elements each define
- the mapping information for a managed persistent class. The mapping
- information contained in these elements may be complete or it may
- be partial.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="persistence-unit-metadata"
- type="orm:persistence-unit-metadata"
- minOccurs="0"/>
- <xsd:element name="package" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type"
- minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="mapped-superclass" type="orm:mapped-superclass"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="entity" type="orm:entity"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embeddable" type="orm:embeddable"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="version" type="orm:versionType"
- fixed="2.1" use="required"/>
- </xsd:complexType>
- </xsd:element>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="existence-type">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * The ExistenceChecking annotation is used to specify the type of
- * checking EclipseLink should use when updating entities.
- *
- * An existence-checking specification is supported on an Entity or
- * MappedSuperclass annotation.
- */
- public @interface ExistenceChecking {
-
- /**
- * (Optional) Set the existence check for determining
- * if an insert or update should occur for an object.
- */
- ExistenceType value() default CHECK_CACHE;
- }
-
- /**
- * Assume that if the objects primary key does not include null and
- * it is in the cache, then it must exist.
- */
- CHECK_CACHE,
-
- /**
- * Perform does exist check on the database.
- */
- CHECK_DATABASE,
-
- /**
- * Assume that if the objects primary key does not include null then
- * it must exist. This may be used if the application guarantees or
- * does not care about the existence check.
- */
- ASSUME_EXISTENCE,
-
- /**
- * Assume that the object does not exist. This may be used if the
- * application guarantees or does not care about the existence check.
- * This will always force an insert to be called.
- */
- ASSUME_NON_EXISTENCE
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="CHECK_CACHE"/>
- <xsd:enumeration value="CHECK_DATABASE"/>
- <xsd:enumeration value="ASSUME_EXISTENCE"/>
- <xsd:enumeration value="ASSUME_NON_EXISTENCE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-metadata">
- <xsd:annotation>
- <xsd:documentation>
-
- Metadata that applies to the persistence unit and not just to
- the mapping file in which it is contained.
-
- If the xml-mapping-metadata-complete element is specified,
- the complete set of mapping metadata for the persistence unit
- is contained in the XML mapping files for the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="xml-mapping-metadata-complete" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-default-mappings" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="persistence-unit-defaults"
- type="orm:persistence-unit-defaults"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-defaults">
- <xsd:annotation>
- <xsd:documentation>
-
- These defaults are applied to the persistence unit as a whole
- unless they are overridden by local annotation or XML
- element settings.
-
- schema - Used as the schema for all tables, secondary tables, join
- tables, collection tables, sequence generators, and table
- generators that apply to the persistence unit
- catalog - Used as the catalog for all tables, secondary tables, join
- tables, collection tables, sequence generators, and table
- generators that apply to the persistence unit
- delimited-identifiers - Used to treat database identifiers as
- delimited identifiers.
- access - Used as the access type for all managed classes in
- the persistence unit
- cascade-persist - Adds cascade-persist to the set of cascade options
- in all entity relationships of the persistence unit
- entity-listeners - List of default entity listeners to be invoked
- on each entity in the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="delimited-identifiers" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type"
- minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for an entity. Is allowed to be
- sparsely populated and used in conjunction with the annotations.
- Alternatively, the metadata-complete attribute can be used to
- indicate that no annotations on the entity class (and its fields
- or properties) are to be processed. If this is the case then
- the defaulting rules for the entity and its subelements will
- be recursively applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface Entity {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="table" type="orm:table"
- minOccurs="0"/>
- <xsd:element name="secondary-table" type="orm:secondary-table"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="inheritance" type="orm:inheritance" minOccurs="0"/>
- <xsd:choice>
- <xsd:sequence>
- <xsd:element name="discriminator-value" type="orm:discriminator-value" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column" minOccurs="0"/>
- </xsd:sequence>
- <xsd:element name="class-extractor" type="orm:class-extractor" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking" minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="cache-interceptor" type="orm:cache-interceptor" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="fetch-group" type="orm:fetch-group" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="query-redirectors" type="orm:query-redirectors" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="parent-class" type="xsd:string"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="cacheable" type="xsd:boolean"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="access-type">
- <xsd:annotation>
- <xsd:documentation>
-
- This element determines how the persistence provider accesses the
- state of an entity or embedded object.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="PROPERTY"/>
- <xsd:enumeration value="FIELD"/>
- <xsd:enumeration value="VIRTUAL"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="association-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AssociationOverride {
- String name();
- JoinColumn[] joinColumns() default{};
- JoinTable joinTable() default @JoinTable;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="attribute-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AttributeOverride {
- String name();
- Column column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="attributes">
- <xsd:annotation>
- <xsd:documentation>
-
- This element contains the entity field or property mappings.
- It may be sparsely populated to include only a subset of the
- fields or properties. If metadata-complete for the entity is true
- then the remainder of the attributes will be defaulted according
- to the default rules.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="id" type="orm:id"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded-id" type="orm:embedded-id"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="basic" type="orm:basic"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-collection" type="orm:basic-collection" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-map" type="orm:basic-map" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="version" type="orm:version"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-one" type="orm:many-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-many" type="orm:one-to-many"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-one" type="orm:one-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="variable-one-to-one" type="orm:variable-one-to-one" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-many" type="orm:many-to-many"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="element-collection" type="orm:element-collection"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded" type="orm:embedded"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transformation" type="orm:transformation" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transient" type="orm:transient"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="basic">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Basic {
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="lob" type="orm:lob"/>
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="enumerated" type="orm:enumerated"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="return-insert" type="orm:return-insert" minOccurs="0"/>
- <xsd:element name="return-update" type="orm:emptyType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="basic-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicCollection {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the value column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:eclipselink-collection-table" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-map">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicMap {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the data column that holds the direct map
- * key. If the name on te key column is "", the name will default to:
- * the name of the property or field; "_KEY".
- */
- Column keyColumn() default @Column;
-
- /**
- * (Optional) Specify the key converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the direct map key.
- */
- Convert keyConverter() default @Convert;
-
- /**
- * (Optional) The name of the data column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
-
- /**
- * (Optional) Specify the value converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the value column mapping.
- */
- Convert valueConverter() default @Convert;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="key-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="key-converter" type="xsd:string" minOccurs="0"/>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="value-converter" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:eclipselink-collection-table" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cascade-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum CascadeType { ALL, PERSIST, MERGE, REMOVE, REFRESH, DETACH};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade-all" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-merge" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-remove" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-refresh" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-detach" type="orm:emptyType"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="class-extractor">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A ClassExtractor allows for a user defined class indicator in place of
- * providing a discriminator column. The class has the following restrictions:
-
- * - It must extend the org.eclipse.persistence.descriptors.ClassExtractor
- * class and implement the extractClassFromRow(Record, Session) method.
- * - That method must take a database row (a Record/Map) as an argument and
- * must return the class to use for that row.
- *
- * This method will be used to decide which class to instantiate when reading
- * from the database. It is the application's responsibility to populate any
- * typing information in the database required to determine the class from the
- * row.
- *
- * The ClassExtractor must only be set on the root of an entity class or
- * sub-hierarchy in which a different inheritance strategy is applied. The
- * ClassExtractor can only be used with the SINGLE_TABLE and JOINED inheritance
- * strategies.
- *
- * If a ClassExtractor is used then a DiscriminatorColumn cannot be used. A
- * ClassExtractor also cannot be used on either the root or its subclasses.
- *
- * In addition, for more complex configurations using a ClassExtractor and a
- * SINGLE_TABLE strategy, the descriptor's withAllSubclasses and onlyInstances
- * expressions should be set through the ClassExtractor's initialize method.
- *
- * @see org.eclipse.persistence.descriptors.InheritancePolicy.setWithAllSubclassesExpression(Expression)
- * @see org.eclipse.persistence.descriptors.InheritancePolicy.setOnlyInstancesExpression(Expression)
- *
- * @author Guy Pelletier
- * @since EclipseLink 2.1
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface ClassExtractor {
- /**
- * (Required) Defines the name of the class extractor that should be
- * applied to this entity's descriptor.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="clone-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CloneCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.CloneCopyPolicy on an
- * Entity. A CloneCopyPolicy must specify at one or both of the "method"
- * or "workingCopyMethod". "workingCopyMethod" is used to clone objects
- * that will be returned to the user as they are registered in
- * EclipseLink's transactional mechanism, the UnitOfWork. "method" will
- * be used for the clone that is used for comparison in conjunction with
- * EclipseLink's DeferredChangeDetectionPolicy
- *
- * A CloneCopyPolicy should be specified on an Entity, MappedSuperclass
- * or Embeddable.
- *
- * Example:
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod", workingCopyMethod="myWorkingCopyCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(workingCopyMethodName="myWorkingCopyClone")
- */
- public @interface CloneCopyPolicy {
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified this defines
- * a method that will be used to create a clone that will be used
- * for comparison by
- * EclipseLink's DeferredChangeDetectionPolicy
- */
- String method();
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified
- * this defines a method that will be used to create a clone that
- * will be used to create the object returned when registering an
- * Object in an EclipseLink UnitOfWork
- */
- String workingCopyMethod();
-
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method" type="xsd:string"/>
- <xsd:attribute name="working-copy-method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface CollectionTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="eclipselink-collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface CollectionTable {
- /**
- * (Optional) The name of the collection table. If it is not
- * specified, it is defaulted to the concatenation of the following:
- * the name of the source entity; "_" ; the name of the relationship
- * property or field of the source entity.
- */
- String name() default "";
-
- /**
- * (Optional) The catalog of the table. It defaults to the persistence
- * unit default catalog.
- */
- String catalog() default "";
-
- /**
- * (Optional) The schema of the table. It defaults to the persistence
- * unit default schema.
- */
- String schema() default "";
-
- /**
- * (Optional) Used to specify a primary key column that is used as a
- * foreign key to join to another table. If the source entity uses a
- * composite primary key, a primary key join column must be specified
- * for each field of the composite primary key. In a single primary
- * key case, a primary key join column may optionally be specified.
- * Defaulting will apply otherwise as follows:
- * name, the same name as the primary key column of the primary table
- * of the source entity. referencedColumnName, the same name of
- * primary key column of the primary table of the source entity.
- */
- PrimaryKeyJoinColumn[] primaryKeyJoinColumns() default {};
-
- /**
- * (Optional) Unique constraints that are to be placed on the table.
- * These are only used if table generation is in effect.
- */
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Column {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="conversion-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface ConversionValue {
- /**
- * (Required) Specify the database value.
- */
- String dataValue();
-
- /**
- * (Required) Specify the object value.
- */
- String objectValue();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="data-value" type="xsd:string" use="required"/>
- <xsd:attribute name="object-value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Converter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must implement
- * the org.eclipse.persistence.mappings.converters.Converter interface.
- */
- Class converterClass();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface ColumnResult {
- String name();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CopyPolicy is used to set a
- * org.eclipse.persistence.descriptors.copying.CopyPolicy on an Entity.
- * It is required that a class that implements
- * org.eclipse.persistence.descriptors.copying.CopyPolicy be specified
- * as the argument.
- *
- * A CopyPolicy should be specified on an Entity, MappedSuperclass or
- * Embeddable.
- *
- * For instance:
- * @Entity
- * @CopyPolicy("example.MyCopyPolicy")
- */
- public @interface CopyPolicy {
-
- /*
- * (Required)
- * This defines the class of the copy policy. It must specify a class
- * that implements org.eclipse.persistence.descriptors.copying.CopyPolicy
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorColumn {
- String name() default "DTYPE";
- DiscriminatorType discriminatorType() default STRING;
- String columnDefinition() default "";
- int length() default 31;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="discriminator-type" type="orm:discriminator-type"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-class">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A DiscriminatorClass is used within a VariableOneToOne annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface DiscriminatorClass {
- /**
- * (Required) The discriminator to be stored on the database.
- */
- String discriminator();
-
- /**
- * (Required) The class to the instantiated with the given
- * discriminator.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="discriminator" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum DiscriminatorType { STRING, CHAR, INTEGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="STRING"/>
- <xsd:enumeration value="CHAR"/>
- <xsd:enumeration value="INTEGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorValue {
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
-<xsd:complexType name="element-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ElementCollection {
- Class targetClass() default void.class;
- FetchType fetch() default LAZY;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by"
- minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key"
- minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class"
- minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="map-key-enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column"
- type="orm:map-key-column"
- minOccurs="0"/>
- <xsd:element name="map-key-join-column"
- type="orm:map-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="lob"
- type="orm:lob"
- minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:sequence>
- <xsd:element name="attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:collection-table"
- minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-class" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
-</xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="embeddable">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for embeddable objects. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- in the class. If this is the case then the defaulting rules will
- be recursively applied.
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Embeddable {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Embedded {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="embedded-id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface EmbeddedId {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="entity-listener">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines an entity listener to be invoked at lifecycle events
- for the entities that list this listener.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="entity-listeners">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface EntityListeners {
- Class[] value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="entity-listener" type="orm:entity-listener"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="entity-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface EntityResult {
- Class entityClass();
- FieldResult[] fields() default {};
- String discriminatorColumn() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field-result" type="orm:field-result"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="entity-class" type="xsd:string" use="required"/>
- <xsd:attribute name="discriminator-column" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="enum-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum EnumType {
- ORDINAL,
- STRING
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ORDINAL"/>
- <xsd:enumeration value="STRING"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="enumerated">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Enumerated {
- EnumType value() default ORDINAL;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:enum-type"/>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="fetch-attribute">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface FetchAttribute {
- /**
- * (Required) The fetch attribute name.
- */
- String name();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="fetch-group">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface FetchGroup {
- /**
- * (Required) The fetch group name.
- */
- String name();
-
- /**
- * (Optional) Indicates whether all relationship attributes
- * specified in the fetch group should be loaded.
- */
- boolean load() default true;
-
- /**
- * (Required) The list of attributes to fetch.
- */
- FetchAttribute[] attributes();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute" type="orm:fetch-attribute" minOccurs="1" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="load" type="xsd:boolean"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum FetchType { LAZY, EAGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="LAZY"/>
- <xsd:enumeration value="EAGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="field-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface FieldResult {
- String name();
- String column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="column" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="generated-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface GeneratedValue {
- GenerationType strategy() default AUTO;
- String generator() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:generation-type"/>
- <xsd:attribute name="generator" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="generation-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum GenerationType { TABLE, SEQUENCE, IDENTITY, AUTO };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="TABLE"/>
- <xsd:enumeration value="SEQUENCE"/>
- <xsd:enumeration value="IDENTITY"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Id {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"
- minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value"
- minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="id-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface IdClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="id-validation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The IdValidation enum determines the type value that are valid for an Id.
- * By default null is not allowed, and 0 is not allow for singleton ids of long or int type.
- * The default value is ZERO for singleton ids, and NULL for composite ids.
- * This can be set using the @PrimaryKey annotation, or ClassDescriptor API.
- *
- * @see PrimaryKey
- * @see org.eclipse.persistence.descriptors.ClassDescriptor#setIdValidation(IdValidation)
- * @author James Sutherland
- * @since EclipseLink 1.0
- */
- public enum IdValidation {
- /**
- * Only null is not allowed as an id value, 0 is allowed.
- */
- NULL,
-
- /**
- * null and 0 are not allowed, (only int and long).
- */
- ZERO,
-
- /**
- * No id validation is done.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="NULL"/>
- <xsd:enumeration value="ZERO"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:simpleType name="cache-key-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Configures what type of Id value is used to store the object in the cache.
- * This can either be the basic Id value for simple singleton Ids,
- * or an optimized CacheKey type.
- *
- * @see PrimaryKey#cacheKeyType()
- * @see ClassDescriptor#setCacheKeyType(CacheKeyType)
- * @author James Sutherland
- * @since EclipseLink 2.1
- */
- public enum CacheKeyType {
- /**
- * This can only be used for simple singleton Ids, such as long/int/String.
- * This is the default for simple singleton Ids.
- */
- ID_VALUE,
-
- /**
- * Optimized cache key type that allows composite and complex values.
- * This is the default for composite or complex Ids.
- */
- CACHE_KEY,
-
- /**
- * The cache key type is automatically configured depending on what is optimal for the class.
- */
- AUTO
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ID_VALUE"/>
- <xsd:enumeration value="CACHE_KEY"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="inheritance">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Inheritance {
- InheritanceType strategy() default SINGLE_TABLE;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:inheritance-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="inheritance-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum InheritanceType
- { SINGLE_TABLE, JOINED, TABLE_PER_CLASS};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SINGLE_TABLE"/>
- <xsd:enumeration value="JOINED"/>
- <xsd:enumeration value="TABLE_PER_CLASS"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="instantiation-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * An InstantiationCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.InstantiationCopyPolicy
- * on an Entity. InstantiationCopyPolicy is the default CopyPolicy in
- * EclipseLink and therefore this configuration option is only used to
- * override other types of copy policies
- *
- * An InstantiationCopyPolicy should be specified on an Entity,
- * MappedSuperclass or Embeddable.
- *
- * Example:
- * @Entity
- * @InstantiationCopyPolicy
- */
- public @interface InstantiationCopyPolicy {
- }
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum JoinFetchType {
- /**
- * An inner join is used to fetch the related object.
- * This does not allow for null/empty values.
- */
- INNER,
-
- /**
- * An inner join is used to fetch the related object.
- * This allows for null/empty values.
- */
- OUTER,
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="INNER"/>
- <xsd:enumeration value="OUTER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="batch-fetch-type">
- <xsd:annotation>
- <xsd:documentation>
- public enum BatchFetchType {
- /**
- * This is the default form of batch reading.
- * The original query's selection criteria is joined with the batch query.
- */
- JOIN,
-
- /**
- * This uses an SQL EXISTS and a sub-select in the batch query instead of a join.
- * This has the advantage of not requiring an SQL DISTINCT which can have issues
- * with LOBs, or may be more efficient for some types of queries or on some databases.
- */
- EXISTS,
-
- /**
- * This uses an SQL IN clause in the batch query passing in the source object Ids.
- * This has the advantage of only selecting the objects not already contained in the cache,
- * and can work better with cursors, or if joins cannot be used.
- * This may only work for singleton Ids on some databases.
- */
- IN
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="JOIN"/>
- <xsd:enumeration value="EXISTS"/>
- <xsd:enumeration value="IN"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- JoinColumn[] inverseJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="inverse-join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="lob">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Lob {}
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="lock-mode-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum LockModeType { READ, WRITE, OPTIMISTIC, OPTIMISTIC_FORCE_INCREMENT, PESSIMISTIC_READ, PESSIMISTIC_WRITE, PESSIMISTIC_FORCE_INCREMENT, NONE};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="READ"/>
- <xsd:enumeration value="WRITE"/>
- <xsd:enumeration value="OPTIMISTIC"/>
- <xsd:enumeration value="OPTIMISTIC_FORCE_INCREMENT"/>
- <xsd:enumeration value="PESSIMISTIC_READ"/>
- <xsd:enumeration value="PESSIMISTIC_WRITE"/>
- <xsd:enumeration value="PESSIMISTIC_FORCE_INCREMENT"/>
- <xsd:enumeration value="NONE"/>
-
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
-<xsd:complexType name="many-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by"
- minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key"
- minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class"
- minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="map-key-enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column"
- minOccurs="0"/>
- <xsd:element name="map-key-join-column"
- type="orm:map-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="1">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="many-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="maps-id" type="xsd:string"/>
- <xsd:attribute name="id" type="xsd:boolean"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="map-key">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKey {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="map-key-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="map-key-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyColumn {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default false;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="map-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default false;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="mapped-superclass">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for a mapped superclass. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- If this is the case then the defaulting rules will be recursively
- applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface MappedSuperclass{}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking" minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="cache-interceptor" type="orm:cache-interceptor" minOccurs="0"/>
- <xsd:element name="fetch-group" type="orm:fetch-group" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="query-redirectors" type="orm:query-redirectors" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="parent-class" type="xsd:string"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="cacheable" type="xsd:boolean"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="named-native-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedNativeQuery {
- String name();
- String query();
- QueryHint[] hints() default {};
- Class resultClass() default void.class;
- String resultSetMapping() default ""; //named SqlResultSetMapping
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="hint" type="orm:query-hint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="named-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedQuery {
- String name();
- String query();
- LockModeType lockMode() default NONE;
- QueryHint[] hints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="lock-mode" type="orm:lock-mode-type" minOccurs="0"/>
- <xsd:element name="hint" type="orm:query-hint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
-</xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="named-stored-procedure-query">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A NamedStoredProcedureQuery annotation allows the definition of
- * queries that call stored procedures as named queries.
- * A NamedStoredProcedureQuery annotation may be defined on an Entity or
- * MappedSuperclass.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface NamedStoredProcedureQuery {
- /**
- * (Required) Unique name that references this stored procedure query.
- */
- String name();
-
- /**
- * (Optional) Query hints.
- */
- QueryHint[] hints() default {};
-
- /**
- * (Optional) Refers to the class of the result.
- */
- Class resultClass() default void.class;
-
- /**
- * (Optional) The name of the SQLResultMapping.
- */
- String resultSetMapping() default "";
-
- /**
- * (Required) The name of the stored procedure.
- */
- String procedureName();
-
- /**
- * (Optional) Whether the query should return a result set.
- */
- boolean returnsResultSet() default true;
-
- /**
- * (Optional) Defines arguments to the stored procedure.
- */
- StoredProcedureParameter[] parameters() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="parameter" type="orm:stored-procedure-parameter" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- <xsd:attribute name="procedure-name" type="xsd:string" use="required"/>
- <xsd:attribute name="returns-result-set" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="object-type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ObjectTypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence
- * field or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent
- * field or property.
- */
- Class objectType() default void.class;
-
- /**
- * (Required) Specify the conversion values to be used
- * with the object converter.
- */
- ConversionValue[] conversionValues();
-
- /**
- * (Optional) Specify a default object value. Used for
- * legacy data if the data value is missing.
- */
- String defaultObjectValue() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="conversion-value" type="orm:conversion-value" minOccurs="1" maxOccurs="unbounded"/>
- <xsd:element name="default-object-value" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
-<xsd:complexType name="one-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by"
- minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key"
- minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class"
- minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="map-key-enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column"
- minOccurs="0"/>
- <xsd:element name="map-key-join-column"
- type="orm:map-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="1">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="one-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- String mappedBy() default "";
- boolean orphanRemoval() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- <xsd:attribute name="maps-id" type="xsd:string"/>
- <xsd:attribute name="id" type="xsd:boolean"/>
-</xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="optimistic-locking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An optimistic-locking element is used to specify the type of
- * optimistic locking EclipseLink should use when updating or deleting
- * entities. An optimistic-locking specification is supported on
- * an entity or mapped-superclass.
- *
- * It is used in conjunction with the optimistic-locking-type.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface OptimisticLocking {
- /**
- * (Optional) The type of optimistic locking policy to use.
- */
- OptimisticLockingType type() default VERSION_COLUMN;
-
- /**
- * (Optional) For an optimistic locking policy of type
- * SELECTED_COLUMNS, this annotation member becomes a (Required)
- * field.
- */
- Column[] selectedColumns() default {};
-
- /**
- * (Optional) Specify where the optimistic locking policy should
- * cascade lock. Currently only supported with VERSION_COLUMN locking.
- */
- boolean cascade() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="selected-column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="type" type="orm:optimistic-locking-type"/>
- <xsd:attribute name="cascade" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="optimistic-locking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A simple type that is used within an optimistic-locking
- * specification to specify the type of optimistic-locking that
- * EclipseLink should use when updating or deleting entities.
- */
- public enum OptimisticLockingType {
- /**
- * Using this type of locking policy compares every field in the table
- * in the WHERE clause when doing an update or a delete. If any field
- * has been changed, an optimistic locking exception will be thrown.
- */
- ALL_COLUMNS,
-
- /**
- * Using this type of locking policy compares only the changed fields
- * in the WHERE clause when doing an update. If any field has been
- * changed, an optimistic locking exception will be thrown. A delete
- * will only compare the primary key.
- */
- CHANGED_COLUMNS,
-
- /**
- * Using this type of locking compares selected fields in the WHERE
- * clause when doing an update or a delete. If any field has been
- * changed, an optimistic locking exception will be thrown. Note that
- * the fields specified must be mapped and not be primary keys.
- */
- SELECTED_COLUMNS,
-
- /**
- * Using this type of locking policy compares a single version number
- * in the where clause when doing an update. The version field must be
- * mapped and not be the primary key.
- */
- VERSION_COLUMN
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ALL_COLUMNS"/>
- <xsd:enumeration value="CHANGED_COLUMNS"/>
- <xsd:enumeration value="SELECTED_COLUMNS"/>
- <xsd:enumeration value="VERSION_COLUMN"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-by">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderBy {
- String value() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="order-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderColumn {
- String name() default "";
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="correction-type" type="orm:order-column-correction-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-column-correction-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum OrderCorrectionType {
- READ,
- READ_WRITE,
- EXCEPTION
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="READ"/>
- <xsd:enumeration value="READ_WRITE"/>
- <xsd:enumeration value="EXCEPTION"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="post-load">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostLoad {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="post-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostPersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="post-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="post-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="pre-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PrePersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="pre-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="pre-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="primary-key">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The PrimaryKey annotation allows advanced configuration of the Id.
- * A validation policy can be given that allows specifying if zero is a valid id value.
- * The set of primary key columns can also be specified precisely.
- *
- * @author James Sutherland
- * @since EclipseLink 1.1
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface PrimaryKey {
- /**
- * (Optional) Configures what id validation is done.
- * By default 0 is not a valid id value, this can be used to allow 0 id values.
- */
- IdValidation validation() default IdValidation.ZERO;
-
- /**
- * (Optional) Configures what cache key type is used to store the object in the cache.
- * By default the type is determined by what type is optimal for the class.
- */
- CacheKeyType cacheKeyType() default CacheKeyType.AUTO;
-
- /**
- * (Optional) Used to specify the primary key columns directly.
- * This can be used instead of @Id if the primary key includes a non basic field,
- * such as a foreign key, or a inheritance discriminator, embedded, or transformation mapped field.
- */
- Column[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="validation" type="orm:id-validation"/>
- <xsd:attribute name="cache-key-type" type="orm:cache-key-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="primary-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface PrimaryKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="property">
- <xsd:annotation>
- <xsd:documentation>
-
- A user defined mapping's property.
- @Target({METHOD, FIELD, TYPE})
- @Retention(RUNTIME)
- public @interface Property {
- /**
- * Property name.
- */
- String name();
-
- /**
- * String representation of Property value,
- * converted to an instance of valueType.
- */
- String value();
-
- /**
- * Property value type.
- * The value converted to valueType by ConversionManager.
- * If specified must be a simple type that could be handled by
- * ConversionManager:
- * numerical, boolean, temporal.
- */
- Class valueType() default String.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- <xsd:attribute name="value-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="query-hint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface QueryHint {
- String name();
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="query-redirectors">
- <xsd:annotation>
- <xsd:documentation>
-
-@Target({TYPE}) @Retention(RUNTIME)
-public @interface QueryRedirectors {
-
- /**
- * This AllQueries Query Redirector will be applied to any executing object query
- * that does not have a more precise redirector (like the
- * ReadObjectQuery Redirector) or a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- *
- */
- Class allQueries() default void.class;
-
- /**
- * A Default ReadAll Query Redirector will be applied to any executing
- * ReadAllQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query through the getResultList() API this is the redirector that will be invoked
- */
- Class readAll() default void.class;
-
- /**
- * A Default ReadObject Query Redirector will be applied to any executing
- * ReadObjectQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query through the getSingleResult() API or EntityManager.find() this is the redirector that will be invoked
- */
- Class readObject() default void.class;
-
- /**
- * A Default ReportQuery Redirector will be applied to any executing
- * ReportQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query that contains agregate functions or selects multiple entities this is the redirector that will be invoked
- */
- Class report() default void.class;
-
- /**
- * A Default Update Query Redirector will be applied to any executing
- * UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.
- * In EclipseLink an UpdateObjectQuery is executed whenever flushing changes to the datasource.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class update() default void.class;
-
- /**
- * A Default Insert Query Redirector will be applied to any executing
- * InsertObjectQuery that does not have a redirector set directly on the query.
- * In EclipseLink an InsertObjectQuery is executed when persisting an object to the datasource.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class insert() default void.class;
-
- /**
- * A Default Delete Object Query Redirector will be applied to any executing
- * DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class delete() default void.class;
-
-}
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="all-queries" type="xsd:string"/>
- <xsd:attribute name="read-all" type="xsd:string"/>
- <xsd:attribute name="read-object" type="xsd:string"/>
- <xsd:attribute name="report" type="xsd:string"/>
- <xsd:attribute name="update" type="xsd:string"/>
- <xsd:attribute name="insert" type="xsd:string"/>
- <xsd:attribute name="delete" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="read-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * Unless the TransformationMapping is write-only, it should have a
- * ReadTransformer, it defines transformation of database column(s)
- * value(s)into attribute value.
- *
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReadTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.AttributeTransformer
- * interface. The class will be instantiated, its
- * buildAttributeValue will be used to create the value to be
- * assigned to the attribute.
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be assigned to the attribute (not assigns the value to
- * the attribute). Either transformerClass or method must be
- * specified, but not both.
- */
- String method() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="return-insert">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReturnInsert {
- /**
- * A ReturnInsert annotation allows for INSERT operations to return
- * values back into the object being written. This allows for table
- * default values, trigger or stored procedures computed values to
- * be set back into the object.
- */
- boolean returnOnly() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="return-only" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="secondary-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SecondaryTable {
- String name();
- String catalog() default "";
- String schema() default "";
- PrimaryKeyJoinColumn[] pkJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="sequence-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface SequenceGenerator {
- String name();
- String sequenceName() default "";
- String catalog() default "";
- String schema() default "";
- int initialValue() default 1;
- int allocationSize() default 50;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="sequence-name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="sql-result-set-mapping">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SqlResultSetMapping {
- String name();
- EntityResult[] entities() default {};
- ColumnResult[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="entity-result" type="orm:entity-result"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="column-result" type="orm:column-result"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="stored-procedure-parameter">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A StoredProcedureParameter annotation is used within a
- * NamedStoredProcedureQuery annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface StoredProcedureParameter {
- /**
- * (Optional) The direction of the stored procedure parameter.
- */
- Direction direction() default IN;
-
- /**
- * (Optional) Stored procedure parameter name.
- */
- String name() default "";
-
- /**
- * (Required) The query parameter name.
- */
- String queryParameter();
-
- /**
- * (Optional) The type of Java class desired back from the procedure,
- * this is dependent on the type returned from the procedure.
- */
- Class type() default void.class;
-
- /**
- * (Optional) The JDBC type code, this dependent on the type returned
- * from the procedure.
- */
- int jdbcType() default -1;
-
- /**
- * (Optional) The JDBC type name, this may be required for ARRAY or
- * STRUCT types.
- */
- String jdbcTypeName() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="direction" type="orm:direction-type"/>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="query-parameter" type="xsd:string" use="required"/>
- <xsd:attribute name="type" type="xsd:string"/>
- <xsd:attribute name="jdbc-type" type="xsd:integer"/>
- <xsd:attribute name="jdbc-type-name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="struct-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface StructConverter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must
- * implement the EclipseLink interface
- * org.eclipse.persistence.mappings.converters.Converter
- */
- String converter();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="converter" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Table {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="table-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface TableGenerator {
- String name();
- String table() default "";
- String catalog() default "";
- String schema() default "";
- String pkColumnName() default "";
- String valueColumnName() default "";
- String pkColumnValue() default "";
- int initialValue() default 0;
- int allocationSize() default 50;
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="pk-column-name" type="xsd:string"/>
- <xsd:attribute name="value-column-name" type="xsd:string"/>
- <xsd:attribute name="pk-column-value" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="temporal">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Temporal {
- TemporalType value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:temporal-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum TemporalType {
- DATE, // java.sql.Date
- TIME, // java.sql.Time
- TIMESTAMP // java.sql.Timestamp
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="DATE"/>
- <xsd:enumeration value="TIME"/>
- <xsd:enumeration value="TIMESTAMP"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="time-of-day">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface TimeOfDay {
- /**
- * (Optional) Hour of the day.
- */
- int hour() default 0;
-
- /**
- * (Optional) Minute of the day.
- */
- int minute() default 0;
-
- /**
- * (Optional) Second of the day.
- */
- int second() default 0;
-
- /**
- * (Optional) Millisecond of the day.
- */
- int millisecond() default 0;
-
- /**
- * Internal use. Do not modify.
- */
- boolean specified() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="hour" type="xsd:integer"/>
- <xsd:attribute name="minute" type="xsd:integer"/>
- <xsd:attribute name="second" type="xsd:integer"/>
- <xsd:attribute name="millisecond" type="xsd:integer"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="transformation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Transformation is an optional annotation for
- * org.eclipse.persistence.mappings.TransformationMapping.
- * TransformationMapping allows to map an attribute to one or more
- * database columns.
- *
- * Transformation annotation is an optional part of
- * TransformationMapping definition. Unless the TransformationMapping is
- * write-only, it should have a ReadTransformer, it defines
- * transformation of database column(s) value(s)into attribute value.
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Transformation {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) The optional element is a hint as to whether the value
- * of the field or property may be null. It is disregarded
- * for primitive types, which are considered non-optional.
- */
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="read-transformer" type="orm:read-transformer"/>
- <xsd:element name="write-transformer" type="orm:write-transformer" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access" type="orm:access-type" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="transient">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Transient {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface TypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence field
- * or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent field
- * or property.
- */
- Class objectType() default void.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="unique-constraint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface UniqueConstraint {
- String name() default "";
- String[] columnNames();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column-name" type="xsd:string"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="variable-one-to-one">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * Variable one to one mappings are used to represent a pointer
- * references between a java object and an implementer of an interface.
- * This mapping is usually represented by a single pointer (stored in an
- * instance variable) between the source and target objects. In the
- * relational database tables, these mappings are normally implemented
- * using a foreign key and a type code.
- *
- * A VariableOneToOne can be specified within an Entity,
- * MappedSuperclass and Embeddable class.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface VariableOneToOne {
- /**
- * (Optional) The interface class that is the target of the
- * association. If not specified it will be inferred from the type
- * of the object being referenced.
- */
- Class targetInterface() default void.class;
-
- /**
- * (Optional) The operations that must be cascaded to the target of
- * the association.
- */
- CascadeType[] cascade() default {};
-
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) Whether the association is optional. If set to false
- * then a non-null relationship must always exist.
- */
- boolean optional() default true;
-
- /**
- * (Optional) The discriminator column will hold the type
- * indicators. If the DiscriminatorColumn is not specified, the name
- * of the discriminator column defaults to "DTYPE" and the
- * discriminator type to STRING.
- */
- DiscriminatorColumn discriminatorColumn() default @DiscriminatorColumn;
-
- /**
- * (Optional) The list of discriminator types that can be used with
- * this VariableOneToOne. If none are specified then those entities
- * within the persistence unit that implement the target interface
- * will be added to the list of types. The discriminator type will
- * default as follows:
- * - If DiscriminatorColumn type is STRING: Entity.name()
- * - If DiscriminatorColumn type is CHAR: First letter of the
- * Entity class
- * - If DiscriminatorColumn type is INTEGER: The next integer after
- * the highest integer explicitly added.
- */
- DiscriminatorClass[] discriminatorClasses() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column" minOccurs="0"/>
- <xsd:element name="discriminator-class" type="orm:discriminator-class" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-interface" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="version">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Version {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="write-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- *
- * A single WriteTransformer may be specified directly on the method or
- * attribute. Multiple WriteTransformers should be wrapped into
- * WriteTransformers annotation. No WriteTransformers specified for
- * read-only mapping. Unless the TransformationMapping is write-only, it
- * should have a ReadTransformer, it defines transformation of database
- * column(s) value(s)into attribute value.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface WriteTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.FieldTransformer
- * interface. The class will be instantiated, its buildFieldValue
- * will be used to create the value to be written into the database
- * column. Note that for ddl generation and returning to be
- * supported the method buildFieldValue in the class should be
- * defined to return the relevant Java type, not just Object as
- * defined in the interface, for instance:
- * public Time buildFieldValue(Object instance, String fieldName, Session session).
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be written into the database column.
- * Note that for ddl generation and returning to be supported the
- * method should be defined to return a particular type, not just
- * Object, for instance:
- * public Time getStartTime().
- * The method may require a Transient annotation to avoid being
- * mapped as Basic by default.
- * Either transformerClass or method must be specified, but not both.
- */
- String method() default "";
-
- /**
- * Specify here the column into which the value should be written.
- * The only case when this could be skipped is if a single
- * WriteTransformer annotates an attribute - the attribute's name
- * will be used as a column name.
- */
- Column column() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <xsd:complexType name="batch-fetch">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A BatchFetch annotation can be used on any relationship mapping,
- * (OneToOne, ManyToOne, OneToMany, ManyToMany, ElementCollection, BasicCollection, BasicMap).
- * It allows the related objects to be batch read in a single query.
- * Batch fetching can also be set at the query level, and it is
- * normally recommended to do so as all queries may not require batching.
- *
- * @author James Sutherland
- * @since EclipseLink 2.1
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BatchFetch {
- /**
- * (Optional) The type of batch-fetch to use.
- * Either JOIN, EXISTS or IN.
- * JOIN is the default.
- */
- BatchFetchType value() default BatchFetchType.JOIN;
-
- /**
- * Define the default batch fetch size.
- * This is only used for IN type batch reading and defines
- * the number of keys used in each IN clause.
- * The default size is 256, or the query's pageSize for cursor queries.
- */
- int size() default -1;
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="type" type="orm:batch-fetch-type"/>
- <xsd:attribute name="size" type="xsd:integer"/>
- </xsd:complexType>
-
-</xsd:schema>
-
-
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_2.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_2.xsd
deleted file mode 100644
index 223029e12a..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_2.xsd
+++ /dev/null
@@ -1,4778 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ******************************************************************************************************************************* -->
-<!-- Copyright (c) 1998, 2010 Oracle. All rights reserved. -->
-<!-- This program and the accompanying materials are made available under the -->
-<!-- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0 -->
-<!-- which accompanies this distribution. -->
-<!-- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html -->
-<!-- and the Eclipse Distribution License is available at -->
-<!-- http://www.eclipse.org/org/documents/edl-v10.php. -->
-<!-- -->
-<!-- Contributors: -->
-<!-- Oracle - initial API and implementation from Oracle TopLink -->
-<!-- tware - update version number to 2.0 -->
-<!-- 12/2/2009-2.1 Guy Pelletier -->
-<!-- - 296289: Add current annotation metadata support on mapped superclasses to EclipseLink-ORM.XML Schema -->
-<!-- - 296612: Add current annotation only metadata support of return insert/update to the EclipseLink-ORM.XML Schema -->
-<!-- - formatted to match orm_2_0.xsd so that users can easily compare the two schemas -->
-<!-- 5/4/2010-2.1 Guy Pelletier -->
-<!-- - 227219: Expand EclipseLink-ORM.XML schema functionality for 2.1 release (update version to 2.1) -->
-<!-- 6/14/2010-2.2 Guy Pelletier -->
-<!-- - 247078: eclipselink-orm.xml schema should allow lob and enumerated on version and id mappings (update version to 2.2) -->
-<!-- 10/15/2010-2.2 Guy Pelletier -->
-<!-- - 322008: Improve usability of additional criteria applied to queries at the session/EM -->
-<!-- ******************************************************************************************************************************* -->
-
-<!-- Java Persistence API object-relational mapping file schema -->
-<xsd:schema targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:orm="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.2">
-
- <xsd:annotation>
- <xsd:documentation>
- @(#)eclipselink_orm_2_2.xsd 2.2 June 14 2010
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation><![CDATA[
-
- This is the XML Schema for the native Eclipselink XML mapping file
- The file may be named "META-INF/eclipselink-orm.xml" in the persistence
- archive or it may be named some other name which would be
- used to locate the file as resource on the classpath.
- Object/relational mapping files must indicate the object/relational
- mapping file schema by using the persistence namespace:
-
- http://www.eclipse.org/eclipselink/xsds/persistence/orm
-
- and indicate the version of the schema by using the version element as shown below:
-
- <entity-mappings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.eclipse.org/eclipselink/xsds/persistence/orm
- eclipselink_orm_2_2.xsd
- version="2.2">
- ...
- </entity-mappings>
-
- ]]></xsd:documentation>
- </xsd:annotation>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="emptyType"/>
- <xsd:simpleType name="versionType">
- <xsd:restriction base="xsd:token">
- <xsd:pattern value="[0-9]+(\.[0-9]+)*"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="access-methods">
- <xsd:annotation>
- <xsd:documentation>
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="get-method" type="xsd:string" use="required"/>
- <xsd:attribute name="set-method" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="additional-criteria">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An additional criteria can be specified at the Entity or MappedSuperclass
- * level. When specified at the mapped superclass level, it applies to all
- * inheriting entities unless those entities define their own additional
- * criteria, at which point the additional criteria from the mapped superclass
- * is ignored.
- *
- * The additional criteria supports any valid JPQL string and must use 'this'
- * as an alias to form your additional criteria. E.G.,
- *
- * @Entity
- * @AdditionalCriteria("this.nut.size = :NUT_SIZE and this.nut.color = :NUT_COLOR")
- * public class Bolt {...}
- *
- * Additional criteria parameters are also accepted and are set through
- * properties on the entity manager factory, or on an entity manager. When set
- * on the entity manager, the properties must be set before any query execution
- * and should not be changed for the life span of that entity manager.
- *
- * Properties set on the entity manager will override those similarly named
- * properties set on the entity manager factory.
- *
- * Additional criteria is not supported with any native queries.
- *
- * @author Guy Pelletier
- * @since EclipseLink 2.2
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface AdditionalCriteria {
- /**
- * (Required) The JPQL fragment to use as the additional criteria.
- */
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="criteria" type="xsd:string"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cache">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Cache annotation is used to set an
- * org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy
- * which sets objects in EclipseLink's identity maps to be invalid
- * following given rules. By default in EclipseLink, objects do not
- * expire in the cache. Several different policies are available to
- * allow objects to expire.
- *
- * @see org.eclipse.persistence.annotations.CacheType
- *
- * A Cache anotation may be defined on an Entity or MappedSuperclass.
- * In the case of inheritance, a Cache annotation should only be defined
- * on the root of the inheritance hierarchy.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Cache {
- /**
- * (Optional) The type of cache to use.
- */
- CacheType type() default SOFT_WEAK;
-
- /**
- * (Optional) The size of cache to use.
- */
- int size() default 100;
-
- /**
- * (Optional) Cached instances in the shared cache,
- * or only a per EntityManager isolated cache.
- * The default is shared.
- * @deprecated As of Eclipselink 2.2. See the attribute 'isolation'
- */
- @Deprecated
- boolean shared() default true;
-
- /**
- * (Optional) Controls the level of caching this Entity will use.
- * The default is CacheIsolationType.SHARED which has EclipseLink
- * Caching all Entities in the Shared Cache.
- * @see org.eclipse.persistence.config.CacheIsolationType
- */
- CacheIsolationType isolation() default SHARED;
-
- /**
- * (Optional) Expire cached instance after a fix period of time (ms).
- * Queries executed against the cache after this will be forced back
- * to the database for a refreshed copy
- */
- int expiry() default -1; // minus one is no expiry.
-
- /**
- * (Optional) Expire cached instance a specific time of day. Queries
- * executed against the cache after this will be forced back to the
- * database for a refreshed copy
- */
- TimeOfDay expiryTimeOfDay() default @TimeOfDay(specified=false);
-
- /**
- * (Optional) Force all queries that go to the database to always
- * refresh the cache.
- */
- boolean alwaysRefresh() default false;
-
- /**
- * (Optional) For all queries that go to the database, refresh the
- * cache only if the data received from the database by a query is
- * newer than the data in the cache (as determined by the optimistic
- * locking field)
- */
- boolean refreshOnlyIfNewer() default false;
-
- /**
- * (Optional) Setting to true will force all queries to bypass the
- * cache for hits but still resolve against the cache for identity.
- * This forces all queries to hit the database.
- */
- boolean disableHits() default false;
-
- /**
- * (Optional) The cache coordination mode.
- */
- CacheCoordinationType coordinationType() default SEND_OBJECT_CHANGES;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:choice>
- <xsd:element name="expiry" type="xsd:integer" minOccurs="0"/>
- <xsd:element name="expiry-time-of-day" type="orm:time-of-day" minOccurs="0"/>
- </xsd:choice>
- <xsd:attribute name="size" type="xsd:integer"/>
- <xsd:attribute name="shared" type="xsd:boolean"/>
- <xsd:attribute name="isolation" type="orm:cache-isolation-type"/>
- <xsd:attribute name="type" type="orm:cache-type"/>
- <xsd:attribute name="always-refresh" type="xsd:boolean"/>
- <xsd:attribute name="refresh-only-if-newer" type="xsd:boolean"/>
- <xsd:attribute name="disable-hits" type="xsd:boolean"/>
- <xsd:attribute name="coordination-type" type="orm:cache-coordination-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cache-interceptor">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface CacheInterceptor {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
-
- <xsd:simpleType name="cache-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The CacheType enum is used with the Cache annotation for a
- * persistent class. It defines the type of IdentityMap/Cache used for
- * the class. By default the SOFT_WEAK cache type is used.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheType {
- /**
- * Provides full caching and guaranteed identity. Caches all objects
- * and does not remove them.
- * WARNING: This method may be memory intensive when many objects are
- * read.
- */
- FULL,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using weak references. This method allows full garbage
- * collection and provides full caching and guaranteed identity.
- */
- WEAK,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using soft references. This method allows full garbage
- * collection when memory is low and provides full caching and
- * guaranteed identity.
- */
- SOFT,
-
- /**
- * Similar to the WEAK identity map except that it maintains a
- * most-frequently-used sub-cache. The size of the sub-cache is
- * proportional to the size of the identity map as specified by
- * descriptor's setIdentityMapSize() method. The sub-cache
- * uses soft references to ensure that these objects are
- * garbage-collected only if the system is low on memory.
- */
- SOFT_WEAK,
-
- /**
- * Identical to the soft cache weak (SOFT_WEAK) identity map except
- * that it uses hard references in the sub-cache. Use this identity
- * map if soft references do not behave properly on your platform.
- */
- HARD_WEAK,
-
- /**
- * A cache identity map maintains a fixed number of objects
- * specified by the application. Objects are removed from the cache
- * on a least-recently-used basis. This method allows object
- * identity for the most commonly used objects.
- * WARNING: Furnishes caching and identity, but does not guarantee
- * identity.
- */
- CACHE,
-
- /**
- * WARNING: Does not preserve object identity and does not cache
- * objects.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="FULL"/>
- <xsd:enumeration value="WEAK"/>
- <xsd:enumeration value="SOFT"/>
- <xsd:enumeration value="SOFT_WEAK"/>
- <xsd:enumeration value="HARD_WEAK"/>
- <xsd:enumeration value="CACHE"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
- <xsd:simpleType name="cache-isolation-type">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * Options for how Entity instances should be shared within an EclipseLink Persistence Unit / ServerSession
- * @see ClassDescriptor#setCacheIsolationType(CacheIsolationType)
- * @author Gordon Yorke
- * @since EclipseLink 2.2
- */
- public enum CacheIsolationType {
-
- /**
- * Entity instances will be cached within the EntityManagerFactory/ServerSession level.
- * Any user queries for shared cache instances (ie Read-Only query hint) will return an Entity
- * instance that may be shared by multiple clients.
- *
- * This setting is the default isolation level.
- */
- SHARED,
-
- /**
- * Entity state information will be cached in the shared cache but Entity
- * instances will not be shared. Any user queries for shared cache instances
- * (ie Read-Only query hint) will return a new Entity instance with the cached state.
- * This will ensure the instance is <i>protected</i> from any concurrent
- * state change.
- */
- PROTECTED,
-
- /**
- * The Entity and its data is not stored in the shared cache but is
- * <i>isolated</i> to the Persistence Context/UnitOfWork or
- * IsolatedClientSession. This setting effectively disables second level
- * caching for this entity and should be used when users do not want caching for
- * a particular Entity.
- */
- ISOLATED;
-
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SHARED"/>
- <xsd:enumeration value="PROTECTED"/>
- <xsd:enumeration value="ISOLATED"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-coordination-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the Cache annotation.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheCoordinationType {
- /**
- * Sends a list of changed objects including data about the changes.
- * This data is merged into the receiving cache.
- */
- SEND_OBJECT_CHANGES,
-
- /**
- * Sends a list of the identities of the objects that have changed.
- * The receiving cache invalidates the objects (rather than changing
- * any of the data)
- */
- INVALIDATE_CHANGED_OBJECTS,
-
- /**
- * Same as SEND_OBJECT_CHANGES except it also includes any newly
- * created objects from the transaction.
- */
- SEND_NEW_OBJECTS_WITH_CHANGES,
-
- /**
- * Does no cache coordination.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SEND_OBJECT_CHANGES"/>
- <xsd:enumeration value="INVALIDATE_CHANGED_OBJECTS"/>
- <xsd:enumeration value="SEND_NEW_OBJECTS_WITH_CHANGES"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="change-tracking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The ChangeTracking annotation is used to specify the
- * org.eclipse.persistence.descriptors.changetracking.ObjectChangePolicy
- * which computes changes sets for EclipseLink's UnitOfWork commit
- * process. An ObjectChangePolicy is stored on an Entity's descriptor.
- *
- * A ChangeTracking annotation may be specified on an Entity,
- * MappedSuperclass or Embeddable.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface ChangeTracking {
- /**
- * (Optional) The type of change tracking to use.
- */
- ChangeTrackingType value() default AUTO;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="type" type="orm:change-tracking-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="change-tracking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the ChangeTracking annotation.
- */
- public enum ChangeTrackingType {
- /**
- * An ATTRIBUTE change tracking type allows change tracking at the
- * attribute level of an object. Objects with changed attributes will
- * be processed in the commit process to include any changes in the
- * results of the commit. Unchanged objects will be ignored.
- */
- ATTRIBUTE,
-
- /**
- * An OBJECT change tracking policy allows an object to calculate for
- * itself whether it has changed. Changed objects will be processed in
- * the commit process to include any changes in the results of the
- * commit. Unchanged objects will be ignored.
- */
- OBJECT,
-
- /**
- * A DEFERRED change tracking policy defers all change detection to
- * the UnitOfWork's change detection process. Essentially, the
- * calculateChanges() method will run for all objects in a UnitOfWork.
- * This is the default ObjectChangePolicy
- */
- DEFERRED,
-
- /**
- * Will not set any change tracking policy.
- */
- AUTO
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ATTRIBUTE"/>
- <xsd:enumeration value="OBJECT"/>
- <xsd:enumeration value="DEFERRED"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="customizer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Customizer annotation is used to specify a class that implements
- * the org.eclipse.persistence.config.DescriptorCustomizer
- * interface and is to run against an enetity's class descriptor after all
- * metadata processing has been completed.
- *
- * The Customizer annotation may be defined on an Entity, MappedSuperclass
- * or Embeddable class. In the case of inheritance, a Customizer is not
- * inherited from its parent classes.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Customizer {
- /**
- * (Required) Defines the name of the descriptor customizer class that
- * should be applied for the related entity or embeddable class.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="direction-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the StoredProcedureParameter annotation.
- * It is used to specify the direction of the stored procedure
- * parameters of a named stored procedure query.
- */
- public enum Direction {
- /**
- * Input parameter
- */
- IN,
-
- /**
- * Output parameter
- */
- OUT,
-
- /**
- * Input and output parameter
- */
- IN_OUT,
-
- /**
- * Output cursor
- */
- OUT_CURSOR
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="IN"/>
- <xsd:enumeration value="OUT"/>
- <xsd:enumeration value="IN_OUT"/>
- <xsd:enumeration value="OUT_CURSOR"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:element name="entity-mappings">
- <xsd:complexType>
- <xsd:annotation>
- <xsd:documentation>
-
- The entity-mappings element is the root element of a mapping
- file. It contains the following four types of elements:
-
- 1. The persistence-unit-metadata element contains metadata
- for the entire persistence unit. It is undefined if this element
- occurs in multiple mapping files within the same persistence unit.
-
- 2. The package, schema, catalog and access elements apply to all of
- the entity, mapped-superclass and embeddable elements defined in
- the same file in which they occur.
-
- 3. The sequence-generator, table-generator, named-query,
- named-native-query and sql-result-set-mapping elements are global
- to the persistence unit. It is undefined to have more than one
- sequence-generator or table-generator of the same name in the same
- or different mapping files in a persistence unit. It is also
- undefined to have more than one named-query, named-native-query, or
- result-set-mapping of the same name in the same or different mapping
- files in a persistence unit.
-
- 4. The entity, mapped-superclass and embeddable elements each define
- the mapping information for a managed persistent class. The mapping
- information contained in these elements may be complete or it may
- be partial.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="persistence-unit-metadata"
- type="orm:persistence-unit-metadata"
- minOccurs="0"/>
- <xsd:element name="package" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type"
- minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="partitioning" type="orm:partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="replication-partitioning" type="orm:replication-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="round-robin-partitioning" type="orm:round-robin-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="pinned-partitioning" type="orm:pinned-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="range-partitioning" type="orm:range-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="value-partitioning" type="orm:value-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="hash-partitioning" type="orm:hash-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="union-partitioning" type="orm:union-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="mapped-superclass" type="orm:mapped-superclass"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="entity" type="orm:entity"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embeddable" type="orm:embeddable"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="version" type="orm:versionType"
- fixed="2.2" use="required"/>
- </xsd:complexType>
- </xsd:element>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="existence-type">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * The ExistenceChecking annotation is used to specify the type of
- * checking EclipseLink should use when updating entities.
- *
- * An existence-checking specification is supported on an Entity or
- * MappedSuperclass annotation.
- */
- public @interface ExistenceChecking {
-
- /**
- * (Optional) Set the existence check for determining
- * if an insert or update should occur for an object.
- */
- ExistenceType value() default CHECK_CACHE;
- }
-
- /**
- * Assume that if the objects primary key does not include null and
- * it is in the cache, then it must exist.
- */
- CHECK_CACHE,
-
- /**
- * Perform does exist check on the database.
- */
- CHECK_DATABASE,
-
- /**
- * Assume that if the objects primary key does not include null then
- * it must exist. This may be used if the application guarantees or
- * does not care about the existence check.
- */
- ASSUME_EXISTENCE,
-
- /**
- * Assume that the object does not exist. This may be used if the
- * application guarantees or does not care about the existence check.
- * This will always force an insert to be called.
- */
- ASSUME_NON_EXISTENCE
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="CHECK_CACHE"/>
- <xsd:enumeration value="CHECK_DATABASE"/>
- <xsd:enumeration value="ASSUME_EXISTENCE"/>
- <xsd:enumeration value="ASSUME_NON_EXISTENCE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-metadata">
- <xsd:annotation>
- <xsd:documentation>
-
- Metadata that applies to the persistence unit and not just to
- the mapping file in which it is contained.
-
- If the xml-mapping-metadata-complete element is specified,
- the complete set of mapping metadata for the persistence unit
- is contained in the XML mapping files for the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="xml-mapping-metadata-complete" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-default-mappings" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="persistence-unit-defaults"
- type="orm:persistence-unit-defaults"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-defaults">
- <xsd:annotation>
- <xsd:documentation>
-
- These defaults are applied to the persistence unit as a whole
- unless they are overridden by local annotation or XML
- element settings.
-
- schema - Used as the schema for all tables, secondary tables, join
- tables, collection tables, sequence generators, and table
- generators that apply to the persistence unit
- catalog - Used as the catalog for all tables, secondary tables, join
- tables, collection tables, sequence generators, and table
- generators that apply to the persistence unit
- delimited-identifiers - Used to treat database identifiers as
- delimited identifiers.
- access - Used as the access type for all managed classes in
- the persistence unit
- cascade-persist - Adds cascade-persist to the set of cascade options
- in all entity relationships of the persistence unit
- entity-listeners - List of default entity listeners to be invoked
- on each entity in the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="delimited-identifiers" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type"
- minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for an entity. Is allowed to be
- sparsely populated and used in conjunction with the annotations.
- Alternatively, the metadata-complete attribute can be used to
- indicate that no annotations on the entity class (and its fields
- or properties) are to be processed. If this is the case then
- the defaulting rules for the entity and its subelements will
- be recursively applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface Entity {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="additional-criteria" type="orm:additional-criteria" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="table" type="orm:table" minOccurs="0"/>
- <xsd:element name="secondary-table" type="orm:secondary-table"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="index" type="orm:index" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="inheritance" type="orm:inheritance" minOccurs="0"/>
- <xsd:choice>
- <xsd:sequence>
- <xsd:element name="discriminator-value" type="orm:discriminator-value" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column" minOccurs="0"/>
- </xsd:sequence>
- <xsd:element name="class-extractor" type="orm:class-extractor" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking" minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="cache-interceptor" type="orm:cache-interceptor" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="fetch-group" type="orm:fetch-group" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="query-redirectors" type="orm:query-redirectors" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="parent-class" type="xsd:string"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="cacheable" type="xsd:boolean"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:group name="partitioning-group">
- <xsd:sequence>
- <xsd:element name="partitioning" type="orm:partitioning" minOccurs="0"/>
- <xsd:element name="replication-partitioning" type="orm:replication-partitioning" minOccurs="0"/>
- <xsd:element name="round-robin-partitioning" type="orm:round-robin-partitioning" minOccurs="0"/>
- <xsd:element name="pinned-partitioning" type="orm:pinned-partitioning" minOccurs="0"/>
- <xsd:element name="range-partitioning" type="orm:range-partitioning" minOccurs="0"/>
- <xsd:element name="value-partitioning" type="orm:value-partitioning" minOccurs="0"/>
- <xsd:element name="hash-partitioning" type="orm:hash-partitioning" minOccurs="0"/>
- <xsd:element name="union-partitioning" type="orm:union-partitioning" minOccurs="0"/>
- <xsd:element name="partitioned" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- </xsd:group>
-
- <xsd:simpleType name="access-type">
- <xsd:annotation>
- <xsd:documentation>
-
- This element determines how the persistence provider accesses the
- state of an entity or embedded object.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="PROPERTY"/>
- <xsd:enumeration value="FIELD"/>
- <xsd:enumeration value="VIRTUAL"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="association-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AssociationOverride {
- String name();
- JoinColumn[] joinColumns() default{};
- JoinTable joinTable() default @JoinTable;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="attribute-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AttributeOverride {
- String name();
- Column column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="attributes">
- <xsd:annotation>
- <xsd:documentation>
-
- This element contains the entity field or property mappings.
- It may be sparsely populated to include only a subset of the
- fields or properties. If metadata-complete for the entity is true
- then the remainder of the attributes will be defaulted according
- to the default rules.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="id" type="orm:id"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded-id" type="orm:embedded-id"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="basic" type="orm:basic"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-collection" type="orm:basic-collection" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-map" type="orm:basic-map" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="version" type="orm:version"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-one" type="orm:many-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-many" type="orm:one-to-many"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-one" type="orm:one-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="variable-one-to-one" type="orm:variable-one-to-one" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-many" type="orm:many-to-many"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="element-collection" type="orm:element-collection"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded" type="orm:embedded"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transformation" type="orm:transformation" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transient" type="orm:transient"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="basic">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Basic {
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="index" type="orm:index" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="lob" type="orm:lob"/>
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="enumerated" type="orm:enumerated"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="return-insert" type="orm:return-insert" minOccurs="0"/>
- <xsd:element name="return-update" type="orm:emptyType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="basic-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicCollection {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the value column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:eclipselink-collection-table" minOccurs="0"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-map">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicMap {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the data column that holds the direct map
- * key. If the name on te key column is "", the name will default to:
- * the name of the property or field; "_KEY".
- */
- Column keyColumn() default @Column;
-
- /**
- * (Optional) Specify the key converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the direct map key.
- */
- Convert keyConverter() default @Convert;
-
- /**
- * (Optional) The name of the data column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
-
- /**
- * (Optional) Specify the value converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the value column mapping.
- */
- Convert valueConverter() default @Convert;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="key-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="key-converter" type="xsd:string" minOccurs="0"/>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="value-converter" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:eclipselink-collection-table" minOccurs="0"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cascade-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum CascadeType { ALL, PERSIST, MERGE, REMOVE, REFRESH, DETACH};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade-all" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-merge" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-remove" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-refresh" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-detach" type="orm:emptyType"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="class-extractor">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A ClassExtractor allows for a user defined class indicator in place of
- * providing a discriminator column. The class has the following restrictions:
-
- * - It must extend the org.eclipse.persistence.descriptors.ClassExtractor
- * class and implement the extractClassFromRow(Record, Session) method.
- * - That method must take a database row (a Record/Map) as an argument and
- * must return the class to use for that row.
- *
- * This method will be used to decide which class to instantiate when reading
- * from the database. It is the application's responsibility to populate any
- * typing information in the database required to determine the class from the
- * row.
- *
- * The ClassExtractor must only be set on the root of an entity class or
- * sub-hierarchy in which a different inheritance strategy is applied. The
- * ClassExtractor can only be used with the SINGLE_TABLE and JOINED inheritance
- * strategies.
- *
- * If a ClassExtractor is used then a DiscriminatorColumn cannot be used. A
- * ClassExtractor also cannot be used on either the root or its subclasses.
- *
- * In addition, for more complex configurations using a ClassExtractor and a
- * SINGLE_TABLE strategy, the descriptor's withAllSubclasses and onlyInstances
- * expressions should be set through the ClassExtractor's initialize method.
- *
- * @see org.eclipse.persistence.descriptors.InheritancePolicy.setWithAllSubclassesExpression(Expression)
- * @see org.eclipse.persistence.descriptors.InheritancePolicy.setOnlyInstancesExpression(Expression)
- *
- * @author Guy Pelletier
- * @since EclipseLink 2.1
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface ClassExtractor {
- /**
- * (Required) Defines the name of the class extractor that should be
- * applied to this entity's descriptor.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="clone-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CloneCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.CloneCopyPolicy on an
- * Entity. A CloneCopyPolicy must specify at one or both of the "method"
- * or "workingCopyMethod". "workingCopyMethod" is used to clone objects
- * that will be returned to the user as they are registered in
- * EclipseLink's transactional mechanism, the UnitOfWork. "method" will
- * be used for the clone that is used for comparison in conjunction with
- * EclipseLink's DeferredChangeDetectionPolicy
- *
- * A CloneCopyPolicy should be specified on an Entity, MappedSuperclass
- * or Embeddable.
- *
- * Example:
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod", workingCopyMethod="myWorkingCopyCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(workingCopyMethodName="myWorkingCopyClone")
- */
- public @interface CloneCopyPolicy {
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified this defines
- * a method that will be used to create a clone that will be used
- * for comparison by
- * EclipseLink's DeferredChangeDetectionPolicy
- */
- String method();
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified
- * this defines a method that will be used to create a clone that
- * will be used to create the object returned when registering an
- * Object in an EclipseLink UnitOfWork
- */
- String workingCopyMethod();
-
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method" type="xsd:string"/>
- <xsd:attribute name="working-copy-method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface CollectionTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string" />
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="eclipselink-collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface CollectionTable {
- /**
- * (Optional) The name of the collection table. If it is not
- * specified, it is defaulted to the concatenation of the following:
- * the name of the source entity; "_" ; the name of the relationship
- * property or field of the source entity.
- */
- String name() default "";
-
- /**
- * (Optional) The catalog of the table. It defaults to the persistence
- * unit default catalog.
- */
- String catalog() default "";
-
- /**
- * (Optional) The schema of the table. It defaults to the persistence
- * unit default schema.
- */
- String schema() default "";
-
- /**
- * (Optional) Used to specify a primary key column that is used as a
- * foreign key to join to another table. If the source entity uses a
- * composite primary key, a primary key join column must be specified
- * for each field of the composite primary key. In a single primary
- * key case, a primary key join column may optionally be specified.
- * Defaulting will apply otherwise as follows:
- * name, the same name as the primary key column of the primary table
- * of the source entity. referencedColumnName, the same name of
- * primary key column of the primary table of the source entity.
- */
- PrimaryKeyJoinColumn[] primaryKeyJoinColumns() default {};
-
- /**
- * (Optional) Unique constraints that are to be placed on the table.
- * These are only used if table generation is in effect.
- */
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string" />
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Column {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="conversion-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface ConversionValue {
- /**
- * (Required) Specify the database value.
- */
- String dataValue();
-
- /**
- * (Required) Specify the object value.
- */
- String objectValue();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="data-value" type="xsd:string" use="required"/>
- <xsd:attribute name="object-value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Converter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must implement
- * the org.eclipse.persistence.mappings.converters.Converter interface.
- */
- Class converterClass();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A Partitioning is used to partition the data for a class across multiple difference databases
- * or across a database cluster such as Oracle RAC.
- * Partitioning can provide improved scalability by allowing multiple database machines to service requests.
- * This annotation configures a custom PartitioningPolicy.
- *
- * If multiple partitions are used to process a single transaction, JTA should be used for proper XA transaction support.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- * Partition policies are globally named to allow reuse,
- * the partitioning policy must also be set using the @Partitioned annotation to be used.
- *
- * @see Partitioned
- * @see org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Partitioning {
- String name();
-
- /**
- * (Required) Full package.class name of a subclass of PartitioningPolicy.
- */
- Class partitioningClass();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="hash-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * HashPartitioning partitions access to a database cluster by the hash of a field value from the object,
- * such as the object's location, or tenant.
- * The hash indexes into the list of connection pools.
- * All write or read request for object's with that hash value are sent to the server.
- * If a query does not include the field as a parameter, then it can either be sent
- * to all server's and unioned, or left to the sesion's default behavior.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.HashPartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface HashPartitioning {
- String name();
-
- /**
- * The database column or query parameter to partition queries by.
- * This is the table column name, not the class attribute name.
- * The column value must be included in the query and should normally be part of the object's Id.
- * This can also be the name of a query parameter.
- * If a query does not contain the field the query will not be partitioned.
- */
- Column partitionColumn();
-
- /**
- * List of connection pool names to partition across.
- */
- String[] connectionPools();
-
- /**
- * Defines if queries that do not contain the partition field should be sent
- * to every database and have the result unioned.
- */
- boolean unionUnpartitionableQueries() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="partition-column" type="orm:column"/>
- <xsd:element name="connection-pool" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="union-unpartitionable-queries" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="range-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * RangePartitioningPolicy partitions access to a database cluster by a field value from the object,
- * such as the object's id, location, or tenant.
- * Each server is assigned a range of values.
- * All write or read request for object's with that value are sent to the server.
- * If a query does not include the field as a parameter, then it can either be sent
- * to all server's and unioned, or left to the sesion's default behavior.
- *
- * If multiple partitions are used to process a single transaction, JTA should be used for proper XA transaction support.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- * Partition policies are globally named to allow reuse,
- * the partitioning policy must also be set using the @Partitioned annotation to be used.
- *
- * @see Partitioned
- * @see org.eclipse.persistence.descriptors.partitioning.RangePartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface RangePartitioning {
- String name();
-
- /**
- * The database column or query parameter to partition queries by.
- * This is the table column name, not the class attribute name.
- * The column value must be included in the query and should normally be part of the object's Id.
- * This can also be the name of a query parameter.
- * If a query does not contain the field the query will not be partitioned.
- */
- Column partitionColumn();
-
- /**
- * (Required) List of connection pool names to load balance across.
- */
- RangePartition[] partitions();
-
- /**
- * Defines if queries that do not contain the partition field should be sent
- * to every database and have the result unioned.
- */
- boolean unionUnpartitionableQueries() default false;
-
- /** The type of the start and end values. */
- Class partitionValueType() default String.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="partition-column" type="orm:column"/>
- <xsd:element name="partition" type="orm:range-partition" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="union-unpartitionable-queries" type="xsd:boolean"/>
- <xsd:attribute name="partition-value-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="range-partition">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Represent a specific range partition.
- * Values = startValue and = endValue will be routed to the connection pool.
- *
- * @see RangePartitioningPolicy
- * @see org.eclipse.persistence.descriptors.partitioning.RangePartitioningPolicy
- * @see org.eclipse.persistence.descriptors.partitioning.RangePartition
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface RangePartition {
- /** The String representation of the range start value. */
- String startValue() default "";
- /** The String representation of the range start value. */
- String endValue() default "";
- /** The connection pool to route queries to for this range. */
- String connectionPool();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="start-value" type="xsd:string"/>
- <xsd:attribute name="end-value" type="xsd:string"/>
- <xsd:attribute name="connection-pool" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="value-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * ValuePartitioning partitions access to a database cluster by a field value from the object,
- * such as the object's location, or tenant.
- * Each value is assigned a specific server.
- * All write or read request for object's with that value are sent to the server.
- * If a query does not include the field as a parameter, then it can either be sent
- * to all server's and unioned, or left to the sesion's default behavior.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.ValuePartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ValuePartitioning {
- String name();
-
- /**
- * The database column or query parameter to partition queries by.
- * This is the table column name, not the class attribute name.
- * The column value must be included in the query and should normally be part of the object's Id.
- * This can also be the name of a query parameter.
- * If a query does not contain the field the query will not be partitioned.
- */
- Column partitionColumn();
-
- /** Store the value partitions. Each partition maps a value to a connectionPool. */
- ValuePartition[] partitions();
-
- /** The type of the start and end values. */
- Class partitionValueType() default String.class;
-
- /** The default connection pool is used for any unmapped values. */
- String defaultConnectionPool();
-
- /**
- * Defines if queries that do not contain the partition field should be sent
- * to every database and have the result unioned.
- */
- boolean unionUnpartitionableQueries() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="partition-column" type="orm:column"/>
- <xsd:element name="partition" type="orm:value-partition" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="union-unpartitionable-queries" type="xsd:boolean"/>
- <xsd:attribute name="default-connection-pool" type="xsd:string"/>
- <xsd:attribute name="partition-value-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="value-partition">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Represent a specific value partition.
- * The value will be routed to the connection pool.
- *
- * @see ValuePartitioningPolicy
- * @see org.eclipse.persistence.descriptors.partitioning.ValuePartitioningPolicy
- * @see org.eclipse.persistence.descriptors.partitioning.ValuePartition
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ValuePartition {
- /** The String representation of the range start value. */
- String value() default "";
-
- /** The connection pool to route queries to for this value. */
- String connectionPool();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- <xsd:attribute name="connection-pool" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="round-robin-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * RoundRobinPartitioning sends requests in a round robin fashion to the set of connection pools.
- * It is for load-balancing read queries across a cluster of database machines.
- * It requires that the full database be replicated on each machine, so does not support partitioning.
- * The data should either be read-only, or writes should be replicated on the database.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.RoundRobinPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface RoundRobinPartitioning {
- String name();
-
- /**
- * (Required) List of connection pool names to load balance across.
- */
- String[] connectionPools();
-
- /**
- * This allows for a set of database to be written to and kept in synch,
- * and have reads load-balanced across the databases.
- */
- boolean replicateWrites() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="connection-pool" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="replicate-writes" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="replication-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * ReplicationPartitioning sends requests to a set of connection pools.
- * It is for replicating data across a cluster of database machines.
- * Only modification queries are replicated.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.ReplicationPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReplicationPartitioning {
- String name();
-
- /**
- * (Required) List of connection pool names to load balance across.
- */
- String[] connectionPools();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="connection-pool" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="union-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * UnionPartitioning sends queries to all connection pools and unions the results.
- * This is for queries or relationships that span partitions when partitioning is used,
- * such as on a ManyToMany cross partition relationship.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.UnionPartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface UnionPartitioning {
- String name();
-
- /**
- * (Required) List of connection pool names to load balance across.
- */
- String[] connectionPools();
-
- /**
- * Defines if write queries should be replicated.
- * Writes are normally not replicated when unioning,
- * but can be for ManyToMany relationships, when the join table needs to be replicated.
- */
- boolean replicateWrites() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="connection-pool" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="replicate-writes" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pinned-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * PinnedPartitioning pins requests to a single connection pool.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.PinnedPartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface PinnedPartitioning {
- String name();
-
- /**
- * The connection pool name to pin queries to.
- */
- String connectionPool();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="connection-pool" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface ColumnResult {
- String name();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CopyPolicy is used to set a
- * org.eclipse.persistence.descriptors.copying.CopyPolicy on an Entity.
- * It is required that a class that implements
- * org.eclipse.persistence.descriptors.copying.CopyPolicy be specified
- * as the argument.
- *
- * A CopyPolicy should be specified on an Entity, MappedSuperclass or
- * Embeddable.
- *
- * For instance:
- * @Entity
- * @CopyPolicy("example.MyCopyPolicy")
- */
- public @interface CopyPolicy {
-
- /*
- * (Required)
- * This defines the class of the copy policy. It must specify a class
- * that implements org.eclipse.persistence.descriptors.copying.CopyPolicy
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorColumn {
- String name() default "DTYPE";
- DiscriminatorType discriminatorType() default STRING;
- String columnDefinition() default "";
- int length() default 31;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="discriminator-type" type="orm:discriminator-type"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-class">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A DiscriminatorClass is used within a VariableOneToOne annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface DiscriminatorClass {
- /**
- * (Required) The discriminator to be stored on the database.
- */
- String discriminator();
-
- /**
- * (Required) The class to the instantiated with the given
- * discriminator.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="discriminator" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum DiscriminatorType { STRING, CHAR, INTEGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="STRING"/>
- <xsd:enumeration value="CHAR"/>
- <xsd:enumeration value="INTEGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorValue {
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
-<xsd:complexType name="element-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ElementCollection {
- Class targetClass() default void.class;
- FetchType fetch() default LAZY;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by"
- minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key"
- minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class"
- minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="map-key-enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column"
- type="orm:map-key-column"
- minOccurs="0"/>
- <xsd:element name="map-key-join-column"
- type="orm:map-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="lob"
- type="orm:lob"
- minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:sequence>
- <xsd:element name="attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:collection-table"
- minOccurs="0"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
-
-
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-class" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
-</xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="embeddable">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for embeddable objects. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- in the class. If this is the case then the defaulting rules will
- be recursively applied.
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Embeddable {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="parent-class" type="xsd:string"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Embedded {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="embedded-id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface EmbeddedId {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="entity-listener">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines an entity listener to be invoked at lifecycle events
- for the entities that list this listener.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="entity-listeners">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface EntityListeners {
- Class[] value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="entity-listener" type="orm:entity-listener"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="entity-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface EntityResult {
- Class entityClass();
- FieldResult[] fields() default {};
- String discriminatorColumn() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field-result" type="orm:field-result"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="entity-class" type="xsd:string" use="required"/>
- <xsd:attribute name="discriminator-column" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="enum-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum EnumType {
- ORDINAL,
- STRING
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ORDINAL"/>
- <xsd:enumeration value="STRING"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="enumerated">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Enumerated {
- EnumType value() default ORDINAL;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:enum-type"/>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="fetch-attribute">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface FetchAttribute {
- /**
- * (Required) The fetch attribute name.
- */
- String name();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="fetch-group">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface FetchGroup {
- /**
- * (Required) The fetch group name.
- */
- String name();
-
- /**
- * (Optional) Indicates whether all relationship attributes
- * specified in the fetch group should be loaded.
- */
- boolean load() default true;
-
- /**
- * (Required) The list of attributes to fetch.
- */
- FetchAttribute[] attributes();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute" type="orm:fetch-attribute" minOccurs="1" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="load" type="xsd:boolean"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum FetchType { LAZY, EAGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="LAZY"/>
- <xsd:enumeration value="EAGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="field-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface FieldResult {
- String name();
- String column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="column" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="generated-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface GeneratedValue {
- GenerationType strategy() default AUTO;
- String generator() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:generation-type"/>
- <xsd:attribute name="generator" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="generation-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum GenerationType { TABLE, SEQUENCE, IDENTITY, AUTO };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="TABLE"/>
- <xsd:enumeration value="SEQUENCE"/>
- <xsd:enumeration value="IDENTITY"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Id {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"
- minOccurs="0"/>
- <xsd:element name="index" type="orm:index" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value"
- minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="enumerated" type="orm:enumerated"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="id-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface IdClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="id-validation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The IdValidation enum determines the type value that are valid for an Id.
- * By default null is not allowed, and 0 is not allow for singleton ids of long or int type.
- * The default value is ZERO for singleton ids, and NULL for composite ids.
- * This can be set using the @PrimaryKey annotation, or ClassDescriptor API.
- *
- * @see PrimaryKey
- * @see org.eclipse.persistence.descriptors.ClassDescriptor#setIdValidation(IdValidation)
- * @author James Sutherland
- * @since EclipseLink 1.0
- */
- public enum IdValidation {
- /**
- * Only null is not allowed as an id value, 0 is allowed.
- */
- NULL,
-
- /**
- * null and 0 are not allowed, (only int and long).
- */
- ZERO,
-
- /**
- * No id validation is done.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="NULL"/>
- <xsd:enumeration value="ZERO"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:simpleType name="cache-key-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Configures what type of Id value is used to store the object in the cache.
- * This can either be the basic Id value for simple singleton Ids,
- * or an optimized CacheKey type.
- *
- * @see PrimaryKey#cacheKeyType()
- * @see ClassDescriptor#setCacheKeyType(CacheKeyType)
- * @author James Sutherland
- * @since EclipseLink 2.1
- */
- public enum CacheKeyType {
- /**
- * This can only be used for simple singleton Ids, such as long/int/String.
- * This is the default for simple singleton Ids.
- */
- ID_VALUE,
-
- /**
- * Optimized cache key type that allows composite and complex values.
- * This is the default for composite or complex Ids.
- */
- CACHE_KEY,
-
- /**
- * The cache key type is automatically configured depending on what is optimal for the class.
- */
- AUTO
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ID_VALUE"/>
- <xsd:enumeration value="CACHE_KEY"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="inheritance">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Inheritance {
- InheritanceType strategy() default SINGLE_TABLE;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:inheritance-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="inheritance-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum InheritanceType
- { SINGLE_TABLE, JOINED, TABLE_PER_CLASS};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SINGLE_TABLE"/>
- <xsd:enumeration value="JOINED"/>
- <xsd:enumeration value="TABLE_PER_CLASS"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="instantiation-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * An InstantiationCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.InstantiationCopyPolicy
- * on an Entity. InstantiationCopyPolicy is the default CopyPolicy in
- * EclipseLink and therefore this configuration option is only used to
- * override other types of copy policies
- *
- * An InstantiationCopyPolicy should be specified on an Entity,
- * MappedSuperclass or Embeddable.
- *
- * Example:
- * @Entity
- * @InstantiationCopyPolicy
- */
- public @interface InstantiationCopyPolicy {
- }
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum JoinFetchType {
- /**
- * An inner join is used to fetch the related object.
- * This does not allow for null/empty values.
- */
- INNER,
-
- /**
- * An inner join is used to fetch the related object.
- * This allows for null/empty values.
- */
- OUTER,
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="INNER"/>
- <xsd:enumeration value="OUTER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="batch-fetch-type">
- <xsd:annotation>
- <xsd:documentation>
- public enum BatchFetchType {
- /**
- * This is the default form of batch reading.
- * The original query's selection criteria is joined with the batch query.
- */
- JOIN,
-
- /**
- * This uses an SQL EXISTS and a sub-select in the batch query instead of a join.
- * This has the advantage of not requiring an SQL DISTINCT which can have issues
- * with LOBs, or may be more efficient for some types of queries or on some databases.
- */
- EXISTS,
-
- /**
- * This uses an SQL IN clause in the batch query passing in the source object Ids.
- * This has the advantage of only selecting the objects not already contained in the cache,
- * and can work better with cursors, or if joins cannot be used.
- * This may only work for singleton Ids on some databases.
- */
- IN
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="JOIN"/>
- <xsd:enumeration value="EXISTS"/>
- <xsd:enumeration value="IN"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- JoinColumn[] inverseJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="inverse-join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string" />
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="lob">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Lob {}
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="lock-mode-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum LockModeType { READ, WRITE, OPTIMISTIC, OPTIMISTIC_FORCE_INCREMENT, PESSIMISTIC_READ, PESSIMISTIC_WRITE, PESSIMISTIC_FORCE_INCREMENT, NONE};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="READ"/>
- <xsd:enumeration value="WRITE"/>
- <xsd:enumeration value="OPTIMISTIC"/>
- <xsd:enumeration value="OPTIMISTIC_FORCE_INCREMENT"/>
- <xsd:enumeration value="PESSIMISTIC_READ"/>
- <xsd:enumeration value="PESSIMISTIC_WRITE"/>
- <xsd:enumeration value="PESSIMISTIC_FORCE_INCREMENT"/>
- <xsd:enumeration value="NONE"/>
-
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
-<xsd:complexType name="many-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by"
- minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key"
- minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class"
- minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="map-key-enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column"
- minOccurs="0"/>
- <xsd:element name="map-key-join-column"
- type="orm:map-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="1">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="many-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="maps-id" type="xsd:string"/>
- <xsd:attribute name="id" type="xsd:boolean"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="map-key">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKey {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="map-key-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="map-key-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyColumn {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default false;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="map-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default false;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="mapped-superclass">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for a mapped superclass. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- If this is the case then the defaulting rules will be recursively
- applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface MappedSuperclass{}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="additional-criteria" type="orm:additional-criteria" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking" minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="cache-interceptor" type="orm:cache-interceptor" minOccurs="0"/>
- <xsd:element name="fetch-group" type="orm:fetch-group" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="query-redirectors" type="orm:query-redirectors" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="parent-class" type="xsd:string"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="cacheable" type="xsd:boolean"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="named-native-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedNativeQuery {
- String name();
- String query();
- QueryHint[] hints() default {};
- Class resultClass() default void.class;
- String resultSetMapping() default ""; //named SqlResultSetMapping
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="hint" type="orm:query-hint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="named-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedQuery {
- String name();
- String query();
- LockModeType lockMode() default NONE;
- QueryHint[] hints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="lock-mode" type="orm:lock-mode-type" minOccurs="0"/>
- <xsd:element name="hint" type="orm:query-hint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
-</xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="named-stored-procedure-query">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A NamedStoredProcedureQuery annotation allows the definition of
- * queries that call stored procedures as named queries.
- * A NamedStoredProcedureQuery annotation may be defined on an Entity or
- * MappedSuperclass.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface NamedStoredProcedureQuery {
- /**
- * (Required) Unique name that references this stored procedure query.
- */
- String name();
-
- /**
- * (Optional) Query hints.
- */
- QueryHint[] hints() default {};
-
- /**
- * (Optional) Refers to the class of the result.
- */
- Class resultClass() default void.class;
-
- /**
- * (Optional) The name of the SQLResultMapping.
- */
- String resultSetMapping() default "";
-
- /**
- * (Required) The name of the stored procedure.
- */
- String procedureName();
-
- /**
- * (Optional) Whether the query should return a result set.
- */
- boolean returnsResultSet() default true;
-
- /**
- * (Optional) Defines arguments to the stored procedure.
- */
- StoredProcedureParameter[] parameters() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="parameter" type="orm:stored-procedure-parameter" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- <xsd:attribute name="procedure-name" type="xsd:string" use="required"/>
- <xsd:attribute name="returns-result-set" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="object-type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ObjectTypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence
- * field or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent
- * field or property.
- */
- Class objectType() default void.class;
-
- /**
- * (Required) Specify the conversion values to be used
- * with the object converter.
- */
- ConversionValue[] conversionValues();
-
- /**
- * (Optional) Specify a default object value. Used for
- * legacy data if the data value is missing.
- */
- String defaultObjectValue() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="conversion-value" type="orm:conversion-value" minOccurs="1" maxOccurs="unbounded"/>
- <xsd:element name="default-object-value" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
-<xsd:complexType name="one-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by"
- minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key"
- minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class"
- minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="map-key-enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column"
- minOccurs="0"/>
- <xsd:element name="map-key-join-column"
- type="orm:map-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="1">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="one-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- String mappedBy() default "";
- boolean orphanRemoval() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- <xsd:attribute name="maps-id" type="xsd:string"/>
- <xsd:attribute name="id" type="xsd:boolean"/>
-</xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="optimistic-locking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An optimistic-locking element is used to specify the type of
- * optimistic locking EclipseLink should use when updating or deleting
- * entities. An optimistic-locking specification is supported on
- * an entity or mapped-superclass.
- *
- * It is used in conjunction with the optimistic-locking-type.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface OptimisticLocking {
- /**
- * (Optional) The type of optimistic locking policy to use.
- */
- OptimisticLockingType type() default VERSION_COLUMN;
-
- /**
- * (Optional) For an optimistic locking policy of type
- * SELECTED_COLUMNS, this annotation member becomes a (Required)
- * field.
- */
- Column[] selectedColumns() default {};
-
- /**
- * (Optional) Specify where the optimistic locking policy should
- * cascade lock. Currently only supported with VERSION_COLUMN locking.
- */
- boolean cascade() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="selected-column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="type" type="orm:optimistic-locking-type"/>
- <xsd:attribute name="cascade" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="optimistic-locking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A simple type that is used within an optimistic-locking
- * specification to specify the type of optimistic-locking that
- * EclipseLink should use when updating or deleting entities.
- */
- public enum OptimisticLockingType {
- /**
- * Using this type of locking policy compares every field in the table
- * in the WHERE clause when doing an update or a delete. If any field
- * has been changed, an optimistic locking exception will be thrown.
- */
- ALL_COLUMNS,
-
- /**
- * Using this type of locking policy compares only the changed fields
- * in the WHERE clause when doing an update. If any field has been
- * changed, an optimistic locking exception will be thrown. A delete
- * will only compare the primary key.
- */
- CHANGED_COLUMNS,
-
- /**
- * Using this type of locking compares selected fields in the WHERE
- * clause when doing an update or a delete. If any field has been
- * changed, an optimistic locking exception will be thrown. Note that
- * the fields specified must be mapped and not be primary keys.
- */
- SELECTED_COLUMNS,
-
- /**
- * Using this type of locking policy compares a single version number
- * in the where clause when doing an update. The version field must be
- * mapped and not be the primary key.
- */
- VERSION_COLUMN
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ALL_COLUMNS"/>
- <xsd:enumeration value="CHANGED_COLUMNS"/>
- <xsd:enumeration value="SELECTED_COLUMNS"/>
- <xsd:enumeration value="VERSION_COLUMN"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-by">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderBy {
- String value() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="order-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderColumn {
- String name() default "";
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="correction-type" type="orm:order-column-correction-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-column-correction-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum OrderCorrectionType {
- READ,
- READ_WRITE,
- EXCEPTION
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="READ"/>
- <xsd:enumeration value="READ_WRITE"/>
- <xsd:enumeration value="EXCEPTION"/>
- </xsd:restriction>
- </xsd:simpleType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="post-load">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostLoad {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="post-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostPersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="post-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="post-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="pre-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PrePersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="pre-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="pre-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="primary-key">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The PrimaryKey annotation allows advanced configuration of the Id.
- * A validation policy can be given that allows specifying if zero is a valid id value.
- * The set of primary key columns can also be specified precisely.
- *
- * @author James Sutherland
- * @since EclipseLink 1.1
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface PrimaryKey {
- /**
- * (Optional) Configures what id validation is done.
- * By default 0 is not a valid id value, this can be used to allow 0 id values.
- */
- IdValidation validation() default IdValidation.ZERO;
-
- /**
- * (Optional) Configures what cache key type is used to store the object in the cache.
- * By default the type is determined by what type is optimal for the class.
- */
- CacheKeyType cacheKeyType() default CacheKeyType.AUTO;
-
- /**
- * (Optional) Used to specify the primary key columns directly.
- * This can be used instead of @Id if the primary key includes a non basic field,
- * such as a foreign key, or a inheritance discriminator, embedded, or transformation mapped field.
- */
- Column[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="validation" type="orm:id-validation"/>
- <xsd:attribute name="cache-key-type" type="orm:cache-key-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="primary-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface PrimaryKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="property">
- <xsd:annotation>
- <xsd:documentation>
-
- A user defined mapping's property.
- @Target({METHOD, FIELD, TYPE})
- @Retention(RUNTIME)
- public @interface Property {
- /**
- * Property name.
- */
- String name();
-
- /**
- * String representation of Property value,
- * converted to an instance of valueType.
- */
- String value();
-
- /**
- * Property value type.
- * The value converted to valueType by ConversionManager.
- * If specified must be a simple type that could be handled by
- * ConversionManager:
- * numerical, boolean, temporal.
- */
- Class valueType() default String.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- <xsd:attribute name="value-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="query-hint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface QueryHint {
- String name();
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="query-redirectors">
- <xsd:annotation>
- <xsd:documentation>
-
-@Target({TYPE}) @Retention(RUNTIME)
-public @interface QueryRedirectors {
-
- /**
- * This AllQueries Query Redirector will be applied to any executing object query
- * that does not have a more precise redirector (like the
- * ReadObjectQuery Redirector) or a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- *
- */
- Class allQueries() default void.class;
-
- /**
- * A Default ReadAll Query Redirector will be applied to any executing
- * ReadAllQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query through the getResultList() API this is the redirector that will be invoked
- */
- Class readAll() default void.class;
-
- /**
- * A Default ReadObject Query Redirector will be applied to any executing
- * ReadObjectQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query through the getSingleResult() API or EntityManager.find() this is the redirector that will be invoked
- */
- Class readObject() default void.class;
-
- /**
- * A Default ReportQuery Redirector will be applied to any executing
- * ReportQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query that contains agregate functions or selects multiple entities this is the redirector that will be invoked
- */
- Class report() default void.class;
-
- /**
- * A Default Update Query Redirector will be applied to any executing
- * UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.
- * In EclipseLink an UpdateObjectQuery is executed whenever flushing changes to the datasource.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class update() default void.class;
-
- /**
- * A Default Insert Query Redirector will be applied to any executing
- * InsertObjectQuery that does not have a redirector set directly on the query.
- * In EclipseLink an InsertObjectQuery is executed when persisting an object to the datasource.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class insert() default void.class;
-
- /**
- * A Default Delete Object Query Redirector will be applied to any executing
- * DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class delete() default void.class;
-
-}
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="all-queries" type="xsd:string"/>
- <xsd:attribute name="read-all" type="xsd:string"/>
- <xsd:attribute name="read-object" type="xsd:string"/>
- <xsd:attribute name="report" type="xsd:string"/>
- <xsd:attribute name="update" type="xsd:string"/>
- <xsd:attribute name="insert" type="xsd:string"/>
- <xsd:attribute name="delete" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="read-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * Unless the TransformationMapping is write-only, it should have a
- * ReadTransformer, it defines transformation of database column(s)
- * value(s)into attribute value.
- *
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReadTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.AttributeTransformer
- * interface. The class will be instantiated, its
- * buildAttributeValue will be used to create the value to be
- * assigned to the attribute.
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be assigned to the attribute (not assigns the value to
- * the attribute). Either transformerClass or method must be
- * specified, but not both.
- */
- String method() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="return-insert">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReturnInsert {
- /**
- * A ReturnInsert annotation allows for INSERT operations to return
- * values back into the object being written. This allows for table
- * default values, trigger or stored procedures computed values to
- * be set back into the object.
- */
- boolean returnOnly() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="return-only" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="secondary-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SecondaryTable {
- String name();
- String catalog() default "";
- String schema() default "";
- PrimaryKeyJoinColumn[] pkJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string" />
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="sequence-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface SequenceGenerator {
- String name();
- String sequenceName() default "";
- String catalog() default "";
- String schema() default "";
- int initialValue() default 1;
- int allocationSize() default 50;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="sequence-name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="sql-result-set-mapping">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SqlResultSetMapping {
- String name();
- EntityResult[] entities() default {};
- ColumnResult[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="entity-result" type="orm:entity-result"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="column-result" type="orm:column-result"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="stored-procedure-parameter">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A StoredProcedureParameter annotation is used within a
- * NamedStoredProcedureQuery annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface StoredProcedureParameter {
- /**
- * (Optional) The direction of the stored procedure parameter.
- */
- Direction direction() default IN;
-
- /**
- * (Optional) Stored procedure parameter name.
- */
- String name() default "";
-
- /**
- * (Required) The query parameter name.
- */
- String queryParameter();
-
- /**
- * (Optional) The type of Java class desired back from the procedure,
- * this is dependent on the type returned from the procedure.
- */
- Class type() default void.class;
-
- /**
- * (Optional) The JDBC type code, this dependent on the type returned
- * from the procedure.
- */
- int jdbcType() default -1;
-
- /**
- * (Optional) The JDBC type name, this may be required for ARRAY or
- * STRUCT types.
- */
- String jdbcTypeName() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="direction" type="orm:direction-type"/>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="query-parameter" type="xsd:string" use="required"/>
- <xsd:attribute name="type" type="xsd:string"/>
- <xsd:attribute name="jdbc-type" type="xsd:integer"/>
- <xsd:attribute name="jdbc-type-name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="struct-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface StructConverter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must
- * implement the EclipseLink interface
- * org.eclipse.persistence.mappings.converters.Converter
- */
- String converter();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="converter" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Table {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string" />
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="index">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Allow a database INDEX to be define when generating DDL.
- * The @Index can be defined on a Entity class, or on an attribute.
- * The column is defaulted when defined on a attribute.
- *
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({METHOD, FIELD, TYPE})
- @Retention(RUNTIME)
- public @interface Index {
- /** The name of the INDEX, defaults to INDEX_(table-name) */
- String name() default "";
-
- /** The schema of the INDEX */
- String schema() default "";
-
- /** The catalog of the INDEX */
- String catalog() default "";
-
- /** The table to define the index on, defaults to entities primary table. */
- String table() default "";
-
- boolean unique() default false;
-
- /**
- * Specify the set of columns to define the index on.
- * Not required when annotated on a field/method.
- */
- String[] columnNames() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column-name" type="xsd:string"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="table-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface TableGenerator {
- String name();
- String table() default "";
- String catalog() default "";
- String schema() default "";
- String pkColumnName() default "";
- String valueColumnName() default "";
- String pkColumnValue() default "";
- int initialValue() default 0;
- int allocationSize() default 50;
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string"/>
- <xsd:attribute name="pk-column-name" type="xsd:string"/>
- <xsd:attribute name="value-column-name" type="xsd:string"/>
- <xsd:attribute name="pk-column-value" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:simpleType name="temporal">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Temporal {
- TemporalType value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:temporal-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum TemporalType {
- DATE, // java.sql.Date
- TIME, // java.sql.Time
- TIMESTAMP // java.sql.Timestamp
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="DATE"/>
- <xsd:enumeration value="TIME"/>
- <xsd:enumeration value="TIMESTAMP"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="time-of-day">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface TimeOfDay {
- /**
- * (Optional) Hour of the day.
- */
- int hour() default 0;
-
- /**
- * (Optional) Minute of the day.
- */
- int minute() default 0;
-
- /**
- * (Optional) Second of the day.
- */
- int second() default 0;
-
- /**
- * (Optional) Millisecond of the day.
- */
- int millisecond() default 0;
-
- /**
- * Internal use. Do not modify.
- */
- boolean specified() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="hour" type="xsd:integer"/>
- <xsd:attribute name="minute" type="xsd:integer"/>
- <xsd:attribute name="second" type="xsd:integer"/>
- <xsd:attribute name="millisecond" type="xsd:integer"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="transformation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Transformation is an optional annotation for
- * org.eclipse.persistence.mappings.TransformationMapping.
- * TransformationMapping allows to map an attribute to one or more
- * database columns.
- *
- * Transformation annotation is an optional part of
- * TransformationMapping definition. Unless the TransformationMapping is
- * write-only, it should have a ReadTransformer, it defines
- * transformation of database column(s) value(s)into attribute value.
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Transformation {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) The optional element is a hint as to whether the value
- * of the field or property may be null. It is disregarded
- * for primitive types, which are considered non-optional.
- */
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="read-transformer" type="orm:read-transformer"/>
- <xsd:element name="write-transformer" type="orm:write-transformer" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="transient">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Transient {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface TypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence field
- * or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent field
- * or property.
- */
- Class objectType() default void.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="unique-constraint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface UniqueConstraint {
- String name() default "";
- String[] columnNames();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column-name" type="xsd:string"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- </xsd:complexType>
-
-<!-- **************************************************** -->
-
- <xsd:complexType name="variable-one-to-one">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * Variable one to one mappings are used to represent a pointer
- * references between a java object and an implementer of an interface.
- * This mapping is usually represented by a single pointer (stored in an
- * instance variable) between the source and target objects. In the
- * relational database tables, these mappings are normally implemented
- * using a foreign key and a type code.
- *
- * A VariableOneToOne can be specified within an Entity,
- * MappedSuperclass and Embeddable class.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface VariableOneToOne {
- /**
- * (Optional) The interface class that is the target of the
- * association. If not specified it will be inferred from the type
- * of the object being referenced.
- */
- Class targetInterface() default void.class;
-
- /**
- * (Optional) The operations that must be cascaded to the target of
- * the association.
- */
- CascadeType[] cascade() default {};
-
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) Whether the association is optional. If set to false
- * then a non-null relationship must always exist.
- */
- boolean optional() default true;
-
- /**
- * (Optional) The discriminator column will hold the type
- * indicators. If the DiscriminatorColumn is not specified, the name
- * of the discriminator column defaults to "DTYPE" and the
- * discriminator type to STRING.
- */
- DiscriminatorColumn discriminatorColumn() default @DiscriminatorColumn;
-
- /**
- * (Optional) The list of discriminator types that can be used with
- * this VariableOneToOne. If none are specified then those entities
- * within the persistence unit that implement the target interface
- * will be added to the list of types. The discriminator type will
- * default as follows:
- * - If DiscriminatorColumn type is STRING: Entity.name()
- * - If DiscriminatorColumn type is CHAR: First letter of the
- * Entity class
- * - If DiscriminatorColumn type is INTEGER: The next integer after
- * the highest integer explicitly added.
- */
- DiscriminatorClass[] discriminatorClasses() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column" minOccurs="0"/>
- <xsd:element name="discriminator-class" type="orm:discriminator-class" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-interface" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="version">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Version {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="index" type="orm:index" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="write-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- *
- * A single WriteTransformer may be specified directly on the method or
- * attribute. Multiple WriteTransformers should be wrapped into
- * WriteTransformers annotation. No WriteTransformers specified for
- * read-only mapping. Unless the TransformationMapping is write-only, it
- * should have a ReadTransformer, it defines transformation of database
- * column(s) value(s)into attribute value.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface WriteTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.FieldTransformer
- * interface. The class will be instantiated, its buildFieldValue
- * will be used to create the value to be written into the database
- * column. Note that for ddl generation and returning to be
- * supported the method buildFieldValue in the class should be
- * defined to return the relevant Java type, not just Object as
- * defined in the interface, for instance:
- * public Time buildFieldValue(Object instance, String fieldName, Session session).
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be written into the database column.
- * Note that for ddl generation and returning to be supported the
- * method should be defined to return a particular type, not just
- * Object, for instance:
- * public Time getStartTime().
- * The method may require a Transient annotation to avoid being
- * mapped as Basic by default.
- * Either transformerClass or method must be specified, but not both.
- */
- String method() default "";
-
- /**
- * Specify here the column into which the value should be written.
- * The only case when this could be skipped is if a single
- * WriteTransformer annotates an attribute - the attribute's name
- * will be used as a column name.
- */
- Column column() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <xsd:complexType name="batch-fetch">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A BatchFetch annotation can be used on any relationship mapping,
- * (OneToOne, ManyToOne, OneToMany, ManyToMany, ElementCollection, BasicCollection, BasicMap).
- * It allows the related objects to be batch read in a single query.
- * Batch fetching can also be set at the query level, and it is
- * normally recommended to do so as all queries may not require batching.
- *
- * @author James Sutherland
- * @since EclipseLink 2.1
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BatchFetch {
- /**
- * (Optional) The type of batch-fetch to use.
- * Either JOIN, EXISTS or IN.
- * JOIN is the default.
- */
- BatchFetchType value() default BatchFetchType.JOIN;
-
- /**
- * Define the default batch fetch size.
- * This is only used for IN type batch reading and defines
- * the number of keys used in each IN clause.
- * The default size is 256, or the query's pageSize for cursor queries.
- */
- int size() default -1;
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="type" type="orm:batch-fetch-type"/>
- <xsd:attribute name="size" type="xsd:integer"/>
- </xsd:complexType>
-
-</xsd:schema>
-
-
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_3.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_3.xsd
deleted file mode 100644
index fb0521a52f..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_orm_2_3.xsd
+++ /dev/null
@@ -1,5479 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ******************************************************************************************************************************* -->
-<!-- Copyright (c) 1998, 2010 Oracle. All rights reserved. -->
-<!-- This program and the accompanying materials are made available under the -->
-<!-- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0 -->
-<!-- which accompanies this distribution. -->
-<!-- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html -->
-<!-- and the Eclipse Distribution License is available at -->
-<!-- http://www.eclipse.org/org/documents/edl-v10.php. -->
-<!-- -->
-<!-- Contributors: -->
-<!-- Oracle - initial API and implementation from Oracle TopLink -->
-<!-- tware - update version number to 2.0 -->
-<!-- 12/2/2009-2.1 Guy Pelletier -->
-<!-- - 296289: Add current annotation metadata support on mapped superclasses to EclipseLink-ORM.XML Schema -->
-<!-- - 296612: Add current annotation only metadata support of return insert/update to the EclipseLink-ORM.XML Schema -->
-<!-- - formatted to match orm_2_0.xsd so that users can easily compare the two schemas -->
-<!-- 5/4/2010-2.1 Guy Pelletier -->
-<!-- - 227219: Expand EclipseLink-ORM.XML schema functionality for 2.1 release (update version to 2.1) -->
-<!-- 6/14/2010-2.2 Guy Pelletier -->
-<!-- - 247078: eclipselink-orm.xml schema should allow lob and enumerated on version and id mappings (update version to 2.2) -->
-<!-- 10/15/2010-2.2 Guy Pelletier -->
-<!-- - 322008: Improve usability of additional criteria applied to queries at the session/EM -->
-<!-- 03/23/2011-2.3 Guy Pelletier -->
-<!-- - 337323: Multi-tenant with shared schema support (part 1) -->
-<!-- ******************************************************************************************************************************* -->
-
-<!-- Java Persistence API object-relational mapping file schema -->
-<xsd:schema targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:orm="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.3">
-
- <xsd:annotation>
- <xsd:documentation>
- @(#)eclipselink_orm_2_3.xsd 2.3 March 23 2011
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:annotation>
- <xsd:documentation><![CDATA[
-
- This is the XML Schema for the native Eclipselink XML mapping file
- The file may be named "META-INF/eclipselink-orm.xml" in the persistence
- archive or it may be named some other name which would be
- used to locate the file as resource on the classpath.
- Object/relational mapping files must indicate the object/relational
- mapping file schema by using the persistence namespace:
-
- http://www.eclipse.org/eclipselink/xsds/persistence/orm
-
- and indicate the version of the schema by using the version element as shown below:
-
- <entity-mappings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.eclipse.org/eclipselink/xsds/persistence/orm
- eclipselink_orm_2_3.xsd
- version="2.3">
- ...
- </entity-mappings>
-
- ]]></xsd:documentation>
- </xsd:annotation>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="emptyType"/>
-
- <xsd:simpleType name="versionType">
- <xsd:restriction base="xsd:token">
- <xsd:pattern value="[0-9]+(\.[0-9]+)*"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:simpleType name="supported-versions-type">
- <xsd:restriction base="orm:versionType">
- <xsd:enumeration value="2.0"/>
- <xsd:enumeration value="2.1"/>
- <xsd:enumeration value="2.2"/>
- <xsd:enumeration value="2.3"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="access-methods">
- <xsd:annotation>
- <xsd:documentation>
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="get-method" type="xsd:string" use="required"/>
- <xsd:attribute name="set-method" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="additional-criteria">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An additional criteria can be specified at the Entity or MappedSuperclass
- * level. When specified at the mapped superclass level, it applies to all
- * inheriting entities unless those entities define their own additional
- * criteria, at which point the additional criteria from the mapped superclass
- * is ignored.
- *
- * The additional criteria supports any valid JPQL string and must use 'this'
- * as an alias to form your additional criteria. E.G.,
- *
- * @Entity
- * @AdditionalCriteria("this.nut.size = :NUT_SIZE and this.nut.color = :NUT_COLOR")
- * public class Bolt {...}
- *
- * Additional criteria parameters are also accepted and are set through
- * properties on the entity manager factory, or on an entity manager. When set
- * on the entity manager, the properties must be set before any query execution
- * and should not be changed for the life span of that entity manager.
- *
- * Properties set on the entity manager will override those similarly named
- * properties set on the entity manager factory.
- *
- * Additional criteria is not supported with any native queries.
- *
- * @author Guy Pelletier
- * @since EclipseLink 2.2
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface AdditionalCriteria {
- /**
- * (Required) The JPQL fragment to use as the additional criteria.
- */
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="criteria" type="xsd:string"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cache">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Cache annotation is used to set an
- * org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy
- * which sets objects in EclipseLink's identity maps to be invalid
- * following given rules. By default in EclipseLink, objects do not
- * expire in the cache. Several different policies are available to
- * allow objects to expire.
- *
- * @see org.eclipse.persistence.annotations.CacheType
- *
- * A Cache anotation may be defined on an Entity or MappedSuperclass.
- * In the case of inheritance, a Cache annotation should only be defined
- * on the root of the inheritance hierarchy.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Cache {
- /**
- * (Optional) The type of cache to use.
- */
- CacheType type() default SOFT_WEAK;
-
- /**
- * (Optional) The size of cache to use.
- */
- int size() default 100;
-
- /**
- * (Optional) Cached instances in the shared cache,
- * or only a per EntityManager isolated cache.
- * The default is shared.
- * @deprecated As of Eclipselink 2.2. See the attribute 'isolation'
- */
- @Deprecated
- boolean shared() default true;
-
- /**
- * (Optional) Controls the level of caching this Entity will use.
- * The default is CacheIsolationType.SHARED which has EclipseLink
- * Caching all Entities in the Shared Cache.
- * @see org.eclipse.persistence.config.CacheIsolationType
- */
- CacheIsolationType isolation() default SHARED;
-
- /**
- * (Optional) Expire cached instance after a fix period of time (ms).
- * Queries executed against the cache after this will be forced back
- * to the database for a refreshed copy
- */
- int expiry() default -1; // minus one is no expiry.
-
- /**
- * (Optional) Expire cached instance a specific time of day. Queries
- * executed against the cache after this will be forced back to the
- * database for a refreshed copy
- */
- TimeOfDay expiryTimeOfDay() default @TimeOfDay(specified=false);
-
- /**
- * (Optional) Force all queries that go to the database to always
- * refresh the cache.
- */
- boolean alwaysRefresh() default false;
-
- /**
- * (Optional) For all queries that go to the database, refresh the
- * cache only if the data received from the database by a query is
- * newer than the data in the cache (as determined by the optimistic
- * locking field)
- */
- boolean refreshOnlyIfNewer() default false;
-
- /**
- * (Optional) Setting to true will force all queries to bypass the
- * cache for hits but still resolve against the cache for identity.
- * This forces all queries to hit the database.
- */
- boolean disableHits() default false;
-
- /**
- * (Optional) The cache coordination mode.
- */
- CacheCoordinationType coordinationType() default SEND_OBJECT_CHANGES;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:choice>
- <xsd:element name="expiry" type="xsd:integer" minOccurs="0"/>
- <xsd:element name="expiry-time-of-day" type="orm:time-of-day" minOccurs="0"/>
- </xsd:choice>
- <xsd:attribute name="size" type="xsd:integer"/>
- <xsd:attribute name="shared" type="xsd:boolean"/>
- <xsd:attribute name="isolation" type="orm:cache-isolation-type"/>
- <xsd:attribute name="type" type="orm:cache-type"/>
- <xsd:attribute name="always-refresh" type="xsd:boolean"/>
- <xsd:attribute name="refresh-only-if-newer" type="xsd:boolean"/>
- <xsd:attribute name="disable-hits" type="xsd:boolean"/>
- <xsd:attribute name="coordination-type" type="orm:cache-coordination-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cache-interceptor">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface CacheInterceptor {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The CacheType enum is used with the Cache annotation for a
- * persistent class. It defines the type of IdentityMap/Cache used for
- * the class. By default the SOFT_WEAK cache type is used.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheType {
- /**
- * Provides full caching and guaranteed identity. Caches all objects
- * and does not remove them.
- * WARNING: This method may be memory intensive when many objects are
- * read.
- */
- FULL,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using weak references. This method allows full garbage
- * collection and provides full caching and guaranteed identity.
- */
- WEAK,
-
- /**
- * Similar to the FULL identity map except that the map holds the
- * objects using soft references. This method allows full garbage
- * collection when memory is low and provides full caching and
- * guaranteed identity.
- */
- SOFT,
-
- /**
- * Similar to the WEAK identity map except that it maintains a
- * most-frequently-used sub-cache. The size of the sub-cache is
- * proportional to the size of the identity map as specified by
- * descriptor's setIdentityMapSize() method. The sub-cache
- * uses soft references to ensure that these objects are
- * garbage-collected only if the system is low on memory.
- */
- SOFT_WEAK,
-
- /**
- * Identical to the soft cache weak (SOFT_WEAK) identity map except
- * that it uses hard references in the sub-cache. Use this identity
- * map if soft references do not behave properly on your platform.
- */
- HARD_WEAK,
-
- /**
- * A cache identity map maintains a fixed number of objects
- * specified by the application. Objects are removed from the cache
- * on a least-recently-used basis. This method allows object
- * identity for the most commonly used objects.
- * WARNING: Furnishes caching and identity, but does not guarantee
- * identity.
- */
- CACHE,
-
- /**
- * WARNING: Does not preserve object identity and does not cache
- * objects.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="FULL"/>
- <xsd:enumeration value="WEAK"/>
- <xsd:enumeration value="SOFT"/>
- <xsd:enumeration value="SOFT_WEAK"/>
- <xsd:enumeration value="HARD_WEAK"/>
- <xsd:enumeration value="CACHE"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-isolation-type">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * Options for how Entity instances should be shared within an EclipseLink Persistence Unit / ServerSession
- * @see ClassDescriptor#setCacheIsolationType(CacheIsolationType)
- * @author Gordon Yorke
- * @since EclipseLink 2.2
- */
- public enum CacheIsolationType {
-
- /**
- * Entity instances will be cached within the EntityManagerFactory/ServerSession level.
- * Any user queries for shared cache instances (ie Read-Only query hint) will return an Entity
- * instance that may be shared by multiple clients.
- *
- * This setting is the default isolation level.
- */
- SHARED,
-
- /**
- * Entity state information will be cached in the shared cache but Entity
- * instances will not be shared. Any user queries for shared cache instances
- * (ie Read-Only query hint) will return a new Entity instance with the cached state.
- * This will ensure the instance is <i>protected</i> from any concurrent
- * state change.
- */
- PROTECTED,
-
- /**
- * The Entity and its data is not stored in the shared cache but is
- * <i>isolated</i> to the Persistence Context/UnitOfWork or
- * IsolatedClientSession. This setting effectively disables second level
- * caching for this entity and should be used when users do not want caching for
- * a particular Entity.
- */
- ISOLATED;
-
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SHARED"/>
- <xsd:enumeration value="PROTECTED"/>
- <xsd:enumeration value="ISOLATED"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-coordination-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the Cache annotation.
- *
- * @see org.eclipse.persistence.annotations.Cache
- */
- public enum CacheCoordinationType {
- /**
- * Sends a list of changed objects including data about the changes.
- * This data is merged into the receiving cache.
- */
- SEND_OBJECT_CHANGES,
-
- /**
- * Sends a list of the identities of the objects that have changed.
- * The receiving cache invalidates the objects (rather than changing
- * any of the data)
- */
- INVALIDATE_CHANGED_OBJECTS,
-
- /**
- * Same as SEND_OBJECT_CHANGES except it also includes any newly
- * created objects from the transaction.
- */
- SEND_NEW_OBJECTS_WITH_CHANGES,
-
- /**
- * Does no cache coordination.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SEND_OBJECT_CHANGES"/>
- <xsd:enumeration value="INVALIDATE_CHANGED_OBJECTS"/>
- <xsd:enumeration value="SEND_NEW_OBJECTS_WITH_CHANGES"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="change-tracking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The ChangeTracking annotation is used to specify the
- * org.eclipse.persistence.descriptors.changetracking.ObjectChangePolicy
- * which computes changes sets for EclipseLink's UnitOfWork commit
- * process. An ObjectChangePolicy is stored on an Entity's descriptor.
- *
- * A ChangeTracking annotation may be specified on an Entity,
- * MappedSuperclass or Embeddable.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface ChangeTracking {
- /**
- * (Optional) The type of change tracking to use.
- */
- ChangeTrackingType value() default AUTO;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="type" type="orm:change-tracking-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="change-tracking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the ChangeTracking annotation.
- */
- public enum ChangeTrackingType {
- /**
- * An ATTRIBUTE change tracking type allows change tracking at the
- * attribute level of an object. Objects with changed attributes will
- * be processed in the commit process to include any changes in the
- * results of the commit. Unchanged objects will be ignored.
- */
- ATTRIBUTE,
-
- /**
- * An OBJECT change tracking policy allows an object to calculate for
- * itself whether it has changed. Changed objects will be processed in
- * the commit process to include any changes in the results of the
- * commit. Unchanged objects will be ignored.
- */
- OBJECT,
-
- /**
- * A DEFERRED change tracking policy defers all change detection to
- * the UnitOfWork's change detection process. Essentially, the
- * calculateChanges() method will run for all objects in a UnitOfWork.
- * This is the default ObjectChangePolicy
- */
- DEFERRED,
-
- /**
- * Will not set any change tracking policy.
- */
- AUTO
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ATTRIBUTE"/>
- <xsd:enumeration value="OBJECT"/>
- <xsd:enumeration value="DEFERRED"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="customizer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The Customizer annotation is used to specify a class that implements
- * the org.eclipse.persistence.config.DescriptorCustomizer
- * interface and is to run against an enetity's class descriptor after all
- * metadata processing has been completed.
- *
- * The Customizer annotation may be defined on an Entity, MappedSuperclass
- * or Embeddable class. In the case of inheritance, a Customizer is not
- * inherited from its parent classes.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Customizer {
- /**
- * (Required) Defines the name of the descriptor customizer class that
- * should be applied for the related entity or embeddable class.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="direction-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An enum that is used within the StoredProcedureParameter annotation.
- * It is used to specify the direction of the stored procedure
- * parameters of a named stored procedure query.
- */
- public enum Direction {
- /**
- * Input parameter
- */
- IN,
-
- /**
- * Output parameter
- */
- OUT,
-
- /**
- * Input and output parameter
- */
- IN_OUT,
-
- /**
- * Output cursor
- */
- OUT_CURSOR
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="IN"/>
- <xsd:enumeration value="OUT"/>
- <xsd:enumeration value="IN_OUT"/>
- <xsd:enumeration value="OUT_CURSOR"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:element name="entity-mappings">
- <xsd:complexType>
- <xsd:annotation>
- <xsd:documentation>
-
- The entity-mappings element is the root element of a mapping
- file. It contains the following four types of elements:
-
- 1. The persistence-unit-metadata element contains metadata
- for the entire persistence unit. It is undefined if this element
- occurs in multiple mapping files within the same persistence unit.
-
- 2. The package, schema, catalog and access elements apply to all of
- the entity, mapped-superclass and embeddable elements defined in
- the same file in which they occur.
-
- 3. The sequence-generator, table-generator, named-query,
- named-native-query and sql-result-set-mapping elements are global
- to the persistence unit. It is undefined to have more than one
- sequence-generator or table-generator of the same name in the same
- or different mapping files in a persistence unit. It is also
- undefined to have more than one named-query, named-native-query, or
- result-set-mapping of the same name in the same or different mapping
- files in a persistence unit.
-
- 4. The entity, mapped-superclass and embeddable elements each define
- the mapping information for a managed persistent class. The mapping
- information contained in these elements may be complete or it may
- be partial.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="persistence-unit-metadata"
- type="orm:persistence-unit-metadata"
- minOccurs="0"/>
- <xsd:element name="package" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type"
- minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0"/>
- <xsd:element name="tenant-discriminator-column" type="orm:tenant-discriminator-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="partitioning" type="orm:partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="replication-partitioning" type="orm:replication-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="round-robin-partitioning" type="orm:round-robin-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="pinned-partitioning" type="orm:pinned-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="range-partitioning" type="orm:range-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="value-partitioning" type="orm:value-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="hash-partitioning" type="orm:hash-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="union-partitioning" type="orm:union-partitioning" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-function-query" type="orm:named-stored-function-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-plsql-stored-procedure-query" type="orm:named-plsql-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-plsql-stored-function-query" type="orm:named-plsql-stored-function-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="plsql-record" type="orm:plsql-record" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="plsql-table" type="orm:plsql-table" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="mapped-superclass" type="orm:mapped-superclass"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="entity" type="orm:entity"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embeddable" type="orm:embeddable"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="version" type="orm:supported-versions-type"
- default="2.3" use="optional"/>
- </xsd:complexType>
- </xsd:element>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="existence-type">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * The ExistenceChecking annotation is used to specify the type of
- * checking EclipseLink should use when updating entities.
- *
- * An existence-checking specification is supported on an Entity or
- * MappedSuperclass annotation.
- */
- public @interface ExistenceChecking {
-
- /**
- * (Optional) Set the existence check for determining
- * if an insert or update should occur for an object.
- */
- ExistenceType value() default CHECK_CACHE;
- }
-
- /**
- * Assume that if the objects primary key does not include null and
- * it is in the cache, then it must exist.
- */
- CHECK_CACHE,
-
- /**
- * Perform does exist check on the database.
- */
- CHECK_DATABASE,
-
- /**
- * Assume that if the objects primary key does not include null then
- * it must exist. This may be used if the application guarantees or
- * does not care about the existence check.
- */
- ASSUME_EXISTENCE,
-
- /**
- * Assume that the object does not exist. This may be used if the
- * application guarantees or does not care about the existence check.
- * This will always force an insert to be called.
- */
- ASSUME_NON_EXISTENCE
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="CHECK_CACHE"/>
- <xsd:enumeration value="CHECK_DATABASE"/>
- <xsd:enumeration value="ASSUME_EXISTENCE"/>
- <xsd:enumeration value="ASSUME_NON_EXISTENCE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-metadata">
- <xsd:annotation>
- <xsd:documentation>
-
- Metadata that applies to the persistence unit and not just to
- the mapping file in which it is contained.
-
- If the xml-mapping-metadata-complete element is specified,
- the complete set of mapping metadata for the persistence unit
- is contained in the XML mapping files for the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="xml-mapping-metadata-complete" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-default-mappings" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="persistence-unit-defaults"
- type="orm:persistence-unit-defaults"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="persistence-unit-defaults">
- <xsd:annotation>
- <xsd:documentation>
-
- These defaults are applied to the persistence unit as a whole
- unless they are overridden by local annotation or XML
- element settings.
-
- schema - Used as the schema for all tables, secondary tables, join
- tables, collection tables, sequence generators, and table
- generators that apply to the persistence unit
- catalog - Used as the catalog for all tables, secondary tables, join
- tables, collection tables, sequence generators, and table
- generators that apply to the persistence unit
- delimited-identifiers - Used to treat database identifiers as
- delimited identifiers.
- access - Used as the access type for all managed classes in
- the persistence unit
- cascade-persist - Adds cascade-persist to the set of cascade options
- in all entity relationships of the persistence unit
- entity-listeners - List of default entity listeners to be invoked
- on each entity in the persistence unit.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="schema" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="catalog" type="xsd:string"
- minOccurs="0"/>
- <xsd:element name="delimited-identifiers" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="access" type="orm:access-type"
- minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods"
- minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="tenant-discriminator-column" type="orm:tenant-discriminator-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for an entity. Is allowed to be
- sparsely populated and used in conjunction with the annotations.
- Alternatively, the metadata-complete attribute can be used to
- indicate that no annotations on the entity class (and its fields
- or properties) are to be processed. If this is the case then
- the defaulting rules for the entity and its subelements will
- be recursively applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface Entity {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="multitenant" type="orm:multitenant" minOccurs="0"/>
- <xsd:element name="additional-criteria" type="orm:additional-criteria" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="table" type="orm:table" minOccurs="0"/>
- <xsd:element name="secondary-table" type="orm:secondary-table" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct" type="orm:struct" minOccurs="0"/>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="index" type="orm:index" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="inheritance" type="orm:inheritance" minOccurs="0"/>
- <xsd:choice>
- <xsd:sequence>
- <xsd:element name="discriminator-value" type="orm:discriminator-value" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column" minOccurs="0"/>
- </xsd:sequence>
- <xsd:element name="class-extractor" type="orm:class-extractor" minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking" minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="cache-interceptor" type="orm:cache-interceptor" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="fetch-group" type="orm:fetch-group" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-function-query" type="orm:named-stored-function-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-plsql-stored-procedure-query" type="orm:named-plsql-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-plsql-stored-function-query" type="orm:named-plsql-stored-function-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="plsql-record" type="orm:plsql-record" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="plsql-table" type="orm:plsql-table" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="query-redirectors" type="orm:query-redirectors" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="parent-class" type="xsd:string"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="cacheable" type="xsd:boolean"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:group name="partitioning-group">
- <xsd:sequence>
- <xsd:element name="partitioning" type="orm:partitioning" minOccurs="0"/>
- <xsd:element name="replication-partitioning" type="orm:replication-partitioning" minOccurs="0"/>
- <xsd:element name="round-robin-partitioning" type="orm:round-robin-partitioning" minOccurs="0"/>
- <xsd:element name="pinned-partitioning" type="orm:pinned-partitioning" minOccurs="0"/>
- <xsd:element name="range-partitioning" type="orm:range-partitioning" minOccurs="0"/>
- <xsd:element name="value-partitioning" type="orm:value-partitioning" minOccurs="0"/>
- <xsd:element name="hash-partitioning" type="orm:hash-partitioning" minOccurs="0"/>
- <xsd:element name="union-partitioning" type="orm:union-partitioning" minOccurs="0"/>
- <xsd:element name="partitioned" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- </xsd:group>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="access-type">
- <xsd:annotation>
- <xsd:documentation>
-
- This element determines how the persistence provider accesses the
- state of an entity or embedded object.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="PROPERTY"/>
- <xsd:enumeration value="FIELD"/>
- <xsd:enumeration value="VIRTUAL"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="association-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AssociationOverride {
- String name();
- JoinColumn[] joinColumns() default{};
- JoinTable joinTable() default @JoinTable;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="attribute-override">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface AttributeOverride {
- String name();
- Column column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="attributes">
- <xsd:annotation>
- <xsd:documentation>
-
- This element contains the entity field or property mappings.
- It may be sparsely populated to include only a subset of the
- fields or properties. If metadata-complete for the entity is true
- then the remainder of the attributes will be defaulted according
- to the default rules.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="id" type="orm:id"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded-id" type="orm:embedded-id"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="basic" type="orm:basic"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-collection" type="orm:basic-collection" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="basic-map" type="orm:basic-map" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="version" type="orm:version"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-one" type="orm:many-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-many" type="orm:one-to-many"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="one-to-one" type="orm:one-to-one"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="variable-one-to-one" type="orm:variable-one-to-one" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="many-to-many" type="orm:many-to-many"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="element-collection" type="orm:element-collection"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="embedded" type="orm:embedded"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transformation" type="orm:transformation" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="transient" type="orm:transient" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="structure" type="orm:structure" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="array" type="orm:array" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Basic {
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="index" type="orm:index" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="lob" type="orm:lob"/>
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="enumerated" type="orm:enumerated"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator" minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="return-insert" type="orm:return-insert" minOccurs="0"/>
- <xsd:element name="return-update" type="orm:emptyType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicCollection {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the value column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:eclipselink-collection-table" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="basic-map">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BasicMap {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime that
- * the value must be eagerly fetched. The LAZY strategy is a hint to
- * the persistence provider runtime. If not specified, defaults to
- * LAZY.
- */
- FetchType fetch() default LAZY;
-
- /**
- * (Optional) The name of the data column that holds the direct map
- * key. If the name on te key column is "", the name will default to:
- * the name of the property or field; "_KEY".
- */
- Column keyColumn() default @Column;
-
- /**
- * (Optional) Specify the key converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the direct map key.
- */
- Convert keyConverter() default @Convert;
-
- /**
- * (Optional) The name of the data column that holds the direct
- * collection data. Defaults to the property or field name.
- */
- Column valueColumn() default @Column;
-
- /**
- * (Optional) Specify the value converter. Default is equivalent to
- * specifying @Convert("none"), meaning no converter will be added to
- * the value column mapping.
- */
- Convert valueConverter() default @Convert;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="key-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="key-converter" type="xsd:string" minOccurs="0"/>
- <xsd:element name="value-column" type="orm:column" minOccurs="0"/>
- <xsd:element name="value-converter" type="xsd:string" minOccurs="0"/>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:eclipselink-collection-table" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="cascade-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum CascadeType { ALL, PERSIST, MERGE, REMOVE, REFRESH, DETACH};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade-all" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-persist" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-merge" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-remove" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-refresh" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="cascade-detach" type="orm:emptyType"
- minOccurs="0"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="class-extractor">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A ClassExtractor allows for a user defined class indicator in place of
- * providing a discriminator column. The class has the following restrictions:
-
- * - It must extend the org.eclipse.persistence.descriptors.ClassExtractor
- * class and implement the extractClassFromRow(Record, Session) method.
- * - That method must take a database row (a Record/Map) as an argument and
- * must return the class to use for that row.
- *
- * This method will be used to decide which class to instantiate when reading
- * from the database. It is the application's responsibility to populate any
- * typing information in the database required to determine the class from the
- * row.
- *
- * The ClassExtractor must only be set on the root of an entity class or
- * sub-hierarchy in which a different inheritance strategy is applied. The
- * ClassExtractor can only be used with the SINGLE_TABLE and JOINED inheritance
- * strategies.
- *
- * If a ClassExtractor is used then a DiscriminatorColumn cannot be used. A
- * ClassExtractor also cannot be used on either the root or its subclasses.
- *
- * In addition, for more complex configurations using a ClassExtractor and a
- * SINGLE_TABLE strategy, the descriptor's withAllSubclasses and onlyInstances
- * expressions should be set through the ClassExtractor's initialize method.
- *
- * @see org.eclipse.persistence.descriptors.InheritancePolicy.setWithAllSubclassesExpression(Expression)
- * @see org.eclipse.persistence.descriptors.InheritancePolicy.setOnlyInstancesExpression(Expression)
- *
- * @author Guy Pelletier
- * @since EclipseLink 2.1
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface ClassExtractor {
- /**
- * (Required) Defines the name of the class extractor that should be
- * applied to this entity's descriptor.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="clone-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CloneCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.CloneCopyPolicy on an
- * Entity. A CloneCopyPolicy must specify at one or both of the "method"
- * or "workingCopyMethod". "workingCopyMethod" is used to clone objects
- * that will be returned to the user as they are registered in
- * EclipseLink's transactional mechanism, the UnitOfWork. "method" will
- * be used for the clone that is used for comparison in conjunction with
- * EclipseLink's DeferredChangeDetectionPolicy
- *
- * A CloneCopyPolicy should be specified on an Entity, MappedSuperclass
- * or Embeddable.
- *
- * Example:
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(method="myCloneMethod", workingCopyMethod="myWorkingCopyCloneMethod")
- *
- * or:
- *
- * @Entity
- * @CloneCopyPolicy(workingCopyMethodName="myWorkingCopyClone")
- */
- public @interface CloneCopyPolicy {
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified this defines
- * a method that will be used to create a clone that will be used
- * for comparison by
- * EclipseLink's DeferredChangeDetectionPolicy
- */
- String method();
-
- /**
- * (Optional)
- * Either method or workingCopyMethod must be specified
- * this defines a method that will be used to create a clone that
- * will be used to create the object returned when registering an
- * Object in an EclipseLink UnitOfWork
- */
- String workingCopyMethod();
-
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="method" type="xsd:string"/>
- <xsd:attribute name="working-copy-method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface CollectionTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string" />
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="eclipselink-collection-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface CollectionTable {
- /**
- * (Optional) The name of the collection table. If it is not
- * specified, it is defaulted to the concatenation of the following:
- * the name of the source entity; "_" ; the name of the relationship
- * property or field of the source entity.
- */
- String name() default "";
-
- /**
- * (Optional) The catalog of the table. It defaults to the persistence
- * unit default catalog.
- */
- String catalog() default "";
-
- /**
- * (Optional) The schema of the table. It defaults to the persistence
- * unit default schema.
- */
- String schema() default "";
-
- /**
- * (Optional) Used to specify a primary key column that is used as a
- * foreign key to join to another table. If the source entity uses a
- * composite primary key, a primary key join column must be specified
- * for each field of the composite primary key. In a single primary
- * key case, a primary key join column may optionally be specified.
- * Defaulting will apply otherwise as follows:
- * name, the same name as the primary key column of the primary table
- * of the source entity. referencedColumnName, the same name of
- * primary key column of the primary table of the source entity.
- */
- PrimaryKeyJoinColumn[] primaryKeyJoinColumns() default {};
-
- /**
- * (Optional) Unique constraints that are to be placed on the table.
- * These are only used if table generation is in effect.
- */
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column" type="orm:primary-key-join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string" />
- </xsd:complexType>
-
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Column {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="conversion-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface ConversionValue {
- /**
- * (Required) Specify the database value.
- */
- String dataValue();
-
- /**
- * (Required) Specify the object value.
- */
- String objectValue();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="data-value" type="xsd:string" use="required"/>
- <xsd:attribute name="object-value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Converter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must implement
- * the org.eclipse.persistence.mappings.converters.Converter interface.
- */
- Class converterClass();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A Partitioning is used to partition the data for a class across multiple difference databases
- * or across a database cluster such as Oracle RAC.
- * Partitioning can provide improved scalability by allowing multiple database machines to service requests.
- * This annotation configures a custom PartitioningPolicy.
- *
- * If multiple partitions are used to process a single transaction, JTA should be used for proper XA transaction support.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- * Partition policies are globally named to allow reuse,
- * the partitioning policy must also be set using the @Partitioned annotation to be used.
- *
- * @see Partitioned
- * @see org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Partitioning {
- String name();
-
- /**
- * (Required) Full package.class name of a subclass of PartitioningPolicy.
- */
- Class partitioningClass();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="hash-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * HashPartitioning partitions access to a database cluster by the hash of a field value from the object,
- * such as the object's location, or tenant.
- * The hash indexes into the list of connection pools.
- * All write or read request for object's with that hash value are sent to the server.
- * If a query does not include the field as a parameter, then it can either be sent
- * to all server's and unioned, or left to the sesion's default behavior.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.HashPartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface HashPartitioning {
- String name();
-
- /**
- * The database column or query parameter to partition queries by.
- * This is the table column name, not the class attribute name.
- * The column value must be included in the query and should normally be part of the object's Id.
- * This can also be the name of a query parameter.
- * If a query does not contain the field the query will not be partitioned.
- */
- Column partitionColumn();
-
- /**
- * List of connection pool names to partition across.
- */
- String[] connectionPools();
-
- /**
- * Defines if queries that do not contain the partition field should be sent
- * to every database and have the result unioned.
- */
- boolean unionUnpartitionableQueries() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="partition-column" type="orm:column"/>
- <xsd:element name="connection-pool" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="union-unpartitionable-queries" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="range-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * RangePartitioningPolicy partitions access to a database cluster by a field value from the object,
- * such as the object's id, location, or tenant.
- * Each server is assigned a range of values.
- * All write or read request for object's with that value are sent to the server.
- * If a query does not include the field as a parameter, then it can either be sent
- * to all server's and unioned, or left to the sesion's default behavior.
- *
- * If multiple partitions are used to process a single transaction, JTA should be used for proper XA transaction support.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- * Partition policies are globally named to allow reuse,
- * the partitioning policy must also be set using the @Partitioned annotation to be used.
- *
- * @see Partitioned
- * @see org.eclipse.persistence.descriptors.partitioning.RangePartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface RangePartitioning {
- String name();
-
- /**
- * The database column or query parameter to partition queries by.
- * This is the table column name, not the class attribute name.
- * The column value must be included in the query and should normally be part of the object's Id.
- * This can also be the name of a query parameter.
- * If a query does not contain the field the query will not be partitioned.
- */
- Column partitionColumn();
-
- /**
- * (Required) List of connection pool names to load balance across.
- */
- RangePartition[] partitions();
-
- /**
- * Defines if queries that do not contain the partition field should be sent
- * to every database and have the result unioned.
- */
- boolean unionUnpartitionableQueries() default false;
-
- /** The type of the start and end values. */
- Class partitionValueType() default String.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="partition-column" type="orm:column"/>
- <xsd:element name="partition" type="orm:range-partition" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="union-unpartitionable-queries" type="xsd:boolean"/>
- <xsd:attribute name="partition-value-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="range-partition">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Represent a specific range partition.
- * Values = startValue and = endValue will be routed to the connection pool.
- *
- * @see RangePartitioningPolicy
- * @see org.eclipse.persistence.descriptors.partitioning.RangePartitioningPolicy
- * @see org.eclipse.persistence.descriptors.partitioning.RangePartition
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface RangePartition {
- /** The String representation of the range start value. */
- String startValue() default "";
- /** The String representation of the range start value. */
- String endValue() default "";
- /** The connection pool to route queries to for this range. */
- String connectionPool();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="start-value" type="xsd:string"/>
- <xsd:attribute name="end-value" type="xsd:string"/>
- <xsd:attribute name="connection-pool" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="value-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * ValuePartitioning partitions access to a database cluster by a field value from the object,
- * such as the object's location, or tenant.
- * Each value is assigned a specific server.
- * All write or read request for object's with that value are sent to the server.
- * If a query does not include the field as a parameter, then it can either be sent
- * to all server's and unioned, or left to the sesion's default behavior.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.ValuePartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ValuePartitioning {
- String name();
-
- /**
- * The database column or query parameter to partition queries by.
- * This is the table column name, not the class attribute name.
- * The column value must be included in the query and should normally be part of the object's Id.
- * This can also be the name of a query parameter.
- * If a query does not contain the field the query will not be partitioned.
- */
- Column partitionColumn();
-
- /** Store the value partitions. Each partition maps a value to a connectionPool. */
- ValuePartition[] partitions();
-
- /** The type of the start and end values. */
- Class partitionValueType() default String.class;
-
- /** The default connection pool is used for any unmapped values. */
- String defaultConnectionPool();
-
- /**
- * Defines if queries that do not contain the partition field should be sent
- * to every database and have the result unioned.
- */
- boolean unionUnpartitionableQueries() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="partition-column" type="orm:column"/>
- <xsd:element name="partition" type="orm:value-partition" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="union-unpartitionable-queries" type="xsd:boolean"/>
- <xsd:attribute name="default-connection-pool" type="xsd:string"/>
- <xsd:attribute name="partition-value-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="value-partition">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Represent a specific value partition.
- * The value will be routed to the connection pool.
- *
- * @see ValuePartitioningPolicy
- * @see org.eclipse.persistence.descriptors.partitioning.ValuePartitioningPolicy
- * @see org.eclipse.persistence.descriptors.partitioning.ValuePartition
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ValuePartition {
- /** The String representation of the range start value. */
- String value() default "";
-
- /** The connection pool to route queries to for this value. */
- String connectionPool();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- <xsd:attribute name="connection-pool" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="round-robin-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * RoundRobinPartitioning sends requests in a round robin fashion to the set of connection pools.
- * It is for load-balancing read queries across a cluster of database machines.
- * It requires that the full database be replicated on each machine, so does not support partitioning.
- * The data should either be read-only, or writes should be replicated on the database.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.RoundRobinPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface RoundRobinPartitioning {
- String name();
-
- /**
- * (Required) List of connection pool names to load balance across.
- */
- String[] connectionPools();
-
- /**
- * This allows for a set of database to be written to and kept in synch,
- * and have reads load-balanced across the databases.
- */
- boolean replicateWrites() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="connection-pool" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="replicate-writes" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="replication-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * ReplicationPartitioning sends requests to a set of connection pools.
- * It is for replicating data across a cluster of database machines.
- * Only modification queries are replicated.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.ReplicationPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReplicationPartitioning {
- String name();
-
- /**
- * (Required) List of connection pool names to load balance across.
- */
- String[] connectionPools();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="connection-pool" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="union-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * UnionPartitioning sends queries to all connection pools and unions the results.
- * This is for queries or relationships that span partitions when partitioning is used,
- * such as on a ManyToMany cross partition relationship.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.UnionPartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface UnionPartitioning {
- String name();
-
- /**
- * (Required) List of connection pool names to load balance across.
- */
- String[] connectionPools();
-
- /**
- * Defines if write queries should be replicated.
- * Writes are normally not replicated when unioning,
- * but can be for ManyToMany relationships, when the join table needs to be replicated.
- */
- boolean replicateWrites() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="connection-pool" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="replicate-writes" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pinned-partitioning">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * PinnedPartitioning pins requests to a single connection pool.
- *
- * Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit.
- *
- * @see org.eclipse.persistence.descriptors.partitioning.PinnedPartitioningPolicy
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface PinnedPartitioning {
- String name();
-
- /**
- * The connection pool name to pin queries to.
- */
- String connectionPool();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="connection-pool" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="column-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface ColumnResult {
- String name();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A CopyPolicy is used to set a
- * org.eclipse.persistence.descriptors.copying.CopyPolicy on an Entity.
- * It is required that a class that implements
- * org.eclipse.persistence.descriptors.copying.CopyPolicy be specified
- * as the argument.
- *
- * A CopyPolicy should be specified on an Entity, MappedSuperclass or
- * Embeddable.
- *
- * For instance:
- * @Entity
- * @CopyPolicy("example.MyCopyPolicy")
- */
- public @interface CopyPolicy {
-
- /*
- * (Required)
- * This defines the class of the copy policy. It must specify a class
- * that implements org.eclipse.persistence.descriptors.copying.CopyPolicy
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorColumn {
- String name() default "DTYPE";
- DiscriminatorType discriminatorType() default STRING;
- String columnDefinition() default "";
- int length() default 31;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="discriminator-type" type="orm:discriminator-type"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="discriminator-class">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A DiscriminatorClass is used within a VariableOneToOne annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface DiscriminatorClass {
- /**
- * (Required) The discriminator to be stored on the database.
- */
- String discriminator();
-
- /**
- * (Required) The class to the instantiated with the given
- * discriminator.
- */
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="discriminator" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum DiscriminatorType { STRING, CHAR, INTEGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="STRING"/>
- <xsd:enumeration value="CHAR"/>
- <xsd:enumeration value="INTEGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="discriminator-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface DiscriminatorValue {
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="element-collection">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ElementCollection {
- Class targetClass() default void.class;
- FetchType fetch() default LAZY;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by"
- minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key"
- minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class"
- minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="map-key-enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column"
- type="orm:map-key-column"
- minOccurs="0"/>
- <xsd:element name="map-key-join-column"
- type="orm:map-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="lob"
- type="orm:lob"
- minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:sequence>
- <xsd:element name="attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="collection-table" type="orm:collection-table"
- minOccurs="0"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-class" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- <xsd:attribute name="composite-member" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="array">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Array types are extended object-relational data-types supported by some databases.
- * Array types are user define types in the database such as VARRAY types on Oracle.
- * Arrays can contains basic types (VARCHAR) or other Struct types, and can be stored in
- * a column or in a Struct type.
- * This annotation can be defined on a collection attribute that is
- * persisted to an Array type. The collection can be of basic types, or embeddable
- * class mapped using a Struct.
- *
- * @see org.eclipse.persistence.mappings.structures.ObjectRelationalDataTypeDescriptor
- * @see org.eclipse.persistence.mappings.structures.ArrayMapping
- * @see org.eclipse.persistence.mappings.structures.ObjectArrayMapping
- * @author James Sutherland
- * @since EclipseLink 2.3
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Array {
- /**
- * (Optional) The basic or embeddable class that is the element
- * type of the collection. This element is optional only if the
- * collection field or property is defined using Java generics,
- * and must be specified otherwise. It defaults to the
- * paramterized type of the collection when defined using
- * generics.
- */
- Class targetClass() default void.class;
-
- /**
- * (Required) The database name of the database array structure type.
- */
- String databaseType();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="lob"
- type="orm:lob"
- minOccurs="0"/>
- <xsd:element name="convert" type="xsd:string" minOccurs="0"/>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="2">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="database-type" type="xsd:string" use="required"/>
- <xsd:attribute name="target-class" type="xsd:string"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embeddable">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for embeddable objects. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- in the class. If this is the case then the defaulting rules will
- be recursively applied.
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Embeddable {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="struct" type="orm:struct" minOccurs="0"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="plsql-record" type="orm:plsql-record" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="plsql-table" type="orm:plsql-table" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="parent-class" type="xsd:string"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Embedded {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="embedded-id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface EmbeddedId {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-listener">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines an entity listener to be invoked at lifecycle events
- for the entities that list this listener.
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-listeners">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface EntityListeners {
- Class[] value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="entity-listener" type="orm:entity-listener"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="entity-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface EntityResult {
- Class entityClass();
- FieldResult[] fields() default {};
- String discriminatorColumn() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field-result" type="orm:field-result"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="entity-class" type="xsd:string" use="required"/>
- <xsd:attribute name="discriminator-column" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="enum-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum EnumType {
- ORDINAL,
- STRING
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ORDINAL"/>
- <xsd:enumeration value="STRING"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="enumerated">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Enumerated {
- EnumType value() default ORDINAL;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:enum-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="fetch-attribute">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface FetchAttribute {
- /**
- * (Required) The fetch attribute name.
- */
- String name();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="fetch-group">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface FetchGroup {
- /**
- * (Required) The fetch group name.
- */
- String name();
-
- /**
- * (Optional) Indicates whether all relationship attributes
- * specified in the fetch group should be loaded.
- */
- boolean load() default true;
-
- /**
- * (Required) The list of attributes to fetch.
- */
- FetchAttribute[] attributes();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="attribute" type="orm:fetch-attribute" minOccurs="1" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="load" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum FetchType { LAZY, EAGER };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="LAZY"/>
- <xsd:enumeration value="EAGER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="field-result">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface FieldResult {
- String name();
- String column();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="column" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="generated-value">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface GeneratedValue {
- GenerationType strategy() default AUTO;
- String generator() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:generation-type"/>
- <xsd:attribute name="generator" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="generation-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum GenerationType { TABLE, SEQUENCE, IDENTITY, AUTO };
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="TABLE"/>
- <xsd:enumeration value="SEQUENCE"/>
- <xsd:enumeration value="IDENTITY"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="id">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Id {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"
- minOccurs="0"/>
- <xsd:element name="index" type="orm:index" minOccurs="0"/>
- <xsd:element name="generated-value" type="orm:generated-value"
- minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="enumerated" type="orm:enumerated"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="id-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface IdClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="id-validation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The IdValidation enum determines the type value that are valid for an Id.
- * By default null is not allowed, and 0 is not allow for singleton ids of long or int type.
- * The default value is ZERO for singleton ids, and NULL for composite ids.
- * This can be set using the @PrimaryKey annotation, or ClassDescriptor API.
- *
- * @see PrimaryKey
- * @see org.eclipse.persistence.descriptors.ClassDescriptor#setIdValidation(IdValidation)
- * @author James Sutherland
- * @since EclipseLink 1.0
- */
- public enum IdValidation {
- /**
- * Only null is not allowed as an id value, 0 is allowed.
- */
- NULL,
-
- /**
- * null and 0 are not allowed, (only int and long).
- */
- ZERO,
-
- /**
- * No id validation is done.
- */
- NONE
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="NULL"/>
- <xsd:enumeration value="ZERO"/>
- <xsd:enumeration value="NONE"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="cache-key-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Configures what type of Id value is used to store the object in the cache.
- * This can either be the basic Id value for simple singleton Ids,
- * or an optimized CacheKey type.
- *
- * @see PrimaryKey#cacheKeyType()
- * @see ClassDescriptor#setCacheKeyType(CacheKeyType)
- * @author James Sutherland
- * @since EclipseLink 2.1
- */
- public enum CacheKeyType {
- /**
- * This can only be used for simple singleton Ids, such as long/int/String.
- * This is the default for simple singleton Ids.
- */
- ID_VALUE,
-
- /**
- * Optimized cache key type that allows composite and complex values.
- * This is the default for composite or complex Ids.
- */
- CACHE_KEY,
-
- /**
- * The cache key type is automatically configured depending on what is optimal for the class.
- */
- AUTO
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ID_VALUE"/>
- <xsd:enumeration value="CACHE_KEY"/>
- <xsd:enumeration value="AUTO"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="inheritance">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Inheritance {
- InheritanceType strategy() default SINGLE_TABLE;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="strategy" type="orm:inheritance-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="inheritance-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum InheritanceType
- { SINGLE_TABLE, JOINED, TABLE_PER_CLASS};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SINGLE_TABLE"/>
- <xsd:enumeration value="JOINED"/>
- <xsd:enumeration value="TABLE_PER_CLASS"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="instantiation-copy-policy">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * An InstantiationCopyPolicy is used to set an
- * org.eclipse.persistence.descriptors.copying.InstantiationCopyPolicy
- * on an Entity. InstantiationCopyPolicy is the default CopyPolicy in
- * EclipseLink and therefore this configuration option is only used to
- * override other types of copy policies
- *
- * An InstantiationCopyPolicy should be specified on an Entity,
- * MappedSuperclass or Embeddable.
- *
- * Example:
- * @Entity
- * @InstantiationCopyPolicy
- */
- public @interface InstantiationCopyPolicy {
- }
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum JoinFetchType {
- /**
- * An inner join is used to fetch the related object.
- * This does not allow for null/empty values.
- */
- INNER,
-
- /**
- * An inner join is used to fetch the related object.
- * This allows for null/empty values.
- */
- OUTER,
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="INNER"/>
- <xsd:enumeration value="OUTER"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="batch-fetch-type">
- <xsd:annotation>
- <xsd:documentation>
- public enum BatchFetchType {
- /**
- * This is the default form of batch reading.
- * The original query's selection criteria is joined with the batch query.
- */
- JOIN,
-
- /**
- * This uses an SQL EXISTS and a sub-select in the batch query instead of a join.
- * This has the advantage of not requiring an SQL DISTINCT which can have issues
- * with LOBs, or may be more efficient for some types of queries or on some databases.
- */
- EXISTS,
-
- /**
- * This uses an SQL IN clause in the batch query passing in the source object Ids.
- * This has the advantage of only selecting the objects not already contained in the cache,
- * and can work better with cursors, or if joins cannot be used.
- * This may only work for singleton Ids on some databases.
- */
- IN
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="JOIN"/>
- <xsd:enumeration value="EXISTS"/>
- <xsd:enumeration value="IN"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="join-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface JoinTable {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- JoinColumn[] joinColumns() default {};
- JoinColumn[] inverseJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="inverse-join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string" />
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="lob">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Lob {}
-
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="lock-mode-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum LockModeType { READ, WRITE, OPTIMISTIC, OPTIMISTIC_FORCE_INCREMENT, PESSIMISTIC_READ, PESSIMISTIC_WRITE, PESSIMISTIC_FORCE_INCREMENT, NONE};
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="READ"/>
- <xsd:enumeration value="WRITE"/>
- <xsd:enumeration value="OPTIMISTIC"/>
- <xsd:enumeration value="OPTIMISTIC_FORCE_INCREMENT"/>
- <xsd:enumeration value="PESSIMISTIC_READ"/>
- <xsd:enumeration value="PESSIMISTIC_WRITE"/>
- <xsd:enumeration value="PESSIMISTIC_FORCE_INCREMENT"/>
- <xsd:enumeration value="NONE"/>
-
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="many-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by"
- minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key"
- minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class"
- minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="map-key-enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column"
- minOccurs="0"/>
- <xsd:element name="map-key-join-column"
- type="orm:map-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="1">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="many-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface ManyToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="maps-id" type="xsd:string"/>
- <xsd:attribute name="id" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKey {
- String name() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key-class">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyClass {
- Class value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyColumn {
- String name() default "";
- boolean unique() default false;
- boolean nullable() default false;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- int length() default 255;
- int precision() default 0; // decimal precision
- int scale() default 0; // decimal scale
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="precision" type="xsd:int"/>
- <xsd:attribute name="scale" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="map-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface MapKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- boolean unique() default false;
- boolean nullable() default false;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- String table() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="mapped-superclass">
- <xsd:annotation>
- <xsd:documentation>
-
- Defines the settings and mappings for a mapped superclass. Is
- allowed to be sparsely populated and used in conjunction with
- the annotations. Alternatively, the metadata-complete attribute
- can be used to indicate that no annotations are to be processed
- If this is the case then the defaulting rules will be recursively
- applied.
-
- @Target(TYPE) @Retention(RUNTIME)
- public @interface MappedSuperclass{}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="multitenant" type="orm:multitenant" minOccurs="0"/>
- <xsd:element name="additional-criteria" type="orm:additional-criteria" minOccurs="0"/>
- <xsd:element name="customizer" type="orm:customizer" minOccurs="0"/>
- <xsd:element name="change-tracking" type="orm:change-tracking" minOccurs="0"/>
- <xsd:element name="id-class" type="orm:id-class" minOccurs="0"/>
- <xsd:element name="primary-key" type="orm:primary-key" minOccurs="0"/>
- <xsd:element name="optimistic-locking" type="orm:optimistic-locking" minOccurs="0"/>
- <xsd:element name="cache" type="orm:cache" minOccurs="0"/>
- <xsd:element name="cache-interceptor" type="orm:cache-interceptor" minOccurs="0"/>
- <xsd:element name="fetch-group" type="orm:fetch-group" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="converter" type="orm:converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="type-converter" type="orm:type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="struct-converter" type="orm:struct-converter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="copy-policy" type="orm:copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="instantiation-copy-policy" type="orm:instantiation-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="clone-copy-policy" type="orm:clone-copy-policy" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="sequence-generator" type="orm:sequence-generator"
- minOccurs="0"/>
- <xsd:element name="table-generator" type="orm:table-generator"
- minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- <xsd:element name="named-query" type="orm:named-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-native-query" type="orm:named-native-query"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-procedure-query" type="orm:named-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-stored-function-query" type="orm:named-stored-function-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-plsql-stored-procedure-query" type="orm:named-plsql-stored-procedure-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="named-plsql-stored-function-query" type="orm:named-plsql-stored-function-query" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="plsql-record" type="orm:plsql-record" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="plsql-table" type="orm:plsql-table" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="sql-result-set-mapping"
- type="orm:sql-result-set-mapping"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="query-redirectors" type="orm:query-redirectors" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="exclude-default-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="exclude-superclass-listeners" type="orm:emptyType"
- minOccurs="0"/>
- <xsd:element name="entity-listeners" type="orm:entity-listeners"
- minOccurs="0"/>
- <xsd:element name="pre-persist" type="orm:pre-persist" minOccurs="0"/>
- <xsd:element name="post-persist" type="orm:post-persist"
- minOccurs="0"/>
- <xsd:element name="pre-remove" type="orm:pre-remove" minOccurs="0"/>
- <xsd:element name="post-remove" type="orm:post-remove" minOccurs="0"/>
- <xsd:element name="pre-update" type="orm:pre-update" minOccurs="0"/>
- <xsd:element name="post-update" type="orm:post-update" minOccurs="0"/>
- <xsd:element name="post-load" type="orm:post-load" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attribute-override" type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="association-override"
- type="orm:association-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="attributes" type="orm:attributes" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="class" type="xsd:string" use="required"/>
- <xsd:attribute name="parent-class" type="xsd:string"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="cacheable" type="xsd:boolean"/>
- <xsd:attribute name="metadata-complete" type="xsd:boolean"/>
- <xsd:attribute name="read-only" type="xsd:boolean"/>
- <xsd:attribute name="existence-checking" type="orm:existence-type"/>
- <xsd:attribute name="exclude-default-mappings" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="multitenant">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface Multitenant {
- /**
- * (Optional) Specify the multi-tenant strategy to use.
- */
- MultitenantType value() default MultitenantType.SINGLE_TABLE;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="tenant-discriminator-column" type="orm:tenant-discriminator-column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="type" type="orm:multitenant-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="multitenant-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum MultitenantType {
- /**
- * Specifies that table(s) the entity maps to includes rows for multiple
- * tenants. The tenant discriminator column(s) are used with application
- * context values to limit what a persistence context can access.
- */
- SINGLE_TABLE,
-
- /**
- * Specifies that different tables are used for each tenant. The table scan
- * be uniquely identified by name, schema/tablespace.
- */
- TABLE_PER_TENANT,
-
- /**
- * Specifies that the DB will handle the tenant filtering on all SELECT,
- * UPDATE and DELETE queries. Using this type assumes that the platform
- * used with your persistence unit does indeed support VPD.
- */
- VPD
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="SINGLE_TABLE"/>
- <xsd:enumeration value="TABLE_PER_TENANT"/>
- <xsd:enumeration value="VPD"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-native-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedNativeQuery {
- String name();
- String query();
- QueryHint[] hints() default {};
- Class resultClass() default void.class;
- String resultSetMapping() default ""; //named SqlResultSetMapping
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="hint" type="orm:query-hint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-query">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface NamedQuery {
- String name();
- String query();
- LockModeType lockMode() default NONE;
- QueryHint[] hints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="query" type="xsd:string"/>
- <xsd:element name="lock-mode" type="orm:lock-mode-type" minOccurs="0"/>
- <xsd:element name="hint" type="orm:query-hint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-stored-procedure-query">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A NamedStoredProcedureQuery annotation allows the definition of
- * queries that call stored procedures as named queries.
- * A NamedStoredProcedureQuery annotation may be defined on an Entity or
- * MappedSuperclass.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface NamedStoredProcedureQuery {
- /**
- * (Required) Unique name that references this stored procedure query.
- */
- String name();
-
- /**
- * (Optional) Query hints.
- */
- QueryHint[] hints() default {};
-
- /**
- * (Optional) Refers to the class of the result.
- */
- Class resultClass() default void.class;
-
- /**
- * (Optional) The name of the SQLResultMapping.
- */
- String resultSetMapping() default "";
-
- /**
- * (Required) The name of the stored procedure.
- */
- String procedureName();
-
- /**
- * (Optional) Whether the query should return a result set.
- */
- boolean returnsResultSet() default true;
-
- /**
- * (Optional) Defines if the stored procedure returns multiple result sets.
- * This is only relevant on databases that support multiple result sets from stored procedures.
- */
- boolean multipleResultSets() default false;
-
- /**
- * (Optional) Defines if the stored procedure should be called by index or by name.
- * By index requires that the StoredProcedureParameter are defined in the same order as the procedure on the database.
- * By name requires the database platform support naming procedure parameters.
- */
- boolean callByIndex() default false;
-
- /**
- * (Optional) Defines arguments to the stored procedure.
- */
- StoredProcedureParameter[] parameters() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="parameter" type="orm:stored-procedure-parameter" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- <xsd:attribute name="procedure-name" type="xsd:string" use="required"/>
- <xsd:attribute name="returns-result-set" type="xsd:boolean"/>
- <xsd:attribute name="multiple-result-sets" type="xsd:boolean"/>
- <xsd:attribute name="call-by-index" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-stored-function-query">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A NamedStoredFunctionQuery annotation allows the definition of
- * queries that call stored function as named queries.
- * A NamedStoredFunctionQuery annotation may be defined on an Entity or
- * MappedSuperclass.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface NamedStoredFunctionQuery {
- /**
- * (Required) Unique name that references this stored procedure query.
- */
- String name();
-
- /**
- * (Optional) Query hints.
- */
- QueryHint[] hints() default {};
-
- /**
- * (Optional) The name of the SQLResultMapping.
- */
- String resultSetMapping() default "";
-
- /**
- * (Required) The name of the stored procedure.
- */
- String functionName();
-
- /**
- * (Optional) Defines if the stored procedure should be called by index or by name.
- * By index requires that the StoredProcedureParameter are defined in the same order as the procedure on the database.
- * By name requires the database platform support naming procedure parameters.
- */
- boolean callByIndex() default false;
-
- /**
- * (Optional) Defines arguments to the stored procedure.
- */
- StoredProcedureParameter[] parameters() default {};
-
- /**
- * (Required) Defines return of the stored function.
- */
- StoredProcedureParameter[] returnParameter();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="parameter" type="orm:stored-procedure-parameter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="return-parameter" type="orm:stored-procedure-parameter" minOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- <xsd:attribute name="function-name" type="xsd:string" use="required"/>
- <xsd:attribute name="call-by-index" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-plsql-stored-function-query">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A NamedPLSQLStoredFunctionQuery annotation allows the definition of queries that
- * call PLSQL stored functions as named queries.
- * The PLSQL support adds support for complex PLSQL types such as RECORD and TABLE types,
- * that are not accessible from JDBC.
- *
- * A NamedPLSQLStoredFunctionQuery annotation may be defined on an Entity or
- * MappedSuperclass.
- *
- * @author James Sutherland
- * @since EclipseLink 2.3
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface NamedPLSQLStoredFunctionQuery {
- /**
- * (Required) Unique name that references this stored procedure query.
- */
- String name();
-
- /**
- * (Optional) Query hints.
- */
- QueryHint[] hints() default {};
-
- /**
- * (Optional) The name of the SQLResultMapping.
- */
- String resultSetMapping() default "";
-
- /**
- * (Required) The name of the stored procedure.
- */
- String functionName();
-
- /**
- * (Optional) Defines the parameters to the stored procedure.
- */
- PLSQLParameter[] parameters() default {};
-
- /**
- * (Required) Defines the return value of the stored function.
- */
- PLSQLParameter returnParameter();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="parameter" type="orm:plsql-parameter" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="return-parameter" type="orm:plsql-parameter" minOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- <xsd:attribute name="function-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="named-plsql-stored-procedure-query">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A PLSQLNamedStoredProcedureQuery annotation allows the definition of queries that
- * call PLSQL stored procedures as named queries.
- * The PLSQL support adds support for complex PLSQL types such as RECORD and TABLE types,
- * that are not accessible from JDBC.
- *
- * A PLSQLNamedStoredProcedureQuery annotation may be defined on an Entity or
- * MappedSuperclass.
- *
- * @author James Sutherland
- * @since EclipseLink 2.3
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface NamedPLSQLStoredProcedureQuery {
- /**
- * (Required) Unique name that references this stored procedure query.
- */
- String name();
-
- /**
- * (Optional) Query hints.
- */
- QueryHint[] hints() default {};
-
- /**
- * (Optional) Refers to the class of the result.
- */
- Class resultClass() default void.class;
-
- /**
- * (Optional) The name of the SQLResultMapping.
- */
- String resultSetMapping() default "";
-
- /**
- * (Required) The name of the stored procedure.
- */
- String procedureName();
-
- /**
- * (Optional) Defines the parameters to the stored procedure.
- */
- PLSQLParameter[] parameters() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="hint" type="orm:query-hint" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="parameter" type="orm:plsql-parameter" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="result-class" type="xsd:string"/>
- <xsd:attribute name="result-set-mapping" type="xsd:string"/>
- <xsd:attribute name="procedure-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="plsql-record">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A PLSQLRecord annotation is used to define a database PLSQL RECORD type.
- * This type can be used within PLSQL procedure calls.
- *
- * @see NamedPLSQLStoredProcedureQuery
- * @author James Sutherland
- * @since EclipseLink 2.3
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface PLSQLRecord {
-
- /**
- * (Required) The name of the record type in the database.
- */
- String name();
-
- /**
- * (Required) The name of the database OBJECT TYPE that mirrors the record's structure.
- * The record will be converted to/from this type so it can be passed through JDBC.
- */
- String compatibleType();
-
- /**
- * (Optional) The Java class to map the object-type to.
- * This class must be mapped using a @Struct annotation.
- */
- Class javaType() default void.class;
-
- /**
- * (Required) Defines the fields in the record type.
- */
- PLSQLParameter[] fields();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field" type="orm:plsql-parameter" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="compatible-type" type="xsd:string"/>
- <xsd:attribute name="java-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="plsql-table">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A PLSQLRecord annotation is used to define a database PLSQL RECORD type.
- * This type can be used within PLSQL procedure calls.
- *
- * @see NamedPLSQLStoredProcedureQuery
- * @author James Sutherland
- * @since EclipseLink 2.3
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface PLSQLRecord {
-
- /**
- * (Required) The name of the record type in the database.
- */
- String name();
-
- /**
- * (Required) The name of the database OBJECT TYPE that mirrors the record's structure.
- * The record will be converted to/from this type so it can be passed through JDBC.
- */
- String compatibleType();
-
- /**
- * (Optional) The Java class to map the object-type to.
- * This class must be mapped using a @Struct annotation.
- */
- Class javaType() default void.class;
-
- /**
- * (Required) Defines the fields in the record type.
- */
- PLSQLParameter[] fields();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="compatible-type" type="xsd:string"/>
- <xsd:attribute name="java-type" type="xsd:string"/>
- <xsd:attribute name="nested-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="object-type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ObjectTypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence
- * field or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent
- * field or property.
- */
- Class objectType() default void.class;
-
- /**
- * (Required) Specify the conversion values to be used
- * with the object converter.
- */
- ConversionValue[] conversionValues();
-
- /**
- * (Optional) Specify a default object value. Used for
- * legacy data if the data value is missing.
- */
- String defaultObjectValue() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="conversion-value" type="orm:conversion-value" minOccurs="1" maxOccurs="unbounded"/>
- <xsd:element name="default-object-value" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="one-to-many">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToMany {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default LAZY;
- String mappedBy() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="order-by" type="orm:order-by"
- minOccurs="0"/>
- <xsd:element name="order-column" type="orm:order-column"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key" type="orm:map-key"
- minOccurs="0"/>
- <xsd:sequence>
- <xsd:element name="map-key-class" type="orm:map-key-class"
- minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-temporal"
- type="orm:temporal"
- minOccurs="0"/>
- <xsd:element name="map-key-enumerated"
- type="orm:enumerated"
- minOccurs="0"/>
- <xsd:element name="map-key-convert" type="xsd:string" minOccurs="0"/>
- <xsd:choice>
- <xsd:element name="map-key-attribute-override"
- type="orm:attribute-override"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="map-key-association-override" type="orm:association-override" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="map-key-column" type="orm:map-key-column"
- minOccurs="0"/>
- <xsd:element name="map-key-join-column"
- type="orm:map-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- </xsd:choice>
- <xsd:choice minOccurs="0" maxOccurs="1">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:choice>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="one-to-one">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OneToOne {
- Class targetEntity() default void.class;
- CascadeType[] cascade() default {};
- FetchType fetch() default EAGER;
- boolean optional() default true;
- String mappedBy() default "";
- boolean orphanRemoval() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:choice>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-table" type="orm:join-table"
- minOccurs="0"/>
- </xsd:choice>
- <xsd:element name="cascade" type="orm:cascade-type"
- minOccurs="0"/>
- <xsd:element name="cascade-on-delete" type="xsd:boolean" minOccurs="0"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="join-fetch" type="orm:join-fetch-type" minOccurs="0"/>
- <xsd:element name="batch-fetch" type="orm:batch-fetch" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-entity" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mapped-by" type="xsd:string"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- <xsd:attribute name="maps-id" type="xsd:string"/>
- <xsd:attribute name="id" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="optimistic-locking">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * An optimistic-locking element is used to specify the type of
- * optimistic locking EclipseLink should use when updating or deleting
- * entities. An optimistic-locking specification is supported on
- * an entity or mapped-superclass.
- *
- * It is used in conjunction with the optimistic-locking-type.
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface OptimisticLocking {
- /**
- * (Optional) The type of optimistic locking policy to use.
- */
- OptimisticLockingType type() default VERSION_COLUMN;
-
- /**
- * (Optional) For an optimistic locking policy of type
- * SELECTED_COLUMNS, this annotation member becomes a (Required)
- * field.
- */
- Column[] selectedColumns() default {};
-
- /**
- * (Optional) Specify where the optimistic locking policy should
- * cascade lock. Currently only supported with VERSION_COLUMN locking.
- */
- boolean cascade() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="selected-column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="type" type="orm:optimistic-locking-type"/>
- <xsd:attribute name="cascade" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="optimistic-locking-type">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A simple type that is used within an optimistic-locking
- * specification to specify the type of optimistic-locking that
- * EclipseLink should use when updating or deleting entities.
- */
- public enum OptimisticLockingType {
- /**
- * Using this type of locking policy compares every field in the table
- * in the WHERE clause when doing an update or a delete. If any field
- * has been changed, an optimistic locking exception will be thrown.
- */
- ALL_COLUMNS,
-
- /**
- * Using this type of locking policy compares only the changed fields
- * in the WHERE clause when doing an update. If any field has been
- * changed, an optimistic locking exception will be thrown. A delete
- * will only compare the primary key.
- */
- CHANGED_COLUMNS,
-
- /**
- * Using this type of locking compares selected fields in the WHERE
- * clause when doing an update or a delete. If any field has been
- * changed, an optimistic locking exception will be thrown. Note that
- * the fields specified must be mapped and not be primary keys.
- */
- SELECTED_COLUMNS,
-
- /**
- * Using this type of locking policy compares a single version number
- * in the where clause when doing an update. The version field must be
- * mapped and not be the primary key.
- */
- VERSION_COLUMN
- }
-
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="ALL_COLUMNS"/>
- <xsd:enumeration value="CHANGED_COLUMNS"/>
- <xsd:enumeration value="SELECTED_COLUMNS"/>
- <xsd:enumeration value="VERSION_COLUMN"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-by">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderBy {
- String value() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="order-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface OrderColumn {
- String name() default "";
- boolean nullable() default true;
- boolean insertable() default true;
- boolean updatable() default true;
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="nullable" type="xsd:boolean"/>
- <xsd:attribute name="insertable" type="xsd:boolean"/>
- <xsd:attribute name="updatable" type="xsd:boolean"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="correction-type" type="orm:order-column-correction-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="order-column-correction-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum OrderCorrectionType {
- READ,
- READ_WRITE,
- EXCEPTION
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="READ"/>
- <xsd:enumeration value="READ_WRITE"/>
- <xsd:enumeration value="EXCEPTION"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-load">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostLoad {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostPersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="post-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PostUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-persist">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PrePersist {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-remove">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreRemove {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="pre-update">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD}) @Retention(RUNTIME)
- public @interface PreUpdate {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="method-name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="primary-key">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * The PrimaryKey annotation allows advanced configuration of the Id.
- * A validation policy can be given that allows specifying if zero is a valid id value.
- * The set of primary key columns can also be specified precisely.
- *
- * @author James Sutherland
- * @since EclipseLink 1.1
- */
- @Target({TYPE})
- @Retention(RUNTIME)
- public @interface PrimaryKey {
- /**
- * (Optional) Configures what id validation is done.
- * By default 0 is not a valid id value, this can be used to allow 0 id values.
- */
- IdValidation validation() default IdValidation.ZERO;
-
- /**
- * (Optional) Configures what cache key type is used to store the object in the cache.
- * By default the type is determined by what type is optimal for the class.
- */
- CacheKeyType cacheKeyType() default CacheKeyType.AUTO;
-
- /**
- * (Optional) Used to specify the primary key columns directly.
- * This can be used instead of @Id if the primary key includes a non basic field,
- * such as a foreign key, or a inheritance discriminator, embedded, or transformation mapped field.
- */
- Column[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="validation" type="orm:id-validation"/>
- <xsd:attribute name="cache-key-type" type="orm:cache-key-type"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="primary-key-join-column">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface PrimaryKeyJoinColumn {
- String name() default "";
- String referencedColumnName() default "";
- String columnDefinition() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="referenced-column-name" type="xsd:string"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="property">
- <xsd:annotation>
- <xsd:documentation>
-
- A user defined mapping's property.
- @Target({METHOD, FIELD, TYPE})
- @Retention(RUNTIME)
- public @interface Property {
- /**
- * Property name.
- */
- String name();
-
- /**
- * String representation of Property value,
- * converted to an instance of valueType.
- */
- String value();
-
- /**
- * Property value type.
- * The value converted to valueType by ConversionManager.
- * If specified must be a simple type that could be handled by
- * ConversionManager:
- * numerical, boolean, temporal.
- */
- Class valueType() default String.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- <xsd:attribute name="value-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="query-hint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface QueryHint {
- String name();
- String value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="query-redirectors">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface QueryRedirectors {
-
- /**
- * This AllQueries Query Redirector will be applied to any executing object query
- * that does not have a more precise redirector (like the
- * ReadObjectQuery Redirector) or a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- *
- */
- Class allQueries() default void.class;
-
- /**
- * A Default ReadAll Query Redirector will be applied to any executing
- * ReadAllQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query through the getResultList() API this is the redirector that will be invoked
- */
- Class readAll() default void.class;
-
- /**
- * A Default ReadObject Query Redirector will be applied to any executing
- * ReadObjectQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query through the getSingleResult() API or EntityManager.find() this is the redirector that will be invoked
- */
- Class readObject() default void.class;
-
- /**
- * A Default ReportQuery Redirector will be applied to any executing
- * ReportQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- * For users executing a JPA Query that contains agregate functions or selects multiple entities this is the redirector that will be invoked
- */
- Class report() default void.class;
-
- /**
- * A Default Update Query Redirector will be applied to any executing
- * UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.
- * In EclipseLink an UpdateObjectQuery is executed whenever flushing changes to the datasource.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class update() default void.class;
-
- /**
- * A Default Insert Query Redirector will be applied to any executing
- * InsertObjectQuery that does not have a redirector set directly on the query.
- * In EclipseLink an InsertObjectQuery is executed when persisting an object to the datasource.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class insert() default void.class;
-
- /**
- * A Default Delete Object Query Redirector will be applied to any executing
- * DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.
- * Query redirectors allow the user to intercept query execution preventing
- * it or alternately performing some side effect like auditing.
- */
- Class delete() default void.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="all-queries" type="xsd:string"/>
- <xsd:attribute name="read-all" type="xsd:string"/>
- <xsd:attribute name="read-object" type="xsd:string"/>
- <xsd:attribute name="report" type="xsd:string"/>
- <xsd:attribute name="update" type="xsd:string"/>
- <xsd:attribute name="insert" type="xsd:string"/>
- <xsd:attribute name="delete" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="read-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * Unless the TransformationMapping is write-only, it should have a
- * ReadTransformer, it defines transformation of database column(s)
- * value(s)into attribute value.
- *
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReadTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.AttributeTransformer
- * interface. The class will be instantiated, its
- * buildAttributeValue will be used to create the value to be
- * assigned to the attribute.
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be assigned to the attribute (not assigns the value to
- * the attribute). Either transformerClass or method must be
- * specified, but not both.
- */
- String method() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="return-insert">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface ReturnInsert {
- /**
- * A ReturnInsert annotation allows for INSERT operations to return
- * values back into the object being written. This allows for table
- * default values, trigger or stored procedures computed values to
- * be set back into the object.
- */
- boolean returnOnly() default false;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="return-only" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="secondary-table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SecondaryTable {
- String name();
- String catalog() default "";
- String schema() default "";
- PrimaryKeyJoinColumn[] pkJoinColumns() default {};
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="primary-key-join-column"
- type="orm:primary-key-join-column"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string" />
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="sequence-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface SequenceGenerator {
- String name();
- String sequenceName() default "";
- String catalog() default "";
- String schema() default "";
- int initialValue() default 1;
- int allocationSize() default 50;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="sequence-name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="sql-result-set-mapping">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface SqlResultSetMapping {
- String name();
- EntityResult[] entities() default {};
- ColumnResult[] columns() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="entity-result" type="orm:entity-result"
- minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="column-result" type="orm:column-result"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="stored-procedure-parameter">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A StoredProcedureParameter annotation is used within a
- * NamedStoredProcedureQuery annotation.
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface StoredProcedureParameter {
- /**
- * (Optional) The direction of the stored procedure parameter.
- */
- Direction direction() default IN;
-
- /**
- * (Optional) Stored procedure parameter name.
- */
- String name() default "";
-
- /**
- * (Required) The query parameter name.
- */
- String queryParameter();
-
- /**
- * (Optional) Define if the parameter is required, or optional and defaulted by the procedure.
- */
- boolean optional() default false;
-
- /**
- * (Optional) The type of Java class desired back from the procedure,
- * this is dependent on the type returned from the procedure.
- */
- Class type() default void.class;
-
- /**
- * (Optional) The JDBC type code, this dependent on the type returned
- * from the procedure.
- */
- int jdbcType() default -1;
-
- /**
- * (Optional) The JDBC type name, this may be required for ARRAY or
- * STRUCT types.
- */
- String jdbcTypeName() default "";
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="direction" type="orm:direction-type"/>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="query-parameter" type="xsd:string" use="required"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="type" type="xsd:string"/>
- <xsd:attribute name="jdbc-type" type="xsd:integer"/>
- <xsd:attribute name="jdbc-type-name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="plsql-parameter">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * A PLSQLParameter annotation is used within a
- * NamedPLSQLStoredProcedureQuery or PLSQLRecord annotation.
- *
- * @see NamedPLSQLStoredProcedureQuery
- * @see PLSQLRecord
- * @author James Sutherland
- * @since EclipseLink 2.3
- */
- @Target({})
- @Retention(RUNTIME)
- public @interface PLSQLParameter {
- /**
- * (Optional) The direction of the stored procedure parameter.
- */
- Direction direction() default IN;
-
- /**
- * (Required) Stored procedure parameter name.
- */
- String name() default "";
-
- /**
- * (Optional) The query parameter name.
- */
- String queryParameter();
-
- /**
- * (Optional) Define if the parameter is required, or optional and defaulted by the procedure.
- */
- boolean optional() default false;
-
- /**
- * (Optional) The database data-type for the paramter.
- * This either one of the type constants defined in OraclePLSQLTypes, or JDBCTypes,
- * or a custom record or table type name.
- * @see PLSQLRecord
- * @see OraclePLSQLTypes
- * @see JDBCTypes
- */
- String databaseType() default "VARCHAR";
-
- /**
- * (Optional) The max length of the field value.
- */
- int length() default 255;
-
- /**
- * (Optional) If a numeric, the max scale value.
- */
- int scale() default 0;
-
- /**
- * (Optional) If a numeric, the max precision value.
- */
- int precision() default 0;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="direction" type="orm:direction-type"/>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="query-parameter" type="xsd:string"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="database-type" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:integer"/>
- <xsd:attribute name="scale" type="xsd:integer"/>
- <xsd:attribute name="precision" type="xsd:integer"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="struct-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface StructConverter {
- /**
- * (Required) Name this converter. The name should be unique across
- * the whole persistence unit.
- */
- String name();
-
- /**
- * (Required) The converter class to be used. This class must
- * implement the EclipseLink interface
- * org.eclipse.persistence.mappings.converters.Converter
- */
- String converter();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="converter" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="struct">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Struct types are extended object-relational data-types supported by some databases.
- * Struct types are user define types in the database such as OBJECT types on Oracle.
- * Structs can normally contains Arrays (VARRAY) or other Struct types, and can be stored in
- * a column or a table.
- * This annotation define a class to map to a database Struct type.
- * The class should normally be an Embeddable, but could also be an Entity if stored in a object table.
- *
- * @see org.eclipse.persistence.mappings.structures.ObjectRelationalDataTypeDescriptor
- * @see org.eclipse.persistence.mappings.structures.StructureMapping
- * @author James Sutherland
- * @since EclipseLink 2.3
- */
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Struct {
- /**
- * (Required) The database name of the database structure type.
- */
- String name();
-
- /**
- * (Optional) Defines the order of the fields contained in the database structure type.
- */
- String[] fields() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="structure">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Struct types are extended object-relational data-types supported by some databases.
- * Struct types are user define types in the database such as OBJECT types on Oracle.
- * Structs can normally contains Arrays (VARRAY) or other Struct types, and can be stored in
- * a column or a table.
- * This annotation can be defined on a field/method to define an StructureMapping to an embedded Struct type.
- * The target Embeddable must be mapped using the Struct annotation.
- *
- * @see Struct
- * @see org.eclipse.persistence.mappings.structures.ObjectRelationalDataTypeDescriptor
- * @see org.eclipse.persistence.mappings.structures.StructureMapping
- * @author James Sutherland
- * @since EclipseLink 2.3
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Structure {
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE}) @Retention(RUNTIME)
- public @interface Table {
- String name() default "";
- String catalog() default "";
- String schema() default "";
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string" />
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="index">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Allow a database INDEX to be define when generating DDL.
- * The @Index can be defined on a Entity class, or on an attribute.
- * The column is defaulted when defined on a attribute.
- *
- * @author James Sutherland
- * @since EclipseLink 2.2
- */
- @Target({METHOD, FIELD, TYPE})
- @Retention(RUNTIME)
- public @interface Index {
- /** The name of the INDEX, defaults to INDEX_(table-name) */
- String name() default "";
-
- /** The schema of the INDEX */
- String schema() default "";
-
- /** The catalog of the INDEX */
- String catalog() default "";
-
- /** The table to define the index on, defaults to entities primary table. */
- String table() default "";
-
- boolean unique() default false;
-
- /**
- * Specify the set of columns to define the index on.
- * Not required when annotated on a field/method.
- */
- String[] columnNames() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column-name" type="xsd:string"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="unique" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="table-generator">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
- public @interface TableGenerator {
- String name();
- String table() default "";
- String catalog() default "";
- String schema() default "";
- String pkColumnName() default "";
- String valueColumnName() default "";
- String pkColumnValue() default "";
- int initialValue() default 0;
- int allocationSize() default 50;
- UniqueConstraint[] uniqueConstraints() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0"/>
- <xsd:element name="unique-constraint" type="orm:unique-constraint"
- minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="catalog" type="xsd:string"/>
- <xsd:attribute name="schema" type="xsd:string"/>
- <xsd:attribute name="creation-suffix" type="xsd:string"/>
- <xsd:attribute name="pk-column-name" type="xsd:string"/>
- <xsd:attribute name="value-column-name" type="xsd:string"/>
- <xsd:attribute name="pk-column-value" type="xsd:string"/>
- <xsd:attribute name="initial-value" type="xsd:int"/>
- <xsd:attribute name="allocation-size" type="xsd:int"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Temporal {
- TemporalType value();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="orm:temporal-type"/>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:simpleType name="temporal-type">
- <xsd:annotation>
- <xsd:documentation>
-
- public enum TemporalType {
- DATE, // java.sql.Date
- TIME, // java.sql.Time
- TIMESTAMP // java.sql.Timestamp
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:token">
- <xsd:enumeration value="DATE"/>
- <xsd:enumeration value="TIME"/>
- <xsd:enumeration value="TIMESTAMP"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="tenant-discriminator-column">
- <xsd:annotation>
- <xsd:documentation>
- @Target({})
- @Retention(RUNTIME)
- public @interface TenantDiscriminatorColumn {
- /**
- * (Optional) The name of column to be used for the tenant discriminator.
- */
- String name() default "TENANT_ID";
-
- /**
- * (Optional) The name of the context property to apply to the
- * tenant discriminator column.
- */
- String contextProperty() default "eclipselink.tenant-id";
-
- /**
- * (Optional) The type of object/column to use as a class discriminator.
- * Defaults to {@link DiscriminatorType#STRING DiscriminatorType.STRING}.
- */
- DiscriminatorType discriminatorType() default DiscriminatorType.STRING;
-
- /**
- * (Optional) The SQL fragment that is used when generating the DDL
- * for the discriminator column.
- * Defaults to the provider-generated SQL to create a column
- * of the specified discriminator type.
- */
- String columnDefinition() default "";
-
- /**
- * (Optional) The column length for String-based discriminator types.
- * Ignored for other discriminator types.
- */
- int length() default 31;
-
- /**
- * (Optional) The name of the table that contains the column.
- * If absent the column is assumed to be in the primary table.
- */
- String table() default "";
-
- /**
- * Specifies that the tenant discriminator column is part of the primary
- * key of the tables.
- */
- boolean primaryKey() default false;
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="context-property" type="xsd:string"/>
- <xsd:attribute name="discriminator-type" type="orm:discriminator-type"/>
- <xsd:attribute name="column-definition" type="xsd:string"/>
- <xsd:attribute name="length" type="xsd:int"/>
- <xsd:attribute name="table" type="xsd:string"/>
- <xsd:attribute name="primary-key" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="time-of-day">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({})
- @Retention(RUNTIME)
- public @interface TimeOfDay {
- /**
- * (Optional) Hour of the day.
- */
- int hour() default 0;
-
- /**
- * (Optional) Minute of the day.
- */
- int minute() default 0;
-
- /**
- * (Optional) Second of the day.
- */
- int second() default 0;
-
- /**
- * (Optional) Millisecond of the day.
- */
- int millisecond() default 0;
-
- /**
- * Internal use. Do not modify.
- */
- boolean specified() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="hour" type="xsd:integer"/>
- <xsd:attribute name="minute" type="xsd:integer"/>
- <xsd:attribute name="second" type="xsd:integer"/>
- <xsd:attribute name="millisecond" type="xsd:integer"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="transformation">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Transformation is an optional annotation for
- * org.eclipse.persistence.mappings.TransformationMapping.
- * TransformationMapping allows to map an attribute to one or more
- * database columns.
- *
- * Transformation annotation is an optional part of
- * TransformationMapping definition. Unless the TransformationMapping is
- * write-only, it should have a ReadTransformer, it defines
- * transformation of database column(s) value(s)into attribute value.
- * Also unless it's a read-only mapping, either WriteTransformer
- * annotation or WriteTransformers annotation should be specified. Each
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface Transformation {
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) The optional element is a hint as to whether the value
- * of the field or property may be null. It is disregarded
- * for primitive types, which are considered non-optional.
- */
- boolean optional() default true;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="read-transformer" type="orm:read-transformer"/>
- <xsd:element name="write-transformer" type="orm:write-transformer" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="transient">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Transient {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="type-converter">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({TYPE, METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface TypeConverter {
- /**
- * (Required) Name this converter. The name should be unique
- * across the whole persistence unit.
- */
- String name();
-
- /**
- * (Optional) Specify the type stored on the database. The
- * default is inferred from the type of the persistence field
- * or property.
- */
- Class dataType() default void.class;
-
- /**
- * (Optional) Specify the type stored on the entity. The
- * default is inferred from the type of the persistent field
- * or property.
- */
- Class objectType() default void.class;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="data-type" type="xsd:string"/>
- <xsd:attribute name="object-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="unique-constraint">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({}) @Retention(RUNTIME)
- public @interface UniqueConstraint {
- String name() default "";
- String[] columnNames();
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column-name" type="xsd:string"
- maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="variable-one-to-one">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * Variable one to one mappings are used to represent a pointer
- * references between a java object and an implementer of an interface.
- * This mapping is usually represented by a single pointer (stored in an
- * instance variable) between the source and target objects. In the
- * relational database tables, these mappings are normally implemented
- * using a foreign key and a type code.
- *
- * A VariableOneToOne can be specified within an Entity,
- * MappedSuperclass and Embeddable class.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface VariableOneToOne {
- /**
- * (Optional) The interface class that is the target of the
- * association. If not specified it will be inferred from the type
- * of the object being referenced.
- */
- Class targetInterface() default void.class;
-
- /**
- * (Optional) The operations that must be cascaded to the target of
- * the association.
- */
- CascadeType[] cascade() default {};
-
- /**
- * (Optional) Defines whether the value of the field or property
- * should be lazily loaded or must be eagerly fetched. The EAGER
- * strategy is a requirement on the persistence provider runtime
- * that the value must be eagerly fetched. The LAZY strategy is a
- * hint to the persistence provider runtime. If not specified,
- * defaults to EAGER.
- */
- FetchType fetch() default EAGER;
-
- /**
- * (Optional) Whether the association is optional. If set to false
- * then a non-null relationship must always exist.
- */
- boolean optional() default true;
-
- /**
- * (Optional) The discriminator column will hold the type
- * indicators. If the DiscriminatorColumn is not specified, the name
- * of the discriminator column defaults to "DTYPE" and the
- * discriminator type to STRING.
- */
- DiscriminatorColumn discriminatorColumn() default @DiscriminatorColumn;
-
- /**
- * (Optional) The list of discriminator types that can be used with
- * this VariableOneToOne. If none are specified then those entities
- * within the persistence unit that implement the target interface
- * will be added to the list of types. The discriminator type will
- * default as follows:
- * - If DiscriminatorColumn type is STRING: Entity.name()
- * - If DiscriminatorColumn type is CHAR: First letter of the
- * Entity class
- * - If DiscriminatorColumn type is INTEGER: The next integer after
- * the highest integer explicitly added.
- */
- DiscriminatorClass[] discriminatorClasses() default {};
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="cascade" type="orm:cascade-type" minOccurs="0"/>
- <xsd:element name="discriminator-column" type="orm:discriminator-column" minOccurs="0"/>
- <xsd:element name="discriminator-class" type="orm:discriminator-class" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="join-column" type="orm:join-column" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="private-owned" type="orm:emptyType" minOccurs="0"/>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- <xsd:element name="noncacheable" type="orm:emptyType" minOccurs="0"/>
- <xsd:group ref="orm:partitioning-group"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="target-interface" type="xsd:string"/>
- <xsd:attribute name="fetch" type="orm:fetch-type"/>
- <xsd:attribute name="optional" type="xsd:boolean"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="orphan-removal" type="xsd:boolean"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="version">
- <xsd:annotation>
- <xsd:documentation>
-
- @Target({METHOD, FIELD}) @Retention(RUNTIME)
- public @interface Version {}
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column" minOccurs="0"/>
- <xsd:element name="index" type="orm:index" minOccurs="0"/>
- <xsd:choice minOccurs="0">
- <xsd:element name="temporal" type="orm:temporal"/>
- <xsd:element name="convert" type="xsd:string"/>
- </xsd:choice>
- <xsd:choice minOccurs="0">
- <xsd:element name="converter" type="orm:converter"/>
- <xsd:element name="type-converter" type="orm:type-converter"/>
- <xsd:element name="object-type-converter" type="orm:object-type-converter"/>
- <xsd:element name="struct-converter" type="orm:struct-converter"/>
- </xsd:choice>
- <xsd:element name="property" type="orm:property" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="access-methods" type="orm:access-methods" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="access" type="orm:access-type"/>
- <xsd:attribute name="mutable" type="xsd:boolean"/>
- <xsd:attribute name="attribute-type" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="write-transformer">
- <xsd:annotation>
- <xsd:documentation>
-
- /**
- * Annotation for org.eclipse.persistence.mappings.TransformationMapping.
- * WriteTransformer defines transformation of the attribute value to a
- * single database column value (column is specified in the
- * WriteTransformer).
- *
- * A single WriteTransformer may be specified directly on the method or
- * attribute. Multiple WriteTransformers should be wrapped into
- * WriteTransformers annotation. No WriteTransformers specified for
- * read-only mapping. Unless the TransformationMapping is write-only, it
- * should have a ReadTransformer, it defines transformation of database
- * column(s) value(s)into attribute value.
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface WriteTransformer {
- /**
- * User-defined class that must implement the
- * org.eclipse.persistence.mappings.transformers.FieldTransformer
- * interface. The class will be instantiated, its buildFieldValue
- * will be used to create the value to be written into the database
- * column. Note that for ddl generation and returning to be
- * supported the method buildFieldValue in the class should be
- * defined to return the relevant Java type, not just Object as
- * defined in the interface, for instance:
- * public Time buildFieldValue(Object instance, String fieldName, Session session).
- * Either transformerClass or method must be specified, but not both.
- */
- Class transformerClass() default void.class;
-
- /**
- * The mapped class must have a method with this name which returns
- * a value to be written into the database column.
- * Note that for ddl generation and returning to be supported the
- * method should be defined to return a particular type, not just
- * Object, for instance:
- * public Time getStartTime().
- * The method may require a Transient annotation to avoid being
- * mapped as Basic by default.
- * Either transformerClass or method must be specified, but not both.
- */
- String method() default "";
-
- /**
- * Specify here the column into which the value should be written.
- * The only case when this could be skipped is if a single
- * WriteTransformer annotates an attribute - the attribute's name
- * will be used as a column name.
- */
- Column column() default @Column;
- }
-
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="column" type="orm:column"/>
- </xsd:sequence>
- <xsd:attribute name="transformer-class" type="xsd:string"/>
- <xsd:attribute name="method" type="xsd:string"/>
- </xsd:complexType>
-
- <!-- **************************************************** -->
-
- <xsd:complexType name="batch-fetch">
- <xsd:annotation>
- <xsd:documentation>
- /**
- * A BatchFetch annotation can be used on any relationship mapping,
- * (OneToOne, ManyToOne, OneToMany, ManyToMany, ElementCollection, BasicCollection, BasicMap).
- * It allows the related objects to be batch read in a single query.
- * Batch fetching can also be set at the query level, and it is
- * normally recommended to do so as all queries may not require batching.
- *
- * @author James Sutherland
- * @since EclipseLink 2.1
- */
- @Target({METHOD, FIELD})
- @Retention(RUNTIME)
- public @interface BatchFetch {
- /**
- * (Optional) The type of batch-fetch to use.
- * Either JOIN, EXISTS or IN.
- * JOIN is the default.
- */
- BatchFetchType value() default BatchFetchType.JOIN;
-
- /**
- * Define the default batch fetch size.
- * This is only used for IN type batch reading and defines
- * the number of keys used in each IN clause.
- * The default size is 256, or the query's pageSize for cursor queries.
- */
- int size() default -1;
- }
- </xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="type" type="orm:batch-fetch-type"/>
- <xsd:attribute name="size" type="xsd:integer"/>
- </xsd:complexType>
-
-</xsd:schema>
-
-
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_0.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_0.xsd
deleted file mode 100644
index bb10ce4894..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_0.xsd
+++ /dev/null
@@ -1,260 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-******************************************************************************
- Copyright (c) 1998, 2010 Oracle. All rights reserved.
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
- which accompanies this distribution.
- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
- and the Eclipse Distribution License is available at
- http://www.eclipse.org/org/documents/edl-v10.php.
-
- Contributors:
- dmccann - November 24/2009 - 2.0 - Initial implementation
-*****************************************************************************/
--->
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm"
- targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/oxm"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.0">
-
- <xs:element name="xml-bindings">
- <xs:complexType>
- <xs:all>
- <xs:element ref="xml-schema" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapters" minOccurs="0"/>
- <xs:element name="java-types" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="java-type" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:all>
- <xs:attribute name="xml-accessor-type" type="xml-access-type" default="PUBLIC_MEMBER" />
- <xs:attribute name="xml-accessor-order" type="xml-access-order" default="UNDEFINED" />
- </xs:complexType>
- </xs:element>
- <xs:element name="java-type">
- <xs:complexType>
- <xs:all>
- <xs:element ref="xml-type" minOccurs="0"/>
- <xs:element ref="xml-root-element" minOccurs="0"/>
- <xs:element ref="xml-see-also" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element name="java-attributes" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="java-attribute" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:all>
- <xs:attribute name="name" type="xs:string" />
- <xs:attribute name="xml-transient" type="xs:boolean" default="false" />
- <xs:attribute name="xml-customizer" type="xs:string" />
- <xs:attribute name="xml-accessor-type" type="xml-access-type" default="PUBLIC_MEMBER" />
- <xs:attribute name="xml-accessor-order" type="xml-access-order" default="UNDEFINED" />
- </xs:complexType>
- </xs:element>
- <xs:element name="java-attribute" type="java-attribute" />
- <xs:complexType name="java-attribute" abstract="true">
- <xs:attribute name="java-attribute" type="xs:string" />
- </xs:complexType>
-
- <!-- Enums -->
- <xs:simpleType name="xml-access-order">
- <xs:restriction base="xs:string">
- <xs:enumeration value="ALPHABETICAL" />
- <xs:enumeration value="UNDEFINED" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="xml-access-type">
- <xs:restriction base="xs:string">
- <xs:enumeration value="FIELD" />
- <xs:enumeration value="NONE" />
- <xs:enumeration value="PROPERTY" />
- <xs:enumeration value="PUBLIC_MEMBER" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="xml-ns-form">
- <xs:restriction base="xs:string">
- <xs:enumeration value="UNQUALIFIED" />
- <xs:enumeration value="QUALIFIED" />
- <xs:enumeration value="UNSET" />
- </xs:restriction>
- </xs:simpleType>
-
- <!-- @Target(value=PACKAGE) -->
- <xs:element name="xml-schema">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="xml-ns" minOccurs="0" maxOccurs="unbounded">
- <xs:complexType>
- <xs:attribute name="namespace-uri" type="xs:string" />
- <xs:attribute name="prefix" type="xs:string" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="attribute-form-default" type="xml-ns-form" default="UNSET" />
- <xs:attribute name="element-form-default" type="xml-ns-form" default="UNSET" />
- <xs:attribute name="location" type="xs:string" />
- <xs:attribute name="namespace" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-java-type-adapters">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-java-type-adapter" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={FIELD,METHOD,PACKAGE}) -->
-
- <!-- @Target(value={PACKAGE,FIELD,METHOD,TYPE,PARAMETER}) -->
- <xs:element name="xml-java-type-adapter" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:attribute name="value" type="xs:string" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter.DEFAULT" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={FIELD,METHOD,TYPE}) -->
- <xs:element name="xml-transient" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute" />
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value=TYPE) -->
- <xs:element name="xml-type">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="prop-order">
- <xs:simpleType>
- <xs:list itemType="xs:string" />
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-root-element">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-see-also">
- <xs:simpleType>
- <xs:list itemType="xs:string" />
- </xs:simpleType>
- </xs:element>
-
- <!-- @Target(value={FIELD}) -->
-
- <!-- @Target(value={FIELD,METHOD}) -->
- <xs:element name="xml-any-attribute" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute" />
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-attribute" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- <xs:attribute name="xml-id" type="xs:boolean" default="false" />
- <xs:attribute name="xml-idref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-list" type="xs:boolean" default="false" />
- <xs:attribute name="xml-attachment-ref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-mime-type" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-any-element" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="xml-mixed" type="xs:boolean" default="false" />
- <xs:attribute name="lax" type="xs:boolean" default="false" />
- <xs:attribute name="dom-handler" type="xs:string" default="javax.xml.bind.annotation.W3CDomHandler" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-element-wrapper" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element ref="xml-map" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="default-value" type="xs:string" />
- <xs:attribute name="nillable" type="xs:boolean" default="false" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.XmlElement.DEFAULT" />
- <xs:attribute name="xml-id" type="xs:boolean" default="false" />
- <xs:attribute name="xml-idref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-list" type="xs:boolean" default="false" />
- <xs:attribute name="xml-attachment-ref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-mime-type" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element-wrapper">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="nillable" type="xs:boolean" default="false" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-value" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute" />
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-map">
- <xs:complexType>
- <xs:all>
- <xs:element name="key" minOccurs="0">
- <xs:complexType>
- <xs:attribute name="type" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="value" minOccurs="0">
- <xs:complexType>
- <xs:attribute name="type" type="xs:string" />
- </xs:complexType>
- </xs:element>
- </xs:all>
- </xs:complexType>
- </xs:element>
-</xs:schema> \ No newline at end of file
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_1.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_1.xsd
deleted file mode 100644
index d4ea8426bb..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_1.xsd
+++ /dev/null
@@ -1,462 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-******************************************************************************
- Copyright (c) 1998, 2010 Oracle. All rights reserved.
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
- which accompanies this distribution.
- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
- and the Eclipse Distribution License is available at
- http://www.eclipse.org/org/documents/edl-v10.php.
-
- Contributors:
- dmccann - December 08/2009 - 2.1 - Initial implementation
-*****************************************************************************/
--->
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm"
- targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/oxm"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.1">
-
- <xs:element name="xml-bindings">
- <xs:complexType>
- <xs:all>
- <xs:element ref="xml-schema" minOccurs="0"/>
- <xs:element ref="xml-schema-type" minOccurs="0"/>
- <xs:element ref="xml-schema-types" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapters" minOccurs="0"/>
- <xs:element name="xml-registries" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-registry" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-enums" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-enum" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="java-types" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="java-type" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:all>
- <xs:attribute name="xml-accessor-type" type="xml-access-type" default="PUBLIC_MEMBER" />
- <xs:attribute name="xml-accessor-order" type="xml-access-order" default="UNDEFINED" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-registry">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="xml-element-decl" maxOccurs="unbounded" >
- <xs:complexType>
- <xs:attribute name="java-method" type="xs:string" />
- <xs:attribute name="name" type="xs:string" />
- <xs:attribute name="defaultValue" type="xs:string" default="\u0000" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="scope" type="xs:string" default="javax.xml.bind.annotation.XmlElementDecl.GLOBAL" />
- <xs:attribute name="substitutionHeadName" type="xs:string" default="" />
- <xs:attribute name="substitutionHeadNamespace" type="xs:string" default="##default" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="java-type">
- <xs:complexType>
- <xs:all>
- <xs:element ref="xml-type" minOccurs="0"/>
- <xs:element ref="xml-root-element" minOccurs="0"/>
- <xs:element ref="xml-see-also" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element name="java-attributes" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="java-attribute" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:all>
- <xs:attribute name="name" type="xs:string" />
- <xs:attribute name="xml-transient" type="xs:boolean" default="false" />
- <xs:attribute name="xml-customizer" type="xs:string" />
- <xs:attribute name="xml-accessor-type" type="xml-access-type" default="PUBLIC_MEMBER" />
- <xs:attribute name="xml-accessor-order" type="xml-access-order" default="UNDEFINED" />
- <xs:attribute name="xml-inline-binary-data" type="xs:boolean" default="false" />
- </xs:complexType>
- </xs:element>
- <xs:element name="java-attribute" type="java-attribute" />
- <xs:complexType name="java-attribute" abstract="true">
- <xs:attribute name="java-attribute" type="xs:string" />
- </xs:complexType>
- <xs:element name="xml-access-methods" type="xml-access-methods" />
- <xs:complexType name="xml-access-methods">
- <xs:attribute name="get-method" type="xs:string" use="required"/>
- <xs:attribute name="set-method" type="xs:string" use="required"/>
- </xs:complexType>
-
- <!-- Enums -->
- <xs:simpleType name="xml-access-order">
- <xs:restriction base="xs:string">
- <xs:enumeration value="ALPHABETICAL" />
- <xs:enumeration value="UNDEFINED" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="xml-access-type">
- <xs:restriction base="xs:string">
- <xs:enumeration value="FIELD" />
- <xs:enumeration value="NONE" />
- <xs:enumeration value="PROPERTY" />
- <xs:enumeration value="PUBLIC_MEMBER" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="xml-ns-form">
- <xs:restriction base="xs:string">
- <xs:enumeration value="UNQUALIFIED" />
- <xs:enumeration value="QUALIFIED" />
- <xs:enumeration value="UNSET" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="xml-marshal-null-representation">
- <xs:restriction base="xs:string">
- <xs:enumeration value="XSI_NIL" />
- <xs:enumeration value="ABSENT_NODE" />
- <xs:enumeration value="EMPTY_NODE" />
- </xs:restriction>
- </xs:simpleType>
-
- <!-- @Target(value=PACKAGE) -->
- <xs:element name="xml-schema">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="xml-ns" minOccurs="0" maxOccurs="unbounded">
- <xs:complexType>
- <xs:attribute name="namespace-uri" type="xs:string" />
- <xs:attribute name="prefix" type="xs:string" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="attribute-form-default" type="xml-ns-form" default="UNSET" />
- <xs:attribute name="element-form-default" type="xml-ns-form" default="UNSET" />
- <xs:attribute name="location" type="xs:string" />
- <xs:attribute name="namespace" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-schema-types">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-schema-type" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-java-type-adapters">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-java-type-adapter" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={FIELD,METHOD,PACKAGE}) -->
- <xs:element name="xml-schema-type">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" use="required" />
- <xs:attribute name="namespace" type="xs:string" default="http://www.w3.org/2001/XMLSchema" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.XmlSchemaType.DEFAULT" />
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={PACKAGE,FIELD,METHOD,TYPE,PARAMETER}) -->
- <xs:element name="xml-java-type-adapter" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:attribute name="value" type="xs:string" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter.DEFAULT" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={FIELD,METHOD,TYPE}) -->
- <xs:element name="xml-transient" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute" />
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value=TYPE) -->
- <xs:element name="xml-enum">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-enum-value" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- <xs:attribute name="java-enum" type="xs:string" use="required" />
- <xs:attribute name="value" type="xs:string" default="java.lang.String" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-type">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="factory-class" type="xs:string" default="javax.xml.bind.annotation.XmlType.DEFAULT" />
- <xs:attribute name="factory-method" type="xs:string" />
- <xs:attribute name="prop-order">
- <xs:simpleType>
- <xs:list itemType="xs:string" />
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-root-element">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-see-also">
- <xs:simpleType>
- <xs:list itemType="xs:string" />
- </xs:simpleType>
- </xs:element>
-
- <!-- @Target(value={FIELD}) -->
- <xs:element name="xml-enum-value">
- <xs:complexType>
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute name="java-enum-value" type="xs:string" use="required" />
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={FIELD,METHOD}) -->
- <xs:element name="xml-any-attribute" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- </xs:all>
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="xml-path" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-attribute" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-abstract-null-policy" minOccurs="0" />
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element ref="xml-schema-type" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- <xs:attribute name="xml-id" type="xs:boolean" default="false" />
- <xs:attribute name="xml-idref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-list" type="xs:boolean" default="false" />
- <xs:attribute name="xml-inline-binary-data" type="xs:boolean" default="false" />
- <xs:attribute name="xml-attachment-ref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-mime-type" type="xs:string" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="xml-path" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-any-element" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="xml-mixed" type="xs:boolean" default="false" />
- <xs:attribute name="lax" type="xs:boolean" default="false" />
- <xs:attribute name="dom-handler" type="xs:string" default="javax.xml.bind.annotation.W3CDomHandler" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="xml-path" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-abstract-null-policy" minOccurs="0" />
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-element-wrapper" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element ref="xml-map" minOccurs="0"/>
- <xs:element ref="xml-schema-type" minOccurs="0" />
- </xs:all>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="default-value" type="xs:string" />
- <xs:attribute name="nillable" type="xs:boolean" default="false" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.XmlElement.DEFAULT" />
- <xs:attribute name="xml-id" type="xs:boolean" default="false" />
- <xs:attribute name="xml-idref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-list" type="xs:boolean" default="false" />
- <xs:attribute name="xml-inline-binary-data" type="xs:boolean" default="false" />
- <xs:attribute name="xml-attachment-ref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-mime-type" type="xs:string" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="cdata" type="xs:boolean" default="false" />
- <xs:attribute name="xml-path" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-elements" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:sequence>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-element" maxOccurs="unbounded" minOccurs="0"/>
- <xs:element ref="xml-element-wrapper" minOccurs="0"/>
- </xs:sequence>
- <xs:attribute name="xml-idref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-list" type="xs:boolean" default="false" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element-ref" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-element-wrapper" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.XmlElementRef.DEFAULT" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element-refs" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:sequence>
- <xs:element ref="xml-element-ref" minOccurs="0" maxOccurs="unbounded" />
- <xs:element ref="xml-element-wrapper" minOccurs="0" />
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-inverse-reference" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- </xs:all>
- <xs:attribute name="mapped-by" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element-wrapper">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="nillable" type="xs:boolean" default="false" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-value" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:sequence>
- <xs:element ref="xml-abstract-null-policy" minOccurs="0" />
- <xs:element ref="xml-access-methods" minOccurs="0" />
- </xs:sequence>
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="cdata" type="xs:boolean" default="false" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-map">
- <xs:complexType>
- <xs:all>
- <xs:element name="key" minOccurs="0">
- <xs:complexType>
- <xs:attribute name="type" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="value" minOccurs="0">
- <xs:complexType>
- <xs:attribute name="type" type="xs:string" />
- </xs:complexType>
- </xs:element>
- </xs:all>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-abstract-null-policy" type="xml-abstract-null-policy" />
- <xs:complexType name="xml-abstract-null-policy" abstract="true">
- <xs:attribute name="xsi-nil-represents-null" type="xs:boolean" default="false" />
- <xs:attribute name="empty-node-represents-null" type="xs:boolean" default="false" />
- <xs:attribute name="null-representation-for-xml" type="xml-marshal-null-representation" />
- </xs:complexType>
- <xs:element name="xml-null-policy" substitutionGroup="xml-abstract-null-policy">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="xml-abstract-null-policy">
- <xs:attribute name="is-set-performed-for-absent-node" type="xs:boolean" default="true" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-is-set-null-policy" substitutionGroup="xml-abstract-null-policy">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="xml-abstract-null-policy">
- <xs:sequence>
- <xs:element name="is-set-parameter" minOccurs="0" maxOccurs="unbounded">
- <xs:complexType>
- <xs:attribute name="value" type="xs:string"/>
- <xs:attribute name="type" type="xs:string"/>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="is-set-method-name" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-</xs:schema> \ No newline at end of file
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_2.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_2.xsd
deleted file mode 100644
index 61e37c7daf..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_2.xsd
+++ /dev/null
@@ -1,562 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-******************************************************************************
- Copyright (c) 1998, 2010 Oracle. All rights reserved.
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
- which accompanies this distribution.
- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
- and the Eclipse Distribution License is available at
- http://www.eclipse.org/org/documents/edl-v10.php.
-
- Contributors:
- dmccann - October 12/2010 - 2.2 - Initial implementation
-*****************************************************************************/
--->
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm"
- targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/oxm"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.2">
-
- <xs:element name="xml-bindings">
- <xs:complexType>
- <xs:all>
- <xs:element ref="xml-schema" minOccurs="0"/>
- <xs:element ref="xml-schema-type" minOccurs="0"/>
- <xs:element ref="xml-schema-types" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapters" minOccurs="0"/>
- <xs:element name="xml-registries" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-registry" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-enums" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-enum" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="java-types" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="java-type" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:all>
- <xs:attribute name="xml-accessor-type" type="xml-access-type" default="PUBLIC_MEMBER" />
- <xs:attribute name="xml-accessor-order" type="xml-access-order" default="UNDEFINED" />
- <xs:attribute name="xml-mapping-metadata-complete" type="xs:boolean" default="false" />
- <xs:attribute name="package-name" type="xs:string" default="##default" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-registry">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="xml-element-decl" maxOccurs="unbounded" >
- <xs:complexType>
- <xs:attribute name="java-method" type="xs:string" />
- <xs:attribute name="name" type="xs:string" use="required" />
- <xs:attribute name="defaultValue" type="xs:string" default="\u0000" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="scope" type="xs:string" default="javax.xml.bind.annotation.XmlElementDecl.GLOBAL" />
- <xs:attribute name="substitutionHeadName" type="xs:string" default="" />
- <xs:attribute name="substitutionHeadNamespace" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="##default" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="java-type">
- <xs:complexType>
- <xs:all>
- <xs:element ref="xml-type" minOccurs="0"/>
- <xs:element ref="xml-root-element" minOccurs="0"/>
- <xs:element ref="xml-see-also" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element ref="xml-class-extractor" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element name="java-attributes" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="java-attribute" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:all>
- <xs:attribute name="name" type="xs:string" />
- <xs:attribute name="super-type" type="xs:string" default="##default" />
- <xs:attribute name="xml-accessor-order" type="xml-access-order" default="UNDEFINED" />
- <xs:attribute name="xml-accessor-type" type="xml-access-type" default="PUBLIC_MEMBER" />
- <xs:attribute name="xml-customizer" type="xs:string" />
- <xs:attribute name="xml-discriminator-node" type="xs:string" />
- <xs:attribute name="xml-discriminator-value" type="xs:string" />
- <xs:attribute name="xml-inline-binary-data" type="xs:boolean" default="false" />
- <xs:attribute name="xml-transient" type="xs:boolean" default="false" />
- </xs:complexType>
- </xs:element>
- <xs:element name="java-attribute" type="java-attribute" />
- <xs:complexType name="java-attribute" abstract="true">
- <xs:attribute name="java-attribute" type="xs:string" />
- </xs:complexType>
- <xs:element name="xml-access-methods" type="xml-access-methods" />
- <xs:complexType name="xml-access-methods">
- <xs:attribute name="get-method" type="xs:string" use="required"/>
- <xs:attribute name="set-method" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:element name="xml-class-extractor" type="xml-class-extractor" />
- <xs:complexType name="xml-class-extractor">
- <xs:attribute name="class" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:element name="xml-properties" type="xml-properties" />
- <xs:complexType name="xml-properties">
- <xs:sequence>
- <xs:element name="xml-property" minOccurs="0" maxOccurs="unbounded" >
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" use="required" />
- <xs:attribute name="value" type="xs:string" use="required" />
- <xs:attribute name="value-type" type="xs:string" default="java.lang.String" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- <!-- Enums -->
- <xs:simpleType name="xml-access-order">
- <xs:restriction base="xs:string">
- <xs:enumeration value="ALPHABETICAL" />
- <xs:enumeration value="UNDEFINED" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="xml-access-type">
- <xs:restriction base="xs:string">
- <xs:enumeration value="FIELD" />
- <xs:enumeration value="NONE" />
- <xs:enumeration value="PROPERTY" />
- <xs:enumeration value="PUBLIC_MEMBER" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="xml-ns-form">
- <xs:restriction base="xs:string">
- <xs:enumeration value="UNQUALIFIED" />
- <xs:enumeration value="QUALIFIED" />
- <xs:enumeration value="UNSET" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="xml-marshal-null-representation">
- <xs:restriction base="xs:string">
- <xs:enumeration value="XSI_NIL" />
- <xs:enumeration value="ABSENT_NODE" />
- <xs:enumeration value="EMPTY_NODE" />
- </xs:restriction>
- </xs:simpleType>
-
- <!-- @Target(value=PACKAGE) -->
- <xs:element name="xml-schema">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="xml-ns" minOccurs="0" maxOccurs="unbounded">
- <xs:complexType>
- <xs:attribute name="namespace-uri" type="xs:string" />
- <xs:attribute name="prefix" type="xs:string" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="attribute-form-default" type="xml-ns-form" default="UNSET" />
- <xs:attribute name="element-form-default" type="xml-ns-form" default="UNSET" />
- <xs:attribute name="location" type="xs:string" />
- <xs:attribute name="namespace" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-schema-types">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-schema-type" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-java-type-adapters">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-java-type-adapter" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={FIELD,METHOD,PACKAGE}) -->
- <xs:element name="xml-schema-type">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" use="required" />
- <xs:attribute name="namespace" type="xs:string" default="http://www.w3.org/2001/XMLSchema" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.XmlSchemaType.DEFAULT" />
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={PACKAGE,FIELD,METHOD,TYPE,PARAMETER}) -->
- <xs:element name="xml-java-type-adapter" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:attribute name="value" type="xs:string" use="required" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter.DEFAULT" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={FIELD,METHOD,TYPE}) -->
- <xs:element name="xml-transient" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute" />
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value=TYPE) -->
- <xs:element name="xml-enum">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-enum-value" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- <xs:attribute name="java-enum" type="xs:string" use="required" />
- <xs:attribute name="value" type="xs:string" default="java.lang.String" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-type">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="factory-class" type="xs:string" default="javax.xml.bind.annotation.XmlType.DEFAULT" />
- <xs:attribute name="factory-method" type="xs:string" />
- <xs:attribute name="prop-order">
- <xs:simpleType>
- <xs:list itemType="xs:string" />
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-root-element">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-see-also">
- <xs:simpleType>
- <xs:list itemType="xs:string" />
- </xs:simpleType>
- </xs:element>
-
- <!-- @Target(value={FIELD}) -->
- <xs:element name="xml-enum-value">
- <xs:complexType>
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute name="java-enum-value" type="xs:string" use="required" />
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={FIELD,METHOD}) -->
- <xs:element name="xml-any-attribute" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-properties" minOccurs="0" />
- </xs:all>
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="xml-path" type="xs:string" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-attribute" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-abstract-null-policy" minOccurs="0" />
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-schema-type" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- <xs:attribute name="xml-id" type="xs:boolean" default="false" />
- <xs:attribute name="xml-idref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-key" type="xs:boolean" default="false" />
- <xs:attribute name="xml-list" type="xs:boolean" default="false" />
- <xs:attribute name="xml-inline-binary-data" type="xs:boolean" default="false" />
- <xs:attribute name="xml-attachment-ref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-mime-type" type="xs:string" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="##default" />
- <xs:attribute name="xml-path" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-any-element" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-element-refs" minOccurs="0" />
- </xs:all>
- <xs:attribute name="xml-mixed" type="xs:boolean" default="false" />
- <xs:attribute name="lax" type="xs:boolean" default="false" />
- <xs:attribute name="dom-handler" type="xs:string" default="javax.xml.bind.annotation.W3CDomHandler" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="xml-path" type="xs:string" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-abstract-null-policy" minOccurs="0" />
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-element-wrapper" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element ref="xml-map" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-schema-type" minOccurs="0" />
- </xs:all>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="default-value" type="xs:string" />
- <xs:attribute name="nillable" type="xs:boolean" default="false" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.XmlElement.DEFAULT" />
- <xs:attribute name="xml-id" type="xs:boolean" default="false" />
- <xs:attribute name="xml-idref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-key" type="xs:boolean" default="false" />
- <xs:attribute name="xml-list" type="xs:boolean" default="false" />
- <xs:attribute name="xml-inline-binary-data" type="xs:boolean" default="false" />
- <xs:attribute name="xml-attachment-ref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-mime-type" type="xs:string" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="cdata" type="xs:boolean" default="false" />
- <xs:attribute name="xml-path" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-elements" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:sequence>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-element" minOccurs="0" maxOccurs="unbounded" />
- <xs:element ref="xml-element-wrapper" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-join-nodes" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- <xs:attribute name="xml-idref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-list" type="xs:boolean" default="false" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element-ref" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element name="xml-access-methods" type="xml-access-methods" minOccurs="0"/>
- <xs:element ref="xml-element-wrapper" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- </xs:all>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.XmlElementRef.DEFAULT" />
- <xs:attribute name="xml-mixed" type="xs:boolean" default="false" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element-refs" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:sequence>
- <xs:element name="xml-access-methods" type="xml-access-methods" minOccurs="0"/>
- <xs:element ref="xml-element-ref" minOccurs="0" maxOccurs="unbounded" />
- <xs:element ref="xml-element-wrapper" minOccurs="0" />
- <xs:element ref="xml-properties" minOccurs="0" />
- </xs:sequence>
- <xs:attribute name="xml-mixed" type="xs:boolean" default="false" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-inverse-reference" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-properties" minOccurs="0" />
- </xs:all>
- <xs:attribute name="mapped-by" type="xs:string" use="required" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element-wrapper">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="nillable" type="xs:boolean" default="false" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-value" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-abstract-null-policy" minOccurs="0" />
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="cdata" type="xs:boolean" default="false" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="type" type="xs:string" default="##default" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-map">
- <xs:complexType>
- <xs:all>
- <xs:element name="key" minOccurs="0">
- <xs:complexType>
- <xs:attribute name="type" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="value" minOccurs="0">
- <xs:complexType>
- <xs:attribute name="type" type="xs:string" />
- </xs:complexType>
- </xs:element>
- </xs:all>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-abstract-null-policy" type="xml-abstract-null-policy" />
- <xs:complexType name="xml-abstract-null-policy" abstract="true">
- <xs:attribute name="xsi-nil-represents-null" type="xs:boolean" default="false" />
- <xs:attribute name="empty-node-represents-null" type="xs:boolean" default="false" />
- <xs:attribute name="null-representation-for-xml" type="xml-marshal-null-representation" default="ABSENT_NODE" />
- </xs:complexType>
- <xs:element name="xml-null-policy" substitutionGroup="xml-abstract-null-policy">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="xml-abstract-null-policy">
- <xs:attribute name="is-set-performed-for-absent-node" type="xs:boolean" default="true" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-is-set-null-policy" substitutionGroup="xml-abstract-null-policy">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="xml-abstract-null-policy">
- <xs:sequence>
- <xs:element name="is-set-parameter" minOccurs="0" maxOccurs="unbounded">
- <xs:complexType>
- <xs:attribute name="value" type="xs:string" use="required" />
- <xs:attribute name="type" type="xs:string" use="required" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="is-set-method-name" type="xs:string" use="required" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-transformation" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:sequence>
- <xs:element name="xml-access-methods" type="xml-access-methods" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0"/>
- <xs:element name="xml-read-transformer">
- <xs:complexType>
- <xs:attribute name="method" type="xs:string" />
- <xs:attribute name="transformer-class" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-write-transformer" minOccurs="0" maxOccurs="unbounded">
- <xs:complexType>
- <xs:attribute name="method" type="xs:string" />
- <xs:attribute name="xml-path" type="xs:string" use="required" />
- <xs:attribute name="transformer-class" type="xs:string" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="optional" type="xs:boolean" default="true"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-join-nodes" substitutionGroup="java-attribute" >
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:sequence>
- <xs:element name="xml-join-node" minOccurs="1" maxOccurs="unbounded" >
- <xs:complexType>
- <xs:attribute name="xml-path" type="xs:string" use="required" />
- <xs:attribute name="referenced-xml-path" type="xs:string" use="required" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-</xs:schema> \ No newline at end of file
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_3.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_3.xsd
deleted file mode 100644
index 74a4d55db5..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_oxm_2_3.xsd
+++ /dev/null
@@ -1,589 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-******************************************************************************
- Copyright (c) 1998, 2010 Oracle. All rights reserved.
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
- which accompanies this distribution.
- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
- and the Eclipse Distribution License is available at
- http://www.eclipse.org/org/documents/edl-v10.php.
-
- Contributors:
- dmccann - December 22/2010 - 2.3 - Initial implementation
-*****************************************************************************/
--->
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm"
- targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence/oxm"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.3">
-
- <xs:element name="xml-bindings">
- <xs:complexType>
- <xs:all>
- <xs:element ref="xml-schema" minOccurs="0"/>
- <xs:element ref="xml-schema-type" minOccurs="0"/>
- <xs:element ref="xml-schema-types" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapters" minOccurs="0"/>
- <xs:element name="xml-registries" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-registry" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-enums" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-enum" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="java-types" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="java-type" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:all>
- <xs:attribute name="xml-accessor-type" type="xml-access-type" default="PUBLIC_MEMBER" />
- <xs:attribute name="xml-accessor-order" type="xml-access-order" default="UNDEFINED" />
- <xs:attribute name="xml-mapping-metadata-complete" type="xs:boolean" default="false" />
- <xs:attribute name="package-name" type="xs:string" default="##default" />
- <xs:attribute name="xml-name-transformer" type="xs:string" />
- <xs:attribute name="version" type="supported-versions" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-registry">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="xml-element-decl" maxOccurs="unbounded" >
- <xs:complexType>
- <xs:attribute name="java-method" type="xs:string" />
- <xs:attribute name="name" type="xs:string" use="required" />
- <xs:attribute name="defaultValue" type="xs:string" default="\u0000" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="scope" type="xs:string" default="javax.xml.bind.annotation.XmlElementDecl.GLOBAL" />
- <xs:attribute name="substitutionHeadName" type="xs:string" default="" />
- <xs:attribute name="substitutionHeadNamespace" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="##default" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="java-type">
- <xs:complexType>
- <xs:all>
- <xs:element ref="xml-type" minOccurs="0"/>
- <xs:element ref="xml-root-element" minOccurs="0"/>
- <xs:element ref="xml-virtual-access-methods" minOccurs="0"/>
- <xs:element ref="xml-see-also" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element ref="xml-class-extractor" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element name="java-attributes" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="java-attribute" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:all>
- <xs:attribute name="name" type="xs:string" />
- <xs:attribute name="super-type" type="xs:string" default="##default" />
- <xs:attribute name="xml-accessor-order" type="xml-access-order" default="UNDEFINED" />
- <xs:attribute name="xml-accessor-type" type="xml-access-type" default="PUBLIC_MEMBER" />
- <xs:attribute name="xml-customizer" type="xs:string" />
- <xs:attribute name="xml-discriminator-node" type="xs:string" />
- <xs:attribute name="xml-discriminator-value" type="xs:string" />
- <xs:attribute name="xml-inline-binary-data" type="xs:boolean" default="false" />
- <xs:attribute name="xml-transient" type="xs:boolean" default="false" />
- <xs:attribute name="xml-name-transformer" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="java-attribute" type="java-attribute" />
- <xs:complexType name="java-attribute" abstract="true">
- <xs:attribute name="java-attribute" type="xs:string" />
- </xs:complexType>
- <xs:element name="xml-access-methods" type="xml-access-methods" />
- <xs:complexType name="xml-access-methods">
- <xs:attribute name="get-method" type="xs:string" />
- <xs:attribute name="set-method" type="xs:string" />
- </xs:complexType>
- <xs:element name="xml-class-extractor" type="xml-class-extractor" />
- <xs:complexType name="xml-class-extractor">
- <xs:attribute name="class" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:element name="xml-properties" type="xml-properties" />
- <xs:complexType name="xml-properties">
- <xs:sequence>
- <xs:element name="xml-property" minOccurs="0" maxOccurs="unbounded" >
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" use="required" />
- <xs:attribute name="value" type="xs:string" use="required" />
- <xs:attribute name="value-type" type="xs:string" default="java.lang.String" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- <!-- Enums -->
- <xs:simpleType name="xml-access-order">
- <xs:restriction base="xs:string">
- <xs:enumeration value="ALPHABETICAL" />
- <xs:enumeration value="UNDEFINED" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="xml-access-type">
- <xs:restriction base="xs:string">
- <xs:enumeration value="FIELD" />
- <xs:enumeration value="NONE" />
- <xs:enumeration value="PROPERTY" />
- <xs:enumeration value="PUBLIC_MEMBER" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="xml-ns-form">
- <xs:restriction base="xs:string">
- <xs:enumeration value="UNQUALIFIED" />
- <xs:enumeration value="QUALIFIED" />
- <xs:enumeration value="UNSET" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="xml-marshal-null-representation">
- <xs:restriction base="xs:string">
- <xs:enumeration value="XSI_NIL" />
- <xs:enumeration value="ABSENT_NODE" />
- <xs:enumeration value="EMPTY_NODE" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="supported-versions">
- <xs:restriction base="xs:string">
- <xs:enumeration value="2.0"/>
- <xs:enumeration value="2.1"/>
- <xs:enumeration value="2.2"/>
- <xs:enumeration value="2.3"/>
- </xs:restriction>
- </xs:simpleType>
-
- <!-- @Target(value=PACKAGE) -->
- <xs:element name="xml-schema">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="xml-ns" minOccurs="0" maxOccurs="unbounded">
- <xs:complexType>
- <xs:attribute name="namespace-uri" type="xs:string" />
- <xs:attribute name="prefix" type="xs:string" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="attribute-form-default" type="xml-ns-form" default="UNSET" />
- <xs:attribute name="element-form-default" type="xml-ns-form" default="UNSET" />
- <xs:attribute name="location" type="xs:string" />
- <xs:attribute name="namespace" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-schema-types">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-schema-type" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-java-type-adapters">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-java-type-adapter" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={FIELD,METHOD,PACKAGE}) -->
- <xs:element name="xml-schema-type">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" use="required" />
- <xs:attribute name="namespace" type="xs:string" default="http://www.w3.org/2001/XMLSchema" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.XmlSchemaType.DEFAULT" />
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={PACKAGE,FIELD,METHOD,TYPE,PARAMETER}) -->
- <xs:element name="xml-java-type-adapter" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:attribute name="value" type="xs:string" use="required" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter.DEFAULT" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={FIELD,METHOD,TYPE}) -->
- <xs:element name="xml-transient" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute" />
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value=TYPE) -->
- <xs:element name="xml-enum">
- <xs:complexType>
- <xs:sequence>
- <xs:element ref="xml-enum-value" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- <xs:attribute name="java-enum" type="xs:string" use="required" />
- <xs:attribute name="value" type="xs:string" default="java.lang.String" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-type">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="factory-class" type="xs:string" default="javax.xml.bind.annotation.XmlType.DEFAULT" />
- <xs:attribute name="factory-method" type="xs:string" />
- <xs:attribute name="prop-order">
- <xs:simpleType>
- <xs:list itemType="xs:string" />
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-root-element">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-see-also">
- <xs:simpleType>
- <xs:list itemType="xs:string" />
- </xs:simpleType>
- </xs:element>
- <xs:element name="xml-virtual-access-methods">
- <xs:complexType>
- <xs:attribute name="get-method" type="xs:string" default="get" />
- <xs:attribute name="set-method" type="xs:string" default="set" />
- <xs:attribute name="schema" type="xml-virtual-access-methods-schema" default="NODES" />
- </xs:complexType>
- </xs:element>
- <xs:simpleType name="xml-virtual-access-methods-schema">
- <xs:restriction base="xs:string">
- <xs:enumeration value="NODES" />
- <xs:enumeration value="ANY" />
- </xs:restriction>
- </xs:simpleType>
-
- <!-- @Target(value={FIELD}) -->
- <xs:element name="xml-enum-value">
- <xs:complexType>
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute name="java-enum-value" type="xs:string" use="required" />
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- </xs:element>
-
- <!-- @Target(value={FIELD,METHOD}) -->
- <xs:element name="xml-any-attribute" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-properties" minOccurs="0" />
- </xs:all>
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="xml-path" type="xs:string" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-attribute" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-abstract-null-policy" minOccurs="0" />
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-schema-type" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- <xs:attribute name="xml-id" type="xs:boolean" default="false" />
- <xs:attribute name="xml-idref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-key" type="xs:boolean" default="false" />
- <xs:attribute name="xml-list" type="xs:boolean" default="false" />
- <xs:attribute name="xml-inline-binary-data" type="xs:boolean" default="false" />
- <xs:attribute name="xml-attachment-ref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-mime-type" type="xs:string" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="##default" />
- <xs:attribute name="xml-path" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-any-element" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-element-refs" minOccurs="0" />
- </xs:all>
- <xs:attribute name="xml-mixed" type="xs:boolean" default="false" />
- <xs:attribute name="lax" type="xs:boolean" default="false" />
- <xs:attribute name="dom-handler" type="xs:string" default="javax.xml.bind.annotation.W3CDomHandler" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="xml-path" type="xs:string" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-abstract-null-policy" minOccurs="0" />
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-element-wrapper" minOccurs="0"/>
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- <xs:element ref="xml-map" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-schema-type" minOccurs="0" />
- </xs:all>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="default-value" type="xs:string" />
- <xs:attribute name="nillable" type="xs:boolean" default="false" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.XmlElement.DEFAULT" />
- <xs:attribute name="xml-id" type="xs:boolean" default="false" />
- <xs:attribute name="xml-idref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-key" type="xs:boolean" default="false" />
- <xs:attribute name="xml-list" type="xs:boolean" default="false" />
- <xs:attribute name="xml-inline-binary-data" type="xs:boolean" default="false" />
- <xs:attribute name="xml-attachment-ref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-mime-type" type="xs:string" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="cdata" type="xs:boolean" default="false" />
- <xs:attribute name="xml-path" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-elements" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:sequence>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-element" minOccurs="0" maxOccurs="unbounded" />
- <xs:element ref="xml-element-wrapper" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-join-nodes" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- <xs:attribute name="xml-idref" type="xs:boolean" default="false" />
- <xs:attribute name="xml-list" type="xs:boolean" default="false" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element-ref" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element name="xml-access-methods" type="xml-access-methods" minOccurs="0"/>
- <xs:element ref="xml-element-wrapper" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-java-type-adapter" minOccurs="0" />
- </xs:all>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="javax.xml.bind.annotation.XmlElementRef.DEFAULT" />
- <xs:attribute name="xml-mixed" type="xs:boolean" default="false" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element-refs" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:sequence>
- <xs:element name="xml-access-methods" type="xml-access-methods" minOccurs="0"/>
- <xs:element ref="xml-element-ref" minOccurs="0" maxOccurs="unbounded" />
- <xs:element ref="xml-element-wrapper" minOccurs="0" />
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-java-type-adapter" minOccurs="0" />
- </xs:sequence>
- <xs:attribute name="xml-mixed" type="xs:boolean" default="false" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-inverse-reference" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-properties" minOccurs="0" />
- </xs:all>
- <xs:attribute name="mapped-by" type="xs:string" use="required" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-element-wrapper">
- <xs:complexType>
- <xs:attribute name="name" type="xs:string" default="##default" />
- <xs:attribute name="namespace" type="xs:string" default="##default" />
- <xs:attribute name="nillable" type="xs:boolean" default="false" />
- <xs:attribute name="required" type="xs:boolean" default="false" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-value" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:all>
- <xs:element ref="xml-abstract-null-policy" minOccurs="0" />
- <xs:element ref="xml-access-methods" minOccurs="0" />
- <xs:element ref="xml-properties" minOccurs="0" />
- <xs:element ref="xml-java-type-adapter" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="cdata" type="xs:boolean" default="false" />
- <xs:attribute name="read-only" type="xs:boolean" default="false" />
- <xs:attribute name="type" type="xs:string" default="##default" />
- <xs:attribute name="write-only" type="xs:boolean" default="false" />
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-map">
- <xs:complexType>
- <xs:all>
- <xs:element name="key" minOccurs="0">
- <xs:complexType>
- <xs:attribute name="type" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="value" minOccurs="0">
- <xs:complexType>
- <xs:attribute name="type" type="xs:string" />
- </xs:complexType>
- </xs:element>
- </xs:all>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-abstract-null-policy" type="xml-abstract-null-policy" />
- <xs:complexType name="xml-abstract-null-policy" abstract="true">
- <xs:attribute name="xsi-nil-represents-null" type="xs:boolean" default="false" />
- <xs:attribute name="empty-node-represents-null" type="xs:boolean" default="false" />
- <xs:attribute name="null-representation-for-xml" type="xml-marshal-null-representation" default="ABSENT_NODE" />
- </xs:complexType>
- <xs:element name="xml-null-policy" substitutionGroup="xml-abstract-null-policy">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="xml-abstract-null-policy">
- <xs:attribute name="is-set-performed-for-absent-node" type="xs:boolean" default="true" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-is-set-null-policy" substitutionGroup="xml-abstract-null-policy">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="xml-abstract-null-policy">
- <xs:sequence>
- <xs:element name="is-set-parameter" minOccurs="0" maxOccurs="unbounded">
- <xs:complexType>
- <xs:attribute name="value" type="xs:string" use="required" />
- <xs:attribute name="type" type="xs:string" use="required" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="is-set-method-name" type="xs:string" use="required" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-transformation" substitutionGroup="java-attribute">
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:sequence>
- <xs:element name="xml-access-methods" type="xml-access-methods" minOccurs="0"/>
- <xs:element ref="xml-properties" minOccurs="0"/>
- <xs:element name="xml-read-transformer">
- <xs:complexType>
- <xs:attribute name="method" type="xs:string" />
- <xs:attribute name="transformer-class" type="xs:string" />
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-write-transformer" minOccurs="0" maxOccurs="unbounded">
- <xs:complexType>
- <xs:attribute name="method" type="xs:string" />
- <xs:attribute name="xml-path" type="xs:string" use="required" />
- <xs:attribute name="transformer-class" type="xs:string" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="optional" type="xs:boolean" default="true"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
- <xs:element name="xml-join-nodes" substitutionGroup="java-attribute" >
- <xs:complexType>
- <xs:complexContent>
- <xs:extension base="java-attribute">
- <xs:sequence>
- <xs:element name="xml-join-node" minOccurs="1" maxOccurs="unbounded" >
- <xs:complexType>
- <xs:attribute name="xml-path" type="xs:string" use="required" />
- <xs:attribute name="referenced-xml-path" type="xs:string" use="required" />
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="container-type" type="xs:string" default="##default" />
- <xs:attribute name="type" type="xs:string" default="##default" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-</xs:schema> \ No newline at end of file
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_1.1.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_1.1.xsd
deleted file mode 100644
index 3746ead644..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_1.1.xsd
+++ /dev/null
@@ -1,4183 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-******************************************************************************
- Copyright (c) 1998, 2010 Oracle. All rights reserved.
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
- which accompanies this distribution.
- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
- and the Eclipse Distribution License is available at
- http://www.eclipse.org/org/documents/edl-v10.php.
-
- Contributors:
- Oracle - initial API and implementation from Oracle TopLink
-*****************************************************************************/
--->
-<!-- Eclipse Persistence Service Project :: Map Schema file for ORM/OXM/EIS -->
-<xsd:schema
- targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns="http://www.eclipse.org/eclipselink/xsds/persistence"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="1.1"
- >
- <xsd:element name="object-persistence" type="object-persistence" />
- <xsd:complexType name="object-persistence">
- <xsd:annotation>
- <xsd:documentation>An object-persistence mapping module, a set of class-mapping-descriptors.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>A name for the model being mapped.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-mapping-descriptors">
- <xsd:annotation>
- <xsd:documentation>The list of class mapping descriptors.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="class-mapping-descriptor" type="class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Information of how a class is persisted to its data-store.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="login" type="datasource-login">
- <xsd:annotation>
- <xsd:documentation>The datasource connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="default-temporal-mutable" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines the default for how Date and Calendar types are used with change tracking.</xsd:documentation>
- <xsd:documentation>By default they are assumed not to be changed directly (only replaced).</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute default="Eclipse Persistence Services - 1.1 (Build YYMMDD)" name="version" type="xsd:string" />
- </xsd:complexType>
- <xsd:complexType name="datasource-login">
- <xsd:annotation>
- <xsd:documentation>The datasource connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="platform-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the platform class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="user-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The datasource user-name.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="password" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The datasource password, this is stored in encrypted form.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="external-connection-pooling" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines if the connections are managed by the datasource driver, and a new connection should be acquire per call.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="external-transaction-controller" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines if the transaction are managed by a transaction manager, and should not be managed by TopLink.</xsd:documentation>
- <xsd:documentation>This can also be used if the datasource does not support transactions.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="sequencing">
- <xsd:annotation>
- <xsd:documentation>Sequencing information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="default-sequence" type="sequence">
- <xsd:annotation>
- <xsd:documentation>Default sequence. The name is optional. If no name provided an empty string will be used as a name.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="sequences">
- <xsd:annotation>
- <xsd:documentation>Non default sequences. Make sure each sequence has unique name.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="sequence" type="sequence" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="database-login">
- <xsd:annotation>
- <xsd:documentation>The JDBC driver and database connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="datasource-login">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="driver-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the JDBC driver class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="connection-url" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The full JDBC driver connection URL.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="bind-all-parameters" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if parameter binding should be used.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cache-all-statements" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if statement caching should be used. This should be used with parameter binding, this cannot be used with external connection pooling.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="byte-array-binding" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if byte array data-types should use binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="string-binding" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if string data-types should use binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="256" name="string-binding-size" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Configure the threshold string size for usage of string binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="streams-for-binding" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if large byte array and string data-types should be bound as streams.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="force-field-names-to-upper-case" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure to force all field names to upper-case.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="optimize-data-conversion" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure data optimization.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="trim-strings" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if string trailing blanks should be trimmed. This is normally required for CHAR data-types.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-writing" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if batch writing should be used.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="jdbc-batch-writing" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>If using batch writing, configure if the JDBC drivers batch writing should be used.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-login">
- <xsd:annotation>
- <xsd:documentation>The JCA driver and EIS connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="datasource-login">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="connection-spec-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the TopLink platform specific connection spec class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="connection-factory-url" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The JNDI url for the managed JCA adapter's connection factory.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-login">
- <xsd:annotation>
- <xsd:documentation>The connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="datasource-login">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="true"
- name="equal-namespace-resolvers" type="xsd:boolean" />
- <xsd:element name="document-preservation-policy"
- type="document-preservation-policy" maxOccurs="1"
- minOccurs="0">
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Information of how a class is persisted to its data-store.</xsd:documentation>
- <xsd:documentation>This is an abstract definition to allow flexibility in the types of classes and datastores persisted, i.e. interfaces, abstract classes, aggregates, non-relational persistence.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the implementation class being persisted. The class name must be full qualified with its package.</xsd:documentation>
- <xsd:documentation>Example: <class xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">example.employee.implementation.Employee</class></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="alias" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optionally an alias name can be given for the class. The alias is a string that can be used to refer to the class in place of its implementation name, such as in querying.</xsd:documentation>
- <xsd:documentation>Example: <alias xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">Employee</alias></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="primary-key">
- <xsd:annotation>
- <xsd:documentation>The list of fields/columns that make up the primary key or unique identifier of the class.</xsd:documentation>
- <xsd:documentation>This is used for caching, relationships, and for database operations.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The primary key field.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="read-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines if the class is read-only.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="properties">
- <xsd:annotation>
- <xsd:documentation>Allow for user defined properties to be defined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="property" type="property">
- <xsd:annotation>
- <xsd:documentation>A user defined property.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="inheritance" type="inheritance-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class is related in inheritance and how this inheritance is persisted.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="events" type="event-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the persistent events for this class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="querying" type="query-policy">
- <xsd:annotation>
- <xsd:documentation>The list of defined queries for the class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="attribute-mappings">
- <xsd:annotation>
- <xsd:documentation>The list of mappings that define how the class' attributes are persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="attribute-mapping" type="attribute-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a attribute is persisted. The attribute mapping definition is extendable to allow for different types of mappings.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="descriptor-type" type="class-descriptor-type">
- <xsd:annotation>
- <xsd:documentation>Defines the descriptor type, such as aggregate or independent.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="interfaces" type="interface-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the interfaces that this class implements..</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="locking" type="locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the locking behavior for the class. Such as an optimistic locking policy based on version, timestamp or change set of columns.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="sequencing" type="sequencing-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how a generated unique id should be assigned to the class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="caching" type="caching-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class' instances should be cached.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="remote-caching" type="caching-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class' instances should be cached on remote clients.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="history-policy" type="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of objects are persisted to the data-store. By default there will be no history policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="returning-policy" type="returning-policy">
- <xsd:annotation>
- <xsd:documentation>Defines retuning policy. By default there will be no returning policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="amendment" type="amendment">
- <xsd:annotation>
- <xsd:documentation>Allow for the descriptor to be amended or customized through a class API after loading.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="instantiation" type="instantiation-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object instantiation behavoir to be customized</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="copying" type="copy-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object cloning/copying behavoir to be customized.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="query-keys">
- <xsd:annotation>
- <xsd:documentation>A list of query keys or aliases for database information. These can be used in queries instead of the database column names.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="query-key" type="query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for querying database information.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="cmp-policy" type="cmp-policy">
- <xsd:annotation>
- <xsd:documentation>Place holder of CMP information specific.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-groups" type="fetch-groups">
- <xsd:annotation>
- <xsd:documentation>Contains all pre-defined fetch groups at the descriptor level</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="1" name="change-policy" type="change-policy">
- <xsd:annotation>
- <xsd:documentation>Contains the Change Policy for this descriptor</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute fixed="10" name="schema-major-version" type="xsd:integer" />
- <xsd:attribute fixed="0" name="schema-minor-version" type="xsd:integer" />
- </xsd:complexType>
- <xsd:simpleType name="class-descriptor-type">
- <xsd:annotation>
- <xsd:documentation>Defines the class descriptor type.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="independent" />
- <xsd:enumeration value="aggregate" />
- <xsd:enumeration value="aggregate-collection" />
- <xsd:enumeration value="composite" />
- <xsd:enumeration value="composite" />
- <xsd:enumeration value="interface" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="interface-policy">
- <xsd:annotation>
- <xsd:documentation>Specify the interfaces that a class descriptor implements, or the implemention class for an interface descriptor.</xsd:documentation>
- <xsd:documentation>Optionally a set of public interfaces for the class can be specified. This allows the interface to be used to refer to the implementation class.</xsd:documentation>
- <xsd:documentation>If two classes implement the same interface, an interface descriptor should be defined for the interface.</xsd:documentation>
- <xsd:documentation>This can also be used to define inheritance between interface descriptors.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="interface" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified interface class name.</xsd:documentation>
- <xsd:documentation>Example: <class xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">example.employee.api.Employee</class></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="implementor-descriptor" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified class name of the implementation class for which this interface is the public interface.</xsd:documentation>
- <xsd:documentation>This can be used if the interface has only a single implementor.</xsd:documentation>
- <xsd:documentation>Example: <class xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">example.employee.impl.Employee</class></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="copy-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object cloning/copying behavoir to be customized.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="instantiation-copy-policy">
- <xsd:annotation>
- <xsd:documentation>Creates a copying through creating a new instance to copy into.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="copy-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="clone-copy-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object cloning/copying behavoir to be customized through a clone method.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="copy-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the clone method on the object, i.e. 'clone'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="instantiation-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object instantiation behavoir to be customized.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the method on the factory to instantiate the object instance.'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="factory-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified factory class name.'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="factory-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the method to instantiate the factory class.'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="amendment">
- <xsd:annotation>
- <xsd:documentation>Specifies a class and static method to be called to allow for the descriptor to be amended or customized through a class API after loading.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="amendment-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation> The fully qualified name of the amendment class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="amendment-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the static amendment method on the class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="relational-class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Defines a class mapping to a relational database table(s).</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="class-mapping-descriptor">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="tables">
- <xsd:annotation>
- <xsd:documentation>The list of the tables the class is persisted to. Typically a class is persisted to a single table, but multiple tables can be defined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="table" type="table">
- <xsd:annotation>
- <xsd:documentation>The list of tables that the class is persisted to. This is typically a single table but can be multiple, or empty for inheritance or aggregated classes.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-keys-for-multiple-table" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>Allow the foreign key field references to be define for multiple table descriptors.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="multiple-table-join-criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>For complex multiple table join conditions an expression may be provided instead of the table foreign key information.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="version-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on a numeric version field/column that tracks changes and the version to an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy">
- <xsd:sequence>
- <xsd:element name="version-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The name and optionally the table of the column that the attribute is stored into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="store-version-in-cache" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the version value should be stored in the cache, or if it will be stored in the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="timestamp-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on timestamp version column that tracks changes and the version to an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="version-locking-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="server-time" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the timestamp should be obtained locally or from the database server.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="all-fields-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on comparing the original read values of all fields of the object with the current state of the values in the database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="changed-fields-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on comparing the original read values of only the changed fields of the object with the current state of the values in the database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="selected-fields-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on comparing the original read values of a specified set of fields of the object with the current state of the values in the database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy">
- <xsd:sequence>
- <xsd:element name="fields">
- <xsd:annotation>
- <xsd:documentation>Specify the set of fields to compare on update and delete.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="sequencing-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how a database generated unique id should be assigned to the class.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="sequence-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify the name of the sequence generator. This could be the name of a sequence object, or a row value in a sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="sequence-field" type="field">
- <xsd:annotation>
- <xsd:documentation>Specify the field/column that the generated sequence id is assigned to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:simpleType name="cache-type">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid caching types.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="none" />
- <xsd:enumeration value="full" />
- <xsd:enumeration value="cache" />
- <xsd:enumeration value="weak-reference" />
- <xsd:enumeration value="soft-reference" />
- <xsd:enumeration value="soft-cache-weak-reference" />
- <xsd:enumeration value="hard-cache-weak-reference" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="caching-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class' instances should be cached and how object identity should be maintained.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="soft-cache-weak-reference" name="cache-type" type="cache-type">
- <xsd:annotation>
- <xsd:documentation>Specify the type of caching, such as LRU, weak reference or none.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="100" name="cache-size" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specify the initial or maximum size of the cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="always-refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to always refresh cached objects on queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="only-refresh-cache-if-newer-version" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to refresh if the cached object is an older version.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="disable-cache-hits" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Disable obtaining cache hits on primary key queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="always-conform" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to always conform queries within a transaction.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="isolated" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if objects of this type should be isolated from the shared cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="isolate-new-data-after-transaction" name="unitofwork-isolation-level" type="unitofwork-isolation-level">
- <xsd:annotation>
- <xsd:documentation>Specify how the unit of work should be isolated to the session cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="cache-invalidation-policy" type="cache-invalidation">
- <xsd:annotation>
- <xsd:documentation>Defines the cache invalidation policy. By default there will be no cache invalidation policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="change-set" name="cache-sync-type" type="cache-sync-type">
- <xsd:annotation>
- <xsd:documentation>The type of cache synchronization to be used with this descripor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="cache-invalidation" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Abstract superclass for cache invalidation policies.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="update-read-time-on-update" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="no-expiry-cache-invalidation-policy">
- <xsd:annotation>
- <xsd:documentation>Cache invalidation policy where objects in the cache do not expire.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="cache-invalidation" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="time-to-live-cache-invalidation-policy">
- <xsd:annotation>
- <xsd:documentation>Cache invalidation policy where objects live a specific number of milliseconds after they are read.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="cache-invalidation">
- <xsd:sequence>
- <xsd:element name="time-to-live" type="xsd:long" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="daily-cache-invalidation-policy">
- <xsd:annotation>
- <xsd:documentation>Cache invalidation Policy where objects expire at a specific time every day</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="cache-invalidation">
- <xsd:sequence>
- <xsd:element name="expiry-time" type="xsd:dateTime" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of objects are to be persisted to the data-store.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="true" name="handle-writes" type="xsd:boolean" />
- <xsd:element minOccurs="0" default="false" name="use-database-time" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="history-tables">
- <xsd:annotation>
- <xsd:documentation>Defines the names of the mirroring historical tables.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="history-table" type="history-table" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="start-fields">
- <xsd:annotation>
- <xsd:documentation>Defines the start fields for each historical table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="start-field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="end-fields">
- <xsd:annotation>
- <xsd:documentation>Defines the end fields for each historical table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="end-field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="history-table">
- <xsd:annotation>
- <xsd:documentation>Each entry is a source (descriptor) to history table name association.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="" name="source" type="xsd:string" />
- <xsd:element minOccurs="1" name="history" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="returning-policy">
- <xsd:annotation>
- <xsd:documentation>Defines retuning policy. By default there will be no returning policy.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="1" name="returning-field-infos">
- <xsd:annotation>
- <xsd:documentation>Lists the fields to be returned together with the flags defining returning options</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="returning-field-info" type="returning-field-info" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="returning-field-info">
- <xsd:annotation>
- <xsd:documentation>Field to be returned together with type and the flags defining returning options. At least one of insert, update should be true.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the target referenced class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field to be returned.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="insert" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates whether the field should be retuned after Insert.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="insert-mode-return-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>If insert==true, indicates whether the field should not be inserted (true). If insert==false - ignored.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="update" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates whether the field should be retuned after Insert.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="inheritance-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class is related in inheritance and how this inheritance is persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="parent-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the parent/superclass of the class being persisted. The class name must be full qualified with its package.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="read-subclasses-on-queries" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Define if subclasses of the class should be returned on queries, or only the exact class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="all-subclasses-view" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optionally specify the name of a view that joins all of the subclass' tables.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="use-class-name-as-indicator" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the fully qualified class name should be used as the class type indicator.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-extraction-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of a method on the class that takes the class' row as argument a computed that class type to be used to instantiate from the row.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-indicator-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The name of the type field/column that the class type is stored into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-indicator-mappings" type="class-indicator-mappings">
- <xsd:annotation>
- <xsd:documentation>The set of class indicator values and the subclasses they map to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-extractor" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of a class that implements a class extractor interface.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="only-instances-criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>The criteria that filters out all sibling and subclass instances on queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="all-subclasses-criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>The criteria that filters out sibling instances on queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="outer-join-subclasses" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>For inheritance queries specify if all subclasses should be outer joined, instead of a query per subclass.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="qname-inheritance-policy">
- <xsd:annotation>
- <xsd:documentation>Extends inheritance policy. Allows for prefixed names to be resolved at runtime to find the approriate class</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="inheritance-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="class-indicator-mappings">
- <xsd:annotation>
- <xsd:documentation>The set of class indicator values and the subclasses they map to.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="class-indicator-mapping">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the class the type maps to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="class-indicator" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>The field value used to define the class type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="event-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the persistent events for this class.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="event-listeners">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="event-listener" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of an event listener class that implements the descriptor event listener interface.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-build-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after building the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-write-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before writing the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-write-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after writing the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-insert-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before inserting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-insert-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after inserting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-update-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before updating the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-update-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after updating the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-delete-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before deleting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-delete-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after deleting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="about-to-insert-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before inserting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="about-to-update-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before updating the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-clone-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after cloning the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-merge-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after merging the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-refresh-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after refreshing the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="query-policy">
- <xsd:annotation>
- <xsd:documentation>The list of defined queries and query properties for the class.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="queries">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="query" type="query">
- <xsd:annotation>
- <xsd:documentation>A query definition for the class' instances.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="timeout" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies a timeout to apply to all queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="check-cache" name="existence" type="existence-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the behavoir used to determine if an insert or update should occur for an object to be customized.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="insert-query" type="insert-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom insert query. This overide the default insert behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="update-query" type="update-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom update query. This overide the default update behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-query" type="delete-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom delete query. This overide the default delete behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="does-exist-query" type="does-exist-query">
- <xsd:annotation>
- <xsd:documentation>Custom does exist query. This overide the default delete behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="read-object-query" type="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom read object query. This overide the default read behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="read-all-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Custom read all query. This overide the default read all behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:simpleType name="existence-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid existence policies for determining if an insert or update should occur for an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="check-cache" />
- <xsd:enumeration value="check-database" />
- <xsd:enumeration value="assume-existence" />
- <xsd:enumeration value="assume-non-existence" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for querying database information.</xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query-key alias name.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:simpleType name="cache-sync-type">
- <xsd:annotation>
- <xsd:documentation>The type of cache synchronization to use with a descriptor.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="invalidation" />
- <xsd:enumeration value="no-changes" />
- <xsd:enumeration value="change-set-with-new-objects" />
- <xsd:enumeration value="change-set" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="unitofwork-isolation-level">
- <xsd:annotation>
- <xsd:documentation>Specify how the unit of work isolated from the session cache.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="use-session-cache-after-transaction" />
- <xsd:enumeration value="isolate-new-data-after-transaction" />
- <xsd:enumeration value="isolate-cache-after-transaction" />
- <xsd:enumeration value="isolate-cache-always" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="direct-query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a database column.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="query-key">
- <xsd:sequence>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field/column being aliased.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="relationship-query-key" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a join to another class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="query-key">
- <xsd:sequence>
- <xsd:element name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the target referenced class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:choice>
- <xsd:element name="foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key join condition between the source and target class' tables.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>The join criteria between the source and target class' tables.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:choice>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-one-query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a 1-1 join to another class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-query-key" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-many-query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a 1-m join from another class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="relationship-query-key" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping from an attirbute to a simple field datatype, i.e. String, Number, Date.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The name and optionally the table of the field/column that the attribute is stored into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="null-value" type="xsd:anySimpleType" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>Optionally specify a value that null data values should be converted to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="converter" type="value-converter" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>Optionally specify how the data value should be converted to the object value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="attribute-classification" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="attribute-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a attribute is persisted. The attribute mapping definition is extendable to allow for different types of mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="attribute-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the attribute. This is the implementation class attribute name.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="read-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the attribute is read-only.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="get-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the get method for the attribute.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="set-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the set method for the attribute.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="properties">
- <xsd:annotation>
- <xsd:documentation>Allow for user defined properties to be defined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="property" type="property">
- <xsd:annotation>
- <xsd:documentation>A user defined property.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a simple attribute is persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="abstract-direct-mapping">
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping from an attirbute to a simple field datatype, i.e. String, Number, Date.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="abstract-direct-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="is-cdata" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="null-policy" type="abstract-null-policy" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping from an attirbute to a simple field datatype, i.e. String, Number, Date.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-direct-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="field-transformation" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a field transformation for a transformation mapping</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="method-based-field-transformation">
- <xsd:complexContent mixed="false">
- <xsd:extension base="field-transformation">
- <xsd:sequence>
- <xsd:element name="method" type="xsd:string" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="transformer-based-field-transformation">
- <xsd:complexContent mixed="false">
- <xsd:extension base="field-transformation">
- <xsd:sequence>
- <xsd:element name="transformer-class" type="xsd:string" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a transformation mapping that uses Java code to transform between the data and object values.</xsd:documentation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="attribute-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the attribute transformation defined in the domain class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="attribute-transformer" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The class name of the attribute transformer. Used in place of attribute-transformation.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="mutable" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy" />
- <xsd:element minOccurs="0" name="field-transformations">
- <xsd:annotation>
- <xsd:documentation>The field transformations.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field-transformation" type="field-transformation" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-transformation-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-transformation-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-transformation-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="aggregate-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a relationship where the target object is strictly privately owned by the source object and stores within the source objects row</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified class name of the target class of the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="allow-null" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if a row of all nulls should be interpreted as null.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="field-translations">
- <xsd:annotation>
- <xsd:documentation>Allow for the mapping to use different field names than the descriptor.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field-translation">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="source-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field in the source descriptor's table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="target-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field in the aggregate descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="relationship-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a relationship between two classes is persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified class name of the target class of the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="private-owned" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the target objects are privately owned dependent objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-persist" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the create operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-merge" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the create operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the refresh operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-remove" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the remove operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-one-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-1 relationship from the source instance to the target instance.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the source class' table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-one-to-one-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-1 relationship from the source instance to the target instance.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="one-to-one-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-many-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-m relationship from the source instance to the target instances.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="target-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the target class' table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the related objects can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-one-to-many-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-m relationship from the source instance to the target instances.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="source-foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="target-foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-key-grouping-element" type="field" />
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the related objects can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a collection of simple types relationship from the source instance to a set of simple data values.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="data-read-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target data values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="reference-table" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the reference table that stores the source primary key and the data values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="direct-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field/column in the reference table that stores the data values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="reference-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the reference table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="value-converter" type="value-converter">
- <xsd:annotation>
- <xsd:documentation>Optionally specify how the data value should be converted to the object value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="insert-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to insert a row into the reference table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete a row from the reference table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the rows from the reference table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="session-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name session that defines the reference table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="history-policy" type="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of this attribute are persisted to the data-store. By default there will be no history policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-map-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a map relationship from the source instance to a set of key values pairs of simple data values.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="direct-collection-mapping">
- <xsd:sequence>
- <xsd:element name="direct-key-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field/column in the reference table that sores the map key data value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="key-converter" type="value-converter">
- <xsd:annotation>
- <xsd:documentation>Optionally specify how the key data value should be converted to the object value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="aggregate-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-m relationship from the source instance to the target instances where the target instances are strictly privately owned by the source object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="target-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the target class' table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the related objects can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="many-to-many-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a m-m relationship from the source instance to the target instances.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="relation-table" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the relation table that stores the source/target primary keys.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="source-relation-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key from the relational table to the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="target-relation-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key from the relational table to the target class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="insert-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to insert a row into the relation table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete a row from the relation table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the rows from the relation table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="history-policy" type="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of this attribute are persisted to the data-store. By default there will be no history policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="variable-one-to-one-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-1 relationship from the source instance to the target instance that may be of several types related through an interface.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="type-field" type="field">
- <xsd:annotation>
- <xsd:documentation>Specify the column to store the class type of the related object into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="foreign-key-to-query-key">
- <xsd:annotation>
- <xsd:documentation>The list of source/target column/query key references relating a foreign key in one table to the query keys defining a primary or unique key value in the other interface descriptor.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="query-key-reference">
- <xsd:annotation>
- <xsd:documentation>The reference of a source table foreign key and a target interface descriptor query key.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="source-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The foreign key field/column name in the source table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="target-query-key" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query key name of the target interface descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-indicator-mappings" type="class-indicator-mappings">
- <xsd:annotation>
- <xsd:documentation>The set of class indicator values and the subclasses they map to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a container/collection type.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="collection-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the collection implementation class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="sorted-collection-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a sorted collection type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="comparator-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the comparitor, used to compare objects in sorting the collection.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="list-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a list collection type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="map-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a map container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="map-key-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the method to call on the target objects to get the key value for the map.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-map-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a direct map container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="scrollable-cursor-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a scrollable cursor container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="cursored-stream-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a cursored stream container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="indirection-policy" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a deferred read indirection mechanism.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="value-holder-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of value holders to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="proxy-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of proxies to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="transparent-collection-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of transparent collections to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="collection-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the collection interface to use, i.e. List, Set, Map.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="map-key-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the method to call on the target objects to get the key value for the map.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="container-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of a user defined container to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy">
- <xsd:sequence>
- <xsd:element name="container-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the container implementer to use.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="typesafe-enumeration-converter">
- <xsd:annotation>
- <xsd:documentation>Typesafe Enumeration conversion</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="type-conversion-converter">
- <xsd:annotation>
- <xsd:documentation>Specifies the data type and an object type of the attribute to convert between.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="object-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the attribute type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="data-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the attributes storage data type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="serialized-object-converter">
- <xsd:annotation>
- <xsd:documentation>Uses object serialization to convert between the object and data type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="data-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the attributes storage data type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-type-converter">
- <xsd:annotation>
- <xsd:documentation>Specifies a mapping of values from database values used in the field and object values used in the attribute.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="default-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>An optional default value can be specified. This value is used if a database type is not found in the type mapping.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="type-mappings">
- <xsd:annotation>
- <xsd:documentation>Specifies the mapping of values. Both the object and database values must be unique.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="type-mapping" type="type-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines the object and data value mapping.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="attribute-only-type-mappings">
- <xsd:annotation>
- <xsd:documentation>Specifies a mapping of additional values that map non-unique data values to a unique attribute value.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="type-mapping" type="type-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines the object and data value mapping.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="type-mapping">
- <xsd:annotation>
- <xsd:documentation>Define an object and data value mapping.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="object-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>Specifies the value to use in the object's attribute.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="data-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>Specifies the value to use in the database field.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="database-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query/interaction against a database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="query">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="true" name="maintain-cache" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should bypass the cache completely.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bind-all-parameters" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should use paramater binding for arguments, or print the arguments in-line.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="cache-statement" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the queries statement should be cached, this must be used with parameter binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="timeout" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies a timeout to cancel the query in if the request takes too long to complete.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="prepare" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should prepare and cache its generated SQL, or regenerate the SQL on each execution.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="call" type="criteria">
- <xsd:annotation>
- <xsd:documentation>For static calls the SQL or Stored Procedure call definition can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid join fetch options.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="none" />
- <xsd:enumeration value="inner-join" />
- <xsd:enumeration value="outer-join" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="cascade-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid cascade policies.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="none" />
- <xsd:enumeration value="private" />
- <xsd:enumeration value="all" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="value-read-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading a single value.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="direct-read-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-read-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading a collection of values.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="data-read-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="data-read-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading raw data.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="read-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="read-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="cache-query-results" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should cache the query results to avoid future executions.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="max-rows" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies the maximum number of rows to fetch, results will be trunctate on the database to this size.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="first-result" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies where to start the cursor in a result set returned from the database. Results prior to this number will not be built into objects</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-size" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifiess the number of rows to fetch from the database on each result set next operation.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="query-result-cache-policy" type="query-result-cache-policy">
- <xsd:annotation>
- <xsd:documentation>Specify how the query results should be cached.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="query-result-cache-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how a query's results should be cached.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="invalidation-policy" type="cache-invalidation">
- <xsd:annotation>
- <xsd:documentation>Defines the cache invalidation policy. By default there will be no cache invalidation policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="100" name="maximum-cached-results" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>This defines the number of query result sets that will be cached. The LRU query results will be discarded when the max size is reached.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for manipulating data.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-modify-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query for modifying an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="update-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for updating an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-modify-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="insert-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for inserting an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-modify-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="delete-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for deleting an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-modify-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="does-exist-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for determining if an object exists.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="existence-check" type="existence-check">
- <xsd:annotation>
- <xsd:documentation>The existence check option.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="existence-check">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid existence check options.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="check-cache" />
- <xsd:enumeration value="check-database" />
- <xsd:enumeration value="assume-existence" />
- <xsd:enumeration value="assume-non-existence" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for deleting a criteria of objects.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-level-read-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query for objects (as apposed to data).</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="read-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The full qualified name of the class of objects being queried.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should refresh any cached objects from the database.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="remote-refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should refresh any remotely cached objects from the server.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="cascade-policy" type="cascade-policy">
- <xsd:annotation>
- <xsd:documentation>Specifies if the queries settings (such as refresh, maintain-cache) should apply to the object's relationship queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="primary-key" name="cache-usage" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify how the query should interact with the cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="lock-mode" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should lock the resulting rows on the database.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="distinct-state" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should filter distinct results.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="in-memory-querying">
- <xsd:annotation>
- <xsd:documentation>The in memory querying policy.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element default="ignore-exceptions-return-conformed" name="policy" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify how indirection or unconformable expressions should be treating with in-memory querying and conforming.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="use-default-fetch-group" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the default fetch group should be used for the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-group" type="fetch-group">
- <xsd:annotation>
- <xsd:documentation>Allow the query to partially fetch the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-group-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify a pre-defined named fetch group to allow the query to partially fetch the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="use-exclusive-connection" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the exclusive connection (VPD) should be used for the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="joined-attribute-expressions">
- <xsd:annotation>
- <xsd:documentation>Specifies the attributes being joined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for joining</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="read-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if objects resulting from the query are read-only, and will not be registered in the unit of work.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="outer-join-subclasses" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>For inheritance queries specify if all subclasses should be outer joined, instead of a query per subclass.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for a set of objects.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-level-read-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="batch-read-attribute-expressions">
- <xsd:annotation>
- <xsd:documentation>Specifies all attributes for batch reading.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for batch reading</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="order-by-expressions">
- <xsd:annotation>
- <xsd:documentation>Sets the order expressions for the query.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for ordering</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for a single object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-level-read-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="report-query">
- <xsd:annotation>
- <xsd:documentation>Query for information about a set of objects instead of the objects themselves.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="read-all-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="return-choice" type="return-choice">
- <xsd:annotation>
- <xsd:documentation>Simplifies the result by only returning the first result, first value, or all attribute values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="retrieve-primary-keys" type="retrieve-primary-keys">
- <xsd:annotation>
- <xsd:documentation>Indicates wether the primary key values should also be retrieved for the reference class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="report-items">
- <xsd:annotation>
- <xsd:documentation>Items to be selected, these could be attributes or aggregate functions.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="report-item">
- <xsd:annotation>
- <xsd:documentation>Represents an item requested</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="group-by-expressions">
- <xsd:annotation>
- <xsd:documentation>Sets GROUP BY expressions for the query.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for grouping</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="return-choice">
- <xsd:annotation>
- <xsd:documentation>Simplifies the result by only returning the first result, first value, or all attribute values.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="return-single-result" />
- <xsd:enumeration value="return-single-value" />
- <xsd:enumeration value="return-single-attribute" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="retrieve-primary-keys">
- <xsd:annotation>
- <xsd:documentation>Indicates wether the primary key values should also be retrieved for the reference class.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="full-primary-key" />
- <xsd:enumeration value="first-primary-key" />
- <xsd:enumeration value="no-primary-key" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="report-item">
- <xsd:annotation>
- <xsd:documentation>Represents an item requested in ReportQuery.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Name given for item, can be used to retieve value from result.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="attribute-expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Expression (partial) that describes the attribute wanted.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="expression" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query filter expression tree.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="relation-expression">
- <xsd:annotation>
- <xsd:documentation>Defines a relation expression that compares to expressions through operators such as equal, lessThan, etc..</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="left" type="expression" />
- <xsd:element name="right" type="expression" />
- </xsd:sequence>
- <xsd:attribute name="operator" type="operator" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="logic-expression">
- <xsd:annotation>
- <xsd:documentation>Defines a expression composed of two sub-expressions joined through an operator such as AND, OR.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="left" type="expression" />
- <xsd:element name="right" type="expression" />
- </xsd:sequence>
- <xsd:attribute name="operator" type="operator" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="function-expression">
- <xsd:annotation>
- <xsd:documentation>Defines a expression composed of a function applied to a list of sub-expressions.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="arguments">
- <xsd:annotation>
- <xsd:documentation>The list of function arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="expression">
- <xsd:annotation>
- <xsd:documentation>Defines an argument expression.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="function" type="operator" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="constant-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression value. If the value is null the value tag can is absent.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="value" type="xsd:anySimpleType" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="query-key-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression query-key.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="base" type="expression" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" />
- <xsd:attribute name="any-of" type="xsd:boolean" />
- <xsd:attribute name="outer-join" type="xsd:boolean" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="field-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression field.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="field" type="field" />
- <xsd:element name="base" type="expression" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="parameter-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression parameter.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="parameter" type="field" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="base-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression builder/base.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="operator">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid operators.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string" />
- </xsd:simpleType>
- <xsd:complexType name="sql-call">
- <xsd:annotation>
- <xsd:documentation>Defines an SQL query language string.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="sql" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The full SQL query string. Arguments can be specified through #arg-name tokens in the string.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="ejbql-call">
- <xsd:annotation>
- <xsd:documentation>Defines an EJB-QL query language string.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="ejbql" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The EJB-QL query string.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="stored-procedure-call">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure invocation definition.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="procedure-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the stored procedure.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="cursor-output-procedure" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Define the call to use a cursor output parameter to define the result set.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input and output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="procedure-argument">
- <xsd:annotation>
- <xsd:documentation>Defines an argument to the procedure. The order of the arguments must match the procedure arguments if not named.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="stored-function-call">
- <xsd:annotation>
- <xsd:documentation>Defines a stored function invocation definition.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="stored-procedure-call">
- <xsd:sequence>
- <xsd:element minOccurs="1" name="stored-function-result" type="procedure-output-argument">
- <xsd:annotation>
- <xsd:documentation>The return value of the stored-function.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="procedure-argument">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure call argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="procedure-argument-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The stored procedure name of the argument. For indexed argument the name is not required.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="argument-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query name of the argument. This is the name of the argument as define in the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="procedure-argument-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the argument class type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="procedure-argument-sqltype" type="xsd:int">
- <xsd:annotation>
- <xsd:documentation>The JDBC int type of the argument, as defined in java.jdbc.Types</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="procedure-argument-sqltype-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the type if procedure-argument-sqltype is STRUCT or ARRAY</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="argument-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>The procedure argument value maybe be specified if not using a query argument.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="procedure-output-argument">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure call output argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="procedure-argument" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="procedure-inoutput-argument">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure call output argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="procedure-argument">
- <xsd:sequence>
- <xsd:element name="output-argument-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query name of the argument. This is the name of the argument as define in the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="plsql-stored-procedure-call">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure invocation definition whose arguments contain at least one Oracle PL/SQL type that has no JDBC representation (e.g. BOOLEAN, PLS_INTEGER, PL/SQL record).</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="procedure-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the stored procedure.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input and output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="plsql-procedure-argument-type">
- <xsd:annotation>
- <xsd:documentation>Defines an argument to the procedure.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="plsql-procedure-argument-type" abstract="true">
- <xsd:sequence>
- <xsd:element name="name" type="xsd:string" />
- <xsd:element minOccurs="0" name="index" type="xsd:string" />
- <xsd:element minOccurs="0" name="direction" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="jdbc-type">
- <xsd:complexContent mixed="false">
- <xsd:extension base="plsql-procedure-argument-type">
- <xsd:sequence>
- <xsd:choice>
- <xsd:element minOccurs="0" name="length" type="xsd:string" />
- <xsd:sequence>
- <xsd:element name="precision" type="xsd:string" />
- <xsd:element name="scale" type="xsd:string" />
- </xsd:sequence>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="type-name" type="xsd:string" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="plsql-type">
- <xsd:complexContent mixed="false">
- <xsd:extension base="plsql-procedure-argument-type">
- <xsd:attribute name="type-name" type="xsd:string" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="plsql-record">
- <xsd:complexContent mixed="false">
- <xsd:extension base="plsql-procedure-argument-type">
- <xsd:sequence>
- <xsd:element name="type-name" type="xsd:string" />
- <xsd:element minOccurs="0" name="compatible-type" type="xsd:string" />
- <xsd:element minOccurs="0" name="java-type" type="xsd:string" />
- <xsd:element minOccurs="0" name="fields">
- <xsd:annotation>
- <xsd:documentation>The list of fields.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="plsql-procedure-argument-type">
- <xsd:annotation>
- <xsd:documentation>Defines an argument to the procedure.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="plsql-collection">
- <xsd:complexContent mixed="false">
- <xsd:extension base="plsql-procedure-argument-type">
- <xsd:sequence>
- <xsd:element name="type-name" type="xsd:string" />
- <xsd:element minOccurs="0" name="compatible-type" type="xsd:string" />
- <xsd:element minOccurs="0" name="java-type" type="xsd:string" />
- <xsd:element minOccurs="0" name="nested-type" type="plsql-procedure-argument-type" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Defines a class mapping to an EIS record data structure.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="class-mapping-descriptor">
- <xsd:sequence>
- <xsd:element name="datatype" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the record structure name the descriptor maps to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="namespace-resolver" type="namespace-resolver">
- <xsd:annotation>
- <xsd:documentation>The namespace resolver for the descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="mapped-interaction">
- <xsd:annotation>
- <xsd:documentation>Defines an EIS interaction utilizing MappedRecord.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="function-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the function.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-result-path" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optional root key if the input result is not at the record root.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="output-result-path" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optional root key if the output result is not at the record root.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="output-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-interaction">
- <xsd:annotation>
- <xsd:documentation>Defines an EIS interaction utilizing XML records.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="function-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the function.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-record-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name to use for the input record, if required by the adapter.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-root-element-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optional root key if the output result is not at the record root.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-result-path" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optional root key if the input result is not at the record root.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="output-result-path" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optional root key if the output result is not at the record root.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="output-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="indexed-interaction">
- <xsd:annotation>
- <xsd:documentation>Defines an EIS interaction utilizing Indexed records.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="function-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the function.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="output-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="interaction-argument">
- <xsd:annotation>
- <xsd:documentation>Defines an interaction argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="argument-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>The procedure argument value maybe be specified if not using a query argument.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The interaction name of the argument. For indexed arguments the name is not required.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- <xsd:attribute name="argument-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query name of the argumen. This is the name of the argument as define in the query, or the descriptor field name.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:complexType name="object-relational-class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Defines a class mapping to a Structure type in an object-relational database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relational-class-mapping-descriptor">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="structure" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the object structure type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="field-order">
- <xsd:annotation>
- <xsd:documentation>The ordered list of the field defined in the structure.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="nested-table-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-m/m-m relationship that makes use of the object-relational nested-table type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field/column in the source table that stores the nested-table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="structure" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify the object-relational type name of the nested-table type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="array-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a collection of primitive/simple type values using the object-relational array type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-direct-collection-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="structure" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify the object-relational type name of the structure type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-array-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a collection of object-types using the object-relational array type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-collection-mapping">
- <xsd:sequence>
- <xsd:element name="structure" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify the object-relational type name of the structure type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="structure-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a structure of object-types using the object-relational structure type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-object-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="reference-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a reference to another object-type using the object-relational reference type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field in the source type that stores the reference.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-relational-field">
- <xsd:annotation>
- <xsd:documentation>Defines an ObjectRelationalDatabaseField</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="field">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="nested-type-field" type="field" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-xml-type-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a direct mapping to an Oracle XDB XML Type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="direct-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="read-whole-document" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-composite-direct-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a direct collection mapping for an XML list of elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="field" type="field" />
- <xsd:element minOccurs="0" name="value-converter" type="value-converter">
- <xsd:annotation>
- <xsd:documentation>Optionally specify how the data value should be converted to the object value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="value-converter-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optionally specify a user defined converter class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-collection-reference-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-M relationship from the source XML element to the target XML element based on a key.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="xml-object-reference-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="containerpolicy" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="uses-single-node" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-object-reference-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-1 relationship from the source XML element to the target XML element based on one or more keys.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="aggregate-object-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="source-to-target-key-field-association" type="foreign-key" />
- <xsd:element minOccurs="0" name="source-to-target-key-fields">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-composite-direct-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a direct collection mapping for an XML list of elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-direct-collection-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="is-cdata" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-composite-direct-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a direct collection mapping for an XML list of elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-direct-collection-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-composite-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite collection mapping for an XML list of nested elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="reference-class" type="xsd:string" />
- <xsd:element name="field" type="field" />
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-composite-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite collection mapping for an XML list of nested elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-collection-mapping">
- <xsd:sequence>
- <xsd:element name="container-attribute" minOccurs="0"/>
- <xsd:element name="container-get-method" minOccurs="0"/>
- <xsd:element name="container-set-method" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-composite-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite collection mapping for an XML list of nested elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-collection-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-composite-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite object mapping for an XML nested element.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="reference-class" type="xsd:string" />
- <xsd:element name="field" type="field" />
- <xsd:element name="container-attribute" minOccurs="0"/>
- <xsd:element name="container-get-method" minOccurs="0"/>
- <xsd:element name="container-set-method" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-composite-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite object mapping for an XML nested element.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-object-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="null-policy" type="abstract-null-policy" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-composite-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite object mapping for an XML nested element.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-object-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Defines a class mapping to an XML element.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="class-mapping-descriptor">
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="default-root-element" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the element the descriptor maps to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="default-root-element-field" type="node">
- <xsd:annotation>
- <xsd:documentation>The XMLField representing the default root element of the descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="should-preserve-document" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates if nodes should be cached to preserve unmapped data</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="namespace-resolver" type="namespace-resolver">
- <xsd:annotation>
- <xsd:documentation>The namespace resolver for the descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="schema" type="schema-reference">
- <xsd:annotation>
- <xsd:documentation>The location of the XML Schema.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-any-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a collection to an xs:any declaration or xs:anyType element</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="field" type="field" />
- <xsd:element minOccurs="0" name="container" type="container-policy" />
- <xsd:element minOccurs="0" default="false" name="use-xml-root" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="keep-as-element-policy" type="xsd:string" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-any-attribute-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a collection to an xs:any declaration or xs:anyType element</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="field" type="field" />
- <xsd:element minOccurs="0" name="container" type="container-policy" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-any-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a single object to an xs:any declaration</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="field" type="field" />
- <xsd:element minOccurs="0" default="false" name="use-xml-root" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-fragment-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a single Node to a fragment of an XML document</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="xml-direct-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-fragment-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a collection of Nodes to a fragment of an XML document</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-collection-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-binary-data-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a binary object to base64 binary</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="xml-direct-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="is-swa-ref" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="mime-type" type="xsd:string" />
- <xsd:element minOccurs="0" name="should-inline-data" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-choice-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a collection to a choice structure in an xml document</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="container-policy" type="container-policy" />
- <xsd:element maxOccurs="unbounded" name="field-to-class-association" type="xml-choice-field-to-class-association" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-choice-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a collection to a choice structure in an xml document</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field-to-class-association" type="xml-choice-field-to-class-association" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-choice-field-to-class-association">
- <xsd:sequence>
- <xsd:element name="xml-field" type="node" />
- <xsd:element name="class-name" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="xml-conversion-pair">
- <xsd:sequence>
- <xsd:element name="qname" type="xsd:string" />
- <xsd:element name="class-name" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="node">
- <xsd:annotation>
- <xsd:documentation>Defines an XPath expression to an element or attribute in an XML document.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="field">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="position" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>The position of the node in the parent type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="typed-text-field" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>If this is a typed text field.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="single-node" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates if each item in the collection is in the same node instead of having one node per item in the collection</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="schema-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The schema type of the element.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="xml-to-java-conversion-pair" type="xml-conversion-pair" />
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="java-to-xml-conversion-pair" type="xml-conversion-pair" />
- <xsd:element minOccurs="0" name="leaf-element-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Indicates the elements type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="union-node">
- <xsd:annotation>
- <xsd:documentation>Use to represent nodes which are mapped to unions</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="field">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="typed-text-field" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>If this is a typed text field.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="single-node" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates if each item in the collection is in the same node instead of having one node per item in the collection</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="schema-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The schema type of the element.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="xml-to-java-conversion-pair" type="xml-conversion-pair" />
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="java-to-xml-conversion-pair" type="xml-conversion-pair" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="namespace-resolver">
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="1" name="namespaces">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="namespace" type="namespace" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="1" name="default-namespace-uri" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="namespace">
- <xsd:sequence>
- <xsd:element name="prefix" type="xsd:string" />
- <xsd:element name="namespace-uri" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="schema-reference">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="resource" type="xsd:string" />
- <xsd:element name="schema-context" type="xsd:string" />
- <xsd:element name="node-type" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="schema-class-path-reference">
- <xsd:complexContent mixed="false">
- <xsd:extension base="schema-reference" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="schema-file-reference">
- <xsd:complexContent mixed="false">
- <xsd:extension base="schema-reference" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="schema-url-reference">
- <xsd:complexContent mixed="false">
- <xsd:extension base="schema-reference" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="java-character">
- <xsd:restriction base="xsd:string" />
- </xsd:simpleType>
- <xsd:simpleType name="java-timestamp">
- <xsd:restriction base="xsd:dateTime" />
- </xsd:simpleType>
- <xsd:simpleType name="java-util-date">
- <xsd:restriction base="xsd:dateTime" />
- </xsd:simpleType>
- <xsd:complexType name="cmp-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="pessimistic-locking" type="pessimistic-locking">
- <xsd:annotation>
- <xsd:documentation>Defines the cmp bean-level pessimistic locking policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="defer-until-commit" type="defer-until-commit">
- <xsd:annotation>
- <xsd:documentation>Defines modification deferral level for non-deferred writes.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="non-deferred-create-time" type="non-deferred-create-time">
- <xsd:annotation>
- <xsd:documentation>Defines point at which insert will be issued to Database.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="pessimistic-locking">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="wait" name="locking-mode" type="locking-mode" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:simpleType name="defer-until-commit">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="all-modifications" />
- <xsd:enumeration value="update-modifications" />
- <xsd:enumeration value="none" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="non-deferred-create-time">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="after-ejbcreate" />
- <xsd:enumeration value="after-ejbpostcreate" />
- <xsd:enumeration value="undefined" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="locking-mode">
- <xsd:annotation>
- <xsd:documentation>Holds the pessimistic locking mode.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="wait" />
- <xsd:enumeration value="no-wait" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="sequence">
- <xsd:annotation>
- <xsd:documentation>Sequence object.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="" name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Sequence name.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="50" name="preallocation-size" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Sequence preallocation size.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="default-sequence">
- <xsd:annotation>
- <xsd:documentation>References default sequence object, overriding its name and (optionally) preallocation size.</xsd:documentation>
- <xsd:documentation>To use preallocation size of default sequence object, set preallocation size to 0</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="native-sequence">
- <xsd:annotation>
- <xsd:documentation>Database sequence mechanism used.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="table-sequence">
- <xsd:annotation>
- <xsd:documentation>Table sequence</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="SEQUENCE" name="table" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="SEQ_NAME" name="name-field" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence name field in the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="SEQ_COUNT" name="counter-field" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence counter field in the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="unary-table-sequence">
- <xsd:annotation>
- <xsd:documentation>Unary table sequence - sequence name is a table name, table has a single field and a single row</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="SEQUENCE" name="counter-field" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence counter field in the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xmlfile-sequence">
- <xsd:annotation>
- <xsd:documentation>Xmlfile sequence.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-sequence">
- <xsd:annotation>
- <xsd:documentation>Xml sequence</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="SEQUENCE" name="root-element" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="SEQ_NAME" name="name-element" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence name field in the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="SEQ_COUNT" name="counter-element" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence counter field in the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="fetch-groups">
- <xsd:annotation>
- <xsd:documentation>Contains all pre-defined fetch groups.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="default-fetch-group" type="fetch-group" />
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="fetch-group" type="fetch-group" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="fetch-group">
- <xsd:annotation>
- <xsd:documentation>Contains the fetch group attributes info.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="name" type="xsd:string" />
- <xsd:element name="fetch-group-attributes">
- <xsd:complexType>
- <xsd:annotation>
- <xsd:documentation>Contains a fetch group's attribute list.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="fetch-group-attribute" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="change-policy">
- <xsd:annotation>
- <xsd:documentation>Describes the change tracking policy for this descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="deferred-detection-change-policy">
- <xsd:annotation>
- <xsd:documentation>Uses backup clone to detect changes.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="change-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-level-change-policy">
- <xsd:annotation>
- <xsd:documentation>Uses "mark dirty" to detect changes.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="change-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="attribute-level-change-policy">
- <xsd:annotation>
- <xsd:documentation>Uses a ChangeTracker firing PropertyChangeEvent's to detect changes.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="change-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-null-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the Null Policy in use for this relationship currently a choice of [NullPolicy and IsSetNullPolicy].</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="xsi-nil-represents-null" type="xsd:boolean" />
- <xsd:element minOccurs="0" default="false" name="empty-node-represents-null" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="null-representation-for-xml" type="marshal-null-representation" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="null-policy">
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-null-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="true" name="is-set-performed-for-absent-node" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="is-set-null-policy">
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-null-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="is-set-method-name" type="xsd:string" />
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="is-set-parameter-type" type="xsd:string" />
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="is-set-parameter" type="xsd:string" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="marshal-null-representation">
- <xsd:annotation>
- <xsd:documentation>Write null, no tag(default) or an empty tag.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="XSI_NIL" />
- <xsd:enumeration value="ABSENT_NODE" />
- <xsd:enumeration value="EMPTY_NODE" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="field">
- <xsd:annotation>
- <xsd:documentation>Defines a generic field concept, such as a database column.</xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the field.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:complexType name="column">
- <xsd:annotation>
- <xsd:documentation>Defines a column in a relational database table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="field">
- <xsd:attribute name="table" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the column's table. This table must be listed in the class' tables. If not specified the first table of the class will be used.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The list of source/target field/column references relating a foreign key in one table to the primary or unique key in another table.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field-reference">
- <xsd:annotation>
- <xsd:documentation>The reference of a source table foreign key and a target table primary key.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="source-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The foreign key field/column name in the source table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="target-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The primary or unique key field/column name in the target table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="query">
- <xsd:annotation>
- <xsd:documentation>Defines a query specification for querying instances of the class.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>The selection criteria of the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="arguments">
- <xsd:annotation>
- <xsd:documentation>The list of query arguments. The order of the argument must match the order of the argument value passed to the query.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="query-argument">
- <xsd:annotation>
- <xsd:documentation>The query argument.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the query. This name can be used to reference and execute the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:complexType name="criteria">
- <xsd:annotation>
- <xsd:documentation>Defines the filtering clause of a query.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="query-argument">
- <xsd:annotation>
- <xsd:documentation>Defines a query argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified class type name of the argument may be provided.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>Optional constant value for the argument.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the query argument.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:complexType name="property">
- <xsd:annotation>
- <xsd:documentation>A user defined property.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:anyType" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- <xsd:complexType name="table">
- <xsd:annotation>
- <xsd:documentation>The list of tables that the class is persisted to. This is typically a single table but can be multiple, or empty for inheritance or aggregated classes.</xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the table. The name can be fully qualified with the schema, tablespace or link.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:complexType name="value-converter">
- <xsd:annotation>
- <xsd:documentation>
- Specifies how the data value should be converted to the
- object value.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <xsd:complexType name="document-preservation-policy">
- <xsd:sequence>
- <xsd:element name="node-ordering-policy"
- type="node-ordering-policy" maxOccurs="1" minOccurs="0">
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
-
- <xsd:complexType name="node-ordering-policy"></xsd:complexType>
-
-
- <xsd:complexType
- name="descriptor-level-document-preservation-policy">
- <xsd:complexContent>
- <xsd:extension base="document-preservation-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="no-document-preservation-policy">
- <xsd:complexContent>
- <xsd:extension base="document-preservation-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="xml-binder-policy">
- <xsd:complexContent>
- <xsd:extension base="document-preservation-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="append-new-elements-ordering-policy">
- <xsd:complexContent>
- <xsd:extension base="node-ordering-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="ignore-new-elements-ordering-policy">
- <xsd:complexContent>
- <xsd:extension base="node-ordering-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="relative-position-ordering-policy">
- <xsd:complexContent>
- <xsd:extension base="node-ordering-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-</xsd:schema>
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_1.2.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_1.2.xsd
deleted file mode 100644
index 22a56967a2..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_1.2.xsd
+++ /dev/null
@@ -1,4253 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-******************************************************************************
- Copyright (c) 1998, 2010 Oracle. All rights reserved.
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
- which accompanies this distribution.
- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
- and the Eclipse Distribution License is available at
- http://www.eclipse.org/org/documents/edl-v10.php.
-
- Contributors:
- Oracle - initial API and implementation from Oracle TopLink
-*****************************************************************************/
--->
-<!-- Eclipse Persistence Service Project :: Map Schema file for ORM/OXM/EIS -->
-<xsd:schema
- targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns="http://www.eclipse.org/eclipselink/xsds/persistence"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="1.2"
- >
- <xsd:element name="object-persistence" type="object-persistence" />
- <xsd:complexType name="object-persistence">
- <xsd:annotation>
- <xsd:documentation>An object-persistence mapping module, a set of class-mapping-descriptors.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>A name for the model being mapped.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-mapping-descriptors">
- <xsd:annotation>
- <xsd:documentation>The list of class mapping descriptors.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="class-mapping-descriptor" type="class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Information of how a class is persisted to its data-store.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="login" type="datasource-login">
- <xsd:annotation>
- <xsd:documentation>The datasource connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="default-temporal-mutable" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines the default for how Date and Calendar types are used with change tracking.</xsd:documentation>
- <xsd:documentation>By default they are assumed not to be changed directly (only replaced).</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="queries">
- <xsd:annotation>
- <xsd:documentation>A list of queries to be stored on the session.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="query" type="database-query">
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute default="Eclipse Persistence Services - 1.1 (Build YYMMDD)" name="version" type="xsd:string" />
- </xsd:complexType>
- <xsd:complexType name="datasource-login">
- <xsd:annotation>
- <xsd:documentation>The datasource connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="platform-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the platform class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="user-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The datasource user-name.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="password" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The datasource password, this is stored in encrypted form.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="external-connection-pooling" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines if the connections are managed by the datasource driver, and a new connection should be acquire per call.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="external-transaction-controller" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines if the transaction are managed by a transaction manager, and should not be managed by TopLink.</xsd:documentation>
- <xsd:documentation>This can also be used if the datasource does not support transactions.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="sequencing">
- <xsd:annotation>
- <xsd:documentation>Sequencing information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="default-sequence" type="sequence">
- <xsd:annotation>
- <xsd:documentation>Default sequence. The name is optional. If no name provided an empty string will be used as a name.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="sequences">
- <xsd:annotation>
- <xsd:documentation>Non default sequences. Make sure each sequence has unique name.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="sequence" type="sequence" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="database-login">
- <xsd:annotation>
- <xsd:documentation>The JDBC driver and database connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="datasource-login">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="driver-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the JDBC driver class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="connection-url" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The full JDBC driver connection URL.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="bind-all-parameters" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if parameter binding should be used.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cache-all-statements" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if statement caching should be used. This should be used with parameter binding, this cannot be used with external connection pooling.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="byte-array-binding" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if byte array data-types should use binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="string-binding" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if string data-types should use binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="256" name="string-binding-size" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Configure the threshold string size for usage of string binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="streams-for-binding" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if large byte array and string data-types should be bound as streams.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="force-field-names-to-upper-case" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure to force all field names to upper-case.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="optimize-data-conversion" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure data optimization.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="trim-strings" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if string trailing blanks should be trimmed. This is normally required for CHAR data-types.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-writing" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if batch writing should be used.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="jdbc-batch-writing" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>If using batch writing, configure if the JDBC drivers batch writing should be used.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-login">
- <xsd:annotation>
- <xsd:documentation>The JCA driver and EIS connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="datasource-login">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="connection-spec-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the TopLink platform specific connection spec class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="connection-factory-url" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The JNDI url for the managed JCA adapter's connection factory.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-login">
- <xsd:annotation>
- <xsd:documentation>The connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="datasource-login">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="true"
- name="equal-namespace-resolvers" type="xsd:boolean" />
- <xsd:element name="document-preservation-policy"
- type="document-preservation-policy" maxOccurs="1"
- minOccurs="0">
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Information of how a class is persisted to its data-store.</xsd:documentation>
- <xsd:documentation>This is an abstract definition to allow flexibility in the types of classes and datastores persisted, i.e. interfaces, abstract classes, aggregates, non-relational persistence.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the implementation class being persisted. The class name must be full qualified with its package.</xsd:documentation>
- <xsd:documentation>Example: <class xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">example.employee.implementation.Employee</class></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="alias" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optionally an alias name can be given for the class. The alias is a string that can be used to refer to the class in place of its implementation name, such as in querying.</xsd:documentation>
- <xsd:documentation>Example: <alias xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">Employee</alias></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="primary-key">
- <xsd:annotation>
- <xsd:documentation>The list of fields/columns that make up the primary key or unique identifier of the class.</xsd:documentation>
- <xsd:documentation>This is used for caching, relationships, and for database operations.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The primary key field.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="read-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines if the class is read-only.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="properties">
- <xsd:annotation>
- <xsd:documentation>Allow for user defined properties to be defined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="property" type="property">
- <xsd:annotation>
- <xsd:documentation>A user defined property.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="inheritance" type="inheritance-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class is related in inheritance and how this inheritance is persisted.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="events" type="event-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the persistent events for this class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="querying" type="query-policy">
- <xsd:annotation>
- <xsd:documentation>The list of defined queries for the class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="attribute-mappings">
- <xsd:annotation>
- <xsd:documentation>The list of mappings that define how the class' attributes are persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="attribute-mapping" type="attribute-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a attribute is persisted. The attribute mapping definition is extendable to allow for different types of mappings.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="descriptor-type" type="class-descriptor-type">
- <xsd:annotation>
- <xsd:documentation>Defines the descriptor type, such as aggregate or independent.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="interfaces" type="interface-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the interfaces that this class implements..</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="locking" type="locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the locking behavior for the class. Such as an optimistic locking policy based on version, timestamp or change set of columns.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="sequencing" type="sequencing-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how a generated unique id should be assigned to the class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="caching" type="caching-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class' instances should be cached.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="remote-caching" type="caching-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class' instances should be cached on remote clients.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="history-policy" type="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of objects are persisted to the data-store. By default there will be no history policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="returning-policy" type="returning-policy">
- <xsd:annotation>
- <xsd:documentation>Defines retuning policy. By default there will be no returning policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="amendment" type="amendment">
- <xsd:annotation>
- <xsd:documentation>Allow for the descriptor to be amended or customized through a class API after loading.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="instantiation" type="instantiation-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object instantiation behavoir to be customized</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="copying" type="copy-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object cloning/copying behavoir to be customized.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="query-keys">
- <xsd:annotation>
- <xsd:documentation>A list of query keys or aliases for database information. These can be used in queries instead of the database column names.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="query-key" type="query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for querying database information.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="cmp-policy" type="cmp-policy">
- <xsd:annotation>
- <xsd:documentation>Place holder of CMP information specific.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-groups" type="fetch-groups">
- <xsd:annotation>
- <xsd:documentation>Contains all pre-defined fetch groups at the descriptor level</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="1" name="change-policy" type="change-policy">
- <xsd:annotation>
- <xsd:documentation>Contains the Change Policy for this descriptor</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute fixed="10" name="schema-major-version" type="xsd:integer" />
- <xsd:attribute fixed="0" name="schema-minor-version" type="xsd:integer" />
- </xsd:complexType>
- <xsd:simpleType name="class-descriptor-type">
- <xsd:annotation>
- <xsd:documentation>Defines the class descriptor type.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="independent" />
- <xsd:enumeration value="aggregate" />
- <xsd:enumeration value="aggregate-collection" />
- <xsd:enumeration value="composite" />
- <xsd:enumeration value="composite" />
- <xsd:enumeration value="interface" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="interface-policy">
- <xsd:annotation>
- <xsd:documentation>Specify the interfaces that a class descriptor implements, or the implemention class for an interface descriptor.</xsd:documentation>
- <xsd:documentation>Optionally a set of public interfaces for the class can be specified. This allows the interface to be used to refer to the implementation class.</xsd:documentation>
- <xsd:documentation>If two classes implement the same interface, an interface descriptor should be defined for the interface.</xsd:documentation>
- <xsd:documentation>This can also be used to define inheritance between interface descriptors.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="interface" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified interface class name.</xsd:documentation>
- <xsd:documentation>Example: <class xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">example.employee.api.Employee</class></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="implementor-descriptor" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified class name of the implementation class for which this interface is the public interface.</xsd:documentation>
- <xsd:documentation>This can be used if the interface has only a single implementor.</xsd:documentation>
- <xsd:documentation>Example: <class xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">example.employee.impl.Employee</class></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="copy-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object cloning/copying behavoir to be customized.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="instantiation-copy-policy">
- <xsd:annotation>
- <xsd:documentation>Creates a copying through creating a new instance to copy into.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="copy-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="clone-copy-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object cloning/copying behavoir to be customized through a clone method.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="copy-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the clone method on the object, i.e. 'clone'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="instantiation-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object instantiation behavoir to be customized.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the method on the factory to instantiate the object instance.'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="factory-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified factory class name.'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="factory-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the method to instantiate the factory class.'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="amendment">
- <xsd:annotation>
- <xsd:documentation>Specifies a class and static method to be called to allow for the descriptor to be amended or customized through a class API after loading.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="amendment-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation> The fully qualified name of the amendment class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="amendment-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the static amendment method on the class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="relational-class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Defines a class mapping to a relational database table(s).</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="class-mapping-descriptor">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="tables">
- <xsd:annotation>
- <xsd:documentation>The list of the tables the class is persisted to. Typically a class is persisted to a single table, but multiple tables can be defined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="table" type="table">
- <xsd:annotation>
- <xsd:documentation>The list of tables that the class is persisted to. This is typically a single table but can be multiple, or empty for inheritance or aggregated classes.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-keys-for-multiple-table" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>Allow the foreign key field references to be define for multiple table descriptors.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="multiple-table-join-criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>For complex multiple table join conditions an expression may be provided instead of the table foreign key information.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="version-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on a numeric version field/column that tracks changes and the version to an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy">
- <xsd:sequence>
- <xsd:element name="version-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The name and optionally the table of the column that the attribute is stored into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="store-version-in-cache" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the version value should be stored in the cache, or if it will be stored in the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="timestamp-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on timestamp version column that tracks changes and the version to an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="version-locking-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="server-time" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the timestamp should be obtained locally or from the database server.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="all-fields-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on comparing the original read values of all fields of the object with the current state of the values in the database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="changed-fields-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on comparing the original read values of only the changed fields of the object with the current state of the values in the database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="selected-fields-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on comparing the original read values of a specified set of fields of the object with the current state of the values in the database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy">
- <xsd:sequence>
- <xsd:element name="fields">
- <xsd:annotation>
- <xsd:documentation>Specify the set of fields to compare on update and delete.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="sequencing-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how a database generated unique id should be assigned to the class.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="sequence-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify the name of the sequence generator. This could be the name of a sequence object, or a row value in a sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="sequence-field" type="field">
- <xsd:annotation>
- <xsd:documentation>Specify the field/column that the generated sequence id is assigned to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:simpleType name="cache-type">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid caching types.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="none" />
- <xsd:enumeration value="full" />
- <xsd:enumeration value="cache" />
- <xsd:enumeration value="weak-reference" />
- <xsd:enumeration value="soft-reference" />
- <xsd:enumeration value="soft-cache-weak-reference" />
- <xsd:enumeration value="hard-cache-weak-reference" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="caching-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class' instances should be cached and how object identity should be maintained.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="soft-cache-weak-reference" name="cache-type" type="cache-type">
- <xsd:annotation>
- <xsd:documentation>Specify the type of caching, such as LRU, weak reference or none.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="100" name="cache-size" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specify the initial or maximum size of the cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="always-refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to always refresh cached objects on queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="only-refresh-cache-if-newer-version" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to refresh if the cached object is an older version.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="disable-cache-hits" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Disable obtaining cache hits on primary key queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="always-conform" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to always conform queries within a transaction.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="isolated" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if objects of this type should be isolated from the shared cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="isolate-new-data-after-transaction" name="unitofwork-isolation-level" type="unitofwork-isolation-level">
- <xsd:annotation>
- <xsd:documentation>Specify how the unit of work should be isolated to the session cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="cache-invalidation-policy" type="cache-invalidation">
- <xsd:annotation>
- <xsd:documentation>Defines the cache invalidation policy. By default there will be no cache invalidation policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="change-set" name="cache-sync-type" type="cache-sync-type">
- <xsd:annotation>
- <xsd:documentation>The type of cache synchronization to be used with this descripor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="cache-invalidation" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Abstract superclass for cache invalidation policies.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="update-read-time-on-update" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="no-expiry-cache-invalidation-policy">
- <xsd:annotation>
- <xsd:documentation>Cache invalidation policy where objects in the cache do not expire.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="cache-invalidation" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="time-to-live-cache-invalidation-policy">
- <xsd:annotation>
- <xsd:documentation>Cache invalidation policy where objects live a specific number of milliseconds after they are read.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="cache-invalidation">
- <xsd:sequence>
- <xsd:element name="time-to-live" type="xsd:long" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="daily-cache-invalidation-policy">
- <xsd:annotation>
- <xsd:documentation>Cache invalidation Policy where objects expire at a specific time every day</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="cache-invalidation">
- <xsd:sequence>
- <xsd:element name="expiry-time" type="xsd:dateTime" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of objects are to be persisted to the data-store.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="true" name="handle-writes" type="xsd:boolean" />
- <xsd:element minOccurs="0" default="false" name="use-database-time" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="history-tables">
- <xsd:annotation>
- <xsd:documentation>Defines the names of the mirroring historical tables.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="history-table" type="history-table" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="start-fields">
- <xsd:annotation>
- <xsd:documentation>Defines the start fields for each historical table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="start-field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="end-fields">
- <xsd:annotation>
- <xsd:documentation>Defines the end fields for each historical table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="end-field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="history-table">
- <xsd:annotation>
- <xsd:documentation>Each entry is a source (descriptor) to history table name association.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="" name="source" type="xsd:string" />
- <xsd:element minOccurs="1" name="history" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="returning-policy">
- <xsd:annotation>
- <xsd:documentation>Defines retuning policy. By default there will be no returning policy.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="1" name="returning-field-infos">
- <xsd:annotation>
- <xsd:documentation>Lists the fields to be returned together with the flags defining returning options</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="returning-field-info" type="returning-field-info" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="returning-field-info">
- <xsd:annotation>
- <xsd:documentation>Field to be returned together with type and the flags defining returning options. At least one of insert, update should be true.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the target referenced class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field to be returned.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="insert" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates whether the field should be retuned after Insert.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="insert-mode-return-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>If insert==true, indicates whether the field should not be inserted (true). If insert==false - ignored.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="update" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates whether the field should be retuned after Insert.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="inheritance-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class is related in inheritance and how this inheritance is persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="parent-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the parent/superclass of the class being persisted. The class name must be full qualified with its package.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="read-subclasses-on-queries" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Define if subclasses of the class should be returned on queries, or only the exact class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="all-subclasses-view" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optionally specify the name of a view that joins all of the subclass' tables.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="use-class-name-as-indicator" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the fully qualified class name should be used as the class type indicator.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-extraction-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of a method on the class that takes the class' row as argument a computed that class type to be used to instantiate from the row.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-indicator-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The name of the type field/column that the class type is stored into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-indicator-mappings" type="class-indicator-mappings">
- <xsd:annotation>
- <xsd:documentation>The set of class indicator values and the subclasses they map to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-extractor" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of a class that implements a class extractor interface.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="only-instances-criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>The criteria that filters out all sibling and subclass instances on queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="all-subclasses-criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>The criteria that filters out sibling instances on queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="outer-join-subclasses" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>For inheritance queries specify if all subclasses should be outer joined, instead of a query per subclass.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="qname-inheritance-policy">
- <xsd:annotation>
- <xsd:documentation>Extends inheritance policy. Allows for prefixed names to be resolved at runtime to find the approriate class</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="inheritance-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="class-indicator-mappings">
- <xsd:annotation>
- <xsd:documentation>The set of class indicator values and the subclasses they map to.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="class-indicator-mapping">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the class the type maps to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="class-indicator" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>The field value used to define the class type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="event-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the persistent events for this class.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="event-listeners">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="event-listener" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of an event listener class that implements the descriptor event listener interface.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-build-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after building the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-write-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before writing the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-write-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after writing the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-insert-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before inserting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-insert-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after inserting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-update-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before updating the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-update-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after updating the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-delete-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before deleting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-delete-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after deleting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="about-to-insert-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before inserting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="about-to-update-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before updating the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-clone-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after cloning the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-merge-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after merging the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-refresh-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after refreshing the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="query-policy">
- <xsd:annotation>
- <xsd:documentation>The list of defined queries and query properties for the class.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="queries">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="query" type="query">
- <xsd:annotation>
- <xsd:documentation>A query definition for the class' instances.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="timeout" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies a timeout to apply to all queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="check-cache" name="existence" type="existence-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the behavoir used to determine if an insert or update should occur for an object to be customized.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="insert-query" type="insert-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom insert query. This overide the default insert behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="update-query" type="update-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom update query. This overide the default update behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-query" type="delete-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom delete query. This overide the default delete behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="does-exist-query" type="does-exist-query">
- <xsd:annotation>
- <xsd:documentation>Custom does exist query. This overide the default delete behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="read-object-query" type="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom read object query. This overide the default read behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="read-all-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Custom read all query. This overide the default read all behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:simpleType name="existence-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid existence policies for determining if an insert or update should occur for an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="check-cache" />
- <xsd:enumeration value="check-database" />
- <xsd:enumeration value="assume-existence" />
- <xsd:enumeration value="assume-non-existence" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for querying database information.</xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query-key alias name.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:simpleType name="cache-sync-type">
- <xsd:annotation>
- <xsd:documentation>The type of cache synchronization to use with a descriptor.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="invalidation" />
- <xsd:enumeration value="no-changes" />
- <xsd:enumeration value="change-set-with-new-objects" />
- <xsd:enumeration value="change-set" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="unitofwork-isolation-level">
- <xsd:annotation>
- <xsd:documentation>Specify how the unit of work isolated from the session cache.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="use-session-cache-after-transaction" />
- <xsd:enumeration value="isolate-new-data-after-transaction" />
- <xsd:enumeration value="isolate-cache-after-transaction" />
- <xsd:enumeration value="isolate-cache-always" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="direct-query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a database column.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="query-key">
- <xsd:sequence>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field/column being aliased.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="relationship-query-key" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a join to another class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="query-key">
- <xsd:sequence>
- <xsd:element name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the target referenced class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:choice>
- <xsd:element name="foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key join condition between the source and target class' tables.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>The join criteria between the source and target class' tables.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:choice>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-one-query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a 1-1 join to another class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-query-key" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-many-query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a 1-m join from another class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="relationship-query-key" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping from an attirbute to a simple field datatype, i.e. String, Number, Date.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The name and optionally the table of the field/column that the attribute is stored into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="null-value" type="xsd:anySimpleType" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>Optionally specify a value that null data values should be converted to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="converter" type="value-converter" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>Optionally specify how the data value should be converted to the object value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="attribute-classification" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="attribute-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a attribute is persisted. The attribute mapping definition is extendable to allow for different types of mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="attribute-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the attribute. This is the implementation class attribute name.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="read-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the attribute is read-only.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="get-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the get method for the attribute.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="set-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the set method for the attribute.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="properties">
- <xsd:annotation>
- <xsd:documentation>Allow for user defined properties to be defined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="property" type="property">
- <xsd:annotation>
- <xsd:documentation>A user defined property.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a simple attribute is persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="abstract-direct-mapping">
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping from an attirbute to a simple field datatype, i.e. String, Number, Date.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="abstract-direct-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="is-cdata" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="null-policy" type="abstract-null-policy" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping from an attirbute to a simple field datatype, i.e. String, Number, Date.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-direct-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="field-transformation" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a field transformation for a transformation mapping</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="method-based-field-transformation">
- <xsd:complexContent mixed="false">
- <xsd:extension base="field-transformation">
- <xsd:sequence>
- <xsd:element name="method" type="xsd:string" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="transformer-based-field-transformation">
- <xsd:complexContent mixed="false">
- <xsd:extension base="field-transformation">
- <xsd:sequence>
- <xsd:element name="transformer-class" type="xsd:string" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a transformation mapping that uses Java code to transform between the data and object values.</xsd:documentation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="attribute-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the attribute transformation defined in the domain class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="attribute-transformer" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The class name of the attribute transformer. Used in place of attribute-transformation.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="mutable" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy" />
- <xsd:element minOccurs="0" name="field-transformations">
- <xsd:annotation>
- <xsd:documentation>The field transformations.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field-transformation" type="field-transformation" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-transformation-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-transformation-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-transformation-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="aggregate-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a relationship where the target object is strictly privately owned by the source object and stores within the source objects row</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified class name of the target class of the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="allow-null" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if a row of all nulls should be interpreted as null.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="field-translations">
- <xsd:annotation>
- <xsd:documentation>Allow for the mapping to use different field names than the descriptor.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field-translation">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="source-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field in the source descriptor's table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="target-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field in the aggregate descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="relationship-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a relationship between two classes is persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified class name of the target class of the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="private-owned" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the target objects are privately owned dependent objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-persist" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the create operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-merge" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the create operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the refresh operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-remove" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the remove operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-one-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-1 relationship from the source instance to the target instance.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the source class' table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-one-to-one-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-1 relationship from the source instance to the target instance.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="one-to-one-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-many-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-m relationship from the source instance to the target instances.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="target-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the target class' table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the related objects can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-one-to-many-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-m relationship from the source instance to the target instances.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="source-foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="target-foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-key-grouping-element" type="field" />
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the related objects can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a collection of simple types relationship from the source instance to a set of simple data values.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="data-read-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target data values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="reference-table" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the reference table that stores the source primary key and the data values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="direct-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field/column in the reference table that stores the data values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="reference-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the reference table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="value-converter" type="value-converter">
- <xsd:annotation>
- <xsd:documentation>Optionally specify how the data value should be converted to the object value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="insert-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to insert a row into the reference table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete a row from the reference table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the rows from the reference table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="session-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name session that defines the reference table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="history-policy" type="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of this attribute are persisted to the data-store. By default there will be no history policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-map-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a map relationship from the source instance to a set of key values pairs of simple data values.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="direct-collection-mapping">
- <xsd:sequence>
- <xsd:element name="direct-key-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field/column in the reference table that sores the map key data value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="key-converter" type="value-converter">
- <xsd:annotation>
- <xsd:documentation>Optionally specify how the key data value should be converted to the object value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="aggregate-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-m relationship from the source instance to the target instances where the target instances are strictly privately owned by the source object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="target-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the target class' table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the related objects can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="many-to-many-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a m-m relationship from the source instance to the target instances.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="relation-table" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the relation table that stores the source/target primary keys.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="source-relation-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key from the relational table to the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="target-relation-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key from the relational table to the target class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="insert-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to insert a row into the relation table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete a row from the relation table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the rows from the relation table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="history-policy" type="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of this attribute are persisted to the data-store. By default there will be no history policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="variable-one-to-one-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-1 relationship from the source instance to the target instance that may be of several types related through an interface.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="type-field" type="field">
- <xsd:annotation>
- <xsd:documentation>Specify the column to store the class type of the related object into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="foreign-key-to-query-key">
- <xsd:annotation>
- <xsd:documentation>The list of source/target column/query key references relating a foreign key in one table to the query keys defining a primary or unique key value in the other interface descriptor.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="query-key-reference">
- <xsd:annotation>
- <xsd:documentation>The reference of a source table foreign key and a target interface descriptor query key.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="source-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The foreign key field/column name in the source table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="target-query-key" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query key name of the target interface descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-indicator-mappings" type="class-indicator-mappings">
- <xsd:annotation>
- <xsd:documentation>The set of class indicator values and the subclasses they map to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a container/collection type.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="collection-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the collection implementation class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="sorted-collection-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a sorted collection type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="comparator-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the comparitor, used to compare objects in sorting the collection.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="list-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a list collection type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="map-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a map container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="map-key-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the method to call on the target objects to get the key value for the map.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-map-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a direct map container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="scrollable-cursor-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a scrollable cursor container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="cursored-stream-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a cursored stream container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="indirection-policy" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a deferred read indirection mechanism.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="value-holder-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of value holders to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="proxy-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of proxies to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="transparent-collection-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of transparent collections to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="collection-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the collection interface to use, i.e. List, Set, Map.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="map-key-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the method to call on the target objects to get the key value for the map.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="container-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of a user defined container to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy">
- <xsd:sequence>
- <xsd:element name="container-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the container implementer to use.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-list-converter">
- <xsd:annotation>
- <xsd:documentation>List converter</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="object-class-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the list's element type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="typesafe-enumeration-converter">
- <xsd:annotation>
- <xsd:documentation>Typesafe Enumeration conversion</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="type-conversion-converter">
- <xsd:annotation>
- <xsd:documentation>Specifies the data type and an object type of the attribute to convert between.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="object-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the attribute type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="data-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the attributes storage data type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="serialized-object-converter">
- <xsd:annotation>
- <xsd:documentation>Uses object serialization to convert between the object and data type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="data-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the attributes storage data type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-type-converter">
- <xsd:annotation>
- <xsd:documentation>Specifies a mapping of values from database values used in the field and object values used in the attribute.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="default-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>An optional default value can be specified. This value is used if a database type is not found in the type mapping.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="type-mappings">
- <xsd:annotation>
- <xsd:documentation>Specifies the mapping of values. Both the object and database values must be unique.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="type-mapping" type="type-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines the object and data value mapping.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="attribute-only-type-mappings">
- <xsd:annotation>
- <xsd:documentation>Specifies a mapping of additional values that map non-unique data values to a unique attribute value.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="type-mapping" type="type-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines the object and data value mapping.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="type-mapping">
- <xsd:annotation>
- <xsd:documentation>Define an object and data value mapping.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="object-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>Specifies the value to use in the object's attribute.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="data-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>Specifies the value to use in the database field.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="database-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query/interaction against a database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="query">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="true" name="maintain-cache" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should bypass the cache completely.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bind-all-parameters" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should use paramater binding for arguments, or print the arguments in-line.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="cache-statement" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the queries statement should be cached, this must be used with parameter binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="timeout" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies a timeout to cancel the query in if the request takes too long to complete.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="prepare" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should prepare and cache its generated SQL, or regenerate the SQL on each execution.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="call" type="criteria">
- <xsd:annotation>
- <xsd:documentation>For static calls the SQL or Stored Procedure call definition can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid join fetch options.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="none" />
- <xsd:enumeration value="inner-join" />
- <xsd:enumeration value="outer-join" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="cascade-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid cascade policies.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="none" />
- <xsd:enumeration value="private" />
- <xsd:enumeration value="all" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="value-read-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading a single value.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="direct-read-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-read-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading a collection of values.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="data-read-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="data-read-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading raw data.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="read-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="read-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="cache-query-results" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should cache the query results to avoid future executions.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="max-rows" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies the maximum number of rows to fetch, results will be trunctate on the database to this size.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="first-result" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies where to start the cursor in a result set returned from the database. Results prior to this number will not be built into objects</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-size" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifiess the number of rows to fetch from the database on each result set next operation.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="query-result-cache-policy" type="query-result-cache-policy">
- <xsd:annotation>
- <xsd:documentation>Specify how the query results should be cached.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="query-result-cache-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how a query's results should be cached.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="invalidation-policy" type="cache-invalidation">
- <xsd:annotation>
- <xsd:documentation>Defines the cache invalidation policy. By default there will be no cache invalidation policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="100" name="maximum-cached-results" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>This defines the number of query result sets that will be cached. The LRU query results will be discarded when the max size is reached.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for manipulating data.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-modify-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query for modifying an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="update-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for updating an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-modify-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="insert-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for inserting an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-modify-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="delete-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for deleting an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-modify-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="does-exist-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for determining if an object exists.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="existence-check" type="existence-check">
- <xsd:annotation>
- <xsd:documentation>The existence check option.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="existence-check">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid existence check options.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="check-cache" />
- <xsd:enumeration value="check-database" />
- <xsd:enumeration value="assume-existence" />
- <xsd:enumeration value="assume-non-existence" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for deleting a criteria of objects.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-level-read-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query for objects (as apposed to data).</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="read-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The full qualified name of the class of objects being queried.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should refresh any cached objects from the database.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="remote-refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should refresh any remotely cached objects from the server.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="cascade-policy" type="cascade-policy">
- <xsd:annotation>
- <xsd:documentation>Specifies if the queries settings (such as refresh, maintain-cache) should apply to the object's relationship queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="primary-key" name="cache-usage" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify how the query should interact with the cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="lock-mode" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should lock the resulting rows on the database.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="distinct-state" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should filter distinct results.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="in-memory-querying">
- <xsd:annotation>
- <xsd:documentation>The in memory querying policy.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element default="ignore-exceptions-return-conformed" name="policy" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify how indirection or unconformable expressions should be treating with in-memory querying and conforming.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="use-default-fetch-group" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the default fetch group should be used for the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-group" type="fetch-group">
- <xsd:annotation>
- <xsd:documentation>Allow the query to partially fetch the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-group-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify a pre-defined named fetch group to allow the query to partially fetch the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="use-exclusive-connection" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the exclusive connection (VPD) should be used for the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="joined-attribute-expressions">
- <xsd:annotation>
- <xsd:documentation>Specifies the attributes being joined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for joining</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="read-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if objects resulting from the query are read-only, and will not be registered in the unit of work.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="outer-join-subclasses" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>For inheritance queries specify if all subclasses should be outer joined, instead of a query per subclass.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for a set of objects.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-level-read-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="batch-read-attribute-expressions">
- <xsd:annotation>
- <xsd:documentation>Specifies all attributes for batch reading.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for batch reading</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="order-by-expressions">
- <xsd:annotation>
- <xsd:documentation>Sets the order expressions for the query.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for ordering</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for a single object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-level-read-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="report-query">
- <xsd:annotation>
- <xsd:documentation>Query for information about a set of objects instead of the objects themselves.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="read-all-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="return-choice" type="return-choice">
- <xsd:annotation>
- <xsd:documentation>Simplifies the result by only returning the first result, first value, or all attribute values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="retrieve-primary-keys" type="retrieve-primary-keys">
- <xsd:annotation>
- <xsd:documentation>Indicates wether the primary key values should also be retrieved for the reference class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="report-items">
- <xsd:annotation>
- <xsd:documentation>Items to be selected, these could be attributes or aggregate functions.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="report-item">
- <xsd:annotation>
- <xsd:documentation>Represents an item requested</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="group-by-expressions">
- <xsd:annotation>
- <xsd:documentation>Sets GROUP BY expressions for the query.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for grouping</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="return-choice">
- <xsd:annotation>
- <xsd:documentation>Simplifies the result by only returning the first result, first value, or all attribute values.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="return-single-result" />
- <xsd:enumeration value="return-single-value" />
- <xsd:enumeration value="return-single-attribute" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="retrieve-primary-keys">
- <xsd:annotation>
- <xsd:documentation>Indicates wether the primary key values should also be retrieved for the reference class.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="full-primary-key" />
- <xsd:enumeration value="first-primary-key" />
- <xsd:enumeration value="no-primary-key" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="report-item">
- <xsd:annotation>
- <xsd:documentation>Represents an item requested in ReportQuery.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Name given for item, can be used to retieve value from result.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="attribute-expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Expression (partial) that describes the attribute wanted.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="expression" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query filter expression tree.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="relation-expression">
- <xsd:annotation>
- <xsd:documentation>Defines a relation expression that compares to expressions through operators such as equal, lessThan, etc..</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="left" type="expression" />
- <xsd:element name="right" type="expression" />
- </xsd:sequence>
- <xsd:attribute name="operator" type="operator" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="logic-expression">
- <xsd:annotation>
- <xsd:documentation>Defines a expression composed of two sub-expressions joined through an operator such as AND, OR.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="left" type="expression" />
- <xsd:element name="right" type="expression" />
- </xsd:sequence>
- <xsd:attribute name="operator" type="operator" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="function-expression">
- <xsd:annotation>
- <xsd:documentation>Defines a expression composed of a function applied to a list of sub-expressions.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="arguments">
- <xsd:annotation>
- <xsd:documentation>The list of function arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="expression">
- <xsd:annotation>
- <xsd:documentation>Defines an argument expression.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="function" type="operator" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="constant-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression value. If the value is null the value tag can is absent.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="value" type="xsd:anySimpleType" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="query-key-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression query-key.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="base" type="expression" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" />
- <xsd:attribute name="any-of" type="xsd:boolean" />
- <xsd:attribute name="outer-join" type="xsd:boolean" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="field-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression field.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="field" type="field" />
- <xsd:element name="base" type="expression" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="parameter-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression parameter.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="parameter" type="field" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="base-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression builder/base.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="operator">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid operators.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string" />
- </xsd:simpleType>
- <xsd:complexType name="sql-call">
- <xsd:annotation>
- <xsd:documentation>Defines an SQL query language string.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="sql" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The full SQL query string. Arguments can be specified through #arg-name tokens in the string.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="ejbql-call">
- <xsd:annotation>
- <xsd:documentation>Defines an EJB-QL query language string.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="ejbql" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The EJB-QL query string.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="stored-procedure-call">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure invocation definition.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="procedure-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the stored procedure.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="cursor-output-procedure" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Define the call to use a cursor output parameter to define the result set.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input and output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="procedure-argument">
- <xsd:annotation>
- <xsd:documentation>Defines an argument to the procedure. The order of the arguments must match the procedure arguments if not named.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="stored-function-call">
- <xsd:annotation>
- <xsd:documentation>Defines a stored function invocation definition.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="stored-procedure-call">
- <xsd:sequence>
- <xsd:element minOccurs="1" name="stored-function-result" type="procedure-output-argument">
- <xsd:annotation>
- <xsd:documentation>The return value of the stored-function.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="procedure-argument">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure call argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="procedure-argument-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The stored procedure name of the argument. For indexed argument the name is not required.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="argument-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query name of the argument. This is the name of the argument as define in the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="procedure-argument-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the argument class type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="procedure-argument-sqltype" type="xsd:int">
- <xsd:annotation>
- <xsd:documentation>The JDBC int type of the argument, as defined in java.jdbc.Types</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="procedure-argument-sqltype-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the type if procedure-argument-sqltype is STRUCT or ARRAY</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="argument-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>The procedure argument value maybe be specified if not using a query argument.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="procedure-output-argument">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure call output argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="procedure-argument" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="procedure-inoutput-argument">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure call output argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="procedure-argument">
- <xsd:sequence>
- <xsd:element name="output-argument-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query name of the argument. This is the name of the argument as define in the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="plsql-stored-procedure-call">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure invocation definition whose arguments contain at least one Oracle PL/SQL type that has no JDBC representation (e.g. BOOLEAN, PLS_INTEGER, PL/SQL record).</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="procedure-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the stored procedure.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input and output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="plsql-procedure-argument-type">
- <xsd:annotation>
- <xsd:documentation>Defines an argument to the procedure.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="plsql-procedure-argument-type" abstract="true">
- <xsd:sequence>
- <xsd:element name="name" type="xsd:string" />
- <xsd:element minOccurs="0" name="index" type="xsd:string" />
- <xsd:element minOccurs="0" name="direction" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="jdbc-type">
- <xsd:complexContent mixed="false">
- <xsd:extension base="plsql-procedure-argument-type">
- <xsd:sequence>
- <xsd:choice>
- <xsd:element minOccurs="0" name="length" type="xsd:string" />
- <xsd:sequence>
- <xsd:element name="precision" type="xsd:string" />
- <xsd:element name="scale" type="xsd:string" />
- </xsd:sequence>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="type-name" type="xsd:string" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="plsql-type">
- <xsd:complexContent mixed="false">
- <xsd:extension base="plsql-procedure-argument-type">
- <xsd:attribute name="type-name" type="xsd:string" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="plsql-record">
- <xsd:complexContent mixed="false">
- <xsd:extension base="plsql-procedure-argument-type">
- <xsd:sequence>
- <xsd:element name="type-name" type="xsd:string" />
- <xsd:element minOccurs="0" name="compatible-type" type="xsd:string" />
- <xsd:element minOccurs="0" name="java-type" type="xsd:string" />
- <xsd:element minOccurs="0" name="fields">
- <xsd:annotation>
- <xsd:documentation>The list of fields.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="plsql-procedure-argument-type">
- <xsd:annotation>
- <xsd:documentation>Defines an argument to the procedure.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="plsql-collection">
- <xsd:complexContent mixed="false">
- <xsd:extension base="plsql-procedure-argument-type">
- <xsd:sequence>
- <xsd:element name="type-name" type="xsd:string" />
- <xsd:element minOccurs="0" name="compatible-type" type="xsd:string" />
- <xsd:element minOccurs="0" name="java-type" type="xsd:string" />
- <xsd:element minOccurs="0" name="nested-type" type="plsql-procedure-argument-type" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Defines a class mapping to an EIS record data structure.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="class-mapping-descriptor">
- <xsd:sequence>
- <xsd:element name="datatype" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the record structure name the descriptor maps to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="namespace-resolver" type="namespace-resolver">
- <xsd:annotation>
- <xsd:documentation>The namespace resolver for the descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="mapped-interaction">
- <xsd:annotation>
- <xsd:documentation>Defines an EIS interaction utilizing MappedRecord.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="function-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the function.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-result-path" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optional root key if the input result is not at the record root.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="output-result-path" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optional root key if the output result is not at the record root.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="output-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-interaction">
- <xsd:annotation>
- <xsd:documentation>Defines an EIS interaction utilizing XML records.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="function-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the function.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-record-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name to use for the input record, if required by the adapter.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-root-element-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optional root key if the output result is not at the record root.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-result-path" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optional root key if the input result is not at the record root.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="output-result-path" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optional root key if the output result is not at the record root.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="output-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="indexed-interaction">
- <xsd:annotation>
- <xsd:documentation>Defines an EIS interaction utilizing Indexed records.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="function-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the function.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="input-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="output-arguments">
- <xsd:annotation>
- <xsd:documentation>The list of output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="interaction-argument" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="interaction-argument">
- <xsd:annotation>
- <xsd:documentation>Defines an interaction argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="argument-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>The procedure argument value maybe be specified if not using a query argument.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The interaction name of the argument. For indexed arguments the name is not required.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- <xsd:attribute name="argument-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query name of the argumen. This is the name of the argument as define in the query, or the descriptor field name.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:complexType name="object-relational-class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Defines a class mapping to a Structure type in an object-relational database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relational-class-mapping-descriptor">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="structure" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the object structure type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="field-order">
- <xsd:annotation>
- <xsd:documentation>The ordered list of the field defined in the structure.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="nested-table-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-m/m-m relationship that makes use of the object-relational nested-table type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field/column in the source table that stores the nested-table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="structure" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify the object-relational type name of the nested-table type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="array-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a collection of primitive/simple type values using the object-relational array type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-direct-collection-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="structure" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify the object-relational type name of the structure type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-array-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a collection of object-types using the object-relational array type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-collection-mapping">
- <xsd:sequence>
- <xsd:element name="structure" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify the object-relational type name of the structure type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="structure-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a structure of object-types using the object-relational structure type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-object-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="reference-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a reference to another object-type using the object-relational reference type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field in the source type that stores the reference.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-relational-field">
- <xsd:annotation>
- <xsd:documentation>Defines an ObjectRelationalDatabaseField</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="field">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="nested-type-field" type="field" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-xml-type-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a direct mapping to an Oracle XDB XML Type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="direct-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="read-whole-document" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-composite-direct-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a direct collection mapping for an XML list of elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="field" type="field" />
- <xsd:element minOccurs="0" name="value-converter" type="value-converter">
- <xsd:annotation>
- <xsd:documentation>Optionally specify how the data value should be converted to the object value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="value-converter-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optionally specify a user defined converter class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-collection-reference-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-M relationship from the source XML element to the target XML element based on a key.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="xml-object-reference-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="containerpolicy" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="uses-single-node" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="reuse-container" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-object-reference-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-1 relationship from the source XML element to the target XML element based on one or more keys.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="aggregate-object-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="source-to-target-key-field-association" type="foreign-key" />
- <xsd:element minOccurs="0" name="source-to-target-key-fields">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-composite-direct-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a direct collection mapping for an XML list of elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-direct-collection-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="is-cdata" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="null-policy" type="abstract-null-policy" />
- <xsd:element minOccurs="0" name="reuse-container" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-composite-direct-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a direct collection mapping for an XML list of elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-direct-collection-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-composite-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite collection mapping for an XML list of nested elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="reference-class" type="xsd:string" />
- <xsd:element name="field" type="field" />
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-composite-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite collection mapping for an XML list of nested elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-collection-mapping">
- <xsd:sequence>
- <xsd:element name="container-attribute" minOccurs="0"/>
- <xsd:element name="container-get-method" minOccurs="0"/>
- <xsd:element name="container-set-method" minOccurs="0"/>
- <xsd:element name="keep-as-element-policy" type="xsd:string" minOccurs="0"/>
- <xsd:element minOccurs="0" name="reuse-container" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-composite-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite collection mapping for an XML list of nested elements.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-collection-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-composite-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite object mapping for an XML nested element.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="reference-class" type="xsd:string" />
- <xsd:element name="field" type="field" />
- <xsd:element name="container-attribute" minOccurs="0"/>
- <xsd:element name="container-get-method" minOccurs="0"/>
- <xsd:element name="container-set-method" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-composite-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite object mapping for an XML nested element.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-object-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="null-policy" type="abstract-null-policy" />
- <xsd:element minOccurs="0" name="keep-as-element-policy" type="xsd:string" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-composite-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a composite object mapping for an XML nested element.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-object-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Defines a class mapping to an XML element.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="class-mapping-descriptor">
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="default-root-element" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the element the descriptor maps to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="default-root-element-field" type="node">
- <xsd:annotation>
- <xsd:documentation>The XMLField representing the default root element of the descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="should-preserve-document" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates if nodes should be cached to preserve unmapped data</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="namespace-resolver" type="namespace-resolver">
- <xsd:annotation>
- <xsd:documentation>The namespace resolver for the descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="schema" type="schema-reference">
- <xsd:annotation>
- <xsd:documentation>The location of the XML Schema.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="result-always-xml-root" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-any-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a collection to an xs:any declaration or xs:anyType element</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="field" type="field" />
- <xsd:element minOccurs="0" name="container" type="container-policy" />
- <xsd:element minOccurs="0" default="false" name="use-xml-root" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="keep-as-element-policy" type="xsd:string" />
- <xsd:element minOccurs="0" name="reuse-container" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-any-attribute-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a collection to an xs:any declaration or xs:anyType element</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="field" type="field" />
- <xsd:element minOccurs="0" name="container" type="container-policy" />
- <xsd:element minOccurs="0" name="include-namespace-declaration" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="include-schema-instance" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="reuse-container" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-any-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a single object to an xs:any declaration</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="field" type="field" />
- <xsd:element minOccurs="0" default="false" name="use-xml-root" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="keep-as-element-policy" type="xsd:string" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-fragment-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a single Node to a fragment of an XML document</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="xml-direct-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="reuse-container" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-fragment-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a collection of Nodes to a fragment of an XML document</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-composite-collection-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-binary-data-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a binary object to base64 binary</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="xml-direct-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="is-swa-ref" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="mime-type" type="xsd:string" />
- <xsd:element minOccurs="0" name="should-inline-data" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="reuse-container" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-binary-data-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a binary object to base64 binary</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="xml-composite-direct-collection-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="is-swa-ref" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="mime-type" type="xsd:string" />
- <xsd:element minOccurs="0" name="should-inline-data" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-choice-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a collection to a choice structure in an xml document</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="container-policy" type="container-policy" />
- <xsd:element maxOccurs="unbounded" name="field-to-class-association" type="xml-choice-field-to-class-association" />
- <xsd:element minOccurs="0" name="reuse-container" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-choice-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping of a collection to a choice structure in an xml document</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field-to-class-association" type="xml-choice-field-to-class-association" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-choice-field-to-class-association">
- <xsd:sequence>
- <xsd:element name="xml-field" type="node" />
- <xsd:element name="class-name" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="xml-conversion-pair">
- <xsd:sequence>
- <xsd:element name="qname" type="xsd:string" />
- <xsd:element name="class-name" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="node">
- <xsd:annotation>
- <xsd:documentation>Defines an XPath expression to an element or attribute in an XML document.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="field">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="position" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>The position of the node in the parent type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="typed-text-field" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>If this is a typed text field.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="single-node" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates if each item in the collection is in the same node instead of having one node per item in the collection</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="schema-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The schema type of the element.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="xml-to-java-conversion-pair" type="xml-conversion-pair" />
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="java-to-xml-conversion-pair" type="xml-conversion-pair" />
- <xsd:element minOccurs="0" name="leaf-element-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Indicates the elements type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="is-required" type="xsd:boolean"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="union-node">
- <xsd:annotation>
- <xsd:documentation>Use to represent nodes which are mapped to unions</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="field">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="typed-text-field" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>If this is a typed text field.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="single-node" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates if each item in the collection is in the same node instead of having one node per item in the collection</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="schema-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The schema type of the element.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="xml-to-java-conversion-pair" type="xml-conversion-pair" />
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="java-to-xml-conversion-pair" type="xml-conversion-pair" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="namespace-resolver">
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="1" name="namespaces">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="namespace" type="namespace" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="1" name="default-namespace-uri" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="namespace">
- <xsd:sequence>
- <xsd:element name="prefix" type="xsd:string" />
- <xsd:element name="namespace-uri" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="schema-reference">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="resource" type="xsd:string" />
- <xsd:element name="schema-context" type="xsd:string" />
- <xsd:element name="node-type" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="schema-class-path-reference">
- <xsd:complexContent mixed="false">
- <xsd:extension base="schema-reference" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="schema-file-reference">
- <xsd:complexContent mixed="false">
- <xsd:extension base="schema-reference" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="schema-url-reference">
- <xsd:complexContent mixed="false">
- <xsd:extension base="schema-reference" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="java-character">
- <xsd:restriction base="xsd:string" />
- </xsd:simpleType>
- <xsd:simpleType name="java-timestamp">
- <xsd:restriction base="xsd:dateTime" />
- </xsd:simpleType>
- <xsd:simpleType name="java-util-date">
- <xsd:restriction base="xsd:dateTime" />
- </xsd:simpleType>
- <xsd:complexType name="cmp-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="pessimistic-locking" type="pessimistic-locking">
- <xsd:annotation>
- <xsd:documentation>Defines the cmp bean-level pessimistic locking policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="defer-until-commit" type="defer-until-commit">
- <xsd:annotation>
- <xsd:documentation>Defines modification deferral level for non-deferred writes.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="non-deferred-create-time" type="non-deferred-create-time">
- <xsd:annotation>
- <xsd:documentation>Defines point at which insert will be issued to Database.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="pessimistic-locking">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="wait" name="locking-mode" type="locking-mode" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:simpleType name="defer-until-commit">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="all-modifications" />
- <xsd:enumeration value="update-modifications" />
- <xsd:enumeration value="none" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="non-deferred-create-time">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="after-ejbcreate" />
- <xsd:enumeration value="after-ejbpostcreate" />
- <xsd:enumeration value="undefined" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="locking-mode">
- <xsd:annotation>
- <xsd:documentation>Holds the pessimistic locking mode.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="wait" />
- <xsd:enumeration value="no-wait" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="sequence">
- <xsd:annotation>
- <xsd:documentation>Sequence object.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="" name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Sequence name.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="50" name="preallocation-size" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Sequence preallocation size.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="default-sequence">
- <xsd:annotation>
- <xsd:documentation>References default sequence object, overriding its name and (optionally) preallocation size.</xsd:documentation>
- <xsd:documentation>To use preallocation size of default sequence object, set preallocation size to 0</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="native-sequence">
- <xsd:annotation>
- <xsd:documentation>Database sequence mechanism used.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="table-sequence">
- <xsd:annotation>
- <xsd:documentation>Table sequence</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="SEQUENCE" name="table" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="SEQ_NAME" name="name-field" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence name field in the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="SEQ_COUNT" name="counter-field" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence counter field in the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="unary-table-sequence">
- <xsd:annotation>
- <xsd:documentation>Unary table sequence - sequence name is a table name, table has a single field and a single row</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="SEQUENCE" name="counter-field" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence counter field in the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xmlfile-sequence">
- <xsd:annotation>
- <xsd:documentation>Xmlfile sequence.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-sequence">
- <xsd:annotation>
- <xsd:documentation>Xml sequence</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="sequence">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="SEQUENCE" name="root-element" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="SEQ_NAME" name="name-element" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence name field in the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="SEQ_COUNT" name="counter-element" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Define the name of the sequence counter field in the sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="fetch-groups">
- <xsd:annotation>
- <xsd:documentation>Contains all pre-defined fetch groups.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="default-fetch-group" type="fetch-group" />
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="fetch-group" type="fetch-group" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="fetch-group">
- <xsd:annotation>
- <xsd:documentation>Contains the fetch group attributes info.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="name" type="xsd:string" />
- <xsd:element name="fetch-group-attributes">
- <xsd:complexType>
- <xsd:annotation>
- <xsd:documentation>Contains a fetch group's attribute list.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="fetch-group-attribute" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="change-policy">
- <xsd:annotation>
- <xsd:documentation>Describes the change tracking policy for this descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="deferred-detection-change-policy">
- <xsd:annotation>
- <xsd:documentation>Uses backup clone to detect changes.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="change-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-level-change-policy">
- <xsd:annotation>
- <xsd:documentation>Uses "mark dirty" to detect changes.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="change-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="attribute-level-change-policy">
- <xsd:annotation>
- <xsd:documentation>Uses a ChangeTracker firing PropertyChangeEvent's to detect changes.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="change-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-null-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the Null Policy in use for this relationship currently a choice of [NullPolicy and IsSetNullPolicy].</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="xsi-nil-represents-null" type="xsd:boolean" />
- <xsd:element minOccurs="0" default="false" name="empty-node-represents-null" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="null-representation-for-xml" type="marshal-null-representation" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="null-policy">
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-null-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="true" name="is-set-performed-for-absent-node" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="is-set-null-policy">
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-null-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="is-set-method-name" type="xsd:string" />
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="is-set-parameter-type" type="xsd:string" />
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="is-set-parameter" type="xsd:string" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="marshal-null-representation">
- <xsd:annotation>
- <xsd:documentation>Write null, no tag(default) or an empty tag.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="XSI_NIL" />
- <xsd:enumeration value="ABSENT_NODE" />
- <xsd:enumeration value="EMPTY_NODE" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="field">
- <xsd:annotation>
- <xsd:documentation>Defines a generic field concept, such as a database column.</xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the field.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:complexType name="column">
- <xsd:annotation>
- <xsd:documentation>Defines a column in a relational database table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="field">
- <xsd:attribute name="table" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the column's table. This table must be listed in the class' tables. If not specified the first table of the class will be used.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- <xsd:attribute name="sql-typecode" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>(optional field) The JDBC typecode of this column</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- <xsd:attribute name="column-definition" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>(optional field) Name of the JDBC typecode for this column</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The list of source/target field/column references relating a foreign key in one table to the primary or unique key in another table.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field-reference">
- <xsd:annotation>
- <xsd:documentation>The reference of a source table foreign key and a target table primary key.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="source-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The foreign key field/column name in the source table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="target-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The primary or unique key field/column name in the target table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="query">
- <xsd:annotation>
- <xsd:documentation>Defines a query specification for querying instances of the class.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>The selection criteria of the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="arguments">
- <xsd:annotation>
- <xsd:documentation>The list of query arguments. The order of the argument must match the order of the argument value passed to the query.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="query-argument">
- <xsd:annotation>
- <xsd:documentation>The query argument.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the query. This name can be used to reference and execute the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:complexType name="criteria">
- <xsd:annotation>
- <xsd:documentation>Defines the filtering clause of a query.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="query-argument">
- <xsd:annotation>
- <xsd:documentation>Defines a query argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified class type name of the argument may be provided.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>Optional constant value for the argument.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the query argument.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:complexType name="property">
- <xsd:annotation>
- <xsd:documentation>A user defined property.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:anyType" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- <xsd:complexType name="table">
- <xsd:annotation>
- <xsd:documentation>The list of tables that the class is persisted to. This is typically a single table but can be multiple, or empty for inheritance or aggregated classes.</xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the table. The name can be fully qualified with the schema, tablespace or link.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:complexType name="value-converter">
- <xsd:annotation>
- <xsd:documentation>
- Specifies how the data value should be converted to the
- object value.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
-
- <xsd:complexType name="document-preservation-policy">
- <xsd:sequence>
- <xsd:element name="node-ordering-policy"
- type="node-ordering-policy" maxOccurs="1" minOccurs="0">
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
-
- <xsd:complexType name="node-ordering-policy"></xsd:complexType>
-
-
- <xsd:complexType
- name="descriptor-level-document-preservation-policy">
- <xsd:complexContent>
- <xsd:extension base="document-preservation-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="no-document-preservation-policy">
- <xsd:complexContent>
- <xsd:extension base="document-preservation-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="xml-binder-policy">
- <xsd:complexContent>
- <xsd:extension base="document-preservation-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="append-new-elements-ordering-policy">
- <xsd:complexContent>
- <xsd:extension base="node-ordering-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="ignore-new-elements-ordering-policy">
- <xsd:complexContent>
- <xsd:extension base="node-ordering-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="relative-position-ordering-policy">
- <xsd:complexContent>
- <xsd:extension base="node-ordering-policy"></xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-</xsd:schema>
diff --git a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_2.0.xsd b/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_2.0.xsd
deleted file mode 100644
index a93b9ea08e..0000000000
--- a/common/plugins/org.eclipse.jpt.common.eclipselink.core/schemas/eclipselink_persistence_map_2.0.xsd
+++ /dev/null
@@ -1,4253 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-******************************************************************************
- Copyright (c) 1998, 2010 Oracle. All rights reserved.
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
- which accompanies this distribution.
- The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
- and the Eclipse Distribution License is available at
- http://www.eclipse.org/org/documents/edl-v10.php.
-
- Contributors:
- Oracle - initial API and implementation from Oracle TopLink
-*****************************************************************************/
--->
-<!-- Eclipse Persistence Service Project :: Map Schema file for ORM/OXM/EIS -->
-<xsd:schema
- targetNamespace="http://www.eclipse.org/eclipselink/xsds/persistence"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns="http://www.eclipse.org/eclipselink/xsds/persistence"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="2.0"
- >
- <xsd:element name="object-persistence" type="object-persistence" />
- <xsd:complexType name="object-persistence">
- <xsd:annotation>
- <xsd:documentation>An object-persistence mapping module, a set of class-mapping-descriptors.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>A name for the model being mapped.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-mapping-descriptors">
- <xsd:annotation>
- <xsd:documentation>The list of class mapping descriptors.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="class-mapping-descriptor" type="class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Information of how a class is persisted to its data-store.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="login" type="datasource-login">
- <xsd:annotation>
- <xsd:documentation>The datasource connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="default-temporal-mutable" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines the default for how Date and Calendar types are used with change tracking.</xsd:documentation>
- <xsd:documentation>By default they are assumed not to be changed directly (only replaced).</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="queries">
- <xsd:annotation>
- <xsd:documentation>A list of queries to be stored on the session.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="query" type="database-query">
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute default="Eclipse Persistence Services - 2.0 (Build YYMMDD)" name="version" type="xsd:string" />
- </xsd:complexType>
- <xsd:complexType name="datasource-login">
- <xsd:annotation>
- <xsd:documentation>The datasource connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="platform-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the platform class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="user-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The datasource user-name.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="password" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The datasource password, this is stored in encrypted form.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="external-connection-pooling" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines if the connections are managed by the datasource driver, and a new connection should be acquire per call.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="external-transaction-controller" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines if the transaction are managed by a transaction manager, and should not be managed by TopLink.</xsd:documentation>
- <xsd:documentation>This can also be used if the datasource does not support transactions.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="sequencing">
- <xsd:annotation>
- <xsd:documentation>Sequencing information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="default-sequence" type="sequence">
- <xsd:annotation>
- <xsd:documentation>Default sequence. The name is optional. If no name provided an empty string will be used as a name.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="sequences">
- <xsd:annotation>
- <xsd:documentation>Non default sequences. Make sure each sequence has unique name.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="sequence" type="sequence" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="database-login">
- <xsd:annotation>
- <xsd:documentation>The JDBC driver and database connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="datasource-login">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="driver-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the JDBC driver class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="connection-url" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The full JDBC driver connection URL.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="bind-all-parameters" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if parameter binding should be used.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cache-all-statements" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if statement caching should be used. This should be used with parameter binding, this cannot be used with external connection pooling.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="byte-array-binding" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if byte array data-types should use binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="string-binding" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if string data-types should use binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="256" name="string-binding-size" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Configure the threshold string size for usage of string binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="streams-for-binding" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if large byte array and string data-types should be bound as streams.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="force-field-names-to-upper-case" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure to force all field names to upper-case.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="optimize-data-conversion" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure data optimization.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="trim-strings" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if string trailing blanks should be trimmed. This is normally required for CHAR data-types.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-writing" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Configure if batch writing should be used.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="jdbc-batch-writing" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>If using batch writing, configure if the JDBC drivers batch writing should be used.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-login">
- <xsd:annotation>
- <xsd:documentation>The JCA driver and EIS connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="datasource-login">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="connection-spec-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the TopLink platform specific connection spec class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="connection-factory-url" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The JNDI url for the managed JCA adapter's connection factory.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-login">
- <xsd:annotation>
- <xsd:documentation>The connection and configuration information.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="datasource-login">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="true"
- name="equal-namespace-resolvers" type="xsd:boolean" />
- <xsd:element name="document-preservation-policy"
- type="document-preservation-policy" maxOccurs="1"
- minOccurs="0">
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Information of how a class is persisted to its data-store.</xsd:documentation>
- <xsd:documentation>This is an abstract definition to allow flexibility in the types of classes and datastores persisted, i.e. interfaces, abstract classes, aggregates, non-relational persistence.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the implementation class being persisted. The class name must be full qualified with its package.</xsd:documentation>
- <xsd:documentation>Example: <class xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">example.employee.implementation.Employee</class></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="alias" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optionally an alias name can be given for the class. The alias is a string that can be used to refer to the class in place of its implementation name, such as in querying.</xsd:documentation>
- <xsd:documentation>Example: <alias xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">Employee</alias></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="primary-key">
- <xsd:annotation>
- <xsd:documentation>The list of fields/columns that make up the primary key or unique identifier of the class.</xsd:documentation>
- <xsd:documentation>This is used for caching, relationships, and for database operations.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The primary key field.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="read-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Defines if the class is read-only.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="properties">
- <xsd:annotation>
- <xsd:documentation>Allow for user defined properties to be defined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="property" type="property">
- <xsd:annotation>
- <xsd:documentation>A user defined property.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="inheritance" type="inheritance-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class is related in inheritance and how this inheritance is persisted.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="events" type="event-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the persistent events for this class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="querying" type="query-policy">
- <xsd:annotation>
- <xsd:documentation>The list of defined queries for the class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="attribute-mappings">
- <xsd:annotation>
- <xsd:documentation>The list of mappings that define how the class' attributes are persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="attribute-mapping" type="attribute-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a attribute is persisted. The attribute mapping definition is extendable to allow for different types of mappings.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="descriptor-type" type="class-descriptor-type">
- <xsd:annotation>
- <xsd:documentation>Defines the descriptor type, such as aggregate or independent.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="interfaces" type="interface-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the interfaces that this class implements..</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="locking" type="locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the locking behavior for the class. Such as an optimistic locking policy based on version, timestamp or change set of columns.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="sequencing" type="sequencing-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how a generated unique id should be assigned to the class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="caching" type="caching-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class' instances should be cached.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="remote-caching" type="caching-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class' instances should be cached on remote clients.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="history-policy" type="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of objects are persisted to the data-store. By default there will be no history policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="returning-policy" type="returning-policy">
- <xsd:annotation>
- <xsd:documentation>Defines retuning policy. By default there will be no returning policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="amendment" type="amendment">
- <xsd:annotation>
- <xsd:documentation>Allow for the descriptor to be amended or customized through a class API after loading.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="instantiation" type="instantiation-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object instantiation behavoir to be customized</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="copying" type="copy-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object cloning/copying behavoir to be customized.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="query-keys">
- <xsd:annotation>
- <xsd:documentation>A list of query keys or aliases for database information. These can be used in queries instead of the database column names.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="query-key" type="query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for querying database information.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="cmp-policy" type="cmp-policy">
- <xsd:annotation>
- <xsd:documentation>Place holder of CMP information specific.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-groups" type="fetch-groups">
- <xsd:annotation>
- <xsd:documentation>Contains all pre-defined fetch groups at the descriptor level</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="1" name="change-policy" type="change-policy">
- <xsd:annotation>
- <xsd:documentation>Contains the Change Policy for this descriptor</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute fixed="10" name="schema-major-version" type="xsd:integer" />
- <xsd:attribute fixed="0" name="schema-minor-version" type="xsd:integer" />
- </xsd:complexType>
- <xsd:simpleType name="class-descriptor-type">
- <xsd:annotation>
- <xsd:documentation>Defines the class descriptor type.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="independent" />
- <xsd:enumeration value="aggregate" />
- <xsd:enumeration value="aggregate-collection" />
- <xsd:enumeration value="composite" />
- <xsd:enumeration value="composite" />
- <xsd:enumeration value="interface" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="interface-policy">
- <xsd:annotation>
- <xsd:documentation>Specify the interfaces that a class descriptor implements, or the implemention class for an interface descriptor.</xsd:documentation>
- <xsd:documentation>Optionally a set of public interfaces for the class can be specified. This allows the interface to be used to refer to the implementation class.</xsd:documentation>
- <xsd:documentation>If two classes implement the same interface, an interface descriptor should be defined for the interface.</xsd:documentation>
- <xsd:documentation>This can also be used to define inheritance between interface descriptors.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="interface" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified interface class name.</xsd:documentation>
- <xsd:documentation>Example: <class xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">example.employee.api.Employee</class></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="implementor-descriptor" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified class name of the implementation class for which this interface is the public interface.</xsd:documentation>
- <xsd:documentation>This can be used if the interface has only a single implementor.</xsd:documentation>
- <xsd:documentation>Example: <class xmlns="http://www.eclipse.org/eclipselink/xsds/persistence">example.employee.impl.Employee</class></xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="copy-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object cloning/copying behavoir to be customized.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="instantiation-copy-policy">
- <xsd:annotation>
- <xsd:documentation>Creates a copying through creating a new instance to copy into.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="copy-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="clone-copy-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object cloning/copying behavoir to be customized through a clone method.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="copy-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the clone method on the object, i.e. 'clone'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="instantiation-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the object instantiation behavoir to be customized.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the method on the factory to instantiate the object instance.'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="factory-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified factory class name.'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="factory-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the method to instantiate the factory class.'</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="amendment">
- <xsd:annotation>
- <xsd:documentation>Specifies a class and static method to be called to allow for the descriptor to be amended or customized through a class API after loading.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="amendment-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation> The fully qualified name of the amendment class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="amendment-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the static amendment method on the class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="relational-class-mapping-descriptor">
- <xsd:annotation>
- <xsd:documentation>Defines a class mapping to a relational database table(s).</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="class-mapping-descriptor">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="tables">
- <xsd:annotation>
- <xsd:documentation>The list of the tables the class is persisted to. Typically a class is persisted to a single table, but multiple tables can be defined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="table" type="table">
- <xsd:annotation>
- <xsd:documentation>The list of tables that the class is persisted to. This is typically a single table but can be multiple, or empty for inheritance or aggregated classes.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-keys-for-multiple-table" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>Allow the foreign key field references to be define for multiple table descriptors.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="multiple-table-join-criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>For complex multiple table join conditions an expression may be provided instead of the table foreign key information.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="version-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on a numeric version field/column that tracks changes and the version to an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy">
- <xsd:sequence>
- <xsd:element name="version-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The name and optionally the table of the column that the attribute is stored into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="store-version-in-cache" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the version value should be stored in the cache, or if it will be stored in the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="timestamp-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on timestamp version column that tracks changes and the version to an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="version-locking-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="server-time" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the timestamp should be obtained locally or from the database server.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="all-fields-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on comparing the original read values of all fields of the object with the current state of the values in the database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="changed-fields-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on comparing the original read values of only the changed fields of the object with the current state of the values in the database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="selected-fields-locking-policy">
- <xsd:annotation>
- <xsd:documentation>Defines an optimistic locking policy based on comparing the original read values of a specified set of fields of the object with the current state of the values in the database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="locking-policy">
- <xsd:sequence>
- <xsd:element name="fields">
- <xsd:annotation>
- <xsd:documentation>Specify the set of fields to compare on update and delete.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="sequencing-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how a database generated unique id should be assigned to the class.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="sequence-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify the name of the sequence generator. This could be the name of a sequence object, or a row value in a sequence table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="sequence-field" type="field">
- <xsd:annotation>
- <xsd:documentation>Specify the field/column that the generated sequence id is assigned to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:simpleType name="cache-type">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid caching types.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="none" />
- <xsd:enumeration value="full" />
- <xsd:enumeration value="cache" />
- <xsd:enumeration value="weak-reference" />
- <xsd:enumeration value="soft-reference" />
- <xsd:enumeration value="soft-cache-weak-reference" />
- <xsd:enumeration value="hard-cache-weak-reference" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="caching-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class' instances should be cached and how object identity should be maintained.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="soft-cache-weak-reference" name="cache-type" type="cache-type">
- <xsd:annotation>
- <xsd:documentation>Specify the type of caching, such as LRU, weak reference or none.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="100" name="cache-size" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specify the initial or maximum size of the cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="always-refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to always refresh cached objects on queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="only-refresh-cache-if-newer-version" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to refresh if the cached object is an older version.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="disable-cache-hits" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Disable obtaining cache hits on primary key queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="always-conform" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to always conform queries within a transaction.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="isolated" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if objects of this type should be isolated from the shared cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="isolate-new-data-after-transaction" name="unitofwork-isolation-level" type="unitofwork-isolation-level">
- <xsd:annotation>
- <xsd:documentation>Specify how the unit of work should be isolated to the session cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="cache-invalidation-policy" type="cache-invalidation">
- <xsd:annotation>
- <xsd:documentation>Defines the cache invalidation policy. By default there will be no cache invalidation policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="change-set" name="cache-sync-type" type="cache-sync-type">
- <xsd:annotation>
- <xsd:documentation>The type of cache synchronization to be used with this descripor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="cache-invalidation" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Abstract superclass for cache invalidation policies.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="update-read-time-on-update" type="xsd:boolean" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="no-expiry-cache-invalidation-policy">
- <xsd:annotation>
- <xsd:documentation>Cache invalidation policy where objects in the cache do not expire.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="cache-invalidation" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="time-to-live-cache-invalidation-policy">
- <xsd:annotation>
- <xsd:documentation>Cache invalidation policy where objects live a specific number of milliseconds after they are read.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="cache-invalidation">
- <xsd:sequence>
- <xsd:element name="time-to-live" type="xsd:long" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="daily-cache-invalidation-policy">
- <xsd:annotation>
- <xsd:documentation>Cache invalidation Policy where objects expire at a specific time every day</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="cache-invalidation">
- <xsd:sequence>
- <xsd:element name="expiry-time" type="xsd:dateTime" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of objects are to be persisted to the data-store.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="true" name="handle-writes" type="xsd:boolean" />
- <xsd:element minOccurs="0" default="false" name="use-database-time" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="history-tables">
- <xsd:annotation>
- <xsd:documentation>Defines the names of the mirroring historical tables.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="history-table" type="history-table" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="start-fields">
- <xsd:annotation>
- <xsd:documentation>Defines the start fields for each historical table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="start-field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="end-fields">
- <xsd:annotation>
- <xsd:documentation>Defines the end fields for each historical table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="end-field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="history-table">
- <xsd:annotation>
- <xsd:documentation>Each entry is a source (descriptor) to history table name association.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" default="" name="source" type="xsd:string" />
- <xsd:element minOccurs="1" name="history" type="xsd:string" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="returning-policy">
- <xsd:annotation>
- <xsd:documentation>Defines retuning policy. By default there will be no returning policy.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="1" name="returning-field-infos">
- <xsd:annotation>
- <xsd:documentation>Lists the fields to be returned together with the flags defining returning options</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="returning-field-info" type="returning-field-info" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="returning-field-info">
- <xsd:annotation>
- <xsd:documentation>Field to be returned together with type and the flags defining returning options. At least one of insert, update should be true.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the target referenced class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field to be returned.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="insert" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates whether the field should be retuned after Insert.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="insert-mode-return-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>If insert==true, indicates whether the field should not be inserted (true). If insert==false - ignored.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="update" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Indicates whether the field should be retuned after Insert.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="inheritance-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how the class is related in inheritance and how this inheritance is persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="parent-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the parent/superclass of the class being persisted. The class name must be full qualified with its package.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="read-subclasses-on-queries" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Define if subclasses of the class should be returned on queries, or only the exact class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="all-subclasses-view" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Optionally specify the name of a view that joins all of the subclass' tables.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="use-class-name-as-indicator" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the fully qualified class name should be used as the class type indicator.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-extraction-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of a method on the class that takes the class' row as argument a computed that class type to be used to instantiate from the row.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-indicator-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The name of the type field/column that the class type is stored into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-indicator-mappings" type="class-indicator-mappings">
- <xsd:annotation>
- <xsd:documentation>The set of class indicator values and the subclasses they map to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-extractor" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of a class that implements a class extractor interface.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="only-instances-criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>The criteria that filters out all sibling and subclass instances on queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="all-subclasses-criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>The criteria that filters out sibling instances on queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="outer-join-subclasses" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>For inheritance queries specify if all subclasses should be outer joined, instead of a query per subclass.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="qname-inheritance-policy">
- <xsd:annotation>
- <xsd:documentation>Extends inheritance policy. Allows for prefixed names to be resolved at runtime to find the approriate class</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="inheritance-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="class-indicator-mappings">
- <xsd:annotation>
- <xsd:documentation>The set of class indicator values and the subclasses they map to.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="class-indicator-mapping">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the class the type maps to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="class-indicator" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>The field value used to define the class type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="event-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the persistent events for this class.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="event-listeners">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="event-listener" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of an event listener class that implements the descriptor event listener interface.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-build-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after building the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-write-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before writing the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-write-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after writing the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-insert-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before inserting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-insert-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after inserting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-update-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before updating the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-update-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after updating the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="pre-delete-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before deleting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-delete-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after deleting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="about-to-insert-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before inserting the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="about-to-update-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed before updating the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-clone-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after cloning the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-merge-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after merging the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="post-refresh-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Method executed after refreshing the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="query-policy">
- <xsd:annotation>
- <xsd:documentation>The list of defined queries and query properties for the class.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="queries">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="query" type="query">
- <xsd:annotation>
- <xsd:documentation>A query definition for the class' instances.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="timeout" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies a timeout to apply to all queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="check-cache" name="existence" type="existence-policy">
- <xsd:annotation>
- <xsd:documentation>Allow the behavoir used to determine if an insert or update should occur for an object to be customized.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="insert-query" type="insert-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom insert query. This overide the default insert behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="update-query" type="update-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom update query. This overide the default update behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-query" type="delete-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom delete query. This overide the default delete behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="does-exist-query" type="does-exist-query">
- <xsd:annotation>
- <xsd:documentation>Custom does exist query. This overide the default delete behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="read-object-query" type="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Custom read object query. This overide the default read behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="read-all-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Custom read all query. This overide the default read all behavoir for usage with stored procedures or custom calls.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:simpleType name="existence-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid existence policies for determining if an insert or update should occur for an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="check-cache" />
- <xsd:enumeration value="check-database" />
- <xsd:enumeration value="assume-existence" />
- <xsd:enumeration value="assume-non-existence" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for querying database information.</xsd:documentation>
- </xsd:annotation>
- <xsd:attribute name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query-key alias name.</xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- <xsd:simpleType name="cache-sync-type">
- <xsd:annotation>
- <xsd:documentation>The type of cache synchronization to use with a descriptor.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="invalidation" />
- <xsd:enumeration value="no-changes" />
- <xsd:enumeration value="change-set-with-new-objects" />
- <xsd:enumeration value="change-set" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="unitofwork-isolation-level">
- <xsd:annotation>
- <xsd:documentation>Specify how the unit of work isolated from the session cache.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="use-session-cache-after-transaction" />
- <xsd:enumeration value="isolate-new-data-after-transaction" />
- <xsd:enumeration value="isolate-cache-after-transaction" />
- <xsd:enumeration value="isolate-cache-always" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="direct-query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a database column.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="query-key">
- <xsd:sequence>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field/column being aliased.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="relationship-query-key" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a join to another class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="query-key">
- <xsd:sequence>
- <xsd:element name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the target referenced class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:choice>
- <xsd:element name="foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key join condition between the source and target class' tables.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="criteria" type="criteria">
- <xsd:annotation>
- <xsd:documentation>The join criteria between the source and target class' tables.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:choice>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-one-query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a 1-1 join to another class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-query-key" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-many-query-key">
- <xsd:annotation>
- <xsd:documentation>Defines an alias for a 1-m join from another class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="relationship-query-key" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping from an attirbute to a simple field datatype, i.e. String, Number, Date.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The name and optionally the table of the field/column that the attribute is stored into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="null-value" type="xsd:anySimpleType" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>Optionally specify a value that null data values should be converted to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="converter" type="value-converter" minOccurs="0">
- <xsd:annotation>
- <xsd:documentation>Optionally specify how the data value should be converted to the object value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="attribute-classification" type="xsd:string" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="attribute-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a attribute is persisted. The attribute mapping definition is extendable to allow for different types of mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="attribute-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the attribute. This is the implementation class attribute name.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="read-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the attribute is read-only.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="get-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the get method for the attribute.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="set-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the set method for the attribute.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="properties">
- <xsd:annotation>
- <xsd:documentation>Allow for user defined properties to be defined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="property" type="property">
- <xsd:annotation>
- <xsd:documentation>A user defined property.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a simple attribute is persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="abstract-direct-mapping">
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping from an attirbute to a simple field datatype, i.e. String, Number, Date.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="abstract-direct-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="is-cdata" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="null-policy" type="abstract-null-policy" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-direct-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a mapping from an attirbute to a simple field datatype, i.e. String, Number, Date.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-direct-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="field-transformation" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a field transformation for a transformation mapping</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="field" type="field" />
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="method-based-field-transformation">
- <xsd:complexContent mixed="false">
- <xsd:extension base="field-transformation">
- <xsd:sequence>
- <xsd:element name="method" type="xsd:string" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="transformer-based-field-transformation">
- <xsd:complexContent mixed="false">
- <xsd:extension base="field-transformation">
- <xsd:sequence>
- <xsd:element name="transformer-class" type="xsd:string" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="abstract-transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a transformation mapping that uses Java code to transform between the data and object values.</xsd:documentation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="attribute-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the attribute transformation defined in the domain class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="attribute-transformer" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The class name of the attribute transformer. Used in place of attribute-transformation.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="mutable" type="xsd:boolean" />
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy" />
- <xsd:element minOccurs="0" name="field-transformations">
- <xsd:annotation>
- <xsd:documentation>The field transformations.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field-transformation" type="field-transformation" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-transformation-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-transformation-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-transformation-mapping">
- <xsd:annotation>
- <xsd:documentation>This can be used if a single attribute maps to multiple fields, or field only mappings or attribute only mappings.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="abstract-transformation-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="aggregate-object-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a relationship where the target object is strictly privately owned by the source object and stores within the source objects row</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified class name of the target class of the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="allow-null" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if a row of all nulls should be interpreted as null.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="field-translations">
- <xsd:annotation>
- <xsd:documentation>Allow for the mapping to use different field names than the descriptor.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field-translation">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="source-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field in the source descriptor's table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="target-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field in the aggregate descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="relationship-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines how a relationship between two classes is persisted.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified class name of the target class of the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="private-owned" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the target objects are privately owned dependent objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-persist" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the create operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-merge" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the create operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the refresh operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="cascade-remove" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the remove operation should be cascaded to the referenced object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-one-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-1 relationship from the source instance to the target instance.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the source class' table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-one-to-one-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-1 relationship from the source instance to the target instance.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="one-to-one-mapping" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="one-to-many-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-m relationship from the source instance to the target instances.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="target-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the target class' table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the related objects can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="eis-one-to-many-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-m relationship from the source instance to the target instances.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="source-foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="target-foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-key-grouping-element" type="field" />
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the related objects can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a collection of simple types relationship from the source instance to a set of simple data values.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="attribute-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="data-read-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target data values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="reference-table" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the reference table that stores the source primary key and the data values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="direct-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field/column in the reference table that stores the data values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="reference-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the reference table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="value-converter" type="value-converter">
- <xsd:annotation>
- <xsd:documentation>Optionally specify how the data value should be converted to the object value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="insert-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to insert a row into the reference table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete a row from the reference table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the rows from the reference table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="session-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name session that defines the reference table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="history-policy" type="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of this attribute are persisted to the data-store. By default there will be no history policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-map-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a map relationship from the source instance to a set of key values pairs of simple data values.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="direct-collection-mapping">
- <xsd:sequence>
- <xsd:element name="direct-key-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The field/column in the reference table that sores the map key data value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="key-converter" type="value-converter">
- <xsd:annotation>
- <xsd:documentation>Optionally specify how the key data value should be converted to the object value.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="aggregate-collection-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-m relationship from the source instance to the target instances where the target instances are strictly privately owned by the source object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="target-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key in the target class' table that defines the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the related objects can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="many-to-many-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a m-m relationship from the source instance to the target instances.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element name="relation-table" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the relation table that stores the source/target primary keys.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="source-relation-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key from the relational table to the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="target-relation-foreign-key" type="foreign-key">
- <xsd:annotation>
- <xsd:documentation>The foreign key from the relational table to the target class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="insert-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to insert a row into the relation table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete a row from the relation table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="delete-all-query" type="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>A query to delete all of the rows from the relation table can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="history-policy" type="history-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how past versions of this attribute are persisted to the data-store. By default there will be no history policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="join-fetch" type="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Specify to always join the related objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="variable-one-to-one-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines a 1-1 relationship from the source instance to the target instance that may be of several types related through an interface.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="relationship-mapping">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="bidirectional-target-attribute" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>For bi-directional relationships the target inverse relationship can be defined.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="batch-reading" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify to optimize reads for the class by batching the reads to this relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="indirection" type="indirection-policy">
- <xsd:annotation>
- <xsd:documentation>The indirection policy to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="selection-query" type="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Specify the query to use to select the target objects.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="type-field" type="field">
- <xsd:annotation>
- <xsd:documentation>Specify the column to store the class type of the related object into.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="foreign-key-fields">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="field" type="field">
- <xsd:annotation>
- <xsd:documentation>The set of foreign key fields populated by this relationship in the source class' table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="foreign-key-to-query-key">
- <xsd:annotation>
- <xsd:documentation>The list of source/target column/query key references relating a foreign key in one table to the query keys defining a primary or unique key value in the other interface descriptor.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="query-key-reference">
- <xsd:annotation>
- <xsd:documentation>The reference of a source table foreign key and a target interface descriptor query key.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="source-field" type="field">
- <xsd:annotation>
- <xsd:documentation>The foreign key field/column name in the source table.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="target-query-key" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query key name of the target interface descriptor.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="class-indicator-mappings" type="class-indicator-mappings">
- <xsd:annotation>
- <xsd:documentation>The set of class indicator values and the subclasses they map to.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a container/collection type.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="collection-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the collection implementation class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="sorted-collection-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a sorted collection type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="comparator-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the comparitor, used to compare objects in sorting the collection.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="list-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a list collection type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="map-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a map container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="map-key-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the method to call on the target objects to get the key value for the map.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-map-container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a direct map container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="scrollable-cursor-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a scrollable cursor container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="cursored-stream-policy">
- <xsd:annotation>
- <xsd:documentation>Defines a cursored stream container type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="container-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="indirection-policy" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a deferred read indirection mechanism.</xsd:documentation>
- </xsd:annotation>
- </xsd:complexType>
- <xsd:complexType name="value-holder-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of value holders to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="proxy-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of proxies to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="transparent-collection-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of transparent collections to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="collection-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the collection interface to use, i.e. List, Set, Map.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="map-key-method" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the method to call on the target objects to get the key value for the map.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="container-indirection-policy">
- <xsd:annotation>
- <xsd:documentation>Defines usage of a user defined container to implement indirection.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="indirection-policy">
- <xsd:sequence>
- <xsd:element name="container-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the container implementer to use.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="xml-list-converter">
- <xsd:annotation>
- <xsd:documentation>List converter</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="object-class-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the list's element type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="typesafe-enumeration-converter">
- <xsd:annotation>
- <xsd:documentation>Typesafe Enumeration conversion</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="type-conversion-converter">
- <xsd:annotation>
- <xsd:documentation>Specifies the data type and an object type of the attribute to convert between.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="object-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the attribute type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="data-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the attributes storage data type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="serialized-object-converter">
- <xsd:annotation>
- <xsd:documentation>Uses object serialization to convert between the object and data type.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="data-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specifies the fully qualified class name of the attributes storage data type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-type-converter">
- <xsd:annotation>
- <xsd:documentation>Specifies a mapping of values from database values used in the field and object values used in the attribute.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="value-converter">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="default-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>An optional default value can be specified. This value is used if a database type is not found in the type mapping.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="type-mappings">
- <xsd:annotation>
- <xsd:documentation>Specifies the mapping of values. Both the object and database values must be unique.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="type-mapping" type="type-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines the object and data value mapping.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="attribute-only-type-mappings">
- <xsd:annotation>
- <xsd:documentation>Specifies a mapping of additional values that map non-unique data values to a unique attribute value.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="type-mapping" type="type-mapping">
- <xsd:annotation>
- <xsd:documentation>Defines the object and data value mapping.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="type-mapping">
- <xsd:annotation>
- <xsd:documentation>Define an object and data value mapping.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="object-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>Specifies the value to use in the object's attribute.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="data-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>Specifies the value to use in the database field.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="database-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query/interaction against a database.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="query">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="true" name="maintain-cache" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should bypass the cache completely.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="bind-all-parameters" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should use paramater binding for arguments, or print the arguments in-line.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="cache-statement" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the queries statement should be cached, this must be used with parameter binding.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="timeout" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies a timeout to cancel the query in if the request takes too long to complete.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="prepare" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should prepare and cache its generated SQL, or regenerate the SQL on each execution.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="call" type="criteria">
- <xsd:annotation>
- <xsd:documentation>For static calls the SQL or Stored Procedure call definition can be specified.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="join-fetch-type">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid join fetch options.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="none" />
- <xsd:enumeration value="inner-join" />
- <xsd:enumeration value="outer-join" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="cascade-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid cascade policies.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="none" />
- <xsd:enumeration value="private" />
- <xsd:enumeration value="all" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="value-read-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading a single value.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="direct-read-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="direct-read-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading a collection of values.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="data-read-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="data-read-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading raw data.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="read-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="read-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query for reading.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" default="false" name="cache-query-results" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specifies if the query should cache the query results to avoid future executions.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="max-rows" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies the maximum number of rows to fetch, results will be trunctate on the database to this size.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="first-result" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifies where to start the cursor in a result set returned from the database. Results prior to this number will not be built into objects</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-size" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>Specifiess the number of rows to fetch from the database on each result set next operation.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="query-result-cache-policy" type="query-result-cache-policy">
- <xsd:annotation>
- <xsd:documentation>Specify how the query results should be cached.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="query-result-cache-policy">
- <xsd:annotation>
- <xsd:documentation>Defines how a query's results should be cached.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="invalidation-policy" type="cache-invalidation">
- <xsd:annotation>
- <xsd:documentation>Defines the cache invalidation policy. By default there will be no cache invalidation policy.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="100" name="maximum-cached-results" type="xsd:integer">
- <xsd:annotation>
- <xsd:documentation>This defines the number of query result sets that will be cached. The LRU query results will be discarded when the max size is reached.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="data-modify-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for manipulating data.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-modify-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query for modifying an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="update-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for updating an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-modify-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="insert-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for inserting an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-modify-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="delete-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for deleting an object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-modify-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="does-exist-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for determining if an object exists.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="existence-check" type="existence-check">
- <xsd:annotation>
- <xsd:documentation>The existence check option.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="existence-check">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid existence check options.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="check-cache" />
- <xsd:enumeration value="check-database" />
- <xsd:enumeration value="assume-existence" />
- <xsd:enumeration value="assume-non-existence" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="delete-all-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for deleting a criteria of objects.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="database-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="object-level-read-query" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query for objects (as apposed to data).</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="read-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="reference-class" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The full qualified name of the class of objects being queried.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should refresh any cached objects from the database.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="remote-refresh" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should refresh any remotely cached objects from the server.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="cascade-policy" type="cascade-policy">
- <xsd:annotation>
- <xsd:documentation>Specifies if the queries settings (such as refresh, maintain-cache) should apply to the object's relationship queries.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="primary-key" name="cache-usage" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify how the query should interact with the cache.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="lock-mode" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should lock the resulting rows on the database.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="none" name="distinct-state" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify if the query should filter distinct results.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="in-memory-querying">
- <xsd:annotation>
- <xsd:documentation>The in memory querying policy.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element default="ignore-exceptions-return-conformed" name="policy" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify how indirection or unconformable expressions should be treating with in-memory querying and conforming.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" default="true" name="use-default-fetch-group" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the default fetch group should be used for the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-group" type="fetch-group">
- <xsd:annotation>
- <xsd:documentation>Allow the query to partially fetch the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="fetch-group-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Specify a pre-defined named fetch group to allow the query to partially fetch the object.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="use-exclusive-connection" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if the exclusive connection (VPD) should be used for the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="joined-attribute-expressions">
- <xsd:annotation>
- <xsd:documentation>Specifies the attributes being joined.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for joining</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="read-only" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Specify if objects resulting from the query are read-only, and will not be registered in the unit of work.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" default="false" name="outer-join-subclasses" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>For inheritance queries specify if all subclasses should be outer joined, instead of a query per subclass.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="read-all-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for a set of objects.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-level-read-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="container" type="container-policy">
- <xsd:annotation>
- <xsd:documentation>Defines the collection type to use for the relationship.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="batch-read-attribute-expressions">
- <xsd:annotation>
- <xsd:documentation>Specifies all attributes for batch reading.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for batch reading</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="order-by-expressions">
- <xsd:annotation>
- <xsd:documentation>Sets the order expressions for the query.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for ordering</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="read-object-query">
- <xsd:annotation>
- <xsd:documentation>Defines a query for a single object.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="object-level-read-query" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="report-query">
- <xsd:annotation>
- <xsd:documentation>Query for information about a set of objects instead of the objects themselves.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="read-all-query">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="return-choice" type="return-choice">
- <xsd:annotation>
- <xsd:documentation>Simplifies the result by only returning the first result, first value, or all attribute values.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="retrieve-primary-keys" type="retrieve-primary-keys">
- <xsd:annotation>
- <xsd:documentation>Indicates wether the primary key values should also be retrieved for the reference class.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="report-items">
- <xsd:annotation>
- <xsd:documentation>Items to be selected, these could be attributes or aggregate functions.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="report-item">
- <xsd:annotation>
- <xsd:documentation>Represents an item requested</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- <xsd:element minOccurs="0" name="group-by-expressions">
- <xsd:annotation>
- <xsd:documentation>Sets GROUP BY expressions for the query.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Represents an expression for grouping</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="return-choice">
- <xsd:annotation>
- <xsd:documentation>Simplifies the result by only returning the first result, first value, or all attribute values.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="return-single-result" />
- <xsd:enumeration value="return-single-value" />
- <xsd:enumeration value="return-single-attribute" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType name="retrieve-primary-keys">
- <xsd:annotation>
- <xsd:documentation>Indicates wether the primary key values should also be retrieved for the reference class.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="full-primary-key" />
- <xsd:enumeration value="first-primary-key" />
- <xsd:enumeration value="no-primary-key" />
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:complexType name="report-item">
- <xsd:annotation>
- <xsd:documentation>Represents an item requested in ReportQuery.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element name="name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>Name given for item, can be used to retieve value from result.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element name="attribute-expression" type="expression">
- <xsd:annotation>
- <xsd:documentation>Expression (partial) that describes the attribute wanted.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="expression" abstract="true">
- <xsd:annotation>
- <xsd:documentation>Defines a query filter expression tree.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="relation-expression">
- <xsd:annotation>
- <xsd:documentation>Defines a relation expression that compares to expressions through operators such as equal, lessThan, etc..</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="left" type="expression" />
- <xsd:element name="right" type="expression" />
- </xsd:sequence>
- <xsd:attribute name="operator" type="operator" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="logic-expression">
- <xsd:annotation>
- <xsd:documentation>Defines a expression composed of two sub-expressions joined through an operator such as AND, OR.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="left" type="expression" />
- <xsd:element name="right" type="expression" />
- </xsd:sequence>
- <xsd:attribute name="operator" type="operator" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="function-expression">
- <xsd:annotation>
- <xsd:documentation>Defines a expression composed of a function applied to a list of sub-expressions.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="arguments">
- <xsd:annotation>
- <xsd:documentation>The list of function arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="expression">
- <xsd:annotation>
- <xsd:documentation>Defines an argument expression.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- <xsd:attribute name="function" type="operator" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="constant-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression value. If the value is null the value tag can is absent.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element minOccurs="0" name="value" type="xsd:anySimpleType" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="query-key-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression query-key.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="base" type="expression" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" />
- <xsd:attribute name="any-of" type="xsd:boolean" />
- <xsd:attribute name="outer-join" type="xsd:boolean" />
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="field-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression field.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="field" type="field" />
- <xsd:element name="base" type="expression" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="parameter-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression parameter.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression">
- <xsd:sequence>
- <xsd:element name="parameter" type="field" />
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="base-expression">
- <xsd:annotation>
- <xsd:documentation>Defines an expression builder/base.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="expression" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:simpleType name="operator">
- <xsd:annotation>
- <xsd:documentation>Defines the set of valid operators.</xsd:documentation>
- </xsd:annotation>
- <xsd:restriction base="xsd:string" />
- </xsd:simpleType>
- <xsd:complexType name="sql-call">
- <xsd:annotation>
- <xsd:documentation>Defines an SQL query language string.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="sql" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The full SQL query string. Arguments can be specified through #arg-name tokens in the string.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="ejbql-call">
- <xsd:annotation>
- <xsd:documentation>Defines an EJB-QL query language string.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="ejbql" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The EJB-QL query string.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="stored-procedure-call">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure invocation definition.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="procedure-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the stored procedure.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="cursor-output-procedure" type="xsd:boolean">
- <xsd:annotation>
- <xsd:documentation>Define the call to use a cursor output parameter to define the result set.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input and output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="procedure-argument">
- <xsd:annotation>
- <xsd:documentation>Defines an argument to the procedure. The order of the arguments must match the procedure arguments if not named.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="stored-function-call">
- <xsd:annotation>
- <xsd:documentation>Defines a stored function invocation definition.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="stored-procedure-call">
- <xsd:sequence>
- <xsd:element minOccurs="1" name="stored-function-result" type="procedure-output-argument">
- <xsd:annotation>
- <xsd:documentation>The return value of the stored-function.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="procedure-argument">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure call argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element minOccurs="0" name="procedure-argument-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The stored procedure name of the argument. For indexed argument the name is not required.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="argument-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query name of the argument. This is the name of the argument as define in the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="procedure-argument-type" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The fully qualified name of the argument class type.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="procedure-argument-sqltype" type="xsd:int">
- <xsd:annotation>
- <xsd:documentation>The JDBC int type of the argument, as defined in java.jdbc.Types</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="procedure-argument-sqltype-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the type if procedure-argument-sqltype is STRUCT or ARRAY</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="argument-value" type="xsd:anySimpleType">
- <xsd:annotation>
- <xsd:documentation>The procedure argument value maybe be specified if not using a query argument.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- <xsd:complexType name="procedure-output-argument">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure call output argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="procedure-argument" />
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="procedure-inoutput-argument">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure call output argument.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="procedure-argument">
- <xsd:sequence>
- <xsd:element name="output-argument-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The query name of the argument. This is the name of the argument as define in the query.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
- <xsd:complexType name="plsql-stored-procedure-call">
- <xsd:annotation>
- <xsd:documentation>Defines a stored procedure invocation definition whose arguments contain at least one Oracle PL/SQL type that has no JDBC representation (e.g. BOOLEAN, PLS_INTEGER, PL/SQL record).</xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent mixed="false">
- <xsd:extension base="criteria">
- <xsd:sequence>
- <xsd:element name="procedure-name" type="xsd:string">
- <xsd:annotation>
- <xsd:documentation>The name of the stored procedure.</xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:element minOccurs="0" name="arguments">
- <xsd:annotation>
- <xsd:documentation>The list of input and output arguments.</xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element minOccurs="0" maxOccurs="unbounded" name="argument" type="plsql-procedure-argument-type">
- <xsd:annotation>
- <xsd:documentation>Defines an argument to the procedure.</xsd:documentation>
- </xsd:annotation>