xmi 0.7.4 → 0.7.5

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: 588e344ea2df1c00d5050e7377bad54f7afca96e3925b327250cff8902a5027c
4
- data.tar.gz: 56c69d3bc8056dffc1931af4c2d112db7b351e9fa39c4061b4073428be9b756a
3
+ metadata.gz: a5768264ec47d77fb37c6693316cf5ffb4d413f697e18b0fb2940d4ace443ac6
4
+ data.tar.gz: 7532de24cc1d30d12bb64ddec9a8639ccccab1ac33b4196966957ad5887cc21b
5
5
  SHA512:
6
- metadata.gz: 802a4c35900a1f3ed32a7d7ee0ad9b41a74686e0d1aedb5db318a1ffaa1bf9ca81f22d94d3672599bde39b56068ef4d5481242340552298bcd148eb479ee440d
7
- data.tar.gz: '089817e9e7b880db5756a86023541012f5ef7a6e0b0f9161bc0a2e6a140bd915f69b9040d9175aadffd1ce3d0fee3fb2df2f2ed7d86a410d3cedfe64a114caeb'
6
+ metadata.gz: a2440dc089f5e870093c1298ce8c3e7964927905204898dd0b12a9355a07108d1f0da36774b6697d6778903d981639211d8e7dcb89f169510fdfd8003a3b521c
7
+ data.tar.gz: 935957281f3cf2e56c9b068302e1fbd05bf8f4350af8e19b0f5a2e56816bef3982d800a478a819dd65e17d96f1288b9c12b8dc9298622711f7e1dd919ce6b3c6
@@ -7,15 +7,17 @@ on:
7
7
  pull_request:
8
8
  workflow_dispatch:
9
9
 
10
- permissions:
11
- contents: read
12
-
13
10
  jobs:
14
11
  rake:
15
12
  uses: metanorma/ci/.github/workflows/generic-rake.yml@main
16
13
  with:
17
14
  setup-tools: graphviz
18
- submodules: true
15
+ # metanorma/ci declares submodules as a string (true/false/recursive);
16
+ # an unquoted boolean is a workflow-startup failure.
17
+ submodules: "true"
18
+ # permissions: contents: read (above) cannot fire the tests-passed /
19
+ # do-release repository_dispatch; releases run via workflow_dispatch.
20
+ cascade: false
19
21
  choco-cache: true
20
22
  secrets:
21
23
  pat_token: ${{ secrets.METANORMA_CI_PAT_TOKEN }}
@@ -4,24 +4,19 @@ module Xmi
4
4
  module Uml
5
5
  class OwnedParameter < ValueSpecs
6
6
  attribute :name, :string
7
- # These are two DIFFERENT attributes that collide here:
7
+ # These are two DIFFERENT attributes on the wire that share the
8
+ # local name "type" and are disjoint by namespace:
8
9
  # xmi:type="uml:Parameter" — the XMI metaclass discriminator
10
+ # (XMI namespace, via XmiType)
9
11
  # type="EAnone_void" — Sparx's classifier reference
10
- #
11
- # Known limit: lutaml-model matches attributes by local name only,
12
- # so both land in this one slot and whichever appears LAST in the
13
- # input wins. They are not two spellings of one concept, and only
14
- # one of them can survive a round trip.
15
- #
16
- # The slot stays xmi-namespaced, which keeps the discriminator —
17
- # the general UML XMI shape this gem round-trips. Sparx's
18
- # classifier reference still parses into it, but re-serializes as
19
- # `xmi:type`. Restoring the Sparx spelling belongs to the Sparx
20
- # exporter, not to this shared model: flipping it here would break
21
- # the general case for every other consumer. Modelling both at
22
- # once needs namespace-disjoint attribute deserialization
23
- # upstream (lutaml-model#744).
12
+ # (no namespace)
13
+ # Unprefixed attributes never take a default namespace, so the
14
+ # pair is (URI, local)-identified and both slots survive a
15
+ # round trip. Requires lutaml-model >= 0.8.53 (namespace-disjoint
16
+ # attribute parsing; earlier versions match by local name only
17
+ # and collapse the two into one slot, last occurrence wins).
24
18
  attribute :type, ::Xmi::Type::XmiType
19
+ attribute :classifier_type, :string
25
20
  attribute :direction, :string
26
21
  attribute :visibility, :string
27
22
  attribute :is_ordered, :boolean
@@ -32,6 +27,7 @@ module Xmi
32
27
  root "ownedParameter"
33
28
  map_attribute "name", to: :name
34
29
  map_attribute "type", to: :type
30
+ map_attribute "type", to: :classifier_type
35
31
  map_attribute "direction", to: :direction
36
32
  map_attribute "visibility", to: :visibility
37
33
  map_attribute "isOrdered", to: :is_ordered
data/lib/xmi/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Xmi
4
- VERSION = "0.7.4"
4
+ VERSION = "0.7.5"
5
5
  end
data/xmi.gemspec CHANGED
@@ -32,6 +32,8 @@ Gem::Specification.new do |spec|
32
32
 
33
33
  spec.required_ruby_version = ">= 3.0.0"
34
34
 
35
- spec.add_dependency "lutaml-model", "~> 0.8.17"
35
+ # OwnedParameter's namespace-disjoint xmi:type vs type slots need
36
+ # lutaml-model >= 0.8.53 (attribute parsing by (URI, local name)).
37
+ spec.add_dependency "lutaml-model", "~> 0.8.53"
36
38
  spec.add_dependency "nokogiri"
37
39
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xmi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.4
4
+ version: 0.7.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-08-27 00:00:00.000000000 Z
11
+ date: 2026-09-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: lutaml-model
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.8.17
19
+ version: 0.8.53
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.8.17
26
+ version: 0.8.53
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: nokogiri
29
29
  requirement: !ruby/object:Gem::Requirement