---
title: "XPath 표현식을 사용하여 데이터 선택을 더욱 정밀하게 수행합니다"
date: "2013-09-12"
categories: 
  - "data-integration"
  - "xpath"
tags: 
  - "altova-xmlspy"
  - "mapforce"
  - "stylevision"
  - "xml-schema"
  - "xmlspy"
  - "xpath"
description: XMLSpy, MapForce, StyleVision과 같은 도구를 사용하여 XML 문서에서 XPath 표현식을 효과적으로 활용하여 데이터를 더욱 정밀하게 선택하는 방법을 알아보세요.
---
Status: #blog

Tags:  #altova-xmlspy #mapforce #stylevision #xml-schema #xmlspy #xpath

Categories: [data-integration](/blog/ko/category/data-integration.md) | [xpath+xquery](/blog/ko/category/xpathxquery.md)
# XPath 표현식을 사용하여 데이터 선택을 더욱 정밀하게 수행합니다

빅데이터 시대에 우리는 종종 더 큰 파일의 특정 부분을 분석하고 전달하기 위해 맞춤형 뷰를 만들어 분석 과정을 단순화해야 할 필요가 있습니다. [XPath](https://www.altova.com/ko/solutions/xpath.html), XML 경로 언어(XML Path Language)의 줄임말로, 사용자가 대규모 XML 문서의 특정 부분을 선택하고 접근할 수 있도록 설계되었습니다. [XMLSpy](https://www.altova.com/ko/xmlspy.html) 이 기능은 XPath 분석기 창을 제공하며, XML 데이터를 시각화하는 인터페이스에서도 XPath를 지원합니다 [MapForce](https://www.altova.com/ko/mapforce.html) XML 데이터 매핑을 위한 XPath 함수를 지원하며, [StyleVision](https://www.altova.com/ko/stylevision.html) 이 기능은 조건부 템플릿, 확장 템플릿, 그리고 템플릿 필터링에서 XPath를 지원합니다.

[![얼굴 인식 기능이 탑재된 노트북](/blog/images/faces-laptop.jpg)](faces-laptop.jpg)

<!--more-->

Altova의 모든 도구는 가능한 한 동일한 사용자 인터페이스를 사용하므로, 하나의 도구를 사용하는 데 익숙해진 기술은 다른 도구에서도 쉽게 활용할 수 있습니다. 이전에 StyleVision에서 제공하는 [XPath 자동 계산 기능](https://www.altova.com/blog/2012/04/xpath-enhances-xml-reports.html)에 대해 블로그에 소개한 적이 있는데, 이번에는 다른 예시를 살펴보겠습니다.

대부분의 대규모 데이터 세트는 여러 개의 개별 테이블로 구성되어 있습니다. 예를 들어, 미국 교육부에서 제공하는 최근 대학 졸업생의 취업 관련 정보는 다음과 같이 CSV 파일 형태로 제공될 수 있습니다

![대학교 졸업생의 고용 관련 데이터를 CSV 형식으로 보여줍니다](https://lh6.ggpht.com/-aeLkzdD4tbU/Ui4gx-TsrpI/AAAAAAAABRw/0uEPSuijaW8/image%25255B2%25255D.png?imgmax=800 "CSV view of employment data for college graduates")

각 표는 서로 다른 전공 및 졸업 연도의 졸업생들을 대상으로 한 고용 통계 중 하나의 항목을 보여줍니다.

XMLSpy의 스키마 보기에서, 데이터를 설명하는 XML 스키마는 다음과 같이 보일 수 있습니다. 각 테이블은 <set> 요소 내에 정의되며, <row> 요소를 확장하면 각 학과 또는 전공 분야에 대한 추가적인 하위 요소들이 표시됩니다.

![XMLSpy 스키마 뷰](https://lh3.ggpht.com/-d_0HFon1IzY/Ui4gyFoMi1I/AAAAAAAABR0/LcXgUVXBezQ/image%25255B5%25255D.png?imgmax=800 "XMLSpy Schema view")

간단한 맵포스(MapForce)를 사용하여 CSV 파일을 XML 스키마로 변환하면 데이터가 XML 형식으로 바뀌며, 이를 XMLSpy에서 열어볼 수 있습니다

![XMLSpy에서 데이터의 일부를 텍스트 형태로 보여주는 화면입니다](https://lh6.ggpht.com/-WsWwQyP2pUw/Ui4gyphhlHI/AAAAAAAABSA/Ta4HHQlEnls/image%25255B8%25255D.png?imgmax=800 "XMLSpy text view of a portion of the data")

만약 차트 중 하나를 위한 그래프를 만들고 싶다면, XMLSpy의 그리드 보기에서 시작하는 것이 가장 쉽습니다. 여기서 하위 테이블 중 하나를 선택한 다음, 오른쪽 클릭 메뉴에서 "새 차트"를 선택할 수 있습니다

![XMLSpy에서 XML 데이터를 그리드 형태로 보여주는 기능](https://lh5.ggpht.com/-jvRELkv-RVA/Ui4gzJRqC1I/AAAAAAAABSI/9Dd2txJYtJU/image%25255B11%25255D.png?imgmax=800 "XMLSpy Grid View of the XML data")

다음으로 나타나는 "차트 데이터 선택" 대화 상자에서, XMLSpy는 선택된 데이터를 설명하는 XPath 표현식을 자동으로 생성합니다

![XMLSpy 차트 데이터 선택 대화 상자](https://lh6.ggpht.com/-4kRmhk_bfIg/Ui4gzkYpquI/AAAAAAAABSM/Jf8xVph3Gsg/image%25255B14%25255D.png?imgmax=800 "XMLSpy Chart Data Selection dialog")

해당하는 선 그래프는 다음과 같습니다

![XMLSpy에서 그리드 뷰로 선택된 데이터의 차트](https://lh5.ggpht.com/-v1E5tr1BolU/Ui4gz4cHZ2I/AAAAAAAABSU/crPjFcYAGBw/image%25255B17%25255D.png?imgmax=800 "XMLSpy chart of the data selected in Grid View")

다른 테이블의 데이터를 그래프로 표시하려면, 데이터를 다시 확인하여 다른 데이터 세트를 수동으로 선택하거나, XPath 표현식을 직접 수정할 수 있습니다. 데이터 선택 창에 있던 원래 표현식은 다음과 같습니다: /data/set[3]/row

우리는 숫자 3을 변경하여 다른 데이터 세트를 선택할 수도 있고, `setnum` 속성을 활용하여 파일 내에서의 순서가 아닌 내용에 따라 테이블을 선택할 수도 있습니다. 데이터가 나중에 변경될 경우, 특정 테이블을 명시적으로 선택하는 것이 더 나은 방법입니다. 예를 들어, 향후 업데이트에서 파트타임 고용 관련 테이블이 두 번째 위치에 삽입될 경우, 이후 모든 테이블의 순서 번호가 변경될 수 있습니다.

다음은 "setnum" 속성을 사용하여 졸업생 중 특정 분야에 종사하는 비율을 나타내는 차트를 표시하기 위한 XPath 표현식의 예입니다.![차트 데이터 선택 대화 상자에서 XPath 표현식 편집]

(https://lh3.ggpht.com/-79L2DcOC2qQ/Ui4g0MGs4mI/AAAAAAAABSg/WrX4KY8qlaE/image%25255B20%25255D.png?imgmax=800 "차트 데이터 선택 대화 상자에서 XPath 표현식 편집")

다음은 해당 분야와 관련된 직무에 종사하는 직원 비율을 보여주는 그래프입니다

![XMLSpy를 사용하여, 전공 분야와 관련된 직종에 취업한 졸업생들의 현황을 보여주는 선 그래프](https://lh4.ggpht.com/-UFPLM1hf7yg/Ui4g0ikH27I/AAAAAAAABSo/nLKFSjlitYg/image%25255B23%25255D.png?imgmax=800 "XMLSpy line chart for graduates employed close to their fields of study")

XPath 표현식을 개발하는 과정에서 다양한 옵션을 시험해보고 싶다면, XPath 분석기 창이 유용한 도구입니다. XPath 분석기는 입력하는 내용에 따라 문법을 검사하고, 결과를 미리 보여줍니다

![XMLSpy XPath 분석기 창](https://lh3.ggpht.com/-PqfeXYaADD8/Ui4g01aF9gI/AAAAAAAABSs/HGhCgbfKsdM/image%25255B26%25255D.png?imgmax=800 "XMLSpy XPath Analyzer window")

다음 단계는 XMLSpy에서 개발된 차트와 XPath 데이터 선택 표현식을 활용하여 StyleVision에서 데이터 보고를 위한 스타일 시트를 만드는 것입니다. 이 주제에 대해서는 추후 게시물에서 자세히 다루겠습니다.

**그동안, ** [**Altova MissionKit의 무료 체험 버전을 다운로드하려면 여기를 클릭하세요.**](https://www.altova.com/ko/download-trial.html) **XMLSpy, MapForce, StyleVision 등을 포함한 체험 버전을 통해 직접 사용해 보실 수 있습니다!**
