Class: BEL::BELRDF::ParameterConverter

Inherits:
Object
  • Object
show all
Includes:
RDFConverter
Defined in:
lib/bel/translator/plugins/rdf2/parameter_converter.rb

Constant Summary collapse

ENCODING_HASH =
{
  :A => BELV2_0.AbundanceConcept,
  :B => BELV2_0.BiologicalProcessConcept,
  :C => BELV2_0.ComplexConcept,
  :E => BELV2_0.ProteinModificationConcept,
  :G => BELV2_0.GeneConcept,
  :L => BELV2_0.LocationConcept,
  :M => BELV2_0.MicroRNAConcept,
  :O => BELV2_0.PathologyConcept,
  :P => BELV2_0.ProteinConcept,
  :R => BELV2_0.RNAConcept,
  :T => BELV2_0.MolecularActivityConcept
}.freeze

Instance Method Summary collapse

Methods included from RDFConverter

#s

Constructor Details

#initialize(namespace_converter) ⇒ ParameterConverter

Returns a new instance of ParameterConverter.



10
11
12
# File 'lib/bel/translator/plugins/rdf2/parameter_converter.rb', line 10

def initialize(namespace_converter)
  @namespace_converter = namespace_converter
end

Instance Method Details

#convert(parameter) ⇒ RDF::Graph

Convert a BELParser::Expression::Model::Parameter to RDF::Graph of RDF statements.

Parameters:

  • parameter (BELParser::Expression::Model::Parameter)

Returns:

  • (RDF::Graph)

    graph of RDF statements representing the parameter



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/bel/translator/plugins/rdf2/parameter_converter.rb', line 18

def convert(parameter)
  namespace_vocab = @namespace_converter.convert(parameter.namespace)
  return nil unless namespace_vocab

  value_s       = parameter.value.to_s
  param_uri     = namespace_vocab[value_s]
  pg            = RDF::Graph.new
  if parameter.encoding
    parameter.encoding.each do |enc|
      concept_type = ENCODING_HASH[enc]
      next unless concept_type
      pg << s(param_uri, RDF.type, concept_type)
    end
  end
  [param_uri, pg]
end