rdf:ID vs rdf:about

software 2008. 9. 5. 14:35
rdf:ID 와 rdf:about  뭐가 다른걸까.

The rdf:ID attribute on a node element (not property element, that has another meaning) can be used instead of rdf:about and gives a relative RDF URI reference equivalent to # concatenated with the rdf:ID attribute value. So for example if rdf:ID="name", that would be equivalent to rdf:about="#name". rdf:ID provides an additional check since the same name can only appear once in the scope of an xml:base value (or document, if none is given), so is useful for defining a set of distinct, related terms relative to the same RDF URI reference.
( http://www.w3.org/TR/rdf-syntax-grammar/#section-Syntax-ID-xml-base )

똑같은건데 rdf:ID 는 문서내에서 유일해야 한다는 얘기같군. 그리고,
not property element, that has another meaning <- 이건 Reification 에서 쓰일때 이야기인듯
http://www.w3.org/TR/rdf-syntax-grammar/#section-Syntax-reifying

As for choosing between rdf:ID and rdf:about, you will most likely want to use the former if you are describing a resource that doesn't really have a meaningful location outside the RDF file that describes it. Perhaps it is a local or convenience record, or even a proxy for an abstraction or real-world object (although I recommend you take great care describing such things in RDF as it leads to all sorts of metaphysical confusion; I have a practice of only using RDF to describe records that are meaningful to a computer).rdf:about is usually the way to go when you are referring to a resource with a globally well-known identifier or location.



참고)
Use rdf:about and rdf:ID effectively in RDF/XML
https://mailman.stanford.edu/pipermail/protege-owl/2007-March/001676.html


Posted by ukmie
,
막연히, RDF 가 더 간단하고, 머신 친화적(?) 이라고 알고 있다가,
문득 생각나 찾아봤다.
비슷한 질문을 수없이 들었다는 Tim 이 꽤 간단 명료하게 해설을 해놓았다.
관심이 있다면 꼭 읽어보기 바란다.
XML 는 구조가 다변적이고 의미가 애매해서 문제가 된단다. 원문에 예제들이 있다.
물론, 이것이 장점이 될수도 있겠지만  의미를 해석하는데는  한계가 있다.

Things you can do with RDF which you can't do with XML include

  • You can parse the semantic tree, which end up giving you a set of (possibly mutually referential) triples and then you can use the ones you want ignoring the ones you don't understand.

Problems with basing you understanding on the structure include

  • Without having gone to the trouble of getting the schema, or having an application hand-programmed to recognise a particular document type, you can't pick up any semantic information from a document;
  • When an XML schema changes, it could typically introduce new intermediate elements (like "details" in the tree above or "div" is HTML). These may or may or may not invalidate any query which has been based on the structure of the document.
  • If you haven't gone to the trouble of making a semantic model, then you may not have a well defined one. ( Look at a label on the jam jar which says: "Expires 1999". What expires: the label, or the jam? Here the ambiguity is between a statement about a statement about a document, and a statement about a document. )

Why RDF model is different from the XML model - Tim Berners-Lee


Posted by ukmie
,

RDF의 잘쓰이는 몇가지 포맷에 대한 비교. 용도에 맞게 골라쓰자.

출처: http://www.w3.org/2000/10/swap/doc/formats


English (Very Informal)

There is person, Pat, known as "Pat Smith" and "Patrick Smith".
Pat has a pet dog named "Rover".

English Hypertext (Informal)

Here the ambiguity of terms is addressed by making the words be hypertext links.
The links may or may not work, depending on the servers involved.

Pat is a human with the names "Pat Smith" and "Patrick Smith".
Pat has a pet, a dog, with the name "Rover".

N3

@prefix : <http://www.w3.org/2000/10/swap/test/demo1/about-pat#> .
@prefix bio: <http://www.w3.org/2000/10/swap/test/demo1/biology#> .
@prefix per: <http://www.w3.org/2000/10/swap/test/demo1/friends-vocab#> .
    
:pat     a bio:Human;
     per:name "Pat Smith",
              "Patrick Smith";
     per:pet  [
         a bio:Dog;
         per:name "Rover" ] .

Directed Labeled Graph

RDF/XML

<rdf:RDF xmlns="http://www.w3.org/2000/10/swap/test/demo1/about-pat#"
    xmlns:bio="http://www.w3.org/2000/10/swap/test/demo1/biology#"
    xmlns:per="http://www.w3.org/2000/10/swap/test/demo1/friends-vocab#"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

    <bio:Human rdf:about="#pat">
        <per:name>Pat Smith</per:name>
        <per:name>Patrick Smith</per:name>
        <per:pet>
            <bio:Dog>
                <per:name>Rover</per:name>
            </bio:Dog>
        </per:pet>
    </bio:Human>
</rdf:RDF>

N-Triples

With @prefix:

@prefix : <http://www.w3.org/2000/10/swap/test/demo1/about-pat#> .
@prefix bio: <http://www.w3.org/2000/10/swap/test/demo1/biology#> .
@prefix per: <http://www.w3.org/2000/10/swap/test/demo1/friends-vocab#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.

:pat rdf:type bio:Human.
:pat per:name "Pat Smith".
:pat per:name "Patrick Smith".
:pat per:pat _:genid1.
_:genid1 rdf:type bio:Dog.
_:genid1 per:name "Rover".

In standard form:

<http://www.w3.org/2000/10/swap/test/demo1/about-pat#pat> 
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://www.w3.org/2000/10/swap/test/demo1/biology#Human> . <http://www.w3.org/2000/10/swap/test/demo1/about-pat#pat>
<http://www.w3.org/2000/10/swap/test/demo1/friends-vocab#name> "Pat Smith" . <http://www.w3.org/2000/10/swap/test/demo1/about-pat#pat>
<http://www.w3.org/2000/10/swap/test/demo1/friends-vocab#name> "Patrick Smith" . <http://www.w3.org/2000/10/swap/test/demo1/about-pat#pat>
<http://www.w3.org/2000/10/swap/test/demo1/friends-vocab#pet> _:genid1 . _:genid1
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://www.w3.org/2000/10/swap/test/demo1/biology#Dog> . _:genid1 <http://www.w3.org/2000/10/swap/test/demo1/friends-vocab#name> "Rover" .
Posted by ukmie
,
출처 : http://twlog.net/wp/index.php?p=96

현재 진행하고 있는 시맨틱 웹 FAQ top 10을 위해 복습을 위해 모아놓은 시맨틱웹 관련 자료 모음집.

W3C, RDF/OWL specifications, semanticweb.org, daml.org,
Dave Beckett’s Resource Description Framework (RDF) Resource Guide 등은 이미 너무 잘 알려져 있으므로 모두 빼놓은 상태.

다음 카페를 2년여 정도 운영하면서 회원들이 가장 많이 물어보는 질문을 중심으로 만들고 있기 때문에 자료는 시맨틱웹의 개요에 관한 한글자료가 가장 많다.

[한글 자료]

* 개요 *
보이지 않는 공간의 혁명, 시맨틱 웹
시맨틱웹의 가능성과 한계
웹의 진화와 미래, 시맨틱웹
Introduction to Semantic Web (시맨틱 웹의 개요)
웹의 진화, 시맨틱웹(Semantic Web)
시맨틱 웹의 개요와 연구동향
시맨틱웹 - 차세대 지능형 웹 기술
시맨틱 웹
차세대웹
Ontology: Semantic Web
Web Ontology Language와 그 활용에 관한 고찰 (위키)
네이버 지식in 질문 답변
<월요논단>웹 서비스와 시멘틱 웹

* 온톨로지 *
[특강]온톨로지에 대한 새로운 접근
온톨로지 관련 네이버 블로그
한국어정보처리와 온톨로지
웹온톨리지의 표준화

* 응용 *
시맨틱웹과 검색 시스템 연결
시맨틱 웹 기술을 적용한 지식관리시스템 아키텍처에 관한 연구
3차원 그래픽 웹 데이터베이스와 시맨틱 웹
효과적인 시맨틱 웹의 구현을 위한 마크업 언어
Semantic Web과 e-Learning

* 그외*
OWL 웹 온톨로지 언어
RDF Primer (한글)
시맨틱웹 관련 논문 모음
W3C 코리아 메일링 리스트
HOLLOBLOG (별주부뎐)
ZebehnLog
태우’s log
다음 시맨틱웹 카페
네이버 시맨틱웹 카페1
네이버 시맨틱웹 카페2
온톨로지

[영어 자료]

* 개요 *
Intro to SemWeb (또는 quicktime 버전)
The Semantic Web: A Primer
The Semantic Web (Scientific American 기사)
The Semantic Web: 1-2-3
The Semantic Web: An Introduction
The Semantic Web In Breadth
August 2009: How Google beat Amazon and Ebay to the Semantic Web
Semantic Web (wikipedia 정의)
Questions on Semantic Web
RDF Introduction
Making a Semantic Web
Tutorial on OWL

* 응용 *
시맨틱웹 응용 Case (WWW 2004)
ISWC 2004: Demo Papers
Ontology-Driven Software Development in the Context of the Semantic Web
온톨로지 모음1 (schemaweb)
온톨로지 모음2 (rdfdata.org)

* Extensive *
[Always On 기사] Tomorrow’s Semantic Web: Understanding What We Mean
[Always On 기사] It’s a Matter of Semantics
[Always On 기사] Deep Thought
[Always On 기사] Mining the Semantic Web
[Always On 기사] On the Radar: The Relationship Web
[Always On 기사] The Ontological Challenge
[Always On 기사] Semantic Development in the Enterprise
[Always On 기사] Economies of (Semantic) Scale
[Always On 기사] Because Humans Are Chaotic, Our Systems Are Chaotic
Missing Web
SIG SEMIS 기사 모음
rdf vs. xml
Scalability Report on Triple Store Applications
The Semantic Web in Ten Passages


* 그외 *
Semantic Web Tutorial 자료 모음
The Semantic Web, Syllogism, and Worldview
WWW Past & Future - Berners-Lee - Royal Society
Building the Semantic Web
시맨틱웹 수업 1
시맨틱웹 수업 2
W3C 소개
Semantic Web, Phase 2: Developments and Deployment
W3C 시맨틱웹 메일링 리스트
rdfweb-dev 메일링 리스트
시맨틱웹 관련 블로그

+++

ㅁ The Semantic Web

(by Tim Berners-Lee, James Hendler and Ora Lassila. Scientific American)

ㅁSearch RDF data with SPARQL

   SPARQL and the Jena Toolkit open up the semantic Web

   Philip McCarthy (philmccarthy@gmail.com), Software development consultant, Independent    -  10 May 2005

ㅁAn Idiot's Guide to the Resource Description Framework


ㅁ KEM 고도화를 위한 온톨로지 기반 시맨틱 웹 연구

- 시맨틱웹 기술전반에 대한 개략적인 설명과 국내외 사례, 그리고 실제 적용을 위해
설계한 예를 볼수 있는 꽤 유용한 자료

* KEM(korea educational metadata)

http://www.keris.or.kr/upload/board01/250285503.pdf



Posted by ukmie
,

RDF 문서

software 2007. 8. 1. 17:34
W3C 의 RDF 문서(SPEC , set of six)
Primer
Concepts
Syntax
Semantics
Vocabulary
Test Cases

An Introduction to RDF and the Jena RDF API (RDF 입문서로 추천!!)
http://jena.sourceforge.net/tutorial/RDF_API/index.html


Posted by ukmie
,
From  IBM developerworks

최고의 매시업 -- 웹 서비스와 시맨틱 웹, Part 1: 웹 서비스 사용과 결합 (한글)

매시업이란이란 여러 개의 서비스로에서 가져온 데이터를 결합하여 새로운 것을 만들어내는 애플리케이션을 말합니다. 본 연재를 통하여, 각기 다른 매시업들에서 추출한 데이터를 저장하는 것에 그치지 않고, 시맨틱 기술을 이용하여 서비스를 교환하거나 데이터를 선택하는 방식으로 자신만의 매시업을 만들어낼 수 있는 '궁극' 의 매시업 개발에 대해 소개하고자 합니다. 여기서는 자바 프로그래밍, 서블릿과 JSP, 오픈 소스 제나(Jena) 프로젝트의 소프트웨어와 DB2의 새로운 네이티브 XML 기술을 사용합니다. Part 1에서 Nicholas Chase는 매시업 개념을 소개하고 간단한 버전의 매시업을 어떻게 개발하고 활용하는지 보여줄 것입니다.
 


최고의 매시업 -- 웹 서비스와 시맨틱 웹, Part 2: 매시업 데이터 캐시 관리 (한글)
검 색할 때, 온라인 쇼핑을 할 때, 또는 지도 서비스를 사용할 때 사용하는 많은 대용량 애플리케이션들은 완전히 새로운 애플리케이션에서 여러분이 쓰기 위한 데이터를 제공합니다. 엔터프라이징 애플리케이션 개발자들은 몇 가지 애플리케이션의 데이터 세트를 결합해 특정 목적을 이루기 위한 매시업 애플리케이션을 개발해왔습니다. 이 연재의 Part 1에서는 다양한 서비스로부터 데이터를 가져와 결합시키는 애플리케이션에 대해 설명하였습니다. 이제 우리는 DB2 9 데이터베이스에 어떻게 호출 결과를 저장하는지, 그리고 외부 서비스를 가볍게 하여 성능을 효과적으로 향상시킬 수 있는 방법은 무엇인지에 대해 논의할 것입니다.

최고의 매시업 -- 웹 서비스와 시맨틱 웹, Part 3: RDF와 RDFs 이해하기 (한글)
최고의 매시업이 갖는 힘은 시맨틱 기술, 특히 온톨로지 언어(OWL)를 이용하여 매시업에 지능을 갖추게 하는 것입니다. OWL에 대해 자세히 알아보기에 앞서 필요한 것은 그 기본 언어인 RDF(Resource Description Framework)와 RDFs(RDF Schema Language)에 대해 이해하는 것입니다. 본 튜토리얼은 RDF와 RDFs를 다룸으로써 서비스에 온톨로지를 만들고, RDF를 사용하여 다른 프로젝트를 수행할 수 있도록 도울 것입니다.

최고의 매시업 -- 웹 서비스와 시맨틱 웹, Part 4: 온톨로지 만들기 (한글)
본 연재는 사용자에게 보여주는 데이터를 제어할 수 있는 매시업 애플리케이션을 만드는 방법에 대해 자세히 다루고 있습니다. 그렇게 하려면 지능이 필요합니다. 이제 RDF(Resource Description Framework)로 정보를 나타내는 방법을 알았으니 XML 기반 온톨로지 언어(이하, OWL)를 사용해 온톨로지를 만들어 보겠습니다. OWL을 사용해 서비스나 서비스 부분 중 하나를 자동으로 선택할 수 있습니다.

최고의 매시업 -- 웹 서비스와 시맨틱 웹, Part 5: 웹 서비스 변경하기 (한글)
본 연재는 사용자가 볼 수 있는 데이터를 제어할 수 있는 매시업 애플리케이션을 만드는 방법에 대해 자세히 다룹니다. 이제 서비스로 나타나는 개념을 정의하는 온톨로지를 만들 수 있게 되었으니 사용자들이 원하는 서비스를 선택할 수 있게 할 수 있습니다.


최고의 매시업 -- 웹 서비스와 시맨틱 웹, Part 6: 사용자에게 제어 능력 주기 (한글)
본 튜토리얼은 매시업 애플리케이션을 만드는 방법을 다루는 연재의 마지막 튜토리얼입니다. 이제 제대로 작동하는 애플리케이션과 프레임워크를 가짐으로써 시스템이 시맨틱 추론을 통해 어떻게 서비스를 작동시키는지 이해할 수 있습니다. 본 튜토리얼에서는 사용자가 서비스 유형과 서비스에서 뽑아낸 데이터, 그 데이터의 프레젠테이션을 선택할 수 있도록 사용자에게 제어 능력을 주는 방법을 다룰 것입니다.










Posted by ukmie
,

Jena

software 2007. 8. 1. 16:31

Jena는 HP 시맨틱 웹 연구소(HP Labs Semantic Web Research)의 Brian Bride에 의해 개발된 시맨틱 웹 프레임워크이다. RDF, RDFS 및 OWL을 위한 프로그래밍 환경과 기본적인 RDF파서를 제공하며 내부적으로 룰(rule)기반의 추론엔진을 포함하고 있다.

* Introduction to Jena
Use RDF models in your Java applications with the Jena Semantic Web Framework
http://www-128.ibm.com/developerworks/java/library/j-jena/

* http://jena.sourceforge.net/

* HP Jena Tutorial 및 Persistent한 Model 만들기


* JenaRDB로 Sparql수행하는 예제


* Jena 사용하기

* A Programmer's Introduction to RDQL


Posted by ukmie
,

http://www.idealliance.org/proceedings/xtech05/papers/03-06-01/

This paper describes GRDDL, standing for "Gleaning Resource Descriptions from Dialects of Languages", a technology under development in W3C designed to fill part of this gap, allowing document authors to associate automatically formalized RDF statements with XHTML and XML-based formats.


--------------------------------------------------------------------------------------

Abstract

While SGML and XML languages have had for a long time the possibility to describe syntactic constraints of their vocabularies using DTD and other schema languages, no specific mechanism exists to allow for the mapping between these syntactic constraints and their semantic implications.

GRDDL, a technology in development in W3C, allows to incorporate semantics from XML vocabularies and XHTML conventions into the Semantic Web by re-using existing extensibility hooks of the Web. This paper explains the basic principles of its mechanisms, and explore how it can be applied for various communities.


--------------------------------------------------------------------------------------

...
Posted by ukmie
,