pubid-nist 0.1.8
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 +7 -0
- data/LICENSE.txt +25 -0
- data/README.adoc +727 -0
- data/exe/pubid-nist +97 -0
- data/lib/pubid/nist/document.rb +286 -0
- data/lib/pubid/nist/document_parser.rb +34 -0
- data/lib/pubid/nist/document_transform.rb +21 -0
- data/lib/pubid/nist/edition.rb +26 -0
- data/lib/pubid/nist/errors.rb +5 -0
- data/lib/pubid/nist/nist_tech_pubs.rb +110 -0
- data/lib/pubid/nist/parsers/default.rb +107 -0
- data/lib/pubid/nist/parsers/fips_pub.rb +8 -0
- data/lib/pubid/nist/parsers/nbs_bh.rb +6 -0
- data/lib/pubid/nist/parsers/nbs_circ.rb +21 -0
- data/lib/pubid/nist/parsers/nbs_crpl.rb +17 -0
- data/lib/pubid/nist/parsers/nbs_csm.rb +11 -0
- data/lib/pubid/nist/parsers/nbs_fips.rb +14 -0
- data/lib/pubid/nist/parsers/nbs_hb.rb +31 -0
- data/lib/pubid/nist/parsers/nbs_ir.rb +29 -0
- data/lib/pubid/nist/parsers/nbs_lc.rb +21 -0
- data/lib/pubid/nist/parsers/nbs_mn.rb +6 -0
- data/lib/pubid/nist/parsers/nbs_mp.rb +9 -0
- data/lib/pubid/nist/parsers/nbs_rpt.rb +13 -0
- data/lib/pubid/nist/parsers/nbs_sp.rb +13 -0
- data/lib/pubid/nist/parsers/nbs_tn.rb +9 -0
- data/lib/pubid/nist/parsers/nist_gcr.rb +14 -0
- data/lib/pubid/nist/parsers/nist_hb.rb +8 -0
- data/lib/pubid/nist/parsers/nist_ir.rb +29 -0
- data/lib/pubid/nist/parsers/nist_ncstar.rb +7 -0
- data/lib/pubid/nist/parsers/nist_owmwp.rb +11 -0
- data/lib/pubid/nist/parsers/nist_sp.rb +53 -0
- data/lib/pubid/nist/parsers/nist_tn.rb +13 -0
- data/lib/pubid/nist/publisher.rb +43 -0
- data/lib/pubid/nist/serie.rb +27 -0
- data/lib/pubid/nist/stage.rb +28 -0
- data/lib/pubid/nist/version.rb +5 -0
- data/lib/pubid/nist.rb +33 -0
- data/lib/pubid-nist.rb +3 -0
- data/publishers.yaml +6 -0
- data/series.yaml +139 -0
- data/stages.yaml +5 -0
- data/update_codes.yaml +58 -0
- metadata +213 -0
@@ -0,0 +1,21 @@
|
|
1
|
+
module Pubid::Nist
|
2
|
+
module Parsers
|
3
|
+
class NbsCirc < Default
|
4
|
+
rule(:revision) do
|
5
|
+
((str("rev") >> (letters >> year_digits).as(:revision)) |
|
6
|
+
(str("r") >> digits.as(:revision))
|
7
|
+
)
|
8
|
+
end
|
9
|
+
|
10
|
+
rule(:report_number) do
|
11
|
+
first_report_number >> edition.maybe >> (str("-") >> second_report_number).maybe
|
12
|
+
end
|
13
|
+
|
14
|
+
rule(:edition) do
|
15
|
+
(str("sup") >> str("").as(:supplement) >>
|
16
|
+
(letters.as(:edition_month) >> year_digits.as(:edition_year))) |
|
17
|
+
((str("e") | str("-")) >> (digits.as(:edition) | letters.as(:edition_month) >> year_digits.as(:edition_year)))
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Pubid::Nist
|
2
|
+
module Parsers
|
3
|
+
class NbsCrpl < Default
|
4
|
+
rule(:first_report_number) do
|
5
|
+
(digits >> str("-m").maybe).as(:first_report_number)
|
6
|
+
end
|
7
|
+
|
8
|
+
rule(:part) do
|
9
|
+
str("_") >> (digits >> str("-") >> digits).as(:part)
|
10
|
+
end
|
11
|
+
|
12
|
+
rule(:supplement) do
|
13
|
+
str("A").as(:supplement)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module Pubid::Nist
|
2
|
+
module Parsers
|
3
|
+
class NbsFips < Default
|
4
|
+
rule(:edition) do
|
5
|
+
str("-") >> (
|
6
|
+
(month_letters.as(:edition_month) >> year_digits.as(:edition_year)) |
|
7
|
+
year_digits.as(:edition_year) |
|
8
|
+
(month_letters.as(:edition_month) >> match('\d').repeat(2, 2).as(:edition_day) >>
|
9
|
+
str("/") >> year_digits.as(:edition_year))
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module Pubid::Nist
|
2
|
+
module Parsers
|
3
|
+
class NbsHb < Default
|
4
|
+
# found patterns:
|
5
|
+
# 44e2-1955 -> 44e2
|
6
|
+
# 146v1-1991
|
7
|
+
# 105-1-1990 -> 105-1e1990
|
8
|
+
# 111r1977 / 146v1
|
9
|
+
# 130-1979 -> 130e1979
|
10
|
+
# 105-8 -> 105-8
|
11
|
+
# 28supp1957pt1
|
12
|
+
# 67suppFeb1965
|
13
|
+
|
14
|
+
rule(:edition) do
|
15
|
+
(str("supp") >> str("").as(:supplement) >>
|
16
|
+
(letters.as(:edition_month) >> year_digits.as(:edition_year)) |
|
17
|
+
str("e") >> year_digits.as(:edition_year)
|
18
|
+
)
|
19
|
+
end
|
20
|
+
|
21
|
+
rule(:report_number) do
|
22
|
+
digits.as(:first_report_number) >> volume.maybe >>
|
23
|
+
(str("e") >> digits.as(:edition) >> (str("-") >> digits).maybe |
|
24
|
+
str("-") >> year_digits.as(:edition_year) |
|
25
|
+
str("-") >> digits.as(:second_report_number) >> str("-") >> year_digits.as(:edition_year) |
|
26
|
+
str("-") >> digits_with_suffix.as(:second_report_number)
|
27
|
+
).maybe
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module Pubid::Nist
|
2
|
+
module Parsers
|
3
|
+
class NbsIr < Default
|
4
|
+
rule(:second_report_number) do
|
5
|
+
(match('[\d.]').repeat(1) >> number_suffix.maybe).as(:second_report_number)
|
6
|
+
end
|
7
|
+
|
8
|
+
rule(:report_number) do
|
9
|
+
(first_report_number >>
|
10
|
+
(str("-") >> second_report_number).maybe
|
11
|
+
).capture(:report_number) >>
|
12
|
+
# parse last part as volume for specific document numbers
|
13
|
+
dynamic do |_source, context|
|
14
|
+
report_number = context.captures[:report_number]
|
15
|
+
.values_at(:first_report_number, :second_report_number).join("-")
|
16
|
+
if %w[74-577 77-1420].include?(report_number)
|
17
|
+
str("-") >> match('\d').as(:volume)
|
18
|
+
else
|
19
|
+
self
|
20
|
+
end
|
21
|
+
end.maybe
|
22
|
+
end
|
23
|
+
|
24
|
+
rule(:part_prefixes) do
|
25
|
+
str("pt") | str("p") | str("-")
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module Pubid::Nist
|
2
|
+
module Parsers
|
3
|
+
class NbsLc < Default
|
4
|
+
rule(:supplement) do
|
5
|
+
(str("supp") | str("sup")) >>
|
6
|
+
((str("").as(:supplement) >> digits.as(:update_month) >> str("/") >> digits.as(:update_year)) |
|
7
|
+
match('\d').repeat.as(:supplement))
|
8
|
+
end
|
9
|
+
|
10
|
+
rule(:revision) do
|
11
|
+
str("r") >>
|
12
|
+
((digits.as(:update_month) >> str("/") >> digits.as(:update_year)) |
|
13
|
+
digits.as(:revision))
|
14
|
+
end
|
15
|
+
|
16
|
+
# suffixes for LCIRC 378
|
17
|
+
rule(:number_suffix) { match("[abcdefghA-Z]") }
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Pubid::Nist
|
2
|
+
module Parsers
|
3
|
+
class NbsRpt < Default
|
4
|
+
rule(:report_number) do
|
5
|
+
(month_letters >>
|
6
|
+
str("-") >> (month_letters >> year_digits)).as(:report_number) |
|
7
|
+
(digits >> str("-") >> (digits | str("A"))).as(:report_number) |
|
8
|
+
(digits >> (str("a") | str("b")).maybe).as(:report_number) |
|
9
|
+
(str("ADHOC") | str("div9")).as(:report_number)
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module Pubid::Nist
|
2
|
+
module Parsers
|
3
|
+
class NistGcr < Default
|
4
|
+
rule(:report_number) do
|
5
|
+
(digits >>
|
6
|
+
str("-") >> digits >> (str("-") >> digits).maybe).as(:report_number)
|
7
|
+
end
|
8
|
+
|
9
|
+
rule(:volume) do
|
10
|
+
str("v") >> (digits >> match('[A-Z]').repeat).as(:volume)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module Pubid::Nist
|
2
|
+
module Parsers
|
3
|
+
class NistIr < Default
|
4
|
+
rule(:number_suffix) { match("[abcA-Z]") }
|
5
|
+
|
6
|
+
rule(:revision) do
|
7
|
+
str("r") >> (digits | month_letters >> year_digits).as(:revision)
|
8
|
+
end
|
9
|
+
|
10
|
+
rule(:report_number) do
|
11
|
+
(year_digits.as(:first_report_number) >>
|
12
|
+
str("-") >> year_digits.as(:edition_year)) |
|
13
|
+
first_report_number >> (str("-") >>
|
14
|
+
((digits | match("[aAB]") | str("CAS") | str("FRA")) >>
|
15
|
+
# for extra number for NIST IR 85-3273-10
|
16
|
+
(str("-") >> digits).maybe).as(:second_report_number)).maybe
|
17
|
+
end
|
18
|
+
|
19
|
+
rule(:revision) do
|
20
|
+
str("r") >>
|
21
|
+
((digits.as(:update_month) >> str("/") >> digits.as(:update_year)) |
|
22
|
+
(month_letters.as(:update_month) >> year_digits.as(:update_year)) |
|
23
|
+
digits.as(:revision) |
|
24
|
+
str("").as(:revision))
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
@@ -0,0 +1,11 @@
|
|
1
|
+
module Pubid::Nist
|
2
|
+
module Parsers
|
3
|
+
class NistOwmwp < Default
|
4
|
+
rule(:report_number) do
|
5
|
+
digits_with_suffix.as(:first_report_number) >>
|
6
|
+
(str("-") >> (digits_with_suffix >> (str("-") >> digits_with_suffix).maybe)
|
7
|
+
.as(:second_report_number)).maybe
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
module Pubid::Nist
|
2
|
+
module Parsers
|
3
|
+
class NistSp < Default
|
4
|
+
rule(:version) do
|
5
|
+
((str("ver") >> (digits >> (str(".") >> digits).maybe).as(:version)) |
|
6
|
+
(str("v") >>
|
7
|
+
(match('\d') >> str(".") >> match('\d') >> (str(".") >> match('\d')).maybe).as(:version)))
|
8
|
+
end
|
9
|
+
|
10
|
+
rule(:number_suffix) { match["[A-Zabcd]"] }
|
11
|
+
|
12
|
+
rule(:first_report_number) do
|
13
|
+
digits >> (str("GB") | str("a")).maybe
|
14
|
+
end
|
15
|
+
|
16
|
+
rule(:report_number) do
|
17
|
+
# (\d+-\d{1,3}).as(:report_number)
|
18
|
+
# (\d+-\d{4}).as(:report_number) when first number is 250
|
19
|
+
# (\d+).as(:report_number)-(\d{4}).as(:edition)
|
20
|
+
# or \d-\d-(\d).as(:revision)
|
21
|
+
(first_report_number.capture(:first_number).as(:first_report_number) >>
|
22
|
+
(str("-") >>
|
23
|
+
dynamic do |_source, context|
|
24
|
+
# consume 4 numbers or any amount of numbers
|
25
|
+
# for document ids starting from 250
|
26
|
+
(if context.captures[:first_number] == "250"
|
27
|
+
digits
|
28
|
+
else
|
29
|
+
# do not consume edition numbers (parse only if have not 4 numbers)
|
30
|
+
year_digits.absent? >> digits
|
31
|
+
end >> number_suffix.maybe
|
32
|
+
# parse last number as edition if have 4 numbers
|
33
|
+
) | (str("NCNR") | str("PERMIS") | str("BFRL"))
|
34
|
+
end.as(:second_report_number)
|
35
|
+
# parse A-Z and abcd as part of report number
|
36
|
+
).maybe
|
37
|
+
)
|
38
|
+
end
|
39
|
+
|
40
|
+
rule(:edition) do
|
41
|
+
((str("e") >> year_digits.as(:edition_year)) | (str("-") >> year_digits.as(:edition_year)) |
|
42
|
+
(str("e") >> digits.as(:edition)))
|
43
|
+
end
|
44
|
+
|
45
|
+
rule(:revision) do
|
46
|
+
((str("rev") | str("r")) >> (digits >> match("[a-z]").maybe).as(:revision)) |
|
47
|
+
(str("-") >> digits.as(:revision)) |
|
48
|
+
(str("r") >> match("[a-z]").as(:revision)) |
|
49
|
+
(str("r") >> str("").as(:revision))
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
PUBLISHERS = YAML.load_file(File.join(File.dirname(__FILE__),
|
2
|
+
"../../../publishers.yaml"))
|
3
|
+
|
4
|
+
module Pubid::Nist
|
5
|
+
class Publisher
|
6
|
+
attr_accessor :publisher
|
7
|
+
|
8
|
+
def initialize(publisher:)
|
9
|
+
@publisher = publisher
|
10
|
+
end
|
11
|
+
|
12
|
+
def to_s(format = :short)
|
13
|
+
return @publisher if %i[short mr].include?(format)
|
14
|
+
|
15
|
+
PUBLISHERS[format.to_s][@publisher]
|
16
|
+
end
|
17
|
+
|
18
|
+
def ==(other)
|
19
|
+
other.publisher == @publisher
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.publishers_keys
|
23
|
+
PUBLISHERS["long"].keys
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.parse(code)
|
27
|
+
publisher = /(#{PUBLISHERS["long"].keys.join('|')})/.match(code)
|
28
|
+
return new(publisher: publisher.to_s) if publisher
|
29
|
+
|
30
|
+
publisher = /(#{PUBLISHERS["long"].values.join('|')})(?=\.|\s)/.match(code)
|
31
|
+
return new(publisher: PUBLISHERS["long"].key(publisher.to_s)) if publisher
|
32
|
+
|
33
|
+
publisher = /(#{PUBLISHERS["abbrev"].values.join('|')})(?=\.|\s)/.match(code)
|
34
|
+
return new(publisher: PUBLISHERS["abbrev"].key(publisher.to_s)) if publisher
|
35
|
+
|
36
|
+
new(publisher: "NIST")
|
37
|
+
end
|
38
|
+
|
39
|
+
def self.regexp
|
40
|
+
/(#{PUBLISHERS["long"].keys.join('|')})(?=\.|\s)/
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
SERIES = YAML.load_file(File.join(File.dirname(__FILE__), "../../../series.yaml"))
|
2
|
+
|
3
|
+
module Pubid::Nist
|
4
|
+
class Serie
|
5
|
+
attr_accessor :serie, :parsed
|
6
|
+
|
7
|
+
def initialize(serie:, parsed: nil)
|
8
|
+
@serie = serie
|
9
|
+
@parsed = parsed
|
10
|
+
end
|
11
|
+
|
12
|
+
def to_s(format = :short)
|
13
|
+
return @serie if format == :short
|
14
|
+
|
15
|
+
result = SERIES[format.to_s][@serie]
|
16
|
+
return @serie if result.nil? && format == :mr
|
17
|
+
|
18
|
+
return SERIES["long"][@serie] if result.nil?
|
19
|
+
|
20
|
+
result
|
21
|
+
end
|
22
|
+
|
23
|
+
def ==(other)
|
24
|
+
other.serie == @serie
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
STAGES = YAML.load_file(File.join(File.dirname(__FILE__), "../../../stages.yaml"))
|
2
|
+
|
3
|
+
module Pubid::Nist
|
4
|
+
class Stage
|
5
|
+
attr_accessor :stage
|
6
|
+
|
7
|
+
def initialize(stage)
|
8
|
+
@stage = stage
|
9
|
+
end
|
10
|
+
|
11
|
+
def to_s(format = :short)
|
12
|
+
return "" if nil?
|
13
|
+
|
14
|
+
case format
|
15
|
+
when :short
|
16
|
+
"(#{@stage})"
|
17
|
+
when :mr
|
18
|
+
@stage
|
19
|
+
else
|
20
|
+
STAGES[@stage]
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def nil?
|
25
|
+
@stage.nil?
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/lib/pubid/nist.rb
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "yaml"
|
4
|
+
require "parslet"
|
5
|
+
|
6
|
+
module Pubid
|
7
|
+
module Nist
|
8
|
+
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
require_relative "nist/serie"
|
13
|
+
require_relative "nist/parsers/default"
|
14
|
+
require_relative "nist/document_transform"
|
15
|
+
require_relative "nist/document_parser"
|
16
|
+
|
17
|
+
Dir[File.join(__dir__, 'nist/parsers', '*.rb')].each do |file|
|
18
|
+
require file
|
19
|
+
end
|
20
|
+
|
21
|
+
PARSERS_CLASSES = Pubid::Nist::Parsers.constants.select do |c|
|
22
|
+
Pubid::Nist::Parsers.const_get(c).is_a?(Class)
|
23
|
+
end.map do |parser_class|
|
24
|
+
parser = Pubid::Nist::Parsers.const_get(parser_class)
|
25
|
+
[parser.name.split("::").last.gsub(/(.)([A-Z])/, '\1 \2').upcase, parser]
|
26
|
+
end.to_h
|
27
|
+
|
28
|
+
require_relative "nist/document"
|
29
|
+
require_relative "nist/publisher"
|
30
|
+
require_relative "nist/stage"
|
31
|
+
require_relative "nist/errors"
|
32
|
+
require_relative "nist/nist_tech_pubs"
|
33
|
+
require_relative "nist/edition"
|
data/lib/pubid-nist.rb
ADDED
data/publishers.yaml
ADDED
data/series.yaml
ADDED
@@ -0,0 +1,139 @@
|
|
1
|
+
long:
|
2
|
+
NIST AMS: Advanced Manufacturing Standard
|
3
|
+
NIST BSS: Building Science Series
|
4
|
+
NBS BSS: Building Science Series
|
5
|
+
NBS BMS: Building Material Structures Report
|
6
|
+
NBS BRPD-CRPL-D: Basic Radio Propagation Predictions Series
|
7
|
+
NBS BH: Building and Housing Reports
|
8
|
+
NBS CRPL: Central Radio Propagation Laboratory Reports
|
9
|
+
NBS CRPL-F-A: CRPL Ionospheric Data
|
10
|
+
NBS CRPL-F-B: CRPL Solar-Geophysical Data
|
11
|
+
NBS IP: CRPL Ionospheric Predictions
|
12
|
+
NBS CIRC: Circulars
|
13
|
+
NBS CIS: Consumer Information Series
|
14
|
+
NBS CS: Commercial Standards
|
15
|
+
NBS CS-E: Commercial Standards (emergency)
|
16
|
+
NBS CSM: Commercial Standards Monthly
|
17
|
+
NBS FIPS: Federal Information Processing Standards Publication
|
18
|
+
FIPS PUB: Federal Information Processing Standards Publication
|
19
|
+
NIST GCR: Grant/Contract Reports
|
20
|
+
NBS GCR: Grant/Contract Reports
|
21
|
+
NIST HB: Handbook
|
22
|
+
NBS HB: Handbook
|
23
|
+
NBS HR: Hydraulic Research in the United States
|
24
|
+
NBS IRPL: Interservice Radio Propagation Laboratory
|
25
|
+
ITL Bulletin: ITL Bulletin
|
26
|
+
NIST LC: Letter Circular
|
27
|
+
NBS LC: Letter Circular
|
28
|
+
NIST MN: Monograph
|
29
|
+
NBS MN: Monograph
|
30
|
+
NBS MP: Miscellaneous Publications
|
31
|
+
NIST NCSTAR: National Construction Safety Team Report
|
32
|
+
NIST NSRDS: National Standard Reference Data Series
|
33
|
+
NSRDS-NBS: National Standard Reference Data Series
|
34
|
+
NIST IR: Interagency or Internal Report
|
35
|
+
NBS IR: Interagency or Internal Report
|
36
|
+
NIST OWMWP: Office of Weights and Measures White Papers
|
37
|
+
NBS PC: Photographic Circulars
|
38
|
+
NBS RPT: Reports
|
39
|
+
NIST PS: Voluntary Product Standards
|
40
|
+
NBS SIBS: Special Interior Ballistics Studies
|
41
|
+
NBS PS: Voluntary Product Standards
|
42
|
+
NIST SP: Special Publication
|
43
|
+
NBS SP: Special Publication
|
44
|
+
NIST TN: Technical Note
|
45
|
+
NBS TN: Technical Note
|
46
|
+
NBS TIBM: Technical Information on Building Materials
|
47
|
+
NIST TTB: Technology Transfer Brief
|
48
|
+
NIST DCI: Data Collection Instruments
|
49
|
+
NIST EAB: Economic Analysis Brief
|
50
|
+
NIST Other: Other
|
51
|
+
CSRC White Paper: Cybersecurity Resource Center White Paper
|
52
|
+
CSRC Book: Cybersecurity Resource Center Book
|
53
|
+
CSRC Use Case: Cybersecurity Resource Center Use Case
|
54
|
+
CSRC Building Block: Cybersecurity Resource Center Building Block
|
55
|
+
JPCRD: Journal of Physical and Chemical Reference Data
|
56
|
+
JRES: Journal of Research of NIST
|
57
|
+
abbrev:
|
58
|
+
NIST AMS: Adv. Man. Ser
|
59
|
+
NIST BSS: Bldg. Sci. Ser.
|
60
|
+
NBS BSS: Bldg. Sci. Ser.
|
61
|
+
NBS FIPS: Federal Inf. Process. Stds.
|
62
|
+
FIPS PUB: Federal Inf. Process. Stds.
|
63
|
+
NIST HB: Handb.
|
64
|
+
NBS HB: Handb.
|
65
|
+
NIST MN: Monogr.
|
66
|
+
NBS MN: Monogr.
|
67
|
+
NIST NCSTAR: Natl. Constr. Tm. Act Rpt.
|
68
|
+
NIST NSRDS: Natl. Stand. Ret. Data Ser.
|
69
|
+
NSRDS-NBS: Natl. Stand. Ret. Data Ser.
|
70
|
+
NIST PS: Prod. Stand.
|
71
|
+
NBS PS: Prod. Stand.
|
72
|
+
NIST SP: Spec. Publ.
|
73
|
+
NBS SP: Spec. Publ.
|
74
|
+
NIST TN: Tech. Note
|
75
|
+
NBS TN: Tech. Note
|
76
|
+
NIST DCI: Data Collect. Instr.
|
77
|
+
NIST Other: Other
|
78
|
+
CSRC White Paper: CSWP
|
79
|
+
CSRC Book: CSRC Book
|
80
|
+
CSRC Use Case: CSRC Use Case
|
81
|
+
CSRC Building Block: CSRC Building Block
|
82
|
+
JPCRD: J. Phys. & Chem. Ref. Data
|
83
|
+
JRES: J. Res. Natl. Inst. Stan.
|
84
|
+
mr:
|
85
|
+
NIST AMS: NIST.AMS
|
86
|
+
NIST BSS: NIST.BSS
|
87
|
+
NBS BSS: NBS.BSS
|
88
|
+
NBS BMS: NBS.BMS
|
89
|
+
NBS BRPD-CRPL-D: NBS.BRPD-CRPL-D
|
90
|
+
NBS BH: NBS.BH
|
91
|
+
NBS CRPL: NBS.CRPL
|
92
|
+
NBS CRPL-F-A: NBS.CRPL-F-A
|
93
|
+
NBS CRPL-F-B: NBS CRPL-F-B
|
94
|
+
NBS IP: NBS.IP
|
95
|
+
NBS CIRC: NBS.CIRC
|
96
|
+
NBS CIS: NBS.CIS
|
97
|
+
NBS CS: NBS.CS
|
98
|
+
NBS CS-E: NBS.CS-E
|
99
|
+
NBS CSM: NBS.CSM
|
100
|
+
NBS FIPS: NBS.FIPS
|
101
|
+
FIPS PUB: NIST.FIPS
|
102
|
+
NIST GCR: NIST.GCR
|
103
|
+
NBS GCR: NBS.GCR
|
104
|
+
NIST HB: NIST.HB
|
105
|
+
NBS HB: NBS.HB
|
106
|
+
NBS HR: NBS.HR
|
107
|
+
NBS IRPL: NBS.IRPL
|
108
|
+
ITL Bulletin: NIST.ITLB
|
109
|
+
NIST LC: NIST.LC
|
110
|
+
NBS LC: NBS.LC
|
111
|
+
NIST MN: NIST.MN
|
112
|
+
NBS MN: NBS.MN
|
113
|
+
NBS MP: NBS.MP
|
114
|
+
NIST NCSTAR: NIST.NCSTAR
|
115
|
+
NIST NSRDS: NIST.NSRDS
|
116
|
+
NSRDS-NBS: NBS.NSRDS
|
117
|
+
NIST IR: NIST.IR
|
118
|
+
NBS IR: NBS.IR
|
119
|
+
NIST OWMWP: NIST.OWMWP
|
120
|
+
NBS PC: NBS.PC
|
121
|
+
NBS RPT: NBS.RPT
|
122
|
+
NIST PS: NIST.PS
|
123
|
+
NBS SIBS: NBS.SIBS
|
124
|
+
NBS PS: NBS.PS
|
125
|
+
NIST SP: NIST.SP
|
126
|
+
NBS SP: NBS.SP
|
127
|
+
NIST TN: NIST.TN
|
128
|
+
NBS TN: NBS.TN
|
129
|
+
NBS TIBM: NBS.TIBM
|
130
|
+
NIST TTB: NIST.TTB
|
131
|
+
NIST DCI: NIST.DCI
|
132
|
+
NIST EAB: NIST.EAB
|
133
|
+
NIST Other: NIST.O
|
134
|
+
CSRC White Paper: NIST.CSWP
|
135
|
+
CSRC Book: NIST.CSB
|
136
|
+
CSRC Use Case: NIST.CSUC
|
137
|
+
CSRC Building Block: NIST.CSBB
|
138
|
+
JPCRD: JPCRD
|
139
|
+
JRES: NIST.JRES
|