lib/metanorma/default/isodoc.rb in mn-requirements-0.3.4 vs lib/metanorma/default/isodoc.rb in mn-requirements-0.3.5

- old
+ new

@@ -93,18 +93,34 @@ klass == "component" and klass = node["class"] "requirement-#{klass}" end def requirement_component_parse(node, out) - return out if node["exclude"] == "true" - + node["exclude"] == "true" and return out ret = node.dup if reqt_subpart?(node.name) ret["type"] = reqt_component_type(node) ret.name = "div" end + descr_classif_render(ret) out << ret out + end + + def descr_classif_render(reqt) + reqt.at(ns("./classification")) or return + ins = reqt.at(ns("./classification")).before("<dl/>").previous + descr_classif_extract(reqt, ins) + end + + def descr_classif_extract(desc, ins) + dlist = desc.xpath(ns("./classification")) + dlist.each do |x| + x.at(ns("./tag")).name = "dt" + x.at(ns("./value")).name = "dd" + ins << x.children + x.remove + end end end end end