행궁동 데이터 엔지니어

반응형

이번 포스팅에서는 XML 문서의 구조에 대해 이야기해보겠습니다.

XML은 데이터의 특성, 자료구조를 기술하는데 특화된 다목적 마크업 언어입니다. 

 

XML에 대한 설명은 아래 박스 참고

XML(Extensible Markup Language)

  • W3C에서 개발된, 다른 특수한 목적을 갖는 마크업 언어를 만드는데 사용하도록 권장하는 다목적 마크업 언어이다. 
  • XML은 SGML(Standard Generalized Markup Language)의 단순화된 부분집합으로, 다른 많은 종류의 데이터를 기술하는 데 사용할 수 있다.
  • XML은 주로 다른 종류의 시스템, 특히 인터넷에 연결된 시스템끼리 데이터를 쉽게 주고 받을 수 있게 하여 HTML의 한계를 극복할 목적으로 만들어졌다.
  • W3C는 XML 설계 목표에서 단순성과 일반성, 그리고 인터넷을 통한 사용 가능성을 강조했다. XML은 텍스트 형식으로 유니코드를 사용해 전 세계 언어를 지원한다. 
  • XML을 설계할 때는 주로 문서를 표현하는데 집중했지만, 지금은 임의의 자료구조를 나타나는 데 널리 쓰인다. 
  • 많은 API가 개발되어 XML 데이터를 처리하고자 하는 소프트웨어 개발자들이 활용하고 있다. 또한, 여러 가지 스키마 시스템이 있어서 XML 기반 언어의 정의를 보다 쉽게 할 수 있도록 도와 준다. 

참고 : https://mentha2.tistory.com/107

 

XML 문서의 기본 구조 설명

  • XML 문서는 트리구조를 따릅니다.
  • 트리구조를 따른다는 것은 문서의 구조가 계층화되었다는 것이고, 'root'에서 시작해서 'leaves'로 뻗어나가는 형태입니다.

 

XML의 기본 구조

Prolog 

  • XML 버전과 문자 인코딩을 정의

Namespaces - The xmlns(xmlnamespace) Attribute 

  • Name conflict(여러 개의 xml 파일을 사용할 때 각각의 xml 파일에서 정의하고 있는 tag 이름이 겹쳐 충돌하는 문제) 이를 해결하기 위해, XML은 Prefix(접두사)를 사용할 수 있음

DTD(Document Type Definition)

  • XML 문서의 구조를 정의하기 위한 문서

XML Schema 

  • DTD와 유사하게 XML 문서의 구조를 정의하기 위한 문서이지만, 그 자체가 XML syntax로 쓰여진 XML문서이다
  • XML Schema는 DTD보다 편리하고, 기능이 많다. Datatype을 지원하며, XML syntax로 쓰여질 수 있기 때문에, DTD처럼 문서 구조를 정의하기 위해 다른 언어를 배울 필요가 없다 

 

1. https://ko.wikipedia.org/wiki/SGML
2. https://ko.wikipedia.org/wiki/XML
3. https://ko.wikipedia.org/wiki/마크업언어
4. 탁구치는 개발자, XML namespace 이해하기, https://lng1982.tistory.com/81
5. 곰돌이놀이터,[기본] XML 이란?, https://helloworld-88.tistory.com/67
반응형

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band