웹 기술이 발달하고 웹이 담는 데이터의 양 또한 커지면서 생기는 문제는 정복 검색시 무수히 많은 불필요한 데이터가 노출됩니다.
컴퓨터와 사람이 어느 데이터가 중요하고 필요한 데이터인지 모두 잘 이해하고 인지 할 수 있는 웹을 목표로 하는게 Semantic Web입니다.
semantic tag는 사람과 컴퓨터 모두 의미를 인지할 수 있는 태그 입니다.
NOT semantic = ex) div, span
div & span 은 아무런 의미를 두지 않는 칸나누기 태그에 불과합니다.
semantic tag = ex) section, header, nav, footer 등이 있습니다. 예를들어 header태그 안에 있으면 "아 이 태그는 이 웹페이지의 문을 여는 혹은 포커스 토픽이구나" 라고 사람이 & 컴퓨터 모두 인지할 수 있습니다.
nav는 navigation (대부분 항상 존재하는 bar), footer는 맨 아래 위치하거나 웹페이지의 마지막을 장식하는구나 라고 모두 인지할 수 있습니다.
또 다른 예로 div코드 안에 image가 있는 것과, 그냥 img태그로 image를 표현하는 것은 semantic 과 not semantic으로 나뉩니다.
div 코드안에 코드가 많다면 코드를 다 읽다가 img 태그를 발견해야 "아 이 div가 표현하는 것이 img구나" 를 알 수 있지만
img태그는 보자마자 컴퓨터와 사람이 image파일인 것을 알 수 있습니다.
또한 alt attribute로 부가 설명도 더할 수 있습니다.