Sha256: 76a965e9deffce090745be5553ac13e51a9a9b38bca41597870ab1e5b73cf6d6
Contents?: true
Size: 1.78 KB
Versions: 3
Compression:
Stored size: 1.78 KB
Contents
module RelatonBsi class BsiBibliographicItem < RelatonIsoBib::IsoBibliographicItem SUBDOCTYPES = %w[specification method-of-test method-of-specifying vocabulary code-of-practice].freeze def initialize(**args) # rubocop:disable Metrics/AbcSize if args[:subdoctype] && !SUBDOCTYPES.include?(args[:subdoctype]) Util.warn "invalid subdoctype: `#{args[:subdoctype]}`" Util.warn "Allowed subdoctypes are: `#{SUBDOCTYPES.join('`, `')}`" end super end # # Fetch flavor schema version # # @return [String] flavor schema version # def ext_schema @ext_schema ||= schema_versions["relaton-model-bsi"] end # @param opts [Hash] # @option opts [Nokogiri::XML::Builder] :builder XML builder # @option opts [Boolean] :bibdata # @option opts [String] :lang language # @return [String] XML # def to_xml(**opts) # rubocop:disable Metrics/AbcSize,Metrics/CyclomaticComplexity,Metrics/MethodLength,Metrics/PerceivedComplexity # super(**opts) do |b| # if opts[:bibdata] && (has_ext_attrs? || price_code || !cen_processing.nil?) # ext = b.ext do # b.doctype doctype if doctype # b.docsubtype subdoctype if subdoctype # # b.horizontal horizontal unless horizontal.nil? # editorialgroup&.to_xml b # ics.each { |i| i.to_xml b } # structuredidentifier&.to_xml b # b.stagename stagename if stagename # end # ext["schema-version"] = ext_schema unless opts[:embeded] # end # end # end # @param hash [Hash] # @return [RelatonBsi::BsiBibliographicItem] def self.from_hash(hash) item_hash = ::RelatonBsi::HashConverter.hash_to_bib(hash) new(**item_hash) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
relaton-bsi-1.20.0 | lib/relaton_bsi/bsi_bibliographic_item.rb |
relaton-bsi-1.19.1 | lib/relaton_bsi/bsi_bibliographic_item.rb |
relaton-bsi-1.19.0 | lib/relaton_bsi/bsi_bibliographic_item.rb |