-
Notifications
You must be signed in to change notification settings - Fork 5.7k
Description
Add JSON-LD navigation & breadcrumb data for accessibility
Problem Description
The EIPs website currently lacks fundamental machine-readable structured data for navigation and breadcrumbs, creating significant accessibility barriers and limiting search engine understanding:
Primary Issue: Accessibility Impact
-
No programmatic site navigation structure: While the HTML nav element provides basic landmarks, assistive technologies cannot understand the relationships between pages or the site's information hierarchy. This forces users with disabilities to manually parse the entire navigation to understand available sections and their relationships.
-
Missing breadcrumb context: Users navigating to individual EIP pages have no programmatic way to understand their location within the site hierarchy. This goes against commonly accepted best practices and W3 guidelines in WCAG 2.4.8 (Location).
-
Reduced navigation efficiency: Without structured navigation data, users relying on assistive technologies cannot leverage advanced features like hierarchical navigation shortcuts or relationship-based browsing that depend on understanding parent-child page connections.
Secondary Issue: SEO and Discoverability Impact
Beyond accessibility concerns, the lack of structured data also limits search engine capabilities:
- Search engines cannot properly map the hierarchical relationship between category pages and individual EIPs
- Missing opportunities for enhanced search results that display breadcrumb trails
- Reduced ability for search engines to understand content relationships and site architecture
Current State
- The site uses standard HTML
<nav>
elements which provide basic semantic navigation landmarks - Navigation structure lacks detailed relationship data about page hierarchy and parent-child connections between categories and EIPs
- Only a basic
WebSite
schema JSON-LD exists in the<head>
section - No breadcrumb trails exist in any format (neither visual HTML nor structured data)
- Assistive technologies cannot determine a user's location within the site hierarchy or understand the relationships between pages
Expected Behavior
The site should include:
- A
SiteNavigationElement
schema on all pages describing the main navigation structure - Dynamic
BreadcrumbList
schema that adapts to each page type and EIP category (important because new content is added regularly):- Homepage: Single-item breadcrumb
- Category pages: Two-level breadcrumb (Home → Category)
- EIP pages: Three-level breadcrumb (Home → Category → EIP)
Acceptance Criteria
-
<script type="application/ld+json">
withSiteNavigationElement
appears on every page - Homepage shows a 1-item
BreadcrumbList
- Category pages show a 2-item
BreadcrumbList
- EIP pages show a 3-item
BreadcrumbList
- All JSON-LD validates against the Schema.org validator
Conclusion
This is a foundational accessibility requirement that will improve the experience for users with disabilities while also enhancing search engine understanding of the site structure.