XML 의 중요성은 Developer 들이라면 잘 알 것이다. Data의 원자화(Atomic)은 OOP의 개념도입이라 할 수 있겠다. 다시 말해 XML 을 사용하는 것은 재생산이 가능하다는 의미와 일맥상통한다.
다음의 XML document 를 예로 보자
XML 문서 (Language : xml)
1: <employees>
2: <employee>
3: <name>Bob</name>
4: <age>36</age>
5: </employee>
6: <employee>
7: <name>Mary</name>
8: </employee>
9: </employees>
위의 예제에서 보이는 데로 XML 은 열리는 Bracket 과 닫히는 Bracket 으로 형성된다. 이러한 XML의 정보 집합체를 InfoSet 이라 한다. 이러한 InfoSet 은 주로 계층구조로서 나타난다 (Parent 와 Child 의 관계). 이러한 XML 을 다루는 기초적인 툴들이 있는데, 그 중에 가장 으뜸은 XPath 라는 것이다.
XPath 는 InfoSet 에서 SubSet을 구분짓게 하는 메카니즘이다. 다시 말해, SQL 이 관계형 데이터베이스를 Query 하는 언어라면 XPath 는 XML 문서의 정보를 Query 할 수 있게 해주는 Language 라 할 수 있다.
예로, /employees/emplyee/name 이라는 간단한 XPath 문은 가장 루트에 있는 employees의 노드 중 name 이라는 노드에 다다르게 해준다. 조건부 연산이라든지 합계, 와일드 카드 등을 써서 복잡한 Query 를 생성할 수도 있다.
또 다른 XML에서 중요한 Abstract Foundation 은 XSLT(eXtensible StyleSheet Language Transformations) 이다. XSLT 의 룰 집합체는 XML 문서를 한 스키마에서 다른 스키마로의 변형이 가능케 해 준다.
XML InfoSet 은 XML Document 와 XSLT StyleSheet 와 XPath Expression 의 종합으로 생성되어 진다.
XML의 표준은 전형적인 Data Access 의 접근 방법을 취하지 않고 있다. 다음의 두 방법론을 따르고 있다.
1. SAX: XML 문서의 정보들은 순차적으로 읽혀지며 문서의 트리를 '깊이우선검색' 으로 선회하는 방식을 택하고 있다.
2. DOM: 개념적으로 XML 문서는 in-memory data structure 이며 필요에 따라 앞 뒤로 검색하는 방법을 택하고 있다. 이러한 옵션에 쓰이는 API 를 DOM (Document Object Model) 이라 하며 W3C 에 의해 정의되었다.
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5