class Bio::KEGG::KGML

KGML (KEGG XML) parser

See www.genome.jp/kegg/xml/ for more details on KGML.

Note for older version users

Incompatible attribute names with KGML tags

<entry>
:map -> :pathway
names()
<subtype>
edge()

Examples

file = File.read("kgml/hsa/hsa00010.xml")
kgml = Bio::KEGG::KGML.new(file)

# <pathway> attributes
puts kgml.name
puts kgml.org
puts kgml.number
puts kgml.title
puts kgml.image
puts kgml.link

kgml.entries.each do |entry|
  # <entry> attributes
  puts entry.id
  puts entry.name
  puts entry.type
  puts entry.link
  puts entry.reaction
  # <graphics> attributes
  entry.graphics.each do |graphics|
    puts graphics.name
    puts graphics.type
    puts graphics.x
    puts graphics.y
    puts graphics.width
    puts graphics.height
    puts graphics.fgcolor
    puts graphics.bgcolor
  end
  # <component> attributes
  puts entry.components
  # methood
  puts entry.names
end

kgml.relations.each do |relation|
  # <relation> attributes
  puts relation.entry1
  puts relation.entry2
  puts relation.type
  # <subtype> attributes
  puts relation.name
  puts relation.value
end

kgml.reactions.each do |reaction|
  # <reaction> attributes
  puts reaction.name
  puts reaction.type
  # <substrate> attributes
  reaction.substrates.each do |substrate|
    puts substrate.id
    puts substrate.name
    # <alt> attributes
    altnames = reaction.alt[entry_id]
    altnames.each do |name|
      puts name
    end
  end
  # <product> attributes
  reaction.products.each do |product|
    puts product.id
    puts product.name
    # <alt> attributes
    altnames = reaction.alt[entry_id]
    altnames.each do |name|
      puts name
    end
  end
end

References