Module: RDF::Term
- Includes:
- Comparable, Value
- Included in:
- Literal, Query::Variable, Resource
- Defined in:
- lib/rdf/model/term.rb
Overview
An RDF term.
Terms can be used as subjects, predicates, objects, and graph names of statements.
Instance Method Summary collapse
-
#<=>(other) ⇒ Integer
abstract
Compares
self
toother
for sorting purposes. -
#==(other) ⇒ Integer
abstract
Compares
self
toother
to implement RDFterm-equal. -
#compatible?(other) ⇒ Boolean
Term compatibility according to SPARQL.
-
#eql?(other) ⇒ Integer
abstract
Determins if
self
is the same term asother
. -
#escape(string) ⇒ String
protected
Escape a term using escapes.
- #term?(*args) ⇒ Object
-
#terms ⇒ Array<RDF::Value>
Returns an array including just itself.
-
#to_base ⇒ Sring
Returns the base representation of this term.
-
#to_term ⇒ RDF::Value
Returns itself.
Methods included from Value
#anonymous?, #canonicalize, #canonicalize!, #constant?, #graph?, #inspect, #inspect!, #invalid?, #iri?, #list?, #literal?, #node?, #resource?, #start_with?, #statement?, #to_nquads, #to_ntriples, #to_rdf, #type_error, #uri?, #valid?, #validate!, #variable?
Instance Method Details
#<=>(other) ⇒ Integer
Compares self
to other
for sorting purposes.
Subclasses should override this to provide a more meaningful
implementation than the default which simply performs a string
comparison based on #to_s
.
23 24 25 |
# File 'lib/rdf/model/term.rb', line 23 def <=>(other) self.to_s <=> other.to_s end |
#==(other) ⇒ Integer
Compares self
to other
to implement RDFterm-equal.
Subclasses should override this to provide a more meaningful
implementation than the default which simply performs a string
comparison based on #to_s
.
39 40 41 |
# File 'lib/rdf/model/term.rb', line 39 def ==(other) super end |
#compatible?(other) ⇒ Boolean
Term compatibility according to SPARQL
106 107 108 |
# File 'lib/rdf/model/term.rb', line 106 def compatible?(other) false end |
#eql?(other) ⇒ Integer
Determins if self
is the same term as other
.
Subclasses should override this to provide a more meaningful
implementation than the default which simply performs a string
comparison based on #to_s
.
55 56 57 |
# File 'lib/rdf/model/term.rb', line 55 def eql?(other) super end |
#escape(string) ⇒ String (protected)
Escape a term using escapes. This should be implemented as appropriate for the given type of term.
116 117 118 |
# File 'lib/rdf/model/term.rb', line 116 def escape(string) raise NotImplementedError, "#{self.class}#escape" end |
#term? ⇒ Boolean #term?(name) ⇒ Boolean
69 70 71 72 73 74 75 |
# File 'lib/rdf/model/term.rb', line 69 def term?(*args) case args.length when 0 then true when 1 then false else raise ArgumentError("wrong number of arguments (given #{args.length}, expected 0 or 1)") end end |
#terms ⇒ Array<RDF::Value>
Returns an array including just itself.
89 90 91 |
# File 'lib/rdf/model/term.rb', line 89 def terms [self] end |
#to_base ⇒ Sring
Returns the base representation of this term.
97 98 99 |
# File 'lib/rdf/model/term.rb', line 97 def to_base RDF::NTriples.serialize(self).freeze end |
#to_term ⇒ RDF::Value
Returns itself.
81 82 83 |
# File 'lib/rdf/model/term.rb', line 81 def to_term self end |