tbx 0.1.0 → 0.1.2

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.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rake.yml +1 -1
  3. data/.github/workflows/release.yml +2 -2
  4. data/.rubocop_todo.yml +1 -1
  5. data/CHANGELOG.md +38 -0
  6. data/CLAUDE.md +23 -4
  7. data/Gemfile +1 -1
  8. data/README.adoc +365 -19
  9. data/lib/tbx/admin.rb +25 -12
  10. data/lib/tbx/admin_grp.rb +6 -1
  11. data/lib/tbx/admin_note.rb +15 -7
  12. data/lib/tbx/back.rb +6 -1
  13. data/lib/tbx/body.rb +4 -1
  14. data/lib/tbx/change.rb +7 -1
  15. data/lib/tbx/concept_entry.rb +11 -1
  16. data/lib/tbx/data_element.rb +50 -0
  17. data/lib/tbx/date.rb +7 -1
  18. data/lib/tbx/descrip.rb +24 -12
  19. data/lib/tbx/descrip_grp.rb +8 -1
  20. data/lib/tbx/descrip_note.rb +7 -7
  21. data/lib/tbx/document.rb +13 -1
  22. data/lib/tbx/ec.rb +17 -1
  23. data/lib/tbx/encoding_desc.rb +4 -1
  24. data/lib/tbx/file_desc.rb +7 -1
  25. data/lib/tbx/foreign.rb +7 -1
  26. data/lib/tbx/hi.rb +19 -1
  27. data/lib/tbx/item.rb +7 -1
  28. data/lib/tbx/item_grp.rb +7 -1
  29. data/lib/tbx/item_set.rb +7 -1
  30. data/lib/tbx/lang_sec.rb +7 -1
  31. data/lib/tbx/modules/basic.rb +92 -0
  32. data/lib/tbx/modules/core_types.rb +23 -0
  33. data/lib/tbx/modules/linguist.rb +46 -0
  34. data/lib/tbx/modules/min.rb +46 -0
  35. data/lib/tbx/namespace.rb +12 -0
  36. data/lib/tbx/note.rb +10 -1
  37. data/lib/tbx/p.rb +10 -1
  38. data/lib/tbx/ph.rb +7 -1
  39. data/lib/tbx/publication_stmt.rb +4 -1
  40. data/lib/tbx/ref.rb +18 -7
  41. data/lib/tbx/ref_object.rb +7 -1
  42. data/lib/tbx/ref_object_sec.rb +7 -1
  43. data/lib/tbx/revision_desc.rb +4 -1
  44. data/lib/tbx/sc.rb +10 -7
  45. data/lib/tbx/source_desc.rb +4 -1
  46. data/lib/tbx/tbx_header.rb +8 -1
  47. data/lib/tbx/term.rb +7 -1
  48. data/lib/tbx/term_comp.rb +26 -0
  49. data/lib/tbx/term_comp_grp.rb +24 -0
  50. data/lib/tbx/term_comp_sec.rb +45 -0
  51. data/lib/tbx/term_note.rb +45 -12
  52. data/lib/tbx/term_note_grp.rb +8 -1
  53. data/lib/tbx/term_sec.rb +9 -1
  54. data/lib/tbx/text_element.rb +6 -1
  55. data/lib/tbx/title.rb +7 -1
  56. data/lib/tbx/title_stmt.rb +4 -1
  57. data/lib/tbx/transac.rb +18 -7
  58. data/lib/tbx/transac_grp.rb +7 -1
  59. data/lib/tbx/transac_note.rb +18 -7
  60. data/lib/tbx/version.rb +1 -1
  61. data/lib/tbx/xref.rb +17 -1
  62. data/lib/tbx.rb +14 -1
  63. data/reference-docs/README.adoc +109 -0
  64. data/reference-docs/schemas/Basic_Module_Definition.pdf +0 -0
  65. data/reference-docs/schemas/Min_Module_Definition.pdf +0 -0
  66. data/reference-docs/schemas/TBX-Basic_ImplementationGuide/TBX-Basic_ImplementationGuide.pdf +0 -0
  67. data/reference-docs/schemas/TBX-Core_dialect/Schemas/Example_Astronomy_DCA_VALID.tbx +710 -0
  68. data/reference-docs/schemas/TBX-Core_dialect/Schemas/TBX-Core.sch +47 -0
  69. data/reference-docs/schemas/TBX-Core_dialect/Schemas/TBXcoreStructV03_TBX-Core_integrated.rng +1171 -0
  70. data/reference-docs/schemas/TBX-Core_dialect/TBX-Core Definition.pdf +0 -0
  71. data/reference-docs/schemas/TBX-Linguist_dialect/DCA/Example_Astronomy_DCA_VALID.tbx +4028 -0
  72. data/reference-docs/schemas/TBX-Linguist_dialect/DCA/TBX-Linguist_DCA.sch +146 -0
  73. data/reference-docs/schemas/TBX-Linguist_dialect/DCA/TBXcoreStructV03_TBX-Linguist_integrated.rng +1198 -0
  74. data/reference-docs/schemas/TBX-Linguist_dialect/DCT/Example_Astronomy_DCT_VALID.tbx +4019 -0
  75. data/reference-docs/schemas/TBX-Linguist_dialect/DCT/TBX-Linguist.nvdl +41 -0
  76. data/reference-docs/schemas/TBX-Linguist_dialect/DCT/TBX-Linguist_DCT.sch +48 -0
  77. data/reference-docs/schemas/TBX-Linguist_dialect/TBX-Linguist Definition.pdf +0 -0
  78. data/reference-docs/schemas/TBX-Min_dialect/DCA/TBX-Min_DCA.sch +82 -0
  79. data/reference-docs/schemas/TBX-Min_dialect/DCT/TBX-Min.nvdl +25 -0
  80. data/reference-docs/schemas/TBX-Min_dialect/DCT/TBX-Min_DCT.sch +48 -0
  81. data/reference-docs/schemas/TBX-Min_dialect/TBX-Min Definition.pdf +0 -0
  82. data/reference-docs/schemas/TBX_linguist_module/Linguist Module Definition.pdf +0 -0
  83. data/reference-docs/schemas/TBX_linguist_module/Linguist.rng +93 -0
  84. data/reference-docs/schemas/TBX_linguist_module/Linguist.sch +33 -0
  85. data/reference-docs/schemas/TBX_linguist_module/Linguist.tbxmd +47 -0
  86. data/reference-docs/schemas/TBX_module_description_xml/TBX Module Description.pdf +0 -0
  87. data/reference-docs/schemas/TBX_module_description_xml/tbxmd.rng +192 -0
  88. data/reference-docs/schemas/TBX_termComp_module/TermComp-namespace.rng +156 -0
  89. metadata +41 -4
  90. data/lib/tbx/namespaces.rb +0 -9
@@ -0,0 +1,156 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <grammar
3
+ xmlns="http://relaxng.org/ns/structure/1.0"
4
+ xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
5
+ datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"
6
+ ns="urn:iso:std:iso:30042:termComp:ed-2">
7
+
8
+ <define name="idlang.attributes">
9
+ <ref name="id.attributes"/>
10
+ <ref name="lang.attributes"/>
11
+ </define>
12
+ <define name="id.attributes">
13
+ <ref name="id.attribute.id"/>
14
+ </define>
15
+ <define name="id.attribute.id">
16
+ <optional>
17
+ <attribute name="id">
18
+ <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
19
+ <data type="ID"/>
20
+ </attribute>
21
+ </optional>
22
+ </define>
23
+ <define name="lang.attributes">
24
+ <ref name="lang.attribute.xmllang"/>
25
+ </define>
26
+ <define name="lang.attribute.xmllang">
27
+ <optional>
28
+ <attribute name="xml:lang">
29
+ <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Indicates
30
+ the language of the element content. The allowed values are found in IETF RFC 4646 or
31
+ its successor. This attribute is optional for elements that use this attribute class.
32
+ For a description, see the information at the tbx element.</a:documentation>
33
+ <text/>
34
+ </attribute>
35
+ </optional>
36
+ </define>
37
+
38
+
39
+ <define name="termComp">
40
+ <element name="termComp">
41
+ <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
42
+ <ref name="termComp.content"/>
43
+ <ref name="termComp.localattributes"/>
44
+ </element>
45
+ </define>
46
+ <define name="termComp.content">
47
+ <text/>
48
+ </define>
49
+ <define name="termComp.localattributes">
50
+ <ref name="idlang.attributes"/>
51
+ </define>
52
+ <define name="termCompGrp">
53
+ <element name="termCompGrp">
54
+ <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
55
+ <ref name="termCompGrp.content"/>
56
+ <ref name="termCompGrp.localattributes"/>
57
+ </element>
58
+ </define>
59
+ <define name="termCompGrp.content">
60
+ <ref name="termComp"/>
61
+ <zeroOrMore>
62
+ <ref name="note"/>
63
+ </zeroOrMore>
64
+ </define>
65
+ <define name="termCompGrp.localattributes">
66
+ <ref name="id.attributes"/>
67
+ </define>
68
+ <define name="termCompSec">
69
+ <element name="termCompSec">
70
+ <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/>
71
+ <ref name="termCompSec.content"/>
72
+ <ref name="termCompSec.localattributes"/>
73
+ </element>
74
+ </define>
75
+ <define name="termCompSec.content">
76
+ <zeroOrMore>
77
+ <ref name="note"/>
78
+ </zeroOrMore>
79
+ <oneOrMore>
80
+ <choice>
81
+ <ref name="termComp"/>
82
+ <ref name="termCompGrp"/>
83
+ </choice>
84
+ </oneOrMore>
85
+ </define>
86
+ <define name="termCompSec.localattributes">
87
+ <ref name="id.attributes"/>
88
+ <attribute name="type">
89
+ <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">Indicates
90
+ the type of the termCompSec, such as hyphenation. The value indicates on what basis
91
+ the term components were identified, such as by hyphenation parts or by
92
+ syllables.</a:documentation>
93
+ <choice>
94
+ <value>hyphenation</value>
95
+ <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
96
+ >(Hyphenation) The termComp elements contain the parts of a term as it would be
97
+ hyphenated, such as at the end of a line, according to a given set of
98
+ rules.</a:documentation>
99
+ <value>lemma</value>
100
+ <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
101
+ >(Lemma) The termComp elements contain the base form of the term or of the
102
+ individual words that it comprises. A base form of a word or term, sometimes
103
+ called a lemma, is the form that is used as the formal dictionary entry for the
104
+ term. For nouns, the base form is frequently the nominative singular form (in
105
+ languages that show variation by case). For adjectives it is the positive form of
106
+ the adjective, as opposed to the comparative, and in some languages it is
107
+ uninflected, whereas in others it is the masculine singular. For verbs, it is
108
+ generally the infinitive.</a:documentation>
109
+ <value>morphologicalElement</value>
110
+ <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
111
+ >(Morphological element) The termComp elements contain the individual morphemes
112
+ that comprise the term. .</a:documentation>
113
+ <value>syllabification</value>
114
+ <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
115
+ >(Syllabification) The termComp elements contain the individual syllables that
116
+ comprise the term.</a:documentation>
117
+ <value>termElement</value>
118
+ <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(Term
119
+ element) The termComp elements contain any other logically significant portion of
120
+ the term.</a:documentation>
121
+ </choice>
122
+ </attribute>
123
+ </define>
124
+
125
+ <define name="termCompSec.types">
126
+ <attribute name="type">
127
+ <documentation xmlns="http://relaxng.org/ns/compatibility/annotations/1.0">Indicates
128
+ the type of the termCompSec, such as hyphenation. The value indicates on what basis the
129
+ term components were identified, such as by hyphenation parts or by
130
+ syllables.</documentation>
131
+ <choice>
132
+ <documentation xmlns="http://relaxng.org/ns/compatibility/annotations/1.0">For an integrated schema for use in non-namespace environments (DCA style),
133
+ replace &lt;text/&gt; with the allowed values of the "type" attribute.</documentation>
134
+ <text/>
135
+ </choice>
136
+ </attribute>
137
+ <ref name="dca.attributes"/>
138
+ </define>
139
+
140
+ <define name="note">
141
+ <element name="note">
142
+ <text/>
143
+ </element>
144
+ </define>
145
+ <define name="dca.attributes">
146
+ <optional>
147
+ <attribute name="module">
148
+ <text/>
149
+ </attribute>
150
+ </optional>
151
+ </define>
152
+
153
+ <start>
154
+ <ref name="termCompSec"/>
155
+ </start>
156
+ </grammar>
metadata CHANGED
@@ -1,13 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tbx
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose
8
+ autorequire:
8
9
  bindir: exe
9
10
  cert_chain: []
10
- date: 1980-01-02 00:00:00.000000000 Z
11
+ date: 2026-05-06 00:00:00.000000000 Z
11
12
  dependencies:
12
13
  - !ruby/object:Gem::Dependency
13
14
  name: lutaml-model
@@ -51,6 +52,7 @@ files:
51
52
  - lib/tbx/body.rb
52
53
  - lib/tbx/change.rb
53
54
  - lib/tbx/concept_entry.rb
55
+ - lib/tbx/data_element.rb
54
56
  - lib/tbx/date.rb
55
57
  - lib/tbx/descrip.rb
56
58
  - lib/tbx/descrip_grp.rb
@@ -65,7 +67,11 @@ files:
65
67
  - lib/tbx/item_grp.rb
66
68
  - lib/tbx/item_set.rb
67
69
  - lib/tbx/lang_sec.rb
68
- - lib/tbx/namespaces.rb
70
+ - lib/tbx/modules/basic.rb
71
+ - lib/tbx/modules/core_types.rb
72
+ - lib/tbx/modules/linguist.rb
73
+ - lib/tbx/modules/min.rb
74
+ - lib/tbx/namespace.rb
69
75
  - lib/tbx/note.rb
70
76
  - lib/tbx/p.rb
71
77
  - lib/tbx/ph.rb
@@ -78,6 +84,9 @@ files:
78
84
  - lib/tbx/source_desc.rb
79
85
  - lib/tbx/tbx_header.rb
80
86
  - lib/tbx/term.rb
87
+ - lib/tbx/term_comp.rb
88
+ - lib/tbx/term_comp_grp.rb
89
+ - lib/tbx/term_comp_sec.rb
81
90
  - lib/tbx/term_note.rb
82
91
  - lib/tbx/term_note_grp.rb
83
92
  - lib/tbx/term_sec.rb
@@ -89,7 +98,11 @@ files:
89
98
  - lib/tbx/transac_note.rb
90
99
  - lib/tbx/version.rb
91
100
  - lib/tbx/xref.rb
101
+ - reference-docs/README.adoc
102
+ - reference-docs/schemas/Basic_Module_Definition.pdf
103
+ - reference-docs/schemas/Min_Module_Definition.pdf
92
104
  - reference-docs/schemas/TBX-Basic_DCA.sch
105
+ - reference-docs/schemas/TBX-Basic_ImplementationGuide/TBX-Basic_ImplementationGuide.pdf
93
106
  - reference-docs/schemas/TBX-Basic_dialect_v1/DCA/Example_Astronomy_DCA_VALID.tbx
94
107
  - reference-docs/schemas/TBX-Basic_dialect_v1/DCA/TBX-Basic_DCA.sch
95
108
  - reference-docs/schemas/TBX-Basic_dialect_v1/DCT/Example_Astronomy_DCT_VALID.tbx
@@ -109,7 +122,29 @@ files:
109
122
  - reference-docs/schemas/TBX-Basic_dialect_v1/Modules/TBX_min_module/Min.tbxmd
110
123
  - reference-docs/schemas/TBX-Basic_dialect_v1/TBX-Basic Definition.docx
111
124
  - reference-docs/schemas/TBX-Basic_dialect_v1/TBX-Basic Definition.pdf
125
+ - reference-docs/schemas/TBX-Core_dialect/Schemas/Example_Astronomy_DCA_VALID.tbx
126
+ - reference-docs/schemas/TBX-Core_dialect/Schemas/TBX-Core.sch
127
+ - reference-docs/schemas/TBX-Core_dialect/Schemas/TBXcoreStructV03_TBX-Core_integrated.rng
128
+ - reference-docs/schemas/TBX-Core_dialect/TBX-Core Definition.pdf
129
+ - reference-docs/schemas/TBX-Linguist_dialect/DCA/Example_Astronomy_DCA_VALID.tbx
130
+ - reference-docs/schemas/TBX-Linguist_dialect/DCA/TBX-Linguist_DCA.sch
131
+ - reference-docs/schemas/TBX-Linguist_dialect/DCA/TBXcoreStructV03_TBX-Linguist_integrated.rng
132
+ - reference-docs/schemas/TBX-Linguist_dialect/DCT/Example_Astronomy_DCT_VALID.tbx
133
+ - reference-docs/schemas/TBX-Linguist_dialect/DCT/TBX-Linguist.nvdl
134
+ - reference-docs/schemas/TBX-Linguist_dialect/DCT/TBX-Linguist_DCT.sch
135
+ - reference-docs/schemas/TBX-Linguist_dialect/TBX-Linguist Definition.pdf
136
+ - reference-docs/schemas/TBX-Min_dialect/DCA/TBX-Min_DCA.sch
137
+ - reference-docs/schemas/TBX-Min_dialect/DCT/TBX-Min.nvdl
138
+ - reference-docs/schemas/TBX-Min_dialect/DCT/TBX-Min_DCT.sch
139
+ - reference-docs/schemas/TBX-Min_dialect/TBX-Min Definition.pdf
112
140
  - reference-docs/schemas/TBX_core.xsd
141
+ - reference-docs/schemas/TBX_linguist_module/Linguist Module Definition.pdf
142
+ - reference-docs/schemas/TBX_linguist_module/Linguist.rng
143
+ - reference-docs/schemas/TBX_linguist_module/Linguist.sch
144
+ - reference-docs/schemas/TBX_linguist_module/Linguist.tbxmd
145
+ - reference-docs/schemas/TBX_module_description_xml/TBX Module Description.pdf
146
+ - reference-docs/schemas/TBX_module_description_xml/tbxmd.rng
147
+ - reference-docs/schemas/TBX_termComp_module/TermComp-namespace.rng
113
148
  - reference-docs/schemas/TBXcoreStructV03.rng
114
149
  - tbx.gemspec
115
150
  homepage: https://github.com/glossarist/tbx-ruby
@@ -120,6 +155,7 @@ metadata:
120
155
  source_code_uri: https://github.com/glossarist/tbx-ruby
121
156
  bug_tracker_uri: https://github.com/glossarist/tbx-ruby/issues
122
157
  rubygems_mfa_required: 'true'
158
+ post_install_message:
123
159
  rdoc_options: []
124
160
  require_paths:
125
161
  - lib
@@ -134,7 +170,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
134
170
  - !ruby/object:Gem::Version
135
171
  version: '0'
136
172
  requirements: []
137
- rubygems_version: 3.6.9
173
+ rubygems_version: 3.5.22
174
+ signing_key:
138
175
  specification_version: 4
139
176
  summary: Library to parse and serialize TBX (Termbase Exchange) per ISO 30042:2019.
140
177
  test_files: []
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Tbx
4
- module Namespaces
5
- class TbxNamespace < Lutaml::Xml::Namespace
6
- uri "urn:iso:std:iso:30042:ed-2"
7
- end
8
- end
9
- end