Ignore:
Timestamp:
Mar 13, 2010, 12:35:11 AM (14 years ago)
Author:
KOBAYASHI, Shinji
Message:

serializer implementation
Sample ADL was generated by LiU Archetype Editor.
There are some differences in XML forms amongs LiU, Ocean, CKM.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ruby/trunk/lib/open_ehr/serializer.rb

    r406 r407  
    44module OpenEHR
    55  module Serializer
     6    NL = "\r\n"
     7    INDENT = '    '
     8
    69    class BaseSerializer
    710      def initialize(archetype)
     
    1619    class ADLSerializer < BaseSerializer
    1720      def header
    18         return <<HERE
    19 archetype (adl_version = #{@archetype.adl_version})
    20 \t#{@archetype.archetype_id.value}
    21 
    22 concept
    23 \t[#{@archetype.concept}]
    24 HERE
     21        hd = 'archetype'
     22        unless @archetype.adl_version.nil?
     23          hd << " (adl_version = #{@archetype.adl_version})"
     24        end
     25        hd << NL+INDENT + "#{@archetype.archetype_id.value}"+NL+NL
     26        hd << 'concept'+NL+ INDENT+"[#{@archetype.concept}]"+NL
     27        hd << NL+'language'+NL+INDENT+'original_language = <['+
     28          @archetype.original_language.terminology_id.value+'::'+
     29          @archetype.original_language.code_string+']>'+NL
     30        return hd
    2531      end
    2632
     
    5258        end
    5359        xml.concept @archetype.concept
     60        xml.original_language do
     61          xml.code_string @archetype.original_language.code_string
     62          xml.terminology_id do
     63            xml.value @archetype.original_language.terminology_id.value
     64          end
     65        end
    5466        return header
    5567      end
Note: See TracChangeset for help on using the changeset viewer.