Class: ProtXMLWriter

Inherits:
Object
  • Object
show all
Defined in:
lib/protk/protxml_writer.rb

Constant Summary collapse

PROTXML_NS_PREFIX =
"protxml"
PROTXML_NS =
"http://regis-web.systemsbiology.net/protXML"

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeProtXMLWriter

Returns a new instance of ProtXMLWriter.



12
13
14
15
16
17
18
19
20
21
# File 'lib/protk/protxml_writer.rb', line 12

def initialize
	template_path="#{File.dirname(__FILE__)}/data/template_prot.xml"
	template_parser=XML::Parser.file(template_path)#,:options => XML::Parser::Options::NOBLANKS)
	@template_doc=template_parser.parse
	@protein_summary_node=@template_doc.root
	# @protein_summary_node.space_preserve=true
	@protein_summary_node.content=""
	puts @template_doc

end

Instance Attribute Details

#protein_summary_nodeObject (readonly)

Returns the value of attribute protein_summary_node.



9
10
11
# File 'lib/protk/protxml_writer.rb', line 9

def protein_summary_node
  @protein_summary_node
end

#template_docObject (readonly)

Returns the value of attribute template_doc.



8
9
10
# File 'lib/protk/protxml_writer.rb', line 8

def template_doc
  @template_doc
end

Instance Method Details

#append_dataset_derivationObject



33
34
35
36
37
# File 'lib/protk/protxml_writer.rb', line 33

def append_dataset_derivation()
	ddnode = XML::Node.new('dataset_derivation')
	ddnode["generation_no"]="0"
	@protein_summary_node << ddnode
end

#append_header(header_node) ⇒ Object



23
24
25
26
# File 'lib/protk/protxml_writer.rb', line 23

def append_header(header_node)
	# require 'byebug';byebug
	@protein_summary_node << header_node.as_protxml
end

#append_protein_group(pg_node) ⇒ Object



28
29
30
31
# File 'lib/protk/protxml_writer.rb', line 28

def append_protein_group(pg_node)
	# require 'byebug';byebug
	@protein_summary_node << pg_node
end

#save(file_path) ⇒ Object



39
40
41
42
43
44
45
# File 'lib/protk/protxml_writer.rb', line 39

def save(file_path)
	# puts XML.indent_tree_output
	# puts "|#{XML.default_tree_indent_string}|"
	XML.indent_tree_output = true
	# puts @template_doc.to_s
	@template_doc.save(file_path,:indent=>true,:encoding => XML::Encoding::UTF_8)
end