Skip to main content

SEO / AEO Global Rules

Per-surface schema types

Per-surface schema types — documentation pending.

Complete

Each of the 7 detail surfaces emits a different primary schema.org `@type` plus the cross-module `mentions` array. The mapping is locked — changing a surface’s primary type invalidates the entity graph crawlers have already indexed.

The 7 surface → schema mapping

Opportunity Detail
Primary: `CreativeWork` (planned migration to `BusinessEvent` once application-window fields stabilize). Additional: `Organization` author (StartupHub.today), `Organization` organizer, `Place` location.
Founder Profile
Primary: `Person`. Combined with: `BreadcrumbList`, `ProfilePage`. `affiliation: Organization` when linked startup exists. `subjectOf: Article[]` when mentioned in editorial.
Startup Showcase
Primary: `Organization`. With: `foundingDate`, `address: PostalAddress`. `founder: Person[]` for linked founders. `subjectOf: Article[]` and `event: Event[]` as the entity graph populates.
Founder File Reader
Primary: `Article` (CreativeWork variant). With: `learningResourceType: "Guide"`, `educationalLevel`, `inLanguage`, author info.
Calendar Event
Primary: `Event`. With: `BreadcrumbList`, `startDate`, `endDate`, `location: Place`, `organizer: Organization`. `performer: Person[]` and `attendee: Organization[]` populate from the entity graph.
Events Coverage Article
Primary: `NewsArticle`. With: `about: Event` (the parent event — T1 structural link). Author + publisher + dateline. Mentions of founders / startups / opportunities surface as `mentions: Thing[]`.
Editorial Article
Primary: `Article` (or `NewsArticle` when `type === 'news'`). With: author, publisher, datePublished, `mentions: [Person, Organization, Event]` for mentioned founders / startups / events.