Class Cardinality

java.lang.Object
net.sf.saxon.value.Cardinality

public final class Cardinality extends Object
This class contains static methods to manipulate the cardinality property of a type. Cardinality of expressions is denoted by one of the values ONE_OR_MORE, ZERO_OR_MORE, ZERO_OR_ONE, EXACTLY_ONE, or EMPTY. These are combinations of the three bit-significant values ALLOWS_ZERO, ALLOWS_ONE, and ALLOWS_MANY.
  • Method Summary

    Modifier and Type
    Method
    Description
    static final int
    add(int c1, int c2)
    Add two cardinalities
    static final boolean
    allowsMany(int cardinality)
    Determine whether multiple occurrences are allowed
    static final boolean
    allowsZero(int cardinality)
    Determine whether empty sequence is allowed
    static String
    getOccurrenceIndicator(int cardinality)
    Get the occurence indicator representing the cardinality
    static final int
    multiply(int c1, int c2)
    Multiply two cardinalities
    static final boolean
    subsumes(int c1, int c2)
    Test if one cardinality subsumes another.
    static final int
    sum(int c1, int c2)
    Form the sum of two cardinalities
    static String
    toString(int cardinality)
    Display the cardinality
    static final int
    union(int c1, int c2)
    Form the union of two cardinalities.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • allowsMany

      public static final boolean allowsMany(int cardinality)
      Determine whether multiple occurrences are allowed
    • allowsZero

      public static final boolean allowsZero(int cardinality)
      Determine whether empty sequence is allowed
    • union

      public static final int union(int c1, int c2)
      Form the union of two cardinalities. The cardinality of the expression "if (c) then e1 else e2" is the union of the cardinalities of e1 and e2.
      Parameters:
      c1 - a cardinality
      c2 - another cardinality
      Returns:
      the cardinality that allows both c1 and c2
    • sum

      public static final int sum(int c1, int c2)
      Form the sum of two cardinalities
    • subsumes

      public static final boolean subsumes(int c1, int c2)
      Test if one cardinality subsumes another. Cardinality c1 subsumes c2 if every option permitted by c2 is also permitted by c1.
      Parameters:
      c1 - a cardinality
      c2 - another cardinality
      Returns:
      true if if every option permitted by c2 is also permitted by c1.
    • add

      public static final int add(int c1, int c2)
      Add two cardinalities
    • multiply

      public static final int multiply(int c1, int c2)
      Multiply two cardinalities
    • toString

      public static String toString(int cardinality)
      Display the cardinality
    • getOccurrenceIndicator

      public static String getOccurrenceIndicator(int cardinality)
      Get the occurence indicator representing the cardinality