01 / Semantic comparison
Decide whether formatting is part of the question
Use a text diff when indentation, whitespace, or exact source lines matter. Use semantic JSON when the review is about keys, paths, typed values, and array membership instead of how the document was serialized.
The same pair can support both questions. Choosing semantic mode does not claim that formatting is irrelevant; it deliberately excludes formatting from that result.
- Use stable paths to identify nested changes.
- Keep typed values visible.
- Return to text mode when source formatting matters.
02 / Semantic comparison
State array and tolerance rules explicitly
Array order may carry meaning, or identity may come from a key inside each item. Choose keyed or unordered behavior only where the data model supports it, and apply numeric tolerance only to paths where small variation is expected.
Ignored paths should describe known noise, not hide unexplained differences. With Pro, save the rules in a profile to reproduce a recurring comparison.
- Use keyed arrays when a field identifies each item.
- Use unordered arrays only when order is irrelevant.
- Keep ignored paths narrow and reviewable.
03 / Semantic comparison
Resolve paths while retaining the source context
A structured result should expose the stable path, change type, typed values, severity, and a readable explanation. Keep the original sources available so an individual result can be interpreted in context.
Apply supported changes deliberately in either direction. A semantic diff explains what changed; it does not decide which side is correct.