공룡호가 사는 세상 이야기

이제, XML은 선택이 아니라 필수가 되어가고 있다.
Ajax에서 XML데이터를 처리하는 방법은 제각기 다르다. 무식하게 엘리멘트/노드 들을 파싱하는 단순 노가다의 반복부터 DOM, XSLT 등을 이용하는 방법까지.
과연 어떤 방법으로 XML을 다루는 것이 좋을까? 정답은 '없다'다. 모든 것은 상황에 따라 변하니까.
하지만, 최적의 방법을 선택하기 위해서는 많은 방법들을 알고 있어야 하며, 그 방법들의 장/단점에 대해서도 알고 있어야 함은 물론이다.

dW에서 이달 초에 다룬 기사 중에서 이러한 접근을 보다 수월하게 가능케 해 주는 기사가 있어 소개코자 한다.
XML을 처리하는 Ajax 뱃지(위젯)을 간단하게 작성하는 과정을 다루는데, 다음 4가지 방법으로 XML에 접근한다.

링크: http://www.ibm.com/developerworks/kr/library/x-xmlajaxpt1/

1. DOM 트리 탐색
2. 서버쪽 XSLT
3. 클라이언트쪽 XSLT
4. JSON과 동적 스크립트 태그

Ajax 날씨 뱃지

Part 1에서는 DOM 트리 탐색 방법을 이용하고 있는데, 사실은 2,3,4번 방법이 업데이트 되면 비교해서 리뷰하려 했지만 아직 소식이 없다.(곧 업데이트 될 듯 한데, Part 2에서는 2,3번 방법을 다룬단다.) 접근 방법 1을 위한 데이터 라인을 보면 다음과 같다.
접근 방법 1을 위한 자료 파이프라인

대충 감이 오는지?
세부 내용을 읽고, 기사에서 말하는 장/단점 외에도 추가적인 부분이 있는지 고민해 보는 것도 좋을 듯.
Part 2를 기다려 보자.

링크: http://www.ibm.com/developerworks/kr/library/x-xmlajaxpt1/

오픈오피스가 무엇인지는 다들 알 것이다. (모르시는 분들은 살짝 검색을 -ㅁ-)
무엇이든지 오픈되어 있다는 것은 입맛대로 커스터마이징이 가능해진다는 점이 가장 큰 장점이다.
XML로 저장된 데이터로 워드 프로세싱 문서를 만들기 위해 필터를 만들 수 있다.
이번 Article은 튜토리얼(Tutorial)로 이루어져 있어 난이도는 중급에 속하나, 크게 어렵지 않을 것이다.

오픈 오피스에는 가져오기/내보내기(Import/Export)필터 기능이 존재하는데, 이것을 사용하여 일반 문서인 XML데이터를 열 수 있는 방법을 다룬다. 이를 이용하면 사용자들은 더욱 자연스럽게 문서를 편집하고,
이를 네이티브 포맷으로 다시 저장할 수 있게 된다. 또한 이 특징을 사용하여 문서를 XML데이터로 쉽게 변경이 가능해 진다.

XML 파일 포맷의 구문에 익숙하고 XSLT(XML Style Language Transformations)를 조금 다루어 본 사람이라면 오픈오피스를 XML 기반 데이터를 위한 맞춤 편집기로 사용할 때 그 발전가능성은 무궁무진하다.
이 튜토리얼에서는 XSLT필터 파일과 함께 작동하여 플러그인에서 XML형식으로 된 어떤 데이터라도 지원할 수 있도록 한다. 즉, 데이터를 기계가 처리하기 좋은 XML로 저장하면서 이를 사람에게 편한 방식으로 편집할 수 있다는 것이다. 전자는 쉬운 검색, 의미 맥락(semantic context)과 정보 찾아오기를 가능케 하고 후자는 더 높은 수준의 하이퍼텍스트 환경에서 효율적인 편집을 가능하게 한다.

먼저 XSLT에 대해서 조금 알아보자 (Article에서는 XSLT를 알고 있다는 전제를 하고 있으므로)

XSLT는 XML문서에 XSLT를 적용하여 또다른 XML, HTML, TXT등으로 변환하는 방법을 기술한 표준 방법이다. 확장 스타일시트 언어(XSL)의 확장으로서 XML문서가 다른 데이터 형식으로 재구성되는 방법이라고 간단히 보면 된다. 자세한 내용을 일일이 열거하기에는 어렵고 XSL에 대한 이해가 부족한 사람은 아래 링크에서 간단히 학습을 하면 이번 튜토리얼을 따라하는데 큰 어려움이 없을 것이다.

IBM XSLT 입문 : http://www.ibm.com/developerworks/kr/library/tutorial/x-xsltopenoff/section3.html
Lecture #1 : http://cafe.naver.com/javalove/217
Lecture #2 : http://cafe.naver.com/javalove/218
Lecture #3 : http://cafe.naver.com/javalove/219
Lecture #4 : http://cafe.naver.com/javalove/220

이제 XSL이 무엇인지 어느정도 이해할 수 있을 것이다. 그럼 이번 튜토리얼을 따라하기 위해,
다음과 같은 것이 필요하다.
오픈오피스 2.0(+), 이번 예제에는 2.2를 사용한다. 리눅스 용, 윈도우 용 모두 상관없다.
XML편집기는 XML과 XSLT파일을 편집할 수 있어야 한다. 기본적인 Text Editor라면 상관없다 유닉스에서는 vim.
순서는 다음과 같이 진행된다.

  • 개요
  • XSLT입문
  • 가져오기 필터
  • 내보내기 필터와 다른 포맷으로 내보내기
  • 요약
  • 다운로드
  • 참고자료
  • 필자소개

튜토리얼이 자세하게 나와 있어(XSL에 대한 부분이 조금 약하긴 하지만), 1시간만에 튜토리얼을 따라할 수 있었다. XML의 모든 장점을 가지면서도 리치 텍스트 편집을 쉽게 가능하게 해 준다.
XML을 사랑하고 오픈오피스를 사용하는 사람이라면, 한번쯤 꿈꿔본 일이 아닐까.
또한, XSLT를 사용하면 편집된 문서를 어떻게 XML이 아닌 포맷으로 내보낼 수 있는지도 설명되어 있다.
XML이라는 것을 가장 처음 접했을 때가 00년도였다. 7년이 지난 지금 XML의 중요성은 날이갈 수록 증대되고 있는데 웹의 발전과 더불어 XML은 의외로 많은 것들을 가능하게 해 줄 것이다.
이전에 리뷰했던 VXML또한 그것의 일부가 아닐까?

다음 링크를 클릭하고, 커피 한잔, 그리고 비스켓을 씹으면서 따라해 보자-
링크 : http://www.ibm.com/developerworks/kr/library/tutorial/x-xsltopenoff/index.html