Skip to content
UPG is in early alpha. The specification is still evolving and may change between versions.
Tools/Workspace & Portfolios/compare_classifications

compare_classifications

Compare two classified nodes (competitors) axis-by-axis: where they AGREE (same classification_value), DIVERGE (different values), or where only one has been graded. The bridge from the classification layer to the parity layer: `create_parity_edge` writes a parity relationship, this derives which axes warrant one. Reuses the same per-node profile assembly as `get_portfolio_tree` competitor_profile, so axis / value / confidence resolution is identical, then joins the two. Divergences are ordered first (the actionable rows). Titles resolve to entity names. Read-only.

Workspace & Portfoliosatomic (read-only). Reads the portfolio document and, for title resolution, referenced product files read-only; never mutates active state.

Arguments

astringrequired

First node to compare (qualified or bare id, e.g. p_rival/n_acme or a registry competitor id).

bstringrequired

Second node to compare (qualified or bare id).

axisstringoptional

Restrict the comparison to one classification axis (bare or qualified id). Omit to compare across every axis either node is graded on.

Returns

Shape
{ shape: "comparison", a, b, axes: Array<{ axis, axis_label, a: [{value, value_label, confidence?}], b: [...], status }>, stats: { shared_axes, agreements, divergences, a_only, b_only } }

Divergences are ordered first (the actionable rows).

See Also