lib/adiwg/mdtranslator/writers/html/sections/html_dataDictionary.rb in adiwg-mdtranslator-1.4.0 vs lib/adiwg/mdtranslator/writers/html/sections/html_dataDictionary.rb in adiwg-mdtranslator-2.0.0rc2

- old
+ new

@@ -1,111 +1,117 @@ # HTML writer # data dictionary # History: +# Stan Smith 2017-04-05 refactored for mdTranslator 2.0 +# Stan Smith 2015-07-16 refactored to remove global namespace $HtmlNS # Stan Smith 2015-03-26 original script -# Stan Smith 2015-07-16 refactored to remove global namespace $HtmlNS require_relative 'html_citation' +require_relative 'html_locale' +require_relative 'html_responsibility' require_relative 'html_domain' require_relative 'html_entity' module ADIWG - module Mdtranslator - module Writers - module Html + module Mdtranslator + module Writers + module Html - class MdHtmlDataDictionary - def initialize(html) - @html = html - end + class Html_DataDictionary - def writeHtml(hDictionary) + def initialize(html) + @html = html + end - # classes used - htmlCitation = MdHtmlCitation.new(@html) - htmlDomain = MdHtmlDictionaryDomain.new(@html) - htmlEntity = MdHtmlDictionaryEntity.new(@html) + def writeHtml(hDictionary) - hDictId = hDictionary[:dictionaryInfo] - aDictDom = hDictionary[:domains] - aDictEnt = hDictionary[:entities] + # classes used + citationClass = Html_Citation.new(@html) + localeClass = Html_Locale.new(@html) + responsibilityClass = Html_Responsibility.new(@html) + domainClass = Html_Domain.new(@html) + entityClass = Html_Entity.new(@html) - @html.details do - @html.summary('Dictionary Identification', {'class'=>'h4'}) - @html.section(:class=>'block') do + # dictionary - subjects [] + hDictionary[:subjects].each do |subject| + @html.em('Subject: ') + @html.text!(subject) + @html.br + end - # dictionary identification - resource type - s = hDictId[:dictResourceType] - if !s.nil? - @html.em('Resource type: ') - @html.text!(s) - @html.br - end + # dictionary - domains [] {domain} + hDictionary[:domains].each do |hDomain| + @html.details do + @html.summary('Domain: '+hDomain[:domainCode], {'class' => 'h5'}) + @html.section(:class => 'block') do + domainClass.writeHtml(hDomain) + end + end + end - # dictionary identification - description - s = hDictId[:dictDescription] - if !s.nil? - @html.em('Description: ') - @html.text!(s) - @html.br - end + # dictionary - entities [] {entity} + hDictionary[:entities].each do |hEntity| + @html.details do + @html.summary('Entity: '+hEntity[:entityCode], {'class' => 'h5'}) + @html.section(:class => 'block') do + entityClass.writeHtml(hEntity) + end + end + end - # dictionary identification - language - s = hDictId[:dictLanguage] - if !s.nil? - @html.em('Language: ') - @html.text!(s) - @html.br - end - - # dictionary identification - citation - @html.em('Citation: ') - @html.section(:class=>'block') do - htmlCitation.writeHtml(hDictId[:dictCitation]) - end - - end + # dictionary - citation {citation} + unless hDictionary[:citation].empty? + @html.details do + @html.summary('Citation', {'class' => 'h5'}) + @html.section(:class => 'block') do + citationClass.writeHtml(hDictionary[:citation]) end + end + end - # data dictionary - resource domains - unless aDictDom.empty? - @html.details do - @html.summary('Resource Domains', {'class'=>'h4'}) - aDictDom.each do |hDomain| - @html.section(:class=>'block') do - @html.details do - @html.summary(hDomain[:domainCode], {'class'=>'h5'}) - @html.section(:class=>'block') do - htmlDomain.writeHtml(hDomain) - end - end - end - end - end + # dictionary - locales {locale} + hDictionary[:locales].each do |hLocale| + @html.details do + @html.summary('Locale', {'class' => 'h5'}) + @html.section(:class => 'block') do + localeClass.writeHtml(hLocale) end + end + end - # data dictionary - resource schema - unless aDictEnt.empty? - @html.details do - @html.summary('Resource Entities', {'class'=>'h4'}) - aDictEnt.each do |hEntity| - @html.section(:class=>'block') do - @html.details do - @html.summary(hEntity[:entityCode], {'class'=>'h5'}) - @html.section(:class=>'block') do - htmlEntity.writeHtml(hEntity) - end - end - end - end - end + # dictionary - responsible party {responsibility} + unless hDictionary[:responsibleParty].empty? + @html.details do + @html.summary(hDictionary[:responsibleParty][:roleName], {'class' => 'h5'}) + @html.section(:class => 'block') do + responsibilityClass.writeHtml(hDictionary[:responsibleParty]) end + end + end - end # writeHtml + # dictionary - recommended uses [] + hDictionary[:recommendedUses].each do |use| + @html.em('Recommended Use: ') + @html.text!(use) + @html.br + end - end # class + # dictionary - dictionary format + unless hDictionary[:dictionaryFormat].nil? + @html.em('Dictionary Format: ') + @html.text!(hDictionary[:dictionaryFormat]) + @html.br + end - end - end - end + # dictionary - included with dataset {Boolean} + @html.em('Dictionary Included with Dataset?: ') + @html.text!(hDictionary[:includedWithDataset].to_s) + @html.br + + end # writeHtml + end # Html_DataDictionary + + end + end + end end