: When a WebPage (or similar type) uses an ID that matches a breadcrumb ID, why does the WebPage become part of the BreadcrumbList? Is this what is supposed to happen? If so, why? Here's an
Is this what is supposed to happen? If so, why?
Here's an example (test code here):
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "WebPage",
"@id": "http://example.com/"
}
</script>
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement":{
"@type": "ListItem",
"position": 1,
"item":{
"@id": "http://example.com/",
"name": "Lecture 12: Graphs, networks, incidence matrices"
}
}
}
</script>
More posts by @Alves908
1 Comments
Sorted by latest first Latest Oldest Best
Yes, I think it makes sense that Google’s SDTT does this. It’s just a usability question if the WebPage item should be displayed as top-level item in addition; it doesn’t affect the semantics.
In the first script data block, you say that the WebPage has the URI example.com/. In the second script data block, you say that the value of the item property has the same URI, example.com/. Because these two items have the same URI, they have to be the same thing.
You may want to use the breadcrumb property to make clear that the BreadcrumbList belongs to the WebPage:
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "WebPage",
"@id": "http://example.com/",
"breadcrumb": {
"@type": "BreadcrumbList",
"itemListElement":{
"@type": "ListItem",
"position": 1,
"item":{
"@id": "http://example.com/",
"name": "Lecture 12: Graphs, networks, incidence matrices"
}
}
}
}
</script>
As you can see in the SDTT, the properties you provide for the item property will be displayed under the top-level WebPage item.
(N.B.: Google’s SDTT seems to be bugged for cases where different types get provided for the same URI.)
Terms of Use Create Support ticket Your support tickets Stock Market News! © vmapp.org2024 All Rights reserved.