XML
데이터를 저장하고 전달하기 위해 디자인 된 언어 ( like html )
어플리케이션에 의해서 쉽게 사용될 수 있음
SemiStructured Data (SSD)
- 여러 소스들로부터의 Data 통합체
- 비교적 덜 엄격한 구조를 지님

- Semi-structured data의 특징
- 다양한 attributes
- 각 object마다 다양한 attribute 포함
- 이종의 Collection
- Relational Data와의 비교 그림

SSD 요약
- Self-describing , Irregular Data , No a priori structure
Document Type Descriptors

- 스키마처럼 sort , 하지만 실제로는 아님
- Entity의 정의
- 표준 SGML DTD를 상속
- Document 표현에는 좋지만, Data 표현에는 불리하다
- Element 이름과 타입이 전역적으로 연결되어 있음
- 구조적 re-use를 지원하지 않음
- Data type 표시를 지원하지 않음
- single Item Key를 소유할 수 있지만...
- multi-attribute key를 지원하지 않음
- 외래 key를 지원하지 않음
XML 스키마
XML 포맷으로 DB의 스키마를 표현
- Element의 이름과 타입이 locally하게 연결되어 있음
- primitive한 data를 포함하고 있음 ( integer, string ...)
- value에 의존한 제약조건을 지원함 ( e.g. a > 100 )
- 상속지원
- 외래키 지원
- Element의 type 제약조건 지원


XML 용어

- Tag
- Element
- XML document
- Well-formed document
- Valid XML document
More about XML


XML과 SSD 비교
- 둘 다 graph로 기술될 수 있음
- 둘다 스키마 less 하며, self-describing
- XML은 text와 element를 섞어서 표현 가능

- SSD는 ordered , XML은 아니다.
- XML은 attributes , entities , processing instructions , comments 등의
다양한 stuff를 소유한다.