require 'set' module OpenEHR module RM module Common module Resource class Authored_Resource attr_reader :is_controled attr_reader :revision_history, :translations attr_accessor :description, :original_language def initialize(original_language, translations, description, revision_history = nil) if original_language == nil raise Exception.new("original language nil") end if translations == nil raise Exception.new("translation empty") end if revision_history == nil is_controled = false else is_controled = true end @original_language = original_language @translations = translations @description = description @revision_history = revision_history end def current_version @revision_history.most_recent_revision end def language_available languages = Set.new if translations != nil languages << translations.keys end languages << original_language.code_string end end class Translation_Details attr_accessor :language, :author, :accreditation attr_accessor :other_details, :terminology_service def initialize(language, author, accreditation, other_details, terminology_service) @language = language @author = author @accreditation = accreditation @other_details = other_details @terminology_service = terminology_service end end end end # end of module Common end # end of module RM end # end of module OpenEHR