relaton-bsi 2.0.0 → 2.2.0.pre.alpha.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cd26149da6ea7c9e4448de800b029396049bafeeef64fdb59943cb4725362d51
4
- data.tar.gz: ce9991a8e5f6441f87e497152bc839ec7c28ef7c572b2f7e8d6a998e1b2f02ad
3
+ metadata.gz: 0e1e686f7050146eeeee8c2d20ac4ab8cda54ec05c30e72dc30973605dda0690
4
+ data.tar.gz: 105a652c903f7af674dc208922beb0a40c520e4128c9d246bf23f90d4b12e4cb
5
5
  SHA512:
6
- metadata.gz: '0690c5d934cd098a8739ecaea2b8ea0beba46d4c36e576b1ac24b47859cb8995f69303ea379ac8a9828fa1c7ff82dc97fb8b8d0ce11cce68f99347f4c46361b1'
7
- data.tar.gz: 753f0d5d17fc5e62eb579e89c518c145f94fec0fff1566bb9a07a9bf999e4a4d2b6514562d36aba2c21b0f63efaa286bf7c4dbc19b8690943d2af3ac3af06ee8
6
+ metadata.gz: eafe804cf22181d0034ccb01c5359d55a9127e8dd61285c020e1aede89795261c8a45a7e51ed6b850857f3794ff9ab4960810016784a2adf9b0e07959d6f9e94
7
+ data.tar.gz: aa7efdd74bf7ef392f53c9fde40ee62f92f9e0c77c437d912ada3316f4391e95715de5885465332759ba3b85f504429f547857c3eea9bd2de8fdac7cb8344420
@@ -4,7 +4,7 @@ name: rake
4
4
 
5
5
  on:
6
6
  push:
7
- branches: [ master, main ]
7
+ branches: [ master, main, lutaml-integration ]
8
8
  tags: [ v* ]
9
9
  pull_request:
10
10
 
data/Gemfile CHANGED
@@ -5,9 +5,18 @@ source "https://rubygems.org"
5
5
  # Specify your gem's dependencies in relaton_bsi.gemspec
6
6
  gemspec
7
7
 
8
+ # Use local monorepo sibling gems where available.
9
+ Dir["../*/"].each do |dir|
10
+ name = File.basename(dir)
11
+ next if name == File.basename(__dir__)
12
+ next unless File.exist?(File.join(dir, "#{name}.gemspec"))
13
+ gem name, path: dir
14
+ end
15
+
8
16
  gem "rake", "~> 13.0"
9
17
  gem "rspec", "~> 3.0"
10
18
 
19
+
11
20
  gem "equivalent-xml", "~> 0.6"
12
21
  gem "pry-byebug"
13
22
  gem "ruby-jing"
@@ -1,10 +1,6 @@
1
1
  module Relaton
2
2
  module Bsi
3
3
  class ItemData < Iso::ItemData
4
- def deep_clone
5
- Item.from_yaml Item.to_yaml(self)
6
- end
7
-
8
4
  def create_id(without_date: false)
9
5
  docid = docidentifier.find(&:primary) || docidentifier.first
10
6
  return unless docid
@@ -12,38 +8,6 @@ module Relaton
12
8
  id_content = without_date ? docid.content.sub(/:\d{4}$/, "") : docid.content
13
9
  self.id = id_content.gsub(/\W+/, "")
14
10
  end
15
-
16
- def create_relation(**args)
17
- Relation.new(**args)
18
- end
19
-
20
- def to_xml(bibdata: false, **opts)
21
- add_notes opts[:note] do
22
- bibdata ? Bibdata.to_xml(self) : Bibitem.to_xml(self)
23
- end
24
- end
25
-
26
- def to_yaml(**opts)
27
- add_notes opts[:note] do
28
- Item.to_yaml(self)
29
- end
30
- end
31
-
32
- def to_json(**opts)
33
- add_notes opts[:note] do
34
- Item.to_json(self)
35
- end
36
- end
37
-
38
- # private
39
-
40
- # def add_notes(notes)
41
- # self.note ||= []
42
- # Relaton.array(notes).each { |nt| note << Bib::Note.new(**nt) }
43
- # result = yield
44
- # Relaton.array(notes).each { note.pop }
45
- # result
46
- # end
47
11
  end
48
12
  end
49
13
  end
@@ -1,6 +1,7 @@
1
1
  module Relaton
2
2
  module Bsi
3
3
  class Bibdata < Item
4
+ model ItemData
4
5
  include Bib::BibdataShared
5
6
  end
6
7
  end
@@ -1,6 +1,7 @@
1
1
  module Relaton
2
2
  module Bsi
3
3
  class Bibitem < Item
4
+ model ItemData
4
5
  include Bib::BibitemShared
5
6
  end
6
7
  end
@@ -2,28 +2,16 @@ require_relative "doctype"
2
2
 
3
3
  module Relaton
4
4
  module Bsi
5
- class Ext < Lutaml::Model::Serializable
6
- attribute :schema_version, method: :get_schema_version
5
+ class Ext < Bib::Ext
7
6
  attribute :doctype, Doctype
8
- attribute :subdoctype, :string
9
- attribute :flavor, :string
10
7
  attribute :ics, Bib::ICS, collection: true
11
8
  attribute :structuredidentifier, Iso::StructuredIdentifier, collection: true, initialize_empty: true
12
9
  attribute :stagename, Iso::Stagename
13
10
 
14
- xml do
15
- map_attribute "schema-version", to: :schema_version
16
- map_element "doctype", to: :doctype
17
- map_element "subdoctype", to: :subdoctype
18
- map_element "flavor", to: :flavor
19
- map_element "ics", to: :ics
20
- map_element "stagename", to: :stagename
21
- map_element "structuredidentifier", to: :structuredidentifier
22
- end
11
+ xml { map_element "stagename", to: :stagename }
12
+ key_value { map_element "stagename", to: :stagename }
23
13
 
24
- def get_schema_version
25
- Relaton.schema_versions["relaton-model-bsi"]
26
- end
14
+ def get_schema_version = Relaton.schema_versions["relaton-model-bsi"]
27
15
  end
28
16
  end
29
17
  end
@@ -1,19 +1,22 @@
1
+ require_relative "docidentifier"
2
+
1
3
  module Relaton
2
4
  module Bsi
3
- # The class is for relaton bibitem instances.
4
- # The in relaton bibitem instances dosn't have schema-version & fetched attributes.
5
- class ItemBase < Item
5
+ class ItemBase < Lutaml::Model::Serializable
6
+ include Bib::NamespaceHelper
7
+
8
+ attr_accessor :type
9
+
6
10
  model ItemData
7
11
 
8
- # we don't need schema-version & fetched attributes in reation/bibitem
9
- mappings[:xml].instance_variable_get(:@attributes).delete("id")
10
- mappings[:xml].instance_variable_get(:@attributes).delete("schema-version")
11
- mappings[:xml].instance_variable_get(:@elements).delete("fetched")
12
- mappings[:xml].instance_variable_get(:@elements).delete("ext")
13
- attributes.delete :id
14
- attributes.delete :schema_version
15
- attributes.delete :fetched
16
- attributes.delete :ext
12
+ instance_exec(&Bib::ItemShared::ATTRIBUTES)
13
+ attribute :docidentifier, Docidentifier, collection: true, initialize_empty: true
14
+ attribute :relation, Relation, collection: true, initialize_empty: true
15
+
16
+ xml do
17
+ map_attribute "type", to: :type
18
+ instance_exec(&Bib::ItemShared::XML_BODY)
19
+ end
17
20
  end
18
21
  end
19
22
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Relaton
4
4
  module Bsi
5
- VERSION = "2.0.0".freeze
5
+ VERSION = "2.2.0.pre.alpha.1".freeze
6
6
  end
7
7
  end
@@ -14,7 +14,7 @@ Gem::Specification.new do |spec|
14
14
  "use using the BibliographicItem model"
15
15
  spec.homepage = "https://github.com/metanorma/relaton-bsi"
16
16
  spec.license = "BSD-2-Clause"
17
- spec.required_ruby_version = Gem::Requirement.new(">= 3.2.0")
17
+ spec.required_ruby_version = Gem::Requirement.new(">= 3.3.0")
18
18
 
19
19
  spec.metadata["homepage_uri"] = spec.homepage
20
20
  spec.metadata["source_code_uri"] = spec.homepage
@@ -33,6 +33,6 @@ Gem::Specification.new do |spec|
33
33
  spec.add_dependency "faraday-net_http_persistent", "~> 2.0"
34
34
  spec.add_dependency "graphql", "~> 2.3"
35
35
  spec.add_dependency "graphql-client", "~> 0.23"
36
- spec.add_dependency "relaton-core", "~> 0.0.9"
37
- spec.add_dependency "relaton-iso", "~> 2.0.0"
36
+ spec.add_dependency "relaton-core", "~> 2.2.0.pre.alpha.1"
37
+ spec.add_dependency "relaton-iso", "~> 2.2.0.pre.alpha.1"
38
38
  end
metadata CHANGED
@@ -1,13 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-bsi
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.2.0.pre.alpha.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
+ autorequire:
8
9
  bindir: exe
9
10
  cert_chain: []
10
- date: 1980-01-02 00:00:00.000000000 Z
11
+ date: 2026-06-26 00:00:00.000000000 Z
11
12
  dependencies:
12
13
  - !ruby/object:Gem::Dependency
13
14
  name: algolia
@@ -71,28 +72,28 @@ dependencies:
71
72
  requirements:
72
73
  - - "~>"
73
74
  - !ruby/object:Gem::Version
74
- version: 0.0.9
75
+ version: 2.2.0.pre.alpha.1
75
76
  type: :runtime
76
77
  prerelease: false
77
78
  version_requirements: !ruby/object:Gem::Requirement
78
79
  requirements:
79
80
  - - "~>"
80
81
  - !ruby/object:Gem::Version
81
- version: 0.0.9
82
+ version: 2.2.0.pre.alpha.1
82
83
  - !ruby/object:Gem::Dependency
83
84
  name: relaton-iso
84
85
  requirement: !ruby/object:Gem::Requirement
85
86
  requirements:
86
87
  - - "~>"
87
88
  - !ruby/object:Gem::Version
88
- version: 2.0.0
89
+ version: 2.2.0.pre.alpha.1
89
90
  type: :runtime
90
91
  prerelease: false
91
92
  version_requirements: !ruby/object:Gem::Requirement
92
93
  requirements:
93
94
  - - "~>"
94
95
  - !ruby/object:Gem::Version
95
- version: 2.0.0
96
+ version: 2.2.0.pre.alpha.1
96
97
  description: 'Relaton::Bsi: retrieve BSI Standards for bibliographic use using the
97
98
  BibliographicItem model'
98
99
  email:
@@ -105,7 +106,6 @@ files:
105
106
  - ".github/workflows/release.yml"
106
107
  - ".gitignore"
107
108
  - ".rspec"
108
- - ".rubocop.yml"
109
109
  - Gemfile
110
110
  - LICENSE.txt
111
111
  - README.adoc
@@ -113,11 +113,6 @@ files:
113
113
  - bin/console
114
114
  - bin/rspec
115
115
  - bin/setup
116
- - grammars/basicdoc.rng
117
- - grammars/biblio-standoc.rng
118
- - grammars/biblio.rng
119
- - grammars/relaton-bsi-compile.rng
120
- - grammars/relaton-bsi.rng
121
116
  - lib/relaton/bsi.rb
122
117
  - lib/relaton/bsi/bibliography.rb
123
118
  - lib/relaton/bsi/hit.rb
@@ -136,13 +131,14 @@ files:
136
131
  - lib/relaton/bsi/scraper.rb
137
132
  - lib/relaton/bsi/util.rb
138
133
  - lib/relaton/bsi/version.rb
139
- - relaton_bsi.gemspec
134
+ - relaton-bsi.gemspec
140
135
  homepage: https://github.com/metanorma/relaton-bsi
141
136
  licenses:
142
137
  - BSD-2-Clause
143
138
  metadata:
144
139
  homepage_uri: https://github.com/metanorma/relaton-bsi
145
140
  source_code_uri: https://github.com/metanorma/relaton-bsi
141
+ post_install_message:
146
142
  rdoc_options: []
147
143
  require_paths:
148
144
  - lib
@@ -150,14 +146,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
150
146
  requirements:
151
147
  - - ">="
152
148
  - !ruby/object:Gem::Version
153
- version: 3.2.0
149
+ version: 3.3.0
154
150
  required_rubygems_version: !ruby/object:Gem::Requirement
155
151
  requirements:
156
152
  - - ">="
157
153
  - !ruby/object:Gem::Version
158
154
  version: '0'
159
155
  requirements: []
160
- rubygems_version: 3.6.9
156
+ rubygems_version: 3.5.22
157
+ signing_key:
161
158
  specification_version: 4
162
159
  summary: 'Relaton::Bsi: retrieve BSI Standards for bibliographic use using the BibliographicItem
163
160
  model'
data/.rubocop.yml DELETED
@@ -1,12 +0,0 @@
1
- # This project follows the Ribose OSS style guide.
2
- # https://github.com/riboseinc/oss-guides
3
- # All project-specific additions and overrides should be specified in this file.
4
-
5
- require: rubocop-rails
6
-
7
- inherit_from:
8
- - https://raw.githubusercontent.com/riboseinc/oss-guides/master/ci/rubocop.yml
9
- AllCops:
10
- TargetRubyVersion: 3.2
11
- Rails:
12
- Enabled: false