Interface SchemaFacetTableRef

All Superinterfaces:
SchemaFacet, SchemaFacetEnumeration, SchemaNodeExplicitRelationship

public interface SchemaFacetTableRef extends SchemaFacetEnumeration, SchemaNodeExplicitRelationship
This interface represents the foreign key constraint associated with a node (osd:tableRef).

Dependencies and validation

To optimize the validation process of this foreign key constraint, dependencies are automatically determined from its definition.

The following explicit dependencies are automatically defined:

  1. Dependencies on insertions and deletions in the table referenced by this foreign key constraint. These dependencies can be added by:
  2. Dependencies on insertions, deletions and modifications on criterion nodes, if this foreign key constraint defines an XPath filter.

    For example, if this constraint defines the XPath filter oid = ${../author_id}, then a dependency on the node on the left side, oid, is defined. These dependencies can be added by:

    In all of the above methods, the SchemaNode argument is oid.

    Dependencies on modifications to the right side, ${../author_id}, are also defined. In this case, the dependency is the same as: DependenciesDefinitionContext.addDependencyToModify(SchemaNode), where the argument SchemaNode is ${../author_id}.

Thus, the validation result of this foreign key constraint only depends upon the updates to the target table that are relevant to these explicit dependencies. The validation result will not be affected by any external events other than changes to the local values concerned.

The dependencies of this foreign key constraint are set to Unknown if this foreign key constraint defines:

  • a programmatic filter with no explicit dependencies.
  • an XPath filter specifying criterion nodes that are not in the target table.

Attention:

  • The dependencies automatically defined in this constraint are used in addition to any that may be defined by a filter.
  • In the user interface, this foreign key constraint is always called when user input is submitted.

See Also: