XML이란 무엇인가요?

Extensible Markup Language(XML)를 사용하면 공유 가능한 방식으로 데이터를 정의하고 저장할 수 있습니다. XML은 웹 사이트, 데이터베이스 및 타사 애플리케이션과 같은 컴퓨터 시스템 간의 정보 교환을 지원합니다. 사전 정의된 규칙을 사용하면 수신자가 이러한 규칙을 사용하여 데이터를 효율적으로 정확하게 읽을 수 있으므로 모든 네트워크에서 데이터를 XML 파일로 손쉽게 전송할 수 있습니다.

XML이 중요한 이유는 무엇인가요?

XML(Extensible Markup Language)은 데이터를 정의하는 규칙을 제공하는 마크업 언어입니다. 다른 프로그래밍 언어와 달리 XML은 자체적으로 컴퓨팅 작업을 수행할 수 없습니다. 대신 구조적 데이터 관리를 위해 모든 프로그래밍 언어 또는 소프트웨어를 구현할 수 있습니다.

주석이 있는 텍스트 문서를 예로 들어 보겠습니다. 주석은 다음과 같은 제안을 제공할 수 있습니다.

  • 제목을 굵게 표시
  • 이 문장은 머리글임
  • 이 단어는 저자임

이러한 주석은 문서의 내용에 영향을 주지 않고 문서의 유용성을 높입니다. 마찬가지로 XML은 마크업 기호를 사용하여 데이터에 대한 추가 정보를 제공합니다. 브라우저와 데이터 처리 애플리케이션 등의 다른 소프트웨어는 이 정보를 사용하여 정형 데이터를 보다 효율적으로 처리합니다.

XML 태그

XML에서 태그라고 하는 마크업 기호를 사용하여 데이터를 정의합니다. 예를 들어, 서점에 대한 데이터를 나타내기 위해 <book>, <title> 및 <author>와 같은 태그를 만들 수 있습니다. 책 한 권의 XML 문서에는 다음과 같은 내용이 포함됩니다.

<book>

<title> Learning Amazon Web Services </title>

<author> Mark Wilkins </author>

</book>

태그는 정교한 데이터 코딩을 통해 여러 시스템에서 정보 흐름을 통합합니다.

XML을 사용하면 어떤 이점이 있나요?

비즈니스 간 트랜잭션 지원

회사가 다른 회사에 상품이나 서비스를 판매하는 경우 두 기업은 비용, 사양 및 배송 일정과 같은 정보를 교환해야 합니다. XML(Extensible Markup Language)을 사용하면 필요한 모든 정보를 전자적으로 공유하고 사람의 개입 없이 복잡한 거래를 자동으로 성사시킬 수 있습니다. 

데이터 무결성 유지

XML을 사용하면 데이터 설명과 함께 데이터를 전송하여 데이터 무결성 손실을 방지할 수 있습니다. 이 설명 정보를 사용하여 다음을 수행할 수 있습니다.

  • 데이터 정확성 확인
  • 다양한 사용자를 위해 자동으로 데이터 표시 사용자 지정
  • 여러 플랫폼에 걸쳐 일관되게 데이터 저장 

검색 효율성 향상

검색 엔진과 같은 컴퓨터 프로그램은 다른 유형의 문서보다 더 효율적이고 정확하게 XML 파일을 정렬하고 분류할 수 있습니다. 예를 들어, mark라는 단어는 명사일 수도, 동사일 수도 있습니다. XML 태그를 기반으로 검색 엔진은 관련 검색 결과에 대해 mark를 정확하게 분류할 수 있습니다. 따라서 XML은 컴퓨터가 자연어를 보다 효율적으로 해석할 수 있도록 합니다.

유연한 애플리케이션 설계

XML을 사용하면 애플리케이션 디자인을 편리하게 업그레이드하거나 수정할 수 있습니다. 많은 기술, 특히 최신 기술에는 기본 제공 XML 지원이 함께 제공됩니다. XML 데이터 파일을 자동으로 읽고 처리할 수 있으므로 전체 데이터베이스를 다시 포맷하지 않고도 변경할 수 있습니다.

 

XML의 용도는 무엇인가요?

XML(Extensible Markup Language)은 워드 프로세싱과 같은 일반적인 생산성 도구에서 책 출판 소프트웨어 및 복잡한 응용 프로그램 구성 시스템에 이르기까지 수천 가지 애플리케이션의 기본 기술입니다.

데이터 전송

XML을 사용하여 동일한 데이터를 서로 다른 형식으로 저장하는 두 시스템 간에 데이터를 전송할 수 있습니다. 예를 들어, 웹 사이트에서는 날짜를 MM/DD/YYYY 형식으로 저장하지만 회계 시스템은 날짜를 DD/MM/YYYY 형식으로 저장합니다. XML을 사용하여 웹 사이트에서 회계 시스템으로 데이터를 전송할 수 있습니다. 개발자는 다음을 자동으로 변환하는 코드를 작성할 수 있습니다.

  • 웹 사이트 데이터를 XML 형식으로
  • XML 데이터를 회계 시스템 데이터로
  • 회계 시스템 데이터를 다시 XML 형식으로
  • XML 데이터를 다시 웹 사이트 데이터로

웹 애플리케이션

XML은 웹 페이지에서 볼 수 있는 데이터에 구조를 제공합니다. HTML 등의 다른 웹 사이트 기술은 XML과 함께 작동하여 웹 사이트 방문자에게 일관되고 관련성 있는 데이터를 제공합니다. 의류를 판매하는 전자 상거래 웹 사이트를 예로 들어 보겠습니다. 웹 사이트는 모든 방문자에게 모든 옷을 보여주는 대신 XML을 사용하여 사용자 기본 설정에 따라 사용자 지정된 웹 페이지를 생성합니다. <brand> 태그를 필터링하여 특정 브랜드의 제품을 보여줍니다.

설명서

XML을 사용하여 기술 문서의 구조 정보를 지정할 수 있습니다. 그런 다음 다른 프로그램에서 문서 구조를 처리하여 유연하게 표시합니다. 예를 들어, 단락, 번호 매기기 목록의 항목 및 제목에 대한 XML 태그가 있습니다. 이러한 태그를 사용하면 다른 유형의 소프트웨어에서 인쇄 및 웹 페이지 게시와 같은 용도로 문서를 자동으로 준비합니다.

데이터 유형

많은 프로그래밍 언어에서 XML을 데이터 유형으로 지원합니다. 이 지원을 통해 XML 파일과 직접 작동하는 다른 언어로 프로그램을 쉽게 작성할 수 있습니다.

XML 파일의 구성 요소는 무엇인가요?

XML(Extensible Markup Language) 파일은 .xml 확장자로 저장할 수 있는 텍스트 기반 문서입니다. 다른 텍스트 파일과 유사한 XML을 작성할 수 있습니다. 다음 중 하나를 사용하여 XML 파일을 만들거나 편집할 수 있습니다. 

  • 메모장 또는 Notepad++와 같은 텍스트 편집기
  • 온라인 XML 편집기
  • 웹 브라우저

모든 XML 파일에는 다음 구성 요소가 포함됩니다.

XML 문서

<xml></xml> 태그는 XML 파일의 시작과 끝을 표시하는 데 사용됩니다. 이러한 태그 내의 콘텐츠를 XML 문서라고도 합니다. 모든 소프트웨어가 XML 코드를 처리하기 위해 찾는 첫 번째 태그입니다.

XML 선언

XML 문서는 XML 자체에 대한 몇 가지 정보로 시작합니다. 예를 들어, 뒤에 오는 XML 버전을 언급할 수 있습니다. 이 오프닝을 XML 선언이라고 합니다. 다음은 그 예입니다.

<?xml version="1.0" encoding="UTF-8"?>

XML 요소

XML 문서 내에서 만드는 다른 모든 태그를 XML 요소라고 합니다. XML 요소에는 다음과 같은 기능이 포함될 수 있습니다.

  • 텍스트
  • 속성
  • 기타 요소

모든 XML 문서는 루트 요소라고 하는 기본 태그로 시작합니다.

아래 XML 파일을 예로 들어 보겠습니다.

<InvitationList>

<family>

       <aunt>

       <name>Christine</name>

        <name>Stephanie</name>

       </aunt>

</family>

</InvitationList>

<InvitationList>는 루트 요소이고 familyaunt는 다른 요소 이름입니다.

XML 속성

XML 요소에 속성이라는 다른 설명자가 있을 수 있습니다. 아래와 같이 속성 이름을 직접 정의하고 속성 값을 따옴표로 묶어 쓸 수 있습니다.

<person age=“22”>

XML 콘텐츠

XML 파일의 데이터를 XML 콘텐츠라고도 합니다. 예를 들어, XML 파일에 다음과 같은 데이터가 표시될 수 있습니다. 

<friend>

       <name>Charlie</name>

       <name>Steve</name>

</friend>

데이터 값 CharlieSteve가 콘텐츠입니다.

XML 스키마란 무엇인가요?

XML(Extensible Markup Language) 스키마는 XML 파일의 구조에 대한 몇 가지 규칙이나 제한을 설명하는 문서입니다. 다음과 같은 여러 가지 방법으로 이러한 제약 조건을 설명할 수 있습니다.

  • 요소의 순서를 결정하는 문법 규칙
  • 콘텐츠가 충족해야 하는 예 또는 아니요 조건
  • XML 파일의 콘텐츠에 대한 데이터 유형
  • 데이터 무결성에 대한 제약 조건

예를 들어, 서점에 대한 XML 스키마는 다음과 같은 제약 조건을 적용할 수 있습니다.

  1. 책 요소에는 titleauthor 속성이 있습니다.
  2. 책 요소는 속성 이름을 가진 범주 요소 아래에 중첩됩니다.
  3. 책의 가격은 book 아래에 중첩된 별도의 요소입니다. 

이러한 제약 조건을 충족하기 위해 아래와 같이 XML 파일을 작성합니다. 

<category name=“Technology”>

<book title=“Learning Amazon Web Services”, author=“Mark Wilkins”>

<price>20 USD</price>

</book>

</category>

XML 스키마는 다양한 소프트웨어 애플리케이션이 XML 파일을 만들고 사용하는 방식에 일관성을 적용합니다. 일부 업계에서는 비즈니스 간 데이터 전송을 위한 XML 코드 작성의 복잡성을 줄이기 위해 작업에 특정한 XML 스키마를 구현합니다. 예를 들어, SVG(Scalable Vector Graphics)는 컴퓨터 그래픽 관련 데이터를 설명하기 위한 XML 사양입니다. 소프트웨어 개발자는 이러한 산업 사양을 충족하도록 XML 파일을 작성합니다.

XML 구문 분석기란 무엇인가요?

XML(Extensible Markup Language) 구문 분석기는 XML 문서를 처리하거나 읽어 그 안에 있는 데이터를 추출할 수 있는 소프트웨어입니다. XML 구문 분석기는 또한 XML 파일의 구문이나 규칙을 확인하고 특정 XML 스키마에 대해 검증할 수 있습니다. XML은 엄격한 마크업 언어이기 때문에 검증 또는 구문 오류가 있는 경우 구문 분석기는 파일을 처리하지 않습니다. 예를 들어, 다음 조건 중 하나라도 해당하면 XML 구문 분석기에서 오류를 반환합니다.

  • 닫는 태그 또는 종료 태그가 없습니다.
  • 속성 값에 따옴표가 없습니다.
  • 스키마 조건이 충족되지 않았습니다.

소프트웨어 애플리케이션은 XML 구문 분석기를 사용하여 XML 파일을 기본 데이터 유형으로 변환합니다. 따라서 XML 자체의 세부 사항에 들어갈 필요 없이 애플리케이션 논리에 집중할 수 있습니다.

 

XML은 HTML과 어떻게 다른가요?

HTML(HyperText Markup Language)은 대부분의 웹 페이지에서 사용되는 언어입니다. 웹 브라우저는 HTML 문서를 처리하여 멀티미디어 페이지로 표시합니다. W3C(World Wide Web Consortium)는 웹의 장기적인 성장을 보장하기 위한 프로토콜과 지침을 개발하는 국제 커뮤니티입니다. W3C는 웹 사이트 개발자가 일관성과 품질을 위해 구현하는 HTML 및 확장 가능한 마크업 언어(XML) 표준을 모두 확립했습니다.

XML 및 HTML

HTML 파일과 XML 파일은 매우 비슷하지만 몇 가지 중요한 차이점이 있습니다.

용도

HTML의 용도는 데이터를 표시하는 것입니다. 그러나 XML은 데이터를 저장하고 전송합니다.

태그

HTML에는 미리 정의된 태그가 있지만 사용자는 XML에서 고유한 태그를 만들고 정의할 수 있습니다.

구문 규칙

HTML과 XML 구문 간에는 사소하지만 중요한 차이점이 있습니다. 예를 들어, XML은 대/소문자를 구분하지만 HTML은 구분하지 않습니다. <book> 대신 <Book>으로 태그를 작성하면 XML 구문 분석기에서 오류가 발생합니다.

AWS 서비스는 어떻게 XML을 지원하나요?

모든 AWS 데이터 통합 ​​서비스는 XML(Extensible Markup Language) 파일을 처리할 수 있습니다. 다음은 몇 가지 예제입니다.

AWS Glue는 분석, 기계 학습 및 애플리케이션 개발을 위해 데이터를 쉽게 탐색, 준비, 조합하는 데 사용할 수 있는 서버리스 데이터 통합 서비스입니다. AWS Glue DataBrew는 코드를 작성하지 않고도 대화형 포인트 앤 클릭 시각적 인터페이스로 데이터를 준비하는 데 사용할 수 있는 시각적 데이터 준비 도구입니다. DataBrew는 XML을 포함한 모든 유형의 파일 형식을 입력할 수 있습니다.

Amazon Simple Queue Service(SQS)는 모든 볼륨의 소프트웨어 구성 요소 간에 메시지를 전송, 저장 및 수신하는 데 사용할 수 있는 완전관리형 메시지 대기열 서비스입니다. Amazon SQS 메시지는 XML, JSON, 서식 없는 텍스트 등의 텍스트 데이터를 최대 256KB까지 포함할 수 있습니다.

Amazon Kinesis를 사용하면 실시간 스트리밍 데이터를 손쉽게 수집, 처리 및 분석할 수 있으므로 적시에 인사이트를 확보하고 새로운 정보에 신속하게 대응할 수 있습니다. Kinesis의 주요 기능을 사용하면 규모에 관계없이 스트리밍 데이터를 비용 효율적으로 처리할 수 있습니다. 또한 응용 분야의 요구 사항에 맞는 도구를 유연하게 선택할 수 있습니다. Kinesis를 사용하여 실시간으로 XML 데이터를 스트리밍, 변환 및 분석합니다.

지금 AWS 계정을 만들어 데이터 통합을 시작하세요.

AWS를 활용한 다음 단계

제품 관련 추가 리소스 확인
분석 서비스에 대해 자세히 알아보기 
무료 계정에 가입

AWS 프리 티어에 즉시 액세스할 수 있습니다. 

가입 
콘솔에서 구축 시작

AWS 관리 콘솔에서 AWS로 구축을 시작하세요.

로그인