module RDF::N3::Refinements

Refinements on core RDF class behavior for RDF::N3.

Public Instance Methods

evaluate(bindings, formulae:, **options) click to toggle source
# File lib/rdf/n3/refinements.rb, line 18
def evaluate(bindings, formulae:, **options)
  self
end
invalid?() click to toggle source

@return [Boolean]

# File lib/rdf/n3/refinements.rb, line 86
def invalid?
  !valid?
end
term?(*args) click to toggle source

@overload term?

Returns `true` if `self` is a {RDF::Term}.

@return [Boolean]

@overload term?(name)

Returns `true` if `self` contains the given RDF subject term.

@param  [RDF::Resource] value
@return [Boolean]
# File lib/rdf/n3/refinements.rb, line 187
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
to_term() click to toggle source

Returns itself.

@return [RDF::Value]

# File lib/rdf/n3/refinements.rb, line 199
def to_term
  statements.map(&:terms)
  self
end
valid?() click to toggle source

Override ‘valid?` terms as subjects and resources as predicates.

@return [Boolean]

# File lib/rdf/n3/refinements.rb, line 77
def valid?
  has_subject?    && subject.term? && subject.valid? &&
  has_predicate?  && predicate.term? && predicate.valid? &&
  has_object?     && object.term? && object.valid? &&
  (has_graph?      ? (graph_name.resource? && graph_name.valid?) : true)
end
validate!() click to toggle source

Default validate! implementation, overridden in concrete classes @return [RDF::Value] ‘self` @raise [ArgumentError] if the value is invalid

# File lib/rdf/n3/refinements.rb, line 94
def validate!
  raise ArgumentError, "#{self.inspect} is not valid" if invalid?
  self
end