semantic 의 사전적 의미
: 의미의, 의미론적인
semantic web
'의미를 가진 웹'
왜 만들어졌을까?
: 웹에 축적된 방대한 데이터를 개인이 처리해야 하는데, 그 양이 너무 많다!
웹 구조를 의미 파악하기 쉽게 만들면, 개발자들이 일하기에도, 컴퓨터가 찾기에도 수월해진다.
의미를 어떻게 부여할지?
: 다양한 태그들을 만들어 분류를 쉽게 만들자.
기존 <div>, <span> 등의 의미 없는 태그에
<form>, <table>, <article> 등의 의미 있는 시맨틱 태그를 추가해 태그만 봐도 content 의 예측을 가능하게 만든다.
즉, semantic web(시맨틱 웹) 은 여러 태그들로 작성자의 의미를 보다 쉽게 파악할 수 있고 컴퓨터나 개발자들의 접근도 용이해진다.
우리가 사용하는 검색엔진은 자신의 웹사이트를 검색하기 알맞은 구조로 만들기위해, 프로그램을 이용하여 전세계 웹사이트 정보들을 수집한다. 그리고 사용자가 검색할 만한 키워드를 예상하여 검색 키워드에 대응하는 인덱스를 미리 만들어둔다. 이 프로그램이 수집하는 정보는 웹사이트의 HTML 코드이고 시맨틱 태그를 해석하게 된다.
검색엔진이 자체 프로그램을 통해 사용자들에게 보여줄 정보를 최적화시키기 때문에 나온 마케팅이 SEO(검색엔진 최적화: Search Engine Optimization) 이다.
<img 태그> 와 같은 semantic 태그를 사용한다는 것은 검색 등의 데이터 처리에 유리하다. content와 관련된 이미지인지, 검색에 필요한 이미지인지에 따라 semantic 태그를 사용해준다.
몇년 전, 마이크로소프트가 Semantic Machines 라는 AI 회사를 인수했다. (https://post.naver.com/viewer/postView.nhn?volumeNo=15781336&memberNo=40123791&searchKeyword=semantic&searchRank=2)
이 회사는 머신러닝을 이용해 AI가 대화의 문맥을 이해하고 이를 응답에 적용할 수 있도록 함으로써 AI와 보다 자연스럽고 효과적인 대화가 이루어질 수 있도록 하는 기술을 개발하고 있다.
이처럼, 사용하는 기술에 맞게 'semantic' 을 구현하는 것이 소프트웨어 엔지니어들이 해결해야 할 하나의 과제이다.