This factor reports whether RankGear detects an OpinionNewsArticle @type declaration in a page’s raw HTML. It returns 1 when the string is present and 0 when it is not — but it pattern-matches source text, so it confirms the markup exists, not that the surrounding JSON-LD is valid.
| Factor ID | RG-SCJ-187 |
|---|---|
| Family | Structured Data — JSON-LD |
| Measurement | Binary presence (0 / 1) |
| Measured zone | Raw rendered HTML |
What it measures
This factor reports whether RankGear finds an @type value of OpinionNewsArticle in the page’s raw source. OpinionNewsArticle is the schema.org type used to mark up an opinion or editorial piece — a signed viewpoint article rather than straight reporting. The signal is binary: the declaration is either present in the source or it is not.
How RankGear measures it
RankGear searches the raw HTML for "@type": "OpinionNewsArticle", allowing flexible whitespace around the colon and an optional schema: prefix on the type value. Matching is case-insensitive, so capitalization differences do not affect the result. If the pattern is found anywhere in the source, the factor returns 1; otherwise it returns 0.
What RankGear looks for
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "OpinionNewsArticle",
"headline": "Why the new policy misses the point",
"author": { "@type": "Person", "name": "J. Rivera" },
"publisher": { "@type": "Organization", "name": "Example Review" },
"datePublished": "2026-01-14"
}
</script>| Value | Meaning |
|---|---|
| 1 | An OpinionNewsArticle @type string was found in the raw HTML. |
| 0 | No matching OpinionNewsArticle declaration was found in the raw HTML. |
How to optimize it
Use OpinionNewsArticle only for a genuine opinion or editorial article, and only when the page carries an accurate headline, author, publisher, publication and modification dates, an article body, and clear opinion context. Every property should reflect content a reader can verify on the page. Treat this factor as a description of your markup rather than a target to chase: adding the type to a page that is not actually an opinion piece misrepresents the content and does nothing useful.
Important considerations
- The detector pattern-matches source text; it does not parse or validate a JSON-LD graph.
- A matching string that sits outside valid JSON-LD — in a comment, an example, or malformed markup — can still produce 1.
- Capitalization differences do not affect detection, since matching is case-insensitive.
- Validate the complete structured data independently (for example with a schema validator) rather than relying on this presence check alone.
- This is a correlation-based prioritization signal within a measured result set. The presence of this markup relates to position; it does not by itself cause a page to rank or guarantee any ranking.
Related factors
Part of the Factors reference · how RankGear measures · glossary.