Sha256: 6c6a23684fd0f1f0a94dc0e30169de095150950411ddea80338ae9c5fc702ff7
Contents?: true
Size: 1.93 KB
Versions: 1
Compression:
Stored size: 1.93 KB
Contents
module Asciidoctor module BSI class Converter < ISO::Converter def org_abbrev super.merge("British Standards Institute" => "BSI") end def metadata_author(node, xml) publishers = node.attr("publisher") || "BSI" csv_split(publishers)&.each do |p| xml.contributor do |c| c.role **{ type: "author" } c.organization do |a| organization(a, p, node, !node.attr("publisher")) end end end end def metadata_publisher(node, xml) publishers = node.attr("publisher") || "BSI" csv_split(publishers)&.each do |p| xml.contributor do |c| c.role **{ type: "publisher" } c.organization do |a| organization(a, p, node, !node.attr("publisher")) end end end end def metadata_copyright(node, xml) pub = node.attr("copyright-holder") || node.attr("publisher") || "BSI" csv_split(pub)&.each do |p| xml.copyright do |c| c.from (node.attr("copyright-year") || Date.today.year) c.owner do |owner| owner.organization do |o| organization(o, p, node, !node.attr("copyright-holder") || node.attr("publisher")) end end end end end def iso_id(node, xml) return unless node.attr("docnumber") part = node&.attr("partnumber") dn = add_id_parts(node.attr("docnumber"), part, nil) dn = id_stage_prefix(dn, node, false) xml.docidentifier dn, **attr_code(type: "BS") end def metadata_doctype(node, xml) xml.doctype doctype(node) end def relaton_relations super + %w(obsoletes adopted-from) end # TODO: not yet implemented prefixes for subsectors explicitly, Rules for Structure Annex F end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
metanorma-bsi-0.0.1 | lib/asciidoctor/bsi/front.rb |