5

I'm attempting to make correct and efficient use of schema.org json-ld recommandations for adding semantic to a web page.

I have a web page for unique organizations (http://example/organization1):

{
  "@context": "http://schema.org/",
  "@type": "Organization",
  "@id" : "#ID_Organization1", 

  "name": "Organization1",
  "url": "https://myorganization1.com

}

Can I reuse the information on that organization on another page without having to redeclare it ? (http://example/offers)

{
  "@context": "https://schema.org/",
  "@type": "Review",

  "itemReviewed" : {
  "@type" : "Organization",
  "@id" : "http://example/organization1#ID_Organization1"
  },
}
Tim
  • 394
  • 2
  • 14
  • 1
    [Schema.org JSON-LD reference](https://stackoverflow.com/q/34761970/1591669) – unor Sep 23 '19 at 14:42
  • Thanks for the heads up Unor, do you know of any way to check that the cross-url microdata is valid ? I believe that the google testing tool does not fetch the nodes referenced in @id. – Tim Sep 24 '19 at 07:35
  • 1
    What exactly do you mean with "valid"? It’s just something like a unique identifier. The syntax doesn’t require that this URI is a resolvable URL, so a consumer (like a search engine bot) can’t *expect* that following this URI will be useful -- but they can certainly try, and see if it resolves to a page and contains structured data, too. Google Search doesn’t document that it does this, though. – unor Sep 24 '19 at 07:50
  • I meant valid for Google, but if Google doesn't resolve the page linked by the @id then of course it's out of question. Considering this, is there any actual point of identifying cross-url nodes as in my example ? – Tim Sep 24 '19 at 08:00
  • 1
    If you care about [Linked Data](https://en.wikipedia.org/wiki/Linked_data) / the [Semantic Web](https://en.wikipedia.org/wiki/Semantic_Web), yes. You provide the data about your content, and allow interested consumers to make use of it (some use it, some don’t, some will use it, some won’t). Maybe Google already follows those references, I don’t know -- and maybe they start following those references if they see more and more authors providing them. – unor Sep 24 '19 at 08:06
  • This is working for me, I've placed a `LocalBusiness` (`#company`) snippet on the same page as a `Review` and linked to the `LocalBusiness` with `@id`. When testing it with this [google tool](https://search.google.com/test/rich-results) the section `ItemReviewed` actually gets replaced with the `LocalBusiness` - [screenshot](https://imgur.com/a/0RdQwBU) – DarkBee Feb 18 '20 at 14:12

1 Answers1

2

Check the following JSON-LD 1.1 documentation information:

3.3 Node Identifiers

To be able to externally reference nodes in an RDF graph, it is important that nodes have an identifier. IRIs are a fundamental concept of Linked Data, for nodes to be truly linked, dereferencing the identifier should result in a representation of that node. This may allow an application to retrieve further information about a node. In JSON-LD, a node is identified using the @id keyword.

This probably means that there is no limit to using this element.

Community
  • 1
  • 1
nikant25
  • 814
  • 5
  • 10