How this tool computes its result
Parses pasted JSON-LD and runs a fixed set of shallow checks: warns if @context is missing, not a string, or not an http(s) URL; warns if @type is missing, and separately warns if @type is present but outside an 11-item whitelist (Organization, LocalBusiness, WebSite, Article, BlogPosting, FAQPage, Product, Review, BreadcrumbList, Person, Event). Only 3 of those types get deeper checks: Organization needs a name, Article/BlogPosting need headline and datePublished, and FAQPage.mainEntity must be an array where each item has @type "Question" and an acceptedAnswer. Two generic checks apply regardless of type: url must be a string, and an image value (string or ImageObject) should be an absolute URL.
