Sha256: b4e27725923daf2a48fdb9571500ff34cd480d9ae6cee9c3f6bd215a2719e6c0
Contents?: true
Size: 1.25 KB
Versions: 1
Compression:
Stored size: 1.25 KB
Contents
require 'jbuilder' Dir[File.dirname(__FILE__) + '/*.rb'].each {|file| require file } module PubAnnWriter module_function def write(collection, options = {}) Jbuilder.new do |json| write_collection(json, collection, options) end.target! end def write_collection(json, collection, options) json.array! collection.documents do |d| write_document(json, d, options) end end def write_document(json, document, options) json.sourceid document.id json.sourcedb options[:sourcedb] || "" json.project options[:project] || "" json.target options[:target] || "" json.text document.all_texts json.denotations document.all_annotations do |a| a.locations.each do |l| json.span do json.begin l.offset.to_i json.end l.offset.to_i + l.length.to_i end json.obj a.infons.map{|k,v| v}.join(",") json.id a.id unless a.id.nil? end end json.relations document.all_relations do |r| json.pred r.infons.map{|k,v| v}.join(",") first = true r.nodes.each do |n| if first json.obj n.refid first = false else json.subj n.refid end end json.id r.id unless r.id.nil? end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
simple_bioc-0.0.24 | lib/simple_bioc/pub_ann_writer.rb |