pubid 2.0.0.pre.alpha.9 → 2.0.0.pre.alpha.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.adoc +33 -11
- data/conformance/pending.yaml +4 -0
- data/lib/pubid/adobe/identifier.rb +1 -3
- data/lib/pubid/adobe/parser.rb +10 -2
- data/lib/pubid/adobe.rb +1 -0
- data/lib/pubid/amca/builder.rb +2 -2
- data/lib/pubid/amca/identifiers/base.rb +49 -27
- data/lib/pubid/amca/identifiers/interpretation.rb +17 -9
- data/lib/pubid/amca/identifiers/publication.rb +13 -9
- data/lib/pubid/amca/identifiers/standard.rb +2 -0
- data/lib/pubid/amca/parser.rb +1 -1
- data/lib/pubid/amca/renderer.rb +4 -4
- data/lib/pubid/amca/urn_generator.rb +2 -2
- data/lib/pubid/amca.rb +2 -1
- data/lib/pubid/ansi/builder.rb +2 -2
- data/lib/pubid/ansi/identifier.rb +18 -0
- data/lib/pubid/ansi/parser.rb +1 -1
- data/lib/pubid/ansi/renderer.rb +2 -2
- data/lib/pubid/ansi.rb +5 -5
- data/lib/pubid/api/builder.rb +16 -2
- data/lib/pubid/api/identifier.rb +25 -4
- data/lib/pubid/api/identifiers/mpms.rb +10 -8
- data/lib/pubid/api/parser.rb +1 -1
- data/lib/pubid/api/renderer.rb +16 -7
- data/lib/pubid/api/single_identifier.rb +5 -12
- data/lib/pubid/api.rb +1 -0
- data/lib/pubid/ashrae/builder.rb +31 -10
- data/lib/pubid/ashrae/identifiers/addenda_package.rb +6 -0
- data/lib/pubid/ashrae/identifiers/addendum.rb +8 -0
- data/lib/pubid/ashrae/identifiers/base.rb +81 -5
- data/lib/pubid/ashrae/identifiers/combined_addenda.rb +7 -0
- data/lib/pubid/ashrae/identifiers/errata.rb +9 -0
- data/lib/pubid/ashrae/identifiers/guideline.rb +3 -0
- data/lib/pubid/ashrae/identifiers/interpretation.rb +16 -0
- data/lib/pubid/ashrae/identifiers/standard.rb +3 -0
- data/lib/pubid/ashrae/parser.rb +23 -8
- data/lib/pubid/ashrae/renderer.rb +6 -6
- data/lib/pubid/ashrae/supplement_identifier.rb +17 -2
- data/lib/pubid/ashrae/urn_generator.rb +8 -2
- data/lib/pubid/ashrae.rb +7 -1
- data/lib/pubid/asme/builder.rb +11 -2
- data/lib/pubid/asme/identifier.rb +9 -0
- data/lib/pubid/asme/identifiers/standard.rb +86 -2
- data/lib/pubid/asme/parser.rb +1 -1
- data/lib/pubid/asme/renderer.rb +3 -3
- data/lib/pubid/asme/single_identifier.rb +8 -1
- data/lib/pubid/asme/urn_generator.rb +2 -2
- data/lib/pubid/asme.rb +1 -0
- data/lib/pubid/astm/builder.rb +10 -3
- data/lib/pubid/astm/identifier.rb +9 -0
- data/lib/pubid/astm/identifiers/adjunct.rb +16 -1
- data/lib/pubid/astm/identifiers/code_number.rb +81 -0
- data/lib/pubid/astm/identifiers/data_series.rb +2 -0
- data/lib/pubid/astm/identifiers/iso_dual_published.rb +16 -0
- data/lib/pubid/astm/identifiers/manual.rb +10 -0
- data/lib/pubid/astm/identifiers/monograph.rb +2 -0
- data/lib/pubid/astm/identifiers/research_report.rb +10 -0
- data/lib/pubid/astm/identifiers/standard.rb +10 -0
- data/lib/pubid/astm/identifiers/technical_report.rb +2 -0
- data/lib/pubid/astm/identifiers/work_in_progress.rb +2 -0
- data/lib/pubid/astm/identifiers.rb +1 -0
- data/lib/pubid/astm/parser.rb +1 -1
- data/lib/pubid/astm/renderer.rb +1 -1
- data/lib/pubid/astm/single_identifier.rb +31 -1
- data/lib/pubid/astm/urn_generator.rb +7 -5
- data/lib/pubid/astm.rb +1 -0
- data/lib/pubid/bipm/builder.rb +66 -10
- data/lib/pubid/bipm/identifier.rb +134 -9
- data/lib/pubid/bipm/identifiers/committee_document.rb +12 -0
- data/lib/pubid/bipm/identifiers/guide.rb +11 -0
- data/lib/pubid/bipm/identifiers/meeting.rb +12 -0
- data/lib/pubid/bipm/identifiers/mep.rb +12 -0
- data/lib/pubid/bipm/identifiers/metrologia_article.rb +24 -0
- data/lib/pubid/bipm/identifiers/si_brochure.rb +13 -0
- data/lib/pubid/bipm/parser.rb +65 -12
- data/lib/pubid/bipm/renderer.rb +8 -0
- data/lib/pubid/bipm/urn_parser.rb +11 -3
- data/lib/pubid/bipm.rb +7 -1
- data/lib/pubid/bsi/builder.rb +48 -38
- data/lib/pubid/bsi/identifiers/adopted_european_norm.rb +36 -7
- data/lib/pubid/bsi/identifiers/adopted_international_standard.rb +7 -6
- data/lib/pubid/bsi/identifiers/british_industrial_practice.rb +0 -1
- data/lib/pubid/bsi/identifiers/bundled_identifier.rb +10 -0
- data/lib/pubid/bsi/identifiers/committee_document.rb +10 -1
- data/lib/pubid/bsi/identifiers/handbook.rb +0 -2
- data/lib/pubid/bsi/identifiers/practice_guide.rb +0 -1
- data/lib/pubid/bsi/identifiers/set.rb +11 -0
- data/lib/pubid/bsi/identifiers/standalone_amendment.rb +10 -1
- data/lib/pubid/bsi/parser.rb +1 -1
- data/lib/pubid/bsi/renderer.rb +63 -51
- data/lib/pubid/bsi/single_identifier.rb +16 -7
- data/lib/pubid/bsi/urn_generator.rb +11 -2
- data/lib/pubid/bsi.rb +7 -1
- data/lib/pubid/builder/base.rb +18 -8
- data/lib/pubid/bundled_identifier.rb +16 -6
- data/lib/pubid/calconnect/identifier.rb +9 -5
- data/lib/pubid/calconnect/parser.rb +1 -1
- data/lib/pubid/calconnect.rb +7 -1
- data/lib/pubid/ccsds/identifier.rb +9 -2
- data/lib/pubid/ccsds/identifiers/base.rb +4 -2
- data/lib/pubid/ccsds/identifiers/corrigendum.rb +2 -2
- data/lib/pubid/ccsds/parser.rb +1 -1
- data/lib/pubid/ccsds/single_identifier.rb +2 -2
- data/lib/pubid/ccsds.rb +1 -0
- data/lib/pubid/cen_cenelec/builder.rb +101 -76
- data/lib/pubid/cen_cenelec/identifier.rb +115 -3
- data/lib/pubid/cen_cenelec/identifiers/adopted_european_norm.rb +27 -16
- data/lib/pubid/cen_cenelec/identifiers/amendment.rb +46 -6
- data/lib/pubid/cen_cenelec/identifiers/base.rb +8 -9
- data/lib/pubid/cen_cenelec/identifiers/cen_report.rb +1 -1
- data/lib/pubid/cen_cenelec/identifiers/cen_workshop_agreement.rb +1 -1
- data/lib/pubid/cen_cenelec/identifiers/cenelec_harmonization_document.rb +1 -1
- data/lib/pubid/cen_cenelec/identifiers/consolidated_identifier.rb +29 -20
- data/lib/pubid/cen_cenelec/identifiers/corrigendum.rb +47 -8
- data/lib/pubid/cen_cenelec/identifiers/european_prestandard.rb +27 -2
- data/lib/pubid/cen_cenelec/identifiers/european_specification.rb +1 -1
- data/lib/pubid/cen_cenelec/identifiers/fragment.rb +15 -5
- data/lib/pubid/cen_cenelec/identifiers/guide.rb +1 -1
- data/lib/pubid/cen_cenelec/identifiers/harmonization_document.rb +1 -1
- data/lib/pubid/cen_cenelec/identifiers/technical_report.rb +1 -1
- data/lib/pubid/cen_cenelec/identifiers/technical_specification.rb +1 -1
- data/lib/pubid/cen_cenelec/parser.rb +1 -1
- data/lib/pubid/cen_cenelec/renderer.rb +55 -60
- data/lib/pubid/cen_cenelec/single_identifier.rb +20 -2
- data/lib/pubid/cen_cenelec/urn_generator.rb +66 -44
- data/lib/pubid/cen_cenelec.rb +28 -10
- data/lib/pubid/cie/builder.rb +10 -0
- data/lib/pubid/cie/identifier.rb +6 -1
- data/lib/pubid/cie/identifiers/bundle.rb +4 -2
- data/lib/pubid/cie/identifiers/conference.rb +2 -2
- data/lib/pubid/cie/identifiers/corrigendum.rb +2 -2
- data/lib/pubid/cie/identifiers/dual_published.rb +2 -2
- data/lib/pubid/cie/identifiers/identical.rb +2 -2
- data/lib/pubid/cie/identifiers/joint_published.rb +2 -2
- data/lib/pubid/cie/identifiers/proceedings.rb +8 -6
- data/lib/pubid/cie/identifiers/standard.rb +22 -13
- data/lib/pubid/cie/identifiers/supplement.rb +2 -2
- data/lib/pubid/cie/identifiers/tutorial_bundle.rb +2 -2
- data/lib/pubid/cie/parser.rb +1 -1
- data/lib/pubid/cie.rb +7 -1
- data/lib/pubid/conformance/checks.rb +72 -0
- data/lib/pubid/conformance/corpus/case.rb +55 -0
- data/lib/pubid/conformance/corpus.rb +36 -0
- data/lib/pubid/conformance/generator.rb +212 -0
- data/lib/pubid/conformance/pending.rb +63 -0
- data/lib/pubid/conformance/runner.rb +153 -0
- data/lib/pubid/conformance.rb +55 -0
- data/lib/pubid/core.rb +2 -0
- data/lib/pubid/csa/builder.rb +47 -47
- data/lib/pubid/csa/composite_identifier.rb +14 -19
- data/lib/pubid/csa/identifier.rb +143 -81
- data/lib/pubid/csa/identifiers/bundled.rb +23 -13
- data/lib/pubid/csa/identifiers/canadian_adopted.rb +13 -13
- data/lib/pubid/csa/identifiers/cec.rb +44 -4
- data/lib/pubid/csa/identifiers/combined.rb +95 -73
- data/lib/pubid/csa/identifiers/csa_adopted.rb +4 -4
- data/lib/pubid/csa/identifiers/package.rb +2 -2
- data/lib/pubid/csa/parser.rb +6 -2
- data/lib/pubid/csa/renderer.rb +13 -5
- data/lib/pubid/csa/single_identifier.rb +93 -4
- data/lib/pubid/csa/urn_generator.rb +9 -2
- data/lib/pubid/csa/wrapper_identifier.rb +39 -23
- data/lib/pubid/csa.rb +7 -1
- data/lib/pubid/doi/identifier.rb +6 -3
- data/lib/pubid/doi/parser.rb +1 -1
- data/lib/pubid/doi.rb +1 -0
- data/lib/pubid/easc/identifier.rb +0 -2
- data/lib/pubid/easc/parser.rb +10 -2
- data/lib/pubid/easc.rb +1 -0
- data/lib/pubid/ecma/builder.rb +23 -9
- data/lib/pubid/ecma/identifier.rb +81 -10
- data/lib/pubid/ecma/parser.rb +39 -4
- data/lib/pubid/ecma/renderer.rb +29 -8
- data/lib/pubid/ecma/urn_generator.rb +34 -13
- data/lib/pubid/ecma/urn_parser.rb +30 -14
- data/lib/pubid/ecma.rb +1 -0
- data/lib/pubid/errors.rb +80 -0
- data/lib/pubid/etsi/builder.rb +6 -1
- data/lib/pubid/etsi/identifiers/base.rb +34 -20
- data/lib/pubid/etsi/identifiers/etsi_standard.rb +120 -41
- data/lib/pubid/etsi/identifiers/supplement_identifier.rb +10 -0
- data/lib/pubid/etsi/parser.rb +1 -1
- data/lib/pubid/etsi.rb +1 -0
- data/lib/pubid/evs/builder.rb +26 -0
- data/lib/pubid/evs/identifier.rb +37 -0
- data/lib/pubid/evs/identifiers/national_adoption.rb +17 -0
- data/lib/pubid/evs/identifiers.rb +9 -0
- data/lib/pubid/evs/parser.rb +27 -0
- data/lib/pubid/evs/renderer.rb +30 -0
- data/lib/pubid/evs/urn_generator.rb +30 -0
- data/lib/pubid/evs/urn_parser.rb +80 -0
- data/lib/pubid/evs.rb +90 -0
- data/lib/pubid/export.rb +1 -0
- data/lib/pubid/format_detector.rb +1 -0
- data/lib/pubid/gb/identifier.rb +6 -3
- data/lib/pubid/gb/parser.rb +1 -1
- data/lib/pubid/gb.rb +1 -0
- data/lib/pubid/gost/builder.rb +46 -9
- data/lib/pubid/gost/identifier.rb +0 -2
- data/lib/pubid/gost/identifiers/foreign_reference.rb +1 -1
- data/lib/pubid/gost/parser.rb +10 -2
- data/lib/pubid/gost.rb +1 -0
- data/lib/pubid/iala/identifier.rb +9 -6
- data/lib/pubid/iala/parser.rb +10 -2
- data/lib/pubid/iala/urn_parser.rb +6 -2
- data/lib/pubid/iala.rb +1 -0
- data/lib/pubid/iana/builder.rb +3 -1
- data/lib/pubid/iana/identifier.rb +74 -6
- data/lib/pubid/iana/identifiers/registry.rb +36 -0
- data/lib/pubid/iana/parser.rb +1 -1
- data/lib/pubid/iana/renderer.rb +3 -0
- data/lib/pubid/iana/urn_generator.rb +5 -1
- data/lib/pubid/iana.rb +1 -0
- data/lib/pubid/identifier.rb +594 -10
- data/lib/pubid/identifier_metadata.rb +1 -0
- data/lib/pubid/idf/builder.rb +3 -3
- data/lib/pubid/idf/identifier.rb +18 -9
- data/lib/pubid/idf/parser.rb +1 -1
- data/lib/pubid/idf/renderer.rb +4 -4
- data/lib/pubid/idf/urn_generator.rb +1 -1
- data/lib/pubid/idf.rb +7 -1
- data/lib/pubid/iec/builder.rb +14 -7
- data/lib/pubid/iec/components.rb +0 -1
- data/lib/pubid/iec/identifier.rb +73 -83
- data/lib/pubid/iec/identifiers/amendment.rb +6 -2
- data/lib/pubid/iec/identifiers/component_specification.rb +0 -10
- data/lib/pubid/iec/identifiers/conformity_assessment.rb +0 -10
- data/lib/pubid/iec/identifiers/corrigendum.rb +2 -2
- data/lib/pubid/iec/identifiers/fragment_identifier.rb +2 -4
- data/lib/pubid/iec/identifiers/guide.rb +0 -16
- data/lib/pubid/iec/identifiers/international_standard.rb +15 -2
- data/lib/pubid/iec/identifiers/operational_document.rb +0 -10
- data/lib/pubid/iec/identifiers/publicly_available_specification.rb +0 -12
- data/lib/pubid/iec/identifiers/societal_technology_trend_report.rb +0 -10
- data/lib/pubid/iec/identifiers/systems_reference_document.rb +0 -10
- data/lib/pubid/iec/identifiers/technical_report.rb +0 -17
- data/lib/pubid/iec/identifiers/technical_specification.rb +0 -17
- data/lib/pubid/iec/identifiers/technology_report.rb +0 -10
- data/lib/pubid/iec/identifiers/test_report_form.rb +0 -11
- data/lib/pubid/iec/identifiers/white_paper.rb +0 -10
- data/lib/pubid/iec/identifiers/working_document.rb +24 -10
- data/lib/pubid/iec/parser.rb +2 -18
- data/lib/pubid/iec/renderer.rb +13 -10
- data/lib/pubid/iec/single_identifier.rb +33 -10
- data/lib/pubid/iec/urn_generator.rb +227 -61
- data/lib/pubid/iec/urn_parser.rb +42 -4
- data/lib/pubid/iec.rb +1 -0
- data/lib/pubid/ieee/aiee/identifier.rb +2 -2
- data/lib/pubid/ieee/aiee/parser.rb +1 -1
- data/lib/pubid/ieee/builder.rb +45 -1
- data/lib/pubid/ieee/identifiers/adopted_standard.rb +32 -0
- data/lib/pubid/ieee/identifiers/base.rb +42 -5
- data/lib/pubid/ieee/identifiers/csa_dual_published.rb +21 -0
- data/lib/pubid/ieee/identifiers/dual_published.rb +55 -0
- data/lib/pubid/ieee/identifiers/interpretation_identifier.rb +23 -0
- data/lib/pubid/ieee/identifiers/joint_development.rb +11 -7
- data/lib/pubid/ieee/identifiers/multi_numbered_identifier.rb +57 -5
- data/lib/pubid/ieee/identifiers/nesc/base.rb +2 -2
- data/lib/pubid/ieee/identifiers/nesc/draft.rb +2 -2
- data/lib/pubid/ieee/identifiers/nesc/handbook.rb +2 -2
- data/lib/pubid/ieee/identifiers/nesc/redline.rb +2 -2
- data/lib/pubid/ieee/identifiers/nesc/standard.rb +2 -2
- data/lib/pubid/ieee/ire/identifier.rb +2 -2
- data/lib/pubid/ieee/ire/parser.rb +1 -1
- data/lib/pubid/ieee/nesc/parser.rb +1 -1
- data/lib/pubid/ieee/parser.rb +1 -1
- data/lib/pubid/ieee/renderer.rb +5 -1
- data/lib/pubid/ieee/urn_generator.rb +32 -3
- data/lib/pubid/ieee.rb +7 -1
- data/lib/pubid/ieee_debug.rb +1 -0
- data/lib/pubid/ietf/builder.rb +24 -8
- data/lib/pubid/ietf/identifiers/base.rb +25 -28
- data/lib/pubid/ietf/identifiers/bcp.rb +11 -0
- data/lib/pubid/ietf/identifiers/fyi.rb +11 -0
- data/lib/pubid/ietf/identifiers/internet_draft.rb +18 -2
- data/lib/pubid/ietf/identifiers/rfc.rb +2 -0
- data/lib/pubid/ietf/identifiers/serialization.rb +51 -0
- data/lib/pubid/ietf/identifiers/std.rb +11 -0
- data/lib/pubid/ietf/identifiers.rb +1 -0
- data/lib/pubid/ietf/parser.rb +27 -9
- data/lib/pubid/ietf/renderer.rb +44 -6
- data/lib/pubid/ietf/urn_generator.rb +20 -6
- data/lib/pubid/ietf/urn_parser.rb +10 -2
- data/lib/pubid/ietf.rb +12 -2
- data/lib/pubid/iho/identifiers/base.rb +10 -3
- data/lib/pubid/iho/parser.rb +1 -1
- data/lib/pubid/iho.rb +1 -0
- data/lib/pubid/isbn/identifier.rb +25 -7
- data/lib/pubid/isbn/parser.rb +1 -1
- data/lib/pubid/isbn.rb +1 -0
- data/lib/pubid/iso/bundled_identifier.rb +5 -3
- data/lib/pubid/iso/combined_identifier.rb +5 -3
- data/lib/pubid/iso/identifier.rb +12 -7
- data/lib/pubid/iso/identifiers/directives_supplement.rb +4 -4
- data/lib/pubid/iso/parser.rb +1 -1
- data/lib/pubid/iso.rb +7 -1
- data/lib/pubid/itu/identifiers/addendum.rb +2 -2
- data/lib/pubid/itu/identifiers/amendment.rb +2 -2
- data/lib/pubid/itu/identifiers/base.rb +19 -5
- data/lib/pubid/itu/identifiers/corrigendum.rb +2 -2
- data/lib/pubid/itu/identifiers/errata.rb +2 -2
- data/lib/pubid/itu/identifiers/supplement.rb +2 -2
- data/lib/pubid/itu/parser.rb +1 -1
- data/lib/pubid/itu.rb +1 -0
- data/lib/pubid/jcgm/builder.rb +1 -1
- data/lib/pubid/jcgm/identifier.rb +10 -0
- data/lib/pubid/jcgm/identifiers/meeting.rb +1 -1
- data/lib/pubid/jcgm/parser.rb +10 -3
- data/lib/pubid/jcgm/renderer.rb +10 -3
- data/lib/pubid/jcgm/single_identifier.rb +24 -15
- data/lib/pubid/jcgm/urn_generator.rb +1 -1
- data/lib/pubid/jcgm/urn_parser.rb +156 -14
- data/lib/pubid/jcgm.rb +10 -0
- data/lib/pubid/jis/identifier.rb +10 -3
- data/lib/pubid/jis/parser.rb +1 -1
- data/lib/pubid/jis.rb +1 -0
- data/lib/pubid/nist/components/stage.rb +2 -2
- data/lib/pubid/nist/configuration.rb +6 -8
- data/lib/pubid/nist/identifiers/base.rb +12 -2
- data/lib/pubid/nist/identifiers/circular.rb +9 -2
- data/lib/pubid/nist/identifiers/circular_supplement.rb +14 -5
- data/lib/pubid/nist/identifiers/commercial_standards_monthly.rb +7 -1
- data/lib/pubid/nist/identifiers/crpl_report.rb +7 -1
- data/lib/pubid/nist/identifiers/handbook.rb +9 -2
- data/lib/pubid/nist/identifiers/internal_report.rb +12 -5
- data/lib/pubid/nist/identifiers/miscellaneous_publication.rb +14 -6
- data/lib/pubid/nist/identifiers/monograph.rb +14 -7
- data/lib/pubid/nist/identifiers/report.rb +14 -6
- data/lib/pubid/nist/parser.rb +1 -1
- data/lib/pubid/nist/supplement_identifier.rb +16 -1
- data/lib/pubid/nist.rb +7 -1
- data/lib/pubid/oasis/builder.rb +12 -10
- data/lib/pubid/oasis/identifier.rb +89 -11
- data/lib/pubid/oasis/parser.rb +1 -1
- data/lib/pubid/oasis.rb +7 -1
- data/lib/pubid/ogc/identifier.rb +9 -5
- data/lib/pubid/ogc/parser.rb +1 -1
- data/lib/pubid/ogc.rb +1 -0
- data/lib/pubid/oiml/builder.rb +5 -1
- data/lib/pubid/oiml/identifiers/basic_publication.rb +2 -0
- data/lib/pubid/oiml/identifiers/bulletin.rb +36 -0
- data/lib/pubid/oiml/identifiers/code_number.rb +90 -0
- data/lib/pubid/oiml/identifiers/document.rb +2 -0
- data/lib/pubid/oiml/identifiers/expert_report.rb +2 -0
- data/lib/pubid/oiml/identifiers/guide.rb +2 -0
- data/lib/pubid/oiml/identifiers/recommendation.rb +2 -0
- data/lib/pubid/oiml/identifiers/seminar_report.rb +2 -0
- data/lib/pubid/oiml/identifiers/vocabulary.rb +2 -0
- data/lib/pubid/oiml/identifiers.rb +1 -0
- data/lib/pubid/oiml/parser.rb +1 -1
- data/lib/pubid/oiml/single_identifier.rb +26 -42
- data/lib/pubid/oiml/supplement_identifier.rb +27 -0
- data/lib/pubid/oiml.rb +7 -1
- data/lib/pubid/omg/builder.rb +1 -0
- data/lib/pubid/omg/identifier.rb +20 -3
- data/lib/pubid/omg/parser.rb +64 -11
- data/lib/pubid/omg/renderer.rb +13 -1
- data/lib/pubid/omg.rb +2 -1
- data/lib/pubid/parser/grammar.rb +74 -0
- data/lib/pubid/parser.rb +2 -0
- data/lib/pubid/parsers/mr_string.rb +19 -0
- data/lib/pubid/plateau/parser.rb +1 -1
- data/lib/pubid/plateau.rb +10 -0
- data/lib/pubid/prefixes_support.rb +1 -0
- data/lib/pubid/renderers/annotator.rb +233 -0
- data/lib/pubid/renderers/base.rb +13 -0
- data/lib/pubid/renderers/directives_renderer.rb +3 -3
- data/lib/pubid/renderers/human_readable.rb +3 -3
- data/lib/pubid/renderers/mr_string.rb +15 -9
- data/lib/pubid/renderers.rb +1 -0
- data/lib/pubid/rendering/numbering.rb +25 -7
- data/lib/pubid/rendering.rb +1 -0
- data/lib/pubid/sae/identifiers/base.rb +9 -2
- data/lib/pubid/sae/parser.rb +1 -1
- data/lib/pubid/sae.rb +1 -0
- data/lib/pubid/schema/declaration.rb +33 -0
- data/lib/pubid/schema/error.rb +14 -0
- data/lib/pubid/schema/identifier_type.rb +23 -0
- data/lib/pubid/schema/loader.rb +117 -0
- data/lib/pubid/schema/typed_stage.rb +24 -0
- data/lib/pubid/schema.rb +25 -0
- data/lib/pubid/tgpp/builder.rb +1 -1
- data/lib/pubid/tgpp/identifier.rb +21 -5
- data/lib/pubid/tgpp/identifiers/technical_report.rb +2 -2
- data/lib/pubid/tgpp/identifiers/technical_specification.rb +2 -2
- data/lib/pubid/tgpp/parser.rb +22 -6
- data/lib/pubid/tgpp/renderer.rb +21 -5
- data/lib/pubid/tgpp/urn_generator.rb +27 -8
- data/lib/pubid/tgpp/urn_parser.rb +8 -6
- data/lib/pubid/tgpp.rb +7 -1
- data/lib/pubid/type_resolver.rb +16 -1
- data/lib/pubid/un/identifier.rb +6 -3
- data/lib/pubid/un/parser.rb +1 -1
- data/lib/pubid/un.rb +1 -0
- data/lib/pubid/urn_parser/errors.rb +8 -1
- data/lib/pubid/urn_parser.rb +1 -0
- data/lib/pubid/utils.rb +1 -0
- data/lib/pubid/version.rb +1 -1
- data/lib/pubid/w3c/builder.rb +5 -5
- data/lib/pubid/w3c/identifier.rb +38 -9
- data/lib/pubid/w3c/parser.rb +1 -1
- data/lib/pubid/w3c/renderer.rb +1 -1
- data/lib/pubid/w3c/urn_generator.rb +2 -2
- data/lib/pubid/w3c.rb +1 -0
- data/lib/pubid/xsf/identifier.rb +9 -5
- data/lib/pubid/xsf/parser.rb +17 -4
- data/lib/pubid/xsf.rb +7 -1
- data/lib/pubid.rb +399 -21
- data/lib/tasks/conformance.rake +34 -0
- data/lib/tasks/docs.rake +3 -3
- data/lib/tasks/schema.rake +88 -0
- data/schema/core/joint_prefixes.yaml +24 -0
- data/schema/iec.yaml +1017 -0
- data/schema/iso.yaml +1586 -0
- data/schema/schema.schema.yaml +96 -0
- metadata +38 -17
- data/archived-gems/pubid-ccsds/update_codes.yaml +0 -1
- data/archived-gems/pubid-iec/stages.yaml +0 -129
- data/archived-gems/pubid-iec/update_codes.yaml +0 -67
- data/archived-gems/pubid-ieee/update_codes.yaml +0 -104
- data/archived-gems/pubid-iso/stages.yaml +0 -106
- data/archived-gems/pubid-iso/update_codes.yaml +0 -4
- data/archived-gems/pubid-itu/i18n.yaml +0 -13
- data/archived-gems/pubid-itu/series.yaml +0 -42
- data/archived-gems/pubid-nist/publishers.yaml +0 -6
- data/archived-gems/pubid-nist/series.yaml +0 -121
- data/archived-gems/pubid-nist/update_codes.yaml +0 -93
- data/archived-gems/pubid-plateau/update_codes.yaml +0 -6
- data/lib/pubid/cen_cenelec/supplement_identifier.rb +0 -48
- data/lib/pubid/iec/components/code.rb +0 -36
- /data/{archived-gems/pubid-nist → data/nist}/stages.yaml +0 -0
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
R:
|
|
2
|
-
BO: Satellite delivery
|
|
3
|
-
BR: Recording for production, archival and play-out; film for television
|
|
4
|
-
BS: Broadcasting service (sound)
|
|
5
|
-
BT: Broadcasting service (television)
|
|
6
|
-
F: Fixed service
|
|
7
|
-
M: Mobile, radiodetermination, amateur and related satellite services
|
|
8
|
-
P: Radiowave propagation
|
|
9
|
-
RA: Radio astronomy
|
|
10
|
-
RS: Remote sensing systems
|
|
11
|
-
S: Fixed-satellite service
|
|
12
|
-
SA: Space applications and meteorology
|
|
13
|
-
SF: Frequency sharing and coordination between fixed-satellite and fixed service systems SM Spectrum management
|
|
14
|
-
SM: Spectrum management
|
|
15
|
-
SNG: Satellite news gathering
|
|
16
|
-
TF: Time signals and frequency standards emissions
|
|
17
|
-
V: Vocabulary and related subjects
|
|
18
|
-
|
|
19
|
-
T:
|
|
20
|
-
A: Organization of the work of ITU-T
|
|
21
|
-
D: Tariff and accounting principles and international telecommunication/ICT economic and policy issues
|
|
22
|
-
E: Overall network operation, telephone service, service operation and human factors
|
|
23
|
-
F: Non-telephone telecommunication services
|
|
24
|
-
G: Transmission systems and media, digital systems and networks
|
|
25
|
-
H: Audiovisual and multimedia systems
|
|
26
|
-
I: Integrated services digital network
|
|
27
|
-
J: Cable networks and transmission of television, sound programme and other multimedia signals
|
|
28
|
-
K: Protection against interference
|
|
29
|
-
L: Environment and ICTs, climate change, e-waste, energy efficiency; construction, installation and protection of cables and other elements of outside plant
|
|
30
|
-
M: Telecommunication management, including TMN and network maintenance
|
|
31
|
-
N: "Maintenance: international sound programme and television-transmission circuits"
|
|
32
|
-
O: Specifications of measuring equipment
|
|
33
|
-
P: Telephone transmission quality, telephone installations, local line networks
|
|
34
|
-
Q: Switching and signalling, and associated measurements and tests
|
|
35
|
-
R: Telegraph transmission
|
|
36
|
-
S: Telegraph services terminal equipment
|
|
37
|
-
T: Terminals for telematic services
|
|
38
|
-
U: Telegraph switching
|
|
39
|
-
V: Data communication over the telephone network
|
|
40
|
-
X: Data networks, open system communications and security
|
|
41
|
-
Y: Global information infrastructure, Internet protocol aspects, next-generation networks, Internet of Things and smart cities
|
|
42
|
-
Z: Languages and general software aspects for telecommunication systems
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
long:
|
|
2
|
-
AMS: Advanced Manufacturing Series
|
|
3
|
-
BSS: Building Science Series
|
|
4
|
-
BMS: Building Material Structures Report
|
|
5
|
-
NBS BRPD-CRPL-D: Basic Radio Propagation Predictions Series
|
|
6
|
-
BH: Building and Housing
|
|
7
|
-
CRPL: Central Radio Propagation Laboratory Reports
|
|
8
|
-
NBS CRPL-F-A: CRPL Ionospheric Data
|
|
9
|
-
NBS CRPL-F-B: CRPL Solar-Geophysical Data
|
|
10
|
-
NBS IP: CRPL Ionospheric Predictions
|
|
11
|
-
CIRC: Circulars
|
|
12
|
-
NBS CIS: Consumer Information Series
|
|
13
|
-
CS: Commercial Standards
|
|
14
|
-
NBS CS-E: Commercial Standards (emergency)
|
|
15
|
-
CSM: Commercial Standards Monthly
|
|
16
|
-
FIPS: Federal Information Processing Standards Publication
|
|
17
|
-
GCR: Grant/Contract Reports
|
|
18
|
-
HB: Handbooks
|
|
19
|
-
NBS HR: Hydraulic Research in the United States
|
|
20
|
-
NBS IRPL: Interservice Radio Propagation Laboratory
|
|
21
|
-
ITL Bulletin: ITL Bulletin
|
|
22
|
-
NIST LC: Letter Circular
|
|
23
|
-
NBS LC: Letter Circular
|
|
24
|
-
MONO: Monograph
|
|
25
|
-
MP: Miscellaneous Publications
|
|
26
|
-
NCSTAR: National Construction Safety Team Act Reports
|
|
27
|
-
NSRDS: National Standard Reference Data Series
|
|
28
|
-
NSRDS-NBS: National Standard Reference Data Series
|
|
29
|
-
IR: IR
|
|
30
|
-
OWMWP: Office of Weights and Measures White Papers
|
|
31
|
-
PC: Photographic Laboratory Circulars
|
|
32
|
-
RPT: Reports
|
|
33
|
-
NIST PS: Voluntary Product Standards
|
|
34
|
-
SIBS: Special Interior Ballistics Studies
|
|
35
|
-
NBS PS: Voluntary Product Standards
|
|
36
|
-
SP: Special Publication
|
|
37
|
-
TN: Technical Notes
|
|
38
|
-
TIBM: Technical Information on Building Materials for Use in the Design of Low Cost Housing
|
|
39
|
-
TTB: Technology Transfer Briefs
|
|
40
|
-
NIST DCI: Data Collection Instruments
|
|
41
|
-
EAB: Economic Analysis Brief
|
|
42
|
-
NIST Other: Other
|
|
43
|
-
CSWP: Cybersecurity White Papers
|
|
44
|
-
CSRC Book: Cybersecurity Resource Center Book
|
|
45
|
-
CSRC Use Case: Cybersecurity Resource Center Use Case
|
|
46
|
-
CSRC Building Block: Cybersecurity Resource Center Building Block
|
|
47
|
-
JPCRD: Journal of Physical and Chemical Reference Data
|
|
48
|
-
JRES: Journal of Research of NIST
|
|
49
|
-
VTS: Voting Technology Series
|
|
50
|
-
AI: NIST Trustworthy and Responsible AI
|
|
51
|
-
abbrev:
|
|
52
|
-
AMS: Adv. Man. Ser
|
|
53
|
-
BSS: Bldg. Sci. Ser.
|
|
54
|
-
FIPS: Federal Inf. Process. Stds.
|
|
55
|
-
HB: Handb.
|
|
56
|
-
MONO: Monogr.
|
|
57
|
-
NCSTAR: Natl. Constr. Tm. Act Rpt.
|
|
58
|
-
NSRDS: Natl. Stand. Ret. Data Ser.
|
|
59
|
-
NSRDS-NBS: Natl. Stand. Ret. Data Ser.
|
|
60
|
-
NIST PS: Prod. Stand.
|
|
61
|
-
NBS PS: Prod. Stand.
|
|
62
|
-
SP: Spec. Publ.
|
|
63
|
-
TN: Tech. Note
|
|
64
|
-
NIST DCI: Data Collect. Instr.
|
|
65
|
-
NIST Other: Other
|
|
66
|
-
CSWP: CSWP
|
|
67
|
-
CSRC Book: CSRC Book
|
|
68
|
-
CSRC Use Case: CSRC Use Case
|
|
69
|
-
CSRC Building Block: CSRC Building Block
|
|
70
|
-
JPCRD: J. Phys. & Chem. Ref. Data
|
|
71
|
-
JRES: J. Res. Natl. Inst. Stan.
|
|
72
|
-
mr:
|
|
73
|
-
AMS: AMS
|
|
74
|
-
BSS: BSS
|
|
75
|
-
BMS: BMS
|
|
76
|
-
NBS BRPD-CRPL-D: NBS.BRPD-CRPL-D
|
|
77
|
-
BH: BH
|
|
78
|
-
CRPL: CRPL
|
|
79
|
-
NBS CRPL-F-A: NBS.CRPL-F-A
|
|
80
|
-
NBS CRPL-F-B: NBS.CRPL-F-B
|
|
81
|
-
NBS IP: NBS.IP
|
|
82
|
-
CIRC: CIRC
|
|
83
|
-
NBS CIS: NBS.CIS
|
|
84
|
-
CS: CS
|
|
85
|
-
NBS CS-E: NBS.CS-E
|
|
86
|
-
CSM: CSM
|
|
87
|
-
FIPS: FIPS
|
|
88
|
-
GCR: GCR
|
|
89
|
-
HB: HB
|
|
90
|
-
NBS HR: NBS.HR
|
|
91
|
-
NBS IRPL: NBS.IRPL
|
|
92
|
-
ITL Bulletin: NIST.ITLB
|
|
93
|
-
NIST LC: NIST.LC
|
|
94
|
-
NBS LC: NBS.LC
|
|
95
|
-
MONO: MN
|
|
96
|
-
MP: MP
|
|
97
|
-
NCSTAR: NCSTAR
|
|
98
|
-
NSRDS: NSRDS
|
|
99
|
-
NSRDS-NBS: NBS.NSRDS
|
|
100
|
-
IR: IR
|
|
101
|
-
OWMWP: OWMWP
|
|
102
|
-
PC: PC
|
|
103
|
-
RPT: RPT
|
|
104
|
-
NIST PS: NIST.PS
|
|
105
|
-
SIBS: SIBS
|
|
106
|
-
NBS PS: NBS.PS
|
|
107
|
-
SP: SP
|
|
108
|
-
TN: TN
|
|
109
|
-
TIBM: TIBM
|
|
110
|
-
TTB: TTB
|
|
111
|
-
NIST DCI: NIST.DCI
|
|
112
|
-
EAB: EAB
|
|
113
|
-
NIST Other: NIST.O
|
|
114
|
-
CSWP: CSWP
|
|
115
|
-
CSRC Book: NIST.CSB
|
|
116
|
-
CSRC Use Case: NIST.CSUC
|
|
117
|
-
CSRC Building Block: NIST.CSBB
|
|
118
|
-
JPCRD: JPCRD
|
|
119
|
-
JRES: NIST.JRES
|
|
120
|
-
VTS: VTS
|
|
121
|
-
AI: AI
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
NBS MN: NBS MONO
|
|
2
|
-
NIST MN: NIST MONO
|
|
3
|
-
NIST MP: NBS MP
|
|
4
|
-
NIST SP 260-162 2006ed.: NIST SP 260-162e2006
|
|
5
|
-
NBS CIRC 154suprev: NBS CIRC 154r1sup
|
|
6
|
-
NBS CIRC supJun1925-Jun1926: NBS CIRC 24e7sup2
|
|
7
|
-
NBS CIRC supJun1925-Jun1927: NBS CIRC 24e7sup3
|
|
8
|
-
/^NBS CIRC sup$/: NBS CIRC 24e7sup
|
|
9
|
-
NBS CIRC e2: NBS CIRC 2e2
|
|
10
|
-
NBS CIRC 25sup-1924: NBS CIRC 25sup
|
|
11
|
-
NIST SP 260-126 rev 2013: NIST SP 260-126r2013
|
|
12
|
-
NIST CSRC White Paper: NIST CSWP
|
|
13
|
-
NIST SP 800-56ar: NIST SP 800-56Ar1
|
|
14
|
-
NIST.LCIRC: NIST.LC
|
|
15
|
-
NBS.LCIRC: NBS.LC
|
|
16
|
-
NIST LCIRC: NIST LC
|
|
17
|
-
NBS LCIRC: NBS LC
|
|
18
|
-
NIST SP 800-57Pt3r1: NIST SP 800-57pt3r1
|
|
19
|
-
NISTIR: NIST IR
|
|
20
|
-
NIST FIPS: FIPS
|
|
21
|
-
NIST.CSWP.01162020pt: NIST.CSWP.01162020(por)
|
|
22
|
-
/^NBS FIPS 11-1-Sep30$/: NBS FIPS 11-1-Sep30/1977
|
|
23
|
-
/^NBS FIPS 89-Sep1$/: NBS FIPS 89-Sep1981
|
|
24
|
-
/^FIPS PUB 54-1-Jan15$/: FIPS 54-1
|
|
25
|
-
/^FIPS 54-1-Jan15$/: FIPS 54-1
|
|
26
|
-
/^FIPS 54-1-Jan17$/: FIPS 54-1-Jan17/1991
|
|
27
|
-
FIPS PUB: FIPS
|
|
28
|
-
NBS CRPL c4-4: NBS CRPL 4-4
|
|
29
|
-
NIST AMS 300-8r1 (February 2021 update): NIST AMS 300-8r1/Upd1-202102
|
|
30
|
-
NIST AMS 300-8r1/upd: NIST AMS 300-8r1/Upd1-202102
|
|
31
|
-
NIST IR 8115r1-upd: NIST IR 8115r1/Upd1-202103
|
|
32
|
-
NIST SP 500-300-upd: NIST SP 500-300/Upd1-202105
|
|
33
|
-
NIST TN 2150-upd: NIST TN 2150/Upd1-202102
|
|
34
|
-
NIST IR 8170-upd: NIST IR 8170/Upd1-202003
|
|
35
|
-
NBS IR 73-197r: NBS IR 73-197r1
|
|
36
|
-
NBS.HB.105-1r1990: NIST.HB.105-1r1990
|
|
37
|
-
NBS.HB.28p11969: NBS.HB.28-1969pt1
|
|
38
|
-
NIST HB 105-1-1990: NIST HB 105-1r1990
|
|
39
|
-
NBS.FIPS.100-1-1991: NIST.FIPS.100-1-1991
|
|
40
|
-
NBS.LC.1088sp: NBS.LC.1088.spa
|
|
41
|
-
NBS LC 1088sp: NBS LC 1088 spa
|
|
42
|
-
#NBS.LC.145r11/1925: NBS.LC.145/Upd1-192511
|
|
43
|
-
#NBS.LC.118sup12/1926: NBS.LC.118sup/Upd1-192612
|
|
44
|
-
NIST SP 955 Suppl.: NIST SP 955sup
|
|
45
|
-
NIST SP 800-38e: NIST SP 800-38E
|
|
46
|
-
NIST SP 782-1995-96: NIST SP 782-1995
|
|
47
|
-
NIST FIPS 54-Jan15: NIST FIPS 54
|
|
48
|
-
NBS report ;: NBS RPT
|
|
49
|
-
NBS TN 467p1adde1: NBS TN 467pt1-add
|
|
50
|
-
NIST SP 1011-II-1.0: NIST SP 1011v2ver1.0
|
|
51
|
-
NIST SP 1011-II-1 0: NIST SP 1011v2ver1.0
|
|
52
|
-
NIST SP 1011-I-2.0: NIST SP 1011v1ver2.0
|
|
53
|
-
NIST SP 1011-I-2 0: NIST SP 1011v1ver2.0
|
|
54
|
-
NIST SP 500-281-v1.0: NIST SP 500-281v1.0
|
|
55
|
-
NIST IR 8259Aes: NIST IR 8259A(spa)
|
|
56
|
-
NIST IR 8259Apt: NIST IR 8259A(por)
|
|
57
|
-
NIST IR 8211-upd: NIST IR 8211/Upd1-2021
|
|
58
|
-
NIST IR 8115r1/upd: NIST IR 8115r1/Upd1-2021
|
|
59
|
-
NBS CS v: NBS CSM v
|
|
60
|
-
NIST SP 800-57p1r2006: NIST SP 800-57pt1r1
|
|
61
|
-
NIST SP 800-57p1r2007: NIST SP 800-57pt1r2
|
|
62
|
-
NIST SP 500-268v1 1: NIST SP 500-268v1.1
|
|
63
|
-
NIST SP 500-270v1 1: NIST SP 500-270v1.1
|
|
64
|
-
NIST SP 500-280v2 1: NIST SP 500-280v2.1
|
|
65
|
-
NIST SP 500-281-v1 0: NIST SP 500-281v1.0
|
|
66
|
-
NIST SP 800-63v1 0 1: NIST SP 800-63v1.0.1
|
|
67
|
-
NIST SP 800-63v1 0 2: NIST SP 800-63v1.0.2
|
|
68
|
-
NIST SP 955 Suppl: NIST SP 955sup
|
|
69
|
-
NIST SP 984 4: NIST SP 984-4
|
|
70
|
-
NISTPUB 0413171251: NIST TN 1648-2009
|
|
71
|
-
/\-draft$/: " (Draft)"
|
|
72
|
-
/\-draft2$/: " 2pd"
|
|
73
|
-
NIST HB 135e2022-upd1: NIST HB 135e2022/Upd1-202205
|
|
74
|
-
NIST SP 1900-206-upd1: NIST SP 1900-206/Upd1-202202
|
|
75
|
-
NIST TN 2207-upd1: NIST TN 2207/Upd1-202205
|
|
76
|
-
NIST IR 8290-upd1: NIST IR 8290/Upd1-202205
|
|
77
|
-
NIST IR 8413-upd1: NIST IR 8413/Upd1-202207
|
|
78
|
-
NIST IR 85-3273-37-upd1: NIST IR 85-3273-37/Upd1-202205
|
|
79
|
-
/NBS CRPL-F-B(?=\d+)/: "NBS CRPL-F-B "
|
|
80
|
-
/NBS[.\s]CS[.\s]e/: "NBS CS-E "
|
|
81
|
-
"NIST.AMS.300-8r1/upd": NIST.AMS.300-8r1-upd1
|
|
82
|
-
NIST.hb.150-1-2017: NIST HB 105-1r2017
|
|
83
|
-
nbs.tn.671: NBS TN 671
|
|
84
|
-
NIST.TN.1648_2009: NIST TN 1648-2009
|
|
85
|
-
NBS NSRDS: NSRDS-NBS
|
|
86
|
-
nist ir: NIST IR
|
|
87
|
-
/(?<=\d)es/: (spa)
|
|
88
|
-
/(?<=\d)chi/: (zho)
|
|
89
|
-
/(?<=\d)viet/: (vie)
|
|
90
|
-
/(?<=\d)port/: (por)
|
|
91
|
-
/(?<=\d)(pt)(?!\d)/: (por)
|
|
92
|
-
/(?<=\d)id/: (ind)
|
|
93
|
-
/\-upd$/: "-upd1"
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"PLATEAU Handbook #11 第1.0版(民間活用編)": "PLATEAU Handbook #06 第1.0版"
|
|
2
|
-
"PLATEAU Handbook #11 第1.0版(公共活用編)": "PLATEAU Handbook #04 第1.0版"
|
|
3
|
-
"PLATEAU Handbook #11 第2.0版(民間活用編)": "PLATEAU Handbook #06 第2.0版"
|
|
4
|
-
"PLATEAU Handbook #11 第2.0版(公共活用編)": "PLATEAU Handbook #04 第2.0版"
|
|
5
|
-
"PLATEAU Handbook #11 第3.0版(民間活用編)": "PLATEAU Handbook #06 第3.0版"
|
|
6
|
-
"PLATEAU Handbook #11 第3.0版(公共活用編)": "PLATEAU Handbook #04 第3.0版"
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require "lutaml/model"
|
|
4
|
-
|
|
5
|
-
module Pubid
|
|
6
|
-
module CenCenelec
|
|
7
|
-
class SupplementIdentifier < Identifiers::Base
|
|
8
|
-
attribute :base, Identifiers::Base, polymorphic: true
|
|
9
|
-
attribute :number, Components::Code
|
|
10
|
-
attribute :date, Components::Date
|
|
11
|
-
attribute :stage, Components::Stage
|
|
12
|
-
attribute :type, Components::Type
|
|
13
|
-
attribute :typed_stage, Components::TypedStage
|
|
14
|
-
|
|
15
|
-
# Delegate methods to base for convenient access
|
|
16
|
-
def publisher
|
|
17
|
-
base&.publisher
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
def copublishers
|
|
21
|
-
base&.copublishers
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def <=>(other)
|
|
25
|
-
return nil unless other.is_a?(SupplementIdentifier)
|
|
26
|
-
|
|
27
|
-
# Compare base identifiers first
|
|
28
|
-
base_cmp = base <=> other.base
|
|
29
|
-
return base_cmp unless base_cmp.zero?
|
|
30
|
-
|
|
31
|
-
# Then compare numbers
|
|
32
|
-
num_cmp = (number || Components::Code.new(value: "0")).to_s <=> (other.number || Components::Code.new(value: "0")).to_s
|
|
33
|
-
return num_cmp unless num_cmp.zero?
|
|
34
|
-
|
|
35
|
-
# Finally compare dates
|
|
36
|
-
if date && other.date
|
|
37
|
-
date.to_s <=> other.date.to_s
|
|
38
|
-
elsif date
|
|
39
|
-
1
|
|
40
|
-
elsif other.date
|
|
41
|
-
-1
|
|
42
|
-
else
|
|
43
|
-
0
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
end
|
|
48
|
-
end
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Pubid
|
|
4
|
-
module Iec
|
|
5
|
-
module Components
|
|
6
|
-
# Code component for IEC identifiers.
|
|
7
|
-
#
|
|
8
|
-
# Inherits +value+ and +prefix+ from the shared Code; overrides
|
|
9
|
-
# rendering to place the prefix (e.g. "TR", "TS") before the value.
|
|
10
|
-
class Code < ::Pubid::Components::Code
|
|
11
|
-
def to_s
|
|
12
|
-
result = ""
|
|
13
|
-
result += "#{prefix} " if prefix
|
|
14
|
-
result += value.to_s
|
|
15
|
-
result
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
alias full_code to_s
|
|
19
|
-
|
|
20
|
-
# Parse IEC code formats:
|
|
21
|
-
# - "60034" (just number)
|
|
22
|
-
# - "TR 61000" (with prefix)
|
|
23
|
-
# - "TS 62443" (with prefix)
|
|
24
|
-
def self.parse(string)
|
|
25
|
-
parts = string.strip.split(" ", 2)
|
|
26
|
-
|
|
27
|
-
if parts.size == 2
|
|
28
|
-
new(prefix: parts[0], value: parts[1])
|
|
29
|
-
else
|
|
30
|
-
new(value: parts[0])
|
|
31
|
-
end
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
end
|
|
35
|
-
end
|
|
36
|
-
end
|
|
File without changes
|