Skip to content
Novandri.

Structured Data and Schema.org: What It Can—and Cannot—Do

A developer's guide to structured data and Schema.org: implementing JSON-LD, entity @id linking, content parity rules, and realistic rich snippet expectations.

Rachmadwipa Novandri6 min read

Search engine crawlers are proficient at extracting keywords from raw HTML strings, but human language is inherently ambiguous. Does the word "Apple" on a web page refer to the technology company, the fruit, or a record label? Does the phrase "4.8 stars" represent an editorial review, a product customer rating, or an aggregate employee score?

To disambiguate text into explicit semantic concepts, search engines rely on Structured Data based on the vocabulary defined by Schema.org.

Direct Answer: Structured data provides machine-readable context about entities, relationships, and actions on a web page. Implemented primarily via JSON-LD scripts embedded in HTML, it enables search engines to map content directly into knowledge graphs and unlocks rich search results (e.g., star ratings, breadcrumbs, recipe cards, and article carousels). However, structured data is not a direct ranking factor: valid markup never guarantees rich snippet display, nor does it compensate for low-quality content.

Understanding how to construct connected entity graphs with persistent @id nodes allows developers to build clear, machine-verifiable documents.

[Raw HTML Document] ──► Contains text: "Written by Jane Doe, senior engineer at Acme Corp."
         │
         ▼
[Embedded JSON-LD Graph]
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://example.com/#organization",
      "name": "Acme Corp"
    },
    {
      "@type": "Person",
      "@id": "https://example.com/authors/jane-doe/#person",
      "name": "Jane Doe",
      "worksFor": { "@id": "https://example.com/#organization" }
    },
    {
      "@type": "TechArticle",
      "@id": "https://example.com/article-slug/#article",
      "headline": "System Architecture Guide",
      "author": { "@id": "https://example.com/authors/jane-doe/#person" }
    }
  ]
}

1. Structured Data vs Plain Text: Constructing Knowledge Graphs

Traditional search algorithms treat documents as "bags of words," scoring relevance using lexical and probabilistic models (like BM25). Modern search engines augment lexical indexing with Entity-Based Knowledge Graphs:

  • Entity: A distinct, identifiable concept, person, organization, place, or creative work that exists independently of the words used to describe it.
  • Relationship (Edge): The semantic predicate connecting two entities (e.g., Jane Doe [Person] $\rightarrow$ worksFor $\rightarrow$ Acme Corp [Organization]).

By embedding structured data, you transform your unstructured prose into explicit nodes in Google’s knowledge graph, removing ambiguity and establishing topical authority.


2. The Syntax Standard: Why JSON-LD Defeated Microdata and RDFa

In earlier eras of technical SEO, developers used Microdata or RDFa, injecting schema attributes directly into HTML layout tags (itemscope, itemtype, itemprop).

This tightly coupled presentation layout with semantic data: if a frontend developer refactored a <div> or changed a CSS class, the structured data markup frequently broke.

The Modern Standard: JSON-LD (JavaScript Object Notation for Linked Data)

Google and W3C explicitly recommend JSON-LD. JSON-LD encapsulates all semantic data within a single <script type="application/ld+json"> block inside the <head> or <body>:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "BlogPosting",
  "headline": "Structured Data and Schema.org",
  "description": "A developer's guide to implementing JSON-LD for search engines.",
  "datePublished": "2026-11-13T10:00:00Z",
  "dateModified": "2026-11-13T10:00:00Z",
  "author": {
    "@type": "Person",
    "name": "Rachmadwipa Novandri"
  }
}
</script>

Key Advantages:

  • Decoupled Architecture: Content management and templating teams can modify the visual UI without risking schema syntax corruption.
  • Wave 1 Crawlability: When server-rendered into the initial HTML response, search crawlers parse JSON-LD instantly in Wave 1 without waiting for client-side JavaScript execution.

3. Entity IDs and Knowledge Graphs: Connecting Nodes with @id

A frequent flaw in enterprise structured data implementations is creating "orphaned" nested objects. For instance, declaring an Organization block inside an Article, and declaring an identical Organization block inside a Product, resulting in search engines seeing two separate, unlinked entities.

To build a cohesive knowledge graph, use the @id URI property to assign persistent, globally unique identifiers to your core entities:

{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://example.com/#organization",
      "name": "Novandri Engineering",
      "url": "https://example.com"
    },
    {
      "@type": "Person",
      "@id": "https://example.com/about/#author",
      "name": "Rachmadwipa Novandri",
      "jobTitle": "SEO Engineer",
      "worksFor": { "@id": "https://example.com/#organization" }
    },
    {
      "@type": "TechArticle",
      "@id": "https://example.com/articles/structured-data/#article",
      "headline": "Structured Data and Schema.org: What It Can—and Cannot—Do",
      "author": { "@id": "https://example.com/about/#author" },
      "publisher": { "@id": "https://example.com/#organization" }
    }
  ]
}

By referencing {"@id": "https://example.com/#organization"}, every article across your website links back to the exact same organizational node, reinforcing entity resolution across Google's global Knowledge Graph.


4. The Content Parity Requirement: Avoiding Spam Penalties

Google enforces a strict Content Parity Policy for structured data:

Google Rule: All data declared in your JSON-LD markup must be clearly visible and verifiable to human users viewing the rendered page.

High-Risk Anti-Patterns:

  1. Hidden Reviews / Fake Aggregate Ratings: Declaring a 5.0 star rating in JSON-LD when no actual customer reviews appear on the visual page.
  2. Hidden Keywords in Schema: Stuffing high-value keywords or hidden text into the schema description that does not exist in the article body.
  3. Mismatched Prices: Declaring $19.99 in product schema while the user-facing page displays $29.99.

If Google’s automated verification algorithms detect a discrepancy between user-visible content and JSON-LD markup, the site risks a Structured Data Manual Action, resulting in the revocation of all rich results across the entire domain.


5. Validating Syntax vs Feature Eligibility

When testing structured data, developers must use two different validation tools, as they measure different aspects of compliance:

1. Schema Markup Validator (validator.schema.org)
   └── Validates SYNTAX against generic Schema.org vocabulary.
   └── Does NOT tell you if Google will show a Rich Snippet.

2. Google Rich Results Test (search.google.com/test/rich-results)
   └── Validates GOOGLE ELIGIBILITY against Google Search guidelines.
   └── Verifies mandatory fields required for visual SERP features.
  • Schema Markup Validator: Checks if your JSON-LD syntax is valid and conforms to official Schema.org inheritance rules.
  • Google Rich Results Test: Tests whether your markup satisfies Google’s specific, proprietary prerequisites for displaying interactive SERP enhancements (e.g., Breadcrumb navigation, Article badges, Review stars, FAQ dropdowns).

6. Realistic SEO Expectations: What Structured Data CANNOT Do

A persistent misconception in digital marketing is that adding structured data automatically boosts organic rankings or guarantees rich result snippets.

The Realities of Structured Data:

  • Valid Markup Does NOT Guarantee Rich Snippets: Even if your JSON-LD passes the Rich Results Test with zero errors, Google reserves visual enhancements for pages that meet strict domain quality, freshness, and user intent thresholds.
  • Structured Data is NOT a Direct Ranking Factor: Google has reiterated that structured data is not a standalone ranking score. It helps search engines understand the meaning of your document; it does not make a mediocre document outrank a superior one.
  • No "AI Search" Magic Schema: There is no secret Schema.org tag that guarantees inclusion in Google AI Overviews or AI answer engines. Answer engines cite pages based on information gain, factual accuracy, and topical authority—not schema tags alone.

Summary & Next Steps

Structured data is the language of machine readability. When implemented with clean JSON-LD, connected @id entity graphs, and strict content parity, it demystifies your content for search engines and unlocks valuable rich visual search features.

Continue exploring web infrastructure and semantic architecture: