The SEDRIS Data Representation Model
APPENDIX B - Constraints
Valid Node Edge Relationships

Definition

The following specifies the constraints for forming valid relationships between <Feature Node>/<Geometry Node> instances and <Feature Edge>/<Geometry Edge> instances, respectively:

  1. A <Feature Node> instance FN has the following relationship with its <Feature Edge> instances, if any exist.

    1. For each <Feature Edge> instance FE that has FN as a starting node, FN shall be associated with FE through the use of an <Edge Direction> link object with a forwards field value of SE_TRUE.

    2. For each <Feature Edge> instance FE that has FN as a ending node, FN shall be associated with FE through the use of an <Edge Direction> link object with a forwards field value of SE_FALSE.

    3. Consequently, for any <Feature Edge> instance FE with which FN is associated, FE shall appear among the associates of FN either:

      1. once, if FN is FE's starting node and not its ending node,

      2. once, if FN is FE's ending node and not its starting node,

      3. twice, through the use of distinct <Edge Direction> link objects, if FE is a loop.

  2. A <Geometry Node> instance GN has the following relationship with its associated <Geometry Edge> instances, if any exist.

    1. For each <Geometry Edge> instance GE that has GN as a starting node, GN shall be associated with GE through the use of an <Edge Direction> link object with a forwards field value of SE_TRUE.

    2. For each <Geometry Edge> instance GE that has GN as a ending node, GN shall be associated with GE through the use of an <Edge Direction> link object with a forwards field value of SE_FALSE.

    3. Consequently, for any given <Geometry Edge> instance GE with which GN is associated, GE shall appear among the associates of GN once, where GN is either GE's starting node or GE's ending node but not both.

Rationale

The associations between <Feature Node> and <Feature Edge> implement a boundary/co-boundary relationship. This topological relationship must be consistent, and must be consistent with the geometric representation of these objects.

The associations between <Geometry Node> and <Geometry Edge> implement a boundary/co-boundary relationship. This topological relationship must be consistent, and must also be consistent with the geometric counterparts of these objects.

Example

  1. Consider a <Feature Edge> instance E1 that has distinct starting and ending <Feature Node> instances N1 and N2. N1 shall be associated to E1, and N2 shall also be associated to E1.

  2. Consider a <Geometry Edge> instance E1 that has distinct starting and ending <Geometry Node> instances N1 and N2. N1 shall be associated to E1, and N2 shall also be associated to E1.

FAQs

For a <Feature Edge> instance FE that forms a loop (that is, a <Feature Edge> instance for which the starting <Feature Node> instance and ending <Feature Node> instance are the same <Feature Node> instance), how many times does FE appear in that <Feature Node> instance's list of associated <Feature Edge> instances?

Twice, with <Edge Direction> instances having opposite field values. A <Feature Edge> instance with distinct starting and ending <Feature Node> instances would appear only once.

For a <Geometry Edge> instance GE that forms a loop (that is, a <Geometry Edge> instance for which the starting <Geometry Node> instance and ending <Geometry Node> instance are the same <Geometry Node> instance), how many times does GE appear in that <Geometry Node> instance's list of associated <Geometry Edge> instances?

This case can never occur for a <Geometry Edge> instance GE, because GE corresponds to either a <Linear Geometry> instance or one of the edges of a <Polygon> instance, neither of which permits loops to occur.


Prev: Union Organizing Principle. Next: Variable Meaning Constraints. Up:Index.