Benefits/drawbacks to different Schema markup languages (ie. JSON-LD, Microdata, RDFa)
-
Just a question (or questions) I have wondered about. What's the difference, besides the actual encoding, between the three? Why have three? Why not just the one? Seems to me that Microdata is the easiest, but maybe I am wrong. Is there a reason to use one versus another? I have not found anything explaining this on schema.org - I suppose this is just a discussion versus getting one right or wrong answer. I am just curious of the opinions of people in the SEO MOZ community. Unless of course there is one answer. I'll take that too.
-
Great, Peter. Thanks for the answers. I now understand the difference. Much appreciated.
-
That's right. JSON-LD doesn't require change of HTML compared with Microdata and RDFa. And this is one of answers why JSON-LD is beautiful. Second is because you can make changes in JSON-LD without touching HTML. Like adding new fields, parameters, etc.
About placing. I think that this can be just on home page. Placing in each page is pure rich snippet spam.
-
Hi Peter,
Thanks for the answer. So, as I understand it, and keep in mind this is coming from someone that is not very code-savvy, with JSON-LD, one could put the script anywhere in the HTML, the header, the body, the footer, etc. and it won't show up on the actual page, but the search engine will be able to read it. This implies that no changing or tweaking of the actual HTML is necessary, no messing around with 's or
's like you would with Microdata or RDFa, correct?
A follow up question, if I may, how would you implement something like a "local business" schema with JSON, would you put the script on every page, in the footer perhaps? Or would you just put it on the home page? Does it matter?
Thanks
-
So far we have Microdata, RDFa and JSON-LD.
I'll cover Microdata and RDFa in same because they're similar. So they both are addition to HTML attributes indicating what Schema.org field names correspond with what user-visible text on the page. Works perfect but need lot of developer work and designer changes. Because both backend (admin interface) and frontend (HTML) must be changed. And there are many issues that can be messed - incorrect implementation, "rich snippet spam", software bugs, etc. Look easy as 1-2-3 but in reality it's pain (PIA) for implementation and support. Example - only product implementation require in backend least 10 edit boxes if they're manual filled.
JSON-LD - it's relative new protocol based on Schema.org. The main benefit is that you split representation layer (HTML) from semantic layer (JSON-LD). In prev. formats - they're same and linked each other. Now they're split. This give you much more freedom than before. You can place HTML data whatever you wish and just add hidden JSON in head or in content that will add semantic marking. This is future (for now).
If you wish to read more about creation of JSON-LD then this article is for you:
http://manu.sporny.org/2014/json-ld-origins-2/
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
JSON-LD With Multiple @type?
I'm working with an organization that is equal parts restaurant, hotel, and conference center. How should I place JSON-LD script on their website? I want to use @type specifications of restaurant, hotel, and meeting room because all those aspects of the organization function separately. What's the best way to go about this? Should I place three different scripts on the homepage or place each script on the individual pages dedicated to dining, lodging, conference center?
Intermediate & Advanced SEO | | Campaignium0 -
Are my language tags correct?
Hello, I have a Spanish website for Spanish speaking people es.example.com. I also have example.com for all English speaking people across the world. I want that users who go to google.es and search in English get our example.com site and others who search in Spanish on google.es get the Spanish site. Should the tags be like this: Or should we also have this tag aswell to specify? Otherwise we might only show the es.domain even for english queris? :
Intermediate & Advanced SEO | | advertisingtech0 -
Is this Schema? Did Test, and Shows Nothing
Hi Everyone, If you look at the first listing on https://www.google.com/search?q=tanzanite+minerals&ie=utf-8&oe=utf-8, you will see this under the listing: Mineral Class: ZoisiteLuster: VitreousChemical Formula: Ca<sub>2</sub>Al<sub>3</sub>(SiO<sub>4</sub>)<sub>3</sub>(OH)Crystal System: OrthorhombicI tried to run a test against the page and it shows no schema. How are they doing this as we would love to provide the same information.Thank you!
Intermediate & Advanced SEO | | vetofunk0 -
Duplicate content across different domains
Hi Guys, Looking for some advice regarding duplicate content across different domains. I have reviewed some previous Q&A on this topic e.g. https://mza.seotoolninja.com/community/q/two-different-domains-exact-same-content but just want to confirm if I'm missing anything. Basically, we have a client which has 1 site (call this site A) which has solids rankings. They have decided to build a new site (site B), which contains 50% duplicate pages and content from site A. Our recommendation to them was to make the content on site B as unique as possible but they want to launch asap, so not enough time. They will eventually transfer over to unique content on the website but in the short-term, it will be duplicate content. John Mueller from Google has said several times that there is no duplicate content penalty. So assuming this is correct site A should be fine, no ranking losses. Any disagree with this? Assuming we don't want to leave this to chance or assume John Mueller is correct would the next best thing to do is setup rel canonical tags between site A and site B on the pages with duplicate content? Then once we have unique content ready, execute that content on the site and remove the canonical tags. Any suggestions or advice would be very much appreciated! Cheers, Chris
Intermediate & Advanced SEO | | jayoliverwright0 -
Content very similar on different websites
Hello, I am in the travel industry and I am currently building the same website (different domain names), one for the US and one for the UK (same website design). They will both features the same content (itinerary, activities) on the page with 2 exception, the 1 st one is that I will use different hotels for my uk clientele and for my US clientele and on the UK page I will use the word "holiday" in the UK and the word "vacation" in the US. Can the fact that I do the same "itineraries" and use the same text on 95 % of the page hurt my ranking in one country or another ?
Intermediate & Advanced SEO | | seoanalytics0 -
Page / Domain Authority Question
If my website were to purchase a sponsored article on a site with a powerful domain authority that contained a do-follow link, and the link would be "domain.com/articles/new-article" ... obviously new-article would have 0 page authority, being new... is that still considered a valuable link and why or why not?
Intermediate & Advanced SEO | | cat5com0 -
Article Marketing / Article Posting
I am working on the SEO on a few different websites and I have built out an article marketing campaign so that I can get high quality backlinks for my website. I have been writing the content myself and I have been manually building out the top Web 2.0, Article Directory, and Doc Sharing sites. today I was creating an account on squidoo and I wondered if it mattered if I had the username be one of two things: my keyword as a user name, like: [keyword+geotag] example: roofinghouston just my first and last name as the username (or just a username I always use) (The reason behind #1 would be to have the optimized keyword and location I am trying to rank for, inside of the username. The reason for #2 would be that I don't want to get into trouble by having "too much" optimization.) I know a bit about optimization and that getting your keyword out there is great in a lot of areas, but I am not sure if it looks "suspicious" if I have my username be the keyword+geotag. I am just worried that all of this hard work will be torn down if I look like I'm trying too hard to be optimized, etc etc. There is no one answer, I am mainly looking for shared experiences. If you do have a definite answer, then I would like that too 🙂 Thanks SEOMoz!
Intermediate & Advanced SEO | | SEOWizards0 -
Page not showing up on Bing/Yahoo
We have a page that's ranking well on Google, however the page is not showing up in either Yahoo or Bing. What's even more odd is that for Y! and Bing, the page doesn't return in SERP even when you explicitly search for it (e.g. homepage + name of page). Instead, the result that gets returned is our homepage along with a Page Title that's been manipulated to include the keywords, but the title is not what we have in our title tag. Bing processed our sitemap today and I also manually submitted the URL, but it's still not turning up. Any thoughts?
Intermediate & Advanced SEO | | JoeLin0