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