This module retains original JSON bytes, number tokens and ordered occurrences for advertising sources. Missing, null, empty object, empty array and repeated equal array values remain distinct. Duplicate decoded member names are refused, including escaped equivalent names. A retained lexical number alone supplies no provider datatype, unit or financial-validity assertion.

This is the unofficial 0.1.0 module specification. Source review and executable correctness are separate standings. Full generation, runtime and publication verification are pending configured GitHub CI; this draft supplies no release, native write or client-adoption qualification.

Scope and intended use

This module retains original JSON bytes, number tokens and ordered occurrences for advertising sources. Missing, null, empty object, empty array and repeated equal array values remain distinct. Duplicate decoded member names are refused, including escaped equivalent names. A retained lexical number alone supplies no provider datatype, unit or financial-validity assertion.

Agents can inspect the selected retained evidence, ask for missing scope or review, and keep unresolved answers visible. A successful inspection remains separate from permission to act on a live account.

Competency questions

  1. What exact numeric token and occurrence order did the source supply?
  2. Does the captured native datatype qualify an exact decimal or a binary floating origin?
  3. Which identity and write-authority evidence remains unassessed?

Namespace

https://ontology.inferal.com/modules/ads-source-fidelity/

The prefix nf names the existing vocabulary. Term identity and the original RDF types remain stable. Shared advertising and commerce concepts supply scope; captured provider terms retain their provider-specific meaning.

Conceptual model

RawSource identifies retained bytes and their digest. Occurrence records source order, pointer, kind and exact numeric lexical content. SourceAssessment keeps native datatype and numeric-origin standing separately from identity and write authority. Raw mode uses no native context. Native mode uses a validated captured Google, Meta or Microsoft context and schema, followed by the existing normalization and provider projection.

Independent evidence axes
EvidenceWhat the consumer can conclude
Retained sourceThe selected bytes and represented claims remain inspectable.
Scoped interpretationThe named contract supplies a result with its own qualification and coverage.
Current action authorityLive permission, native applicability and client adoption require separately qualified evidence.

The source, context, executing interpretation and package are authenticated before replay. CallerDeclaredDatatypeOnly cannot qualify native applicability. A retained read-only codec supplies no native mutation encoder. Identity lexicals still need a reviewed provider/account binding before action. The retained package authenticates its external manifest and complete rederivation, rather than executing foreign retained code.

RDF permits incomplete descriptions. A conforming execution profile must enforce its declared closed-world input and output constraints. Unknown or conflicting business evidence must keep its explicit standing and cannot be converted into a favorable value.

Validation and interpretation

Exact integer and decimal support is bounded to 128 total digits and 64 decimal scale. Native float stays binary32 origin and double stays binary64 origin. Direct nearest-even binary32 rounding preserves negative zero and refuses overflow or nonzero underflow, without first rounding through binary64. JSON admission is bounded to 64 nesting levels, 4096 occurrences and 256 numeric-token bytes. Packages are bounded to 256 files/directories and 64MiB. Unsupported native encoding is distinct from an unqualified business meaning.

Validation establishes conformance to a selected profile. Retained scope, reported evidence and operational success keep their separate meanings. Runtime and generation evidence for this source repair remain pending GitHub CI.

Worked example and boundary

The number 9007199254740993 stays an exact lexical token in the retained occurrence. The example assessment is NativeDatatypeUnassessed and originalDecimalQualified false: exact lexical preservation alone does not authenticate a native datatype or money value.

Inspect the declared roles and independent standings before using this evidence. Omitted source data or an unresolved qualification must remain visible. This example does not attest a live provider request or complete merchant history.

Term reference

Classes, properties and existing controlled evidence values retain their authored labels and definitions. Listing a controlled value here does not change its RDF type or grant execution authority.

nf:CallerSuppliedIdentityOnly — CallerSuppliedIdentityOnly
The raw identity occurrence is caller-supplied; collision-safe provider/account ownership is not qualified by lexical equality.
nf:CallerSuppliedRetainedSource — CallerSuppliedRetainedSource
Caller-supplied source whose bytes are retained; native sender and current or historical applicability remain unqualified.
nf:CapturedNativeDatatypeEvidence — CapturedNativeDatatypeEvidence
Captured numeric native datatype evidence supports the bounded precision standing; broader provider and client applicability is still unqualified.
nf:ExactRetainedDecimalValue — ExactRetainedDecimalValue
The validated captured decimal datatype admits this exact bounded decimal; source custody does not establish historical applicability or a mutation sender.
nf:ExactRetainedIntegerValue — ExactRetainedIntegerValue
The validated captured integer datatype admits this exact bounded integer; original decimal provenance and native mutation remain unqualified.
nf:NativeBinary32OriginUnqualifiedForOriginalDecimal — NativeBinary32OriginUnqualifiedForOriginalDecimal
The captured float datatype yields a finite binary32 value; the original raw token is retained but never asserted as the original exact decimal value.
nf:NativeBinary64OriginUnqualifiedForOriginalDecimal — NativeBinary64OriginUnqualifiedForOriginalDecimal
The captured double datatype yields a finite binary64 value; the original raw token is retained but never asserted as the original exact decimal value.
nf:NativeDatatypeUnassessed — NativeDatatypeUnassessed
No captured native numeric datatype binds this raw occurrence.
nf:Occurrence — Occurrence
One ordered JSON value occurrence, including repeated equal values, nulls and empty containers.
nf:RawSource — RawSource
Caller-supplied retained source bytes; source custody grants no native write or historical authority.
nf:RetainedNativeDatatypeContext — RetainedNativeDatatypeContext
Retained reviewed numeric field context/schema evidence is needed to assess native numeric precision.
nf:RetainedReadJSONTokenCodecV1 — RetainedReadJSONTokenCodecV1
Canonical retained read encoding preserves number tokens, member/array order and occurrences; no native sender is qualified.
nf:ReviewedOwnerBinding — ReviewedOwnerBinding
Reviewed provider, account, entity and reference ownership evidence is needed before using this identity as an actionable owner.
nf:SourceAssessment — SourceAssessment
One occurrence assessed against captured native numeric datatype evidence; raw lexical preservation alone supplies no datatype authority.
nf:WriteAuthorityUnassessed — WriteAuthorityUnassessed
No assessed native mutation authorization follows from this retained read evidence.
nf:array — array
JSON array retaining ordered repeated occurrences.
nf:boolean — boolean
JSON boolean retained as a boolean.
nf:booleanValue — booleanValue
Decoded JSON boolean without string or integer coercion.
nf:codec — codec
Retained read codec; no native mutation encoder is qualified.
nf:decoded — decoded
Decoded JSON string value without numeric coercion.
nf:evidenceNeeded — evidenceNeeded
Evidence still needed before extending the finite retained-source claim.
nf:index — index
Zero-based array position; equal values at different positions remain distinct occurrences.
nf:kind — kind
JSON value kind, preserving missing, null and empty-container distinctions.
nf:logicalDatatype — logicalDatatype
Captured numeric native XSD datatype from the validated published context/schema, never a caller-declared raw datatype.
nf:member — member
Decoded object member name; duplicate decoded names are refused.
nf:null — null
Explicit JSON null retained separately from a missing member.
nf:number — number
JSON number with its exact lexical token retained.
nf:numberLexical — numberLexical
Exact JSON number token independently of a native logical datatype.
nf:object — object
JSON object with ordered members.
nf:occurrence — occurrence
Exact source occurrence assessed by the retained diagnostic.
nf:ordinal — ordinal
Zero-based preorder ordinal preserving every source occurrence.
nf:originalDecimalQualified — originalDecimalQualified
Whether captured native decimal datatype evidence qualifies this retained exact decimal; native doubles never receive this standing.
nf:parent — parent
Immediate parent occurrence in the ordered source tree.
nf:pointer — pointer
RFC 6901 escaped pointer into this specific raw JSON document.
nf:reader — reader
Fixed ordinary read service binding, with independent source and authority policy.
nf:readerName — reader name
Closed retained reader name; no arbitrary query or mutation admission.
nf:source — source
Retained raw source to which an occurrence or assessment belongs.
nf:sourceDigest — sourceDigest
SHA-256 digest of the exact retained UTF-8 raw JSON bytes.
nf:sourceStanding — sourceStanding
Applicability standing of the source independently of custody.
nf:standing — standing
Numeric precision standing derived from captured native datatype evidence by SPARQL.
nf:string — string
JSON string with decoded text retained.
nf:writeAuthorityStanding — writeAuthorityStanding
Write authorization assessment independently of privacy, value precision and source custody.