public interface BlankNode extends BlankNodeOrIRI
Blank nodes are disjoint from IRIs and literals. Otherwise, the set of possible blank nodes is arbitrary. RDF makes no reference to any internal structure of blank nodes.Also note that:
Blank node identifiers are local identifiers that are used in some concrete RDF syntaxes or RDF store implementations. They are always locally scoped to the file or RDF store, and are not persistent or portable identifiers for blank nodes. Blank node identifiers are not part of the RDF abstract syntax, but are entirely dependent on the concrete syntax or implementation. The syntactic restrictions on blank node identifiers, if any, therefore also depend on the concrete RDF syntax or implementation. Implementations that handle blank node identifiers in concrete syntaxes need to be careful not to create the same blank node from multiple occurrences of the same blank node identifier except in situations where this is supported by the syntax.A BlankNode SHOULD contain a
UUID
-derived string as part of its
universally unique uniqueReference()
.Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object other)
Check it this BlankNode is equal to another BlankNode.
|
int |
hashCode()
Calculate a hash code for this BlankNode.
|
String |
uniqueReference()
Return a reference for uniquely identifying the blank node.
|
ntriplesString
String uniqueReference()
The reference string MUST universally and uniquely identify this blank
node. That is, different blank nodes created separately in different JVMs
or from different RDF
instances MUST NOT have the same reference
string.
The uniqueReference()
of two BlankNode
instances
MUST be equal if and only if the two blank nodes are equal according to
equals(Object)
.
Clients should not assume any particular structure of the reference
string, however it is recommended that the reference string contain a
UUID-derived string, e.g. as returned from UUID.toString()
.
IMPORTANT: This is not a
blank node identifier nor a serialization/syntax label, and there are
no guarantees that it is a valid identifier in any concrete RDF syntax.
For an N-Triples compatible identifier, use RDFTerm.ntriplesString()
.
BlankNode
boolean equals(Object other)
uniqueReference()
.
Implementations MUST also override hashCode()
so that two equal
Literals produce the same hash code.
equals
in interface RDFTerm
equals
in class Object
other
- Another objectObject.equals(Object)
int hashCode()
The returned hash code MUST be equal to the String.hashCode()
of
the uniqueReference()
.
This method MUST be implemented in conjunction with
equals(Object)
so that two equal BlankNodes produce the same
hash code.
hashCode
in interface RDFTerm
hashCode
in class Object
Object.hashCode()
Copyright © 2015–2018 The Apache Software Foundation. All rights reserved.