adiwg-mdtranslator 2.20.0.pre.beta.5 → 2.21.0.pre.beta.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +1 -1
  3. data/Gemfile.lock +3 -3
  4. data/README.md +0 -21
  5. data/Rakefile +0 -1
  6. data/adiwg-mdtranslator.gemspec +1 -1
  7. data/lib/adiwg/mdtranslator/internal/internal_metadata_obj.rb +45 -7
  8. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_acquisition.rb +133 -0
  9. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_environment.rb +47 -0
  10. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_event.rb +88 -0
  11. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_instrument.rb +73 -0
  12. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_instrumentationEvent.rb +77 -0
  13. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_instrumentationEventList.rb +62 -0
  14. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_metadata.rb +11 -0
  15. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_objective.rb +104 -0
  16. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_operation.rb +119 -0
  17. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_pass.rb +53 -0
  18. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_plan.rb +80 -0
  19. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_platform.rb +87 -0
  20. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_requestedDate.rb +51 -0
  21. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_requirement.rb +98 -0
  22. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_revision.rb +50 -0
  23. data/lib/adiwg/mdtranslator/version.rb +1 -1
  24. data/lib/adiwg/mdtranslator/writers/html/sections/html_acquisition.rb +199 -0
  25. data/lib/adiwg/mdtranslator/writers/html/sections/html_body.rb +19 -0
  26. data/lib/adiwg/mdtranslator/writers/html/sections/html_environment.rb +58 -0
  27. data/lib/adiwg/mdtranslator/writers/html/sections/html_event.rb +121 -0
  28. data/lib/adiwg/mdtranslator/writers/html/sections/html_instrument.rb +98 -0
  29. data/lib/adiwg/mdtranslator/writers/html/sections/html_instrumentationEvent.rb +84 -0
  30. data/lib/adiwg/mdtranslator/writers/html/sections/html_instrumentationEventList.rb +90 -0
  31. data/lib/adiwg/mdtranslator/writers/html/sections/html_objective.rb +155 -0
  32. data/lib/adiwg/mdtranslator/writers/html/sections/html_operation.rb +178 -0
  33. data/lib/adiwg/mdtranslator/writers/html/sections/html_pass.rb +72 -0
  34. data/lib/adiwg/mdtranslator/writers/html/sections/html_plan.rb +93 -0
  35. data/lib/adiwg/mdtranslator/writers/html/sections/html_platform.rb +117 -0
  36. data/lib/adiwg/mdtranslator/writers/html/sections/html_requestedDate.rb +33 -0
  37. data/lib/adiwg/mdtranslator/writers/html/sections/html_requirement.rb +139 -0
  38. data/lib/adiwg/mdtranslator/writers/html/sections/html_revision.rb +55 -0
  39. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_acquisition.rb +42 -0
  40. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_environment.rb +28 -0
  41. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_event.rb +37 -0
  42. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_instrument.rb +35 -0
  43. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_instrumentationEvent.rb +30 -0
  44. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_instrumentationEventList.rb +32 -0
  45. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_metadata.rb +2 -0
  46. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_objective.rb +37 -0
  47. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_operation.rb +34 -0
  48. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_pass.rb +30 -0
  49. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_plan.rb +32 -0
  50. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_platform.rb +35 -0
  51. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_requestedDate.rb +26 -0
  52. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_requirement.rb +36 -0
  53. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_revision.rb +28 -0
  54. data/lib/adiwg/mdtranslator_cli.rb +1 -1
  55. metadata +45 -36
  56. data/DCAT-US.md +0 -67
  57. data/lib/adiwg/mdtranslator/writers/dcat_us/dcat_us_writer.rb +0 -98
  58. data/lib/adiwg/mdtranslator/writers/dcat_us/readme.md +0 -10
  59. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_access_level.rb +0 -55
  60. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_access_url.rb +0 -17
  61. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_accrualPeriodicity.rb +0 -45
  62. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_bureau_code.rb +0 -33
  63. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_contact_point.rb +0 -29
  64. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_dcat_us.rb +0 -104
  65. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_described_by.rb +0 -29
  66. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_described_by_type.rb +0 -33
  67. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_description.rb +0 -19
  68. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_distribution.rb +0 -59
  69. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_download_url.rb +0 -17
  70. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_identifier.rb +0 -29
  71. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_is_part_of.rb +0 -27
  72. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_issued.rb +0 -19
  73. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_keyword.rb +0 -19
  74. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_landing_page.rb +0 -27
  75. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_language.rb +0 -23
  76. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_license.rb +0 -18
  77. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_media_type.rb +0 -17
  78. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_modified.rb +0 -29
  79. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_primaryITInvestmentUII.rb +0 -19
  80. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_program_code.rb +0 -33
  81. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_publisher.rb +0 -74
  82. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_references.rb +0 -50
  83. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_rights.rb +0 -32
  84. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_spatial.rb +0 -32
  85. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_system_of_records.rb +0 -28
  86. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_temporal.rb +0 -40
  87. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_theme.rb +0 -28
  88. data/lib/adiwg/mdtranslator/writers/dcat_us/version.rb +0 -14
@@ -0,0 +1,93 @@
1
+ require_relative 'html_citation'
2
+ require_relative 'html_operation'
3
+ require_relative 'html_requirement'
4
+
5
+ module ADIWG
6
+ module Mdtranslator
7
+ module Writers
8
+ module Html
9
+ class Html_Plan
10
+ def initialize(html)
11
+ @html = html
12
+ end
13
+
14
+ def writeHtml(hPlan)
15
+ citationClass = Html_Citation.new(@html)
16
+ operationClass = Html_Operation.new(@html)
17
+ requirementClass = Html_Requirement.new(@html)
18
+ planClass = Html_Plan.new(@html)
19
+
20
+ # planId
21
+ unless hPlan[:planId].empty?
22
+ @html.em('Plan ID: ')
23
+ @html.text!(hPlan[:planId])
24
+ @html.br
25
+ end
26
+
27
+ # planType
28
+ unless hPlan[:planType].empty?
29
+ @html.em('Type: ')
30
+ @html.text!(hPlan[:planType])
31
+ @html.br
32
+ end
33
+
34
+ # status
35
+ unless hPlan[:status].empty?
36
+ @html.em('Status: ')
37
+ @html.text!(hPlan[:status])
38
+ @html.br
39
+ end
40
+
41
+ # citation
42
+ unless hPlan[:citation].empty?
43
+ @html.section(:class => 'block') do
44
+ @html.details do
45
+ @html.summary('Citation', {'class' => 'h4'})
46
+ @html.section(:class => 'block') do
47
+ citationClass.writeHtml(hPlan[:citation])
48
+ end
49
+ end
50
+ end
51
+ end
52
+
53
+ # planOperation
54
+ unless hPlan[:planOperations].empty?
55
+ @html.section(:class => 'block') do
56
+ @html.details do
57
+ @html.summary('Operations', {'class' => 'h4'})
58
+ hPlan[:planOperations].each do |operation|
59
+ @html.section(:class => 'block') do
60
+ @html.details do
61
+ @html.summary('Operation', {'class' => 'h5'})
62
+ operationClass.writeHtml(operation)
63
+ end
64
+ end
65
+ end
66
+ end
67
+ end
68
+ end
69
+
70
+ # satisfiedRequirement
71
+ unless hPlan[:satisfiedRequirements].empty?
72
+ @html.section(:class => 'block') do
73
+ @html.details do
74
+ @html.summary('Requirements', {'class' => 'h4'})
75
+ hPlan[:satisfiedRequirements].each do |requirement|
76
+ @html.section(:class => 'block') do
77
+ @html.details do
78
+ @html.summary('Requirement', {'class' => 'h5'})
79
+ requirementClass.writeHtml(requirement)
80
+ end
81
+ end
82
+ end
83
+ end
84
+ end
85
+ end
86
+
87
+ end # writeHtml
88
+
89
+ end # Html_Plan
90
+ end
91
+ end
92
+ end
93
+ end
@@ -0,0 +1,117 @@
1
+ require_relative 'html_identifier'
2
+ require_relative 'html_citation'
3
+ require_relative 'html_responsibility'
4
+ require_relative 'html_instrument'
5
+ require_relative 'html_instrumentationEventList'
6
+
7
+ module ADIWG
8
+ module Mdtranslator
9
+ module Writers
10
+ module Html
11
+ class Html_Platform
12
+ def initialize(html)
13
+ @html = html
14
+ end
15
+
16
+ def writeHtml(hPlatform)
17
+ identifierClass = Html_Identifier.new(@html)
18
+ citationClass = Html_Citation.new(@html)
19
+ responsibilityClass = Html_Responsibility.new(@html)
20
+ instrumentClass = Html_Instrument.new(@html)
21
+ instrumentationEventListClass = Html_InstrumentationEventList.new(@html)
22
+
23
+ # platformId
24
+ unless hPlatform[:platformId].nil?
25
+ @html.em('Platform ID: ')
26
+ @html.text!(hPlatform[:platformId])
27
+ @html.br
28
+ end
29
+
30
+ # citation
31
+ unless hPlatform[:citation].empty?
32
+ @html.section(:class => 'block') do
33
+ @html.details do
34
+ @html.summary('Citation', {'class' => 'h4'})
35
+ @html.section(:class => 'block') do
36
+ citationClass.writeHtml(hPlatform[:citation])
37
+ end
38
+ end
39
+ end
40
+ end
41
+
42
+ # identifier
43
+ unless hPlatform[:identifier].empty?
44
+ @html.section(:class => 'block') do
45
+ @html.details do
46
+ @html.summary('Identifier', {'class' => 'h4'})
47
+ @html.section(:class => 'block') do
48
+ identifierClass.writeHtml(hPlatform[:identifier])
49
+ end
50
+ end
51
+ end
52
+ end
53
+
54
+ # description
55
+ unless hPlatform[:description].nil?
56
+ @html.em('Description: ')
57
+ @html.text!(hPlatform[:description])
58
+ @html.br
59
+ end
60
+
61
+ # sponsor
62
+ unless hPlatform[:sponsors].empty?
63
+ @html.section(:class => 'block') do
64
+ @html.details do
65
+ @html.summary('Sponsors', {'class' => 'h4'})
66
+ hPlatform[:sponsors].each do |responsibility|
67
+ @html.section(:class => 'block') do
68
+ @html.details do
69
+ @html.summary('Responsibility', {'class' => 'h5'})
70
+ responsibilityClass.writeHtml(responsibility)
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
77
+
78
+ # instrument
79
+ unless hPlatform[:instruments].empty?
80
+ @html.section(:class => 'block') do
81
+ @html.details do
82
+ @html.summary('Instruments', {'class' => 'h4'})
83
+ hPlatform[:instruments].each do |instrument|
84
+ @html.section(:class => 'block') do
85
+ @html.details do
86
+ @html.summary('Instrument', {'class' => 'h5'})
87
+ instrumentClass.writeHtml(instrument)
88
+ end
89
+ end
90
+ end
91
+ end
92
+ end
93
+ end
94
+
95
+ # history
96
+ unless hPlatform[:history].empty?
97
+ @html.section(:class => 'block') do
98
+ @html.details do
99
+ @html.summary('History', {'class' => 'h4'})
100
+ hPlatform[:history].each do |instrumentationEventList|
101
+ @html.section(:class => 'block') do
102
+ @html.details do
103
+ @html.summary('Instrumentation Event List', {'class' => 'h5'})
104
+ instrumentationEventListClass.writeHtml(instrumentationEventList)
105
+ end
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end
111
+
112
+ end
113
+ end
114
+ end
115
+ end
116
+ end
117
+ end
@@ -0,0 +1,33 @@
1
+ require_relative 'html_datetime'
2
+
3
+ module ADIWG
4
+ module Mdtranslator
5
+ module Writers
6
+ module Html
7
+ class Html_RequestedDate
8
+ def initialize(html)
9
+ @html = html
10
+ end
11
+
12
+ def writeHtml(hRequestedDate)
13
+ datetimeClass = Html_Datetime.new(@html)
14
+
15
+ # requestedDateOfCollection
16
+ unless hRequestedDate[:requestedDateOfCollection].empty?
17
+ @html.em('Requested Date of Collection: ')
18
+ @html.text!(hRequestedDate[:requestedDateOfCollection][:dateTime].to_s)
19
+ @html.br
20
+ end
21
+
22
+ # latestAcceptableDate
23
+ unless hRequestedDate[:latestAcceptableDate].empty?
24
+ @html.em('Latest Acceptable Date: ')
25
+ @html.text!(hRequestedDate[:latestAcceptableDate][:dateTime].to_s)
26
+ end
27
+
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,139 @@
1
+ require_relative 'html_citation'
2
+ require_relative 'html_identifier'
3
+ require_relative 'html_responsibility'
4
+ require_relative 'html_requestedDate'
5
+ require_relative 'html_date'
6
+ require_relative 'html_plan'
7
+
8
+ module ADIWG
9
+ module Mdtranslator
10
+ module Writers
11
+ module Html
12
+ class Html_Requirement
13
+ def initialize(html)
14
+ @html = html
15
+ end
16
+
17
+ def writeHtml(hRequirement)
18
+ citationClass = Html_Citation.new(@html)
19
+ identifierClass = Html_Identifier.new(@html)
20
+ responsibilityClass = Html_Responsibility.new(@html)
21
+ requestedDateClass = Html_RequestedDate.new(@html)
22
+ dateClass = Html_Date.new(@html)
23
+ planClass = Html_Plan.new(@html)
24
+
25
+ # requirementId
26
+ unless hRequirement[:requirementId].nil?
27
+ @html.em('Requirement ID: ')
28
+ @html.text!(hRequirement[:requirementId])
29
+ @html.br
30
+ end
31
+
32
+ # citation
33
+ unless hRequirement[:citation].empty?
34
+ @html.section(:class => 'block') do
35
+ @html.details do
36
+ @html.summary('Citation', {'class' => 'h4'})
37
+ @html.section(:class => 'block') do
38
+ citationClass.writeHtml(hRequirement[:citation])
39
+ end
40
+ end
41
+ end
42
+ end
43
+
44
+ # identifier
45
+ unless hRequirement[:identifier].empty?
46
+ @html.section(:class => 'block') do
47
+ @html.details do
48
+ @html.summary('Identifier ', {'class' => 'h4'})
49
+ @html.section(:class => 'block') do
50
+ identifierClass.writeHtml(hRequirement[:identifier])
51
+ end
52
+ end
53
+ end
54
+ end
55
+
56
+ # requestor
57
+ unless hRequirement[:requestors].empty?
58
+ @html.section(:class => 'block') do
59
+ @html.details do
60
+ @html.summary('Requestors', {'class' => 'h4'})
61
+ hRequirement[:requestors].each do |requestor|
62
+ @html.section(:class => 'block') do
63
+ @html.details do
64
+ @html.summary('Requestor', {'class' => 'h5'})
65
+ operationClass.writeHtml(requestor)
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
72
+
73
+ # recipient
74
+ unless hRequirement[:recipients].empty?
75
+ @html.section(:class => 'block') do
76
+ @html.details do
77
+ @html.summary('Recipients', {'class' => 'h4'})
78
+ hRequirement[:recipients].each do |recipient|
79
+ @html.section(:class => 'block') do
80
+ @html.details do
81
+ @html.summary('Recipient', {'class' => 'h5'})
82
+ operationClass.writeHtml(recipient)
83
+ end
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
89
+
90
+ # priority
91
+ unless hRequirement[:priority].nil?
92
+ @html.em('Priority: ')
93
+ @html.text!(hRequirement[:priority])
94
+ @html.br
95
+ end
96
+
97
+ # requested date
98
+ unless hRequirement[:requestedDate].empty?
99
+ @html.section(:class => 'block') do
100
+ @html.details do
101
+ @html.summary('Requested Date ', {'class' => 'h4'})
102
+ @html.section(:class => 'block') do
103
+ requestedDateClass.writeHtml(hRequirement[:requestedDate])
104
+ end
105
+ end
106
+ end
107
+ end
108
+
109
+ # expiry date
110
+ unless hRequirement[:expiryDate].nil?
111
+ @html.em('Expiry Date: ')
112
+ @html.text!(hRequirement[:expiryDate])
113
+ @html.br
114
+ end
115
+
116
+ # satisfied plan
117
+ unless hRequirement[:satisfiedPlans].empty?
118
+ @html.section(:class => 'block') do
119
+ @html.details do
120
+ @html.summary('Satisfied Plans', {'class' => 'h4'})
121
+ hRequirement[:satisfiedPlans].each do |plan|
122
+ @html.section(:class => 'block') do
123
+ @html.details do
124
+ @html.summary('Plan', {'class' => 'h5'})
125
+ planClass.writeHtml(plan)
126
+ end
127
+ end
128
+ end
129
+ end
130
+ end
131
+ end
132
+
133
+ end # writeHtml
134
+ end # Html_Requirement
135
+
136
+ end
137
+ end
138
+ end
139
+ end
@@ -0,0 +1,55 @@
1
+ require_relative 'html_responsibility'
2
+ require_relative 'html_date'
3
+
4
+ module ADIWG
5
+ module Mdtranslator
6
+ module Writers
7
+ module Html
8
+ class Html_Revision
9
+ def initialize(html)
10
+ @html = html
11
+ end
12
+
13
+ def writeHtml(hRevision)
14
+ responsibilityClass = Html_Responsibility.new(@html)
15
+ dateClass = Html_Date.new(@html)
16
+
17
+ # description
18
+ unless hRevision[:description].nil?
19
+ @html.em('Description: ')
20
+ @html.text!(hRevision[:description])
21
+ @html.br
22
+ end
23
+
24
+ # responsibleParty
25
+ unless hRevision[:responsibleParty].empty?
26
+ @html.section(:class => 'block') do
27
+ @html.details do
28
+ @html.summary('Responsible Party', {'class' => 'h4'})
29
+ @html.section(:class => 'block') do
30
+ responsibilityClass.writeHtml(hRevision[:responsibleParty])
31
+ end
32
+ end
33
+ end
34
+ end
35
+
36
+ # dateInfo
37
+ unless hRevision[:dateInfo].empty?
38
+ @html.section(:class => 'block') do
39
+ @html.details do
40
+ @html.summary('Date Info', {'class' => 'h4'})
41
+ hRevision[:dateInfo].each do |date|
42
+ @html.em('Datetime: ')
43
+ @html.text!(date[:dateTime].to_s)
44
+ @html.br
45
+ end
46
+ end
47
+ end
48
+ end
49
+
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,42 @@
1
+ require 'jbuilder'
2
+ require_relative 'mdJson_scope'
3
+ require_relative 'mdJson_plan'
4
+ require_relative 'mdJson_requirement'
5
+ require_relative 'mdJson_objective'
6
+ require_relative 'mdJson_platform'
7
+ require_relative 'mdJson_instrument'
8
+ require_relative 'mdJson_operation'
9
+ require_relative 'mdJson_event'
10
+ require_relative 'mdJson_pass'
11
+ require_relative 'mdJson_environment'
12
+
13
+ module ADIWG
14
+ module Mdtranslator
15
+ module Writers
16
+ module MdJson
17
+
18
+ module Acquisition
19
+
20
+ @Namespace = ADIWG::Mdtranslator::Writers::MdJson
21
+
22
+ def self.build(hAcquisition)
23
+
24
+ Jbuilder.new do |json|
25
+ json.scope Scope.build(hAcquisition[:scope])
26
+ json.plan @Namespace.json_map(hAcquisition[:plans], Plan)
27
+ json.requirement @Namespace.json_map(hAcquisition[:requirements], Requirement)
28
+ json.objective @Namespace.json_map(hAcquisition[:objectives], Objective)
29
+ json.platform @Namespace.json_map(hAcquisition[:platforms], Platform)
30
+ json.instrument @Namespace.json_map(hAcquisition[:instruments], Instrument)
31
+ json.operation @Namespace.json_map(hAcquisition[:operations], Operation)
32
+ json.event @Namespace.json_map(hAcquisition[:events], Event)
33
+ json.pass @Namespace.json_map(hAcquisition[:passes], Pass)
34
+ json.environment Environment.build(hAcquisition[:environment])
35
+ end
36
+
37
+ end
38
+ end # Acquisition
39
+ end # Event
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,28 @@
1
+ require 'jbuilder'
2
+
3
+ module ADIWG
4
+ module Mdtranslator
5
+ module Writers
6
+ module MdJson
7
+
8
+ module Environment
9
+
10
+ @Namespace = ADIWG::Mdtranslator::Writers::MdJson
11
+
12
+ def self.build(hEnvironment)
13
+
14
+ Jbuilder.new do |json|
15
+ json.averageAirTemperature hEnvironment[:averageAirTemperature] unless hEnvironment[:averageAirTemperature].nil?
16
+ json.maxRelativeHumidity hEnvironment[:maxRelativeHumidity] unless hEnvironment[:maxRelativeHumidity].nil?
17
+ json.maxAltitude hEnvironment[:maxAltitude] unless hEnvironment[:maxAltitude].nil?
18
+ json.meteorologicalConditions hEnvironment[:meteorologicalConditions] unless hEnvironment[:meteorologicalConditions].nil?
19
+ json.solarAzimuth hEnvironment[:solarAzimuth] unless hEnvironment[:solarAzimuth].nil?
20
+ json.solarElevation hEnvironment[:solarElevation] unless hEnvironment[:solarElevation].nil?
21
+ end
22
+
23
+ end
24
+ end # Environment
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,37 @@
1
+ require 'jbuilder'
2
+ require_relative 'mdJson_identifier'
3
+ require_relative 'mdJson_dateTime'
4
+ require_relative 'mdJson_objective'
5
+ require_relative 'mdJson_pass'
6
+ require_relative 'mdJson_instrument'
7
+
8
+
9
+ module ADIWG
10
+ module Mdtranslator
11
+ module Writers
12
+ module MdJson
13
+
14
+ module Event
15
+
16
+ @Namespace = ADIWG::Mdtranslator::Writers::MdJson
17
+
18
+ def self.build(hEvent)
19
+
20
+ Jbuilder.new do |json|
21
+ json.eventId hEvent[:eventId]
22
+ json.identifier Identifier.build(hEvent[:identifier])
23
+ json.trigger hEvent[:trigger]
24
+ json.context hEvent[:context]
25
+ json.sequence hEvent[:sequence]
26
+ json.time DateTime.build(hEvent[:time])
27
+ json.expectedObjective @Namespace.json_map(hEvent[:expectedObjectives], Objective)
28
+ json.relatedPass Pass.build(hEvent[:relatedPass])
29
+ json.relatedSensor @Namespace.json_map(hEvent[:relatedSensors], Instrument)
30
+ end
31
+
32
+ end
33
+ end # Event
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,35 @@
1
+ require 'jbuilder'
2
+ require_relative 'mdJson_citation'
3
+ require_relative 'mdJson_identifier'
4
+ require_relative 'mdJson_platform'
5
+ require_relative 'mdJson_instrumentationEventList'
6
+
7
+ module ADIWG
8
+ module Mdtranslator
9
+ module Writers
10
+ module MdJson
11
+
12
+ module Instrument
13
+
14
+ @Namespace = ADIWG::Mdtranslator::Writers::MdJson
15
+
16
+ def self.build(hInstrument)
17
+
18
+ Jbuilder.new do |json|
19
+ json.instrumentId hInstrument[:instrumentId]
20
+ json.citation Citation.build(hInstrument[:citation]) unless hInstrument[:citation].empty?
21
+ json.identifier Identifier.build(hInstrument[:identifier])
22
+ json.instrumentType hInstrument[:instrumentType]
23
+ json.description hInstrument[:description] unless hInstrument[:description].nil?
24
+ json.mountedOn Platform.build(hInstrument[:mountedOn]) unless hInstrument[:mountedOn].empty?
25
+ json.history @Namespace.json_map(hInstrument[:histories], InstrumentationEventList) unless hInstrument[:histories].empty?
26
+ json.hostId Identifier.build(hInstrument[:hostId]) unless hInstrument[:hostId].empty?
27
+ end
28
+
29
+ end
30
+ end # Instrument
31
+
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,30 @@
1
+ require 'jbuilder'
2
+ require_relative 'mdJson_citation'
3
+ require_relative 'mdJson_revision'
4
+
5
+ module ADIWG
6
+ module Mdtranslator
7
+ module Writers
8
+ module MdJson
9
+
10
+ module InstrumentationEvent
11
+
12
+ @Namespace = ADIWG::Mdtranslator::Writers::MdJson
13
+
14
+ def self.build(hInstrumentationEvent)
15
+ # "required": ["description","eventType"],
16
+ Jbuilder.new do |json|
17
+ json.citation @Namespace.json_map(hInstrumentationEvent[:citations], Citation) unless hInstrumentationEvent[:citations].empty?
18
+ json.description hInstrumentationEvent[:description]
19
+ json.extent hInstrumentationEvent[:extent] unless hInstrumentationEvent[:extent].empty?
20
+ json.eventType hInstrumentationEvent[:eventType]
21
+ json.revisionHistory @Namespace.json_map(hInstrumentationEvent[:revisionHistories], Revision) unless hInstrumentationEvent[:revisionHistories].empty?
22
+ end
23
+
24
+ end
25
+ end # InstrumentationEvent
26
+
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,32 @@
1
+ require 'jbuilder'
2
+ require_relative 'mdJson_citation'
3
+ require_relative 'mdJson_locale'
4
+ require_relative 'mdJson_constraint'
5
+ require_relative 'mdJson_instrumentationEvent'
6
+
7
+ module ADIWG
8
+ module Mdtranslator
9
+ module Writers
10
+ module MdJson
11
+
12
+ module InstrumentationEventList
13
+
14
+ @Namespace = ADIWG::Mdtranslator::Writers::MdJson
15
+
16
+ def self.build(hInstrumentationEventList)
17
+
18
+ Jbuilder.new do |json|
19
+ json.citation Citation.build(hInstrumentationEventList[:citation]) unless hInstrumentationEventList[:citation].empty?
20
+ json.description hInstrumentationEventList[:description]
21
+ json.locale Locale.build(hInstrumentationEventList[:locale]) unless hInstrumentationEventList[:locale].empty?
22
+ json.constraints @Namespace.json_map(hInstrumentationEventList[:constraints], Constraint) unless hInstrumentationEventList[:constraints].empty?
23
+ json.instrumentationEvent @Namespace.json_map(hInstrumentationEventList[:instrumentationEvents], InstrumentationEvent) unless hInstrumentationEventList[:instrumentationEvents].empty?
24
+ end
25
+
26
+ end
27
+ end # InstrumentationEventList
28
+
29
+ end
30
+ end
31
+ end
32
+ end
@@ -13,6 +13,7 @@ require_relative 'mdJson_associatedResource'
13
13
  require_relative 'mdJson_additionalDocumentation'
14
14
  require_relative 'mdJson_funding'
15
15
  require_relative 'mdJson_dataQuality'
16
+ require_relative 'mdJson_acquisition'
16
17
 
17
18
  module ADIWG
18
19
  module Mdtranslator
@@ -34,6 +35,7 @@ module ADIWG
34
35
  json.associatedResource @Namespace.json_map(hMetadata[:associatedResources], AssociatedResource)
35
36
  json.additionalDocumentation @Namespace.json_map(hMetadata[:additionalDocuments], AdditionalDocument)
36
37
  json.funding @Namespace.json_map(hMetadata[:funding], Funding)
38
+ json.acquisition @Namespace.json_map(hMetadata[:acquisitions], Acquisition)
37
39
  end
38
40
 
39
41
  end # build