<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc on Wed Feb 23 15:53:21 PST 2005 -->
<TITLE>
: C-Index
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_top"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="index-2.html"><B>PREV LETTER</B></A>&nbsp;
&nbsp;<A HREF="index-4.html"><B>NEXT LETTER</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="index-3.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">F</A> <A HREF="index-7.html">G</A> <A HREF="index-8.html">I</A> <A HREF="index-9.html">J</A> <A HREF="index-10.html">L</A> <A HREF="index-11.html">N</A> <A HREF="index-12.html">O</A> <A HREF="index-13.html">P</A> <A HREF="index-14.html">Q</A> <A HREF="index-15.html">R</A> <A HREF="index-16.html">S</A> <A HREF="index-17.html">T</A> <A HREF="index-18.html">U</A> <A HREF="index-19.html">V</A> <HR>
<A NAME="_C_"><!-- --></A><H2>
<B>C</B></H2>
<DL>
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html#C"><B>C</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html">LanguageType</A>
<DD>The '<em><b>C</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html#C_LITERAL"><B>C_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html">LanguageType</A>
<DD>The '<em><b>C</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/CheckOption.html#CASCADE"><B>CASCADE</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/CheckOption.html">CheckOption</A>
<DD>The '<em><b>CASCADE</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ParentUpdateDRIRuleType.html#CASCADE"><B>CASCADE</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ParentUpdateDRIRuleType.html">ParentUpdateDRIRuleType</A>
<DD>The '<em><b>CASCADE</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ParentDeleteDRIRuleType.html#CASCADE"><B>CASCADE</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ParentDeleteDRIRuleType.html">ParentDeleteDRIRuleType</A>
<DD>The '<em><b>CASCADE</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/CheckOption.html#CASCADE_LITERAL"><B>CASCADE_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/CheckOption.html">CheckOption</A>
<DD>The '<em><b>CASCADE</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ParentUpdateDRIRuleType.html#CASCADE_LITERAL"><B>CASCADE_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ParentUpdateDRIRuleType.html">ParentUpdateDRIRuleType</A>
<DD>The '<em><b>CASCADE</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ParentDeleteDRIRuleType.html#CASCADE_LITERAL"><B>CASCADE_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ParentDeleteDRIRuleType.html">ParentDeleteDRIRuleType</A>
<DD>The '<em><b>CASCADE</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseColumnDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.ColumnDefinition)"><B>caseColumnDefinition(ColumnDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Column Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseConstraintDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.ConstraintDefinition)"><B>caseConstraintDefinition(ConstraintDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Constraint Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseDatabaseVendorDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.DatabaseVendorDefinition)"><B>caseDatabaseVendorDefinition(DatabaseVendorDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Database Vendor Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseExtendedDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.ExtendedDefinition)"><B>caseExtendedDefinition(ExtendedDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Extended Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseIndexDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.IndexDefinition)"><B>caseIndexDefinition(IndexDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Index Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#casePredefinedDataTypeDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.PredefinedDataTypeDefinition)"><B>casePredefinedDataTypeDefinition(PredefinedDataTypeDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Predefined Data Type Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseQueryDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.QueryDefinition)"><B>caseQueryDefinition(QueryDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Query Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseSequenceDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.SequenceDefinition)"><B>caseSequenceDefinition(SequenceDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Sequence Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseSQLSyntaxDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.SQLSyntaxDefinition)"><B>caseSQLSyntaxDefinition(SQLSyntaxDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>SQL Syntax Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseStoredProcedureDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.StoredProcedureDefinition)"><B>caseStoredProcedureDefinition(StoredProcedureDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Stored Procedure Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseTableDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.TableDefinition)"><B>caseTableDefinition(TableDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Table Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseTableSpaceDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.TableSpaceDefinition)"><B>caseTableSpaceDefinition(TableSpaceDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Table Space Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseTriggerDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.TriggerDefinition)"><B>caseTriggerDefinition(TriggerDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>Trigger Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html#caseUserDefinedTypeDefinition(org.eclipse.wst.rdb.internal.models.dbdefinition.UserDefinedTypeDefinition)"><B>caseUserDefinedTypeDefinition(UserDefinedTypeDefinition)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionSwitch.html">DatabaseDefinitionSwitch</A>
<DD>Returns the result of interpretting the object as an instance of '<em>User Defined Type Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CHECK_OPTION"><B>CHECK_OPTION</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The meta object id for the '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/CheckOption.html"><CODE><em>Check Option</em></CODE></A>' enum.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/CheckOption.html"><B>CheckOption</B></A> - class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/CheckOption.html">CheckOption</A>.<DD><!-- begin-user-doc -->
 A representation of the literals of the enumeration '<em><b>Check Option</b></em>',
 and utility methods for working with them.<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html#CL"><B>CL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html">LanguageType</A>
<DD>The '<em><b>CL</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html#CL_LITERAL"><B>CL_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html">LanguageType</A>
<DD>The '<em><b>CL</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html#COBOL"><B>COBOL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html">LanguageType</A>
<DD>The '<em><b>COBOL</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html#COBOL_LITERAL"><B>COBOL_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html">LanguageType</A>
<DD>The '<em><b>COBOL</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html#COBOLLE"><B>COBOLLE</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html">LanguageType</A>
<DD>The '<em><b>COBOLLE</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html#COBOLLE_LITERAL"><B>COBOLLE_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html">LanguageType</A>
<DD>The '<em><b>COBOLLE</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#COLUMN_DEFINITION"><B>COLUMN_DEFINITION</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The meta object id for the '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/ColumnDefinitionImpl.html"><CODE><em>Column Definition</em></CODE></A>' class.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#COLUMN_DEFINITION__COMPUTED_SUPPORTED"><B>COLUMN_DEFINITION__COMPUTED_SUPPORTED</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Computed Supported</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#COLUMN_DEFINITION__IDENTITY_CYCLE_SUPPORTED"><B>COLUMN_DEFINITION__IDENTITY_CYCLE_SUPPORTED</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Identity Cycle Supported</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#COLUMN_DEFINITION__IDENTITY_INCREMENT_SUPPORTED"><B>COLUMN_DEFINITION__IDENTITY_INCREMENT_SUPPORTED</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Identity Increment Supported</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#COLUMN_DEFINITION__IDENTITY_MAXIMUM_SUPPORTED"><B>COLUMN_DEFINITION__IDENTITY_MAXIMUM_SUPPORTED</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Identity Maximum Supported</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#COLUMN_DEFINITION__IDENTITY_MINIMUM_SUPPORTED"><B>COLUMN_DEFINITION__IDENTITY_MINIMUM_SUPPORTED</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Identity Minimum Supported</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#COLUMN_DEFINITION__IDENTITY_START_VALUE_SUPPORTED"><B>COLUMN_DEFINITION__IDENTITY_START_VALUE_SUPPORTED</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Identity Start Value Supported</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#COLUMN_DEFINITION__IDENTITY_SUPPORTED"><B>COLUMN_DEFINITION__IDENTITY_SUPPORTED</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Identity Supported</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#COLUMN_DEFINITION_FEATURE_COUNT"><B>COLUMN_DEFINITION_FEATURE_COUNT</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The number of structural features of the the '<em>Column Definition</em>' class.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ColumnDefinition.html"><B>ColumnDefinition</B></A> - interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ColumnDefinition.html">ColumnDefinition</A>.<DD><!-- begin-user-doc -->
 A representation of the model object '<em><b>Column Definition</b></em>'.<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/ColumnDefinitionImpl.html"><B>ColumnDefinitionImpl</B></A> - class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/ColumnDefinitionImpl.html">ColumnDefinitionImpl</A>.<DD><!-- begin-user-doc -->
 An implementation of the model object '<em><b>Column Definition</b></em>'.<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION"><B>CONSTRAINT_DEFINITION</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The meta object id for the '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/ConstraintDefinitionImpl.html"><CODE><em>Constraint Definition</em></CODE></A>' class.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION__CHECK_OPTION"><B>CONSTRAINT_DEFINITION__CHECK_OPTION</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Check Option</b></em>' attribute list.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION__CLUSTERED_PRIMARY_KEY_SUPPORTED"><B>CONSTRAINT_DEFINITION__CLUSTERED_PRIMARY_KEY_SUPPORTED</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Clustered Primary Key Supported</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION__CLUSTERED_UNIQUE_CONSTRAINT_SUPPORTED"><B>CONSTRAINT_DEFINITION__CLUSTERED_UNIQUE_CONSTRAINT_SUPPORTED</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Clustered Unique Constraint Supported</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION__DEFERRABLE_CONSTRAINT_SUPPORTED"><B>CONSTRAINT_DEFINITION__DEFERRABLE_CONSTRAINT_SUPPORTED</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Deferrable Constraint Supported</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION__INFORMATIONAL_CONSTRAINT_SUPPORTED"><B>CONSTRAINT_DEFINITION__INFORMATIONAL_CONSTRAINT_SUPPORTED</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Informational Constraint Supported</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION__MAXIMUM_CHECK_EXPRESSION_LENGTH"><B>CONSTRAINT_DEFINITION__MAXIMUM_CHECK_EXPRESSION_LENGTH</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Maximum Check Expression Length</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION__PARENT_DELETE_DRI_RULE_TYPE"><B>CONSTRAINT_DEFINITION__PARENT_DELETE_DRI_RULE_TYPE</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Parent Delete DRI Rule Type</b></em>' attribute list.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION__PARENT_UPDATE_DRI_RULE_TYPE"><B>CONSTRAINT_DEFINITION__PARENT_UPDATE_DRI_RULE_TYPE</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Parent Update DRI Rule Type</b></em>' attribute list.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION__PRIMARY_KEY_NULLABLE"><B>CONSTRAINT_DEFINITION__PRIMARY_KEY_NULLABLE</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Primary Key Nullable</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION__UNIQUE_KEY_NULLABLE"><B>CONSTRAINT_DEFINITION__UNIQUE_KEY_NULLABLE</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The feature id for the '<em><b>Unique Key Nullable</b></em>' attribute.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html#CONSTRAINT_DEFINITION_FEATURE_COUNT"><B>CONSTRAINT_DEFINITION_FEATURE_COUNT</B></A> - 
Static variable in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionPackage.html">DatabaseDefinitionPackage</A>
<DD>The number of structural features of the the '<em>Constraint Definition</em>' class.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ConstraintDefinition.html"><B>ConstraintDefinition</B></A> - interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ConstraintDefinition.html">ConstraintDefinition</A>.<DD><!-- begin-user-doc -->
 A representation of the model object '<em><b>Constraint Definition</b></em>'.<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/ConstraintDefinitionImpl.html"><B>ConstraintDefinitionImpl</B></A> - class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/ConstraintDefinitionImpl.html">ConstraintDefinitionImpl</A>.<DD><!-- begin-user-doc -->
 An implementation of the model object '<em><b>Constraint Definition</b></em>'.<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#convertToString(org.eclipse.emf.ecore.EDataType, java.lang.Object)"><B>convertToString(EDataType, Object)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html#CPLUSPLUS"><B>CPLUSPLUS</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html">LanguageType</A>
<DD>The '<em><b>CPLUSPLUS</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html#CPLUSPLUS_LITERAL"><B>CPLUSPLUS_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/LanguageType.html">LanguageType</A>
<DD>The '<em><b>CPLUSPLUS</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#create(org.eclipse.emf.ecore.EClass)"><B>create(EClass)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createAdapter(org.eclipse.emf.common.notify.Notifier)"><B>createAdapter(Notifier)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates an adapter for the <code>target</code>.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createColumnDefinition()"><B>createColumnDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createColumnDefinition()"><B>createColumnDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Column Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createColumnDefinitionAdapter()"><B>createColumnDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ColumnDefinition.html"><CODE><em>Column Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createConstraintDefinition()"><B>createConstraintDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createConstraintDefinition()"><B>createConstraintDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Constraint Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createConstraintDefinitionAdapter()"><B>createConstraintDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ConstraintDefinition.html"><CODE><em>Constraint Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createDatabaseVendorDefinition()"><B>createDatabaseVendorDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createDatabaseVendorDefinition()"><B>createDatabaseVendorDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Database Vendor Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createDatabaseVendorDefinitionAdapter()"><B>createDatabaseVendorDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseVendorDefinition.html"><CODE><em>Database Vendor Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createEObjectAdapter()"><B>createEObjectAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for the default case.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createExtendedDefinition()"><B>createExtendedDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createExtendedDefinition()"><B>createExtendedDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Extended Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createExtendedDefinitionAdapter()"><B>createExtendedDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/ExtendedDefinition.html"><CODE><em>Extended Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createFromString(org.eclipse.emf.ecore.EDataType, java.lang.String)"><B>createFromString(EDataType, String)</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createIndexDefinition()"><B>createIndexDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createIndexDefinition()"><B>createIndexDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Index Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createIndexDefinitionAdapter()"><B>createIndexDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/IndexDefinition.html"><CODE><em>Index Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionPackageImpl.html#createPackageContents()"><B>createPackageContents()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionPackageImpl.html">DatabaseDefinitionPackageImpl</A>
<DD>Creates the meta-model objects for the package.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createPredefinedDataTypeDefinition()"><B>createPredefinedDataTypeDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createPredefinedDataTypeDefinition()"><B>createPredefinedDataTypeDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Predefined Data Type Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createPredefinedDataTypeDefinitionAdapter()"><B>createPredefinedDataTypeDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/PredefinedDataTypeDefinition.html"><CODE><em>Predefined Data Type Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createQueryDefinition()"><B>createQueryDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createQueryDefinition()"><B>createQueryDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Query Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createQueryDefinitionAdapter()"><B>createQueryDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/QueryDefinition.html"><CODE><em>Query Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createSequenceDefinition()"><B>createSequenceDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createSequenceDefinition()"><B>createSequenceDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Sequence Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createSequenceDefinitionAdapter()"><B>createSequenceDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/SequenceDefinition.html"><CODE><em>Sequence Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createSQLSyntaxDefinition()"><B>createSQLSyntaxDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createSQLSyntaxDefinition()"><B>createSQLSyntaxDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>SQL Syntax Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createSQLSyntaxDefinitionAdapter()"><B>createSQLSyntaxDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/SQLSyntaxDefinition.html"><CODE><em>SQL Syntax Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createStoredProcedureDefinition()"><B>createStoredProcedureDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createStoredProcedureDefinition()"><B>createStoredProcedureDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Stored Procedure Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createStoredProcedureDefinitionAdapter()"><B>createStoredProcedureDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/StoredProcedureDefinition.html"><CODE><em>Stored Procedure Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createTableDefinition()"><B>createTableDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createTableDefinition()"><B>createTableDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Table Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createTableDefinitionAdapter()"><B>createTableDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/TableDefinition.html"><CODE><em>Table Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createTableSpaceDefinition()"><B>createTableSpaceDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createTableSpaceDefinition()"><B>createTableSpaceDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Table Space Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createTableSpaceDefinitionAdapter()"><B>createTableSpaceDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/TableSpaceDefinition.html"><CODE><em>Table Space Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createTriggerDefinition()"><B>createTriggerDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createTriggerDefinition()"><B>createTriggerDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>Trigger Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createTriggerDefinitionAdapter()"><B>createTriggerDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/TriggerDefinition.html"><CODE><em>Trigger Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html#createUserDefinedTypeDefinition()"><B>createUserDefinedTypeDefinition()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.impl.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/impl/DatabaseDefinitionFactoryImpl.html">DatabaseDefinitionFactoryImpl</A>
<DD><!-- begin-user-doc -->
 <!-- end-user-doc -->
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html#createUserDefinedTypeDefinition()"><B>createUserDefinedTypeDefinition()</B></A> - 
Method in interface org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DatabaseDefinitionFactory.html">DatabaseDefinitionFactory</A>
<DD>Returns a new object of class '<em>User Defined Type Definition</em>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html#createUserDefinedTypeDefinitionAdapter()"><B>createUserDefinedTypeDefinitionAdapter()</B></A> - 
Method in class org.eclipse.wst.rdb.internal.models.dbdefinition.util.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/util/DatabaseDefinitionAdapterFactory.html">DatabaseDefinitionAdapterFactory</A>
<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/UserDefinedTypeDefinition.html"><CODE><em>User Defined Type Definition</em></CODE></A>'.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_DATE"><B>CURRENT_DATE</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT DATE</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_DATE_LITERAL"><B>CURRENT_DATE_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT DATE</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_ID"><B>CURRENT_ID</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT ID</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_ID_LITERAL"><B>CURRENT_ID_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT ID</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_PATH"><B>CURRENT_PATH</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT PATH</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_PATH_LITERAL"><B>CURRENT_PATH_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT PATH</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_TIME"><B>CURRENT_TIME</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT TIME</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_TIME_LITERAL"><B>CURRENT_TIME_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT TIME</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_TIME_STAMP"><B>CURRENT_TIME_STAMP</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT TIME STAMP</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_TIME_STAMP_LITERAL"><B>CURRENT_TIME_STAMP_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT TIME STAMP</b></em>' literal object.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_USER"><B>CURRENT_USER</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT USER</b></em>' literal value.
<DT><A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html#CURRENT_USER_LITERAL"><B>CURRENT_USER_LITERAL</B></A> - 
Static variable in class org.eclipse.wst.rdb.internal.models.dbdefinition.<A HREF="../org/eclipse/wst/rdb/internal/models/dbdefinition/DefaultValueType.html">DefaultValueType</A>
<DD>The '<em><b>CURRENT USER</b></em>' literal object.
</DL>
<HR>

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_bottom"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="index-2.html"><B>PREV LETTER</B></A>&nbsp;
&nbsp;<A HREF="index-4.html"><B>NEXT LETTER</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="index-3.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">F</A> <A HREF="index-7.html">G</A> <A HREF="index-8.html">I</A> <A HREF="index-9.html">J</A> <A HREF="index-10.html">L</A> <A HREF="index-11.html">N</A> <A HREF="index-12.html">O</A> <A HREF="index-13.html">P</A> <A HREF="index-14.html">Q</A> <A HREF="index-15.html">R</A> <A HREF="index-16.html">S</A> <A HREF="index-17.html">T</A> <A HREF="index-18.html">U</A> <A HREF="index-19.html">V</A> <HR>

</BODY>
</HTML>
