Duplicate content, canonical url and json-ld Article

If I have a duplicate content, which URLs should I use in json-ld Article schema? To be precise, let’s say I want to publish an article from my blog.example.xyz on another site e.g. popular.example.com. When I publish the article on popular.example.com I go and update canonical URL on my blog.example.xyz, and og:url property (both should be same as implied here):

<!-- this is on blog.example.xyz --> <link rel="canonical" href="https://popular.example.com/my-duplicate-article/"> <meta property="og:url" content="https://popular.example.com/my-duplicate-article/" /> 

I also use http://schema.org/Article to describe the Article entity, however, usually all URLs within it point to my own blog.example.xyz

<!-- this is on blog.example.xyz --> <script type="application/ld+json">   {     "@context": "http://schema.org",     "@type": "Article",     "author": {       "name" : "Gitnik"     },     "headline": "My Duplicate Article",     "description" : "Uhm, how do I deal with Article entity in case of duplicate content?",     "inLanguage" : "en",     "wordCount":  600 ,     "datePublished" : "2020-05-18T21:00:00",     "dateModified" : "2020-05-18T21:00:00",     "image" : "http:\/\/blog.example.xyz\/img\/logo.png",     "mainEntityOfPage" : "http:\/\/blog.example.xyz\/2020\/05\/my-duplicate-article\/",     "publisher" : {       "@type": "Organization",       "name" : "http:\/\/blog.example.xyz\/",       "logo" : {           "@type" : "ImageObject",           "url" : "http:\/\/blog.example.xyz\/img\/logo.png",           "height" :  60 ,           "width" :  60       }     }   }   </script> 

but Google states that mainEntityOfPage should be same as canonical URL. Now, it’s easy to update mainEntityOfPage to the new url. But what about image url and organization? Can image url point to a location other than canonical url? And should I change Organization entity to the popular.example.com and change the url there also? How would it affect SEO if I left them unchanged? How would it affect SEO if I left mainEntityOfPage unchanged?

JSON-LD for schema.org markup – what to include and where

I’m trying to take advantage of using JSON-LD for Schema.org markup over Microdata because it seems way easier to implement and to maintain. Also, I’ve heard that consumers like Google and Bing now prefer it’s use. However, since JSON-LD markup is not directly part of the source code it presents a possible issue. That being, it’s now way easier to add anything you want into your markup, which makes me wonder if this could be viewed as spammy or duplicate content.

For instance, take my example code:

JSON-LD Markup:

{ "@context": "http://schema.org", "@type": "LocalBusiness", "additionalType": "http://www.productontology.org/id/Company_Catagory", "address": {     "@type": "PostalAddress",     "addressLocality": "some city",     "addressRegion": "XX",     "postalCode":"12345",     "streetAddress": "123 any st."     }, "description": "Detailed description of the Company", "name": "Company Name", "openingHours": "Mo-Fri 08:30-17:00", "geo": {     "@type": "GeoCoordinates",     "latitude": "42.000",     "longitude": "-81.000"     }, "logo": "https://www.campany-name.com/logo.png", "image": "https://www.company-name.com/logo.png", "url": "https://www.company-name.com", "telephone": "(xxx) xxx-xxxx", "faxNumber": "(xxx) xxx-xxxx", "foundingDate": "1900", "priceRange": "$  $  ", "email": "info@company-name.com", "currenciesAccepted": "USD", "hasMap": "https://www.google.com/maps/place/direct-link-to-google-map", "paymentAccepted":"Cash, Credit Card, ACH, Debit", "sameAs" : [ "https://www.facebook.com/company-name/",     "https://twitter.com/company-name"] } 

The above markup example seems to satisfy the Google markup validator for a LocalBusiness, but the actual page it’s referencing might only contain a few pieces of that information.

So my question is a few parts:

  1. Would it be best to only include markup that actually appears in the source code or should I provide all the bits of markup information the consumers like Google and Bing want?

  2. If the answer to question 1 is to only include markup that appears in the source code. Then, what if it’s not feasible to include some items in the source code such as the geo item. Would it be best to not include it in the markup at all?

  3. Is it necessary to include the same markup on every page, or are the consumers smart enough to understand that if the LocalBusiness type has been populated on a different page inside a domain that it applies to the entire domain?

  4. If the answer to question 3 is to only include LocalBusiness markup data on one page throughout an entire site, is there a best practice regarding which page to place it on? ie. home page, contact us page…. any SEO benefit?

Will Magento generated MicroData interfere with JSON-ld structured data in Magento 1.9?

I see that Magento 1.9 generates MicroData for it products.

Before I realized this I started using JSON-LD to build out some of those same objects.

My questions are one;

  • Will Google penalize me for using both MicroData and JSON-ld?
  • Will the search engine become confused between witch to use?
  • Is there a way to turn off MircoData in Magento 1.9?

Thank you so much for your time, professional advice and expertise.

Need Help With JSON-LD Markup for Educational Software

My small company develops educational software that teaches algebra, geometry, and other math subjects. The software is designed for desktop Windows PCs. We have a website through which we sell the software, and each software package has its own page.

I would like to add JSON-LD markup to these product pages so that our search results listings would be richer and more descriptive. But I am struggling to understand the different types and categories of products that schema.org defines. My goal is to specify as closely as possible the details of each software product.

For example, I sell a program that teaches high school algebra. If I were to invent my own categories and sub-categories to specify the product I would do it like this:

Product -> Software -> Educational -> Math -> Algebra

But I don’t see a hierarchy like that in the schema.org documentation.

Instead I see the following:

Thing -> CreativeWork -> SoftwareApplication

Within SoftwareApplication I see “applicationCategory” with “Game” as an example. But I don’t see a list of other possible categories, like “Educational”. Do you make up your own categories, or do you select from pre-defined choices?

And there is “applicationSubCategory” with “arcade game” as an example. I don’t know how to view the other possible sub-categories. I would choose “Math” if it is allowed. Additionally, I would like to have a sub-SubCategory, where I would specify “algebra”.

Can anyone offer some guidance on how to categorize my products in JSON-LD?
Or perhaps you could point me to documentation that would clear things up for me.

Thank you very much.

how i can adding Structured data JSON-LD to multisite in drupal 7

how i can add rich snippets(Structured data JSON-LD) to multisite in drupal7 ??

example JSON-LD:

<script type="application/ld+json">    {"@context": "https://schema.org",        "@type": "Organization",        "url": "http://www.example.com",      "name": "Unlimited Ball Bearings Corp.",       "contactPoint": {     "@type": "ContactPoint",     "telephone": "+1-401-555-1212",     "contactType": "Customer service"   } }   </script> 

Rest – json-ld api method to calculate price

I’m using schema.org and I follow convention: https://schema.org/DeliveryChargeSpecification so I have:

GET /api/delivery_charge_specification with params:

areaServed weight basketPrice basketPriceCurrency ... 

to return object with fields:

appliesToDeliveryMethod price priceCurrency weight basketPrice basketPriceCurrency 

and front end will be processed many records to get the only one. But this is one way. Front end doesn’t like it. The thing is that we need delivery price and this depend on many params(could be even product_id etc.).

What if I do action:

POST /api/delivery_charge_specification with params:

areaServed weight basketPrice basketPriceCurrency 

and as result I will have only: price priceCurrency

The problem with that is, if I follow json-ld I should create second resource and as result have resource:

GET /api/delivery_charge_specification/3234

and this return:

price priceCurrency 

Have anybody idea how this should be done to have satisfied front end and json-ld concept?

Which Jsonld version SDTT uses

Google Structure data testing tool (SDTT) invalidates the JSON-LD where as jsonlint and jsonplayground for version 1.1 (https://json-ld.org/playground-dev/) validates below.

{   "@context": {     "@vocab": "http://schema.org/",     "ex": "http://schema.org/",     "name": {       "@id": "ex:name",       "@container": "@language"     },     "@version": 1.1   },   "@graph": [     {       "@type": "Organization",       "@id": "http://www.appointmentwala.com/C1.json#LocalBusiness1",       "name": {         "en": "Yastika Eclectic Software",         "hi": "यस्तिका एक्लेक्टिक सॉफ्टवेयर"       }     }   ] } 

Is SDTT using the JSON-LD 1.0 and do not consider the “@version”:1.1 in the context?