네이버 검색과 구조화된 데이터
구조화된 데이터의 의미는 다양한 정보를 담고 있는 콘텐츠를 논리적으로 조직화하여 가공된 데이터를 의미하며 대표적으로 관계형 데이터베이스를 들 수 있습니다. 검색엔진의 입장에서는 웹 문서의 콘텐츠가 조직화된 구조로 이루어져 있다면 이를 해석하는데 큰 도움이 됩니다.
웹 콘텐츠도 구조화된 데이터로 정의해보자는 노력은 인터넷 커뮤니티 및 관련 업체의 노력으로 기초 작업이 꾸준하게 진행되어 왔으며 그 결과는 schema.org 사이트를 통해서 전파되고 있습니다. schema.org에서 정의하는 구조화된 데이터는 2015년 웹 표준 기구인 W3C 내에서 공식적으로 편입되어 웹 표준의 하나로서 지금까지 활발하게 표준화 활동이 진행되고 있습니다.
네이버는 구조화된 데이터를 활용해 콘텐츠 특성에 맞는 검색 결과를 구성하여 제공합니다. 구조화된 데이터는 특정 콘텐츠의 정보를 콘텐츠의 유형에 맞는 세부 속성으로 구조화하여 웹 페이지에 추가한 데이터입니다. 네이버 검색로봇은 이 정보를 자동 수집해 콘텐츠 특성에 맞게 정보를 구성하고 검색 반영에 활용합니다.
schema.org
schema.org가 제시하는 구조화된 데이터는 데이터 타입(type)과 속성(property)으로 구성됩니다. 데이터 타입은 웹 페이지나 콘텐츠의 특성에 따른 속성의 조합이며 하나의 웹 페이지에는 2개 이상의 데이터 타입을 조합하여 구조화된 데이터를 추가할 수 있습니다. schema.org이 정의한 데이터 타입의 목록은 schema.org vocabulary 에서 확인할 수 있습니다.
속성은 웹 페이지 또는 콘텐츠의 세부 정보로, 데이터 타입을 구성하는 요소입니다. 예를 들어 오디오 콘텐츠의 경우에 재생 시간, 재생 횟수 등이 속성에 해당하는 정보로 간주할 수 있습니다.
언어 형식 선택
schema.org의 구조화된 데이터는 Microdata와 RDFa, JSON-LD의 세 가지 언어 형식을 지원합니다. 네이버에서는 널리 사용하는 Microdata 형식이나 JSON-LD 형식을 사용하는 것을 권장합니다.
다음 코드는 JSON-LD 형식으로 작성한 구조화된 데이터의 예이며 음원 파일에 대한 구조화된 데이터를 담고 있습니다. 다른 언어 형식으로 작성한 예는 schema.org의 데이터 타입별 상세 페이지에서 확인할 수 있습니다.
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "AudioObject",
"contentUrl": "http://media.freesound.org/data/0/previews/719__elmomo__12oclock_girona_preview.mp3",
"description": "Recorded on a terrace of Girona a sunday morning",
"duration": "T0M15S",
"encodingFormat": "mp3",
"name": "12oclock_girona.mp3"
}
</script>
공개된 테스트 도구
구조화된 데이터가 올바로 적용되었는지 확인하기 위해서는 데이터를 검증하는 작업이 필요합니다. 구조화된 데이터를 검증할 때는 구글에서 제공하는 구조화된 데이터 테스팅 도구 혹은 Structured Data Linter와 같이 이미 공개된 구조화된 데이터 테스트 도구를 사용하기를 권장합니다.
향후 네이버 웹마스터도구에서도 구조화된 데이터 검증 도구를 제공할 예정입니다.