- All Superinterfaces:
IAtomicValuedItem,IAtomicValuedNodeItem,ICollectionValue,IDefinitionNodeItem<IFlagDefinition,,IFlagInstance> IItem,IMetapathQueryable,INodeItem,INodeItemVisitable,IPathSegment
- All Known Implementing Classes:
AbstractFlagInstanceNodeItem
public interface IFlagNodeItem
extends IDefinitionNodeItem<IFlagDefinition,IFlagInstance>, IAtomicValuedNodeItem
A Metapath node valued item representing a Metaschema module flag.
-
Nested Class Summary
Nested classes/interfaces inherited from interface dev.metaschema.core.metapath.item.node.INodeItem
INodeItem.NodeType -
Method Summary
Modifier and TypeMethodDescriptiondefault <CONTEXT,RESULT>
RESULTaccept(INodeItemVisitor<CONTEXT, RESULT> visitor, CONTEXT context) A visitor callback.default booleandeepEquals(ICollectionValue other, DynamicContext dynamicContext) Determine if this and the other value are deeply equal.default Stream<? extends IFlagNodeItem>flags()FlagContainer do not have flag items.default Stringformat(IPathFormatter formatter) Generate a path for this node in the directed node graph, using the provided path formatter.default URIRetrieve the base URI of this node.Get the Metaschema definition associated with this node.default IFlagNodeItemgetFlagByName(IEnhancedQName name) FlagContainer do not have flag items.default Collection<? extends IFlagNodeItem>getFlags()FlagContainer do not have flag items.Retrieve the instance associated with this path segment.default Collection<? extends List<? extends IModelNodeItem<?,?>>> FlagContainer do not have model items.default List<? extends IModelNodeItem<?,?>> FlagContainer do not have model items.default IFlagNodeItemGet the value associated with the path segment.default NodeItemKindGet the kind of node item this is.default INodeItem.NodeTypeGet the node type for the node item.default IKindTest<IFlagNodeItem>getType()Get the type information for the item.default IAtomicOrUnionType<?>Get the item type of the item's value.default Stream<? extends IModelNodeItem<?,?>> FlagContainer do not have model items.static IItemTypetype()Get the static type information of the node item.Methods inherited from interface dev.metaschema.core.metapath.item.node.IAtomicValuedNodeItem
stringValueMethods inherited from interface dev.metaschema.core.metapath.item.ICollectionValue
toSignatureMethods inherited from interface dev.metaschema.core.metapath.item.node.IDefinitionNodeItem
getLocation, getQNameMethods inherited from interface dev.metaschema.core.metapath.item.IItem
atomize, contentsAsSequence, flatten, getValue, hasValue, toAtomicItem, toSequenceMethods inherited from interface dev.metaschema.core.metapath.item.node.INodeItem
accept, ancestor, ancestorOrSelf, descendant, descendantOrSelf, following, followingSibling, getMetapath, getParentContentNodeItem, getParentNodeItem, getPathStream, getPosition, getStaticContext, preceding, precedingSiblingMethods inherited from interface dev.metaschema.core.metapath.format.IPathSegment
getPath, toPath
-
Method Details
-
type
Get the static type information of the node item.- Returns:
- the item type
-
getNodeItemKind
Description copied from interface:INodeItemGet the kind of node item this is.- Specified by:
getNodeItemKindin interfaceINodeItem- Returns:
- the node item's kind
-
getNodeType
Description copied from interface:INodeItemGet the node type for the node item.- Specified by:
getNodeTypein interfaceINodeItem- Returns:
- the node type
-
getNodeItem
Description copied from interface:IPathSegmentGet the value associated with the path segment.- Specified by:
getNodeItemin interfaceIMetapathQueryable- Specified by:
getNodeItemin interfaceIPathSegment- Returns:
- the value or
nullif no value is associated with this path segment
-
getDefinition
IFlagDefinition getDefinition()Description copied from interface:IDefinitionNodeItemGet the Metaschema definition associated with this node.- Specified by:
getDefinitionin interfaceIDefinitionNodeItem<IFlagDefinition,IFlagInstance> - Returns:
- the definition
-
getInstance
IFlagInstance getInstance()Description copied from interface:IDefinitionNodeItemRetrieve the instance associated with this path segment.- Specified by:
getInstancein interfaceIDefinitionNodeItem<IFlagDefinition,IFlagInstance> - Returns:
- the instance of the segment, or
nullif it doesn't have one
-
getType
Description copied from interface:IItemGet the type information for the item. -
getValueItemType
Description copied from interface:IAtomicValuedNodeItemGet the item type of the item's value.- Specified by:
getValueItemTypein interfaceIAtomicValuedNodeItem- Returns:
- the item type
-
getBaseUri
Description copied from interface:INodeItemRetrieve the base URI of this node.The base URI of a node will be in order of preference:
- the base URI defined on the node
- the base URI defined on the nearest ancestor node
- the base URI defined on the document node
nullif the document node is unknown
- Specified by:
getBaseUriin interfaceINodeItem- Returns:
- the base URI or
nullif it is unknown
-
getFlags
FlagContainer do not have flag items. This call should return an empty collection. -
getFlagByName
FlagContainer do not have flag items. This call should returnnull.- Specified by:
getFlagByNamein interfaceINodeItem- Parameters:
name- the effective qualified name of the flag- Returns:
- the flag with the matching effective name or
nullif no match was found
-
flags
FlagContainer do not have flag items. This call should return an empty stream. -
getModelItems
FlagContainer do not have model items. This call should return an empty collection.- Specified by:
getModelItemsin interfaceINodeItem- Returns:
- a collection of list(s), with each list containing the items for a given model instance
-
getModelItemsByName
FlagContainer do not have model items. This call should return an empty list.- Specified by:
getModelItemsByNamein interfaceINodeItem- Parameters:
name- the instance name to get model items for- Returns:
- the sequence of items associated with the named model instance, or an empty list if an instance with that name is not present
-
modelItems
FlagContainer do not have model items. This call should return an empty stream.- Specified by:
modelItemsin interfaceINodeItem- Returns:
- the stream of model items or an empty stream if none exist
-
format
Description copied from interface:INodeItemGenerate a path for this node in the directed node graph, using the provided path formatter.- Specified by:
formatin interfaceINodeItem- Specified by:
formatin interfaceIPathSegment- Parameters:
formatter- the path formatter- Returns:
- a textual representation of the path segment
-
accept
default <CONTEXT,RESULT> RESULT accept(@NonNull INodeItemVisitor<CONTEXT, RESULT> visitor, CONTEXT context) Description copied from interface:INodeItemVisitableA visitor callback.- Specified by:
acceptin interfaceINodeItemVisitable- Type Parameters:
CONTEXT- the type of the context parameterRESULT- the type of the visitor result- Parameters:
visitor- the calling visitorcontext- a parameter used to pass contextual information between visitors- Returns:
- the visitor result
-
deepEquals
Description copied from interface:ICollectionValueDetermine if this and the other value are deeply equal.Item equality is defined by the XPath 3.1 fn:deep-equal specification.
- Specified by:
deepEqualsin interfaceICollectionValue- Parameters:
other- the other value to compare to this value todynamicContext- used to provide evaluation information, including the implicit timezone- Returns:
- the
trueif the two values are equal, orfalseotherwise
-