Class NameClass

    • Field Detail

      • NAMESPACE_WILDCARD

        public static final java.lang.String NAMESPACE_WILDCARD
        wildcard should be accepted by any name class.
        See Also:
        Constant Field Values
      • LOCALNAME_WILDCARD

        public static final java.lang.String LOCALNAME_WILDCARD
        See Also:
        Constant Field Values
      • ALL

        public static final NameClass ALL
        name class that accepts everything.
      • NONE

        public static final NameClass NONE
        Name class that accepts nothing.
    • Constructor Detail

      • NameClass

        public NameClass()
    • Method Detail

      • accepts

        public abstract boolean accepts​(java.lang.String namespaceURI,
                                        java.lang.String localName)
        checks if this name class accepts given namespace:localName pair.
        Parameters:
        namespaceURI - namespace URI to be tested. If this value equals to NAMESPACE_WILDCARD, implementation must assume that valid namespace is specified. this twist will be used for error diagnosis.
        localName - local part to be tested. As with namespaceURI, LOCALNAME_WILDCARD will acts as a wild card.
        Returns:
        true if the pair is accepted, false otherwise.
      • accepts

        public final boolean accepts​(StringPair name)
      • includes

        public final boolean includes​(NameClass rhs)
        Returns true if this name class is a superset of another name class.
      • isNull

        public boolean isNull()
        Returns true if this name class doesn't accept anything.
      • isEqualTo

        public final boolean isEqualTo​(NameClass rhs)
        Returns true if this name class represents the same set as the given name class.
      • simplify

        public NameClass simplify()
        Computes the equivalent but simple name class.
      • visit

        public abstract java.lang.Object visit​(NameClassVisitor visitor)
        visitor pattern support
      • intersection

        public static NameClass intersection​(NameClass lhs,
                                             NameClass rhs)
        Computes the intersection of two name classes.