lutaml-xsd 1.2.105 → 1.2.107
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/TODO.conformance.md +41 -0
- data/lib/lutaml/xsd/validation/schema_definition_resolver.rb +10 -10
- data/lib/lutaml/xsd/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b843055f187b9adc7ae34af1339b816cb4b12ed2344a8f382834e71ef35a5b10
|
|
4
|
+
data.tar.gz: 44f4c02f0f34551654141814cd66a6277f20798bde5ab41505af0d305b682e93
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 01dbddc2fa3db632db3b459bc999405304d58e1fc9bce88b634dd072e7f2f04b902e4c20d2ba38669ba759b98d190f060522d44ce155424b5443d2616d8125c0
|
|
7
|
+
data.tar.gz: 64fbb3c90b06aa7cf43b921451377f8955c726f9c1ed600bfdf42cae73e994cfb1dd9c68dc279733be0e640d2dcc8f4d03386d457e4711ddcb84840b5adde6b1
|
data/TODO.conformance.md
CHANGED
|
@@ -515,7 +515,48 @@ tuple keys, node-set field violations and absent-field rows handled, cross-eleme
|
|
|
515
515
|
checks bind the no-ns int ct-A to the ns-b boolean children —
|
|
516
516
|
'true' vs xsd:int — the per-child type plumbing under hint
|
|
517
517
|
layering), full type-redefine body semantics.
|
|
518
|
+
- PARENT-CONTEXT ROUND F (2026-11-09): +1 Element (QFE1700c1;
|
|
519
|
+
suite 4638->4639 = 98.79%, pending measure confirm). THE
|
|
520
|
+
SKIP-SUPPRESSION FOLLOWS THE MATCHER'S DETERMINISTIC ASSIGNMENT:
|
|
521
|
+
the NFA records the leftmost assignment (earliest compiled
|
|
522
|
+
accepting transition per child, occurrence bounds included — the
|
|
523
|
+
graph structure encodes them, so a 1..1 skip stops claiming after
|
|
524
|
+
its single consumption and a later element particle claims the
|
|
525
|
+
next match). The content rule publishes the claims through the
|
|
526
|
+
shared collector (both the native-handled and the matcher paths),
|
|
527
|
+
keyed by the child's STABLE NATIVE node (moxml wrappers are not
|
|
528
|
+
identity-stable — and the claims walk itself must run on the SAME
|
|
529
|
+
wrapper objects the match memo keyed); the suppression consult
|
|
530
|
+
assesses claimed-by-declaration children. QFE1700c1: the ref
|
|
531
|
+
claims the second e2, whose nilled-with-content violation fires.
|
|
532
|
+
Debug trail (for the record): three identity mismatches stacked —
|
|
533
|
+
wrapper-vs-raw keys at publication, wrapper-vs-native at consult,
|
|
534
|
+
and the greedy walk receiving raw nodes while the memo keyed
|
|
535
|
+
wrappers. PARKED: addB188 (ComplexType-capability audit),
|
|
536
|
+
schD10 (chameleon form-default owner decision).
|
|
537
|
+
|
|
518
538
|
- RIDE-407 PIN-BACK (2026-11-05): the leptris 1.9.407.0 + moxml
|
|
539
|
+
- PARENT-CONTEXT ROUND E (2026-11-09): +2 (Schema schA1,
|
|
540
|
+
Particles particlesA002; suite 4636->4638 = 98.76%, zero
|
|
541
|
+
regressions across all 94 batches, rspec green, the four-family
|
|
542
|
+
starvation sweep showing only the 8 known parked/contested). THE
|
|
543
|
+
CHILD→PARTICLE BINDING IS FULLY GENERAL: positional_children
|
|
544
|
+
dropped the duplicate gate — EVERY named child binds through its
|
|
545
|
+
parent's content model (schA1's same-local-name a1/a2 across three
|
|
546
|
+
namespaces resolve through the OWNING parent's type, not the
|
|
547
|
+
name+namespace guess that cross-bound an xsd:int namesake), with
|
|
548
|
+
the attempt-3 guards intact: every candidate particle INDEXED
|
|
549
|
+
(form/ns metadata survives) and the binding's expected namespace
|
|
550
|
+
must AGREE with the child's own (particlesQ016). The attempt-3
|
|
551
|
+
wall (277 regressions from raw-particle binding) is broken: the
|
|
552
|
+
wide DataTypes/Element/Particles/IC sweep is clean. PARKED:
|
|
553
|
+
schD10 (the chameleon form-default conflict — the suite wants the
|
|
554
|
+
chameleon doc's OWN unqualified elementFormDefault while ctE018
|
|
555
|
+
needed the includer's attributeFormDefault; owner decision on
|
|
556
|
+
which xmllint behavior is normative), QFE1700c1 (the suppression
|
|
557
|
+
must follow the NFA's child→particle assignment — matcher
|
|
558
|
+
surgery), addB188 (the ComplexType-capability audit).
|
|
559
|
+
|
|
519
560
|
0.6.3 + lutaml-model 0.8.166 train carried fixes (the FULL #45
|
|
520
561
|
- LAX-OBIGATION ROUND (2026-11-08, parent-context round D): +5
|
|
521
562
|
DataTypes (duration028/029/030, dateTime013, gMonthDay006; suite
|
|
@@ -588,15 +588,16 @@ module Lutaml
|
|
|
588
588
|
end
|
|
589
589
|
|
|
590
590
|
# The ordered same-named inline particles of the parent's
|
|
591
|
-
# content model — the
|
|
592
|
-
#
|
|
593
|
-
#
|
|
594
|
-
#
|
|
595
|
-
#
|
|
596
|
-
#
|
|
597
|
-
# assume). The walk keeps its
|
|
598
|
-
#
|
|
599
|
-
# and would poison
|
|
591
|
+
# content model — the CHILD→PARTICLE binding. The parent model
|
|
592
|
+
# binds every named child (schA1/D10: same local names across
|
|
593
|
+
# namespaces resolve through the OWNING parent's type, not the
|
|
594
|
+
# name+namespace guess; isDefault079: duplicate regvalueop
|
|
595
|
+
# locals bind positionally). Returns [] unless EVERY particle
|
|
596
|
+
# is indexed (attempt-3's starvation: raw particles carry none
|
|
597
|
+
# of the form/ns metadata the rules assume). The walk keeps its
|
|
598
|
+
# own cycle guard — the resolver's each_particle_element
|
|
599
|
+
# memoizes visited nodes on the instance and would poison
|
|
600
|
+
# repeated walks.
|
|
600
601
|
#
|
|
601
602
|
# @param parent_declaration [Lutaml::Xml::Schema::Xsd::Element, nil]
|
|
602
603
|
# @param local_name [String]
|
|
@@ -609,7 +610,6 @@ module Lutaml
|
|
|
609
610
|
particles = []
|
|
610
611
|
collect_named_particles(particle_for_type(type), local_name,
|
|
611
612
|
particles, {}.compare_by_identity, 0)
|
|
612
|
-
return [] if particles.length < 2
|
|
613
613
|
return [] unless particles.all? { |p| @namespaces.key?(p) }
|
|
614
614
|
|
|
615
615
|
particles
|
data/lib/lutaml/xsd/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: lutaml-xsd
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.2.
|
|
4
|
+
version: 1.2.107
|
|
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-11-
|
|
11
|
+
date: 2026-11-09 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: liquid
|