 |
|
난이도 : 중급 Jonathan Levin, 강사 겸 컨설턴트, Freelance
2008 년 3 월 11 일 본 튜토리얼은 간단한 관계형 데이터베이스의 기능을 흉내내기 위해 잘 알려진 RSS(Really Simple Syndication) 포맷의 혁신적인 결합적 속성을 혁신적으로 사용하는 방법을 다룹니다. 개인 주소록이나 달력을 사용하듯이 연락처와 회의 정보를 저장하는 데 RSS 채널을 사용하는 방법을 보여주는 것입니다. 이는 items나 guids 같은 RSS 요소와 속성을 사용하여 관계형 데이터의 신경망 같은 것을 만들 것입니다.
시작하기 전에
본 튜토리얼은 유명한 RSS 포맷이 무엇인지, 이 포맷으로 무엇을 할 수 있는지 배우고자 하는 이들을 위해 작성했다. 특히 RSS의 잘 알려지지 않은 기능을 사용하여 더 나은 데이터 저장소를 제공하는 방법을 보여준다.
본 튜토리얼은 XML 기본 개념을 이해하는 독자를 위해 썼지만 RSS에 익숙할 필요는 없다. 프로그래밍 예제는 PHP를 사용했지만 다른 프로그래밍 언어에도 기본 개념은 적용된다.
본 튜토리얼에 대해
많은 사람이 RSS를 사이트 피드 같은 배급의 목적에 사용한다고 알고 있지만 몇 년 전부터 데이터 배포나 연락처 관리 같은 목적으로 여타 애플리케이션의 저장 포맷으로도 쓰여 왔다. 데이터를 RSS 형태로 저장함으로써 RSS 수집/구독 프로그램을 데이터에 접근하는 데 사용할 수 있다.
즉, 예전에 관계형 데이터에서 저장됐던 방식으로 RSS를 사용하여 정보를 저장할 수 있게 된 것이다.
본 튜토리얼은 일단 RSS 포맷과 몇 가지 실제 피드 샘플을 소개하는 것으로 시작한다. 그리고 나서 기존 포맷을 바꿔 이를 다른 목적(임의 데이터 아이템과 이들의 결합을 저장하는 것)을 위해 재정의한다. 테이블 세 개로 데이터베이스 포맷을 정의하고 이 테이블들을 질의하여 전통적인 SQL SELECT 모두를 흉내낼 수 있음을 보여주고 결합적 룩업을 제공한다. 마지막으로 질의 결과를 처리하거나 XML 폼으로 남겨두거나 이를 XSLT(XML StyleSheet Transformation Language)를 사용하여 사용자에게 보여줄 수 있는 내용으로 변환하는 방법을 다룬다.
필요한 사전지식
본 튜토리얼을 따라하려면 다음 도구들이 필요하다.
-
PHP: 버전은 상관없이 PHP가 있으면 된다. 본 튜토리얼에서는 XML을 처리하는 데 전통적 방식의 DOM(Document Object Model) 대신 PHP 백엔드의 텍스트 처리를 사용한다.
- XML과 XSLT 파일을 편집하기 위해 XML 편집기가 필요하다. 필자는 UNIX®에서는 vim을, Windows®에서는 메모장을 사용한다.
|