최신 웹 개발 튜토리얼
 

XML RDF


RDF 문서 예

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:si="http://www.w3ii.com/rdf/">

<rdf:Description rdf:about="http://www.w3ii.com">
  <si:title>w3ii</si:title>
  <si:author>Jan Egil Refsnes</si:author>
</rdf:Description>

</rdf:RDF>

RDF는 무엇인가?

  • RDF는 의미 R esource의 D escription F ramework
  • RDF는 웹 자원을 기술하기위한 프레임 워크입니다
  • RDF는 읽기 및 컴퓨터에 의해 이해 될 설계
  • RDF는 사람들에게 표시되는 설계되지 않았습니다
  • RDF는 XML로 작성
  • RDF는 W3C의 시맨틱 웹 활동의 일부입니다
  • RDF는 2004 2월 (10)에서 W3C 추천

RDF - 사용의 예

  • 이러한 가격 및 가용성 쇼핑 항목에 대한 속성을 설명하는
  • 웹 이벤트에 대한 시간 일정을 설명
  • 웹 페이지에 대한 정보를 기술 (content, author, created and modified date)
  • 웹 사진에 대한 내용과 평가를 기술
  • 검색 엔진에 대한 기술 내용
  • 전자 도서관을 설명

RDF는 컴퓨터에 의해 판독 될 수 있도록 설계되어있다

RDF은 읽기 및 컴퓨터 애플리케이션에 의해 이해 될 수 있도록 정보를 설명하기위한 일반적인 방법을 제공하도록 설계되었다.

RDF 설명은 웹 상에 표시되도록 설계되지 않는다.


RDF는 XML로 작성

RDF 문서는 XML로 작성됩니다. RDF에서 사용하는 XML 언어는 RDF는 / XML 불린다.

XML을 사용함으로써, RDF 정보를 용이하게 운영 체제 및 응용 프로그램 언어의 종류를 사용하여 다른 유형의 컴퓨터 사이에서 교환 될 수있다.


RDF와 "The Semantic Web"

RDF 언어는 W3C의 시맨틱 웹 활동의 일부이다. W3C의 "Semantic Web Vision" 어디에 미래입니다 :

  • 웹 정보는 정확한 의미를 갖는다
  • 웹 정보를 이해하고 컴퓨터에 의해 처리 될 수있다
  • 컴퓨터는 웹에서 정보를 통합 할 수 있습니다

RDF는 웹 사용 식별자 (URIs) 자원을 식별.

RDF는 속성과 속성 값으로 리소스에 대해 설명합니다.


RDF 자원, 속성 및 속성 값

RDF는 웹 식별자를 사용하는 것을 식별 (URIs) 및 속성과 속성 값으로 리소스에 대해 설명합니다.

자원, 속성 및 속성 값의 설명 :

  • Resource 과 같은 URI를 가질 수 아무것도이다 "http://www.w3ii.com/rdf"
  • Property 과 같은 이름을 가진 자원이다 "author" 또는 "homepage"
  • Property value 과 같은 속성 값 인 "Jan Egil Refsnes" 또는 "http://www.w3ii.com" (note that a property value can be another resource)

다음 문서 RDF 자원을 설명 할 수 "http://www.w3ii.com/rdf" :

<?xml version="1.0"?>

<RDF>
  <Description about="http://www.w3ii.com/rdf">
    <author>Jan Egil Refsnes</author>
    <homepage>http://www.w3ii.com</homepage>
  </Description>
</RDF>

위의 예는 단순화된다. 네임 스페이스는 생략한다.


RDF 문

자원하는 속성 및 속성 값의 조합은 형성 Statement (known as the subject, predicate and object of a Statement) .

의 더 나은 이해를 얻기 위해 몇 가지 예를 들어 문을 살펴 보자 :

문 : "The author of http://www.w3ii.com/rdf is Jan Egil Refsnes" .

  • 위의 문장의 주제는 다음과 같습니다 http://www.w3ii.com/rdf
  • 술어는 다음과 같습니다 저자
  • 목적은 다음과 같습니다 월 Egil Refsnes

문 : "The homepage of http://www.w3ii.com/rdf is http://www.w3ii.com" .

  • 위의 문장의 주제는 다음과 같습니다 http://www.w3ii.com/rdf
  • 술어는 다음과 같습니다 홈페이지
  • 목적은 다음과 같습니다 http://www.w3ii.com

RDF 예

다음은 CD-목록에서 두 기록은 다음과 같습니다 :

표제 예술가 국가 회사 가격
제국 소극 밥 딜런 미국 컬럼비아 10.90 1,985
당신의 마음을 숨기기 보니 타일러 영국 CBS 기록 9.90 1,988

아래의 RDF 문서에서 몇 줄은 다음과 같습니다

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Empire Burlesque">
  <cd:artist>Bob Dylan</cd:artist>
  <cd:country>USA</cd:country>
  <cd:company>Columbia</cd:company>
  <cd:price>10.90</cd:price>
  <cd:year>1985</cd:year>
</rdf:Description>

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Hide your heart">
  <cd:artist>Bonnie Tyler</cd:artist>
  <cd:country>UK</cd:country>
  <cd:company>CBS Records</cd:company>
  <cd:price>9.90</cd:price>
  <cd:year>1988</cd:year>
</rdf:Description>
.
.
.
</rdf:RDF>

RDF 문서의 첫 번째 줄은 XML 선언이다. XML 선언은 RDF 문서의 루트 요소 뒤에 : <rdf:RDF> .

xmlns:rdf 네임 스페이스는 RDF의 접두사 요소가 네임 스페이스에서되도록 지정 "http://www.w3.org/1999/02/22-rdf-syntax-ns#" .

xmlns:cd 네임 스페이스는 CD 접두사 요소가 네임 스페이스에서되도록 지정 "http://www.recshop.fake/cd#" .

<rdf:Description> 요소에 의해 식별되는 자원에 대한 설명이 포함 rdf:about 속성을.

요소 : <cd:artist>, <cd:country>, <cd:company>, 등 자원의 재산입니다.


RDF 온라인 검사기

W3C의 RDF 확인 서비스는 RDF를 학습 할 때 유용합니다. 여기 RDF 파일을 실험 할 수 있습니다.

온라인 RDF 검사기, 당신의 RDF 문서를 구문 분석 구문을 확인하고 표와 RDF 문서의 그래픽보기를 생성합니다.

복사 및 W3C의 RDF 검사기로 아래의 예를 붙여 넣습니다

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:si="http://www.w3ii.com/rdf/">
<rdf:Description rdf:about="http://www.w3ii.com">
  <si:title>w3ii.com</si:title>
  <si:author>Jan Egil Refsnes</si:author>
</rdf:Description>
</rdf:RDF>

위의 예를 구문 분석 할 때, 그 결과는 다음과 같을 것이다 .


RDF 요소

RDF의 주요 요소는 루트 요소 <RDF>하고있는 <Description> 자원을 식별 소자.


<rdf:RDF> 요소

<RDF : RDF는>은 RDF 문서의 루트 요소입니다. 그것은 RDF 문서 일 수있는 XML 문서를 정의한다. 또한 RDF 네임 스페이스에 대한 참조를 포함합니다 :

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
  ...Description goes here...
</rdf:RDF>

<rdf:Description> 요소

<rdf:Description> 요소는의 자원 식별 about 속성을.

<rdf:Description> 요소는 자원을 기술 요소를 포함한다 :

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Empire Burlesque">
  <cd:artist>Bob Dylan</cd:artist>
  <cd:country>USA</cd:country>
  <cd:company>Columbia</cd:company>
  <cd:price>10.90</cd:price>
  <cd:year>1985</cd:year>
</rdf:Description>

</rdf:RDF>

요소는, 아티스트, 국가는, 회사는 가격 및 연도는 HTTP에 정의되어 //www.recshop.fake/cd# 네임 스페이스를. 이 네임 스페이스는 외부 RDF이다 (and not a part of RDF) . RDF는 프레임 워크를 정의합니다. 요소, 아티스트, 국가, 회사, 가격, 연도, 다른 사람 (회사, 조직, 사람, 등)에 의해 정의되어야합니다.


속성과 같은 속성

속성 요소는 속성으로 정의 할 수 있습니다 (instead of elements) :

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Empire Burlesque"
cd:artist="Bob Dylan" cd:country="USA"
cd:company="Columbia" cd:price="10.90"
cd:year="1985" />

</rdf:RDF>

자료로 등록

속성 요소는 리소스로서 정의 될 수있다 :

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Empire Burlesque">
  <cd:artist rdf:resource="http://www.recshop.fake/cd/dylan" />
  ...
  ...
</rdf:Description>

</rdf:RDF>

위의 예에서, 상기 속성은 아티스트 값이지만 아티스트에 대한 정보를 포함하는 리소스에 대한 참조를하지 않는다.


RDF 컨테이너

RDF 컨테이너 사물의 그룹을 설명하는 데 사용됩니다.

다음 RDF 요소 그룹을 설명하는 데 사용되는 : <가방>, <서열> 및 <Alt> .


<rdf:Bag> 요소

<rdf:Bag> 요소는 특정 순서로 될 필요가없는 값의리스트를 설명하는 데 사용된다.

<rdf:Bag> 요소는 중복 값을 포함 할 수 있습니다.

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Beatles">
  <cd:artist>
    <rdf:Bag>
      <rdf:li>John</rdf:li>
      <rdf:li>Paul</rdf:li>
      <rdf:li>George</rdf:li>
      <rdf:li>Ringo</rdf:li>
    </rdf:Bag>
  </cd:artist>
</rdf:Description>

</rdf:RDF>

<rdf:Seq> 요소

<rdf:Seq> 엘리먼트 값의 정렬 된 목록을 설명하기 위해 사용된다 (For example, in alphabetical order) .

<rdf:Seq> 요소는 중복 값을 포함 할 수 있습니다.

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Beatles">
  <cd:artist>
    <rdf:Seq>
      <rdf:li>George</rdf:li>
      <rdf:li>John</rdf:li>
      <rdf:li>Paul</rdf:li>
      <rdf:li>Ringo</rdf:li>
    </rdf:Seq>
  </cd:artist>
</rdf:Description>

</rdf:RDF>

<rdf:Alt> 요소

<rdf:Alt> 엘리먼트가 다른 값의리스트를 설명하는 데 사용된다 (the user can select only one of the values) .

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Beatles">
  <cd:format>
    <rdf:Alt>
      <rdf:li>CD</rdf:li>
      <rdf:li>Record</rdf:li>
      <rdf:li>Tape</rdf:li>
    </rdf:Alt>
  </cd:format>
</rdf:Description>

</rdf:RDF>

RDF 약관

우리가 이야기 한 위의 예에서 "list of values" 컨테이너 요소를 설명 할 때. RDF 이러한에서 "list of values" 회원이라고합니다.

그래서 우리는 다음이있다 :

  • 컨테이너는 일을 포함하는 자원이다
  • 포함 된 것들 멤버라고합니다 (not list of values)

RDF 컬렉션

RDF 컬렉션는 지정된 멤버를 포함 할 수있는 그룹을 설명합니다.


rdf:parseType="Collection" 속성

그것은 다른 회원이 허용되지 않는다는 말을하지 않습니다 - 이전 장에서 알 수있는 바와 같이, 컨테이너가 포함 된 리소스 구성원이 있다고 말한다.

RDF 컬렉션은 지정된 멤버를 포함 할 수있는 그룹을 설명하는 데 사용됩니다.

컬렉션은 속성 RDF에 의해 설명 : parseType = "컬렉션".

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://recshop.fake/cd#">

<rdf:Description
rdf:about="http://recshop.fake/cd/Beatles">
  <cd:artist rdf:parseType="Collection">
    <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/George"/>
    <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/John"/>
    <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/Paul"/>
    <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/Ringo"/>
  </cd:artist>
</rdf:Description>

</rdf:RDF>

RDF 스키마 및 응용 프로그램의 클래스

RDF 스키마 (RDFS) RDF의 확장입니다.

RDF는 클래스, 속성 및 값으로 자원을 설명합니다.

또한, RDF는 응용 프로그램 특정 클래스와 속성을 정의 할 수있는 방법이 필요합니다. 응용 프로그램 특정 클래스와 속성을 RDF로 확장을 사용하여 정의해야합니다.

하나는 이러한 확장은 RDF 스키마입니다.


RDF 스키마 (RDFS)

RDF 스키마는 실제 응용 프로그램 특정 클래스와 속성을 제공하지 않습니다.

대신 RDF 스키마는 응용 프로그램 특정 클래스와 속성을 설명 할 수있는 프레임 워크를 제공합니다.

RDF 스키마의 클래스는 객체 지향 프로그래밍 언어의 클래스처럼 많이 있습니다. 이 자원 클래스의 인스턴스와 클래스의 하위 클래스로 정의 할 수 있습니다.


RDFS 예

다음은 RDFS 시설의 일부 보여줍니다

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xml:base="http://www.animals.fake/animals#">

<rdf:Description rdf:ID="animal">
  <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
</rdf:Description>

<rdf:Description rdf:ID="horse">
  <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
  <rdfs:subClassOf rdf:resource="#animal"/>
</rdf:Description>

</rdf:RDF>

위의 예에서, 자원 "horse" 클래스의 서브 클래스 인 "animal" .


예 단축

대신 RDF의 클래스 : RDFS 클래스는 RDF 자원이기 때문에 우리는 RDFS를 사용하여 위의 예제를 생략 할 수 있습니다 설명하고, RDF의 드롭 : 유형 정보를 :

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xml:base="http://www.animals.fake/animals#">

<rdfs:Class rdf:ID="animal" />

<rdfs:Class rdf:ID="horse">
  <rdfs:subClassOf rdf:resource="#animal"/>
</rdfs:Class>

</rdf:RDF>

즉입니다!


더블린 코어

더블린 코어 메타 데이터 이니셔티브 (DCMI) 문서를 설명하기 위해 몇 가지 미리 정의 된 속성을 만들었습니다.

RDF는 메타 데이터입니다 (data about data) . RDF는 정보 자원을 기술하기 위해 사용된다.

더블린 코어는 문서를 설명하는 사전 정의 된 속성의 집합입니다.

첫 번째 더블린 코어 속성은 정의 된 Metadata Workshop in Dublin, Ohio 1995 년 현재에 의해 유지되는 더블린 코어 메타 데이터 이니셔티브 .

재산 정의
기부자 자원의 내용에 기여한 개체
적용 범위 자원의 내용의 정도 또는 범위를
창조자 자원의 내용에 주된 책임을 가진 개체
체재 자원의 물리적 또는 디지털 표현
날짜 자원의주기에서 이벤트의 날짜
기술 자원의 내용에 대한 설명
식별자 주어진 상황에서 자원에 대한 분명한 참조
언어 자원의 지적 내용의 언어
발행자 자원을 사용할 수 있도록 할 책임이 엔티티
관계 관련 자원에 대한 참조
진상 권한에 대한 정보와 자원을 통해 개최
출처 본 자원이 파생 된 자원에 대한 참조
제목 자원의 콘텐츠의 항목
표제 자원에 부여하는 이름입니다
유형 자원 내용의 성격 또는 장르

테이블에서 빠른보기는 위의 RDF가 더블린 코어 정보를 표현하기위한 이상적인 있음을 나타냅니다.


RDF 예

다음의 예는 RDF 문서의 더블린 코어 속성 중 일부의 사용을 보여줍니다

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc= "http://purl.org/dc/elements/1.1/">

<rdf:Description rdf:about="http://www.w3ii.com">
  <dc:description>w3ii - Free tutorials</dc:description>
  <dc:publisher>Refsnes Data as</dc:publisher>
  <dc:date>2008-09-01</dc:date>
  <dc:type>Web Development</dc:type>
  <dc:format>text/html</dc:format>
  <dc:language>en</dc:language>
</rdf:Description>

</rdf:RDF>

RDF 참조

RDF 네임 스페이스 (xmlns:rdf) 다음과 같습니다 http://www.w3.org/1999/02/22-rdf-syntax-ns#

RDFS 네임 스페이스 (xmlns:rdfs ) 다음과 같습니다 http://www.w3.org/2000/01/rdf-schema#

RDF 파일의 권장되는 파일 확장자는 .rdf . 그러나, 상기 확장 .xml 종종 오래 XML 파서와의 호환성을 제공하기 위해 사용된다.

MIME 유형은해야한다 "application/rdf+xml" .


RDFS / RDF 클래스

요소 의 클래스 의 서브 클래스
rdfs:Class All classes  
rdfs:Datatype Data types Class
rdfs:Resource All resources Class
rdfs:Container Containers Resource
rdfs:Literal Literal values (text and numbers) Resource
rdf:List Lists Resource
rdf:Property Properties Resource
rdf:Statement Statements Resource
rdf:Alt Containers of alternatives Container
rdf:Bag Unordered containers Container
rdf:Seq Ordered containers Container
rdfs:ContainerMembershipProperty Container membership properties Property
rdf:XMLLiteral XML literal values Literal

RDFS / RDF 등록

요소 도메인 범위 기술
rdfs:domainPropertyClass 리소스의 도메인
rdfs:rangePropertyClass 자원의 범위
rdfs:subPropertyOfPropertyProperty 이 호텔은 속성의 하위 속성입니다
rdfs:subClassOfClassClass 자원은 클래스의 서브 클래스입니다
rdfs:commentResourceLiteral 자원의 사람이 읽을 수있는 설명
rdfs:labelResourceLiteral 인간의 읽을 수있는 라벨 (name) 자원의
rdfs:isDefinedByResourceResource 자원의 정의
rdfs:seeAlsoResourceResource 자원에 대한 추가 정보
rdfs:memberResourceResource 자원의 부재
rdf:firstListResource
rdf:restListList
rdf:subjectStatementResource RDF의 정책에서 자원의 주제
rdf:predicateStatementResource RDF의 정책에서 자원의 조건
rdf:objectStatement Resource RDF의 정책에서 자원의 목적
rdf:valueResourceResource 값에 사용되는 속성
rdf:typeResourceClass 자원이 클래스의 인스턴스

RDF 속성

속성 기술
rdf:about 자원이 설명되고 정의합니다
rdf:Description 자원의 설명 컨테이너
rdf:resource 자원은 속성을 식별하는 정의합니다
rdf:datatype 요소의 데이터 유형을 정의
rdf:ID 요소의 ID를 정의
rdf:li 목록을 정의
rdf:_ n 노드를 정의
rdf:nodeID 요소 노드의 ID를 정의
rdf:parseType 요소가 구문 분석하는 방법을 정의합니다
rdf:RDF RDF 문서의 루트
xml:base 는 XML베이스를 정의
xml:lang 요소 내용의 언어를 규정