|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface LinkPropertiesInterface
This is an interface to the LinkProperties object of the
application calling the db-core. This is where calling applications
(scheherazade, flashback, etc) can define semantic rules for what
kinds of nodes can be linked by what kinds of links.
There are several different analogies at play here. Here's what
they mean: Picture two nodes side by side with a directed arrow
going from the one on the left to the one on the right. The node
on the left is the "from" node of the link, and has one forward
link; the link on the right is the "to" node and has one backward
link.
Method Summary | |
---|---|
boolean |
canHaveCircularLinks(LinkType lt)
Does a certain link type allow a node to link indirectly to itself (i.e., passing through one or more nodes in a circuit)? |
boolean |
canHaveMultipleLabels(LinkType lt)
Does a certain link type allow two nodes to be linked several times with different labels? |
boolean |
canHaveReflexiveLinks(LinkType lt)
Does a certain link type allow a node to link directly to itself? |
boolean |
cannotRemoveIfLinkedTo(LinkType lt)
Is it critically bad to remove a node if it is linked to by another node for a certain link type? |
boolean |
cannotRemoveIfLinks(LinkType lt)
Is it critically bad to remove a node if links to another node for a certain link type? |
boolean |
inferFromSideNodesInheritLinksFromSubtypes(LinkType lt)
When querying a node for nodes it links to, are the nodes linked from the given node's subnodes also results? |
boolean |
inferFromSideNodesInheritLinksFromSupertypes(LinkType lt)
When querying a node for nodes int links to, are the nodes linked from the given node's super-nodes also results? |
boolean |
inferSupertypesOfFromSideNodesAreLinked(LinkType lt)
Are the supertypes and prototypes of nodes on the "from" side of a link also inferred to be linked? |
boolean |
inferSupertypesOfToSideNodesAreLinked(LinkType lt)
Are the supertypes and prototypes of nodes on the "to" side of the link also inferred to be linked? |
boolean |
inferToSideNodesInheritLinksToSubtypes(LinkType lt)
When querying a node for nodes that link to it, are the nodes linked to the the given node's subnodes also results? |
boolean |
inferToSideNodesInheritLinksToSupertypes(LinkType lt)
When querying a node for nodes that link to it, are the nodes linked to the the given node's super-nodes also results? |
boolean |
linksToInstancingsIncludeArguments(LinkType lt)
For which link types is it desirable to link to the arguments of an instsancing as well as the frame node? |
boolean |
missingAttributesInheritedBackward(LinkType lt)
For which link types is it desirable for a node to inherit an attribute from another node to which it links (i.e., inheriting over a backward link) if it lacks the attribute entirely? |
boolean |
missingAttributesInheritedForward(LinkType lt)
For which link types is it desirable for a node to inherit an attribute from another node linked to it (i.e., inheriting over a forward link) if it lacks the attribute entirely? |
boolean |
multipleBackwardLinksAllowed(LinkType lt)
Can a node have more than one node linked to it by a certain link type? |
boolean |
multipleForwardLinksAllowed(LinkType lt)
Can a node link to more than one other node by a certain link type? |
boolean |
mustHaveSameTypes(LinkType lt)
Does a certain link type need to have the same type of node on both sides? |
java.util.HashSet |
validLeftTypes(LinkType lt)
What types of nodes can appear to the left of a certain link type? |
java.util.HashSet |
validRightTypes(LinkType lt)
What types of nodes can appear to the right of a certain link type? |
Method Detail |
---|
boolean multipleForwardLinksAllowed(LinkType lt)
boolean multipleBackwardLinksAllowed(LinkType lt)
java.util.HashSet validLeftTypes(LinkType lt) throws Scheherexception
Scheherexception
java.util.HashSet validRightTypes(LinkType lt) throws Scheherexception
Scheherexception
boolean mustHaveSameTypes(LinkType lt)
boolean canHaveMultipleLabels(LinkType lt)
boolean canHaveReflexiveLinks(LinkType lt)
boolean canHaveCircularLinks(LinkType lt)
boolean inferSupertypesOfToSideNodesAreLinked(LinkType lt)
boolean inferSupertypesOfFromSideNodesAreLinked(LinkType lt)
boolean inferFromSideNodesInheritLinksFromSupertypes(LinkType lt)
boolean inferFromSideNodesInheritLinksFromSubtypes(LinkType lt)
boolean inferToSideNodesInheritLinksToSupertypes(LinkType lt)
boolean inferToSideNodesInheritLinksToSubtypes(LinkType lt)
boolean cannotRemoveIfLinkedTo(LinkType lt)
boolean cannotRemoveIfLinks(LinkType lt)
boolean linksToInstancingsIncludeArguments(LinkType lt)
boolean missingAttributesInheritedForward(LinkType lt)
boolean missingAttributesInheritedBackward(LinkType lt)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |