Seven Owners, One Portfolio — How a Shared Office Fakes Common Ownership
Who Owns What fuses 27 buildings into one portfolio because their owners all file from a single back-office suite — 235 River Ave #220, Lakewood NJ. But those owners are seven different people. Watchline refuses the merge: it treats a high-degree shared office as non-probative and lands on 7 owners. This is the mirror image of the Escobar case — there a typo split one owner apart; here a shared address fuses many together.
◆ The over-merge, at a glance
| Owner | OwnerGroup | Buildings | Merged name variants |
|---|---|---|---|
| Joe Nebenzahl | OG-55820 | 7 | JOE + JOSEPH NEBENZAHL |
| Abraham Miller | OG-233 | 7 | ABRAHAM + ABARAHAM MILLER |
| Jeanette Padilla | OG-52916 | 4 | PADILLA / PADILLa |
| Nathan Obstfeld | OG-85030 | 4 | |
| Vanessa Soria | OG-110200 | 3 | VANESSA + VANEESA SORIA |
| Nathan Obtfeld* | singleton | 1 | * OBTFELD typo, didn't merge with Obstfeld |
| Benyomin Fisch | singleton | 1 |
I. The tie: one shared office
Every one of the 27 buildings files its head officer from the same back-office suite:
That's not a home address — it's a shared registration office (a Lakewood back-office used by dozens of unrelated landlords), with a full degree of 45 distinct owners across the city. It's the housing-data equivalent of a mailing-list address: presence there says nothing about who owns what. Yet a shared string is exactly what registration-contact graphs link on.
II. How Who Owns What over-merges
WoW builds a node per (owner name, business address) and draws edges two ways: same
name, or same business address. Here the names are all different — and
typo-split into 10 name slots — so the name edges don't span them. But the
address is identical for all 27. That single shared-office edge is enough: connected
components sweeps the whole set into one portfolio.
III. How Watchline corrects it
The correction is subtler than "delete the shared address." The office does wire these owners
together in the graph — there are 55 CONNECTED_BY_ADDRESS edges among them,
51 of which cross owner boundaries. Watchline's owner-identity layer
(OwnerGroup) simply declines every one of the 51:
JOE/JOSEPH, ABRAHAM/ABARAHAM,
VANESSA/VANEESA) — the exact opposite discipline from WoW, which merges across the office but
leaves each person's typos as separate slots.
Portfolio / APPARENT_CONTROL layer is built
by connected-components over those 55 address edges, so it still over-merges (it reports one
"Abraham Miller" controlling all 27) — mirroring WoW. Only OwnerGroup makes the
correction. Read owner identity from the owner-group layer, never from the raw address edges.
IV. The mirror of Escobar
The same address-edge machinery fails in opposite directions, and Watchline's precision-first resolver fixes both:
| Escobar (under-merge) | Miller (over-merge) | |
|---|---|---|
| What the record does | a typo & blanked ZIP break one owner apart | a shared office fuses seven owners together |
| WoW's mistake | misses links → one owner as 2 portfolios | over-links → seven owners as 1 portfolio |
| The failing signal | exact address match (too strict) | shared address match (too loose on an aggregator) |
| Watchline's fix | merges the typo'd same owner (deed/identity) | declines the aggregator-address different owners |
V. Method & provenance
- The tie (raw HPD): all 27 buildings' head-officer contacts in
hpd_contactsfile from235 River Ave #220, Lakewood NJ; that suite has a degree of 45 distinct owners. - WoW's over-merge:
wow_portfoliosplaces all 27 in one portfolio, spanning 10 distinct name slots — linked purely by the shared business address. - Watchline's split: grouping the 27 buildings' registered landlords by
IN_OWNER_GROUPyields 7 owner units (5 owner groups + 2 singletons); the 51 cross-ownerCONNECTED_BY_ADDRESSedges are declined. - Explore: the interactive map — toggle Who Owns What's one portfolio ↔ Watchline's seven owners.
NATHAN OBTFELD) is an unmerged typo of Nathan Obstfeld — so it's really about six
people. Precision-first: it under-merges a typo rather than risk a bad merge.orig_ids renumber between dataset refreshes (this portfolio has appeared as
#183 and #210); the stable anchors are the office address and the BBL set. Ownership links are algorithmic
inferences from public records — leads to verify, not determinations of legal ownership.VI. See it in the graph (Cypher)
The exact subgraph behind this analysis, ready to paste into Neo4j Browser. The shared office isn't a
KG node — it's the Landlord.bizaddr property behind the CONNECTED_BY_ADDRESS edges —
so the query synthesizes a virtual :Office hub (in-memory, nothing written) and
wires every landlord to it with a FILES_FROM edge. It returns the 27 buildings, their 11
landlords all MEMBER_OF one over-merged Portfolio, the shared-office web of
CONNECTED_BY_ADDRESS edges, and the OwnerGroup split.
// === Miller over-merge subgraph + synthesized shared-office hub — 235 River Ave #220 ===
// The office is NOT a KG node (it's the Landlord.bizaddr property behind the
// CONNECTED_BY_ADDRESS edges), so we create a VIRTUAL :Office node and wire every
// landlord to it with a virtual FILES_FROM edge (in-memory; nothing is written).
WITH ['1004360028','1004360029','1004360129','1004370027','1019880024','1020700019',
'2032780028','2032780054','2032790006','2032830022','2032890032','2032930142',
'2032930144','2032930146','2033010063','3003050032','3003930043','3012680001',
'3012820053','3027570036','3027890011','3032210031','3032370001','3050880046',
'3051890045','3052150042','4031040070'] AS bbls
MATCH (b0:Building)<-[:REGISTERED_FOR]-(l0:Landlord) WHERE b0.bbl IN bbls
WITH bbls, collect(DISTINCT l0) AS lls
CALL apoc.create.vNode(['Office'], {name:'235 River Ave #220, Lakewood NJ', owners_on_file:45}) YIELD node AS office
UNWIND lls AS l
CALL apoc.create.vRelationship(l, 'FILES_FROM', {}, office) YIELD rel AS files
OPTIONAL MATCH (l)-[rf:REGISTERED_FOR]->(b:Building) WHERE b.bbl IN bbls
OPTIONAL MATCH (l)-[inre:IN_OWNER_GROUP]->(re:OwnerGroup)
OPTIONAL MATCH (l)-[mem:MEMBER_OF]->(p:Portfolio)
OPTIONAL MATCH (l)-[conn:CONNECTED_BY_ADDRESS|CONNECTED_BY_NAME|CONNECTED_BY_SPLINK|CONNECTED_BY_DEED]-(l2:Landlord)
WHERE l2 IN lls
RETURN office, files, l, rf, b, inre, re, mem, p, conn, l2
Renders ~44 nodes: 27 Building · 11
Landlord · 5 OwnerGroup (+ 2 unattached singletons) · 1 Portfolio
· 1 virtual :Office. Colour relationships by type to see the CONNECTED_BY_ADDRESS
tangle crossing the owner-group clusters.