```ruby
elements = if semantic.semantics.any?
              semantic.semantics.values.map { |form_semantic| get_control(transition.name, form_semantic, "attributes") }.reduce(&:deep_merge))
            else
             get_control(transition.name, semantic, "parameters")
            end
 form_elements.merge!(elements)
```