본문 바로가기
SEO·GEO 용어사전

RDFa (알디에프에이, 링크드 데이터 마크업)

마지막 업데이트
선호 출처로 추가

RDFa는 HTML 등의 요소에 속성을 붙여 대상의 정보와 관계를 표현하는 구조화 데이터 형식입니다. 웹페이지에 적힌 이름이 누구의 이름인지, 어떤 상품의 가격인지 등을 기계가 읽을 수 있게 표시합니다. RDFa는 작성 형식이며, 상품이나 가격을 뜻하는 어휘는 Schema.org 등에서 가져옵니다.

RDFa는 관계를 어떻게 표현하나

RDF는 대상과 속성, 그 값을 하나의 문장으로 묶어 표현하는 데이터 모델입니다. 이 세 항목의 묶음을 트리플이라고 합니다. RDFa를 쓰면 화면에 표시하는 HTML에 속성을 추가해 같은 내용을 RDF 데이터로도 읽을 수 있게 합니다.

<div vocab="https://schema.org/" typeof="Product">
  <span property="name">검은색 티셔츠</span>
</div>

예시의 vocab은 Schema.org 어휘를 쓰겠다는 뜻입니다. typeof="Product"는 설명할 대상이 상품임을, property="name"은 “검은색 티셔츠”가 그 상품의 이름임을 나타냅니다. 화면의 상품명을 별도 데이터에 다시 적지 않아도 됩니다.

대상을 식별하거나 다른 대상과의 관계를 적을 때는 about, resource 같은 속성도 씁니다. about으로 현재 설명하는 대상을 지정하고, 관계의 대상은 resource 등으로 식별할 수 있습니다. 이처럼 이름 같은 텍스트 값뿐 아니라 다른 자원과의 연결도 표현합니다.

Microdata, JSON-LD와 다른 점

RDFa와 Microdata는 모두 HTML 요소에 속성을 붙이지만 문법이 다릅니다. RDFa는 typeof, property 등을 쓰고, Microdata는 itemscope, itemtype, itemprop으로 항목과 속성을 연결합니다. JSON-LD는 화면의 HTML 요소와 분리한 <script> 안에 JSON 문법으로 데이터를 적습니다.

RDF/XML도 RDF를 표현하는 형식이지만 XML 문법으로 직렬화합니다. 기존 HTML 요소에 속성을 덧붙이는 RDFa와 같은 문법은 아닙니다.

Google은 RDFa, Microdata, JSON-LD를 모두 지원하며 구현과 유지 관리가 쉬운 JSON-LD를 권장합니다. 네이버도 RDFa를 지원하고, 권장 형식으로는 Microdata와 JSON-LD를 안내합니다. 기존 RDFa가 해당 검색 기능의 요건에 맞게 작동한다면 형식만 바꾸기 위해 교체할 필요는 없습니다.

추출된 대상과 속성 확인

Schema Markup Validator에 URL이나 코드를 넣고 추출된 항목을 펼쳐 봅니다. 위 예시라면 Product 아래 name 값이 “검은색 티셔츠”로 나와야 합니다. 속성이 다른 대상에 붙거나 빠졌다면 vocab과 접두어 선언, typeof를 넣은 요소의 위치를 점검합니다.

Google 리치 결과가 목적이라면 리치 결과 테스트에서도 검사합니다. Schema.org 문법에 맞게 읽힌다는 사실만으로 상품 가격이나 리뷰 같은 검색 기능의 필수 요건까지 충족하는 것은 아닙니다.

자주 묻는 질문

RDFa Lite와 RDFa는 다른가요?

RDFa Lite는 RDFa의 기능 중 vocab, typeof, property, resource, prefix 다섯 속성을 추린 하위 규격입니다. 간단한 마크업을 작성하도록 만든 규격이며, Lite로 표현하기 어려운 관계는 RDFa Core의 추가 기능을 쓸 수 있습니다.

RDFa를 쓰면 링크드 데이터가 자동 공개되나요?

공개 페이지에 넣은 RDFa는 이를 지원하는 프로그램이 읽을 수 있습니다. 다만 별도의 데이터 API가 생기는 것은 아니며, 검색결과의 특수 표시도 해당 검색엔진의 지원 범위와 요건에 따라 결정됩니다.

함께 알아두면 좋은 용어

  • Schema.org: 웹의 사람, 사물, 문서 등을 설명하는 구조화 데이터 어휘 체계
  • 마이크로데이터: HTML의 itemscope, itemtype, itemprop으로 항목과 속성을 나타내는 형식
  • JSON-LD: JSON 문법으로 링크드 데이터를 표현하는 형식

참고 문서