metanorma-ieee 1.2.11 → 1.2.13

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3cf2108b7540e3b014be3079818e8008f2932ba21332c63ca606ec9e914728e9
4
- data.tar.gz: 89d85125b51bc5575c43a8acee99e6c59e1a4a16562cf127e76dde8475711d05
3
+ metadata.gz: bc4895281aceec332b1a16b2d481ffcaf9e336ba9e2c49cfdc2d81015e85998c
4
+ data.tar.gz: ca5a9aae41560f57de081927bc688a5151c9deee0c0c1a75511f87de8e088f9a
5
5
  SHA512:
6
- metadata.gz: eb3f2d341908bfa3dd0a19f9257c55e3d443cd434d45a421808a16d7745d68426e8a7d446071c01b1b7752974bf778f924a9b6d30f1889bb332136095b26e16d
7
- data.tar.gz: a269a62bbb7693664630082ac44138014fb80951e1fdd6180304270b58617b9baeab83dd22187eb3862aa72e6b48aec25ca0c6f08c4d7d7aad62fbc8cbcf3b95
6
+ metadata.gz: 42db1434c3b10a3d6389b5708f925a78fb5074aab2e2f9b29ec479e247733771f08fba5d0169ebb3e65f5a8fb7dcf1d9567728bdbc3fa65eb79d50c79eaaca80
7
+ data.tar.gz: 6fc8000efd5d636ad4e9c4ed869627e4a47344c2055597d8392cd45cc1d1064370a7e1cf03e10c46e32ced8e2a7bad73f63b3bce1aea720653a386a893f6315e
@@ -50,7 +50,8 @@ class Html2Doc
50
50
  l["class"] ||= list_style(type, level, "Middle")
51
51
  next unless l&.first_element_child&.name == "p"
52
52
 
53
- l["style"] += (l.first_element_child["style"]&.sub(/mso-list[^;]+;/, "") || "")
53
+ l["style"] +=
54
+ l.first_element_child["style"]&.sub(/mso-list[^;]+;/, "") || ""
54
55
  l.first_element_child.replace(l.first_element_child.children)
55
56
  end
56
57
  list.replace(list.children)
@@ -13,6 +13,7 @@ table_of_contents: Contents
13
13
  viewed: accessed
14
14
  adapted_from: "adapted from "
15
15
  references: References
16
+ no_identifier: null
16
17
  doctype_abbrev:
17
18
  standard: Std.
18
19
  recommended-practice: Rec. Prac.
@@ -9887,18 +9887,33 @@
9887
9887
 
9888
9888
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name()='localityStack']"/>
9889
9889
 
9890
+ <xsl:variable xmlns:redirect="http://xml.apache.org/xalan/redirect" name="pdfAttachmentsList_">
9891
+ <xsl:for-each select="//*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'attachment']">
9892
+ <attachment filename="{@name}"/>
9893
+ </xsl:for-each>
9894
+ </xsl:variable>
9895
+ <xsl:variable xmlns:redirect="http://xml.apache.org/xalan/redirect" name="pdfAttachmentsList" select="xalan:nodeset($pdfAttachmentsList_)"/>
9896
+
9890
9897
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name()='link']" name="link">
9898
+ <xsl:variable name="target_normalized" select="translate(@target, '\', '/')"/>
9899
+ <xsl:variable name="target_attachment_name" select="substring-after($target_normalized, '_attachments/')"/>
9891
9900
  <xsl:variable name="target">
9892
9901
  <xsl:choose>
9893
9902
  <xsl:when test="@updatetype = 'true'">
9894
9903
  <xsl:value-of select="concat(normalize-space(@target), '.pdf')"/>
9895
9904
  </xsl:when>
9905
+ <!-- link to the PDF attachment -->
9906
+ <xsl:when test="$pdfAttachmentsList//attachment[@filename = current()/@target]">
9907
+ <xsl:value-of select="concat('url(embedded-file:', @target, ')')"/>
9908
+ </xsl:when>
9909
+ <!-- <xsl:when test="starts-with($target_normalized, '_') and contains($target_normalized, '_attachments/') and $pdfAttachmentsList//attachment[@filename = $target_attachment_name]">
9910
+ <xsl:value-of select="concat('url(embedded-file:', $target_attachment_name, ')')"/>
9911
+ </xsl:when>
9896
9912
  <xsl:when test="contains(@target, concat('_', $inputxml_filename_prefix, '_attachments'))">
9897
- <!-- link to the PDF attachment -->
9898
9913
  <xsl:variable name="target_" select="translate(@target, '\', '/')"/>
9899
9914
  <xsl:variable name="target__" select="substring-after($target_, concat('_', $inputxml_filename_prefix, '_attachments', '/'))"/>
9900
9915
  <xsl:value-of select="concat('url(embedded-file:', $target__, ')')"/>
9901
- </xsl:when>
9916
+ </xsl:when> -->
9902
9917
  <xsl:otherwise>
9903
9918
  <xsl:value-of select="normalize-space(@target)"/>
9904
9919
  </xsl:otherwise>
@@ -11553,8 +11568,11 @@
11553
11568
  </xsl:template>
11554
11569
 
11555
11570
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'strong']" mode="contents_item">
11571
+ <xsl:param name="element"/>
11556
11572
  <xsl:copy>
11557
- <xsl:apply-templates mode="contents_item"/>
11573
+ <xsl:apply-templates mode="contents_item">
11574
+ <xsl:with-param name="element" select="$element"/>
11575
+ </xsl:apply-templates>
11558
11576
  </xsl:copy>
11559
11577
  </xsl:template>
11560
11578
 
@@ -11621,7 +11639,10 @@
11621
11639
 
11622
11640
  <!-- Note: to enable the addition of character span markup with semantic styling for DIS Word output -->
11623
11641
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'span']" mode="contents_item">
11624
- <xsl:apply-templates mode="contents_item"/>
11642
+ <xsl:param name="element"/>
11643
+ <xsl:apply-templates mode="contents_item">
11644
+ <xsl:with-param name="element" select="$element"/>
11645
+ </xsl:apply-templates>
11625
11646
  </xsl:template>
11626
11647
 
11627
11648
  <!-- =============== -->
@@ -14538,6 +14559,17 @@
14538
14559
  <xsl:copy-of select="."/>
14539
14560
  </xsl:template>
14540
14561
 
14562
+ <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'metanorma-extension']/*[local-name() = 'attachment']" mode="update_xml_step1">
14563
+ <xsl:copy>
14564
+ <xsl:copy-of select="@*"/>
14565
+ <xsl:variable name="name_filepath" select="concat($inputxml_basepath, @name)"/>
14566
+ <xsl:variable name="file_exists" select="normalize-space(java:exists(java:java.io.File.new($name_filepath)))"/>
14567
+ <xsl:if test="$file_exists = 'false'"> <!-- copy attachment content only if file on disk doesnt exist -->
14568
+ <xsl:value-of select="."/>
14569
+ </xsl:if>
14570
+ </xsl:copy>
14571
+ </xsl:template>
14572
+
14541
14573
  <!-- add @id, mandatory for table auto-layout algorithm -->
14542
14574
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'dl' or local-name() = 'table'][not(@id)]" mode="update_xml_step1">
14543
14575
  <xsl:copy>
@@ -15514,7 +15546,8 @@
15514
15546
  </xsl:when>
15515
15547
  <xsl:otherwise>
15516
15548
  <!-- _{filename}_attachments -->
15517
- <xsl:variable name="url" select="concat('url(file:///',$inputxml_basepath, '_', $inputxml_filename_prefix, '_attachments', '/', @name, ')')"/>
15549
+ <!-- <xsl:variable name="url" select="concat('url(file:///',$inputxml_basepath, '_', $inputxml_filename_prefix, '_attachments', '/', @name, ')')"/> -->
15550
+ <xsl:variable name="url" select="concat('url(file:///',$inputxml_basepath , @name, ')')"/>
15518
15551
  <pdf:embedded-file src="{$url}" filename="{@name}"/>
15519
15552
  </xsl:otherwise>
15520
15553
  </xsl:choose>
@@ -9887,18 +9887,33 @@
9887
9887
 
9888
9888
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name()='localityStack']"/>
9889
9889
 
9890
+ <xsl:variable xmlns:redirect="http://xml.apache.org/xalan/redirect" name="pdfAttachmentsList_">
9891
+ <xsl:for-each select="//*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'attachment']">
9892
+ <attachment filename="{@name}"/>
9893
+ </xsl:for-each>
9894
+ </xsl:variable>
9895
+ <xsl:variable xmlns:redirect="http://xml.apache.org/xalan/redirect" name="pdfAttachmentsList" select="xalan:nodeset($pdfAttachmentsList_)"/>
9896
+
9890
9897
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name()='link']" name="link">
9898
+ <xsl:variable name="target_normalized" select="translate(@target, '\', '/')"/>
9899
+ <xsl:variable name="target_attachment_name" select="substring-after($target_normalized, '_attachments/')"/>
9891
9900
  <xsl:variable name="target">
9892
9901
  <xsl:choose>
9893
9902
  <xsl:when test="@updatetype = 'true'">
9894
9903
  <xsl:value-of select="concat(normalize-space(@target), '.pdf')"/>
9895
9904
  </xsl:when>
9905
+ <!-- link to the PDF attachment -->
9906
+ <xsl:when test="$pdfAttachmentsList//attachment[@filename = current()/@target]">
9907
+ <xsl:value-of select="concat('url(embedded-file:', @target, ')')"/>
9908
+ </xsl:when>
9909
+ <!-- <xsl:when test="starts-with($target_normalized, '_') and contains($target_normalized, '_attachments/') and $pdfAttachmentsList//attachment[@filename = $target_attachment_name]">
9910
+ <xsl:value-of select="concat('url(embedded-file:', $target_attachment_name, ')')"/>
9911
+ </xsl:when>
9896
9912
  <xsl:when test="contains(@target, concat('_', $inputxml_filename_prefix, '_attachments'))">
9897
- <!-- link to the PDF attachment -->
9898
9913
  <xsl:variable name="target_" select="translate(@target, '\', '/')"/>
9899
9914
  <xsl:variable name="target__" select="substring-after($target_, concat('_', $inputxml_filename_prefix, '_attachments', '/'))"/>
9900
9915
  <xsl:value-of select="concat('url(embedded-file:', $target__, ')')"/>
9901
- </xsl:when>
9916
+ </xsl:when> -->
9902
9917
  <xsl:otherwise>
9903
9918
  <xsl:value-of select="normalize-space(@target)"/>
9904
9919
  </xsl:otherwise>
@@ -11553,8 +11568,11 @@
11553
11568
  </xsl:template>
11554
11569
 
11555
11570
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'strong']" mode="contents_item">
11571
+ <xsl:param name="element"/>
11556
11572
  <xsl:copy>
11557
- <xsl:apply-templates mode="contents_item"/>
11573
+ <xsl:apply-templates mode="contents_item">
11574
+ <xsl:with-param name="element" select="$element"/>
11575
+ </xsl:apply-templates>
11558
11576
  </xsl:copy>
11559
11577
  </xsl:template>
11560
11578
 
@@ -11621,7 +11639,10 @@
11621
11639
 
11622
11640
  <!-- Note: to enable the addition of character span markup with semantic styling for DIS Word output -->
11623
11641
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'span']" mode="contents_item">
11624
- <xsl:apply-templates mode="contents_item"/>
11642
+ <xsl:param name="element"/>
11643
+ <xsl:apply-templates mode="contents_item">
11644
+ <xsl:with-param name="element" select="$element"/>
11645
+ </xsl:apply-templates>
11625
11646
  </xsl:template>
11626
11647
 
11627
11648
  <!-- =============== -->
@@ -14538,6 +14559,17 @@
14538
14559
  <xsl:copy-of select="."/>
14539
14560
  </xsl:template>
14540
14561
 
14562
+ <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'metanorma-extension']/*[local-name() = 'attachment']" mode="update_xml_step1">
14563
+ <xsl:copy>
14564
+ <xsl:copy-of select="@*"/>
14565
+ <xsl:variable name="name_filepath" select="concat($inputxml_basepath, @name)"/>
14566
+ <xsl:variable name="file_exists" select="normalize-space(java:exists(java:java.io.File.new($name_filepath)))"/>
14567
+ <xsl:if test="$file_exists = 'false'"> <!-- copy attachment content only if file on disk doesnt exist -->
14568
+ <xsl:value-of select="."/>
14569
+ </xsl:if>
14570
+ </xsl:copy>
14571
+ </xsl:template>
14572
+
14541
14573
  <!-- add @id, mandatory for table auto-layout algorithm -->
14542
14574
  <xsl:template xmlns:redirect="http://xml.apache.org/xalan/redirect" match="*[local-name() = 'dl' or local-name() = 'table'][not(@id)]" mode="update_xml_step1">
14543
14575
  <xsl:copy>
@@ -15514,7 +15546,8 @@
15514
15546
  </xsl:when>
15515
15547
  <xsl:otherwise>
15516
15548
  <!-- _{filename}_attachments -->
15517
- <xsl:variable name="url" select="concat('url(file:///',$inputxml_basepath, '_', $inputxml_filename_prefix, '_attachments', '/', @name, ')')"/>
15549
+ <!-- <xsl:variable name="url" select="concat('url(file:///',$inputxml_basepath, '_', $inputxml_filename_prefix, '_attachments', '/', @name, ')')"/> -->
15550
+ <xsl:variable name="url" select="concat('url(file:///',$inputxml_basepath , @name, ')')"/>
15518
15551
  <pdf:embedded-file src="{$url}" filename="{@name}"/>
15519
15552
  </xsl:otherwise>
15520
15553
  </xsl:choose>
@@ -10,15 +10,6 @@ module IsoDoc
10
10
  logos
11
11
  end
12
12
 
13
- def logos
14
- here = File.join(File.dirname(__FILE__), "html")
15
- %i(wp_image001_emz wp_image003_emz wp_image008_emz)
16
- .each do |w|
17
- img = w.to_s.sub("_emz", ".emz")
18
- set(w, File.expand_path(File.join(here, img)))
19
- end
20
- end
21
-
22
13
  def logos
23
14
  here = File.join(File.dirname(__FILE__), "html")
24
15
  suffix = ".emz"
@@ -33,7 +24,7 @@ module IsoDoc
33
24
 
34
25
  def bibdate(isoxml, _out)
35
26
  isoxml.xpath(ns("//bibdata/date[@format = 'ddMMMyyyy']")).each do |d|
36
- set("#{d['type'].gsub('-', '_')}date".to_sym, Common::date_range(d))
27
+ set("#{d['type'].tr('-', '_')}date".to_sym, Common::date_range(d))
37
28
  end
38
29
  draft = isoxml.at(ns("//bibdata/date[@type = 'issued']")) ||
39
30
  isoxml.at(ns("//bibdata/date[@type = 'circulated']")) ||
@@ -45,15 +45,36 @@ module IsoDoc
45
45
  super
46
46
  end
47
47
 
48
+ KEEP_BIBRENDER_XPATH =
49
+ "./docidentifier | ./uri | ./note | ./title | ./biblio-tag".freeze
50
+
48
51
  def bibrender_relaton(xml, renderings)
49
52
  f = renderings[xml["id"]][:formattedref]
50
53
  fn = availability_note(xml)
51
54
  f &&= "<formattedref>#{f}#{fn}</formattedref>"
52
- keep = "./docidentifier | ./uri | ./note | ./title | ./biblio-tag"
53
- xml.children = "#{f}#{xml.xpath(ns(keep)).to_xml}"
55
+ xml.children = "#{f}#{xml.xpath(ns(KEEP_BIBRENDER_XPATH)).to_xml}"
56
+ author_date(xml, renderings)
54
57
  @author[xml["id"]] = renderings[xml["id"]][:author]
55
58
  end
56
59
 
60
+ def author_date(xml, renderings)
61
+ author_date?(xml) or return
62
+ cit = renderings[xml["id"]][:citation]
63
+ xml << "<docidentifier type='metanorma'>#{cit}</docidentifier>"
64
+ xml.at(ns("./biblio-tag"))&.remove
65
+ xml << "<biblio-tag>#{cit}, </biblio-tag>"
66
+ end
67
+
68
+ def author_date?(xml)
69
+ ret = !xml["type"]
70
+ ret ||= %w(standard techreport website webresource)
71
+ .include?(xml["type"])
72
+ ret ||= xml.at(".//ancestor::xmlns:references[@normative = 'false']")
73
+ ret ||= xml.at(ns("./docidentifier[@type = 'metanorma']"))
74
+ ret and return false
75
+ true
76
+ end
77
+
57
78
  def creatornames(bibitem)
58
79
  ::Relaton::Render::IEEE::General
59
80
  .new(language: @lang, i18nhash: @i18n.get,
@@ -86,7 +86,7 @@ module IsoDoc
86
86
  ins = coll.first.previous_element
87
87
  ret = sort_related(coll)
88
88
  coll.each(&:remove)
89
- ret.reverse.each { |t| ins.next = t }
89
+ ret.reverse_each { |t| ins.next = t }
90
90
  ins.parent.xpath(ns("./related"))
91
91
  end
92
92
 
@@ -144,7 +144,7 @@ module IsoDoc
144
144
  coll = terms.xpath(ns("./term"))
145
145
  ret = sort_terms(coll)
146
146
  coll.each(&:remove)
147
- ret.reverse.each { |t| ins.next = t }
147
+ ret.reverse_each { |t| ins.next = t }
148
148
  end
149
149
 
150
150
  def sort_terms(terms)
@@ -63,13 +63,17 @@ module IsoDoc
63
63
  capitalise_xref(node, linkend, anchor_value(node["target"]))
64
64
  end
65
65
 
66
+ def eref_locality_populate(type, node, number)
67
+ type == "page" and return ""
68
+ super
69
+ end
70
+
66
71
  def block_delim
67
72
  "&#x2014;"
68
73
  end
69
74
 
70
75
  def note1(elem)
71
- return if elem.parent.name == "bibitem" || elem["notag"] == "true"
72
-
76
+ elem.parent.name == "bibitem" || elem["notag"] == "true" and return
73
77
  n = @xrefs.get[elem["id"]]
74
78
  lbl = if n.nil? || n[:label].nil? || n[:label].empty? then @i18n.note
75
79
  else l10n("#{@i18n.note} #{n[:label]}")
@@ -25,49 +25,18 @@ Piscataway, NJ 08854, USA
25
25
  IEEE Standards
26
26
  documents are made available for use subject to important notices and legal
27
27
  disclaimers. These notices and disclaimers, or a reference to this page (https://standards.ieee.org/ipr/disclaimers.html[]),
28
- appear in all standards and may be found under the heading Important Notices
29
- and Disclaimers Concerning IEEE Standards Documents.”
28
+ appear in all IEEE standards and may be found under the heading "Important Notices
29
+ and Disclaimers Concerning IEEE Standards Documents."
30
30
 
31
31
  ==== Notice and Disclaimer of Liability Concerning the Use of IEEE Standards Documents
32
32
 
33
- IEEE Standards documents are
34
- developed within the IEEE Societies and the Standards Coordinating Committees
35
- of the IEEE Standards Association (IEEE SA) Standards Board. IEEE develops its
36
- standards through an accredited consensus development process, which brings
37
- together volunteers representing varied viewpoints and interests to achieve the
38
- final product. IEEE Standards are documents developed by volunteers with
39
- scientific, academic, and industry-based expertise in technical working groups.
40
- Volunteers are not necessarily members of IEEE or IEEE SA, and participate
41
- without compensation from IEEE. While IEEE administers the process and
42
- establishes rules to promote fairness in the consensus development process,
43
- IEEE does not independently evaluate, test, or verify the accuracy of any of
44
- the information or the soundness of any judgments contained in its standards.
45
-
46
- IEEE makes no warranties or
47
- representations concerning its standards, and expressly disclaims all
48
- warranties, express or implied, concerning this standard, including but not
49
- limited to the warranties of merchantability, fitness for a particular purpose
50
- and non-infringement. In addition, IEEE
51
- does not warrant or represent that the use of the material contained in its
52
- standards is free from patent infringement. IEEE standards documents are
53
- supplied “AS IS” and “WITH ALL FAULTS.”
54
-
55
- Use of an IEEE standard is wholly
56
- voluntary. The existence of an IEEE Standard does not imply that there are no
57
- other ways to produce, test, measure, purchase, market, or provide other goods
58
- and services related to the scope of the IEEE standard. Furthermore, the
59
- viewpoint expressed at the time a standard is approved and issued is subject to
60
- change brought about through developments in the state of the art and comments
61
- received from users of the standard.
62
-
63
- In publishing and
64
- making its standards available, IEEE is not suggesting or rendering
65
- professional or other services for, or on behalf of, any person or entity, nor
66
- is IEEE undertaking to perform any duty owed by any other person or entity to
67
- another. Any person utilizing any IEEE Standards document, should rely upon his
68
- or her own independent judgment in the exercise of reasonable care in any given
69
- circumstances or, as appropriate, seek the advice of a competent professional
70
- in determining the appropriateness of a given IEEE standard.
33
+ IEEE Standards documents are developed within IEEE Societies and subcommittees of IEEE Standards Association (IEEE SA) Board of Governors. IEEE develops its standards through an accredited consensus development process, which brings together volunteers representing varied viewpoints and interests to achieve the final product. IEEE standards are documents developed by volunteers with scientific, academic, and industry-based expertise in technical working groups. Volunteers involved in technical working groups are not necessarily members of IEEE or IEEE SA and participate without compensation from IEEE. While IEEE administers the process and establishes rules to promote fairness in the consensus development process, IEEE does not independently evaluate, test, or verify the accuracy of any of the information or the soundness of any judgments contained in its standards.
34
+
35
+ IEEE makes no warranties or representations concerning its standards, and expressly disclaims all warranties, express or implied, concerning all standards, including but not limited to the warranties of merchantability, fitness for a particular purpose and non-infringement IEEE Standards documents do not guarantee safety, security, health, or environmental protection, or compliance with law, or guarantee against interference with or from other devices or networks. In addition, IEEE does not warrant or represent that the use of the material contained in its standards is free from patent infringement. IEEE Standards documents are supplied "AS IS" and "WITH ALL FAULTS."
36
+
37
+ Use of an IEEE standard is wholly voluntary. The existence of an IEEE standard does not imply that there are no other ways to produce, test, measure, purchase, market, or provide other goods and services related to the scope of the IEEE standard. Furthermore, the viewpoint expressed at the time a standard is approved and issued is subject to change brought about through developments in the state of the art and comments received from users of the standard.
38
+
39
+ In publishing and making its standards available, IEEE is not suggesting or rendering professional or other services for, or on behalf of, any person or entity, nor is IEEE undertaking to perform any duty owed by any other person or entity to another. Any person utilizing any IEEE Standards document should rely upon their own independent judgment in the exercise of reasonable care in any given circumstances or, as appropriate, seek the advice of a competent professional in determining the appropriateness of a given IEEE standard.
71
40
 
72
41
  IN NO EVENT SHALL IEEE
73
42
  BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
@@ -81,22 +50,16 @@ DAMAGE WAS FORESEEABLE.
81
50
 
82
51
  ==== Translations
83
52
 
84
- The IEEE consensus
85
- development process involves the review of documents in English only. In the
86
- event that an IEEE standard is translated, only the English version published
87
- by IEEE is the approved IEEE standard.
53
+ The IEEE consensus balloting process involves the review of documents in English only. In the event that an IEEE standard is translated, only the English language version published by IEEE is the approved IEEE standard.
54
+
55
+ ==== Use by artificial intelligence systems
56
+
57
+ In no event shall material in any IEEE Standards documents be used for the purpose of creating, training, enhancing, developing, maintaining, or contributing to any artificial intelligence systems without the express, written consent of IEEE SA in advance. “Artificial intelligence” refers to any software, application, or other system that uses artificial intelligence, machine learning, or similar technologies, to analyze, train, process, or generate content. Requests for consent can be submitted using the Contact Us form.
58
+
88
59
 
89
60
  ==== Official statements
90
61
 
91
- A statement, written
92
- or oral, that is not processed in accordance with the IEEE SA Standards Board
93
- Operations Manual shall not be considered or inferred to be the official
94
- position of IEEE or any of its committees and shall not be considered to be,
95
- nor be relied upon as, a formal position of IEEE. At lectures, symposia,
96
- seminars, or educational courses, an individual presenting information on IEEE
97
- standards shall make it clear that the presenter’s views should be considered
98
- the personal views of that individual rather than the formal position of IEEE,
99
- IEEE SA, the Standards Committee, or the Working Group.
62
+ A statement, written or oral, that is not processed in accordance with the IEEE SA Standards Board Operations Manual is not, and shall not be considered or inferred to be, the official position of IEEE or any of its committees and shall not be considered to be, or be relied upon as, a formal position of IEEE or IEEE SA. At lectures, symposia, seminars, or educational courses, an individual presenting information on IEEE standards shall make it clear that the presenter’s views should be considered the personal views of that individual rather than the formal position of IEEE, IEEE SA, the Standards Committee, or the Working Group. Statements made by volunteers may not represent the formal position of their employer(s) or affiliation(s). News releases about IEEE standards issued by entities other than IEEE SA should be considered the view of the entity issuing the release rather than the formal position of IEEE or IEEE SA.
100
63
 
101
64
  ==== Comments on standards
102
65
 
@@ -108,18 +71,16 @@ Suggestions for changes in
108
71
  documents should be in the form of a proposed change of text, together with
109
72
  appropriate supporting comments. Since IEEE standards represent a consensus of
110
73
  concerned interests, it is important that any responses to comments and
111
- questions also receive the concurrence of a balance of interests. For this
112
- reason, IEEE and the members of its Societies and Standards Coordinating
113
- Committees are not able to provide an instant response to comments, or
114
- questions except in those cases where the matter has previously been addressed.
74
+ questions also receive the concurrence of a balance of interests. For this reason, IEEE and the members of its Societies and subcommittees of the IEEE SA Board of Governors are not able to provide an instant response to comments or questions, except
75
+ in those cases where the matter has previously been addressed.
115
76
  For the same reason, IEEE does not respond to interpretation requests. Any
116
77
  person who would like to participate in evaluating comments or in revisions to
117
- an IEEE standard is welcome to join the relevant IEEE working group. You can
78
+ an IEEE standard is welcome to join the relevant IEEE SA working group. You can
118
79
  indicate interest in a working group using the Interests tab in the Manage
119
80
  Profile &#x26; Interests area of the https://development.standards.ieee.org/myproject-web/public/view.html#landing[IEEE SA myProject system].footnote:[Available at: https://development.standards.ieee.org/myproject-web/public/view.html#landing[].]
120
81
  An IEEE Account is needed to access the application.
121
82
 
122
- Comments on standards should be submitted using the https://standards.ieee.org/content/ieee-standards/en/about/contact/index.html[Contact Us] form.footnote:[Available at: https://standards.ieee.org/content/ieee-standards/en/about/contact/index.html[].]
83
+ Comments on standards should be submitted using the https://standards.ieee.org/about/contact/[Contact Us] form.footnote:[Available at: https://standards.ieee.org/about/contact/[].]
123
84
 
124
85
  ==== Laws and regulations
125
86
 
@@ -141,14 +102,7 @@ with applicable laws and regulations.
141
102
 
142
103
  ==== Copyrights
143
104
 
144
- IEEE draft and approved
145
- standards are copyrighted by IEEE under US and international copyright
146
- laws. They are made available by IEEE and are adopted for a wide variety of
147
- both public and private uses. These include both use, by reference, in laws and
148
- regulations, and use in private self-regulation, standardization, and the
149
- promotion of engineering practices and methods. By making these documents
150
- available for use and adoption by public authorities and private users, IEEE
151
- does not waive any rights in copyright to the documents.
105
+ IEEE draft and approved standards are copyrighted by IEEE under U.S. and international copyright laws. They are made available by IEEE and are adopted for a wide variety of both public and private uses. These include both use by reference, in laws and regulations, and use in private self-regulation, standardization, and the promotion of engineering practices and methods. By making these documents available for use and adoption by public authorities and private users, neither IEEE nor its licensors waive any rights in copyright to the documents.
152
106
 
153
107
  ==== Photocopies
154
108
 
@@ -183,7 +137,7 @@ In
183
137
  order to determine whether a given document is the current edition and whether
184
138
  it has been amended through the issuance of amendments, corrigenda, or errata,
185
139
  visit https://ieeexplore.ieee.org/browse/standards/collection/ieee/[IEEE Xplore]
186
- or https://standards.ieee.org/content/ieee-standards/en/about/contact/index.html[contact IEEE].footnote:[Available at https://ieeexplore.ieee.org/browse/standards/collection/ieee[].]
140
+ or https://standards.ieee.org/about/contact/[contact IEEE].footnote:[Available at https://ieeexplore.ieee.org/browse/standards/collection/ieee[].]
187
141
  For more information about the IEEE SA or IEEE’s standards development process,
188
142
  visit the IEEE SA Website.
189
143
 
@@ -198,7 +152,7 @@ Users are encouraged to periodically check for errata.
198
152
 
199
153
  ==== Patents
200
154
 
201
- IEEE Standards are developed in compliance with the https://standards.ieee.org/about/sasb/patcom/materials.html[IEEE SA Patent Policy].footnote:[Available at: https://standards.ieee.org/about/sasb/patcom/materials.html[].]
155
+ IEEE standards are developed in compliance with the https://standards.ieee.org/about/sasb/patcom/materials.html[IEEE SA Patent Policy].footnote:[Available at: https://standards.ieee.org/about/sasb/patcom/materials.html[].]
202
156
 
203
157
  Attention is called to
204
158
  the possibility that implementation of this standard may require use of subject
@@ -227,17 +181,7 @@ Standards Association.
227
181
 
228
182
  ==== IMPORTANT NOTICE
229
183
 
230
- IEEE Standards do not
231
- guarantee or ensure safety, security, health, or environmental protection, or
232
- ensure against interference with or from other devices or networks. IEEE
233
- Standards development activities consider research and information presented to
234
- the standards development group in developing any safety recommendations. Other
235
- information about safety practices, changes in technology or technology implementation,
236
- or impact by peripheral systems also may be pertinent to safety considerations
237
- during implementation of the standard. Implementers and users of IEEE Standards
238
- documents are responsible for determining and complying with all appropriate
239
- safety, security, environmental, health, and interference protection practices
240
- and all applicable laws and regulations.
184
+ Technologies, application of technologies, and recommended procedures in various industries evolve over time. The IEEE standards development process allows participants to review developments in industries, technologies, and practices, and to determine what, if any, updates should be made to the IEEE standard. During this evolution, the technologies and recommendations in IEEE standards may be implemented in ways not foreseen during the standard’s development. IEEE standards development activities consider research and information presented to the standards development group in developing any safety recommendations. Other information about safety practices, changes in technology or technology implementation, or impact by peripheral systems also may be pertinent to safety considerations during implementation of the standard. Implementers and users of IEEE Standards documents are responsible for determining and complying with all appropriate safety, security, environmental, health, data privacy, and interference protection practices and all applicable laws and regulations.
241
185
 
242
186
  [[boilerplate-participants]]
243
187
  === Participants
@@ -23,9 +23,7 @@ module Metanorma
23
23
  @i = IsoDoc::IEEE::PresentationXMLConvert
24
24
  .new({ lang: @lang, script: @script, locale: @locale })
25
25
  @i.i18n_init(@lang, @script, @locale)
26
- bib.sort do |a, b|
27
- sort_biblio_key(a) <=> sort_biblio_key(b)
28
- end
26
+ bib.sort { |a, b| sort_biblio_key(a) <=> sort_biblio_key(b) }
29
27
  end
30
28
 
31
29
  # Alphabetic by rendering: author surname or designation, followed by title
@@ -58,9 +56,17 @@ module Metanorma
58
56
 
59
57
  def normref_cleanup(xmldoc)
60
58
  super
59
+ normref_no_ordinals(xmldoc)
61
60
  normref_reorder(xmldoc)
62
61
  end
63
62
 
63
+ def normref_no_ordinals(xmldoc)
64
+ xmldoc.xpath("//references[@normative = 'true']/bibitem/" \
65
+ "docidentifier[@type = 'metanorma']").each do |d|
66
+ /^\[?\d+\]?$/.match?(d.text) and d.remove
67
+ end
68
+ end
69
+
64
70
  def normref_reorder(xmldoc)
65
71
  xmldoc.xpath("//references[@normative = 'true']").each do |r|
66
72
  biblio_reorder1(r)
@@ -17,7 +17,7 @@
17
17
  these elements; we just want one namespace for any child grammars
18
18
  of this.
19
19
  -->
20
- <!-- VERSION v1.3.2 -->
20
+ <!-- VERSION v1.3.3 -->
21
21
  <grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
22
22
  <include href="reqt.rng"/>
23
23
  <include href="basicdoc.rng">
@@ -331,9 +331,9 @@
331
331
  <zeroOrMore>
332
332
  <ref name="table-note"/>
333
333
  </zeroOrMore>
334
- <optional>
334
+ <zeroOrMore>
335
335
  <ref name="source"/>
336
- </optional>
336
+ </zeroOrMore>
337
337
  </define>
338
338
  <define name="FigureAttr">
339
339
  <optional>
@@ -380,9 +380,9 @@
380
380
  <zeroOrMore>
381
381
  <ref name="note"/>
382
382
  </zeroOrMore>
383
- <optional>
383
+ <zeroOrMore>
384
384
  <ref name="source"/>
385
- </optional>
385
+ </zeroOrMore>
386
386
  </define>
387
387
  <define name="source">
388
388
  <element name="source">
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module IEEE
3
- VERSION = "1.2.11".freeze
3
+ VERSION = "1.2.13".freeze
4
4
  end
5
5
  end
@@ -41,4 +41,5 @@ Gem::Specification.new do |spec|
41
41
  spec.add_development_dependency "timecop", "~> 0.9"
42
42
  spec.add_development_dependency "vcr", "~> 6.1.0"
43
43
  spec.add_development_dependency "webmock"
44
+ spec.add_development_dependency "xml-c14n"
44
45
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-ieee
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.11
4
+ version: 1.2.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-07-08 00:00:00.000000000 Z
11
+ date: 2024-08-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-standoc
@@ -220,6 +220,20 @@ dependencies:
220
220
  - - ">="
221
221
  - !ruby/object:Gem::Version
222
222
  version: '0'
223
+ - !ruby/object:Gem::Dependency
224
+ name: xml-c14n
225
+ requirement: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - ">="
228
+ - !ruby/object:Gem::Version
229
+ version: '0'
230
+ type: :development
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ">="
235
+ - !ruby/object:Gem::Version
236
+ version: '0'
223
237
  description: 'Metanorma for the ITU.
224
238
 
225
239
  '