metanorma-standoc 1.2.2 → 1.2.3
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/.travis.yml +9 -1
- data/Gemfile.lock +36 -35
- data/appveyor.yml +1 -1
- data/lib/asciidoctor/standoc/cleanup.rb +3 -2
- data/lib/asciidoctor/standoc/cleanup_ref.rb +6 -5
- data/lib/asciidoctor/standoc/inline.rb +5 -4
- data/lib/asciidoctor/standoc/macros.rb +10 -6
- data/lib/asciidoctor/standoc/ref.rb +0 -3
- data/lib/asciidoctor/standoc/validate.rb +1 -1
- data/lib/metanorma/standoc.rb +5 -1
- data/lib/metanorma/standoc/latexml_requirement.rb +47 -0
- data/lib/metanorma/standoc/processor.rb +2 -0
- data/lib/metanorma/standoc/requirement.rb +13 -0
- data/lib/metanorma/standoc/version.rb +1 -1
- data/metanorma-standoc.gemspec +2 -1
- data/spec/asciidoctor-standoc/cleanup_spec.rb +6 -8
- data/spec/asciidoctor-standoc/isobib_cache_spec.rb +22 -22
- data/spec/asciidoctor-standoc/refs_dl_spec.rb +75 -38
- data/spec/asciidoctor-standoc/refs_spec.rb +15 -20
- data/spec/vcr_cassettes/dated_iso_ref_joint_iso_iec.yml +166 -583
- data/spec/vcr_cassettes/isobib_get_123.yml +54 -528
- data/spec/vcr_cassettes/isobib_get_123_2001.yml +205 -0
- data/spec/vcr_cassettes/isobib_get_124.yml +113 -1047
- data/spec/vcr_cassettes/rfcbib_get_rfc8341.yml +5 -58
- data/spec/vcr_cassettes/separates_iev_citations_by_top_level_clause.yml +57 -50
- metadata +21 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2fa7cc0e4e5c2924e92c7c4dd3cf6b55a3cc5374a9a65b1fe4a6b6f25bbe4130
|
|
4
|
+
data.tar.gz: 234c872403176e8a697f7e8380be547be37e774e7ac39a28aed6fc1142d31668
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cbef9d2a3d3f39105b100bd122153af812322aec99e4b05fc83f45579d0b1cc59d8606a860be9f3a104f3169557bf61cd5949c4424fd3cd692cbb20a5b7775c6
|
|
7
|
+
data.tar.gz: 7c73c0f914d76af8b2b4f3be93e68c49baeea4791976f423ae4198b9d99f1066ee21616edcbfba660d0a2dc91bb87f6d014e01726018468e177db8031af550a5
|
data/.travis.yml
CHANGED
|
@@ -4,14 +4,22 @@ os:
|
|
|
4
4
|
- linux
|
|
5
5
|
- osx
|
|
6
6
|
rvm:
|
|
7
|
+
- 2.6
|
|
7
8
|
- 2.5
|
|
8
9
|
- 2.4
|
|
9
10
|
- ruby-head
|
|
10
11
|
before_install:
|
|
12
|
+
- nvm install 8
|
|
13
|
+
- npm install -g puppeteer
|
|
14
|
+
- npm install
|
|
15
|
+
- curl -L https://cpanmin.us | perl - --sudo App::cpanminus
|
|
16
|
+
- sudo cpanm --notest LaTeXML@0.8.4
|
|
17
|
+
- curl -L https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/travis.sh | bash
|
|
18
|
+
- plantuml -version
|
|
11
19
|
- gem install bundler -v 2.0.1
|
|
12
20
|
- bundle update
|
|
13
21
|
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sudo bash -c "apt-get update && curl -L https://raw.githubusercontent.com/metanorma/metanorma-linux-setup/master/ubuntu.sh | bash" ; fi
|
|
14
|
-
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install --HEAD https://raw.githubusercontent.com/metanorma/homebrew-metanorma/master/Formula/metanorma.rb ; fi
|
|
22
|
+
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then travis_wait brew install --HEAD https://raw.githubusercontent.com/metanorma/homebrew-metanorma/master/Formula/metanorma.rb ; fi
|
|
15
23
|
matrix:
|
|
16
24
|
allow_failures:
|
|
17
25
|
- rvm: ruby-head
|
data/Gemfile.lock
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
metanorma-standoc (1.2.
|
|
4
|
+
metanorma-standoc (1.2.3)
|
|
5
5
|
asciidoctor (~> 1.5.7)
|
|
6
6
|
concurrent-ruby
|
|
7
7
|
html2doc (~> 0.8.11)
|
|
8
8
|
iev (~> 0.2.1)
|
|
9
9
|
isodoc (~> 0.10.0)
|
|
10
|
-
relaton (~> 0.
|
|
10
|
+
relaton (~> 0.5.0)
|
|
11
|
+
relaton-iev (~> 0.1.0)
|
|
11
12
|
ruby-jing
|
|
12
13
|
sterile (~> 1.0.14)
|
|
13
14
|
unicode2latex (~> 0.0.1)
|
|
@@ -50,7 +51,7 @@ GEM
|
|
|
50
51
|
guard (~> 2.1)
|
|
51
52
|
guard-compat (~> 1.1)
|
|
52
53
|
rspec (>= 2.99.0, < 4.0)
|
|
53
|
-
hashdiff (0.
|
|
54
|
+
hashdiff (1.0.0)
|
|
54
55
|
html2doc (0.8.12)
|
|
55
56
|
asciimath (~> 1.0.7)
|
|
56
57
|
htmlentities (~> 4.3.4)
|
|
@@ -64,7 +65,7 @@ GEM
|
|
|
64
65
|
iev (0.2.2)
|
|
65
66
|
nokogiri
|
|
66
67
|
image_size (2.0.2)
|
|
67
|
-
isodoc (0.10.
|
|
68
|
+
isodoc (0.10.3)
|
|
68
69
|
asciimath
|
|
69
70
|
html2doc (~> 0.8.11)
|
|
70
71
|
htmlentities (~> 4.3.4)
|
|
@@ -91,10 +92,10 @@ GEM
|
|
|
91
92
|
mime-types (3.2.2)
|
|
92
93
|
mime-types-data (~> 3.2015)
|
|
93
94
|
mime-types-data (3.2019.0331)
|
|
94
|
-
mini_portile2 (2.
|
|
95
|
+
mini_portile2 (2.4.0)
|
|
95
96
|
nenv (0.3.0)
|
|
96
|
-
nokogiri (1.
|
|
97
|
-
mini_portile2 (~> 2.
|
|
97
|
+
nokogiri (1.10.3)
|
|
98
|
+
mini_portile2 (~> 2.4.0)
|
|
98
99
|
notiffany (0.1.1)
|
|
99
100
|
nenv (~> 0.1)
|
|
100
101
|
shellany (~> 0.0)
|
|
@@ -108,44 +109,44 @@ GEM
|
|
|
108
109
|
method_source (~> 0.9.0)
|
|
109
110
|
public_suffix (3.1.1)
|
|
110
111
|
rainbow (3.0.0)
|
|
111
|
-
rake (12.3.
|
|
112
|
+
rake (12.3.3)
|
|
112
113
|
rb-fsevent (0.10.3)
|
|
113
114
|
rb-inotify (0.10.0)
|
|
114
115
|
ffi (~> 1.0)
|
|
115
|
-
relaton (0.
|
|
116
|
+
relaton (0.5.0)
|
|
116
117
|
algoliasearch
|
|
117
|
-
relaton-gb (~> 0.
|
|
118
|
-
relaton-iec (~> 0.
|
|
119
|
-
relaton-ietf (~> 0.
|
|
120
|
-
relaton-iso (~> 0.
|
|
121
|
-
relaton-iso-bib (~> 0.
|
|
122
|
-
relaton-itu (~> 0.
|
|
123
|
-
relaton-nist (~> 0.
|
|
124
|
-
relaton-bib (0.
|
|
118
|
+
relaton-gb (~> 0.6.0)
|
|
119
|
+
relaton-iec (~> 0.4.0)
|
|
120
|
+
relaton-ietf (~> 0.6.0)
|
|
121
|
+
relaton-iso (~> 0.6.0)
|
|
122
|
+
relaton-iso-bib (~> 0.3.0)
|
|
123
|
+
relaton-itu (~> 0.3.0)
|
|
124
|
+
relaton-nist (~> 0.3.0)
|
|
125
|
+
relaton-bib (0.3.1)
|
|
125
126
|
addressable
|
|
126
|
-
nokogiri (~> 1.
|
|
127
|
-
relaton-gb (0.
|
|
127
|
+
nokogiri (~> 1.10)
|
|
128
|
+
relaton-gb (0.6.0)
|
|
128
129
|
cnccs (~> 0.1.1)
|
|
129
130
|
gb-agencies (~> 0.0.1)
|
|
130
|
-
relaton-iso-bib (~> 0.
|
|
131
|
-
relaton-iec (0.
|
|
131
|
+
relaton-iso-bib (~> 0.3.0)
|
|
132
|
+
relaton-iec (0.4.1)
|
|
132
133
|
addressable
|
|
133
|
-
relaton-iso-bib (~> 0.
|
|
134
|
-
relaton-ietf (0.
|
|
135
|
-
relaton-iso-bib (~> 0.
|
|
136
|
-
relaton-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
relaton-
|
|
140
|
-
|
|
134
|
+
relaton-iso-bib (~> 0.3.0)
|
|
135
|
+
relaton-ietf (0.6.0)
|
|
136
|
+
relaton-iso-bib (~> 0.3.0)
|
|
137
|
+
relaton-iev (0.1.1)
|
|
138
|
+
relaton (~> 0.5.0)
|
|
139
|
+
relaton-iso (0.6.1)
|
|
140
|
+
relaton-iec (~> 0.4.0)
|
|
141
|
+
relaton-iso-bib (~> 0.3.0)
|
|
142
|
+
relaton-iso-bib (0.3.1)
|
|
141
143
|
isoics (~> 0.1.6)
|
|
142
|
-
|
|
143
|
-
relaton-bib (~> 0.2.0)
|
|
144
|
+
relaton-bib (~> 0.3.0)
|
|
144
145
|
ruby_deep_clone (~> 0.8.0)
|
|
145
|
-
relaton-itu (0.
|
|
146
|
-
relaton-iso-bib (~> 0.
|
|
147
|
-
relaton-nist (0.
|
|
148
|
-
relaton-bib (~> 0.
|
|
146
|
+
relaton-itu (0.3.0)
|
|
147
|
+
relaton-iso-bib (~> 0.3.0)
|
|
148
|
+
relaton-nist (0.3.0)
|
|
149
|
+
relaton-bib (~> 0.3.0)
|
|
149
150
|
rubyzip
|
|
150
151
|
roman-numerals (0.3.0)
|
|
151
152
|
rspec (3.8.0)
|
data/appveyor.yml
CHANGED
|
@@ -2,6 +2,7 @@ version: '{build}'
|
|
|
2
2
|
|
|
3
3
|
environment:
|
|
4
4
|
matrix:
|
|
5
|
+
- RUBY_VERSION: 26
|
|
5
6
|
- RUBY_VERSION: 25
|
|
6
7
|
- RUBY_VERSION: 24
|
|
7
8
|
- RUBY_VERSION: _trunk
|
|
@@ -16,7 +17,6 @@ install:
|
|
|
16
17
|
- refreshenv
|
|
17
18
|
- set PATH=C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;%PATH%
|
|
18
19
|
- where latexmlmath
|
|
19
|
-
- chcp 65001
|
|
20
20
|
|
|
21
21
|
build_script:
|
|
22
22
|
- set PATH=C:\Ruby%RUBY_VERSION%\bin;%PATH%
|
|
@@ -7,6 +7,7 @@ require "pp"
|
|
|
7
7
|
require_relative "./cleanup_block.rb"
|
|
8
8
|
require_relative "./cleanup_footnotes.rb"
|
|
9
9
|
require_relative "./cleanup_ref.rb"
|
|
10
|
+
require "relaton_iev"
|
|
10
11
|
|
|
11
12
|
module Asciidoctor
|
|
12
13
|
module Standoc
|
|
@@ -42,8 +43,8 @@ module Asciidoctor
|
|
|
42
43
|
reference_names(xmldoc)
|
|
43
44
|
xref_cleanup(xmldoc)
|
|
44
45
|
origin_cleanup(xmldoc)
|
|
45
|
-
iev_cleanup(xmldoc)
|
|
46
|
-
element_name_cleanup(xmldoc)
|
|
46
|
+
RelatonIev::iev_cleanup(xmldoc, @bibdb)
|
|
47
|
+
element_name_cleanup(xmldoc)
|
|
47
48
|
bpart_cleanup(xmldoc)
|
|
48
49
|
quotesource_cleanup(xmldoc)
|
|
49
50
|
para_cleanup(xmldoc)
|
|
@@ -122,6 +122,7 @@ module Asciidoctor
|
|
|
122
122
|
end
|
|
123
123
|
end
|
|
124
124
|
|
|
125
|
+
=begin
|
|
125
126
|
# converts generic IEV citation to citation of IEC 60050-n
|
|
126
127
|
# assumes IEV citations are of form
|
|
127
128
|
# <eref type="inline" bibitemid="a" citeas="IEC 60050">
|
|
@@ -146,7 +147,7 @@ module Asciidoctor
|
|
|
146
147
|
parts.sort.each do |p|
|
|
147
148
|
hit = @bibdb&.fetch("IEC 60050-#{p}", nil, keep_year: true) || next
|
|
148
149
|
new_iev += hit.to_xml.sub(/ id="[^"]+"/, %{ id="IEC60050-#{p}"})
|
|
149
|
-
date = hit.
|
|
150
|
+
date = hit.date[0].on.year
|
|
150
151
|
xmldoc.xpath("//*[@citeas = 'IEC 60050-#{p}:2011']").each do |x|
|
|
151
152
|
x["citeas"] = x["citeas"].sub(/:2011$/, ":#{date}")
|
|
152
153
|
end
|
|
@@ -160,11 +161,11 @@ module Asciidoctor
|
|
|
160
161
|
parts = linksIev2iec60050part(xmldoc)
|
|
161
162
|
refsIev2iec60050part(xmldoc, parts, iev)
|
|
162
163
|
end
|
|
164
|
+
=end
|
|
163
165
|
|
|
164
166
|
def ref_dl_cleanup(xmldoc)
|
|
165
167
|
xmldoc.xpath("//clause[@bibitem = 'true']").each do |c|
|
|
166
168
|
bib = dl_bib_extract(c) or next
|
|
167
|
-
#bibitemxml = Relaton::Bibdata.new(bib).to_xml or next
|
|
168
169
|
bibitemxml = RelatonBib::BibliographicItem.new(
|
|
169
170
|
RelatonBib::hash_to_bib(bib)).to_xml or next
|
|
170
171
|
bibitem = Nokogiri::XML(bibitemxml)
|
|
@@ -225,13 +226,13 @@ module Asciidoctor
|
|
|
225
226
|
end
|
|
226
227
|
c.xpath("./clause").each do |c1|
|
|
227
228
|
key = c1&.at("./title")&.text&.downcase&.strip
|
|
228
|
-
next unless %w(
|
|
229
|
+
next unless %w(contributor relation series).include? key
|
|
229
230
|
add_to_hash(bib, key, dl_bib_extract(c1, true))
|
|
230
231
|
end
|
|
231
232
|
if !nested and c.at("./title")
|
|
232
233
|
title = c.at("./title").remove.children.to_xml
|
|
233
|
-
bib["
|
|
234
|
-
bib["
|
|
234
|
+
bib["title"] = bib["title"] ? Array(bib["title"]) : []
|
|
235
|
+
bib["title"] << title if !title.empty?
|
|
235
236
|
end
|
|
236
237
|
bib
|
|
237
238
|
end
|
|
@@ -95,9 +95,9 @@ module Asciidoctor
|
|
|
95
95
|
|
|
96
96
|
def xml_encode(text)
|
|
97
97
|
HTMLEntities.new.encode(text, :basic, :hexadecimal).
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
98
|
+
gsub(/&gt;/, ">").gsub(/\&lt;/, "<").gsub(/&amp;/, "&").
|
|
99
|
+
gsub(/>/, ">").gsub(/</, "<").gsub(/&/, "&").
|
|
100
|
+
gsub(/"/, '"').gsub(/
/, "\n")
|
|
101
101
|
end
|
|
102
102
|
|
|
103
103
|
def stem_parse(text, xml, style)
|
|
@@ -106,8 +106,9 @@ module Asciidoctor
|
|
|
106
106
|
math = xml_encode(text)
|
|
107
107
|
xml.stem math, **{ type: "MathML" }
|
|
108
108
|
elsif style == :latexmath
|
|
109
|
+
latex_cmd = Metanorma::Standoc::Requirements[:latexml].cmd
|
|
109
110
|
latexmlmath_input = Unicode2LaTeX::unicode2latex(text).gsub(/'/, '\\').gsub(/\n/, " ")
|
|
110
|
-
latex = IO.popen(
|
|
111
|
+
latex = IO.popen(latex_cmd, "r+", external_encoding: "UTF-8") do |io|
|
|
111
112
|
io.write(latexmlmath_input)
|
|
112
113
|
io.close_write
|
|
113
114
|
io.read
|
|
@@ -86,13 +86,15 @@ module Asciidoctor
|
|
|
86
86
|
def self.generate_file parent, reader
|
|
87
87
|
localdir = Utils::localdir(parent.document)
|
|
88
88
|
fn = save_plantuml parent, reader, localdir
|
|
89
|
-
|
|
89
|
+
umlfile = Pathname.new(localdir) + "plantuml" + "#{fn}.pml"
|
|
90
|
+
system "plantuml #{umlfile}"
|
|
90
91
|
outfile = parent.image_uri("#{fn}.png")
|
|
91
92
|
if outfile == "#{fn}.png"
|
|
92
|
-
"plantuml
|
|
93
|
+
(Pathname.new("plantuml") + "#{fn}.png").to_s
|
|
93
94
|
else
|
|
94
|
-
FileUtils.mv "#{
|
|
95
|
-
|
|
95
|
+
FileUtils.mv (Pathname.new(localdir) + "plantuml" + "#{fn}.png").to_s,
|
|
96
|
+
(Pathname.new(localdir) + outfile).to_s
|
|
97
|
+
(Pathname.new("#{fn}.png")).to_s
|
|
96
98
|
end
|
|
97
99
|
end
|
|
98
100
|
|
|
@@ -102,8 +104,10 @@ module Asciidoctor
|
|
|
102
104
|
src = "@startuml\n#{src}\n@enduml\n"
|
|
103
105
|
/^@startuml (?<fn>[^\n]+)\n/ =~ src
|
|
104
106
|
fn ||= UUIDTools::UUID.random_create
|
|
105
|
-
|
|
106
|
-
|
|
107
|
+
path = Pathname.new(localdir) + "plantuml"
|
|
108
|
+
FileUtils.mkdir_p path.to_s # "#{localdir}/plantuml"
|
|
109
|
+
#File.open("#{localdir}plantuml/#{fn}.pml", "w") { |f| f.write src }
|
|
110
|
+
File.open((path + "#{fn}.pml").to_s, "w") { |f| f.write src }
|
|
107
111
|
fn
|
|
108
112
|
end
|
|
109
113
|
|
|
@@ -109,9 +109,6 @@ module Asciidoctor
|
|
|
109
109
|
return nil if hit.nil?
|
|
110
110
|
xml.parent.add_child(Utils::smart_render_xml(hit))
|
|
111
111
|
xml
|
|
112
|
-
rescue Algolia::AlgoliaProtocolError
|
|
113
|
-
warn "Could not retrieve #{code}: no access to online site"
|
|
114
|
-
nil
|
|
115
112
|
rescue RelatonBib::RequestError
|
|
116
113
|
warn "Could not retrieve #{code}: no access to online site"
|
|
117
114
|
nil
|
data/lib/metanorma/standoc.rb
CHANGED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
require_relative "./requirement"
|
|
2
|
+
|
|
3
|
+
module Metanorma
|
|
4
|
+
module Standoc
|
|
5
|
+
class LatexmlRequirement < Requirement
|
|
6
|
+
def initialize
|
|
7
|
+
@recommended_version = '0.8.4'
|
|
8
|
+
@minimal_version = '0.8.0'
|
|
9
|
+
version_output, = Open3.capture2e("latexml --VERSION")
|
|
10
|
+
@actual_version = version_output&.match(%r{\d+(.\d+)*})
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def satisfied
|
|
14
|
+
version = @actual_version
|
|
15
|
+
|
|
16
|
+
if version.to_s.empty?
|
|
17
|
+
abort "LaTeXML not found in PATH, please make sure that you installed LaTeXML"
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
if Gem::Version.new(version) < Gem::Version.new(@minimal_version)
|
|
21
|
+
abort "Minimal supported LaTeXML version is #{@minimal_version} "\
|
|
22
|
+
"found #{version}, recommended version is #{@recommended_version}"
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
if Gem::Version.new(version) < Gem::Version.new(@recommended_version)
|
|
26
|
+
version = "unknown" if version.to_s.empty?
|
|
27
|
+
header_msg = "WARNING latexmlmath version #{version} below #{@recommended_version}!"
|
|
28
|
+
suggestion = if Gem.win_platform?
|
|
29
|
+
"cmd encoding is set to UTF-8 with `chcp 65001`"
|
|
30
|
+
else
|
|
31
|
+
"terminal encoding is set to UTF-8 with `export LANG=en_US.UTF-8`"
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
warn "#{header_msg} Please sure that #{suggestion} command"
|
|
35
|
+
|
|
36
|
+
@cmd = "latexmlmath --preload=amsmath -- -"
|
|
37
|
+
else
|
|
38
|
+
@cmd = "latexmlmath --preload=amsmath --inputencoding=UTF-8 -- -"
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def cmd
|
|
43
|
+
@cmd
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
data/metanorma-standoc.gemspec
CHANGED
|
@@ -30,7 +30,8 @@ Gem::Specification.new do |spec|
|
|
|
30
30
|
spec.add_dependency "ruby-jing"
|
|
31
31
|
spec.add_dependency "isodoc", "~> 0.10.0"
|
|
32
32
|
spec.add_dependency "iev", "~> 0.2.1"
|
|
33
|
-
spec.add_dependency "relaton", "~> 0.
|
|
33
|
+
spec.add_dependency "relaton", "~> 0.5.0"
|
|
34
|
+
spec.add_dependency "relaton-iev", "~> 0.1.0"
|
|
34
35
|
spec.add_dependency "sterile", "~> 1.0.14"
|
|
35
36
|
spec.add_dependency "concurrent-ruby"
|
|
36
37
|
spec.add_dependency "html2doc", "~> 0.8.11"
|
|
@@ -974,10 +974,9 @@ r = 1 %</stem>
|
|
|
974
974
|
</term></terms></sections><bibliography><references id="_" obligation="informative">
|
|
975
975
|
<title>Normative References</title>
|
|
976
976
|
<bibitem type="standard" id="IEC60050-102">
|
|
977
|
-
<title type="title-main" format="text/plain" language="en" script="Latn">
|
|
978
|
-
<title type="title-
|
|
979
|
-
<title type="
|
|
980
|
-
<title type="main" format="text/plain" language="en" script="Latn">Part 102: Mathematics - International Electrotechnical Vocabulary - General concepts and linear algebra</title>
|
|
977
|
+
<title type="title-main" format="text/plain" language="en" script="Latn">International Electrotechnical Vocabulary (IEV)</title>
|
|
978
|
+
<title type="title-part" format="text/plain" language="en" script="Latn">Part 102: Mathematics - General concepts and linear algebra</title>
|
|
979
|
+
<title type="main" format="text/plain" language="en" script="Latn">International Electrotechnical Vocabulary (IEV) - Part 102: Mathematics - General concepts and linear algebra</title>
|
|
981
980
|
<uri type="src">https://webstore.iec.ch/publication/160</uri>
|
|
982
981
|
<uri type="obp">/preview/info_iec60050-102%7Bed1.0%7Db.pdf</uri>
|
|
983
982
|
<docidentifier type="IEC">IEC 60050-102:2007</docidentifier>
|
|
@@ -1011,10 +1010,9 @@ r = 1 %</stem>
|
|
|
1011
1010
|
</owner>
|
|
1012
1011
|
</copyright>
|
|
1013
1012
|
</bibitem><bibitem type="standard" id="IEC60050-103">
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
<title type="
|
|
1017
|
-
<title type="main" format="text/plain" language="en" script="Latn">Part 103: Mathematics - International Electrotechnical Vocabulary - Functions </title>
|
|
1013
|
+
<title type="title-main" format="text/plain" language="en" script="Latn">International Electrotechnical Vocabulary (IEV)</title>
|
|
1014
|
+
<title type="title-part" format="text/plain" language="en" script="Latn">Part 103: Mathematics - Functions</title>
|
|
1015
|
+
<title type="main" format="text/plain" language="en" script="Latn">International Electrotechnical Vocabulary (IEV) - Part 103: Mathematics - Functions </title>
|
|
1018
1016
|
<uri type="src">https://webstore.iec.ch/publication/161</uri>
|
|
1019
1017
|
<uri type="obp">/preview/info_iec60050-103%7Bed1.0%7Db.pdf</uri>
|
|
1020
1018
|
<docidentifier type="IEC">IEC 60050-103:2009</docidentifier>
|