From 0b47a8822c765e467900022e89671a4867c0e042 Mon Sep 17 00:00:00 2001 From: Johnathan Date: Tue, 5 Dec 2023 20:09:19 -0700 Subject: [PATCH] Release Version 2.18.4 (#308) * Enforce Specific Versions * Fix Code List Value Remove hardcoded series value. Replace with retrieved value from hDataQuality. * Fix Errors When Undefined * Update .gitignore * Add External Contact Identifiers * Remove puts * Remove puts * Update Version * Update Gemfile.lock --- Gemfile.lock | 2 +- lib/adiwg/mdtranslator/version.rb | 2 +- .../writers/html/sections/html_contact.rb | 32 +++++++++++++++++++ .../writers/html/sections/html_scope.rb | 28 ++++++++++------ .../iso19115_3/classes/class_dataQuality.rb | 9 +++++- 5 files changed, 60 insertions(+), 13 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 3383638a5..901865058 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - adiwg-mdtranslator (2.18.3) + adiwg-mdtranslator (2.18.4) adiwg-mdcodes (= 2.8.4) adiwg-mdjson_schemas (= 2.8.1) builder (~> 3.2) diff --git a/lib/adiwg/mdtranslator/version.rb b/lib/adiwg/mdtranslator/version.rb index 53a3eb3f0..fdd7ba95e 100644 --- a/lib/adiwg/mdtranslator/version.rb +++ b/lib/adiwg/mdtranslator/version.rb @@ -109,7 +109,7 @@ module ADIWG module Mdtranslator # current mdtranslator version - VERSION = "2.18.3" + VERSION = "2.18.4" end end diff --git a/lib/adiwg/mdtranslator/writers/html/sections/html_contact.rb b/lib/adiwg/mdtranslator/writers/html/sections/html_contact.rb index 0698b9d6a..81e73063e 100644 --- a/lib/adiwg/mdtranslator/writers/html/sections/html_contact.rb +++ b/lib/adiwg/mdtranslator/writers/html/sections/html_contact.rb @@ -190,6 +190,38 @@ def writeHtml(hContact) @html.br end + # contact - external identifiers [] + if hContact.key?(:externalIdentifier) && !hContact[:externalIdentifier].empty? + hContact[:externalIdentifier].each do |identifier| + @html.details do + @html.summary("External Identifier", {'class' => 'h5'}) + @html.section(:class => 'block') do + @html.em('Identifier: ') + @html.text!(identifier[:identifier]) + @html.br + + unless identifier[:namespace].nil? + @html.em('Namespace: ') + @html.text!(identifier[:namespace]) + @html.br + end + + unless identifier[:version].nil? + @html.em('Version: ') + @html.text!(identifier[:version]) + @html.br + end + + unless identifier[:description].nil? + @html.em('Description: ') + @html.text!(identifier[:description]) + @html.br + end + end + end + end + end + end end diff --git a/lib/adiwg/mdtranslator/writers/html/sections/html_scope.rb b/lib/adiwg/mdtranslator/writers/html/sections/html_scope.rb index 2036dc475..636815249 100644 --- a/lib/adiwg/mdtranslator/writers/html/sections/html_scope.rb +++ b/lib/adiwg/mdtranslator/writers/html/sections/html_scope.rb @@ -32,21 +32,29 @@ def writeHtml(hScope) end # scope - description [] {scopeDescription} - hScope[:scopeDescriptions].each do |hDescription| - @html.details do - @html.summary('Description', {'class' => 'h5'}) - @html.section(:class => 'block') do - descriptionClass.writeHtml(hDescription) + unless !hScope.key?(:scopeDescriptions) + unless hScope[:scopeDescriptions].empty? + hScope[:scopeDescriptions].each do |hDescription| + @html.details do + @html.summary('Description', {'class' => 'h5'}) + @html.section(:class => 'block') do + descriptionClass.writeHtml(hDescription) + end + end end end end # scope - extent [] {extent} - hScope[:extents].each do |hExtent| - @html.details do - @html.summary('Extent', {'class' => 'h5'}) - @html.section(:class => 'block') do - extentClass.writeHtml(hExtent) + unless !hScope.key?(:extents) + unless hScope[:extents].empty? + hScope[:extents].each do |hExtent| + @html.details do + @html.summary('Extent', {'class' => 'h5'}) + @html.section(:class => 'block') do + extentClass.writeHtml(hExtent) + end + end end end end diff --git a/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_dataQuality.rb b/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_dataQuality.rb index 248ef6eb3..ca5e5cb90 100644 --- a/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_dataQuality.rb +++ b/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_dataQuality.rb @@ -17,12 +17,19 @@ def writeXML(hDataQuality) reportClass = DataQualityReport.new(@xml, @hResponseObj) citationClass = CI_Citation.new(@xml, @hResponseObj) + codeListValue = nil + unless hDataQuality[:scope].empty? + unless hDataQuality[:scope][:scopeCode].nil? + codeListValue = hDataQuality[:scope][:scopeCode] + end + end + @xml.tag!('mdq:DQ_DataQuality') do @xml.tag!('mdq:scope') do @xml.tag!('mcc:MD_Scope') do @xml.tag!('mcc:level') do - @xml.tag!('mcc:MD_ScopeCode', codeList: "http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_ScopeCode", codeListValue: "series") + @xml.tag!('mcc:MD_ScopeCode', codeList: "http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_ScopeCode", codeListValue: codeListValue) end end end