Class: Pubid::Itu::Identifiers::Report
- Inherits:
-
Pubid::Itu::Identifier
- Object
- Lutaml::Model::Serializable
- Pubid::Identifier
- Pubid::Itu::Identifier
- Pubid::Itu::Identifiers::Report
- Includes:
- StandardSerialization
- Defined in:
- lib/pubid/itu/identifiers/report.rb
Overview
ITU Report — a publication series distinct from Recommendations. Format: Report ITU-SECTOR SERIES.NUMBER Example: Report ITU-R BT.2020-1 (2000)
Reports and Recommendations number INDEPENDENTLY, so the same
series/number/edition is two different documents — "ITU-R BT.2020-1" is
both Report BT.2020-1 (objective quality assessment, 2000) and
Recommendation BT.2020-1 (UHDTV parameter values, 06/2014). ITU
disambiguates them with the leading word, which is therefore part of
the identifier: the marker reaches to_s, to_urn and to_mr_string,
and the class-strict Identifier#== keeps the two unequal in both
directions so #matches? can never resolve one to the other.
Everything else is shaped exactly like a Recommendation
(sector/series/code/date/version/language), including the flat
serialization — only _type distinguishes the two hashes.
Constant Summary
Constants inherited from Pubid::Itu::Identifier
Pubid::Itu::Identifier::LANGUAGES
Instance Method Summary collapse
-
#mr_type ⇒ Object
The MR string doubles as an output filename, so the marker has to reach it too — otherwise a Report and its same-numbered Recommendation slug identically and one overwrites the other.
- #render_base(**_opts) ⇒ Object
Methods included from StandardSerialization
Methods inherited from Pubid::Itu::Identifier
#==, #base_from_kv, #base_to_kv, #code_for, #common_text_twin_from_kv, #common_text_twin_to_kv, #date_for, #emit_kv, #exclude_from_nested, #imp_marker_from_kv, #imp_marker_to_kv, #initialize, #month_from_kv, #month_to_kv, #mr_number_with_part, #mr_publisher, normalize_to_s_opts, #number, #number_from_kv, #number_to_kv, parse, #parts_from_kv, #parts_to_kv, #qualifier_from_kv, #qualifier_glued_from_kv, #qualifier_glued_to_kv, #qualifier_to_kv, #render_date_suffix, #render_language_suffix, #sector_from_kv, #sector_to_kv, #series_from_kv, #series_suffix_from_kv, #series_suffix_spaced_from_kv, #series_suffix_spaced_to_kv, #series_suffix_to_kv, #series_to_kv, #subseries_from_kv, #subseries_to_kv, #to_s, #year_from_kv, #year_to_kv
Methods inherited from Pubid::Identifier
apply_mappings, #base, #base_document, concrete_class_for, #dated_version_of?, #draft_of?, #drop_supplements, #edition_of?, #eql?, #exclude, from_hash, #has_supplement?, #hash, #includes?, #initialize, #matches?, #mr_all_parts, #mr_edition, #mr_languages, #mr_number, #mr_number_with_part, #mr_part, #mr_publisher, #mr_subpart, #mr_supplement_suffix, #mr_year, #new_edition_of?, polymorphic_name, polymorphic_type_map, #related_to?, #render, #resolve_urn_generator, #root, #sibling_of?, #supplement_of?, #to_hash, #to_mr_string, #to_s, #to_slug, #to_supplement_s, #to_urn, #urn_supplement_type, #urn_type_code, #year
Constructor Details
This class inherits a constructor from Pubid::Itu::Identifier
Instance Method Details
#mr_type ⇒ Object
The MR string doubles as an output filename, so the marker has to reach it too — otherwise a Report and its same-numbered Recommendation slug identically and one overwrites the other. "itu.r.report.bt-2020-1"
33 34 35 |
# File 'lib/pubid/itu/identifiers/report.rb', line 33 def mr_type [super, "report"].compact.join(".") end |
#render_base(**_opts) ⇒ Object
25 26 27 |
# File 'lib/pubid/itu/identifiers/report.rb', line 25 def render_base(**_opts) "Report #{super}" end |