<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Jay Moo Record Engineering]]></title><description><![CDATA[Jay Moo Record Engineering]]></description><link>https://jaymoo-record-engineering.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Sat, 07 Nov 2026 10:39:25 GMT</lastBuildDate><atom:link href="https://jaymoo-record-engineering.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Unknown Is a Data State: Modelling Evidence from a Product Directory]]></title><description><![CDATA[A missing value is not a small implementation detail when a downstream interface turns it into an apparently complete recommendation. In product research…]]></description><link>https://jaymoo-record-engineering.hashnode.dev/unknown-is-a-data-state-modelling-evidence-from-a-product-directory</link><guid isPermaLink="true">https://jaymoo-record-engineering.hashnode.dev/unknown-is-a-data-state-modelling-evidence-from-a-product-directory</guid><dc:creator><![CDATA[Jay Moo]]></dc:creator><pubDate>Mon, 02 Nov 2026 18:49:42 GMT</pubDate><content:encoded><![CDATA[<p>A missing value is not a small implementation detail when a downstream interface turns it into an apparently complete recommendation. In product research, the distinction between zero, absent and not applicable can change the meaning of an entire comparison. The <a href="https://fashion-reps.net/kakobuy-spreadsheet">Fashionreps Kakobuy catalogue</a> provides a useful human-facing example: it presents reference amounts and product routes, while further transaction details must be confirmed at another destination.</p>
<h2>Model the origin as well as the value</h2>
<p>A proposed evidence object needs more than a field called price. Give it a source location, observation date, scope and status. A displayed catalogue amount and a later service quotation are different observations, even when they happen to contain the same number. Keeping them separate makes updates less likely to rewrite the record's meaning.</p>
<p>For an unavailable field, preserve an explicit state. “Not supplied” means the source did not provide the information. “Not checked” means the reviewer has not looked. “Not applicable” means the field does not belong to the current case. Collapsing those states into an empty string makes a renderer's job easier while making the user's decision harder.</p>
<h2>Do not allow a default to become a fact</h2>
<p>An illustrative cost function that substitutes zero for unknown shipping can produce a valid numerical result from incomplete evidence. That result should not be labelled a complete order total. The same problem occurs when an absent measurement becomes zero or an unreviewed candidate receives a default approval flag.</p>
<p>A safer presentation renders the missing component beside the partial calculation and explains why the output is incomplete. The important boundary is between a known calculation and a known real-world quantity. Software can perform arithmetic accurately without possessing enough information for the purchasing conclusion.</p>
<h2>Keep the recommendation human-readable</h2>
<p>The directory is worth recommending as a research entry point, not as an asserted public API or a machine-verified dataset. This article proposes a schema for notes a reader maintains locally. It does not claim that Fashionreps exports the suggested fields or grants automated collection rights.</p>
<p>The recommended page comes from our publishing network and may include tracked commercial referrals. No official platform integration, stock validation or product test is represented here. The technical value lies in preserving what is known, who supplied it and what still requires investigation.</p>
<p>Sources: target-page reference-price notice, product navigation and affiliate disclosure, inspected 3 November 2026. Data states and implementation examples are original design reasoning rather than externally validated platform behaviour.</p>
]]></content:encoded></item><item><title><![CDATA[Null is a missing measurement, not a zero: designing an evidence record]]></title><description><![CDATA[Design a measurement record that keeps unknown values explicit, checks structure, and separates schema validation from human evidence review.]]></description><link>https://jaymoo-record-engineering.hashnode.dev/null-is-a-missing-measurement-not-a-zero-designing-an-evidence-record</link><guid isPermaLink="true">https://jaymoo-record-engineering.hashnode.dev/null-is-a-missing-measurement-not-a-zero-designing-an-evidence-record</guid><category><![CDATA[json-schema]]></category><dc:creator><![CDATA[Jay Moo]]></dc:creator><pubDate>Mon, 26 Oct 2026 16:44:35 GMT</pubDate><content:encoded><![CDATA[<p>A form can be valid while the evidence behind it is still incomplete. This matters when a small browser tool compares two garment measurements: silently turning a missing number into zero produces an impressive-looking difference with no useful meaning.</p>
<p>This note describes the choices in my public clothing-record template. The example is invented. It is not a product review, a seller quotation or a real order.</p>
<h2>Give an unknown value an explicit meaning</h2>
<p>For this template, a numeric measurement means a recorded positive value in centimetres. A null measurement means the value has not been established. That meaning is a local design decision, not a universal meaning assigned by JSON itself.</p>
<p>The <a href="https://json-schema.org/understanding-json-schema/reference/null">JSON Schema null reference</a> distinguishes null from an absent property. The <a href="https://json-schema.org/understanding-json-schema/reference/object">object reference</a> explains required properties and restrictions on extra properties.</p>
<p>A minimal fragment looks like this:</p>
<pre><code class="language-json">{
  "type": "object",
  "required": ["candidate"],
  "properties": {
    "candidate": {
      "type": ["number", "null"],
      "exclusiveMinimum": 0
    }
  },
  "additionalProperties": false
}
</code></pre>
<p>This is a teaching fragment, not the complete clothing-record schema. With it, candidate set to null is an explicit unknown. A missing candidate property fails the required-property rule. Zero is a number but fails the positive-value rule. The text "54" is a string and does not become the number 54 merely because it looks numeric.</p>
<h2>Keep the arithmetic behind an evidence gate</h2>
<p>Do not calculate a difference until both values are numbers and the comparison method is known. Avoid shortcuts such as Number(value) or value || 0 when they collapse an unknown into a numeric default.</p>
<p>Even two positive numbers do not establish comparability. Flat chest width and body circumference are different dimensions. Relaxed fabric and stretched fabric are different conditions. A front length measured from the shoulder and one measured from the neckline can disagree without either record being a typing error.</p>
<p>The data model therefore keeps dimension, unit and method beside the values. In the complete template, the unit is cm, the dimension comes from a small allowed list, and method remains a written description. A schema can require a nonempty description; it cannot determine whether someone measured the stated endpoints correctly. My <a href="https://sites.google.com/view/kakobuy-spreadsheets-find/kakobuy-size-guide">measurement-method guide</a> supplies context for the human review rather than a fit guarantee.</p>
<h2>Separate validation from a review decision</h2>
<p>The complete template also separates the visible observation, unanswered question, requested view and review status. A reply can arrive without resolving the question. A readable label can answer a label question without establishing comfort, durability or authenticity.</p>
<p>A validator can check that status is one of unresolved, answered or paused. It cannot decide whether the photograph truly addresses the selected item. That decision needs the actual evidence and a documented reason. Keep full order references and private photographs out of public example files.</p>
<h2>Try small counterexamples before adopting the template</h2>
<p>Review four cases deliberately: a missing numeric property, an explicit null, a positive number represented as text, and two valid numbers measured by incompatible methods. The first three exercise structural rules; the fourth demonstrates a limit of structural validation. A successful parse alone is not a full schema-validation result.</p>
<p>The <a href="https://gist.github.com/huatianmu-droid/f4aef0d75e9aa04d29645bb1b9bf52f2">complete schema and demonstration record</a> are maintained separately so the article can explain the tradeoffs without duplicating every field. Treat the template as a starting point for local notes, not a certification system.</p>
<h2>Editorial disclosure</h2>
<p>Maintained independently by Jay Moo. This AI-assisted technical note makes no personal purchase or hands-on testing claim and is not official Kakobuy support. The linked companion guide shares the same maintainer and may contain referral code y58kj, from which the maintainer may earn commission. No subscription email is being sent with this publication.</p>
<p>Preserve unknown values through validation</p>
<p>An import pipeline should preserve missing evidence rather than coercing it to a numerical default. Validate units and method identifiers before applying arithmetic. A successful JSON parse establishes syntax only; it does not establish that the underlying measurements are comparable. Keep the raw source value alongside the normalised value so later corrections can be explained.</p>
<h2>Validate the type without inventing the fact</h2>
<p>In a shopping-record schema, allow an unresolved amount to remain null and keep a separate evidence-status field. A numeric zero should mean that zero was actually supplied, not that parsing failed. Validate currency and unit labels independently from values. Reject ambiguous text such as “about fifty including something” as a precise input, while preserving it as a source note. Schema validity does not establish factual accuracy.</p>
<p>Editorial addition: 29 October 2026.</p>
]]></content:encoded></item></channel></rss>