Class: Bio::PhyloXML::DomainArchitecture

Inherits:
Object
  • Object
show all
Defined in:
lib/bio/db/phyloxml/phyloxml_elements.rb

Overview

Description

This is used describe the domain architecture of a protein. Attribute ‘length’ is the total length of the protein

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeDomainArchitecture

Returns a new instance of DomainArchitecture.



851
852
853
# File 'lib/bio/db/phyloxml/phyloxml_elements.rb', line 851

def initialize
  @domains = []
end

Instance Attribute Details

#domainsObject (readonly)

Array of ProteinDomain objects.



845
846
847
# File 'lib/bio/db/phyloxml/phyloxml_elements.rb', line 845

def domains
  @domains
end

#lengthObject

Integer. Total length of the protein



842
843
844
# File 'lib/bio/db/phyloxml/phyloxml_elements.rb', line 842

def length
  @length
end

Instance Method Details

#to_xmlObject

Converts elements to xml representation. Called by PhyloXML::Writer class.



856
857
858
859
860
861
862
# File 'lib/bio/db/phyloxml/phyloxml_elements.rb', line 856

def to_xml
  xml_node = LibXML::XML::Node.new('domain_architecture')
  PhyloXML::Writer.generate_xml(xml_node, self,[
        [:attr, 'length'],
        [:objarr, 'domain', 'domains']])
  return xml_node
end