Technical explainer ·

Structured Data Should Describe the Entity You Can Prove

Markup is a claim system. The safest entity graph separates people, companies, software, facilities, and pages—and connects them only when the relationship is supported.

Structured data is often treated as a search-engine optimization accessory. Operationally, it is closer to a compact assertion layer: a publisher names an entity, assigns it a type, gives it an identifier, and describes relationships that machines may use to understand the page. That makes entity discipline more important than markup volume.

Google describes structured data as a standardized format for providing information about a page and classifying its content. Google also makes clear that correct markup does not guarantee a rich result. The useful goal, then, is not to maximize the number of properties. It is to publish the smallest accurate graph that agrees with the visible page and can be maintained as facts change.

Start with five separate layers

  1. Person. Use a Person node for an individual. Name, role, biography, and verified affiliations belong here. Do not turn a product, company, or facility into an alternate name for the person.
  2. Organization. Use an Organization node for the legal or operating organization the page can identify. A brand label is not enough to infer a parent, owner, founder, or provider relationship.
  3. Software. Use SoftwareApplication for a software product. Product status, availability, provider, and operating-system relationships should match visible, current evidence.
  4. Facility. Schema.org defines SelfStorage as a LocalBusiness subtype. Each physical facility should have its own identity, address, phone, and public profile rather than inheriting every corporate attribute.
  5. Page or site. Use WebSite for the site and ProfilePage when a page primarily describes a person or organization. The page is the publishing surface; it is not the entity itself.

Use identifiers to preserve the boundary

A stable @id gives one entity a reusable identifier inside the graph. A person might use the canonical profile URL with #person; a company might use its canonical company URL with #organization. Reusing that exact identifier lets multiple pages refer to the same node without collapsing distinct entities into one.

The canonical page URL and the entity identifier solve different problems. The canonical says which URL represents the page. The identifier says which thing the properties describe. Keeping both explicit makes later changes—such as a new biography page, rebrand, product rename, or facility disposition—less likely to create accidental identity drift.

Treat sameAs as an identity claim

Schema.org defines sameAs as a URL that unambiguously indicates the item’s identity. That is a narrow standard. A person’s verified professional profile may identify the same person. A company page, a software product page, a facility listing, an article mentioning the person, or a directory category usually describes something related—not the same thing.

Before adding a sameAs URL, check the displayed name, entity type, current status, and control or provenance of the destination. If the destination mixes an old brand, former address, different person, or uncertain organization, keep the relationship out of the public graph until it is corrected.

Make visible copy and markup agree

Google’s structured-data guidelines require markup to represent the page’s visible content and warn against misleading or irrelevant data. This is a practical publication control: if a role, owner, provider, customer, capability, award, or performance result is not supportable in the page copy, it should not be smuggled into JSON-LD.

The reverse also matters. When a verified entity fact changes, update the governing record, visible page, structured data, sitemap timestamps, and downstream profiles as one controlled release. A graph that lags the page can recreate the ambiguity it was intended to resolve.

A seven-point release gate

  1. Type: Is the node a person, organization, product, facility, site, or page?
  2. Canonical source: Which approved record governs the name and current status?
  3. Identifier: Does the node have one durable, canonical @id?
  4. Relationship evidence: Can every owner, founder, works-for, provider, parent, location, and author edge be supported?
  5. Identity links: Does every sameAs destination unambiguously describe the same entity?
  6. Page agreement: Is every material assertion also clear to a visitor in the visible content?
  7. Validation: Does the JSON parse, use valid Schema.org terms, and meet any applicable Google feature requirements without implying eligibility or appearance is guaranteed?

The durable result is a maintainable graph

A conservative graph may be smaller than a marketing-driven one, but it is easier to defend and repair. It allows a person to hold verified roles without becoming interchangeable with the companies. It allows software to have a distinct public status. It allows each facility to retain its own local identity. And it leaves unknown relationships unpublished until the source record is available.

That restraint is useful beyond search. The same entity boundary can govern websites, local profiles, media kits, knowledge bases, directory corrections, and future machine-readable publishing. Structured data works best when it expresses the authority system behind the page.

Primary references

Disclosure

This is an owned technical framework, not independent research or evidence of search visibility. The examples do not establish legal ownership, product availability, facility control, rich-result eligibility, indexing, ranking, or a Knowledge Panel.

About the author

Jared Mastroianni

Chief Operating Officer of modSTORAGE and CEO and Co-Founder of Facily.ai. Jared writes from the intersection of self-storage operations, accountable artificial intelligence, and operator-shaped software.