Serialization
Vectors
The canonical test set for proving exact normative encoding, parsing, normalization or semantic equivalence, round-trip preservation, encoding requirements, and machine-readable interchange.
Serialization Vectors define exact executable cases proving that canonical Foundational Survey Fabric objects are encoded, parsed, normalized, exchanged, and reproduced without ambiguity or loss of mathematical meaning.
The integrated candidate Specification now defines a concrete canonical interchange profile: FSF-CJSON-1.0. The profile provides structured machine-readable representation for supported canonical objects, exact CRPC values, deterministic canonicalization, UTF-8 serialization, and exact byte agreement where one canonical representation is required.
Reference Vectors may therefore move from generic serialization planning into exact candidate fixtures for canonical objects and bytes. The remaining boundary concerns representations or result types not yet admitted by the Specification, including future alternate encodings, future address syntaxes, unresolved non-rational derived-scalar types, and geometry families outside the current primitive model.
Reference Vector Question Given this exact input, what exact answer must every conforming implementation produce?
FSF-CJSON-1.0 Is the Candidate Canonical Serialization Profile
The current candidate interchange model is FSF-CJSON-1.0, a deterministic JSON-based canonical representation for supported Foundational Survey Fabric objects.
The profile shall preserve exact CRPC values, required object identity, deterministic structure, canonical integer-string form, canonical field ordering where prescribed, UTF-8 encoding, and exact canonical bytes.
Exact Rational Values Must Survive Interchange
Reference Vectors shall include exact CRPC values and their required FSF-CJSON representation.
Canonical serialization shall preserve numerator, denominator, sign, reduction, and canonical zero without conversion to floating-point or approximate decimal form.
Canonical Points Must Encode Deterministically
The corpus shall include canonical Points represented through exact CRPC x and y components using the governing FSF-CJSON object structure.
Independent implementations shall serialize the same canonical Point to the same canonical representation and parse that representation back to the same exact Point.
Canonical Endpoint Order Must Survive Machine Representation
Reference Vectors shall include canonical Segments whose endpoints have already been normalized into deterministic lexicographic order.
Serialization shall preserve that order and shall not reintroduce a noncanonical endpoint permutation.
Canonical Polygon Cycles Must Encode Exactly
The corpus shall include normalized SCPEs using counterclockwise traversal, the lexicographically least canonical start vertex, no repeated terminal closure point, and no redundant collinear middle vertices.
FSF-CJSON serialization shall preserve the canonical ordered vertex sequence exactly.
Integer Text Must Have One Canonical Form
Reference Vectors shall test the canonical integer-string rules used inside FSF-CJSON, including sign handling, prohibited redundant formatting, and canonical zero.
Equivalent numeric meaning shall not be represented through multiple canonical integer strings.
Deterministic Object Order Must Produce Deterministic Bytes
Where FSF-CJSON prescribes object-key order, Reference Vectors shall prove that every conforming serializer emits keys in that exact sequence.
Parser acceptance of valid noncanonical key order, if permitted by the applicable input profile, shall remain distinct from canonical serialization output.
Canonical Serialization Is a Byte-Level Proof Obligation
Reference Vectors shall include exact UTF-8 byte sequences for canonical FSF-CJSON fixtures where the profile requires one canonical serialization.
Two conforming serializers given the same canonical object shall emit byte-identical canonical output.
Permitted Input Must Converge to Canonical Output
Where a valid supported noncanonical representation is permitted, vectors shall prove the deterministic path:
parse → validate → normalize → canonical object → canonical serialize.
Repeating that process on the canonical output shall reproduce the same canonical object and same canonical bytes.
Canonical Meaning and Bytes Must Survive Repeated Exchange
Reference Vectors shall test:
canonical object → canonical bytes → parse → canonical object → canonical bytes.
Where one canonical serialization is required, both mathematical meaning and byte representation shall remain identical through repeated round trips.
Schema Obligations Must Be Enforced Exactly
The corpus shall include required-field success cases and missing-field failure cases, together with prohibited unknown-field cases where the profile forbids extension at that object location.
Implementations shall not silently invent defaults, discard prohibited content, or reinterpret unknown fields as though they were part of FSF-CJSON-1.0.
Contradictory Machine Representation Must Fail
Reference Vectors shall include duplicate or conflicting field conditions prohibited by the profile.
A conforming implementation shall reject such input rather than select one occurrence opportunistically.
Serialization Must Preserve Exact CRPC Meaning
Reference Vectors shall include sub-Pang and other exact rational values proving that serialization does not truncate, decimalize, round, or otherwise reduce canonical precision.
Lossy display or convenience formats remain outside canonical serialization unless explicitly identified as derived and noncanonical.
Governing Interchange Identity Must Be Interpretable
Where FSF-CJSON-1.0 or the governing Conformance profile carries explicit version or profile identity, Reference Vectors shall prove that those identifiers are encoded and interpreted deterministically.
Such metadata identifies the governing standard. It does not become part of the spatial identity of the Point, Segment, SCPE, or other canonical object represented.
One Conforming Implementation Must Read Another's Canonical Output
The corpus shall include producer / consumer exchange cases in which canonical FSF-CJSON emitted by one conforming implementation is parsed by another.
The receiving implementation shall recover the same canonical mathematical object without proprietary registries, hidden defaults, or implementation-specific state.
Unknown Encodings Must Not Be Guessed
JSON-like, alternate text, binary, or future interchange forms not governed by the active Specification / Conformance profile shall remain unsupported unless explicitly admitted.
Reference Vectors shall not treat similarity to FSF-CJSON as authority to reinterpret an unknown format.
Open Mathematical Result Types Cannot Receive Invented Encodings
The current profile can serialize defined canonical object and scalar types. Some future exact derived results—such as non-rational distance or arbitrary rotated-coordinate values—do not yet have a closed canonical scalar representation.
Serialization Vectors shall not invent a representation for those open mathematical types before the Specification defines the underlying canonical value model.
Every Implementation Must Produce the Same Canonical Output Where Required
Independent conforming implementations shall produce identical canonical FSF-CJSON output and identical canonical bytes for the same canonical supported object where the governing profile requires one unique serialization.
A mismatch indicates implementation defect, Specification ambiguity, version/profile incompatibility, fixture defect, or serialization of an object outside current mathematical closure.
Executable Now
CRPC serialization; Point serialization; Segment serialization; SCPE serialization; canonical integer strings; deterministic object-key order; UTF-8 canonical bytes; required / prohibited fields; duplicate / conflicting field rejection; parse / normalize / serialize convergence; canonical round-trip; precision preservation; cross-implementation exchange.
Still Open or Conditional
Future alternate normative encodings; future human-facing address serialization; non-rational derived-scalar serialization; future geometry-family encodings; final vector identifiers and corpus packaging; final canonical adoption.
Serialization Has Moved From Open Design Space to a Concrete Candidate Profile
The original page correctly deferred executable vectors while serialization format, field rules, byte representation, and canonicalization remained unresolved. That condition has materially changed.
FSF-CJSON-1.0 now provides a concrete candidate interchange profile for the solved FSF core. Section 10 can therefore support exact object, parser, canonicalization, round-trip, and byte-level fixtures. Future encodings and still-open mathematical result types remain outside that closed serialization surface.
Referenced Requirements
Serialization Vectors will derive especially from Requirements Findings #10, #30, #57–#61, #63–#64, #66, #72–#75, and #78–#84.
Reference Vector Boundary Serialization Vectors prove how canonical truth is represented and exchanged. One or many governed encodings may carry that truth; no representation becomes the place or creates a competing spatial truth.