Corporate-Family Resolution Is Not a String-Matching Problem: A Public Benchmark Stratified by Name Visibility
Analyze & explore related research in Conceptio
Connect this record directly into your research workflow or AI agent. Explore citations across open repositories, query full text, and export structured proof bundles.
Corporate-Family Resolution Is Not a String-Matching Problem: A Public Benchmark Stratified by Name Visibility Harshit Gupta
arXiv:2609.04269v1 [cs.DB] 2 Sep 2026
Independent Researcher harshitg93@gmail.com
Abstract Deciding whether two supplier records belong to the same corporate family is a prerequisite for spend consolidation, credit exposure aggregation and sanctions screening. It is usually evaluated as a special case of entity matching, which asks whether two records denote the same real-world entity. The two tasks are not the same. A family link connects records that are deliberately different entities, and the evidence for the link frequently appears in neither record. We introduce C ORP FAM, a public benchmark of 54,864 candidate pairs over 10,307 corporate families, derived from 6,638,350 United States federal award records in which every supplier self-reports its ultimate parent to a government registry. Every pair is stratified by name visibility: whether the two names are identical after normalisation, share a distinctive token, or share none at all. Because the strata have positive rates from 10.2% to 97.3%, we report per-stratum recall, which is base-rate invariant, rather than F1 , which is not. The result is stark: the strongest of 5 matchers recovers 100.0% of identical pairs and 4.2% of invisible ones, and no method exceeds 4.7% on the latter. More consequentially, the failure begins before matching. Blocking decides which pairs a matcher ever sees, and we evaluate 7 schemes over the full recipient roster. Several are not functions of the token overlap that defines the hard stratum: phonetic keys, attribute keys that ignore the name entirely, and semantic nearest neighbours in an embedding space. None of them reaches three percent on invisible pairs, and their union recovers 6.8%. 93.2% of these links are absent from the candidate set before any matcher runs, so no improvement at the matching stage can reach them. The links are nonetheless real: against SEC Exhibit 21 subsidiary schedules, filed under securities law and sharing no provenance with procurement registration, 64.2% of invisible links are corroborated, against 0.16% under permuted parents and 0.41% against the true parent’s wrong exhibit – two unrelated null conditions agreeing to within 0.25 points. We argue that corporate-family resolution is a retrieval problem misfiled as a matching problem, and that the intervention point is candidate generation rather than ranking. The benchmark, the full adjudication log, and code reproducing every number are released.
1
Introduction
A large organisation typically buys from tens of thousands of distinct supplier records. Many of those records are not distinct suppliers. They are divisions, acquired subsidiaries, regional entities, and renamed business units of a much smaller number of ultimate parents. Until those records are grouped into corporate families, a buyer cannot answer the question that motivates the exercise: how much do we actually spend with this company, and what leverage does that give us? The same grouping underpins credit exposure aggregation, beneficial-ownership and sanctions screening, and supplier risk consolidation, and the same structure appears on the revenue side as account hierarchy in customer systems. This task is routinely treated as an instance of entity resolution, the problem of deciding whether two records refer to the same real-world entity (Papadakis et al., 2021; Barlaug and Gulla, 2021). The framing is convenient because entity resolution has mature benchmarks and a decade of strong neural methods (Mudgal et al., 2018; Li et al., 2020; Peeters et al., 2025). It is also wrong in a way that matters. Entity reso1
lution asks whether two records are the same thing. Corporate-family resolution asks whether two records that are emphatically different things—separate legal entities, separately registered, frequently in separate countries—belong to the same owner. The evidence differs accordingly. For duplicate detection it sits in the records, because names, addresses and identifiers of one entity tend to look alike. For family linkage it is frequently in neither record. That H EICO C ORP owns B LUE A EROSPACE LLC is a fact recorded in a corporate filing. It is not a fact about the two strings. If that is true, a benchmark that mixes both kinds of pair and reports a single number will systematically mislead. We introduce C ORP FAM, a public benchmark of 54,864 candidate pairs over 10,307 corporate families built from 6,638,350 federal award records, and stratify every pair by name visibility: whether the two names are identical after normalisation, share a distinctive token, or share none at all. The stratification changes the conclusion, and it does so twice. First, at the matching stage. We report per-stratum recall rather than F1 , for a reason that turns out to matter a great deal: the strata have positive rates ranging from 10.2% to 97.3%, so a classifier that answers yes to every pair scores 98.6 on identical pairs and 18.5 on visible ones without doing anything at all. Per-stratum F1 therefore measures the base rate more than the method, whereas recall depends only on a stratum’s own positives. On that footing the result is unambiguous: the best matcher recovers 100.0% of identical pairs, 49.9% of visible pairs, and 4.2% of invisible ones (95% CI [2.9, 6.1]). No method exceeds 4.7%. Second, and this is the finding that matters most: the failure does not begin at matching. Blocking decides which pairs a matcher ever sees. Part of this is true by definition and we say so plainly. The invisible stratum is defined by an empty intersection of distinctive tokens, token blocking keys on exactly that function, and so its 0.00% recall there is an identity rather than a discovery. The empirical question is what happens once the key is moved away from that function. We therefore also evaluate character qgrams, sorted-neighbourhood adjacency, phonetic keys, attribute keys that ignore the name entirely, and semantic nearest neighbours in an embedding space. Not one reaches three percent on the invisible stratum. Embedding nearest neighbours are the best of them at 2.89%, attribute keys manage 2.39%, and unioning every scheme recovers 6.8%. That leaves 93.2% of these links outside the candidate set before any matcher runs. A better model cannot classify a pair it never sees. A reviewer might reasonably suspect that a stratum defined by dissimilar names and then shown to defeat name-based methods is circular, or that its links are registry errors. We address both. SEC Exhibit 21 subsidiary schedules are filed under securities law by the parent’s own counsel and share no provenance with procurement registration, and 64.2% of invisible links are corroborated against them. Run the identical procedure against permuted parents and corroboration falls to 0.16%, an excess over chance of 64.1 points; run it against the right parent’s wrong exhibit and it falls to 0.41%. Those two null conditions share no machinery and agree to within 0.25 points, which locates the floor in the matcher rather than in either control. Nor does a supervised model given address, geography and phone features rescue the stratum, and the reason is structural rather than a matter of feature engineering: only 5.9% of parents ever appear as an award recipient, so for the rest there is no address to compare against. Contributions. 1. A public benchmark for corporate-family resolution: 54,864 pairs over 10,307 families, with ground truth that is self-reported to a government registry rather than hand-annotated or model-derived (Section 3). 2. A name-visibility stratification that we argue is the correct primary axis of evaluation for this task, and without which aggregate metrics are not interpretable (Section 3.3).
2
3. Evidence that the standard pipeline fails at blocking, not matching. 93.2% of invisible links are never proposed as candidates, including by blockers that are not functions of token overlap: phonetic, attribute-keyed, and embedding nearest-neighbour (Section 5). 4. Independent corroboration of the hard stratum against SEC Exhibit 21, with two mechanistically unrelated null conditions – a permuted parent with a genuine subsidiary schedule, and the true parent with a non-Exhibit 21 document from its own filing – that converge to within 0.25 points of each other while the true condition exceeds them by 64.1 points. Their agreement shows the corroboration signal is specific to the conjunction of the right company and the right document, so these are genuine corporate relationships rather than label noise (Section 4.2). 5. Baselines on a single protocol: 5 pairwise matchers spanning string similarity and sentence embeddings, supervised multi-attribute models over address, geography and phone features, and a familylevel clustering task (Sections 6–7).
2
Related Work
Entity resolution benchmarks. Magellan and DeepMatcher (Konda et al., 2016; Mudgal et al., 2018), WDC Products (Peeters et al., 2024), Alaska (Crescenzi et al., 2021) and Machamp (Wang et al., 2021) established the task and drove rapid progress (Li et al., 2020; Zeakis et al., 2023). Several contain a company or organisation split, and recent work extends evaluation to large language models (Peeters and Bizer, 2023; Zhang et al., 2024; Peeters et al., 2025) and to unified cross-task models (Tu et al., 2023). Critiques have noted that easy negatives inflate reported performance (Papadakis et al., 2023; Neuhof et al., 2024), and that skewed positive-class ratios make reported scores incomparable across benchmarks (Li et al., 2022), a hazard we take seriously enough that Section 3.4 is devoted to it. Our concern is adjacent but distinct: not that the negatives are too easy, but that the positives are heterogeneous in a way a single metric cannot express, because some are solvable from the records and some are not solvable from the records at all. MaDI-Bench (Steiner et al., 2026) moves in a similar direction by systematising corner-case and blocking difficulty across an integration pipeline; the difference is that its hard positives are synthesised as surface variants, whereas ours occur naturally and are certified by an external legal filing. Company graphs. CompanyKG (Cao et al., 2023) is the closest public resource, a large heterogeneous graph of company relationships with an edge-prediction task that includes acquisition edges. It is complementary rather than overlapping: its nodes are already resolved company entities. The linkage problem we study, deciding whether two registration records belong to one family given only what a procurement system actually holds, is assumed away before its task begins. Blocking and candidate generation. Blocking is the step that makes entity resolution tractable, and it has a large literature of its own: token and q-gram blocking, sorted neighbourhood, canopies, meta-blocking and learned blockers (Papadakis et al., 2021; Thirumuruganathan et al., 2021). Evaluation is conventionally in terms of pair completeness and reduction ratio. What we add is the observation that on a task where the relationship is not encoded in the compared strings, every scheme in this family shares a single blind spot, and that measuring blocking per difficulty stratum exposes a ceiling that aggregate pair completeness hides. Company name matching and harmonisation. A long line of work matches company names across sources, in patent data (Magerman et al., 2006; Thoma et al., 2010; Peeters et al., 2010), in financial identifiers (Chan and Milne, 2013, 2019; Arimond et al., 2023), and with learned name representations (Ziv et al.,
3
2022). This literature is largely concerned with recognising the same company under spelling variation. Corporate-family resolution begins where that ends. Corporate hierarchies and ownership. Ownership networks have been studied in economics and network science (Vitali et al., 2011; Mizuno et al., 2020; Garcia-Bernardo et al., 2017), in bank holding structures (Flood et al., 2020), and in knowledge graphs of European business registers (Roman et al., 2022; Soylu et al., 2022). Hierarchical linkage has been treated as link prediction over enterprise data (Ebeid et al., 2021; Ganesan et al., 2020, 2024). These works build or analyse hierarchies; to our knowledge none releases a public, reproducible benchmark with held-out splits, and none stratifies by whether the relationship is recoverable from the records. Procurement and master data. The practical stakes are documented in work on supplier master data quality (Athanasiadou, 2019; Ibrahim et al., 2021; Gantman and Metzger, 2021), duplicate invoice detection (Ho et al., 2009; Liao et al., 2026), and purchasing consolidation savings (Smart and Dudas, 2007; Carril and Duggan, 2020).
3
The C ORP FAM Benchmark
3.1
Source and ground truth
We build on United States federal contract award data, published in bulk and in full (U.S. Department of the Treasury, Bureau of the Fiscal Service, 2026). Each award record identifies the recipient by a Unique Entity Identifier (UEI) and separately records the recipient’s ultimate parent UEI and name. That field is not an inference by us or by the publisher: it is self-reported by the supplier during federal registration, where misstatement carries legal consequence, and it is exactly the relation we want to predict. This gives ground truth independent of any matching system, which distinguishes it from benchmarks whose labels come from human annotation of the same strings a model will see. We processed the complete FY2025 contract archive: 6,638,350 award rows covering 104,459 distinct entities.
3.2
The self-parent trap
The parent field cannot be used naively. Of the entities reporting a parent at all, 89,962 of them (86.3%) report themselves: the parent UEI equals the entity’s own UEI. This is correct registration behaviour for a company with no corporate parent, but it means a pipeline treating every populated parent field as a family link would build a dataset in which the overwhelming majority of “links” join an entity to itself. Such pairs are trivially positive under any string method and would push every reported score towards the ceiling. We confirmed the pattern independently in the per-entity API. Across 4,806 records retrieved there, 82.8% of child-level records are self-parenting, agreeing by both UEI equality and internal identifier stem, and only 760 genuine parent–child links survive. Removing self-parents from the archive leaves 14,288 genuine links, the population the benchmark is built from.
3.3
Name visibility as the primary stratum
A second and subtler triviality remains. Many genuine links connect a child to a parent whose name, after normalisation, is identical: distinct legal registrations under a shared trading name. These links are genuine and belong in the data, but they are solvable by string equality and say nothing about a method’s grasp of
4
Stratum
Positive pairs
%
Identical Visible Invisible
7,541 2,953 3,222
55.0 21.5 23.5
All positives
13,716
100.0
Table 1: Composition of C ORP FAM positive pairs by name visibility. Identical pairs share a normalised name, visible pairs share at least one distinctive token, and invisible pairs share none. Negatives are generated at three per positive, giving 54,864 pairs in total. corporate structure. Of the 14,288 genuine links, 4,850 are name-identical, leaving 9,438 informative links, of which 38.3% share no distinctive token with their parent. We therefore assign every pair to one of three strata: Identical the names are equal after case-folding, punctuation removal and whitespace normalisation; Visible the names differ but share at least one distinctive token, where distinctive excludes legal forms and generic corporate vocabulary (INC, HOLDINGS, INTERNATIONAL, SERVICES, and similar); Invisible the names share no distinctive token at all. Table 1 gives the composition: 7,541 identical positives (55.0%), 2,953 visible (21.5%) and 3,222 invisible (23.5%), against 41,148 negatives. That first figure is why a single aggregate is not interpretable here. More than half the positives are solvable by exact match, so a method that only normalises strings starts from a high floor. The invisible stratum is not a curiosity. It contains the cases that motivate the task commercially: an acquired subsidiary trading under its original name, or a holding company whose operating units carry unrelated brands. It is also where spend concentrates, since acquisitive parents are large.
3.4
Why we report recall, not per-stratum F1
Stratifying creates a measurement hazard that is easy to walk into, and we walked into it before catching it. The strata do not have comparable positive rates: on the test split they are 97.3%, 10.2% and 16.9% respectively. A classifier that answers yes to every pair therefore scores 98.6 on the identical stratum and 18.5 on the visible one, purely as a function of composition. Comparing F1 across strata under those conditions largely compares base rates, and a large fraction of any apparent gap is an artifact of the denominators. Skewed positive-class ratios have been shown to make entity-matching results incomparable in exactly this way (Li et al., 2022). Worse, the negative grades are strongly associated with stratum by construction: a hard-string negative shares a distinctive token and is therefore necessarily visible, while a randomly drawn negative almost never shares one and is therefore almost always invisible. The hard stratum thus receives the easiest negatives, which biases per-stratum precision in the opposite direction to the effect we are measuring. We therefore report per-stratum recall, which depends only on the positives of that stratum and is invariant to both problems, and we report precision and average precision globally, where the negative pool is shared. Every table carries the majority-class baseline so no cell can be read without its floor. This is not a presentational choice. Two intermediate results in this project reached 88 and 59.9 on the invisible stratum. Both were the base rate, not a finding.
5
Agreement criterion
%
Exact parent UEI Normalised parent name Any shared distinctive token
64.9 73.8 81.5
Substantively different parent
18.5
Table 2: Agreement between the two independent views of the same ground truth – the per-entity API and the bulk award archive – on the 248 entities where both report a distinct parent. Even the registry disagrees with itself on roughly one link in five, which bounds the accuracy any method can be credited with.
3.5
Splits, negatives, and leakage
Splits are assigned by family, never by pair. If members of one family appear in both training and test, a model can memorise the family during training and then be scored on recall of that memory. Family-level assignment is not quite enough, because an entity can be a child in one declared family and a parent in another, and two families can carry the same normalised name. We therefore union families that share an entity or a normalised name and assign whole connected components, largest first, to whichever split has the largest deficit against its target. The result is 8,229, 2,744 and 2,743 positive pairs inside 32,916, 10,976 and 10,972 pairs, a 60/20/20 split by link count. The build then asserts leak-freedom by family, by entity, by normalised name string and against duplicate pairs, and fails loudly rather than reconciling silently. Negatives match the role structure of positives. Each negative pairs a child with the parent of a different family. This is not cosmetic, and we report it because the alternative is a trap we initially fell into. An earlier build drew negatives as child–child pairs. Because parent entities are frequently holding companies that never transact directly, they carry no address in the award data, so “both sides have an address” separated the classes almost perfectly. A supervised model exploiting that shortcut reached an F1 of 88 on the invisible stratum while learning nothing about ownership. It had learned to detect entity role. Matching the role composition of positives and negatives removes the shortcut. Any benchmark of hierarchical relationships is exposed to this failure, since the two sides of a hierarchical edge are by definition different kinds of object. Negatives come in three grades , three per positive, drawn within each split: random (a child and an unrelated family’s parent), hard string (sharing a distinctive token with an unrelated parent), and same block (sharing a blocking key, i.e. what a deployed pipeline actually adjudicates). Reporting against random negatives alone is the standard way to overstate precision (Papadakis et al., 2023).
4
Ground-Truth Quality
A benchmark is only as trustworthy as its labels. Quantifying their limits is more useful than asserting their correctness, so that is what this section does.
4.1
The registry disagrees with itself
The same registration is exposed through two independent channels: a per-entity API and the bulk award archive. On the 248 entities where both report a distinct parent, they agree on the exact parent UEI in 64.9% of cases, on the normalised parent name in 73.8% (Wilson 95% CI [68.0, 78.9]), and on any shared distinctive token in 81.5%. In 18.5% of cases the two sources name a substantively different parent (Table 2). A further 264 entities have a parent in one source and none in the other. 6
Two further instabilities are worth stating plainly. Within the archive alone, 1,005 entities are assigned more than one distinct parent across their own award rows, which we resolve by obligated-value plurality. And in the per-entity API, 1,065 of 4,424 child records carry more than one parent in the returned history, up to 9 on a single record, because the field accumulates rather than replaces as ownership changes. We take the most recent, but the ambiguity is itself a finding about registry-derived ground truth. Inspection of the disagreements shows three causes: genuine ownership change between snapshots, registration identity lagging a completed acquisition, and outright error. We do not arbitrate. The practical consequence is a ceiling. A method credited with much more than 73.8% agreement against this ground truth is probably fitting registry noise, and 46 entities is a small enough disagreement set that a reader can inspect it rather than take our word for the causes.
4.2
Independent corroboration from SEC filings
The two views above share a provenance. If a supplier misdeclared its parent at registration, both inherit the error identically, so their agreement bounds internal consistency without establishing correctness. This matters most for the invisible stratum, where a sceptic can reasonably propose that links with no name relationship are simply data-entry errors, which would make our headline finding an artifact of dirty labels rather than a property of the task. Exhibit 21 settles the question from outside. It is the “Subsidiaries of the Registrant” schedule filed with a 10-K, prepared by the parent’s own counsel under securities law, and it shares no provenance with a procurement registration. Identifying the exhibit. Which document in a 10-K is the Exhibit 21 is not a question to answer from filenames. Filers name exhibits as they please, and the results are ambiguous in both directions: ex2101.htm could be a sub-exhibit of Exhibit 21 or one of Exhibit 2, and some registrants file the schedule under a name carrying no exhibit number at all, such as subsidiariesofthecompany.htm. EDGAR instead publishes the exhibit type of every document in a submission as a declared field in the filing’s own index. That is the filer’s statement of record rather than our inference, so we select on it and never on the filename. Two secondary signals – an independent filename pattern, and a content test for a jurisdiction-keyed list of company names – are recorded for each selected document and agree with the declared type on 92.6% of them; we deliberately do not require that agreement to select, because insisting on it would discard 12 schedules that the registrant itself declares to be Exhibit 21. Over the largest families in the benchmark this yields 160 usable filings, against which we checked 1,575 declared links. Overall 77.7% of links are corroborated. On the invisible stratum (794 links) 64.2% are confirmed, with 95% interval [60.8, 67.5]. A EROJET ROCKETDYNE under L3H ARRIS T ECHNOLOGIES is typical: a real acquisition, entirely invisible in the names, confirmed by filing. A rate is meaningless without a chance floor, and this one has two. Exhibit 21 lists are long and our matcher is fuzzy, so some corroboration would arise by accident. The obvious control re-runs the identical procedure with each family matched to the wrong parent’s filing. Over 20 permutations spanning 15,795 scored links, invisible-stratum corroboration against a randomly assigned parent is 0.16%. A harder variant assigns each family the filing whose parsed length is closest to its true parent’s, removing any advantage from filing size, and gives 5.79%. A second null condition is available, and it fails in a different way, which is what makes it worth reporting. Rather than change the company and keep the document type, keep the company and change the document type: score each family against a document from its own parent’s 10-K that is not the Exhibit 21 – in practice an Exhibit 10 material contract or an Exhibit 19 insider-trading policy. Across 53 such documents, 1 of 244 invisible links is corroborated: 0.41%, with interval [0.07, 2.28]. 7
Stratum
Checked
Confirmed
%
95% CI
Identical Visible Invisible
172 609 794
165 548 510
95.9 90.0 64.2
[91.8, 98.0] [87.3, 92.1] [60.8, 67.5]
All
1,575
1,223
77.7
[75.5, 79.6]
Invisible stratum against null conditions Wrong parent, right exhibit (20 permutations) Right parent, wrong exhibit Nearest-size wrong parent
15,795 244 794
26 1 46
0.16 0.41 5.79
– [0.07, 2.28] –
Table 3: Independent corroboration against SEC Exhibit 21 subsidiary schedules over 160 filings. Exhibit 21 is filed under securities law by the parent’s own counsel and shares no provenance with a supplier’s procurement registration. Documents are selected by the exhibit type EDGAR itself declares for each document in the filing, not by matching the filename. The two upper null conditions share no machinery. The permutation holds the document type fixed and randomises the company; the wrong-exhibit row holds the company fixed and substitutes a non-Exhibit 21 document from its own 10-K, chiefly Exhibit 10 material contracts and Exhibit 19 insider-trading policies. They land 0.25 points apart and are statistically indistinguishable, so the floor is a property of the matcher rather than of either construction, and the corroboration signal is specific. Non-confirmation remains weak evidence in the other direction, since Exhibit 21 omits immaterial subsidiaries and its formatting is unregulated. The two floors agree, and that agreement is the evidence. The two conditions share no machinery. One randomises the company and holds the document type fixed; the other holds the company fixed and changes the document type. Either could have failed while the other held. A matcher keying on generic corporate boilerplate would score highly on any SEC document, and so would clear the wrong-exhibit floor while passing the permutation; a matcher keying on company-specific tokens wherever they appear would score highly on any document from the right company, and so would clear the permutation while failing the wrong-exhibit condition. Neither happens. The two floors land 0.25 points apart, close enough that a two-sided Fisher exact test cannot separate them, at p of 0.34, while the true condition sits 64.1 points above both. Two unrelated null constructions converging on the same floor says more than either says alone. It locates the floor in the matcher rather than in the design of any one control, and it shows that corroboration requires the conjunction of the right company and the right document – which is precisely the conjunction that a genuine parent–subsidiary relationship implies and that a registry data-entry error does not. The wrong-exhibit floor is moreover conservative rather than pure, which strengthens the argument: a benefit plan or credit agreement filed as Exhibit 10 may legitimately name subsidiaries as participating employers or guarantors, so the condition is biased towards corroboration. The single observed hit is exactly that case, a real subsidiary listed on a participating-employers schedule inside a savings-plan amendment. Two caveats belong here rather than in a footnote. Corroboration correlates with how much text our parser recovered from a filing (Spearman ρ = 0.35), which means the reported rate is attenuated by parser recall: 64.2% is a lower bound on true corroboration, not an inflated figure. And because we resolve companies to SEC identifiers by name, the filings we obtain are selected on the parent’s name being matchable against the registrant list, so coverage is not a random sample of families. Non-confirmation is in any case weak evidence in the other direction: Exhibit 21 omits immaterial subsidiaries and its formatting is unregulated.
8
4.3
Adjudicating family artifacts by hand
Some declared families are not families. The archive asserts, for instance, that an Australian subsidiary is the ultimate parent of R AYTHEON C OMPANY, and that a moving-services company is the parent of one hundred and three waste-management entities. Our first instinct was an automatic rule: flag a family when its children share a dominant token the declared parent lacks and the parent’s own name does not reach its children. That rule catches the cases above. It also flagged A RCTIC S LOPE R EGIONAL C ORPORATION, whose subsidiaries are entirely genuine. This is not a tuning failure. A rule keyed on name dissimilarity cannot distinguish a mislabelled family from a real conglomerate, because a real conglomerate looks exactly like a mislabelled family from the outside. Applied aggressively it would remove H EICO, T RANS D IGM, B ERKSHIRE H ATHAWAY and R EPUBLIC S ERVICES, precisely the invisible-stratum families that make the benchmark worth building. We therefore adjudicated large families by hand against their child lists. We inspected 28 families, excluded 8 and retained 20, and publish the full log, retentions as well as rejections, each with a written reason. Publishing only the rejections would make a careful audit indistinguishable from a purge of inconvenient cases, and the retentions are the more informative half: they record where the automatic rule was wrong. Exclusions are keyed on entity identifier rather than on name string, which in a paper about name instability is the only defensible choice. This removes 458 links, plus 114 under sovereign catch-all entities, and the complete sovereign list of 74 parents ships with the manifest rather than a truncated sample of it. The exclusions are not neutral, and we report their effect. Of the links removed by hand adjudication, 84.7% fall in the invisible stratum, the very stratum the paper’s argument rests on. That is expected, because a mislabelled family looks exactly like a name-invisible one, but it means a sceptic is entitled to ask whether the headline survives the filter being removed. We therefore rebuild the entire benchmark with no exclusions at all, 14,288 links of which 3,619 are invisible, and re-run the matching experiments against it. The best invisible-stratum recall on the unfiltered build is 0.9%, lower than the 4.2% on the filtered one. The conclusion therefore holds a fortiori: removing the exclusions makes the task harder, not easier. Whatever the adjudication did, it did not manufacture the finding by discarding difficult cases. If anything it discarded cases that were unsolvable for the wrong reason, and the benchmark is marginally more tractable with them gone. Both builds ship. Smaller families are retained without automatic filtering in either, and we report this as a bounded source of label noise rather than one we claim to have eliminated.
4.4
Provenance and redistribution
Because the benchmark publishes company names in bulk, we checked whether we may redistribute them rather than assuming it. The data is public-domain United States Government work (U.S. Department of the Treasury, Bureau of the Fiscal Service, 2026). However, SAM.gov’s terms grant only a limited licence over “D&B Open Data”, which explicitly includes legal business name, and forbid disseminating it in bulk; those terms scope the restriction to records associated with base awards dated before 4 April 2022. The definitive test named in those terms is an Entity Validation Service source field, which does not exist in the award data. We therefore bounded the exposure. Scanning all 6,638,350 award rows and taking the earliest performance-period start across the transactions supporting each link, 52.5% of positive pairs have at least one supporting award beginning before the cutoff. This is deliberately an upper bound: a task order placed in FY2025 against a long-running vehicle inherits that vehicle’s original start date. Under the opposite reading, that every transaction here is an FY2025 action, the exposure is zero. We release the full benchmark and, alongside it, a conservative post-cutoff subset of 6,522 positive pairs.
9
Pair completeness by visibility Blocking scheme
Candidates
PC (%)
RR (%)
Identical
Visible
Invisible
†
Token blocking First-token blocking† Q-gram blocking (q=4) Sorted neighbourhood (w=20) Phonetic (Soundex) Attribute (ZIP / city-state) Embedding ANN (MiniLM, k=20)
1,534,063 636,042 9,022,384 2,170,180 411,063 126,843 1,761,025
68.7 52.9 71.4 71.2 61.3 1.9 72.5
99.977 99.990 99.862 99.967 99.994 99.998 99.973
92.22 78.70 97.83 99.95 97.32 0.91 99.89
83.68 44.80 78.84 73.48 35.96 3.73 78.67
0.00 0.00 2.79 2.05 0.25 2.39 2.89
Union: string-keyed Union: all schemes
11,875,526 13,074,120
75.2 76.2
99.818 99.800
100.00 100.00
89.98 91.03
3.82 6.77
Table 4: Blocking over the full recipient roster, not merely the entities appearing in our pairs file. PC is pair completeness, the recall of true links into the candidate set; RR is reduction ratio. Rows marked † key on the same core() token function that defines the invisible stratum, so their zero recall there is an identity and not a measurement. The informative rows are the others: character q-grams, sorted-neighbourhood adjacency, phonetic keys, attribute keys that ignore the name entirely, and semantic nearest neighbours in an embedding space. None of them exceeds three percent on the invisible stratum, and unioning every scheme still leaves the overwhelming majority of those links outside the candidate set. The failure is therefore a property of candidate generation rather than of any particular key.
5
Blocking: The Failure Before Matching
Every result reported so far in the literature, and every result in the next section, measures a matcher given a pair. Deployed entity resolution never sees all pairs. A blocking step first proposes candidates, and anything it fails to propose is unrecoverable regardless of the matcher. On 114,230 entities the naive comparison space is 6,524,189,335 pairs, so blocking is not optional. One identity, stated up front. Token blocking and first-token blocking key on the core() token function, and the invisible stratum is defined as an empty intersection under that same function. Their 0.00% recall on that stratum is therefore a tautology, provable without running anything, and we claim no credit for it. Presenting it as an empirical discovery would be circular, and a reader who works on blocking would notice immediately. The empirical question is what happens once the key is no longer that function. We therefore evaluate 7 schemes: the two core()-keyed ones for reference, plus character q-grams, sorted-neighbourhood adjacency over lexicographic order, phonetic Soundex keys, an attribute-keyed blocker on ZIP and city–state that never looks at the name, and semantic nearest neighbours (k = 20) in a MiniLM embedding space. Blocking is measured over the full recipient roster of 114,230 entities, a naive space of 6,524,189,335 pairs, rather than only over entities appearing in our own pairs file. Restricting to the latter would flatter reduction ratio and pairs quality, because that roster has already been filtered to entities of interest. Table 4 is the most consequential result in this paper. The informative rows are the ones without a dagger, and they say that relaxing the key does not help. Character q-grams reach 2.79% on the invisible stratum, sorted neighbourhood 2.05%, phonetic keys 0.25%. Abandoning the name altogether and keying on address gives 2.39%. Semantic nearest neighbours reach 2.89%; they are the strongest single scheme overall at 72.5% pair completeness, and emphatically not a function of token overlap. Unioning every scheme bounds the whole family at 76.2% overall and 6.8% on the invisible stratum. So the barrier is not the choice of key, and it is not that practitioners have simply picked the wrong one.
10
93.2% of invisible links are absent from the candidate set produced by every blocking strategy we could construct, including semantic and non-name ones. Recent work has begun to measure pair-completeness disparity across subgroups as a first-class property of blockers (Gagliardelli et al., 2024); what we add is a task where the disparity is near-total and where the affected subgroup is the one that carries the commercial value.
5.1
What relaxing the key actually buys
Pair completeness on its own is not a fair basis for choosing a blocker, because it says nothing about the candidate budget that produced it. Both numbers are in Table 4, and read together they explain why the obvious remedies are not deployed. Token blocking proposes 1,534,063 candidate pairs and recovers 68.7% of true links, at a reduction ratio of 99.98% against the naive space. The union of every scheme proposes 13,074,120, which is 8.5 times as many, and recovers 76.2% at 99.80%. A practitioner is therefore being asked to adjudicate roughly an order of magnitude more pairs for 2.95 additional points on the stratum that matters. That trade is bad enough to explain the status quo without anyone having reasoned about it: the schemes that reach the invisible stratum at all are the ones a reduction-ratio budget removes first. Decomposing the union sharpens the point. Unioning only the name-keyed schemes gives 75.2% overall and 3.82% on the invisible stratum. Adding the two schemes that are not functions of the name, attribute keys and embedding nearest neighbours, takes the invisible stratum to 6.8%. The entire contribution of abandoning the name is 2.95 percentage points. One scheme behaves unlike the rest, and it is the informative one. Attribute blocking on ZIP and city– state recovers 1.9% of links overall, by far the worst of any scheme, and 2.39% on the invisible stratum. It is the only scheme whose hard-stratum recall exceeds its overall recall. Every name-keyed scheme collapses on the invisible stratum relative to its own average: q-grams from 71.4% to 2.79%, sorted neighbourhood from 71.2% to 2.05%, Soundex from 61.3% to 0.25%. Attribute keys are indifferent to the stratum because they never look at the name, which is exactly the property a blocker for this task needs, and they are unusable on their own because a shared ZIP is far too weak a signal to index on. Embedding nearest neighbours at k = 20 are the strongest single scheme overall and still reach only 2.89%, which is the clearest evidence we have that the problem is not representational capacity. A MiniLM encoder places B LUE A EROSPACE nowhere near H EICO because nothing in its training signal connects them. This also sets the bar for future work concretely. A retrieval-based blocker has to beat 6.8% on the invisible stratum at a candidate budget comparable to 13,074,120 out of 6,524,189,335 possible pairs. Any proposal that improves the hard stratum by widening the candidate set until reduction ratio collapses has not solved the problem; it has relocated it. This reframes the matching results that follow. It is tempting to read a poor invisible-stratum F1 as a call for a better matcher: a stronger encoder, or more fine-tuning data. That response cannot work, because in a deployed pipeline the pair is never presented to the matcher at all. Progress requires intervening at candidate generation, using evidence retrieved from outside the records, whether ownership filings or a knowledge base built from them. Reranking cannot recover a candidate that was never generated.
6
Matching Baselines
6.1
Protocol
We evaluate 4 string-similarity methods, all dependency-free so the benchmark reproduces from a bare Python: exact match on normalised strings, Jaccard overlap of distinctive tokens, a character sequence ratio standing in for edit distance, and character 3-gram TF–IDF cosine with idf fitted on the training split only. 11
Recall (%) by name visibility Method
AP
Prec.
Identical
Visible
Invisible
Exact (normalised) Token Jaccard Sequence ratio TF–IDF char 3-gram
65.4 73.5 74.7 78.7
97.3 91.8 94.7 89.6
100.0 99.2 100.0 100.0
0.0 43.5 15.8 49.9
0.0 0.0 3.8 4.2
MiniLM embedding
–
88.6
100.0
64.3
4.7
Answer yes to everything
–
25.0
100.0
100.0
100.0
Table 5: Baselines on the C ORP FAM test split, with thresholds selected on validation and applied unchanged to test. Recall is reported per stratum rather than F1 , because the strata have positive rates of roughly 97%, 10% and 17% respectively, so a per-stratum F1 largely reflects that base rate rather than the method: the final row shows a classifier that answers yes to every pair, which attains perfect recall everywhere and an F1 ranging from 18 to 99 across strata. Recall depends only on a stratum’s positives and is therefore comparable across them. Average precision is threshold-free and computed over the whole split, since precision depends on the shared negative pool. Every method recovers essentially all identical pairs and almost no invisible ones. We add a neural baseline: cosine similarity between MiniLM-L6-v2 sentence embeddings (Zeakis et al., 2023), encoding 18,146 distinct names into 384 dimensions. For every method the decision threshold is chosen to maximise F1 on validation and applied unchanged to test; selecting it on test would inflate every figure here.
6.2
The aggregate hides the failure
Table 5 is the central matching result, and it reports recall per stratum for the reason set out in Section 3.4. Read the overall column alone and the task looks close to solved. TF–IDF char 3-gram reaches 76.8 F1 at precision 89.6 and recall 67.3, with 78.7 average precision, which is threshold-free and so does not depend on where the operating point landed. Read across the strata and a different picture emerges. Identical pairs are recovered at 100.0% (95% CI [99.8, 100.0]), unsurprising because they are string-equal. Visible pairs at 49.9% ([45.8, 54.0]). Invisible pairs at 4.2% ([2.9, 6.1]), and no method exceeds 4.7%. Per-stratum F1 tells the same story through a confounded denominator, which is why we do not lead with it: 98.7 on identical pairs, 56.3 on visible, 8.0 on invisible, nothing above 9.0 anywhere, and a nominal gap of 89.7 points between the extremes. A single aggregate conceals all of it. Exact match and token Jaccard recover 0.0% of the invisible stratum. That is not a deficiency of those methods but a definitional consequence: the stratum is constructed so that no shared token exists, and a method operating on shared tokens has nothing to operate on. The sentence encoder is the strongest method overall and is meaningfully better on the visible stratum, which is what one expects, since it handles paraphrase and abbreviation that token overlap misses. MiniLM embedding is also the best of the five on the invisible stratum, where it gains 1.0 F1 points over the best string method. It recovers essentially none of the gap.
6.3
False positives concentrate where deployment lives
Table 6 decomposes false positives by negative grade. Random negatives are nearly free: TF–IDF char 3gram false-positives on 0.0% of them. The rate rises to 3.2% on negatives sharing a blocking key and 4.6% on negatives sharing a distinctive token. The difficulty therefore sits exactly where a deployed pipeline
12
Negative kind
Exact
Jaccard
SeqRatio
TF–IDF
MiniLM
Random Hard string Same block
0.0 1.0 0.5
0.0 3.6 2.2
0.0 1.6 1.7
0.0 4.6 3.2
0.0 6.5 2.6
Table 6: False-positive rate (%) by negative kind on the test split. Random negatives are nearly free; the difficulty is concentrated in negatives that share a blocking key or distinctive tokens, which is what a deployed pipeline actually sees after blocking. encounters it, after blocking and among candidates that already look alike, and a benchmark using random negatives alone would report a precision no practitioner will observe.
6.4
Spend weighting
Procurement value is heavily concentrated: across all 13,716 links the top 1% carry 77.4% of obligated value and the top 10% carry 96.8%. (An earlier version of this figure was computed on the per-entity API sample, which an interrupted sorted fetch had left almost entirely composed of identifiers beginning with a single letter; it is not a population sample and is superseded here by the full link set.) A method that resolves many small suppliers while missing a few large ones is not equivalent to one that does the reverse, though F1 scores them identically. We therefore also report recall weighted by the obligated amount on the child entity; for TF–IDF char 3-gram, spend-weighted recall on test is 60.1% against an unweighted recall of 67.3.
6.5
Do attributes rescue the invisible stratum?
The sharpest objection to everything above is circularity: pairs are labelled invisible precisely because their names share nothing, and then name-based methods are shown to fail on them. Real entity resolution uses addresses, and the established benchmarks are multi-attribute for that reason. The objection deserves a measurement. The award archive carries address, city, state, ZIP, country, phone and a doing-business-as name for every recipient, giving attributes on 14,288 entities. We train logistic regression on the same validationselected-threshold protocol over three feature sets: names only, attributes only, and both. The evaluation is restricted to the 822 test pairs carrying attributes on both sides. That restriction is necessary rather than convenient: over the full split an attribute-only model has an all-zero feature vector for most pairs and degenerates to predicting the majority class, producing a base-rate F1 that measures nothing. Even on the restricted subset the base rates differ by stratum, so Table 7 reports each cell against its majority-class floor. The honest answer is that attributes do not rescue the stratum, and the reason is structural rather than a matter of feature engineering. Read against the floor, no feature set separates from the majority class on the invisible stratum. Its positive rate on this subset is 42.2%, so answering yes to every pair scores 59.4. The attribute-only model scores 59.9, half a point above that floor, and it gets there by firing on almost everything: 96.9% recall at 43.3% precision. Name features score 31.2, well below the floor, and the two together 58.4. On n = 822 pairs none of these differences is a result. The one qualitative finding that does survive is that name features, which carry the identical and visible strata, are worse than useless on the invisible one.
13
F1 by name visibility
Overall P
R
F1
Identical
Visible
Invisible
Name features only Attributes only Name + attributes
79.1 40.1 49.5
47.6 98.4 81.7
59.5 57.0 61.7
96.9 96.2 96.9
51.3 42.6 49.0
31.2 59.9 58.4
Answer yes to everything positive rate
38.6 38.6
100.0 –
55.7 –
96.9 93.9
40.6 25.5
59.4 42.2
Feature set
Table 7: Supervised logistic regression over name and attribute features, evaluated on the subset of test pairs carrying attributes (address, city, state, ZIP, country, phone, doing-business-as name) on both sides. Read every cell against the two floor rows. Each stratum of this subset has its own positive rate, so an F1 here carries the base rate as much as the model. On the invisible stratum the attribute-only model clears the floor by half a point, and the other two feature sets score below it. Attributes do not rescue the stratum. The deeper obstacle is coverage: attributes exist on both sides for a small minority of pairs, because a parent is frequently a holding entity that never transacts and therefore has no address at all.
6.6
The parent is usually a legal abstraction
The reason attributes cannot help generalises past this dataset, and it is worth separating from the modelling question, because it constrains any method that compares fields across the two sides of the relation. Of 10,307 distinct parents in the benchmark, 608 (5.9%) ever appear as an award recipient in their own right. The other 94.1% have no address, no phone and no location anywhere in the source. This is not a sourcing gap that a better vendor feed would close. A holding company exists to hold, and a parent that never transacts has no operating footprint to record anywhere, in this registry or any other. The ultimate parent of a corporate family is frequently a legal instrument rather than a place of business, and the attribute vector on that side of the pair is empty as a matter of what the entity is. The consequence is a hard cap that precedes any model. Attributes are present on both sides for 7.5% of test pairs. Multi-attribute entity matching, which is the dominant paradigm in the benchmarks this task is usually filed under, is therefore inapplicable to the large majority of these relations before a single feature is computed. That is a different situation from missing values to be imputed: there is nothing to impute towards. Where attributes do exist on both sides they mostly disagree, and the pattern across strata is not the one intuition suggests. Among true pairs carrying an address on both sides, 2.6% of identical pairs share that address (77 pairs), 6.4% of visible pairs (110), and 10.0% of invisible pairs (130). Address agreement is highest on the hardest stratum and lowest on the easiest. Name-identical registrations are typically separate sites trading under one brand, so their addresses differ by construction, whereas an acquired subsidiary is occasionally still administered from its parent’s premises. The counts are small and we draw no strong inference from the ordering. The point is the level: address agreement never exceeds 10.0% anywhere, so even a perfect address matcher would leave the stratum essentially untouched. Two design consequences follow for anyone building on this. A benchmark for hierarchical linkage should report attribute coverage per side of the relation rather than per record, because a headline coverage figure computed over records hides that the coverage is one-sided. And an evaluation restricted to the attributed subset, as ours is, is measuring a population that is not representative of the task: those are the pairs where the parent happens to trade, which is to say the pairs where the parent is least like a holding company.
14
B-cubed Cands Pair F1
Condition Blocked Oracle
5,080 536,130
P
R
Exact F1 fam. (%)
32.2 85.8 45.4 59.3 39.4 84.3 45.1 58.8
16.6 14.9
Table 8: Family-level clustering over the 902 families with two or more children, scored on test with thresholds chosen on validation. Blocked takes candidates from token blocking as in deployment; Oracle scores every within-split pair. Removing blocking raises pairwise F1 but lowers exact family recovery, because the additional candidates introduce false links that merge distinct families through transitivity. Only a small minority of families are recovered exactly under either condition, and exact recovery is what a spend rollup depends on.
7
Family-Level Clustering
Pairwise linkage is not what a procurement or credit system needs. The deliverable is a partition: every supplier record assigned to a family so spend can be rolled up. Pairwise F1 does not measure that, because pairwise errors compound through transitivity: one false link merges two families and corrupts both rollups. We therefore evaluate the end-to-end job over the 902 families with at least two children, scoring connected components of the thresholded similarity graph with pairwise metrics, B-cubed metrics, and exact family recovery. Two conditions are reported: blocked, where candidates come from token blocking as in deployment, and oracle, where every within-split pair is scored. Under blocking the system reaches 59.3 B-cubed F1 and recovers 16.6% of families exactly. Removing blocking raises pairwise F1 from 32.2 to 39.4, yet exact family recovery falls to 14.9% and B-cubed F1 to 58.8. The extra candidates introduce false links, and transitive closure propagates each into a merger of two distinct families. We do not want to overstate this. The comparison rests on 181 test families and the confidence intervals on exact recovery overlap, so neither condition dominates the other. The defensible claim is the narrow one, and it is still worth making: pairwise F1 and exact partition recovery are not monotonically related, so a pipeline tuned on pairwise quality can move the deliverable backwards. An evaluation of this task that reports only pairwise metrics is measuring something other than what the task exists to produce.
8
What Did Not Work
Most of what we tried failed, and the failures are more informative than the baselines, because each one closes off a remedy a reader would otherwise propose. They are collected here rather than left scattered. A better encoder does not help. The sentence encoder is the strongest matcher overall, at 78.5 F1 against 76.8 for the best string method, and the gain is concentrated where one would expect: 64.3 on the visible stratum against 56.3. It buys nothing on identical pairs, 98.7 against 98.7, because string equality has already saturated that stratum. On the invisible stratum it reaches 9.0 against 8.0, a gain of 1.0 points. Semantic similarity in 384 dimensions is a genuinely different signal from token overlap, and on this stratum it buys almost nothing. The same encoder used as a blocker reaches 2.89%. Two independent uses of the same representation, both near zero, is the strongest evidence we have that the missing ingredient is not a better embedding. No method beats the majority class on the invisible stratum. Answering yes to every pair scores 29.0 F1 on that stratum of the test split. The best of the 5 matchers reaches 9.0, and the worst 0.0. Every method 15
is below the floor. This is the cleanest statement of the negative result and it is also why the paper reports recall: a metric on which no method beats a constant classifier is not measuring the methods. Attributes do not substitute for the missing evidence. Section 6.6 gives the structural reason. The measured outcome is that on the attributed subset the three feature sets reach 59.5, 57.0 and 61.7 F1 overall, and on the invisible stratum none of them separates from a majority-class floor of 59.4. Adding attributes to name features moves the overall figure up and the invisible stratum nowhere. A shortcut we nearly published. An earlier build drew negatives as child–child pairs and a supervised model reached an F1 of 88 on the invisible stratum, which at the time looked like the paper’s positive result. It had learned that parents lack addresses. The lesson generalises to any benchmark whose relation joins two different kinds of object, and it is the reason negatives here match the role structure of positives (Section 3.5). The automatic artifact filter could not be made to work. A rule keyed on name dissimilarity flags mislabelled families and real conglomerates identically, because from outside they look the same. Tuned to catch the moving company that claims one hundred and three waste-management subsidiaries, it also removes H EICO, T RANS D IGM and B ERKSHIRE H ATHAWAY. We could not find a threshold that separated them and we do not believe one exists on name evidence alone, which is the same finding as the rest of the paper arriving from a different direction. Hand adjudication of 28 families was the only defensible route, and shipping the unfiltered build alongside is what makes that judgement auditable. Removing blocking made the deliverable worse. Scoring every within-split pair instead of blocked candidates raises pairwise F1 from 32.2 to 39.4 and lowers exact family recovery from 16.6% to 14.9%. More candidates, better pairwise numbers, worse partitions.
9
Discussion
The invisible stratum measures knowledge, not similarity. The stratum is defined by the absence of shared distinctive tokens. For a pair such as (B LUE A EROSPACE LLC, H EICO C ORP) there is no function of the two strings that returns the correct answer, because the strings do not contain it. The relationship exists in an SEC filing, as Section 4.2 shows by going and reading one. Whatever supplies the answer has to come from outside the pair, which reframes corporate-family resolution as a retrieval and evidence-aggregation problem rather than a matching problem. That connects it to work on grounded factual verification (Wei et al., 2024, 2025; Chen et al., 2025) rather than to the entity-matching literature it is usually filed under. We did not test whether a pretrained model already holds these facts, and we make no claim either way; that is a separate experiment with its own contamination problem, since the filings are on the open web. The intervention point is candidate generation, not ranking. Section 5 sharpens this considerably. Because 93.2% of invisible links never enter the candidate set, work at the matching stage is spent on pairs that a deployed system would never adjudicate. A retrieval-based blocker, one that consults ownership filings to propose candidates that share no string evidence, would change the achievable ceiling in a way that no matcher can. What this implies for evaluation practice. The specific failure documented here, a defensible aggregate concealing near-zero performance on the subset that motivates the task, is not special to corporate families. It arises whenever a benchmark’s positives are heterogeneous in difficulty and the easy majority correlates
16
with a surface feature. Benchmark builders should report a stratification along whatever axis makes the easy cases easy, and reviewers should ask for one. Our own negative-sampling error in Section 3.5 is a second, related caution: when the two sides of a relation are different kinds of object, a model can learn the object type instead of the relation, and an aggregate metric will not reveal it.
10
Limitations
Our ground truth is a single jurisdiction and a single fiscal year, so families are those visible in US federal contracting in FY2025; multinational structures appear only through their US-registered entities. The parent relation as recorded is one hop, so we evaluate child-to-ultimate-parent linkage, not intermediate holding chains. Label noise is bounded but real, as Section 4 quantifies, and our hand adjudication covers large families exhaustively and small families not at all. The Exhibit 21 corroboration covers SEC registrants only. The multi-attribute baseline is measured on the subset with attributes on both sides, which is a minority of pairs. Finally, our baselines establish the shape of the problem and a floor rather than the state of the art; we release the benchmark so stronger methods can be measured against the stratification rather than against the aggregate.
11
Conclusion
Corporate-family resolution is treated as a variant of entity matching and evaluated with a single aggregate metric. We built a public benchmark of 54,864 pairs over 10,307 families from self-reported registry data and showed that this practice is misleading in two distinct ways. At the matching stage an overall F1 of 76.8 coexists with at most 9.0 on pairs where the relationship is not visible in the names. More fundamentally, the standard pipeline never gets that far: no string-keyed blocking scheme proposes those candidates, so 93.2% of them are lost before matching begins. The links are real: 64.2% of them are corroborated by the parent’s own SEC filings. Conventional attribute evidence mitigates the difficulty without resolving it. The pairs that matter commercially are the ones current pipelines cannot represent at all, and recognising that requires reporting the stratum rather than the average.
Data and Code Availability The benchmark, the adjudicated exclusion list with per-family reasons, and all code required to rebuild the dataset and reproduce every number in this paper are released. All source data is public United States federal award data (U.S. Department of the Treasury, Bureau of the Fiscal Service, 2026) and SEC EDGAR filings. No confidential or proprietary information was used. Every numeric claim in this manuscript is generated from a results file by make_tables.py and verified by check_manuscript.py; no figure is transcribed by hand. The build is seeded (20260827) and deterministic.
References Alexander Arimond, Mauro Molteni, Dominik Jany, Zornitsa Manolova, Damian Borth, and Andreas G. F. Hoepner. Transformer-based entity legal form classification. arXiv preprint arXiv:2310.12766, 2023. URL https://arxiv.org/abs/2310.12766. Ifigeneia Athanasiadou. Evaluating the maturity of companies in supplier master data management: The design of a maturity model. Master’s thesis, Delft University of Technology, 2019. URL http:// resolver.tudelft.nl/uuid:941be828-dbf1-40ea-90d7-5883d572abf5. 17
Nils Barlaug and Jon Atle Gulla. Neural networks for entity matching: A survey. ACM Transactions on Knowledge Discovery from Data, 15(3):1–37, 2021. doi: 10.1145/3442200. Lele Cao, Vilhelm Halvardsson, Andrew McCornack, Vilhelm von Ehrenheim, and Astrid Herog. Companykg: A large-scale heterogeneous graph for company similarity quantification. arXiv preprint arXiv:2306.10649, 2023. Rodrigo Carril and Mark Duggan. The impact of industry consolidation on government procurement: Evidence from department of defense contracting. Journal of Public Economics, 184:104141, 2020. doi: 10.1016/j.jpubeco.2020.104141. NBER working paper version: w25160, https://doi.org/10. 3386/w25160. Ka Kei Chan and Alistair Milne. The global legal entity identifier system: How can it deliver? Journal of Risk and Financial Management, 12(1):39, 2019. doi: 10.3390/jrfm12010039. Ka Kei Chan and Alistair K. L. Milne. The global legal entity identifier system: Will it deliver? SSRN Electronic Journal preprint, 2013. Zijian Chen, Xueguang Ma, Shengyao Zhuang, Ping Nie, Kai Zou, Andrew Liu, Joshua Green, Kshama Patel, and Jimmy Lin. BrowseComp-Plus: A more fair and transparent evaluation benchmark of deepresearch agent. arXiv preprint arXiv:2508.06600, 2025. URL https://arxiv.org/abs/2508. 06600. Author list truncated in the arXiv record display; verify full list before final citation. Valter Crescenzi, Andrea De Angelis, Donatella Firmani, Maurizio Mazzei, Paolo Merialdo, Federico Piai, and Divesh Srivastava. Alaska: A flexible benchmark for data integration tasks. arXiv preprint arXiv:2101.11259, 2021. URL https://arxiv.org/abs/2101.11259. Islam Akef Ebeid, John R. Talburt, and Md Abdus Salam Siddique. Graph-based hierarchical record clustering for unsupervised entity resolution. In Advances in Intelligent Systems and Computing, pages 107–118. Springer International Publishing, 2021. doi: 10.1007/978-3-030-97652-1_14. METADATA DISCREPANCY: Crossref registers the year as 2012, which is inconsistent with the 2021 arXiv posting and the volume. Year 2021 used here; prefer citing the arXiv version. Mark D. Flood, Dror Y. Kenett, Robin L. Lumsdaine, and Jonathan K. Simon. The complexity of bank holding companies: A topological approach. Journal of Banking & Finance, 118:105789, 2020. doi: 10.1016/j.jbankfin.2020.105789. NBER working paper version: w23755, https://doi.org/10. 3386/w23755. Luca Gagliardelli, George Papadakis, Giovanni Simonini, Sonia Bergamaschi, and Themis Palpanas. Evaluating blocking biases in entity matching. arXiv preprint arXiv:2409.16410, 2024. Introduces paircompleteness disparity across subgroups as a blocking evaluation axis. Balaji Ganesan, Srinivas Parkala, Neeraj R. Singh, Sumit Bhatia, Gayatri Mishra, Matheen Ahmed Pasha, Hima Patel, and Somashekar Naganna. Link prediction using graph neural networks for master data management. arXiv preprint arXiv:2003.04732, 2020. URL https://arxiv.org/abs/2003. 04732. Balaji Ganesan, Matheen Ahmed Pasha, Srinivasa Parkala, Neeraj R. Singh, Gayatri Mishra, Sumit Bhatia, Hima Patel, and Somashekar Naganna. xLP: Explainable link prediction for master data management. arXiv preprint arXiv:2403.09806, 2024. URL https://arxiv.org/abs/2403.09806.
18
Sonia Gantman and Lorrie Metzger. Vendor master data cleaning—a project for accounting class. Journal of Emerging Technologies in Accounting, 19(1):165–171, 2021. doi: 10.2308/jeta-2020-028. METADATA DISCREPANCY: OpenAlex lists volume 18 and year 2021; Crossref registers volume 19, issue 1, pages 165–171, issued 2021. Crossref preferred. Javier Garcia-Bernardo, Jan Fichtner, Frank W. Takes, and Eelke M. Heemskerk. Uncovering offshore financial centers: Conduits and sinks in the global corporate ownership network. Scientific Reports, 7(1), 2017. doi: 10.1038/s41598-017-06322-9. Van Hai Ho, Paul Compton, Boualem Benatallah, Julien Vayssière, Lucio Menzel, and Hartmut Vogler. An incremental knowledge acquisition method for improving duplicate invoices detection. In 2009 IEEE 25th International Conference on Data Engineering (ICDE), pages 1415–1418. IEEE, 2009. doi: 10. 1109/icde.2009.38. Azira Ibrahim, Ibrahim Mohamed, and Nurhizam Safie. Factors influencing master data quality: A systematic review. International Journal of Advanced Computer Science and Applications, 12(2), 2021. doi: 10.14569/ijacsa.2021.0120224. Pradap Konda, Sanjib Das, Paul Suganthan G. C., AnHai Doan, Adel Ardalan, Jeffrey R. Ballard, Han Li, Fatemah Panahi, Haojun Zhang, Jeff Naughton, Shishir Prasad, Ganesh Krishnan, Rohit Deep, and Vijay Raghavendra. Magellan: Toward building entity matching management systems. Proceedings of the VLDB Endowment, 9(12):1197–1208, 2016. doi: 10.14778/2994509.2994535. Tianshu Li, Jiannan Wang, Erkang Zhu, and Surajit Chaudhuri. Bridging the gap between reality and ideality of entity matching: A revisiting and benchmark re-construction. In Proceedings of the 31st International Joint Conference on Artificial Intelligence (IJCAI), 2022. Documents how skewed positive-class ratios make reported entity-matching scores incomparable across benchmarks. Yuliang Li, Jinfeng Li, Yoshihiko Suhara, AnHai Doan, and Wang-Chiew Tan. Deep entity matching with pre-trained language models. Proceedings of the VLDB Endowment, 14(1):50–60, 2020. doi: 10.14778/ 3421424.3421431. Cheng-En Liao, Kun-Da Wu, Li-Ya Wang, Shih-Chih Wang, Ying-Hsu Chen, Chia-Pei Lee, and YungHsing Peng. Software procurement duplicate detection using fuzzy matching and LLM verification. In 2026 IEEE 2nd International Conference on Consumer Technology (ICCT-Pacific), pages 121–124. IEEE, 2026. doi: 10.1109/icct-pacific69083.2026.11518888. Verified at metadata level only; abstract not obtainable. No claims made about contents. READ BEFORE SUBMITTING. Tom Magerman, Bart Van Looy, and Xiaoyan Song. Data production methods for harmonized patent statistics: Patentee name harmonization. SSRN Electronic Journal preprint, 2006. Takayuki Mizuno, Shohei Doi, and Shuhei Kurizaki. The power of corporate control in the global ownership network. PLOS ONE, 15(8):e0237862, 2020. doi: 10.1371/journal.pone.0237862. Sidharth Mudgal, Han Li, Theodoros Rekatsinas, AnHai Doan, Youngchoon Park, Ganesh Krishnan, Rohit Deep, Esteban Arcaute, and Vijay Raghavendra. Deep learning for entity matching: A design space exploration. In Proceedings of the 2018 International Conference on Management of Data (SIGMOD), pages 19–34. ACM, 2018. doi: 10.1145/3183713.3196926. Introduces the Company dataset: 112,632 labelled pairs, 28,200 positives, one long-text attribute, Wikipedia article to company homepage. Franziska Neuhof, Marco Fisichella, George Papadakis, Konstantinos Nikoletos, Nikolaus Augsten, Wolfgang Nejdl, and Manolis Koubarakis. Open benchmark for filtering techniques in entity resolution. The VLDB Journal, 33(5):1671–1696, 2024. doi: 10.1007/s00778-024-00868-7. 19
George Papadakis, Ekaterini Ioannou, Emanouil Thanos, and Themis Palpanas. The Four Generations of Entity Resolution. Synthesis Lectures on Data Management. Springer International Publishing, 2021. doi: 10.2200/S01067ED1V01Y202012DTM064. George Papadakis, Marco Fisichella, Franziska Schoger, George Mandilaras, Nikolaus Augsten, and Wolfgang Nejdl. Benchmarking filtering techniques for entity resolution. In 2023 IEEE 39th International Conference on Data Engineering (ICDE), pages 653–666. IEEE, 2023. doi: 10.1109/ICDE55515.2023. 00389. Bert Peeters, Xiaoyan Song, Julie Callaert, Joris Grouwels, and Bart Van Looy. Harmonizing harmonized patentee names: An exploratory assessment of top patentees. Technical report, KU Leuven, 2010. URL https://lirias.kuleuven.be/bitstream/123456789/264238/ 1/2010-03-18%20-%20HARMONIZING_HARMONIZED_PATENTEE_NAMES_FINAL.pdf. No DOI located; Lirias repository record. Ralph Peeters and Christian Bizer. Using ChatGPT for entity matching. In Advances in Databases and Information Systems (ADBIS), Communications in Computer and Information Science, pages 221–230. Springer Nature Switzerland, 2023. doi: 10.1007/978-3-031-42941-5_20. Ralph Peeters, Reng Chiz Der, and Christian Bizer. WDC products: A multi-dimensional entity matching benchmark. In Proceedings of the 27th International Conference on Extending Database Technology (EDBT), pages 22–33. OpenProceedings.org, 2024. doi: 10.48786/edbt.2024.03. DOI verified via DataCite; not registered with Crossref. Ralph Peeters, Aaron Steiner, and Christian Bizer. Entity matching using large language models. In Proceedings of the 28th International Conference on Extending Database Technology (EDBT), pages 529–541. OpenProceedings.org, 2025. doi: 10.48786/edbt.2025.42. DOI verified via DataCite; not registered with Crossref. Dumitru Roman, Vladimir Alexiev, Javier Paniagua, Brian Elvesæter, Bjørn Marius von Zernichow, Ahmet Soylu, Boyan Simeonov, and Chris Taggart. The euBusinessGraph ontology: A lightweight ontology for harmonizing basic company information. Semantic Web, 13(1):41–68, 2022. doi: 10.3233/sw-210424. Crossref registers the issued date as 2021 (IOS Press pre-press); the issue of record is volume 13 (2022). Ontology file inspected directly at https://github.com/euBusinessGraph/eubg-data: 34 object properties, none expressing ownership, parenthood or corporate-group membership. Alan Smart and Andreas Dudas. Developing a decision-making framework for implementing purchasing synergy: a case study. International Journal of Physical Distribution & Logistics Management, 37(1): 64–89, 2007. doi: 10.1108/09600030710723327. Ahmet Soylu, Oscar Corcho, Brian Elvesæter, Carlos Badenes-Olmedo, Tom Blount, Francisco Yedro Martínez, Matej Kovacic, Matej Posinkovic, Ian Makgill, Chris Taggart, Elena Simperl, Till C. Lech, and Dumitru Roman. TheyBuyForYou platform and knowledge graph: Expanding horizons in public procurement with open linked data. Semantic Web, 13(2):265–291, 2022. doi: 10.3233/sw-210442. Full text inspected: supplier reconciliation to OpenCorporates via owl:sameAs; zero occurrences of “subsidiary”, “ultimate” or “ownership”; no gold standard and no reconciliation accuracy reported. Aaron Steiner, Ralph Peeters, and Christian Bizer. MaDI-Bench: An end-to-end data integration benchmark. arXiv preprint arXiv:2606.30371, 2026. URL https://arxiv.org/abs/2606.30371. Verified at metadata level only (DBLP CoRR record); contents not read.
20
Saravanan Thirumuruganathan, Han Li, Nan Tang, Mourad Ouzzani, Yash Govind, Derek Paulsen, Glenn Fung, and AnHai Doan. Deep learning for blocking in entity matching: A design space exploration. Proceedings of the VLDB Endowment, 14(11):2459–2472, 2021. doi: 10.14778/3476249.3476294. Grid Thoma, Salvatore Torrisi, Alfonso Gambardella, Dominique Guellec, Bronwyn Hall, and Dietmar Harhoff. Harmonizing and combining large datasets — an application to firm-level patent and accounting data. NBER Working Paper 15851, National Bureau of Economic Research, 2010. Jianhong Tu, Ju Fan, Nan Tang, Peng Wang, Guoliang Li, Xiaoyong Du, Xiaofeng Jia, and Song Gao. Unicorn: A unified multi-tasking model for supporting matching tasks in data integration. Proceedings of the ACM on Management of Data, 1(1):1–26, 2023. doi: 10.1145/3588938. U.S. Department of the Treasury, Bureau of the Fiscal Service. USAspending API v2 — recipient endpoints. https://api.usaspending.gov/, 2026. API contract at https://github.com/ fedspendingtransparency/usaspending-api. Accessed 2026-08-27. recipient_level is documented as R (neither parent nor child), P (parent recipient), C (child recipient); parent_uei, parent_duns, parent_name and parent_id are nullable; parents is an array; the structure is one hop deep with no grandparent chain. Stefania Vitali, James B. Glattfelder, and Stefano Battiston. The network of global corporate control. PLoS ONE, 6(10):e25995, 2011. doi: 10.1371/journal.pone.0025995. Jin Wang, Yuliang Li, and Wataru Hirota. Machamp: A generalized entity matching benchmark. arXiv preprint arXiv:2106.08455, 2021. URL https://arxiv.org/abs/2106.08455. Jason Wei, Nguyen Karina, Hyung Won Chung, Yunxin Joy Jiao, Spencer Papay, Amelia Glaese, John Schulman, and William Fedus. Measuring short-form factuality in large language models. arXiv preprint arXiv:2411.04368, 2024. URL https://arxiv.org/abs/2411.04368. Introduces SimpleQA. Grading scheme: correct / incorrect / not attempted. Jason Wei, Zhiqing Sun, Spencer Papay, Scott McKinney, Jeffrey Han, Isa Fulford, Hyung Won Chung, Alex Tachard Passos, William Fedus, and Amelia Glaese. BrowseComp: A simple yet challenging benchmark for browsing agents. arXiv preprint arXiv:2504.12516, 2025. URL https://arxiv.org/abs/ 2504.12516. Alexandros Zeakis, George Papadakis, Dimitrios Skoutas, and Manolis Koubarakis. Pre-trained embeddings for entity resolution: An experimental analysis. Proceedings of the VLDB Endowment, 16(9):2225–2238, 2023. doi: 10.14778/3598581.3598594. Haochen Zhang, Yuyang Dong, Chuan Xiao, and Masafumi Oyamada. Jellyfish: Instruction-tuning local large language models for data preprocessing. In Proceedings of the 2024 Conference on Empirical Methods in Natural Language Processing (EMNLP), pages 8754–8782. Association for Computational Linguistics, 2024. doi: 10.18653/v1/2024.emnlp-main.497. Ran Ziv, Ilan Gronau, and Michael Fire. CompanyName2Vec: Company entity matching based on job ads. In 2022 IEEE 9th International Conference on Data Science and Advanced Analytics (DSAA), pages 1–10. IEEE, 2022. doi: 10.1109/dsaa54385.2022.10032350. AUTHOR-NAME DISCREPANCY: arXiv and the IEEE DOI record give “Ran Ziv”; OpenAlex renders it “Ziv Ran”. arXiv/IEEE form used here.
21
Related documents
- Members of the Family#57156
- Extravagance as a tool of family display#191385
- The psycho-analytic study of the family#57872
- 18 CFR Part 3b — Collection, Maintenance, Use, and Dissemination of Records of Identifiable Personal Information#506357
- Tracking strategy in a family firm : a case study#1020410
Retrieved via Conceptio: every document is proof-bundled with source, license, and retrieval metadata.
Read the Docs → · View CLI source on GitHub · Conceptio Open Knowledge Archive