{"schema":"https://ver.cy/schemas/card/1.0.0","id":"vr.wm-xct-032","code":"wm-xct-032-currency-monetary-value","url":"https://ver.cy/models/wm-xct-032-currency-monetary-value/","name":"Currency / Monetary Value","alternateNames":[],"kind":"world-model","status":"published","version":"0.3.0-research.1","language":"en","classifiers":{"family":"World Models","category":"Cross-cutting context","entryKind":"mixin","plane":"","domain":["XCT.MNY"],"industry":["Cross-industry"],"navPath":"NAV.XCT.MNY","tags":["currency","monetary","value","xct.mny"],"facets":{}},"whatItIs":"WM-XCT-032 is a mixin that a host object embeds when it needs to state a monetary value. Its boundary covers four concerns. (a) Currency identity: the code used, the authoritative catalogue and published edition it was resolved against, the code's class and status, and references to successor or redenominated codes. (b) Exact amount representation: sign, integer coefficient and decimal scale, canonical lexical form versus display form, zero and negative-zero handling, monetary intervals, and explicit exact, approximate, unknown, missing and not-applicable states. (c) Precision and valuation: the declared scale and rounding intent, the valuation date, and the reference to any conversion applied to reach the stated amount. (d) Governance of the mixin itself: ownership, catalogue pinning and integrity, supersession, and tombstoning of declarations. The model is never a currency master, a price, an account, a ledger entry, a payment, a transaction, a financial instrument or an economic event; it is the monetary field on someone else's object.","purpose":"Provide an embeddable declaration of a monetary value on a host object: an exact decimal amount bound inseparably to an identified currency, with declared precision and rounding intent, an optional valuation date and conversion reference, and explicit value states, so that an agent can read, validate and reproduce monetary context without inferring any of it.","scope":{"in":["Inseparable pairing of an exact amount with an identified currency reference on a host object","Currency code identity by alphabetic and numeric catalogue codes, with the catalogue and its published edition recorded","Code class and status as published by the catalogue: active, historic, registered fund, testing, precious metal and no-currency codes","References to successor or redenominated currency codes and to the catalogue amendment that recorded them","Exact decimal amount as sign, integer coefficient and scale, with canonical lexical form distinguished from display form","Declared scale, declared rounding intent and the digit bounds a host or profile imposes","Valuation date and the reference to any conversion applied, expressed as parameters of this declaration","Explicit value determinacy states and monetary interval endpoints, including explicit absence that is never expressed as zero","Governance of the mixin: catalogue pinning, integrity verification, supersession and tombstoning of the declaration"],"out":["Allocation, amendment, withdrawal or reinstatement of currency codes, which belong to the ISO 4217 Maintenance Agency","Publication, amendment and supersession of exchange-rate series by a treasury, central bank or market data publisher","Country, jurisdiction, legal-tender status, exchangeability, capital controls or purchasing power, none of which are derivable from a currency code","Locale formatting: symbols, decimal separators, grouping, cash rounding increments and localized currency names","Prices, quotes, fees, invoices, accounts, balances, ledger entries, journal postings, payments and settlement","Financial instruments, cash-flow schedules, valuation methodologies and accounting or tax treatment","Arithmetic execution, exception signalling and rounding-mode implementation by a numeric runtime","Enforcement of policy, runtime evaluation of rules and the storage or evaluation of audit trails","Digital-token or crypto-asset unit identity registers and community or complementary currency registers"],"boundaries":[{"neighbor":"ISO 4217 currency and funds code register (Maintenance Agency lists)","distinction":"The register owns allocation, amendment, withdrawal and the published minor-unit values; this mixin only carries a reference to a code plus the list and published edition it was resolved against, and re-states none of the register's lifecycle."},{"neighbor":"Locale display and formatting data (Unicode CLDR)","distinction":"Symbols, localized names, grouping, decimal separators and cash rounding increments are presentation owned by locale data; this mixin holds them only as optional labels and never treats a symbol as an identifier."},{"neighbor":"Financial message and payment models (ISO 20022 amount and currency types)","distinction":"Message profiles constrain amount digits and currency attributes for a payment instruction; this mixin defines the monetary declaration itself and owns no message, instruction or settlement lifecycle."},{"neighbor":"Exchange-rate publication series (public-authority reporting rates)","distinction":"The publisher owns rate identity, effective periods, amendment and supersession; this mixin carries the valuation date and a reference to the rate used, and may derive a documented direct, inverse or cross-rate for a monetary calculation without becoming the publication authority for any source rate."},{"neighbor":"Host object that declares the money (price, fee, balance, budget line)","distinction":"The host owns record identity, record lifecycle and the business meaning of the amount, including what a negative amount signifies; this mixin owns only the shape and integrity of the monetary declaration it contributes."},{"neighbor":"Numeric arithmetic environment (IEEE 754 decimal formats, general decimal arithmetic)","distinction":"The arithmetic environment owns operations, rounding-mode execution and exception signalling; this mixin only fixes the abstract number model used to represent the declared amount exactly."}]},"distinguishingFeatures":["Represents money as an exact decimal amount with a currency code pinned to a catalogue edition, never as a binary float.","Requires a named rule for every rounding and exposes the residual it creates.","Keeps conversion separate: rates are chosen by a caller policy and recorded with the result.","Leaves display formatting to locale data and payments to financial message models."],"structure":{"bundles":[{"id":"money-core-currency-reference-bundle","name":"Currency Reference Identity","description":"How the currency component of a monetary declaration is identified: which authoritative catalogue and published edition governs the code, which code forms are used, what class and status the catalogue assigns, and how successor or redenominated codes are referenced without owning their lifecycle.","layers":[{"id":"money-core-code-identity-layer","name":"Catalogue Binding and Code Form","description":"Which catalogue, list and published edition the currency code was resolved against, and which code forms (alphabetic, numeric) carry identity while symbols and localized names remain labels.","findings":[{"id":"money-core-catalogue-binding","name":"Authoritative currency catalogue and pinned edition","description":"A currency code only identifies a currency relative to a named catalogue, a specific list within it and a published edition. The ISO 4217 lists carry an explicit published-edition attribute and are amended over time, so a declaration must record which catalogue, which list and which edition it was resolved against, and must be able to verify the retained snapshot before resolving anything against it.","questions":[{"text":"Which authoritative currency catalogue and maintaining authority governs the code used in this declaration?","id":"money-core-q-catalogue-authority","kind":"provenance"},{"text":"Which published edition or snapshot of that catalogue was in force when this declaration was made?","id":"money-core-q-catalogue-edition","kind":"temporal"},{"text":"Which list within the catalogue supplied the entry: current currencies and funds, registered fund codes, or historic entries?","id":"money-core-q-catalogue-list","kind":"identity"},{"text":"How is the retained catalogue snapshot verified as unaltered before any code is resolved against it?","id":"money-core-q-catalogue-integrity","kind":"validation"},{"text":"What must a consumer do when its own currency register differs from the catalogue named in this declaration?","id":"money-core-q-catalogue-divergence","kind":"interoperability"}]},{"id":"money-core-code-forms","name":"Alphabetic and numeric code forms; symbols as labels only","description":"The catalogue publishes both an alphabetic code and a numeric code for an entry, and either may reach this declaration. Display symbols and localized currency names are ambiguous across currencies and must be carried, if at all, as presentation labels that never participate in identity or matching.","questions":[{"text":"Which alphabetic code and which numeric code identify the currency, and which form is authoritative for exchange here?","id":"money-core-q-code-forms","kind":"identity"},{"text":"What constraints govern an accepted code token: character set, length, case and permitted normalization?","id":"money-core-q-code-constraints","kind":"constraint"},{"text":"Is any presented currency symbol or localized name recorded strictly as a display label rather than as an identifier?","id":"money-core-q-symbol-role","kind":"classification"},{"text":"How are the alphabetic and numeric forms reconciled when the host supplies only one of them?","id":"money-core-q-code-form-consistency","kind":"relationship"}]}]},{"id":"money-core-code-status-layer","name":"Code Class, Status and Succession References","description":"What class and status the catalogue assigns to a code, what that does and does not permit a consumer to infer, and how successor or redenominated codes are referenced as facts published elsewhere.","findings":[{"id":"money-core-code-class-status","name":"Code class, status and published minor unit","description":"Catalogue entries are not homogeneous: alongside national currencies the register carries registered fund codes, precious-metal codes, a testing code and a code for transactions where no currency is involved, and it publishes minor units as not applicable for several of these. Class and status must be read from the pinned edition, and nothing about jurisdiction, legal tender or exchangeability may be inferred from the code.","questions":[{"text":"Which class does the code belong to: active national currency, registered fund code, precious metal, testing code, or no-currency code?","id":"money-core-q-code-class","kind":"classification"},{"text":"Is the code active or withdrawn according to the pinned catalogue edition rather than according to the current one?","id":"money-core-q-code-status","kind":"state"},{"text":"Which minor-unit value does the catalogue publish for this code, and what happens when it is published as not applicable?","id":"money-core-q-minor-unit","kind":"constraint"},{"text":"How is a code absent from the pinned catalogue edition recorded without silently defaulting to any currency?","id":"money-core-q-unresolved-code","kind":"exception"},{"text":"What is explicitly not derivable from a currency code, and where is that prohibition recorded?","id":"money-core-q-non-inference","kind":"definition"}]},{"id":"money-core-succession-reference","name":"Successor and redenomination references","description":"When a currency is replaced or redenominated, the catalogue records the withdrawal and the successor arrangement. This declaration may carry a reference to the successor code and to the instrument or amendment that recorded it, so a reader can follow the chain, but it neither owns that transition nor re-expresses a historical amount in the successor currency.","questions":[{"text":"Which successor code does the catalogue associate with the withdrawn code used by this declaration?","id":"money-core-q-successor-code","kind":"relationship"},{"text":"What withdrawal or changeover period does the catalogue publish, and at what granularity is it published?","id":"money-core-q-withdrawal-timing","kind":"temporal"},{"text":"Which body declared the replacement or redenomination, and where is that declaration recorded?","id":"money-core-q-succession-authority","kind":"authority"},{"text":"Why must a historical amount stay expressed in its original currency inside this declaration rather than be restated in the successor currency?","id":"money-core-q-no-restatement","kind":"constraint"}]}]}]},{"id":"money-core-amount-representation-bundle","name":"Exact Amount Representation and Declaration Integrity","description":"How the numeric part of a monetary declaration is represented exactly, how its canonical form differs from any display form, how amount and currency stay inseparable on the host object, and how determinacy states and intervals are declared so that absence is never silently expressed as zero.","layers":[{"id":"money-core-decimal-form-layer","name":"Exact Decimal Value and Canonical Form","description":"The abstract number model used for the amount, the digit bounds that constrain it, and the canonical lexical form that distinguishes a stored value from a rendered string.","findings":[{"id":"money-core-exact-decimal","name":"Exact decimal amount as sign, coefficient and scale","description":"The amount is an exact decimal value: a sign, a non-negative integer coefficient and a scale expressed as a non-positive power of ten. Binary floating point is rejected as the canonical representation because it cannot represent common decimal fractions exactly. Digit bounds on coefficient and scale are declared by the host or profile, and a value that cannot be represented exactly at the declared scale is rejected rather than rounded away.","questions":[{"text":"What sign, integer coefficient and scale together represent the declared amount exactly?","id":"money-core-q-decimal-triple","kind":"measurement"},{"text":"Which exact encodings are permitted for the amount, and why is binary floating point excluded from them?","id":"money-core-q-encoding-choice","kind":"constraint"},{"text":"What total-digit and fraction-digit bounds does the host or profile impose on this amount?","id":"money-core-q-digit-bounds","kind":"requirement"},{"text":"How is a supplied value rejected when it cannot be held exactly at the declared scale?","id":"money-core-q-inexact-rejection","kind":"validation"}]},{"id":"money-core-lexical-canonical","name":"Canonical lexical form, trailing zeros and zero handling","description":"The canonical lexical form of the amount is fixed and distinct from any rendered display string. Because numerically equal decimal representations can differ visibly, the declaration must state whether trailing zeros are significant, and must state how zero and a signed zero are treated, so that round-tripping preserves sign, coefficient and scale.","questions":[{"text":"What is the canonical lexical form of this amount, and how does it differ from any string rendered for display?","id":"money-core-q-canonical-form","kind":"definition"},{"text":"Are trailing zeros significant here, so that a value written with two fraction digits differs from the same value written with one?","id":"money-core-q-trailing-zeros","kind":"constraint"},{"text":"How are zero and a signed negative zero distinguished, normalized or rejected in this declaration?","id":"money-core-q-zero-handling","kind":"state"},{"text":"Which round-trip check proves that parsing and re-serializing preserves sign, coefficient and scale?","id":"money-core-q-round-trip","kind":"quality"}]}]},{"id":"money-core-declaration-layer","name":"Declaration Integrity, Determinacy and Intervals","description":"How the monetary declaration holds together as one unit on its host, what the host says a negative amount means, and how determinacy is declared across exact point values, intervals, approximations and explicit absence.","findings":[{"id":"money-core-pair-integrity","name":"Amount and currency inseparability on the host object","description":"Amount, currency reference and declared scale form one indivisible declaration: published monetary datatypes bind them into a single type, and a value interchanged without a known currency code is not interpretable. The host object owns the business meaning, including what a negative amount signifies, and projections that split the parts into separate fields must still assert the binding.","questions":[{"text":"Which fields make up the indivisible declaration, and may any of them be stored or transmitted without the others?","id":"money-core-q-declaration-unit","kind":"composition"},{"text":"Which host object and field declares this monetary value, and what meaning does the host assign to it?","id":"money-core-q-host-binding","kind":"ownership"},{"text":"What does a negative amount signify in this host context, and which signs are permitted at all?","id":"money-core-q-negative-meaning","kind":"definition"},{"text":"How is the binding preserved when a target format splits amount and currency into separate fields?","id":"money-core-q-projection-integrity","kind":"interoperability"}]},{"id":"money-core-value-states","name":"Declared determinacy: exact point, interval, approximate or explicitly absent","description":"A monetary field must be able to say what kind of assertion it is making. Published monetary vocabularies support a value or a bounded range, and published absent-value vocabularies distinguish unknown, masked, not-applicable, unsupported and error. The declaration therefore carries an explicit determinacy state, so an absent or unknown value is never silently expressed as zero and an interval is never collapsed to a point.","questions":[{"text":"Which determinacy state does this declaration assert: exact point value, interval, approximate value, unknown, missing or not applicable?","id":"money-core-q-determinacy-state","kind":"state"},{"text":"Which rule forbids expressing an absent, unknown or not-applicable monetary value as zero?","id":"money-core-q-zero-prohibition","kind":"constraint"},{"text":"When an interval is declared, which endpoints are present and is each endpoint inclusive or exclusive?","id":"money-core-q-interval-endpoints","kind":"composition"},{"text":"How is an interval checked for a shared currency reference and a consistent scale across both endpoints?","id":"money-core-q-interval-consistency","kind":"validation"},{"text":"What must a consumer do when it cannot honour a declared approximate or absent state?","id":"money-core-q-state-unsupported","kind":"decision"}]}]}]},{"id":"money-policy-precision-and-quantization","name":"Precision, Scale and Quantization Policy","description":"Everything an agent must know to state how many digits a monetary amount carries, where those digits come from, and under which explicit rule the amount was quantized.","layers":[{"id":"money-policy-precision-declaration","name":"Precision and Scale Declaration","description":"How declared precision, scale and currency minor-unit metadata are recorded, versioned and distinguished from incidental digits in a representation.","findings":[{"id":"money-policy-declared-scale-and-observed-digits","name":"Declared precision and scale versus observed digits","description":"A monetary amount carries a declared arithmetic context — scale, precision and accuracy mode — that is independent of the digits appearing in any serialisation. Trailing zeros, padded decimals and truncated text are representation artefacts; the declaration states which digits are meaningful and whether the value's exponent is preserved.","questions":[{"text":"What does the declared scale of this monetary amount assert about the meaningfulness of its digits?","id":"money-policy-scale-definition","kind":"definition"},{"text":"How is a mismatch between the digits observed in a representation and the declared scale detected and reported?","id":"money-policy-observed-vs-declared","kind":"validation"},{"text":"Are numerically equal values with different exponents, such as 1 and 1.00, preserved as distinct declarations or normalised?","id":"money-policy-cohort-preservation","kind":"constraint"},{"text":"Which external accuracy attribute does this declaration map to when the value is exchanged?","id":"money-policy-accuracy-attribute-mapping","kind":"interoperability"}]},{"id":"money-policy-minor-unit-currency-property","name":"Minor-unit metadata as a version-pinned currency property","description":"The number of minor-unit digits is a published property of the currency, not an implicit storage limit. It varies across zero, two, three and four digits and is absent for some funds, metals and index codes, and it changes when a currency is created, withdrawn or altered — so every use must pin the list or amendment version consulted.","questions":[{"text":"Which published currency list and version supplied the minor-unit value used for this amount?","id":"money-policy-minor-unit-source","kind":"provenance"},{"text":"How is an amount handled when the currency has no defined minor unit or the code denotes a fund, metal or index?","id":"money-policy-minor-unit-absent","kind":"exception"},{"text":"What happens to previously recorded amounts when a currency's minor unit changes or the currency is withdrawn?","id":"money-policy-minor-unit-change","kind":"lifecycle"},{"text":"Where an exchange profile's decimal limit differs from the currency minor unit, which limit governs and how is the difference recorded?","id":"money-policy-minor-unit-vs-field-limit","kind":"authority"}]}]},{"id":"money-policy-quantization-rules","name":"Quantization and Rounding Rules","description":"The explicit, named rules under which an amount is quantized — mode, increment, direction and tie handling — and the stage of a calculation at which each rule applies.","findings":[{"id":"money-policy-quantization-rule-specification","name":"Rounding mode, increment, direction and tie handling","description":"A quantization rule is interpretable only when mode, target exponent or increment, direction and tie handling are all stated. Accounting quantization to a currency minor unit, cash quantization to a non-decimal increment such as five cents, and custom contractual quantization are distinct named rules with different authorities and channel scopes — not variants of one default.","questions":[{"text":"Which named rounding mode applies to this value, and what authority establishes it?","id":"money-policy-rounding-mode-selection","kind":"authority"},{"text":"Is the quantization target a power-of-ten scale or a non-decimal increment, and what exactly is that target?","id":"money-policy-quantization-target-kind","kind":"classification"},{"text":"How are exact half-way values resolved, and does the resolution differ by sign?","id":"money-policy-tie-handling","kind":"constraint"},{"text":"Which payment or presentation channel does this quantization rule apply to, and which channels does it explicitly exclude?","id":"money-policy-rule-applicability","kind":"requirement"},{"text":"How is a change to the quantization rule versioned so that historic amounts remain reproducible?","id":"money-policy-rule-versioning","kind":"provenance"}]},{"id":"money-policy-rounding-stage-and-precision-tiers","name":"Calculation, settlement and display precision; intermediate versus final rounding","description":"Distinct precision tiers apply at different stages. Intermediate calculation frequently requires more digits than the reporting minor unit, settlement quantizes to the payable increment, and presentation may differ again. Whether rounding is applied per component or once at the end changes the result, so the stage must be declared and results derived from already-rounded inputs must not be re-rounded silently.","questions":[{"text":"Which precision tiers are declared for this value, and what scale does each tier carry?","id":"money-policy-precision-tier-set","kind":"composition"},{"text":"At which points in the calculation was rounding applied, and was any intermediate result rounded?","id":"money-policy-rounding-stage-point","kind":"process"},{"text":"When a value is derived by conversion, what precision governs the conversion factor and the intermediate result?","id":"money-policy-conversion-precision","kind":"requirement"},{"text":"What is reported when a consumer requires a precision tier the producer did not declare?","id":"money-policy-tier-mismatch-exception","kind":"exception"}]}]}]},{"id":"money-policy-integrity-and-comparison","name":"Numeric Integrity, Comparison and Reconciliation","description":"What must be true before monetary values are treated as exact, compared, ordered, aggregated or split, and how failures and residuals are surfaced rather than silently absorbed.","layers":[{"id":"money-policy-numeric-integrity","name":"Exactness, Bounds and Failure Signals","description":"Whether a monetary value is exact, approximate or bounded, and how representability limits and arithmetic exceptions are recorded rather than hidden.","findings":[{"id":"money-policy-exactness-and-bounded-values","name":"Exact, approximate and bounded monetary values","description":"Some amounts are exact, such as a stated payable sum; others are rounded, truncated, estimated or known only within bounds. The distinction must be declared, because comparison, aggregation and further rounding of an approximate value carry different guarantees, and the inexactness must be attributed to the operation that introduced it.","questions":[{"text":"Is this amount asserted as exact, rounded, truncated or estimated within bounds?","id":"money-policy-exactness-assertion","kind":"quality"},{"text":"If the value is bounded rather than point-valued, what are the bounds and how were they derived?","id":"money-policy-value-bounds","kind":"measurement"},{"text":"Which operation introduced the inexactness, and was that recorded at the time the operation ran?","id":"money-policy-inexactness-provenance","kind":"provenance"},{"text":"How does exactness status propagate when this amount is combined with other amounts?","id":"money-policy-exactness-propagation","kind":"relationship"}]},{"id":"money-policy-representability-and-failure-signals","name":"Representability limits, overflow, underflow and explicit failure","description":"Declared digit limits, profile-imposed total and fraction digit capacity, and arithmetic context precision all constrain what can be represented. When a value or an operation exceeds them the condition must be signalled by name rather than resolved by silent truncation, clamping, default rounding or coercion into binary floating point.","questions":[{"text":"What total-digit and fraction-digit capacity governs this value, and where does that limit originate?","id":"money-policy-digit-capacity","kind":"constraint"},{"text":"Which arithmetic exception conditions must be surfaced to the host, and by what names?","id":"money-policy-exception-signal-set","kind":"requirement"},{"text":"What behaviours are prohibited when a value cannot be represented at the required scale?","id":"money-policy-coercion-prohibition","kind":"exception"},{"text":"How is decimal fidelity preserved when the value crosses a representation boundary?","id":"money-policy-transport-fidelity","kind":"interoperability"}]}]},{"id":"money-policy-comparison-and-allocation","name":"Comparison, Aggregation and Allocation Compatibility","description":"The preconditions under which monetary values may be compared, ordered, aggregated or split, the tolerance the host supplies, and how residuals are assigned so that parts reconcile exactly to the whole.","findings":[{"id":"money-policy-comparison-compatibility-and-tolerance","name":"Compatibility gate and host-supplied tolerance for comparison and aggregation","description":"Equality, ordering and aggregation are defined only for values in a compatible context: identical currency binding, compatible valuation basis, and a stated rounding context. Equality must also state whether it compares numeric value alone or value and quantum together. Tolerance and materiality thresholds are supplied by the host or reporting framework; the mixin records which threshold was applied and refuses incompatible operations rather than converting implicitly.","questions":[{"text":"Which attributes must match before two monetary values may be compared or added?","id":"money-policy-compatibility-predicate","kind":"constraint"},{"text":"Does equality compare numeric value only, or numeric value together with scale and exponent?","id":"money-policy-equality-semantics-choice","kind":"definition"},{"text":"What tolerance or materiality threshold applies to this comparison or reconciliation, and who set it?","id":"money-policy-tolerance-source","kind":"ownership"},{"text":"What is returned when values are incompatible, and what must never happen implicitly?","id":"money-policy-incompatible-response","kind":"exception"},{"text":"Under which single rounding and valuation context is an aggregate reported, and how is that context recorded with the result?","id":"money-policy-aggregation-context","kind":"decision"}]},{"id":"money-policy-allocation-residual-and-reconciliation","name":"Allocation, residual assignment and reconciliation","description":"Splitting a total into quantized parts almost always leaves a residual. The allocation rule, the deterministic input ordering, the recipient of the residual and the proof that the parts sum exactly to the total must all be recorded; profiles that permit a rounding adjustment carry it as an explicit disclosed amount rather than absorbing it into an arbitrary part.","questions":[{"text":"Which allocation rule distributes the total, and how are the quantized parts derived from it?","id":"money-policy-allocation-rule","kind":"process"},{"text":"Where is the residual assigned, and is it disclosed as an amount in its own right?","id":"money-policy-residual-assignment","kind":"decision"},{"text":"What evidence demonstrates that the allocated parts reconcile exactly to the total?","id":"money-policy-reconciliation-proof","kind":"evidence"},{"text":"Is the allocation reproducible from the recorded inputs alone?","id":"money-policy-allocation-repeatability","kind":"validation"}]}]}]},{"id":"money-val-bundle-valuation-assertion","name":"Valuation assertion context","description":"The context that turns an amount into an interpretable valuation: which role the amount plays, at which instant it is asserted to hold, on which declared measurement basis, and against which market or scenario.","layers":[{"id":"money-val-layer-amount-role-frame","name":"Amount role and temporal frame","description":"Declares which role a monetary amount occupies among the sibling amounts derived from one underlying value, and the instant at which that role-tagged amount is asserted to hold.","findings":[{"id":"money-val-finding-amount-role","name":"Amount role pinned to a versioned classifier","description":"Every monetary amount declares its role — original/transaction, settlement, functional, presentation or reported — as a value drawn from a named classifier at a pinned version, so that role-tagged siblings derived from one underlying value coexist and a converted amount can never silently stand in for the original.","questions":[{"text":"Which amount role does this monetary value carry, and from which classifier scheme and version is that role value drawn?","id":"money-val-q-role-classifier-pin","kind":"classification"},{"text":"What identifier distinguishes this amount instance from the other role-tagged amounts derived from the same underlying value?","id":"money-val-q-role-instance-identity","kind":"identity"},{"text":"Which amount is the authoritative original that this role-tagged amount was derived from, and is that original still retrievable unchanged?","id":"money-val-q-role-original-link","kind":"relationship"},{"text":"Which combinations of amount role and currency are prohibited or mandatory for this subject class?","id":"money-val-q-role-currency-constraint","kind":"constraint"}]},{"id":"money-val-finding-valuation-instant","name":"Valuation instant separated from observation, publication and ingestion","description":"The instant or as-of point at which the amount is asserted to hold, recorded with seconds and an explicit offset, and kept in distinct fields from the underlying event instant, the instant the value was observed or derived, and the instant it was ingested into the adopting store.","questions":[{"text":"What is the valuation instant, expressed with seconds and an explicit offset, at which this amount is asserted to hold?","id":"money-val-q-valuation-instant","kind":"temporal"},{"text":"When was this value observed or derived, and when was it ingested into the adopting store?","id":"money-val-q-observation-vs-ingestion","kind":"provenance"},{"text":"Is the valuation point an instant, the closing point of a reporting period, or an interval, and how is that distinction encoded?","id":"money-val-q-instant-vs-interval","kind":"definition"},{"text":"What is recorded when the valuation point cannot be determined more precisely than a calendar date?","id":"money-val-q-instant-underdetermined","kind":"exception"}]}]},{"id":"money-val-layer-valuation-basis","name":"Measurement basis and market or scenario reference","description":"Captures which measurement basis was asserted, who is entitled to designate it, which market, venue, session or scenario it refers to, and how a non-exchangeable currency is handled — all as references, never as an implementation of the basis.","findings":[{"id":"money-val-finding-valuation-basis-market","name":"Declared basis, designating authority and market or scenario reference","description":"Records the asserted measurement basis (for example historical cost at the transaction-date rate, closing rate, period average, or fair value at a measurement date), the standard or policy that defines it, the authority entitled to designate it, and the market, venue, session or scenario the valuation refers to, including the case where the currency is not exchangeable and an estimated rate must be asserted.","questions":[{"text":"Which measurement basis is asserted for this amount, and which external standard or internal policy defines that basis?","id":"money-val-q-basis-definition","kind":"definition"},{"text":"Which body or policy owner is entitled to designate the measurement basis for this subject, and when was that designation made?","id":"money-val-q-basis-authority","kind":"authority"},{"text":"Which market, venue, trading session or scenario does the valuation refer to?","id":"money-val-q-basis-market-reference","kind":"spatial"},{"text":"How is the valuation recorded when the currency is not exchangeable into the target currency at the valuation instant?","id":"money-val-q-basis-exchangeability","kind":"exception"}]}]}]},{"id":"money-val-bundle-rate-quotation","name":"Exchange rate quotation context","description":"Everything needed to interpret an exchange rate applied to a valuation: which currencies in which direction under which unit convention, at what value and precision, from which source under which methodology, for which market session, valid over which interval, and at what quality status.","layers":[{"id":"money-val-layer-quotation-frame","name":"Currency pair, direction and quoted value","description":"Fixes which currency is base and which is quote, how many base units the rate prices, whether the stored value is the published direction or an inversion, and the numeric value with its declared accuracy.","findings":[{"id":"money-val-finding-pair-direction-rate-value","name":"Base and quote currency, unit convention and rate value precision","description":"Records the ordered currency pair with an explicit unit convention (how many units of quote currency price N units of base currency), whether the stored value is as published or inverted, and the rate value together with the number of decimal places to which it is accurate — never a bare number whose direction is inferred from field naming.","questions":[{"text":"Which currency is base and which is quote for this quotation, and how many base units does the rate value price?","id":"money-val-q-pair-direction","kind":"definition"},{"text":"What is the rate value and to how many decimal places is it accurate as published?","id":"money-val-q-rate-value-accuracy","kind":"measurement"},{"text":"Is the stored rate held in the publisher's direction or as an inverted value, and how is inversion flagged?","id":"money-val-q-rate-inversion","kind":"constraint"},{"text":"How does the stored direction map to a consumer or publisher whose quotation convention is the opposite?","id":"money-val-q-direction-interoperability","kind":"interoperability"}]}]},{"id":"money-val-layer-rate-provenance","name":"Rate source, type, validity and status","description":"Establishes who produced the rate under which methodology, what kind of rate it is, which market session it applies to, over which interval it is valid, when it was published and retrieved, and whether it is provisional, final, estimated or stale.","findings":[{"id":"money-val-finding-rate-source-and-type","name":"Rate type, publishing source and applicable market session","description":"Identifies the kind of rate asserted (spot, closing, period average, fixing, estimated) from a pinned rate-type classifier, the named publisher or administrator with its published methodology identifier, the resolvable series or dataset key in the owning publication model, and the market session the rate applies to.","questions":[{"text":"Which named publisher or administrator produced this rate, and under which published methodology identifier?","id":"money-val-q-rate-source-provenance","kind":"provenance"},{"text":"What rate type is asserted, drawn from which pinned rate-type code list and version?","id":"money-val-q-rate-type-classification","kind":"classification"},{"text":"Is this source designated as authoritative for this subject class, and by whose decision was it admitted?","id":"money-val-q-rate-source-authority","kind":"authority"},{"text":"Which series or observation key in the owning publication model does this rate reference resolve to?","id":"money-val-q-rate-series-resolution","kind":"relationship"}]},{"id":"money-val-finding-rate-validity-and-status","name":"Rate validity interval, publication and retrieval instants, and quality status","description":"Records the interval over which the referenced rate is valid for this valuation, the instant the publisher released it, the instant the adopting system retrieved it, and the quality status — provisional, final, estimated or stale — together with the staleness tolerance that was applied when the rate was accepted.","questions":[{"text":"Over which effective or as-of interval is the referenced rate valid for this valuation?","id":"money-val-q-rate-effective-interval","kind":"temporal"},{"text":"What quality status does the rate carry at the moment it is bound to this valuation?","id":"money-val-q-rate-status-state","kind":"state"},{"text":"What staleness tolerance was applied when this rate was accepted, and who set that tolerance?","id":"money-val-q-rate-staleness-tolerance","kind":"quality"},{"text":"When was the rate published by its source and when was it retrieved by the adopting system?","id":"money-val-q-rate-publication-retrieval","kind":"evidence"}]}]}]},{"id":"money-val-bundle-conversion-assurance","name":"Conversion derivation, linkage and assurance","description":"How a converted amount is derived from an original, what equation and rounding order produced it, how original, converted and separately referenced charges relate, what evidence makes the result reproducible, and how a valuation assertion is corrected or superseded.","layers":[{"id":"money-val-layer-conversion-derivation","name":"Derivation, computation and amount linkage","description":"The mechanics of arriving at a converted amount and of relating it to the preserved original and to separately referenced charge components.","findings":[{"id":"money-val-finding-derivation-and-chain","name":"Derivation method and ordered rate chain","description":"Declares whether the applied rate is direct, inverse, cross or triangulated, and where it is not direct, the ordered chain of constituent rate references with pivot currencies, so that a cross rate is recognisable as a derived quantity rather than a published one.","questions":[{"text":"Is the applied rate direct, inverse, cross or triangulated?","id":"money-val-q-derivation-method","kind":"classification"},{"text":"Which ordered constituent rates and pivot currencies make up the chain used to reach the target currency?","id":"money-val-q-chain-composition","kind":"composition"},{"text":"At which steps of the chain is intermediate rounding permitted, and at which is it prohibited?","id":"money-val-q-chain-rounding-points","kind":"constraint"},{"text":"How is the derived chain result checked against an independently published direct quotation when one exists?","id":"money-val-q-chain-cross-check","kind":"validation"}]},{"id":"money-val-finding-conversion-equation-rounding","name":"Conversion equation, rounding order and precision outcome","description":"Records the exact equation applied — including whether the rate was multiplied or divided and in which order chaining and rounding occurred — the target minor unit and rounding mode, and the tolerance within which a recomputation must reproduce the stored converted amount.","questions":[{"text":"Which exact equation, including multiplication or division direction, produced the converted amount?","id":"money-val-q-conversion-equation","kind":"process"},{"text":"In which order were conversion, chaining and rounding applied?","id":"money-val-q-rounding-order","kind":"constraint"},{"text":"To which minor unit or decimal precision was the converted amount rounded, and under which rounding mode?","id":"money-val-q-rounding-precision-outcome","kind":"measurement"},{"text":"What residual difference between a recomputation and the stored value is tolerated before the record is flagged?","id":"money-val-q-recomputation-tolerance","kind":"requirement"}]},{"id":"money-val-finding-original-converted-linkage","name":"Original-to-converted linkage with separately referenced charges","description":"Establishes the converted amount as a derived sibling that links back to an unchanged original, designates which amount is reported when the two differ, and keeps fees, spreads, mark-ups and taxes as references to their owning models rather than absorbing them into the rate or the converted amount.","questions":[{"text":"Which original amount does this converted amount derive from, and is that original preserved unchanged?","id":"money-val-q-linkage-original-preserved","kind":"relationship"},{"text":"Which fee, spread, mark-up or tax components are referenced alongside this conversion, and in which model do they live?","id":"money-val-q-linkage-charge-components","kind":"composition"},{"text":"Which amount is designated as the reported value when the original and converted amounts diverge?","id":"money-val-q-linkage-reported-designation","kind":"decision"},{"text":"What prevents a mark-up or spread from being absorbed into the recorded exchange rate?","id":"money-val-q-linkage-rate-purity","kind":"constraint"}]}]},{"id":"money-val-layer-assurance-correction","name":"Reproducibility evidence and correction","description":"What must be retained for an independent party to recompute a converted amount, and how a valuation assertion is corrected or superseded without mutating history.","findings":[{"id":"money-val-finding-reproducibility-evidence","name":"Reproducibility evidence for a valuation assertion","description":"The minimum retained reference set that lets an independent party recompute the converted amount: pinned rate reference and series key, pinned classifier versions, the equation and rounding parameters, and a capture of the source response at retrieval. The package holds references and parameters, not a mirror of the publisher's authoritative record, and it is not the adopting Dimension's audit trail.","questions":[{"text":"Which minimum set of references and parameters must be retained for an independent party to recompute this converted amount?","id":"money-val-q-evidence-minimum-set","kind":"evidence"},{"text":"How is a recomputation confirmed to reproduce the stored converted amount at the declared precision?","id":"money-val-q-evidence-recomputation","kind":"validation"},{"text":"What captures the exact response received from the rate source at retrieval time?","id":"money-val-q-evidence-source-capture","kind":"provenance"},{"text":"Who may read the reproduction package, and which parts are withheld when the source licence limits redistribution?","id":"money-val-q-evidence-access","kind":"access"}]},{"id":"money-val-finding-correction-supersession","name":"Correction and supersession of a valuation assertion","description":"How a previously asserted valuation is corrected or withdrawn: a new assertion supersedes the prior one with a reason, an effective interval and an issuer identity, while the superseded assertion is retained unmutated. Notification delivery, audit persistence and retention execution belong to the referenced models.","questions":[{"text":"Through which states does a valuation assertion move from asserted to superseded or withdrawn?","id":"money-val-q-correction-lifecycle","kind":"lifecycle"},{"text":"What triggers a correction — a revised source rate, a wrong classifier binding, or a rounding defect?","id":"money-val-q-correction-trigger","kind":"event"},{"text":"How long must a superseded assertion and its evidence remain retrievable, and under whose policy?","id":"money-val-q-correction-retention","kind":"retention"},{"text":"Who is accountable for issuing a correction and for informing downstream consumers of the superseded value?","id":"money-val-q-correction-ownership","kind":"ownership"}]}]}]},{"id":"money-govctl-bundle-authority-lifecycle","name":"Authority, accountability and monetary assertion lifecycle","description":"Who may assert, correct or re-base a monetary value on its host, how that assertion is identified without an independent identity, and how it is versioned, made effective, corrected and superseded against pinned normative references.","layers":[{"id":"money-govctl-layer-accountability-authority","name":"Accountable roles and change authority","description":"Advisory declarations of who is accountable for a monetary value and who is competent to change its amount, its currency, its rate source or the rounding policy applied to it.","findings":[{"id":"money-govctl-finding-roles-and-sod","name":"Accountable roles and segregation of duties","description":"Declaration of the parties associated with a monetary assertion - accountable value owner, currency-data steward, valuation authority, preparer, independent reviewer and approver - and of whether those positions are held by distinct parties. All declarations are advisory metadata; no permission is granted or withheld here.","questions":[{"text":"Which party is recorded as accountable for this monetary value on its host record, and over what interval?","id":"money-govctl-q-value-owner","kind":"ownership"},{"text":"Which function stewards the currency code list and rounding configuration, and which body is named as the valuation authority for the basis applied?","id":"money-govctl-q-steward-and-valuer","kind":"authority"},{"text":"Are preparer, independent reviewer and approver held by distinct parties for this assertion?","id":"money-govctl-q-sod-distinctness","kind":"process"},{"text":"Under which declared rule may one party hold more than one of these positions, and what compensating declaration is then recorded?","id":"money-govctl-q-sod-relief","kind":"exception"},{"text":"What evidence supports each declared role assignment where the reviewer relied on an automated check rather than re-performance?","id":"money-govctl-q-role-evidence","kind":"evidence"}]},{"id":"money-govctl-finding-change-authority","name":"Authority for amount correction, currency and rate-source selection, and rounding policy","description":"Declaration of the authority under which an existing amount or currency may be corrected, under which a rate source is chosen, and under which the rounding and minor-unit policy applied to the value may be changed - including whether that authority is jurisdictional or entity-internal.","questions":[{"text":"Which authority record permits a correction to the amount or currency of an existing monetary assertion?","id":"money-govctl-q-correction-authority","kind":"authority"},{"text":"On what basis was the exchange-rate source selected, and is the selection mandated by a jurisdictional rule or chosen under entity policy?","id":"money-govctl-q-rate-source-basis","kind":"decision"},{"text":"Which rounding and minor-unit policy version applies, and who is competent to change it?","id":"money-govctl-q-rounding-competence","kind":"constraint"},{"text":"What is recorded when the mandated rate source publishes nothing for the required instant or the currency is not exchangeable at the measurement date?","id":"money-govctl-q-rate-unavailable","kind":"exception"}]}]},{"id":"money-govctl-layer-assertion-lifecycle","name":"Assertion identity, versioning and normative pins","description":"How a monetary assertion is identified through its host, how its versions and effective intervals are managed, and which external code-list and policy versions were in force when it was made.","findings":[{"id":"money-govctl-finding-weak-identity","name":"Host-dependent weak identity of a monetary assertion","description":"A monetary value has no independent existence: it is identified by its host record, the role it plays on that host, its currency and its valuation context, mirroring how a reported monetary fact is identified by concept, context and unit. A valuation date is context, never an identifier.","questions":[{"text":"Which combination of host reference, role on the host, currency and valuation context uniquely identifies this monetary assertion?","id":"money-govctl-q-identity-key","kind":"identity"},{"text":"Under which conditions must the adopting Dimension mint a surrogate identifier instead of relying on the host key?","id":"money-govctl-q-surrogate-condition","kind":"requirement"},{"text":"How is this assertion distinguished from another that merely carries the same amount and the same currency?","id":"money-govctl-q-lookalike-discrimination","kind":"validation"},{"text":"Is the monetary assertion an inseparable component of the host record or a separately addressable record?","id":"money-govctl-q-addressability","kind":"composition"}]},{"id":"money-govctl-finding-version-supersession","name":"Version, effective interval, correction and supersession","description":"Lifecycle verbs govern the monetary binding on its host - asserted, revised, superseded, withdrawn - and never the currency, the rate feed, the transaction, the account or the instrument. Where preservation rules forbid rewriting, correction is expressed as an additive superseding version.","questions":[{"text":"Which lifecycle states may a monetary assertion occupy on its host, and which transitions between them are permitted?","id":"money-govctl-q-lifecycle-states","kind":"lifecycle"},{"text":"How are the interval over which the asserted value is effective and the instant at which it was recorded represented separately?","id":"money-govctl-q-time-separation","kind":"temporal"},{"text":"When a corrected amount is issued, is the prior assertion overwritten or retained as an immutable superseded version?","id":"money-govctl-q-correction-mode","kind":"state"},{"text":"Which external record must be cited when the change is driven by an event this model does not own, such as a restatement or a re-issued source document?","id":"money-govctl-q-external-trigger","kind":"event"}]},{"id":"money-govctl-finding-reference-pins","name":"Currency-list and policy version pins","description":"Record of which ISO 4217 code-list edition and amendment, and which rounding, rate-source and accounting-profile policy versions, were in force when the assertion was made - so the value stays interpretable after those references change. The register's own lifecycle stays with its maintenance agency.","questions":[{"text":"Which ISO 4217 code-list edition and amendment number were in force when this currency code was resolved?","id":"money-govctl-q-list-pin","kind":"provenance"},{"text":"How does a value citing a withdrawn or replaced currency code remain interpretable after the register publishes the replacement?","id":"money-govctl-q-historic-code","kind":"interoperability"},{"text":"Which policy versions - rounding, rate-source rule and accounting profile - are pinned to this assertion?","id":"money-govctl-q-policy-pins","kind":"constraint"},{"text":"How is a pin recorded when the referenced register or policy publishes no version identifier?","id":"money-govctl-q-unversioned-pin","kind":"exception"}]}]}]},{"id":"money-govctl-bundle-stewardship-interop","name":"Provenance, protection, retention and interoperability of monetary context","description":"How an original or derived monetary value is attributed and evidenced, how its confidentiality and access scopes are declared, how long the context is kept and what survives disposition, and how it is mapped to external representations under regional and accounting profiles.","layers":[{"id":"money-govctl-layer-provenance-evidence","name":"Value provenance and evidence integrity","description":"Lineage from original to derived monetary values, attribution of responsibility, and the integrity and limitations of the evidence that supports them.","findings":[{"id":"money-govctl-finding-value-provenance","name":"Provenance of original and derived monetary values","description":"Lineage of a monetary value: which original amount it came from, which conversion, translation, re-measurement or allocation produced it, which rate was applied and for which instant, and which agent is responsible - shaped to entity/activity/agent provenance relations.","questions":[{"text":"From which original value, by which activity and with which applied rate was this derived monetary value produced?","id":"money-govctl-q-derivation-chain","kind":"provenance"},{"text":"Which agent is attributed responsibility for the derived value, and on whose behalf did that agent act?","id":"money-govctl-q-attribution","kind":"relationship"},{"text":"Which instant does the applied rate refer to, and when was it retrieved from its publisher?","id":"money-govctl-q-rate-instant","kind":"temporal"},{"text":"Is the recorded value an as-transacted amount, a translated amount or a re-measured amount?","id":"money-govctl-q-measurement-basis","kind":"measurement"},{"text":"What tolerance is accepted between a value recomputed from the lineage and the stored value?","id":"money-govctl-q-recompute-tolerance","kind":"quality"}]},{"id":"money-govctl-finding-evidence-integrity","name":"Evidence integrity, audit references and stated limitations","description":"Integrity declarations for the evidence supporting a monetary value (rate snapshots, source documents, approval records), references to external audit or assurance records, and explicit limitations - including that a rate published for information only cannot be presented as a transaction rate. This model holds neither the audit trail nor the audit conclusion.","questions":[{"text":"Which integrity check value and algorithm are recorded for each evidence item supporting this value?","id":"money-govctl-q-evidence-digest","kind":"evidence"},{"text":"How is the completeness of the evidence set for a monetary assertion checked declaratively?","id":"money-govctl-q-evidence-completeness","kind":"validation"},{"text":"Which limitation must be stated when the supporting rate is published for information purposes only?","id":"money-govctl-q-source-limitation","kind":"constraint"},{"text":"What is recorded when evidence is missing, superseded, or supplied by a party with an interest in the value?","id":"money-govctl-q-evidence-defect","kind":"exception"},{"text":"Which external audit or assurance record is cited, and what does this model deliberately not assert about it?","id":"money-govctl-q-audit-reference","kind":"relationship"}]}]},{"id":"money-govctl-layer-protection-access","name":"Sensitivity classification and access scoping","description":"Confidentiality classification of monetary values and the attributes and scopes this model publishes so that an external decision point can evaluate a request.","findings":[{"id":"money-govctl-finding-sensitivity-access","name":"Sensitive or commercially restricted values and access scopes","description":"Classification of monetary values that are commercially restricted or otherwise sensitive, the handling labels that must travel with them, and the declaration of access constraints at bundle, layer, finding and artifact scope. The model contributes attributes only; decision and enforcement remain with the external authorization component.","questions":[{"text":"Which sensitivity class applies, and does it attach to the amount, the currency, the counterparty or the derivation?","id":"money-govctl-q-sensitivity-class","kind":"classification"},{"text":"Which values are commercially restricted such that disclosure would breach a contractual confidentiality term?","id":"money-govctl-q-commercial-restriction","kind":"privacy"},{"text":"Which resource and environment attributes must this model expose so that an external decision point can evaluate a request?","id":"money-govctl-q-published-attributes","kind":"access"},{"text":"How is a required masked, banded or rounded projection of a restricted amount declared without asserting that masking has been applied?","id":"money-govctl-q-projection-constraint","kind":"security"},{"text":"Which time-bounded exceptions permit broader access, for example to a regulator or an external auditor?","id":"money-govctl-q-access-exception","kind":"exception"}]}]},{"id":"money-govctl-layer-retention-interoperability","name":"Retention, disposition and profile interoperability","description":"How long monetary context and its evidence are kept, what survives disposition, and how the value is declared against regional and accounting profiles and mapped to external representations.","findings":[{"id":"money-govctl-finding-retention-hold","name":"Retention class, legal hold and tombstone","description":"Declaration of the retention class and trigger for this model's own monetary context records and evidence, the presence and source of a legal hold that suppresses disposition, and the tombstone content retained after disposal. Disposal execution, transfer and destruction evidence belong to the records programme.","questions":[{"text":"Which retention class, trigger event and minimum period apply to this monetary context record and its evidence?","id":"money-govctl-q-retention-class","kind":"retention"},{"text":"How is a legal hold recorded so that disposition is suppressed, and which external authority issued it?","id":"money-govctl-q-hold-authority","kind":"authority"},{"text":"Which end-of-life states may the record occupy, and which fields survive in a tombstone after disposal?","id":"money-govctl-q-tombstone-content","kind":"lifecycle"},{"text":"Which system executes disposal, and what does this model record as evidence that disposition occurred?","id":"money-govctl-q-disposal-execution","kind":"process"},{"text":"How are retention obligations reconciled when the host record and the monetary assertion carry different periods?","id":"money-govctl-q-period-conflict","kind":"constraint"}]},{"id":"money-govctl-finding-profile-conformance","name":"Regional and accounting profile declaration and interoperability mappings","description":"Declaration of the regional, tax or accounting profile that governs a value - including functional and presentation currency roles and statutory conversion rules - and of the mappings to external representations, each labelled as an alignment or an evidenced conformance claim, with declared losses.","questions":[{"text":"Which regional, tax or accounting profile governs this value, and which currency roles does it assign?","id":"money-govctl-q-profile-declaration","kind":"classification"},{"text":"To which external representations is this monetary context mapped, and is each mapping an alignment or a claim of conformance?","id":"money-govctl-q-mapping-kind","kind":"interoperability"},{"text":"Where the external representation cannot express a local field, what loss is declared and what round-trip behaviour is expected?","id":"money-govctl-q-mapping-loss","kind":"quality"},{"text":"Which rule takes precedence when two profiles mandate different rate sources for the same underlying value?","id":"money-govctl-q-profile-precedence","kind":"decision"},{"text":"Which checks must pass before a conformance claim, rather than an alignment, may be recorded?","id":"money-govctl-q-conformance-evidence","kind":"validation"}]}]}]},{"id":"money-svcstate-operations","name":"Monetary assertion operation semantics","description":"The complete state-reading and state-changing operation surface of a monetary assertion bound to a host record: deterministic as-of resolution, binding and creation preconditions, correction by supersession, review and approval evidence, and disposition readiness. Every operation is declarative and produces a resolution, a check result, a plan, an evidence compilation or a readiness verdict.","layers":[{"id":"money-svcstate-read-plane","name":"Read plane: effective-time resolution","description":"How a request selects exactly one version of a bound monetary assertion for a stated effective instant and observation cut-off, what it returns verbatim, and how it reports a non-result, a broken binding or a tombstone. Reads are safe: they change no state.","findings":[{"id":"money-svcstate-effective-read","name":"Deterministic as-of read of a bound monetary assertion","description":"The rules that make a read reproducible: which two instants the caller supplies, which single version those instants select, what must be returned unchanged, and how an unresolvable, absent or retired result is reported. A monetary amount carries an explicit validity interval rather than an implied always-current value, so a read without an as-of pair is under-specified.","questions":[{"text":"Which effective instant and which observation cut-off instant does a read supply, and what is the declared default when either is omitted?","id":"money-svcstate-q-asof-inputs","kind":"temporal"},{"text":"Which single assertion version is selected when more than one effective interval covers the requested instant, and how is a tie broken?","id":"money-svcstate-q-version-selection","kind":"state"},{"text":"Which stored values must a read return verbatim, and which derivations are forbidden in the read path?","id":"money-svcstate-q-read-nonderivation","kind":"constraint"},{"text":"How does a read report an unresolvable host binding, a tombstoned assertion, or an as-of request outside the supported range?","id":"money-svcstate-q-read-failure","kind":"exception"}]}]},{"id":"money-svcstate-change-plane","name":"Change plane: binding, creation and correction","description":"How a monetary assertion is attached to a resolvable host anchor and created under explicit preconditions and idempotency, and how an erroneous or overtaken assertion is corrected by issuing a superseding version while the original stays immutable.","findings":[{"id":"money-svcstate-host-bind","name":"Create and bind a monetary assertion to a resolvable host anchor","description":"The anchor that ties an assertion to one host record and attribute path, the preconditions that must hold before a create is accepted, the mechanism that distinguishes a retried request from a second assertion, and the references whose continued resolvability keeps the binding valid.","questions":[{"text":"Which resolvable identifier and attribute path anchor the assertion to its host, and how is that anchor demonstrated to resolve?","id":"money-svcstate-q-host-anchor","kind":"identity"},{"text":"Which preconditions must hold before a create is accepted, and which of them are hard failures rather than warnings?","id":"money-svcstate-q-create-preconditions","kind":"requirement"},{"text":"How is a repeated create recognised as the same request rather than as a second assertion?","id":"money-svcstate-q-idempotency","kind":"process"},{"text":"Which outbound references must stay resolvable for the binding to remain valid, and what is reported when one of them breaks?","id":"money-svcstate-q-integrity-refs","kind":"relationship"}]},{"id":"money-svcstate-supersede-correct","name":"Correct a monetary assertion by supersession","description":"How a wrong or overtaken monetary assertion is replaced: a new version linked to the one it supersedes, the prior effective interval closed without gap or overlap, a current concurrency validator presented, and the original left byte-for-byte intact but marked invalid where appropriate.","questions":[{"text":"Which links connect a correcting version to the version it supersedes, and which agent and reason are recorded with it?","id":"money-svcstate-q-supersession-link","kind":"provenance"},{"text":"How is the effective interval of the superseded version closed, and how are gaps and overlaps across the version series detected?","id":"money-svcstate-q-interval-closure","kind":"temporal"},{"text":"Which concurrency validator must a correction present, and what happens when the validator is stale?","id":"money-svcstate-q-concurrency","kind":"constraint"},{"text":"Which parts of a superseded version may never be rewritten, and how is an unusable version marked without erasing it?","id":"money-svcstate-q-immutability","kind":"lifecycle"}]}]},{"id":"money-svcstate-assurance-plane","name":"Assurance plane: review evidence and disposition readiness","description":"What evidence must accompany a proposed monetary state change before it can be relied on, how eligibility is reported without deciding access, and how readiness for removal is assessed and handed to the parties that actually execute disposition.","findings":[{"id":"money-svcstate-review-evidence","name":"Review and approval evidence for a proposed monetary state change","description":"The evidence set that makes a proposed create, correction or disposition action reviewable: reviewer identity and asserted competence, the decision recorded, the securing proof and validity of the evidence, and an advisory eligibility statement that explicitly declines to decide access.","questions":[{"text":"Which evidence items must be present before a proposed monetary state change counts as reviewed?","id":"money-svcstate-q-review-evidence-set","kind":"evidence"},{"text":"Which authority is asserted to give the reviewer competence for this action, and where is that mandate recorded?","id":"money-svcstate-q-review-authority","kind":"authority"},{"text":"What does the eligibility report assert, and what does it explicitly decline to determine?","id":"money-svcstate-q-eligibility-advisory","kind":"access"},{"text":"How is review evidence checked for currency and revocation before anyone relies on it?","id":"money-svcstate-q-evidence-validity","kind":"validation"}]},{"id":"money-svcstate-disposition-readiness","name":"Deletion and tombstone readiness for a monetary assertion","description":"How readiness for removal is assessed and reported: which holds currently suspend disposition, which retention class governs and who owns it, what must survive as a tombstone so existing references stay interpretable, and which unresolved conditions block a verdict. Execution stays with the records authority and the host.","questions":[{"text":"Which holds or freezes currently suspend disposition of this assertion, and where does each one originate?","id":"money-svcstate-q-hold-state","kind":"retention"},{"text":"Which retention class or records schedule governs this assertion, and which authority owns that schedule?","id":"money-svcstate-q-retention-class","kind":"ownership"},{"text":"What must remain after removal so that references from the host and from prior versions stay interpretable?","id":"money-svcstate-q-tombstone-content","kind":"composition"},{"text":"Which unresolved conditions block a readiness verdict, and how is an incomplete assessment expressed?","id":"money-svcstate-q-disposition-blockers","kind":"exception"}]}]}]},{"id":"money-svccalc-operations","name":"Monetary calculation, reconciliation and projection operations","description":"The operation surface that turns a stored monetary value into a defensible computed, compared or published result: admissibility validation, quantisation, valuation and conversion with lineage, reconciliation against tolerance, and lossy or redacted export.","layers":[{"id":"money-svccalc-layer-admission","name":"Admission and quantisation","description":"Whether a monetary value may enter a calculation at all, and how it is brought to a target scale without silently losing or inventing value.","findings":[{"id":"money-svccalc-finding-validate","name":"Monetary value admissibility","description":"The checks a monetary value must pass before any downstream calculation: the currency identifier resolves in the referenced register and has a status permitting the requested operation; the amount is an exact decimal rather than a binary floating-point approximation; the declared scale, digit limits and allowed currency set of the caller-pinned profile are satisfied; and the measurement basis and valuation instant are present. Failure produces a typed outcome rather than a coerced value.","questions":[{"text":"Which admissibility checks must a monetary value pass before any downstream calculation is attempted?","id":"money-svccalc-q-validate-checks","kind":"validation"},{"text":"How is an unsupported, historic, fund or non-transactional currency identifier distinguished from an active transactional currency?","id":"money-svccalc-q-validate-code-status","kind":"classification"},{"text":"Which profile-specific constraints — allowed currency set, maximum total digits, maximum fraction digits and amount bounds — apply to the calling context?","id":"money-svccalc-q-validate-profile","kind":"constraint"},{"text":"What outcome is emitted when a value is inadmissible, and does that outcome block the operation or degrade it?","id":"money-svccalc-q-validate-outcome","kind":"exception"}]},{"id":"money-svccalc-finding-quantize","name":"Quantisation, rounding policy and residual","description":"How an exact amount is brought to a target scale: the target scale (usually but not always the currency minor unit), the rounding mode and tie-breaking rule, the resulting residual, and how a residual is allocated when a total is split across components so that the parts still sum to the whole. Precision loss is an explicit, declared outcome rather than an invisible side effect.","questions":[{"text":"What rounding policy — target scale, rounding mode and tie-breaking rule — governs quantisation of this amount?","id":"money-svccalc-q-quantize-policy","kind":"requirement"},{"text":"What residual arises from quantisation, and how is it computed, reported or allocated across components?","id":"money-svccalc-q-quantize-residual","kind":"measurement"},{"text":"When may the target scale differ from the currency minor unit, and which authority pins that deviation?","id":"money-svccalc-q-quantize-scale-deviation","kind":"authority"},{"text":"How is precision loss detected and expressed so that a consumer knows the value is no longer exact?","id":"money-svccalc-q-quantize-precision-loss","kind":"quality"}]}]},{"id":"money-svccalc-layer-valuation","name":"Valuation and conversion","description":"How a monetary value is restated in another currency or measurement basis using an externally supplied rate binding, and what lineage must travel with the result so it can be reproduced or refuted.","findings":[{"id":"money-svccalc-finding-convert","name":"Rate binding, conversion arithmetic and derivation lineage","description":"The complete binding needed to make a conversion reproducible: which rate source and publication supplied the rate, the base and quote currencies and quotation direction, the reference time the rate represents versus the instant it was retrieved, any intermediate leg in a rate chain, the measurement basis of the result, the intermediate precision and the point at which quantisation is applied. The derived value always carries the original amount and currency; it never replaces them.","questions":[{"text":"Which rate source, publication and retrieval act produced the rate used for this derivation?","id":"money-svccalc-q-convert-provenance","kind":"provenance"},{"text":"How are base and quote currencies, quotation direction and any intermediate leg expressed so the computation can be reproduced exactly?","id":"money-svccalc-q-convert-direction","kind":"composition"},{"text":"Which reference time governs rate selection, and how does it differ from the valuation instant and the retrieval instant?","id":"money-svccalc-q-convert-reference-time","kind":"temporal"},{"text":"What arithmetic rules constrain the computation: multiplication versus division, permissibility of an inverse rate, intermediate scale and the order of quantisation?","id":"money-svccalc-q-convert-arithmetic","kind":"constraint"}]}]},{"id":"money-svccalc-layer-assurance","name":"Reconciliation and projection","description":"How derived and stated monetary values are checked against one another within a declared tolerance, and how they are projected outward — including deliberately lossy, rounded, banded or suppressed forms.","findings":[{"id":"money-svccalc-finding-reconcile","name":"Reconciliation against declared tolerance","description":"Comparison of a set of monetary values — components against a total, a restated value against an independently stated one, or a computed balance against a reported balance — where comparability requires the same currency, compatible measurement bases and a stated reference time. Tolerance is derived from declared precision intervals, an absolute band or a relative band, and is always declared, never assumed. Outside-tolerance difference is a reportable outcome with attribution, not an error to be absorbed.","questions":[{"text":"What tolerance applies to this reconciliation, and is it derived from declared decimals, an absolute band or a relative band?","id":"money-svccalc-q-reconcile-tolerance","kind":"measurement"},{"text":"Which values form the reconciliation set, and on what basis are they comparable to each other?","id":"money-svccalc-q-reconcile-comparability","kind":"relationship"},{"text":"What is emitted when the difference falls outside tolerance, and how is the unexplained residual attributed?","id":"money-svccalc-q-reconcile-breach","kind":"exception"},{"text":"What must accompany a reconciliation result so that an independent party can recompute the same verdict?","id":"money-svccalc-q-reconcile-evidence","kind":"evidence"}]},{"id":"money-svccalc-finding-export","name":"Projection, lossy export and redaction","description":"Projection of a monetary value into a target representation — a message field, a reporting fact, a tabular cell or a display string — and the deliberate degradation of that projection through scaling, banding, rounding or suppression. The projection declares its own losses: whether the exported value is exact, rounded to a coarser scale, an interval, or suppressed; whether it remains reconcilable; and under which external authorisation any redaction was applied.","questions":[{"text":"Into which target representation is the value projected, and how are amount, currency and precision mapped without changing meaning?","id":"money-svccalc-q-export-target","kind":"interoperability"},{"text":"Which redaction or generalisation operations are applied to the projected value, and which authorisation decision directed them?","id":"money-svccalc-q-export-redaction","kind":"access"},{"text":"How does the projection declare that it is lossy, non-reconcilable or partially suppressed?","id":"money-svccalc-q-export-loss-declaration","kind":"quality"},{"text":"How long may a projection be treated as current, and what marks it as superseded by a newer derivation?","id":"money-svccalc-q-export-currency","kind":"retention"}]}]}]}]},"agentConduct":{"may":["Parse and normalize an exact decimal amount.","Validate a currency code against the pinned catalogue edition.","Allocate a total into parts that reconcile exactly.","Calculate a reproducible conversion under a declared rate."],"mustNot":["Store or compute monetary amounts in binary floating point.","Add or compare amounts in different currencies without a declared conversion.","Round without a named rule or hide the rounding residual.","Pick an exchange rate without recording its source and time.","Initiate a payment or transfer of funds."],"requiresHuman":["Choosing the rate policy for a binding financial conversion.","Approving changes to rounding rules that affect customer charges."]},"ethics":{"considerations":["Rounding and conversion errors can systematically overcharge customers or underpay workers.","Prices and fees shown must match what is charged.","Historic and redenominated currencies need care so old debts and benefits are valued fairly."],"affectedParties":["Payers and payees","Consumers who see displayed prices","Auditors and tax authorities"]},"owners":{"steward":"The adopting Dimension names an owner package that holds the model specification, the pinned currency code-list edition reference and the governing rounding, rate-source and profile policy references, and publishes their version labels.","roles":[{"name":"Accountable value owner","responsibilities":["Is recorded as accountable for a monetary value on its host and for the correctness of its declared context","Confirms the governing profile and the sensitivity class applied to the value","Requests correction through the declared change authority rather than editing a preserved value"]},{"name":"Currency-data steward","responsibilities":["Maintains the pinned currency code-list edition and amendment reference and the handling of historic, fund and replaced codes","Maintains the rounding and minor-unit policy reference and its version label","Reports drift between pinned and currently published register content without amending stored assertions retroactively"]},{"name":"Valuation authority","responsibilities":["Names the rate source and measurement basis permitted for a class of values under a profile","Records the fallback basis when a mandated source publishes nothing or a currency is not exchangeable","Records the publisher-stated usage limitations that must travel with a cited rate"]},{"name":"Preparer","responsibilities":["Creates the monetary assertion with its host binding, valuation context, lineage fields and pins","Attaches the supporting evidence items and their digests","Declares explicitly where required context is unavailable rather than defaulting it"]},{"name":"Independent reviewer","responsibilities":["Checks the assertion against its governing profile, pins and lineage completeness","Records the review outcome as an observable state and the evidence relied on, distinguishing automated checks from re-performance","Records a segregation relief declaration and compensating measure where positions overlap"]},{"name":"Approver","responsibilities":["Records approval of the assertion or of a superseding correction under a cited change authority","Confirms that the correction mode complies with the applicable preservation rule","Does not act as preparer for the same assertion unless an unexpired relief declaration is recorded"]},{"name":"Records custodian","responsibilities":["Maintains the retention class, trigger and hold flags for monetary context records and their evidence","Consumes disposition readiness reports and links the externally produced disposition record","Ensures preserved records remain accessible to entitled examiners for the retention period"]},{"name":"Access administrator","responsibilities":["Maintains the mapping from sensitivity class and restriction basis to the attributes published for the external decision point","Registers time-bounded access exception declarations and their bases","Confirms that this model publishes attributes only and holds no decision or enforcement logic"]}],"masterSystems":[]},"relations":[{"target":"WM-ECO-004 (parent economic value model in the adopting registry)","type":"child","note":"Registers this mixin beneath the economic value parent so that monetary declarations inherit that parent's domain framing. Economic interpretation, valuation theory and economic-event semantics remain with the parent; this model contributes only the monetary field itself."},{"target":"ISO 4217 currency and funds code register (List One current, List Two registered funds, List Three historic) maintained by the ISO 4217 Maintenance Agency","type":"references","note":"Supplies currency code identity, class, status, published minor units and withdrawal periods. This model carries the code, the list, the pinned published edition and a snapshot digest; allocation, amendment, withdrawal and reinstatement of codes remain entirely with the Maintenance Agency."},{"target":"Host object model declaring a monetary value (price, fee, balance, budget line or equivalent)","type":"composes","note":"Embeds the monetary declaration into a host record. The host owns record identity, record lifecycle, access classification and the business meaning of the value, including what a negative amount signifies; this model owns only the declaration's shape and internal integrity."},{"target":"IEEE 754-2019 decimal formats and the general decimal arithmetic number model","type":"aligned","note":"Aligns the abstract representation of the amount to a sign, integer coefficient and exponent, and supports the rejection of binary floating point as canonical. Arithmetic operations, rounding-mode execution and exception signalling remain with the numeric runtime."},{"target":"W3C XML Schema decimal datatype (value space, lexical and canonical forms, totalDigits and fractionDigits facets)","type":"aligned","note":"Aligns the exact decimal value space, the canonical lexical form and the digit-bound facets used to constrain declared amounts. Schema validation execution and document processing remain with the consuming schema processor."},{"target":"ISO 20022 amount and currency data types (ActiveCurrencyAndAmount, ActiveOrHistoricCurrencyAndAmount and their currency attribute)","type":"aligned","note":"Aligns the inseparable amount-plus-currency pairing and the separation of active from historic currency vocabularies for message projections. Message definition, payment instruction lifecycle and settlement processing are not owned here."},{"target":"Unicode CLDR locale currency display data (symbols, localized names, digits, rounding and cash rounding)","type":"references","note":"Supplies presentation labels and locale formatting behaviour when a value is rendered. This model carries only optional non-identifying labels with their locale tag; formatting rules, symbol assignment and cash-rounding data remain with the locale data authority."},{"target":"Absent-value reason vocabulary (published data-absent-reason code system or an equivalent declared by the adopting Dimension)","type":"references","note":"Supplies the codes that distinguish unknown, masked, not-applicable, unsupported and error absences so that absence is asserted rather than defaulted. Vocabulary maintenance, versioning and code definitions remain with the publishing terminology authority."},{"target":"Exchange-rate publication model (official reporting or reference rate series published by a treasury, central bank or market data authority)","type":"references","note":"Where a declared amount resulted from a conversion, this model carries the valuation date and a reference identifying the rate used. Rate publication, effective periods, amendment and supersession remain with the publisher and are never re-derived here."},{"target":"WM-ECO-004 — parent economic model","type":"child","note":"WM-XCT-032 is registered as a child of the parent economic model. The parent owns economic concepts such as price, cost, income and value; this mixin owns only the representation, precision, quantization and comparison contract for the monetary amount those concepts carry."},{"target":"Adopting host model carrying a monetary value (Dimension-designated owner package)","type":"composes","note":"Attaches amount, currency binding, precision declaration, quantization context and comparison preconditions to a host record. The host supplies business meaning, tolerance and materiality thresholds, and retains persistence, process and transaction lifecycle."},{"target":"ISO 4217 currency and fund code register maintained by SIX","type":"references","note":"Carries the currency code, the minor-unit value and the pinned list or amendment version used for a precision decision. Code allocation, alteration and withdrawal, and the register's own publication lifecycle, remain with the maintenance agency and are not reproduced here."},{"target":"IEEE 754-2019 and the Decimal Arithmetic Specification","type":"aligned","note":"Aligns rounding-mode names, quantize semantics and exception-signal names with decimal arithmetic. The alignment is nominal: this model declares which mode and which signals apply, claims no conformance for any runtime, and does not own arithmetic execution."},{"target":"XBRL 2.1 accuracy attributes for numeric facts","type":"aligned","note":"Maps the declared accuracy of a monetary value onto reporting-instance accuracy attributes for interchange, recording the mapping's lossy directions. Taxonomy design, instance construction and reporting validation remain owned by the reporting framework."},{"target":"National cash-rounding instruments issued by public authorities","type":"references","note":"References the applicable cash-rounding instrument — increment, direction, channel scope and voluntary or mandatory status — as the authority for an increment-based quantization rule. Rule-making, jurisdictional reach and enforcement stay with the issuing authority."},{"target":"Exchange and reporting profiles that fix decimal limits (Peppol BIS Billing, ISO 20022 message profiles)","type":"aligned","note":"Aligns declared scale, digit capacity and rounding-adjustment elements with named exchange profiles so a value can be projected into them. Profile conformance, validation artefacts and message lifecycle remain owned by those profiles."},{"target":"Adopting Dimension governance, retention and audit facility","type":"references","note":"Supplies the owner package, retention schedule, access decisions and audit persistence for records produced under this mixin. This model states what must be reconstructible and refers execution, enforcement and audit-trail retention to that facility; it does not own or perform them."},{"target":"WM-ECO-004 (parent economic value model)","type":"child","note":"Registers WM-XCT-032 beneath the economic value parent. The parent owns the general notion of economic value and its role in economic reasoning; this model owns only the expression of that value as an exact amount in a designated currency with a valuation, quotation and conversion context. Measurement bases such as fair value and historical cost are defined by external standards and are referenced here, never redefined."},{"target":"Market data and exchange-rate publication model (rate series owner)","type":"references","note":"Carries a resolvable rate reference, series and observation key, effective interval, publication instant and retrieval capture, plus the subject-specific staleness tolerance and session binding. The series lifecycle, determination procedure, publication calendar, suspension and revision policy remain wholly with the publishing model."},{"target":"Benchmark administration model under Regulation (EU) 2016/1011","type":"aligned","note":"Aligns the rate source, methodology reference and input-data notion with benchmark administrator concepts so that an externally administered rate is recognisable as such. Administrator governance, the oversight function, input-data monitoring, methodology-change consultation and benchmark cessation stay with the administrator and its supervisor."},{"target":"ISO 4217 currency, funds and historic code register (SIX Maintenance Agency)","type":"aligned","note":"Binds currency designation, numeric code and minor unit to the authoritative register, and pins the register version applicable at the valuation instant so that amendments with later effective dates do not retroactively change historical amounts. This model neither mints nor retires currency codes."},{"target":"XBRL monetary fact model (unit measure and declared accuracy)","type":"aligned","note":"Aligns declared precision with the accuracy attributes and the requirement that a monetary fact carry a currency unit without embedded scaling, so that an amount exported to a reporting instance keeps its exactness or rounding claim. Taxonomy binding, instance assembly and report generation belong to the reporting model."},{"target":"Accounting model implementing IAS 21 foreign currency translation","type":"aligned","note":"Maps amount roles to functional and presentation currency concepts and to the requirement that translation uses a rate tied to a specific date. Determining the functional currency, recognising exchange differences, applying averaging expedients and preparing disclosures remain in the accounting model."},{"target":"Price, tariff, payment, settlement and trade execution models","type":"composes","note":"This model is embedded by commercial and settlement models to supply amount, currency, precision and valuation context on their monetary fields. Those models retain the instruction, execution, settlement and reconciliation lifecycles and the instrument or contract terms."},{"target":"Temporal instant mixin (RFC 3339 timestamps)","type":"composes","note":"Supplies the canonical timestamp form for valuation, rate effective, publication, observation, retrieval and ingestion instants, including the requirement for seconds and an explicit offset and the prohibition on unqualified local time."},{"target":"Adopting Dimension audit-trail and records-retention model","type":"references","note":"Correction notices and evidence packages are handed to this model by reference. Audit persistence, immutability enforcement, evidentiary weighting, retention period setting and disposition execution are owned there; WM-XCT-032 emits payloads and records outcome references only."},{"target":"Fee, spread, mark-up and tax component models","type":"references","note":"Charge components affecting a monetary value are referenced by identifier and component type so they remain visible without being absorbed into the exchange rate or the converted amount. Their calculation, rates, bases and lifecycles belong to those models."},{"target":"Host record model of the adopting Dimension (entity, event or document that carries the amount)","type":"composes","note":"Supplies the host reference, role on host and context period on which the mixin's weak identity depends; the host retains its own lifecycle and identity."},{"target":"ISO 4217 currency code register maintained by the ISO 4217 Maintenance Agency","type":"references","note":"Resolves the alphabetic code, numeric code, minor unit and code status, and supplies the edition and amendment number to pin. Code creation, replacement and withdrawal remain with the register."},{"target":"External authorization component (policy decision and enforcement points)","type":"references","note":"Consumes the published sensitivity, restriction and scope attributes and renders and enforces access decisions. This model never evaluates a request or discharges an obligation."},{"target":"Records management and disposition authority (retention schedules and disposal execution)","type":"references","note":"Owns the retention schedule, disposal execution, transfer and destruction evidence; this model declares class, trigger, hold and tombstone content and assesses readiness only."},{"target":"W3C PROV provenance model","type":"aligned","note":"Shapes original-versus-derived lineage, agent attribution, delegation and revision relations to standard provenance terms without adopting provenance graph storage, query or inference."},{"target":"Financial reporting framework model (IAS 21 translation, IFRS 13 fair value measurement)","type":"aligned","note":"Aligns currency roles, spot and closing rate use and measurement basis vocabulary; measurement methodology, hierarchy classification and disclosure obligations remain with the framework."},{"target":"XBRL business reporting projection (monetary fact, unit and context)","type":"aligned","note":"Maps the assertion to a fact bound to a concept, context and unit with a declared accuracy attribute, as one projection of the semantics held here."},{"target":"Exchange-rate publication and market-data source registry","type":"references","note":"Identifies the rate publisher, series, reference instant and any publisher-stated usage limitation. Rate determination, publication schedule and republication remain with the publisher."},{"target":"Jurisdictional tax and statutory conversion rule model","type":"references","note":"Supplies the mandated conversion rule and any notification duty for a given jurisdiction and transaction class; tax liability determination and filing remain outside this model."},{"target":"External audit and assurance record model","type":"references","note":"Carries a citation and a scope limitation for an audit record touching the value or its controls; evidence sufficiency, testing and conclusions remain with the auditor."},{"target":"Temporal expression profile for internet timestamps","type":"aligned","note":"Fixes how valuation instants, rate reference instants, retrieval times and recorded-at times are written, including the distinct meaning of an unknown local offset."},{"target":"WM-ECO-004 (parent economics model)","type":"child","note":"WM-XCT-032 sits beneath the economics parent. The parent owns economic value, markets and exchange concepts; this model contributes only the concrete bound monetary assertion and its declarative operation contract, and must not restate the parent's economic semantics."},{"target":"Host entity or event model that carries the monetary assertion (adopting-Dimension model)","type":"composes","note":"The assertion is mixed into a host record at a named attribute path. The host owns its own identifiers, its own lifecycle, persistence and enforcement; this model supplies the anchor, the version series, the operation preconditions and the reports. No host lifecycle state is defined here."},{"target":"ISO 4217 currency and funds register (ISO 4217 Maintenance Agency lists One, Two and Three)","type":"references","note":"Alphabetic codes, numeric codes and minor units are referenced from the register together with the list and status that applied at the effective instant. Allocation, amendment, redenomination and withdrawal of codes remain wholly with the maintenance agency."},{"target":"External authorization component (policy decision point and policy enforcement point)","type":"references","note":"This model supplies attributes and emits advisory eligibility statements. The decision point renders the authoritative Permit, Deny, Indeterminate or NotApplicable outcome and the enforcement point enforces it, including any obligations. No evaluation, decision or enforcement semantics are owned locally."},{"target":"Records authority, retention schedule and disposition programme","type":"references","note":"Retention classes, disposition authorities, holds and physical destruction are authored, decided and executed by the records authority. This model carries the references and reports readiness only; it never schedules, approves or performs disposition."},{"target":"Audit trail and event log model","type":"references","note":"Operation attempts and outcomes are captured, secured and retained by the audit component. This model emits correlation references so an outcome can be reconciled with an audit entry, and owns no audit-trail production, retention or tamper-evidence semantics."},{"target":"Foreign-exchange rate observation and conversion model","type":"references","note":"Rate feeds, rate selection, spot and closing rate policy and conversion arithmetic live in that model. A converted amount is a separate monetary assertion produced there and referenced here; no operation in this model derives one."},{"target":"W3C PROV-O provenance vocabulary","type":"aligned","note":"Supersession, derivation, responsible agent, generation instant and invalidation instant are expressed as mappings to PROV terms. The alignment is a mapping claim for interoperability; no conformance to PROV-O is asserted and no PROV processing behaviour is adopted."},{"target":"Monetary payload types: HL7 FHIR Money and XBRL monetary items with ISO 4217 unit measures","type":"aligned","note":"Amount plus currency reference with preserved precision is mapped to established payload types for exchange, including the instant-versus-duration period distinction. Field-level differences, especially permitted fraction digits, are recorded as conflicts rather than reconciled by assumption."},{"target":"W3C Verifiable Credentials Data Model 2.0","type":"aligned","note":"Review and approval evidence may be carried as verifiable credentials with a validity interval, a status reference and a securing proof. Issuance, verification, presentation and status-list operation stay with the issuer, holder and verifier; this model only compiles and checks what it is given."},{"target":"WM-ECO-004","type":"child","note":"Registered parent economic model that supplies the surrounding economic-value context; WM-XCT-032 contributes only the monetary value structure and its calculation, reconciliation and projection semantics."},{"target":"Host entity, event or agreement models that carry monetary attributes","type":"composes","note":"Attach amount, currency, measurement basis, valuation instant, declared precision and derivation lineage to any host record without the host redefining monetary arithmetic."},{"target":"Currency register maintained under ISO 4217 by its maintenance agency","type":"aligned","note":"Resolve currency identifiers, numeric codes, minor units and code status against the governing register version; the register's assignment, amendment and withdrawal lifecycle stays with the maintenance agency."},{"target":"External exchange-rate source or market data service","type":"references","note":"Consume a rate binding as an input and record its source, publication reference, reference instant and retrieval instant; rate acquisition, publication schedules, suspension of pairs and fitness-for-purpose statements remain owned by the publisher."},{"target":"Accounting policy, recognition and ledger posting model","type":"references","note":"Carry the measurement basis and reference-time selector that an accounting policy dictates, and hand computed values back for recognition; selection of the applicable rate policy, recognition of exchange differences and posting remain external."},{"target":"Payment message and scheme profile models","type":"aligned","note":"Constrain validation profiles to scheme and message-level currency and digit limits when a caller pins one, and preserve amount and currency meaning end to end across message projections."},{"target":"Business reporting fact model (XBRL / Open Information Model)","type":"aligned","note":"Reuse declared-decimals, value-interval and calculation-consistency semantics for quantisation and reconciliation tolerance; taxonomies, contexts, dimensional models and filing rules remain in the reporting framework."},{"target":"Authorisation, disclosure-control and policy decision service","type":"references","note":"Receive an authorisation decision reference and a redaction directive as inputs to a redaction operation; evaluation, enforcement and the audit trail of the decision are owned entirely by that service."},{"target":"Temporal representation model based on RFC 3339","type":"aligned","note":"Express valuation instant, rate reference instant, retrieval instant and projection instant with seconds and an explicit offset or Z, so that staleness and supersession are computable."},{"target":"Currency-regime and jurisdictional conversion rule sets","type":"extends","note":"Specialise only the monetary computation parameters that a jurisdictional regime fixes — significant figures retained in a rate, permissibility of inverse rates, mandatory pivot currency, intermediate rounding depth and final rounding rule — without duplicating the regime's own legal authority, applicability or enforcement machinery."},{"target":"Records retention, storage and audit record systems","type":"references","note":"Delegate persistence, retention scheduling, legal hold, erasure execution and audit-trail construction for monetary records and derivation lineage; this model defines disposition semantics only."},{"target":"ISO 4217 currency and funds code register (Maintenance Agency lists)","type":"neighbor","note":"The register owns allocation, amendment, withdrawal and the published minor-unit values; this mixin only carries a reference to a code plus the list and published edition it was resolved against, and re-states none of the register's lifecycle."},{"target":"Locale display and formatting data (Unicode CLDR)","type":"neighbor","note":"Symbols, localized names, grouping, decimal separators and cash rounding increments are presentation owned by locale data; this mixin holds them only as optional labels and never treats a symbol as an identifier."},{"target":"Financial message and payment models (ISO 20022 amount and currency types)","type":"neighbor","note":"Message profiles constrain amount digits and currency attributes for a payment instruction; this mixin defines the monetary declaration itself and owns no message, instruction or settlement lifecycle."},{"target":"Exchange-rate publication series (public-authority reporting rates)","type":"neighbor","note":"The publisher owns rate identity, effective periods, amendment and supersession; this mixin carries the valuation date and a reference to the rate used, and may derive a documented direct, inverse or cross-rate for a monetary calculation without becoming the publication authority for any source rate."},{"target":"Host object that declares the money (price, fee, balance, budget line)","type":"neighbor","note":"The host owns record identity, record lifecycle and the business meaning of the amount, including what a negative amount signifies; this mixin owns only the shape and integrity of the monetary declaration it contributes."},{"target":"Numeric arithmetic environment (IEEE 754 decimal formats, general decimal arithmetic)","type":"neighbor","note":"The arithmetic environment owns operations, rounding-mode execution and exception signalling; this mixin only fixes the abstract number model used to represent the declared amount exactly."},{"target":"WM-ECO-004","type":"parent"}],"interaction":{"identity":{"applicability":"required","items":["Authoritative master-system identifier: the identifier issued by the system of record that owns the artifact or the host record it belongs to (for example the accounting or document system's record key), used whenever it exists and is stable.","Governed global identifier or IRI: an identifier from a governed external scheme, such as a maintenance-agency currency code with its pinned list edition or a namespace IRI, used where the artifact references externally governed content.","UUID or ULID assigned by the adopting Dimension, minted only when neither of the above exists, with the minting reason recorded.","Composite weak key of host reference, role on host, currency and valuation context, used for resolution and collision detection but never as a substitute for a stable identifier when one is available."]},"properties":{"applicability":"not-applicable","items":[]},"recognition":{"applicability":"optional","items":["A monetary value is an exact decimal amount with an ISO 4217 code and optional valuation context.","Often confused with a price, a balance and a formatted display string."]},"capabilities":{"applicability":"required","items":["Parse and normalize an exact decimal amount: Accepts an amount as a decimal lexical token or as an explicit coefficient-and-scale pair, and produces a normalized sign, coefficient and scale together with the canonical lexical form. Rejects any input that cannot be held exactly at the declared scale; it never rounds silently and never accepts a binary floating-point source as authoritative.","Validate the currency reference against the pinned catalogue edition: Resolves the declared currency code against the pinned, integrity-verified catalogue snapshot and reports the entry's class, status and published minor unit, or reports the code as unresolved. It reads the catalogue; it never allocates, amends or withdraws a code, and it never substitutes a default currency.","Determine the declared value determinacy state: Inspects a monetary declaration and reports whether it asserts an exact point value, an interval, an approximate value or an explicit absence with a reason, flagging contradictory combinations. Its purpose is to keep an absent or unknown value from collapsing into a numeric zero.","Compare exact same-currency representations: Compares two exact point declarations that resolve to the same currency code under the same catalogue, returning an ordering or equality result. Whether the two declarations are policy-compatible for comparison is supplied externally; the function neither judges compatibility nor converts between currencies.","Validate a monetary precision and rounding policy declaration: Checks that a declared precision and rounding policy is complete, internally consistent and resolvable: currency binding with a pinned list version, declared scale or increment, rounding mode, tie rule, precision tier and channel scope.","Quantize an amount under an explicitly named rule: Applies one named quantization rule — target exponent or non-decimal increment, mode, tie handling — to an amount and returns the quantized value together with every condition raised. No default rule is supplied: an unnamed rule is a failure, never a licence to assume two decimals or half-up.","Expose the residual introduced by quantization: Computes the signed difference between a pre-quantization value and its quantized result, or between two declared precision tiers, and returns it as a first-class amount so the host can disclose, carry or assign it.","Allocate a total into quantized parts that reconcile exactly: Distributes a total across parts under a named allocation rule with per-part quantization, assigns the residual to the target designated by the caller's rule, and returns a reconciliation difference that must be zero.","Compare, order or aggregate values only under a compatible context: Evaluates the compatibility predicate over currency binding, valuation basis and rounding context, and only then compares, orders or sums the values; otherwise it refuses with a typed incompatibility reason. It never converts, normalises or coerces implicitly.","Bind valuation context to an amount: Attaches a complete, versioned valuation frame — amount role, valuation instant and temporal kind, measurement basis with its defining authority, and market or scenario reference — to an amount that already exists in its owning record, without altering the amount value or currency.","Select a declared rate under a caller-supplied policy: Applies caller-supplied selection criteria — admissible sources, rate type, session, staleness tolerance and fallback order — to the candidate rate references resolvable in the owning publication model, and records which candidate was selected and why the others were not.","Calculate a reproducible conversion: Derives a converted amount from a preserved original using the selected rate or rate chain, applying a declared equation, chain ordering and rounding parameters, and emitting the full reproduction input set alongside the result.","Reconcile original and reported values: Recomputes a stored converted or reported amount from its retained reproduction inputs and compares the result with the stored value, classifying the outcome against the declared tolerance.","Record a correction or supersession: Issues a correcting valuation assertion that supersedes a prior one, capturing the reason, effective interval, issuer and approver, and emitting a serially numbered correction notice for the referenced notification and audit models.","Check accountable role completeness: Compare the declared role assignments for a monetary assertion against the role set required by its governing profile and report missing or expired assignments.","Check segregation of duties declarations: Test whether preparer, independent reviewer and approver references are distinct parties and, where they are not, whether a relief declaration with a compensating measure is present and unexpired.","Resolve the effective monetary assertion: Given a host reference, a role on host and a point in time, return the assertion version whose effective interval covers that point, together with its status and any superseding version.","Check currency-list and policy pins: Verify that the currency code-list pin and policy version pins are present and resolvable, and flag a code that has become historic or been replaced relative to the pinned list.","Verify provenance chain completeness: Check that a derived monetary value carries an original value reference, a derivation activity, an applied rate with its reference instant and retrieval time, and an attributed agent, and report which links are absent.","Verify evidence integrity against manifest: Recompute digests for referenced evidence items and compare them with the recorded integrity manifest, reporting mismatches, missing items and unrecorded additions.","Derive published access attributes: Compute the object attribute set and declared scopes that an external decision point consumes, from sensitivity class, restriction basis, handling labels and access exception declarations.","Assess disposition readiness: Determine whether the retention period computed from the trigger event has elapsed, whether any legal hold is active, and whether the host record's period is longer, and report an eligibility outcome.","Report profile conformance and mapping loss: Check mapping completeness against a named external representation and emit an alignment or conformance report listing mapped fields, unmapped fields and declared losses.","Resolve effective monetary assertion version: Select exactly one version of a bound monetary assertion for a stated effective instant and observation cut-off, and return it verbatim with a reproducible selection trace.","Check binding and creation preconditions: Evaluate every precondition for creating a monetary assertion and binding it to a host anchor, including currency-register validity, scale consistency, anchor resolvability and idempotency key state, and emit the precondition report.","Plan a correction by supersession: Compose a correction plan that names the version to be superseded and its validator, states the replacement values, closes the prior effective interval, and reports overlap and gap conditions across the version series.","Compile review and approval evidence: Assemble the evidence set for a proposed monetary state change, verify evidence validity intervals, status and securing proofs, and report completeness with named gaps.","Report advisory eligibility for a monetary operation: Assemble the subject, object, operation and environment attributes for a requested read or change and emit a non-binding eligibility statement that names the external component holding decision authority.","Report disposition readiness: Assess whether a monetary assertion is ready for removal by collecting holds in force, the referenced retention class, reference-integrity results and outstanding blockers, and emit the readiness report with proposed tombstone content.","Describe an operation failure: Render any refusal, precondition failure, conflict or unresolvable reference from the operations above as a machine-identifiable failure descriptor with a resolvable type and a stable title.","Validate monetary value: Evaluate a monetary value for admissibility against a caller-pinned profile and a referenced currency register version, returning typed outcomes without altering the value.","Quantise amount: Round an exact amount to a target scale under a referenced rounding policy and report the signed residual and the resulting value interval.","Allocate quantisation residual: Distribute the residual arising when a quantised total is split into components, so that the quantised components sum exactly to the quantised total.","Value or convert monetary value: Restate a monetary value in a target currency or under a target measurement basis using a rate binding supplied by the caller, emitting a complete derivation record.","Reconcile monetary values: Compare a set of monetary values against a stated total or against one another within a declared tolerance and report the verdict with attribution of any difference.","Project monetary value to target representation: Map a monetary value and its precision into a named target representation, declaring any scaling or rounding introduced by the projection.","Apply authorised redaction to a monetary projection: Apply an already-authorised disclosure-protection operation — suppression, banding, controlled rounding or interval publication — to a monetary projection and declare the resulting information loss."]},"hazards":{"applicability":"required","items":["Floating-point errors cause ledger mismatches.","Currency mix-ups multiply or divide amounts wrongly.","Untraceable rates make conversions impossible to audit."]},"interfaces":{"applicability":"required","items":["ISO 4217 currency codes.","ISO 20022 financial message amount types.","IEEE 754-2008 decimal floating-point formats.","Unicode CLDR currency formatting data.","W3C XML Schema decimal datatype."]},"context":{"applicability":"required","items":["The catalogue edition observed carries a published-edition marker of 2026-01-01 and already reflects a euro adoption effective that date; every adopter must pin its own edition rather than inherit this observation.","Minor-unit values published by the catalogue are catalogue facts about code structure, not statements about cash denominations circulating in any jurisdiction.","Legal-tender status, exchange controls and exchangeability are jurisdictional and time-varying, and are never inferred from a code or from the catalogue's country-name column.","Locale formatting, including decimal separator, grouping and symbol placement, varies by locale and forms no part of monetary identity or comparison.","Community, complementary and digital-asset units require an explicitly declared alternative catalogue; treating their tickers as ISO codes would be an error.","Cash-rounding evidence is drawn from euro-area and Canadian practice; other jurisdictions use different increments, directions and channel scopes, and some mandate rather than permit rounding.","The six-significant-figure conversion factor and triangulation rules are specific to the euro introduction and must not be generalised to arbitrary currency conversion.","Currency minor units reflect the maintenance agency's published list at a point in time; amendment activity around a euro adoption illustrates that a pin can go stale within a single reporting period.","Reporting accuracy attributes and e-invoicing decimal limits are drawn from one reporting language and one European e-invoicing profile; national filing formats may impose incompatible digit rules.","Materiality framing follows the endorsed international accounting definition; jurisdictions applying other frameworks may set thresholds on a different basis.","Publication semantics are drawn from euro-area practice (concertation around 14:10 CET, publication around 16:00 CET on working days except TARGET closing days) and United States practice (H.10 country data updated Mondays at 4:15 p.m.); other central banks publish on different sessions, conventions and calendars.","Benchmark governance references are EU-specific (Regulation (EU) 2016/1011); equivalent regimes elsewhere differ in scope, administrator obligations and supervisory reach, so the administrator reference must not be assumed to imply the EU obligation set.","An IFRS basis vocabulary is assumed for functional and presentation currency and for translation dates; jurisdictions applying national GAAP may use different role definitions and translation-date requirements.","Market calendars determine when no rate is published; a no-rate-available condition is calendar- and jurisdiction-dependent and cannot be inferred from a generic weekday rule.","The ISO 4217 register changes by dated amendment, including national euro adoptions with stated effective dates; the applicable register version is both region- and date-dependent and must be pinned per assertion.","Currency-pair convention evidence draws on BIS survey practice, in which both sides of a transaction are counted and the US dollar appears on one side of the large majority of trades; conventions in less liquid pairs may be locally determined.","EU rate-source rules are treated as one profile among several: Member States may mandate the most representative market rate, permit the latest published ECB rate subject to notification, or apply customs-value rules for defined categories.","US broker-dealer preservation periods and non-rewriteable or audit-trail requirements are treated as a jurisdiction-specific profile, not as a universal retention rule; other jurisdictions impose different periods.","The NARA electronic records lifecycle structure is used as a general lifecycle reference; it is a US federal programme requirement and is not binding outside that context.","IFRS is assumed only where a profile declares it; local GAAP profiles may assign different currency roles, rate bases and disclosure duties.","Currency code lists change by published amendment, so any assumption that a stored code is currently valid is jurisdiction- and time-dependent and must be resolved against the pinned edition.","No single global tax or accounting profile is assumed; precedence between competing profiles is an explicit decision recorded per value.","Hold and freeze semantics are drawn from a United States federal records authority: a freeze suspends scheduled disposition and is lifted only by a formal written request. Other jurisdictions use different instruments; the contract carries the reference and the effect, never the procedure.","Functional and presentation currency concepts follow IFRS. Jurisdictions applying other accounting frameworks may define the reporting currency, and therefore the meaning of the effective instant for reporting, differently.","Minor-unit expectations assume the ISO 4217 register. Jurisdictions with statutory cash-rounding rules, or with a legal tender whose practical smallest unit differs from the registered minor unit, must declare the rounding rule on the assertion.","Presentation conventions — decimal separator, digit grouping, symbol placement, negative-amount notation — are treated as locale projections and are excluded from the canonical form, which assumes a point decimal separator and no grouping.","The assumption that a records authority exists and can be referenced holds in regulated and public-sector settings; in lightly governed settings the retention-class reference will be absent and readiness will be indeterminate by design.","The six-significant-figure, no-inverse-rate and triangulation rules are specific to euro conversion under EU law and apply only to the euro and the national currency units it replaced; they are not a global default.","ECB reference rates are euro-based, published on TARGET working days only, explicitly discouraged for transaction purposes, and include suspended pairs; any deployment relying on them inherits those limits.","Treasury Reporting Rates of Exchange bind U.S. federal agencies and carry enumerated exceptions for collections, refunds and inter-currency conversions; they are not a general-purpose commercial rate source.","The 2026 transition of Bulgaria to the euro illustrates that register status and fixed conversion ratios are time-dependent; any validation must cite the register version in force at the valuation instant.","Statistical disclosure control terminology and thresholds follow European practice; other statistical authorities use different dominance rules and rounding bases."]}},"sources":[{"title":"Financial Data Standards - ISO 4217 (Currency codes)","url":"https://www.six-group.com/en/products-services/financial-information/data-standards.html","note":"SIX Group AG (ISO 4217 Maintenance Agency)"},{"title":"ISO 4217 List One: Current Currency & Funds (XML)","url":"https://www.six-group.com/dam/download/financial-information/data-center/iso-currrency/lists/list-one.xml","note":"SIX Group AG (ISO 4217 Maintenance Agency)"},{"title":"ISO 4217 List Three: Historic Currencies & Funds (XML)","url":"https://www.six-group.com/dam/download/financial-information/data-center/iso-currrency/lists/list-three.xml","note":"SIX Group AG (ISO 4217 Maintenance Agency)"},{"title":"XML Schema Part 2: Datatypes Second Edition - 3.2.3 decimal","url":"https://www.w3.org/TR/xmlschema-2/#decimal","note":"World Wide Web Consortium (W3C)"},{"title":"General Decimal Arithmetic Specification - The Arithmetic Model","url":"https://speleotrove.com/decimal/damodel.html","note":"IBM Corporation (Mike Cowlishaw)"},{"title":"IEEE 754-2019 - IEEE Standard for Floating-Point Arithmetic","url":"https://standards.ieee.org/ieee/754/6210/","note":"Institute of Electrical and Electronics Engineers (IEEE)"},{"title":"Unicode Technical Standard #35: Locale Data Markup Language, Part 3 Numbers - Currencies","url":"https://www.unicode.org/reports/tr35/tr35-numbers.html#Currencies","note":"Unicode Consortium"},{"title":"HL7 FHIR Release 5 - Data Types: Money","url":"https://hl7.org/fhir/datatypes.html#Money","note":"Health Level Seven International"},{"title":"HL7 FHIR Release 5 - ValueSet/CodeSystem DataAbsentReason","url":"https://hl7.org/fhir/valueset-data-absent-reason.html","note":"Health Level Seven International"},{"title":"Generation of JSON Schema Draft 2020-12 for ISO 20022 (Technical Support Group document)","url":"https://www.iso20022.org/sites/default/files/media/file/ISO_20022_Generation_of_JSON_Schema_Draft_2020_12_for_ISO_20022_2013_10June2025.pdf","note":"ISO 20022 Registration Authority / Technical Support Group"},{"title":"schema.org MonetaryAmount","url":"https://schema.org/MonetaryAmount","note":"Schema.org Community Group (W3C)"},{"title":"Treasury Reporting Rates of Exchange (dataset documentation)","url":"https://fiscaldata.treasury.gov/datasets/treasury-reporting-rates-exchange/treasury-reporting-rates-of-exchange","note":"U.S. Department of the Treasury, Bureau of the Fiscal Service"},{"title":"Decimal Arithmetic Specification — Arithmetic operations (quantize, compare, divide-integer, remainder, round-to-integral-value)","url":"https://speleotrove.com/decimal/daops.html","note":"Mike Cowlishaw / IBM (speleotrove.com)"},{"title":"Council Regulation (EC) No 1103/97 of 17 June 1997 on certain provisions relating to the introduction of the euro","url":"https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A31997R1103","note":"Council of the European Union (EUR-Lex)"},{"title":"Rounding — consumer information on cash rounding in Ireland","url":"https://www.centralbank.ie/consumer-hub/rounding","note":"Central Bank of Ireland"},{"title":"Eliminating the penny from Canada's coinage system (archived)","url":"https://www.canada.ca/en/revenue-agency/programs/about-canada-revenue-agency-cra/federal-government-budgets/archived-budget-2012/archived-eliminating-penny-canada-s-coinage-system.html","note":"Government of Canada / Canada Revenue Agency"},{"title":"Extensible Business Reporting Language (XBRL) 2.1 Recommendation","url":"https://www.xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html","note":"XBRL International"},{"title":"Peppol BIS Billing 3.0","url":"https://docs.peppol.eu/poacc/billing/3.0/bis/","note":"OpenPeppol AISBL, Post-Award Coordinating Community"},{"title":"Commission Regulation (EU) 2019/2104 amending Regulation (EC) No 1126/2008 as regards International Accounting Standards 1 and 8 (Definition of Material)","url":"https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32019R2104","note":"European Commission (EUR-Lex)"},{"title":"IAS 21 The Effects of Changes in Foreign Exchange Rates","url":"https://www.ifrs.org/issued-standards/list-of-standards/ias-21-the-effects-of-changes-in-foreign-exchange-rates/","note":"IFRS Foundation / International Accounting Standards Board"},{"title":"IFRS 13 Fair Value Measurement","url":"https://www.ifrs.org/issued-standards/list-of-standards/ifrs-13-fair-value-measurement/","note":"IFRS Foundation / International Accounting Standards Board"},{"title":"Lack of Exchangeability (Amendments to IAS 21) — completed project","url":"https://www.ifrs.org/projects/completed-projects/2023/lack-of-exchangeability-research/","note":"IFRS Foundation / International Accounting Standards Board"},{"title":"Euro foreign exchange reference rates","url":"https://www.ecb.europa.eu/stats/policy_and_exchange_rates/euro_reference_exchange_rates/html/index.en.html","note":"European Central Bank"},{"title":"ECB SDMX tutorial: using SDMX-ML to publish the euro foreign exchange reference rates","url":"https://www.ecb.europa.eu/stats/ecb_statistics/co-operation_and_standards/sdmx/html/tutorial.en.html","note":"European Central Bank"},{"title":"Extensible Business Reporting Language (XBRL) 2.1 Recommendation","url":"https://www.xbrl.org/specification/xbrl-2.1/rec-2003-12-31/xbrl-2.1-rec-2003-12-31+corrected-errata-2013-02-20.html","note":"XBRL International"},{"title":"Precision, Decimals and Units 1.0 (Working Group Note)","url":"https://www.xbrl.org/WGN/precision-decimals-units/WGN-2017-01-11/precision-decimals-units-WGN-2017-01-11.html","note":"XBRL International"},{"title":"RFC 3339 — Date and Time on the Internet: Timestamps","url":"https://www.rfc-editor.org/rfc/rfc3339","note":"Internet Engineering Task Force (IETF)"},{"title":"Regulation (EU) 2016/1011 on indices used as benchmarks in financial instruments and financial contracts (Benchmarks Regulation)","url":"https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32016R1011","note":"European Parliament and Council of the European Union (via EUR-Lex)"},{"title":"Foreign Exchange Rates — H.10 / G.5: About","url":"https://www.federalreserve.gov/releases/h10/about.htm","note":"Board of Governors of the Federal Reserve System"},{"title":"FX Global Code","url":"https://www.globalfxc.org/fx-global-code/","note":"Global Foreign Exchange Committee (GFXC)"},{"title":"OTC foreign exchange turnover in April 2025 — Triennial Central Bank Survey","url":"https://www.bis.org/statistics/rpfx25_fx.htm","note":"Bank for International Settlements (BIS)"},{"title":"IAS 21 The Effects of Changes in Foreign Exchange Rates","url":"https://www.ifrs.org/content/dam/ifrs/publications/html-standards/english/2025/issued/ias21.html","note":"IFRS Foundation"},{"title":"IFRS 13 Fair Value Measurement","url":"https://www.ifrs.org/content/dam/ifrs/publications/html-standards/english/2025/issued/ifrs13.html","note":"IFRS Foundation"},{"title":"PROV-O: The PROV Ontology","url":"https://www.w3.org/TR/prov-o/","note":"World Wide Web Consortium (W3C)"},{"title":"eXtensible Access Control Markup Language (XACML) Version 3.0","url":"https://docs.oasis-open.org/xacml/3.0/xacml-3.0-core-spec-os-en.html","note":"OASIS"},{"title":"NIST SP 800-162, Guide to Attribute Based Access Control (ABAC) Definition and Considerations","url":"https://csrc.nist.gov/pubs/sp/800/162/upd1/final","note":"National Institute of Standards and Technology"},{"title":"Universal Electronic Records Management (ERM) Requirements","url":"https://www.archives.gov/records-mgmt/policy/universalermrequirements","note":"U.S. National Archives and Records Administration (NARA)"},{"title":"17 CFR 240.17a-4 - Records to be preserved by certain exchange members, brokers and dealers","url":"https://www.govinfo.gov/content/pkg/CFR-2024-title17-vol4/pdf/CFR-2024-title17-vol4-sec240-17a-4.pdf","note":"U.S. Government Publishing Office / U.S. Securities and Exchange Commission"},{"title":"Taxable amount - VAT Directive 2006/112/EC (Article 91 currency conversion)","url":"https://taxation-customs.ec.europa.eu/taxation/vat/vat-directive/taxable-amount_en","note":"European Commission, Directorate-General for Taxation and Customs Union"},{"title":"AS 2201: An Audit of Internal Control Over Financial Reporting That Is Integrated with An Audit of Financial Statements","url":"https://pcaobus.org/oversight/standards/auditing-standards/details/AS2201","note":"Public Company Accounting Oversight Board (PCAOB)"},{"title":"RFC 9110: HTTP Semantics","url":"https://www.rfc-editor.org/rfc/rfc9110.html","note":"Internet Engineering Task Force (IETF)"},{"title":"Federal Records Centers Program Freeze Process Overview / FAQ","url":"https://www.archives.gov/frc/arcis/freeze-faq","note":"National Archives and Records Administration (NARA), United States"},{"title":"HL7 FHIR Release 5 — RESTful API (http.html)","url":"https://hl7.org/fhir/http.html","note":"Health Level Seven International (HL7)"},{"title":"HL7 FHIR Release 5 — Data Types (Money, decimal precision)","url":"https://hl7.org/fhir/datatypes.html","note":"Health Level Seven International (HL7)"},{"title":"Verifiable Credentials Data Model v2.0","url":"https://www.w3.org/TR/vc-data-model-2.0/","note":"World Wide Web Consortium (W3C)"},{"title":"The Idempotency-Key HTTP Header Field","url":"https://datatracker.ietf.org/doc/draft-ietf-httpapi-idempotency-key-header/","note":"Internet Engineering Task Force (IETF) HTTP API Working Group"},{"title":"RFC 9457: Problem Details for HTTP APIs","url":"https://www.rfc-editor.org/rfc/rfc9457.html","note":"Internet Engineering Task Force (IETF)"},{"title":"Time Ontology in OWL","url":"https://www.w3.org/TR/owl-time/","note":"World Wide Web Consortium (W3C)"},{"title":"Calculations 1.1","url":"https://www.xbrl.org/Specification/calculation-1.1/REC-2023-02-22/calculation-1.1-REC-2023-02-22.html","note":"XBRL International"},{"title":"Council Regulation (EC) No 1103/97 on certain provisions relating to the introduction of the euro","url":"https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=celex:31997R1103","note":"Council of the European Union (via EUR-Lex)"},{"title":"Converting to the euro","url":"https://economy-finance.ec.europa.eu/euro/enlargement-euro-area/adoption-fixed-euro-conversion-rate/converting-euro_en","note":"European Commission, Directorate-General for Economic and Financial Affairs"},{"title":"Harmonised ISO 20022 data requirements for enhancing cross-border payments","url":"https://www.bis.org/cpmi/publ/d218.htm","note":"Bank for International Settlements — Committee on Payments and Market Infrastructures"},{"title":"Handbook on Statistical Disclosure Control — Glossary","url":"https://sdctools.github.io/HandbookSDC/07-glossary.html","note":"SDC Center of Excellence (co-financed by Eurostat)"}],"openQuestions":["Register the nine candidate composition links (ISO 4217 register, CLDR locale data, ISO 20022 message types, exchange-rate publication, host mixin composition, decimal/XSD alignment, PROV alignment, absent-value vocabulary, XBRL precision) so relations_ref is no longer empty.","Adjudicate whether the independently versioned, concurrency-controlled monetary-assertion lifecycle in money-svcstate-operations and money-svccalc-operations belongs inside this mixin or should be split into a companion aggregate or event model, resolving the tension with money-core-pair-integrity's no-independent-existence claim.","Retrieve and verify clause-level text for ISO 4217:2015, IEEE 754-2019 and ISO 15489-1:2016, currently represented only through public list pages, titles and scope statements.","Parse ISO 4217 List Two (registered fund codes) and retrieve the ISO 20022 CurrencyExchange and ActiveCurrencyAndAmount element definitions, both explicitly marked unretrieved in known_omissions.","Source or develop a governing framework for how bounded or estimated monetary values propagate through comparison, aggregation and reconciliation, since no primary monetary-specific source was found for this coverage gap.","Survey non-ISO-4217 units of account (crypto-assets, CBDC, loyalty points, commodity units) to decide whether a distinct alternative-catalogue sub-model is warranted beyond the generic 'declared alternative catalogue' mechanism.","The normative clause text of ISO 4217:2015 is behind a paywall; the structure rests on the Maintenance Agency's published machine-readable lists and public pages rather than on quoted clauses.","The clause text of IEEE 754-2019 is behind a paywall; only its published title, date and scope statement are relied on, with the publicly readable general decimal arithmetic model supplying the number model itself.","List Two, the fund codes registered with the agency, is published in a word-processing format and was not parsed in this pass, so registered fund-code specifics are thinner than those for the current and historic lists.","Digital-token and crypto-asset unit identity registers were not examined; non-ISO units are handled only through the generic mechanism of a declared alternative catalogue.","Jurisdiction-specific cash-rounding legislation was not surveyed; cash rounding is treated as locale and jurisdiction data owned elsewhere.","Unbounded and half-open monetary intervals are supported only through endpoint presence and inclusivity flags; no richer interval algebra was derived from sources.","No source was found that fixes a single maximum digit count for monetary amounts across domains, so digit bounds are left to the host or profile.","Indexed units of account and similar non-cash instruments are acknowledged only through the observation that the register assigns them codes and minor units; their revaluation semantics are not modelled here.","Historic non-decimal currency subdivisions are noted as a limit case, but no primary source governing their arithmetic was located within the evidence used.","Crypto-assets and other units outside the currency register are excluded; the sources used offer no maintenance-agency equivalent for their precision metadata.","The judgement of when a rounding difference stops being a residual and becomes an error is not modelled; the endorsed sources define materiality but set no monetary threshold.","The known-relation ledger for WM-XCT-032 is empty, so every composition link recorded here is a candidate requiring registry confirmation rather than an established contract.","No primary source was located that prescribes a universal allocation algorithm; the model requires the rule to be named and versioned but deliberately does not rank pro-rata against largest-remainder or sequential allocation.","Cash-rounding evidence covers only two jurisdictions; no attempt is made to enumerate every national increment, direction or mandate.","ISO 20022 CurrencyExchange element definitions (SourceCurrency, TargetCurrency, UnitCurrency, ExchangeRate, QuotationDate, ContractIdentification) and the currency-and-amount data types could not be retrieved from the ISO 20022 repository during this research; the alignment to payment-message currency exchange components is left as a gap and no clause is claimed.","The IOSCO Principles for Financial Benchmarks could not be retrieved (HTTP 403), so benchmark governance alignment rests on Regulation (EU) 2016/1011 and the FX Global Code alone; non-EU benchmark record-keeping expectations are therefore under-evidenced.","Digital assets, stablecoins and other units of account outside the ISO 4217 register are not addressed; a separate unit-of-account register and a distinct exchangeability model would be required.","Historic minor-unit changes, redenominations and non-decimal currencies are handled only by pinning the register version applicable at the valuation instant; no historic minor-unit table is modelled here.","Inflation-adjusted, index-linked and hyperinflationary restatement contexts are not modelled; they would need a restatement basis and an index reference beyond the current basis vocabulary.","Interval, range or probabilistic valuations with confidence bounds are not represented; the structure assumes a point value with declared accuracy.","Period-average and closing-rate expedients are represented only as rate types and series variations; the conditions under which an entity may use them belong to the accounting model and are not evidenced here.","Forward, swap and option-implied rates are referenced only as rate types; forward points, tenor and settlement conventions belong to the instrument and trade models.","The ISO 20022 repository could not be retrieved during this research; its ActiveCurrencyAndAmount constraints (total and fraction digits, currency attribute) are recorded as an unverified alignment and must be validated before any payments-message mapping is claimed.","ISO 4217:2015 and ISO 15489-1:2016 texts are behind paywalls and were not retrieved; currency code semantics were grounded in the maintenance agency's published lists and records-lifecycle structure in the NARA requirements instead.","US GAAP ASC 830 was not consulted, so the model records no evidence about its differences from IAS 21 on translation and remeasurement.","Hyperinflationary-economy restatement (IAS 29) and its interaction with valuation-date semantics are not represented.","Benchmark administration governance, such as the EU Benchmarks Regulation, was not verified; rate-source governance is treated only as a reference and a selection basis.","Non-ISO-4217 units of account - crypto-assets, loyalty points, vouchers, commodity-denominated units - are unresolved; the code-list pin assumes an ISO 4217 code space.","No cryptographic non-repudiation scheme (signature or trusted timestamping profile) is specified for approvals; only digest-based integrity is declared.","No local migration procedure for a currency redenomination or withdrawal that occurs while an effective interval is still open; the amendment record is referenced but the treatment of the straddling interval is undecided.","No rule for amounts denominated in a currency that lacks exchangeability, where an operational read must return the asserted value while accounting practice may require a different measurement.","Multi-currency composite assertions such as baskets and dual-currency instruments are not modelled; each currency is treated as a separate bound assertion and their mutual constraints are not expressed.","Cryptoassets and other units outside the ISO 4217 register have no register binding, so the currency-membership precondition cannot be evaluated for them.","No Dimension-wide default for sub-minor-unit scales such as unit pricing; the scale is declared per assertion with a reason, which permits inconsistent declarations across hosts.","The concurrency validator format is delegated to the host projection, so cross-host correction plans cannot always be compared or replayed.","Bulk operations — resolving or correcting many assertions atomically — are not specified; the contract addresses one assertion at a time.","Negative amounts, zero and signed-zero conventions are not constrained here; sign meaning is left to the host attribute path.","Hyperinflationary economy restatement and the interaction between restatement and translation are not modelled.","Interest, discounting, day-count conventions and present-value computation are excluded even though they produce monetary values.","Multi-currency netting, offsetting and settlement-risk computations are excluded.","Bid/ask/mid rate selection, spreads and dealer margin are not modelled as first-class parameters; they are treated as attributes of an externally supplied rate binding.","Historical redenomination factors for currencies replaced at a fixed ratio are referenced only through the register's successor code, not modelled as a conversion regime in their own right.","The precise ISO 20022 amount digit constraints could not be verified from a machine-extractable primary source at access time, so no specific total-digit or fraction-digit limit is asserted as normative here.","Tax and customs valuation rate mandates, which frequently differ from both accounting and reporting rates, are not enumerated."],"resources":{"spec":"/models/wm-xct-032-currency-monetary-value/spec.yaml","agents":"/models/wm-xct-032-currency-monetary-value/AGENTS.md","source":"https://github.com/ver-cy/world-models/tree/feat/mega-model-registry/research/runs/wm-xct-032"},"provenance":{"origin":"world-models research","builtFrom":["models/wm-xct-032-currency-monetary-value/spec.yaml","ver-cy/world-models/card-supplements/wm-xct-032-currency-monetary-value.json"],"providers":["Claude"],"researchStatus":"reviewable-draft","generatedAt":"2026-09-03T21:52:36Z","builder":"tools/build_cards.py@1.0.0"},"completeness":{"sections":{"classifiers":"filled","whatItIs":"filled","purpose":"filled","distinguishingFeatures":"filled","structure":"filled","agentConduct":"filled","ethics":"filled","owners":"filled","relations":"filled","interaction.identity":"filled","interaction.properties":"not-applicable","interaction.recognition":"filled","interaction.capabilities":"filled","interaction.hazards":"filled","interaction.interfaces":"filled","interaction.context":"filled","sources":"filled"},"notes":{"interaction.properties":"Institutional or informational subject: no invented physical properties.","_supplement":"Sections authored in card supplement 1.0.0 by Claude (Opus 5.5) (2026-10-05, unreviewed). Written from the published specification and established practice in the field; no new sources were read. Unreviewed."},"score":1.0}}