I am learning about the semantic web. So far what I know is that the whole idea of the semantic web is to add metadata to the data in your website in order to make the data in your website easier to read by a machine.

But I don't know if an average web developer can add this metadata to their website, or if this process of adding metadata to a website needs a specialized person to do it, I have found the following quote from this Wikipeda article:

While learning the basics of HTML is relatively straightforward, learning a knowledge representation language or tool requires the author to learn about the representation's methods of abstraction and their effect on reasoning. For example, understanding the class-instance relationship, or the superclass-subclass relationship, is more than understanding that one concept is a “type of” another concept. […] These abstractions are taught to computer scientists generally and knowledge engineers specifically but do not match the similar natural language meaning of being a "type of" something. Effective use of such a formal representation requires the author to become a skilled knowledge engineer in addition to any other skills required by the domain. […] Once one has learned a formal representation language, it is still often much more effort to express ideas in that representation than in a less formal representation […]. Indeed, this is a form of programming based on the declaration of semantic data and requires an understanding of how reasoning algorithms will interpret the authored structures.

I don't understand what is meant by the above quote, does it mean that you have to be a "skilled knowledge engineer" in order to know how to "add" semantic web to a website?

  • Adding semantic data simply means additional attributes and elements which can be parsed by search engines and the like. You certainly don't need to be a "knowledge engineer." A good example is product reviews. You can embed review data in a web page alongside what the user sees. developers.google.com/search/docs/data-types/…
    – Dan Wilson
    Sep 8, 2020 at 18:39

1 Answer 1


Short answer: Semantic HTML is one element of on-site SEO. It's about using HTML4/5 tags that communicate context and not just data to Google.

Have a look at this article, it's the best beginner friendly intro I've found online about semantic web: https://www.internetingishard.com/html-and-css/semantic-html/

Long answer:

HTML4/5 introduced tags that work like div's but have special names so search engines (and other devices) can interpret them to have additional meaning.

  • <h1> ... <h6> tags indicate document structure - I've rarely met anyone that gets this. You can have multiple <h1> tags! Laying them out thoughtfully requires no technical expertise.
  • Each of these tags have somewhat fuzzy and ambiguous meanings (compared to usual computer science concepts).
  • Their meanings can change depending on your usage - this is a pro and a con - and is difficult to communicate it implicitly. Just hope search engines understand.
  • They indicate context and may be interpreted by search engines and used by developers as they wish - despite W3C recommendations.
  • They don't affect functionality (there might be a rare exception, correct me if I'm wrong).

See below image (from the article) for the old way and the semantic web way to code.

enter image description here

You might ask why this isn't better known or more widely implemented?

  • Honestly, this is a subtle part of programming that requires a good understanding of SEO and shows no tangible results up-front and immediately.
  • It's completely invisible and doesn't change visual results. People don't notice either way.
  • Most web developers don't need to know SEO to be employed and promoted.
  • The results are extremely hard to demonstrate and therefore clients rarely ask for it or check if you're doing it well (or doing it at all).
  • Google has gotten quite intelligent that plenty of websites are ranked highly even without good semantic coding.

This is about using HTML tags intelligently on the website to communicate page structure to Google. This is primarily about on-site SEO. It involves coding your HTML thoughtfully, but isn't technically challenging.

A quality SEO person should be able to evaluate code and provide a developer with suggestions - assuming the developer didn't do this, doesn't know how to or wasn't paid to.

Clients, managers, stakeholders in practice don't care. I've learnt the hard way to avoid even bringing it up altogether; often clients think you're trying to sell them an unnecessary extra to make more money.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.