class OntologyUnited::DSL::Ontology

Constants

DEFAULT_EXTENSION

Attributes

name[R]

Public Class Methods

new(name) click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 18
def initialize(name)
  establish_defaults
  @name = name
end

Public Instance Methods

class(name=nil, as: nil) click to toggle source
Calls superclass method
# File lib/ontology-united/dsl/ontology.rb, line 32
def class(name=nil, as: nil)
  if name.nil?
    super()
  else
    sample = OntologyClass.new(name)
    ontology_class = the_classes.add_or_fetch(sample)
    ontology_class.as(as) if as
    ontology_class
  end
end
Also aliased as: ontology_class
create_tempfile() click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 93
def create_tempfile
  filename = name
  file = Tempfile.new([filename, extension])
  @iri = "file://#{file.path}"
  @file = file
  file.write(self.to_s)
  file.flush
  file.rewind
  file
end
define(*args, &block) click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 45
def define(*args, &block)
  OntologyDSL.define(*args, &block)
end
elements() click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 23
def elements
  the_prefixes + the_imports + the_classes + the_sentences
end
extension() click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 89
def extension
  ".#{DEFAULT_EXTENSION}"
end
file() click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 84
def file
  create_tempfile if @file.nil?
  @file
end
imports(arg, &block) click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 53
def imports(arg, &block)
  if block && arg.is_a?(Ontology)
    ontology = arg
    arg = redefine(ontology, &block)
  end
  the_import = OntologyImport.new(arg)
  the_imports << the_import
  the_import
end
iri() click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 27
def iri
  create_tempfile if @iri.nil?
  @iri
end
ontology_class(name=nil, as: nil)
Alias for: class
prefix(prefix, iri=self, as: nil) click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 63
def prefix(prefix, iri=self, as: nil)
  the_prefix = OntologyPrefix.new(prefix, iri)
  the_prefix.as(as) if as
  the_prefixes << the_prefix
  the_prefix
end
redefine(ontology = self, &block) click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 49
def redefine(ontology = self, &block)
  OntologyDSL.redefine(ontology, &block)
end
sub_class_of(child_ontology_class, parent_ontology_class) click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 70
def sub_class_of(child_ontology_class, parent_ontology_class)
  sentence = OntologySentence.new([
    child_ontology_class,
    'SubClassOf:',
    parent_ontology_class
  ])
  the_sentences << sentence
  sentence
end
to_s(serializer: OntologyUnited::Serializer::DEFAULT.new) click to toggle source
# File lib/ontology-united/dsl/ontology.rb, line 80
def to_s(serializer: OntologyUnited::Serializer::DEFAULT.new)
  serializer.serialize_ontology(self)
end