본문 바로가기
컴퓨터 지식

[XML] Xml , Html 차이

by 늑인 2025. 3. 19.

 

XML (Extensible Markup Language)과 HTML (HyperText Markup Language)은 모두 마크업 언어이지만, 그 목적과 사용 방식에서 중요한 차이점이 있습니다. 아래는 XML과 HTML의 주요 차이점입니다.

1. 목적 (Purpose)

  • XML: XML은 데이터를 구조화하여 저장하고 전송하는 데 사용됩니다. XML은 데이터의 정의구조에 집중하며, 사용자 정의 태그를 허용합니다. 데이터의 표현 방식에 초점을 맞추고, 시스템 간 데이터 교환이 용이하도록 설계되었습니다.
  • HTML: HTML은 웹 페이지의 구성표현에 중점을 둡니다. 즉, 콘텐츠의 표시디자인에 초점을 맞추며, 웹 브라우저에서 텍스트, 이미지, 비디오 등을 시각적으로 표시하는 데 사용됩니다.

2. 사용자 정의 태그 (Custom Tags)

  • XML: XML에서는 사용자가 자유롭게 태그를 정의할 수 있습니다. 즉, XML 문서는 특정 목적에 맞는 구조를 자유롭게 만들 수 있으며, 데이터를 적절한 태그로 감쌀 수 있습니다.
    • 예: <book><title>XML for Beginners</title><author>John Doe</author></book>
  • HTML: HTML에는 사전 정의된 태그가 있으며, 사용자는 HTML 태그를 변경하거나 추가할 수 없습니다. 웹 페이지를 표시하기 위해서는 HTML에서 제공하는 태그를 사용해야 합니다.
    • 예: <h1>Title</h1><p>This is a paragraph.</p>

3. 태그의 엄격성 (Tag Strictness)

  • XML: XML은 엄격한 문법 규칙을 따릅니다. 예를 들어, 모든 태그는 반드시 쌍을 이루어야 하고, 태그 이름은 대소문자를 구분합니다. 태그가 닫히지 않거나 잘못 작성된 경우 XML 문서는 오류를 발생시킵니다.
    • 예: <book><title>Title</title></book> (올바름), <book><title>Title</title> (오류 발생)
  • HTML: HTML은 덜 엄격합니다. 일부 태그는 자동으로 닫히거나 일부 태그가 생략될 수 있습니다. HTML 문서는 브라우저에서 오류가 발생하더라도 자동으로 보정되는 경우가 많습니다.
    • 예: <p>This is a paragraph. (HTML에서는 잘 작동하지만 XML에서는 오류 발생)

4. 데이터 vs 표시 (Data vs Display)

  • XML: XML은 데이터를 저장하고 전달하는 데 사용됩니다. XML 문서는 내용을 표현하는 것이 아니라 데이터를 구조화하여 다른 시스템 간에 데이터를 전송하는 데 적합합니다.
  • HTML: HTML은 웹 페이지의 내용을 표시하고 사용자가 웹 페이지와 상호작용할 수 있도록 합니다. HTML은 콘텐츠의 시각적 표현을 중심으로 설계되었습니다.

5. 공백과 줄 바꿈 (Whitespace and Line Breaks)

  • XML: XML에서는 공백이나 줄 바꿈이 중요합니다. 특히 데이터의 구분에 사용될 수 있기 때문에 공백을 의미 있는 데이터로 간주합니다.
  • HTML: HTML에서는 공백이나 줄 바꿈이 시각적으로 무시됩니다. 즉, 여러 공백을 연속해서 사용하거나 줄 바꿈을 여러 번 사용하더라도, 브라우저는 이를 하나의 공백으로 처리합니다.

6. 표준화 및 확장성 (Standardization and Extensibility)

  • XML: XML은 확장성을 제공하는 마크업 언어로, 다양한 종류의 데이터 포맷을 정의할 수 있습니다. 예를 들어, XML Schema, DTD(문서 유형 정의), XSLT 등의 규격을 사용해 XML 문서를 확장하고 검증할 수 있습니다.
  • HTML: HTML은 웹 페이지의 구조를 정의하기 위한 마크업 언어로, 웹 브라우저에서 콘텐츠를 표시하는 표준을 따릅니다. HTML은 확장성보다는 웹 페이지 표시의 일관성에 중점을 둡니다.

'컴퓨터 지식' 카테고리의 다른 글

[Json] Json 주요 특징  (0) 2025.03.19
[XML ] XML 구성 요소  (1) 2025.03.19
[Web] Listener, Filter 의 차이점  (1) 2024.12.04
[Web] Request, Session, Aplication 등 적용 범위  (0) 2024.12.03
[Content-Type] Content-Type 종류  (1) 2024.12.03