XPath 표현식을 사용하여 데이터 선택을 더욱 정밀하게 수행합니다

빅데이터 시대에 우리는 종종 더 큰 파일의 특정 부분을 분석하고 전달하기 위해 맞춤형 뷰를 만들어 분석 과정을 단순화해야 할 필요가 있습니다. XPath, XML 경로 언어(XML Path Language)의 줄임말로, 사용자가 대규모 XML 문서의 특정 부분을 선택하고 접근할 수 있도록 설계되었습니다. XMLSpy 이 기능은 XPath 분석기 창을 제공하며, XML 데이터를 시각화하는 인터페이스에서도 XPath를 지원합니다 MapForce XML 데이터 매핑을 위한 XPath 함수를 지원하며, StyleVision 이 기능은 조건부 템플릿, 확장 템플릿, 그리고 템플릿 필터링에서 XPath를 지원합니다.

Altova의 모든 도구는 가능한 한 동일한 사용자 인터페이스를 사용하므로, 하나의 도구를 사용하는 데 익숙해진 기술은 다른 도구에서도 쉽게 활용할 수 있습니다. 이전에 StyleVision에서 제공하는 XPath 자동 계산 기능에 대해 블로그에 소개한 적이 있는데, 이번에는 다른 예시를 살펴보겠습니다.

대부분의 대규모 데이터 세트는 여러 개의 개별 테이블로 구성되어 있습니다. 예를 들어, 미국 교육부에서 제공하는 최근 대학 졸업생의 취업 관련 정보는 다음과 같이 CSV 파일 형태로 제공될 수 있습니다

각 표는 서로 다른 전공 및 졸업 연도의 졸업생들을 대상으로 한 고용 통계 중 하나의 항목을 보여줍니다.

XMLSpy의 스키마 보기에서, 데이터를 설명하는 XML 스키마는 다음과 같이 보일 수 있습니다. 각 테이블은 요소 내에 정의되며, 요소를 확장하면 각 학과 또는 전공 분야에 대한 추가적인 하위 요소들이 표시됩니다.

간단한 맵포스(MapForce)를 사용하여 CSV 파일을 XML 스키마로 변환하면 데이터가 XML 형식으로 바뀌며, 이를 XMLSpy에서 열어볼 수 있습니다

만약 차트 중 하나를 위한 그래프를 만들고 싶다면, XMLSpy의 그리드 보기에서 시작하는 것이 가장 쉽습니다. 여기서 하위 테이블 중 하나를 선택한 다음, 오른쪽 클릭 메뉴에서 "새 차트"를 선택할 수 있습니다

다음으로 나타나는 "차트 데이터 선택" 대화 상자에서, XMLSpy는 선택된 데이터를 설명하는 XPath 표현식을 자동으로 생성합니다

해당하는 선 그래프는 다음과 같습니다

다른 테이블의 데이터를 그래프로 표시하려면, 데이터를 다시 확인하여 다른 데이터 세트를 수동으로 선택하거나, 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 표현식 편집")

다음은 해당 분야와 관련된 직무에 종사하는 직원 비율을 보여주는 그래프입니다

XPath 표현식을 개발하는 과정에서 다양한 옵션을 시험해보고 싶다면, XPath 분석기 창이 유용한 도구입니다. XPath 분석기는 입력하는 내용에 따라 문법을 검사하고, 결과를 미리 보여줍니다

다음 단계는 XMLSpy에서 개발된 차트와 XPath 데이터 선택 표현식을 활용하여 StyleVision에서 데이터 보고를 위한 스타일 시트를 만드는 것입니다. 이 주제에 대해서는 추후 게시물에서 자세히 다루겠습니다.

**그동안, ** Altova MissionKit의 무료 체험 버전을 다운로드하려면 여기를 클릭하세요. XMLSpy, MapForce, StyleVision 등을 포함한 체험 버전을 통해 직접 사용해 보실 수 있습니다!