Package org.apache.jena.graph
Class Node
java.lang.Object
org.apache.jena.graph.Node
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
Node_Concrete
,Node_Ext
,Node_Fluid
,Node_Graph
,Node_Triple
A Node has five subtypes: Node_Blank, Node_Anon, Node_URI,
Node_Variable, and Node_ANY.
Nodes are only constructed by the node factory methods, and they will
attempt to re-use existing nodes with the same label if they are recent
enough.
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Exception thrown if a literal-access operation is attempted on a non-literal node. -
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionabstract boolean
Nodes only equal other Nodes that have equal labels.get the blank node id if the node is blank, otherwise die horriblyAnswer the label of this blank node or throw an UnsupportedOperationException if it's not blank.getGraph()
Get the graph for a graph term (N3 formula), otherwise die horriblyAnswer the object which is the index value for this Node.Answer the literal value of a literal node, or throw an UnsupportedOperationException if it's not a literal nodeAnswer the RDF datatype object of this node's literal value, if it is a literal; otherwise die horribly.Answer the data-type URI of this node's literal value, if it is a literal; otherwise die horribly.boolean
Answer the language of this node's literal value, if it is a literal; otherwise die horribly.Answer the lexical form of this node's literal value, if it is a literal; otherwise die horribly.Answer the value of this node's literal value, if it is a literal; otherwise die horribly.get the localname part of this node if it's a URI node, else die horriblygetName()
get a variable nodes name, otherwise die horriblyget the namespace part of this node if it's a URI node, else die horriblyGet the triple for a triple term (embedded triple), otherwise die horriblygetURI()
get the URI of this node if it has one, else die horriblyint
hashCode()
boolean
answer true iff this node is a URI node with the given URIboolean
isBlank()
Answer true iff this node is a blank node [subclasses override]abstract boolean
Answer true iff this node is concrete, ie not variable, ie URI, blank, or literal.boolean
isExt()
Extension node.boolean
Answer true iff this node is a literal node [subclasses override]boolean
Answer true iff this node is an "graph node" (N3 formula).boolean
Answer true iff this node is an "triple node" (RDF-star)boolean
isURI()
Answer true iff this node is a URI node [subclasses override]boolean
Answer true iff this node is a variable node - subclasses overrideboolean
Answer true iff this node accepts the other one as a match.boolean
Test that two nodes are semantically equivalent.toString()
Answer a human-readable representation of this Node.toString
(boolean quoting) Answer a human-readable representation of this Node where literals are quoted according toquoting
but URIs are not compressed.Answer a human-readable representation of the Node, quoting literals and compressing URIs.toString
(PrefixMapping pm, boolean quoting) Answer a human readable representation of this Node, quoting literals if specified, and compressing URIs using the prefix mapping supplied.abstract Object
Visit a Node and dispatch on it to the appropriate method from the NodeVisitorv
.
-
Field Details
-
ANY
The canonical instance of Node_ANY. No other instances are required.
-
-
Method Details
-
visitWith
Visit a Node and dispatch on it to the appropriate method from the NodeVisitorv
.- Parameters:
v
- the visitor to apply to the node- Returns:
- the value returned by the applied method
-
isConcrete
public abstract boolean isConcrete()Answer true iff this node is concrete, ie not variable, ie URI, blank, or literal. -
isLiteral
public boolean isLiteral()Answer true iff this node is a literal node [subclasses override] -
isBlank
public boolean isBlank()Answer true iff this node is a blank node [subclasses override] -
isURI
public boolean isURI()Answer true iff this node is a URI node [subclasses override] -
isVariable
public boolean isVariable()Answer true iff this node is a variable node - subclasses override -
isNodeTriple
public boolean isNodeTriple()Answer true iff this node is an "triple node" (RDF-star) -
isNodeGraph
public boolean isNodeGraph()Answer true iff this node is an "graph node" (N3 formula). This is not related to named graphs. -
isExt
public boolean isExt()Extension node. Typically used in data structures based on triples. -
getBlankNodeId
get the blank node id if the node is blank, otherwise die horribly -
getBlankNodeLabel
Answer the label of this blank node or throw an UnsupportedOperationException if it's not blank. -
getLiteral
Answer the literal value of a literal node, or throw an UnsupportedOperationException if it's not a literal node -
getLiteralValue
Answer the value of this node's literal value, if it is a literal; otherwise die horribly. -
getLiteralLexicalForm
Answer the lexical form of this node's literal value, if it is a literal; otherwise die horribly. -
getLiteralLanguage
Answer the language of this node's literal value, if it is a literal; otherwise die horribly. -
getLiteralDatatypeURI
Answer the data-type URI of this node's literal value, if it is a literal; otherwise die horribly. -
getLiteralDatatype
Answer the RDF datatype object of this node's literal value, if it is a literal; otherwise die horribly. -
getLiteralIsXML
public boolean getLiteralIsXML() -
getIndexingValue
Answer the object which is the index value for this Node. The default is this Node itself; overridden in Node_Literal for literal indexing purposes. Only concrete nodes should use this method. -
getURI
get the URI of this node if it has one, else die horribly -
getNameSpace
get the namespace part of this node if it's a URI node, else die horribly -
getLocalName
get the localname part of this node if it's a URI node, else die horribly -
getName
get a variable nodes name, otherwise die horribly -
getTriple
Get the triple for a triple term (embedded triple), otherwise die horribly -
getGraph
Get the graph for a graph term (N3 formula), otherwise die horribly -
hasURI
answer true iff this node is a URI node with the given URI -
equals
Nodes only equal other Nodes that have equal labels. -
sameValueAs
Test that two nodes are semantically equivalent. In some cases this may be the same as equals, in others equals is stricter. For example, two xsd:int literals with the same value but different lexical form are semantically equivalent but distinguished by the java equals function.Default implementation is to use equals, subclasses should override this.
-
hashCode
public int hashCode() -
matches
Answer true iff this node accepts the other one as a match. The default is an equality test; it is over-ridden in subclasses to provide the appropriate semantics for literals, ANY, and variables.- Parameters:
other
- a node to test for matching- Returns:
- true iff this node accepts the other as a match
-
toString
Answer a human-readable representation of this Node. It will not compress URIs, nor quote literals (because at the moment too many places use toString() for something machine-oriented). -
toString
Answer a human-readable representation of this Node where literals are quoted according toquoting
but URIs are not compressed.
-