Microsoft Office System과 XML: 데스크톱에서의 XML 사용

Peter Kelly

3Sharp, LLC

적용 대상:

   Microsoft Office System

요약 : Microsoft Office Word 2003과 Microsoft Office Excel 2003에서 사용자 지정 스키마를 지원하게 됨으로써 XML을 데스크톱에서 구현할 수 있게 되었습니다. 또한 Microsoft Office FrontPage 2003에서는 XML 기반 사이트를 위한 제작 환경으로 XML을 사용할 수 있으며, Microsoft Office InfoPath 2003에서는 기본 파일 형식으로 XML을 사용할 수 있습니다. 이 문서는 XML에 대한 개요, 그리고 이를 사용하여 Office 문서에서 데이터를 검색하는 방법에 대해 설명합니다(인쇄 매수 9매).

목차

주요 개념 및 정의 주요 개념 및 정의
Microsoft Office System에서의 XML에 대한 개요 Microsoft Office System에서의 XML에 대한 개요
Microsoft Office System 데이터의 가치를 높여주는 XML Microsoft Office System 데이터의 가치를 높여주는 XML
특정 Office 2003 응용 프로그램에서 XML이 갖는 위력 특정 Office 2003 응용 프로그램에서 XML이 갖는 위력
Microsoft Office System의 XML 지원 기능을 최대한 활용하는 방법 Microsoft Office System의 XML 지원 기능을 최대한 활용하는 방법
결론 결론
참고 자료 참고 자료

주요 개념 및 정의

XML eXtensible Markup Language로서, 구조화된 개방 형식으로 데이터를 기술하는 데 사용되는 메타데이터 정의 언어입니다.

XML 스키마 다른 XML 파일의 구조를 정의하는 데 사용되는 XML 파일입니다.

XSLT eXtensible Stylesheet Language Transformation 파일로서, 기존 XML 파일의 형식 및/또는 내용을 변환하는 데 사용됩니다.

XPath XML 문서로부터 요소와 데이터를 쉽게 추출하는 데 사용되는 XML Query 언어입니다.

Microsoft Office System에서의 XML에 대한 개요

Microsoft Office Excel 2003 및 Microsoft Office Access 2003에서의 XML(eXtensible Markup Language) 지원이 Microsoft Office XP에서 처음 제공된 수준보다 크게 확장되었습니다. 또한 Microsoft는 Microsoft Office Word 2003에 풍부한 수준의 XML 지원 기능을 추가했습니다. 예를 들어 Word 2003과 Excel 2003은 여러 사용자 지정 디자인의 스키마를 문서에 매핑하는 기능을 지원함으로써, 정보 작업자들이 XML에 의해 정의되는 풍부한 콘텐트를 만들고 다룰 수 있도록 했습니다. Microsoft Office FrontPage 2003은 사이트 디자이너들이 XML 데이터 구동 사이트를 만들고, WYSIWYG(What You See Is What You Get) 도구를 사용하여 XML 데이터에서 풍부한 뷰를 만들 수 있도록 지원합니다.

새로운 정보 수집 프로그램인 Microsoft Office InfoPath 2003에서는 XML을 기본 파일 형식으로 사용합니다. InfoPath는 사용자 정의 XML 스키마에 대한 지원 및 웹 서비스에 대한 자체 지원을 통해, 여러 기간 업무 시스템과 통합될 수 있으며 회사의 비즈니스 프로세스 내부에서도 활용될 수 있습니다.

XML을 포괄적으로 지원함에 따라, Microsoft Office System에서 정보 작업자가 만드는 문서의 가치가 크게 높아졌습니다. Microsoft Office System에서는 스프레드시트, 양식, 데이터베이스, 웹 사이트 및 워드 프로세싱 문서 등이 더 이상 데이터의 최종 지점이 아니라, 데이터 관리 사이클 즉, 데이터가 흐르는 전체 인프라의 필수적 일부분이 되었습니다. 이제 개발자와 고급 사용자들은 조직의 비즈니스 논리와 데이터 흐름 안에서 정보 작업자가 직접 사용할 수 있는 문서를 Microsoft Office System을 통해 설계할 수 있습니다.

예를 들어 엔터프라이즈 응용 프로그램에 적극적으로 참여할 수 있도록 문서를 만들 수 있습니다. 이를 실현하는 방법 중 하나는 Microsoft의 스마트 태그와 스마트 문서 기술을 활용하는 것인데, 두 가지 모두 백엔드 시스템 업데이트와 같은 동작을 XML 정의 콘텐트와 연결할 수 있도록 해줍니다. 스마트 태그와 스마트 문서는 별도의 글을 통해 다뤄야 할 주제이지만, 콘텐트가 Microsoft Office System에서 XML을 사용하여 지능적으로 기술되는 경우 강력한 시나리오가 될 수 있다는 것을 입증해 줍니다.

Microsoft Office System 데이터의 가치를 높여주는 XML

Microsoft Office System에서 XML을 사용하면 정보 작업자가 만드는 콘텐트의 가치를 더욱 높일 수 있습니다. 문서 안에 포함된 데이터를 그 문서의 다른 측면(레이아웃, 해당 문서를 만든 응용 프로그램 등)으로부터 분리할 수 있기 때문에, Microsoft Office System에서 XML을 사용하는 개발자 및 고급 사용자들은 데이터에 더욱 쉽게 액세스하고 회사 조직 내에서 데이터를 더욱 효율적으로 사용하며 기존 비즈니스 프로세스에 데이터가 더욱 잘 통합되도록 만들 수 있습니다.

일반적으로 Office 문서에서 데이터를 검색하려고 하는 Office 개발자들은 해당 문서의 구조를 파악하고 참조해야만 했습니다. 예를 들어 Word 문서의 테이블로 매핑하는 솔루션을 만들었던 개발자는 해당 Word 문서 구조의 맥락에서 그 데이터가 차지하는 위치를 찾는 코드를 작성해야 했습니다. 그 문서를 사용하는 정보 작업자가 그 문서에 테이블을 추가하면 그 데이터는 위 개발자의 솔루션에서는 액세스할 수 없게 됩니다.

하지만 XML에서는 Office 개발자가 캡처하려는 데이터가 문서의 어디에 위치하는 지 알 필요가 없습니다. 이들은 단지 XML 스키마(XSD)를 통해 무엇이 정의되는 지 또는 무엇이 매핑되는 지만 알면 됩니다.

XML은 서식 정보 또는 데이터 위치와 관계 없이 독립적으로 기술함으로써 문서에 있는 정보를 표시합니다. 예를 들어 전에는 일부 특정 Excel 셀 또는 Word 테이블에 위치시켜야 했던 데이터를 이제는 어디든지 위치시키면서 SalesData와 같은 XML 요소에 담을 수 있습니다(요소 이름은 정의가 가능함). 이러한 데이터의 모습은 다음과 같습니다.

<SalesData>Data</SalesData>

HTML 태그에 익숙한 분들은 이 구조의 의미를 알 수 있을 것입니다. 여기서 핵심은 HTML 태그에서는 데이터를 렌더링 또는 표시하는 방법을 기술하는 반면, 이 XML 태그는 데이터 자체를 기술하고 있다는 점입니다. SalesData 태그에 들어 있는 XML 텍스트 '데이터'를 검색하려면 개발자는 XPath 쿼리(selectSingleNode("/parents::SalesData와 같은 형태가 됨)를 사용하면 됩니다. 그러므로 정보가 문서의 어디에 있으며 어떤 방식으로 서식을 지정했든 관계 없이, 정보가 XML 스키마의 컨텍스트 안에서 태그로 지정되었다면 XML을 통해 액세스될 수 있습니다.

특정 Office 2003 응용 프로그램에서 XML이 갖는 위력

XML은 Microsoft Word 2003과 Excel 2002 및 Excel 2003의 기본 파일 형식입니다. 서식 정보, 작성자 정보, 최종 수정일 등 일반적인 .DOC 또는 .XLS 형식으로 저장할 수 있는 대부분의 정보는 모두 XML 요소의 형태로 저장될 수 있습니다. (예외 사항은 다른 섹션에 나와 있습니다.) 그림 1은 Word 문서를 XML로 표시한 것입니다.

odc_xmlinoffice2003_summarydoc01.gif

그림 1. Word 2003 문서

예를 들어 Author 값(표준 Word 속성)이 XML 태그에 의해 정의되는 데이터로서 어떻게 표현되어 있는지 확인해 보십시오.

<o:Author>Nancy Buchanan</o:Author>

결과적으로 데이터는 정보 작업자들이 일반적인 Microsoft Office 문서에서 익숙하게 볼 수 있는 다양한 서식과 기능을 유지하는 동시에, 문서로부터 쉽게 분리될 수 있습니다.

Word 2003

Microsoft Office Word 2003은 산업 표준 XML을 지원하며 문서는 Word 2003 .DOC 형식과 기본 XML 파일 형식 사이에서 상호 호환적으로 저장될 수 있습니다. Word 2003은 사용자 정의 XSD를 지원하고 XSLT에 대한 풍부한 지원 기능을 갖고 있기 때문에 특정 XSLT를 특정 XSD와 연결할 수도 있습니다.

Word 2003은 스키마를 문서로 매핑하는 작업을 쉽게 할 수 있는 시각적 인터페이스를 제공할 뿐 아니라(그림 2 참조), Word 2003에는 여러 스키마를 추가할 수 있도록 스키마 라이브러리가 포함되어 있습니다. 일단 스키마 라이브러리에 있는 스키마가 문서로 연결되면 고급 사용자 또는 개발자는 스키마 요소를 XML 구조 작업창으로부터 문서 자체로 그래픽 방식으로 매핑할 수 있습니다.

Word 2003은 스키마 문서의 엄격한 요구 사항을 이해할 수 있으며, 필요한 경우 유효성 검사 오류 신호를 내보냅니다. 예를 들어 어떤 요소에 콘텐트가 숫자로 지정되어 있을 경우, 텍스트를 입력하면 유효성 검사 오류가 나타납니다.

odc_xmlinoffice2003_summarydoc02.gif

그림 2. Word 에서     필드가 XML 요소로   매핑됩니다.

위의 그림 2에서 오른쪽 작업창의 스키마 요소는 문서의 여러 섹션으로 매핑되며 Physician Name 필드(중앙 왼쪽)는 XML 요소 "drname"에 의해 정의됩니다. 따라서 이 스키마를 사용하는 다른 프로그램 및 솔루션은 이 문서에서 의사의 이름을 찾는 방법을 알 수 있습니다.

또한 개발자들은 스마트 태그 또는 스마트 문서를 사용하여 문서 내의 특정 XML 요소에 논리를 연결할 수 있습니다. 예를 들어 위 그림에서 Contoso는 자사의 영업 인력이 Receipt of Samples Form을 작성하는 것을 돕는 솔루션을 만들 수 있습니다. 그러한 솔루션에서 사용자 지정 DLL은 Contoso의 내부 레코드에서 의사의 정보를 찾아내 이를 XML 태그를 바탕으로 문서 내의 적절한 필드에 자동으로 삽입합니다.

Excel 2003

고급 사용자 또는 개발자는 스키마를 Excel 2003 문서에 첨부하여 해당 스키마에 맞게 정의된 XML 데이터를 가져 올 수 있습니다. 또한 XML 파일을 직접 열어서 Excel 2003이 문서 구조로부터 스키마를 추정하도록 만들 수도 있습니다. .xls 바이너리 형식으로 Excel 문서는 XML 매핑을 유지하고 모든 Excel 기능과 속성을 보유할 수 있습니다. .xml 파일로 저장되는 경우 Excel 문서는 데이터 구조와 XML 매핑을 유지합니다. 단, 이미지, 양식, 포함 개체, VBA 코드 등 Excel에 기반하는 일부 기능은 잃게 되는데 이에 관한 전체적인 사항은 도움말을 참조하십시오.

Excel 2003에서 요소들은 XML 구조 작업창에서 스프레드시트의 셀로 매핑될 수 있습니다. 개발자와 고급 사용자는 어떤 순서로든 XML 요소들을 스프레드시트로 매핑할 수 있으며 스키마의 요구 사항을 충족할 필요는 없습니다. 일단 스키마의 요소들이 매핑되면 XML 데이터를 가져와 스프레드시트의 다른 데이터와 똑같이 사용할 수 있습니다.

스프레드시트가 XML로 매핑되면 여러 가지 강력한 시나리오가 가능해집니다. 첫째, 웹 쿼리, 웹 서비스, XML을 제공하는 데이터베이스 쿼리 또는 Access 2003 등을 통해 동적 데이터로 매핑하고 있다면 Microsoft PivotChart 동적 뷰같은 일반적인 Excel 기능을 최신 데이터에 사용할 수 있습니다. Excel 2003에서는 정보 작업자가 마우스를 단 한 번만 클릭함으로써 (원래 설정되었던 연결/인증 방식을 통해) XML 원본 데이터에서 직접 스프레드시트를 업데이트할 수 있습니다.

둘째, Excel 2003에 있는 데이터가 이제 매핑되었으므로 다른 시스템에서도 액세스할 수 있습니다. 예를 들어 회사 재무 보고서를 Excel로 작성하는 데 익숙한 정보 작업자는 재무 보고서의 최종 목적지가 데이터베이스라고 하더라도 Excel을 계속 사용할 수 있습니다. 간단히 말해 XML이 통합되면 회사의 다른 시스템들이 셀의 이동 여부와 관계 없이 스프레드시트에서 데이터를 직접 사용할 수 있습니다.

InfoPath 2003

InfoPath 2003을 사용하는 팀과 조직들은 풍부한 동적 양식을 쉽게 만들고 처리할 수 있으며 정보 수집 프로세스 또한 효율화할 수 있습니다. InfoPath 양식에는 다음과 같은 장점이 있습니다.

  • InfoPath 양식은 전자 양식이기 때문에 사용자의 응답에 동적으로 적응하도록 디자인되어 더욱 강력하고 유용합니다.

  • 데이터가 전자적 방식으로 수집되므로 종이 양식에서처럼 데이터를 재입력할 필요가 없습니다.

  • InfoPath 양식은 서식있는 텍스트 편집, 철자 확인 등과 같은 문서 기능을 제공합니다.

InfoPath 양식의 역량은 사용 편의성에 그치지 않습니다. InfoPath의 XML 지원은 양식에서 수집된 정보를 다양하고 광범위한 비즈니스 프로세스에 통합하는 것을 가능하게 만들어 줍니다. (이 부분은 아래에서 자세히 다루겠습니다.)

InfoPath는 처음부터 XML과 자연스럽게 호환되도록 디자인되었으며 W3C XML Schema(XSD) 표준을 기반으로 하는 사용자 정의 스키마를 지원합니다. 간단히 말해 InfoPath는 XML 문서를 만들고 편집할 수 있으며, 디자이너와 사용자는 다양한 방식으로 InfoPath의 XML 지원을 활용할 수 있습니다. 예를 들어 양식 디자인을 위한 XML 제작 도구, XML 파일 자체 양식, XSLT 변환에 의해 가능해지는 풍부한 양식 뷰, 데이터 원본 및 백엔드 시스템과의 통합을 더욱 쉽게 만들어 주는 웹 서비스 지원 등으로 활용할 수 있습니다.

InfoPath는 사용하기 쉬운 WYSIWYG 디자인 모드를 제공함으로써 양식 디자이너가 코드를 작성하지 않고도 양식 서식 파일을 만들거나 수정할 수 있도록 해줍니다. 새 양식을 디자인하려면, 디자이너는 빈 양식에 컨트롤을 삽입하기만 하면 됩니다. InfoPath는 배경에서 자동으로 XML 스키마를 만듭니다. (물론 수정이 가능합니다.) 또한 기존 스키마에서도 양식을 만들 수 있는데, 예를 들어 비즈니스 프로세스 워크플로 디자인의 일부인 기존 사용자 정의 스키마가 여기에 해당됩니다. InfoPath 양식은 항상 XML 파일로 저장되며, 이 양식에는 이들을 InfoPath 파일이라고 확인해 주는 특수한 처리 명령이 포함되어 있습니다.

  • 정보 작업자는 서식이 지정된 풍부한 뷰를 통해 InfoPath 양식을 다룰 수 있습니다. InfoPath는 현재 선택된 필드 또는 필드 그룹에 유효한 편집 동작을 제시하여 XML 데이터를 확인된 방식으로 체계적으로 편집합니다. 이러한 체계적인 편집 기능은 요소 및 특성을 보지 않고 풍부한 동적 뷰에 표시된 필드 그룹을 다룸으로써 유효한 XML 요소와 특성을 추가 및 제거할 수 있게 만들어 줍니다.

  • InfoPath는 XML이 등장하기 전에는 해결할 수 없었던 데이터 수집 영역의 문제를 해결할 수 있습니다. 옵션 필드 그룹을 추가하여 크기를 늘릴 수 있는 양식을 제공할 뿐 아니라 XML의 계층적 데이터 모델을 활용함으로써, InfoPath는 워드 프로세서 문서의 유연성을 양식 응용 프로그램의 엄격한 유효성 검사 기능에 추가할 수 있습니다. 정교한 XSLT 변환 기능은 이 솔루션의 필수 요소로서 동적이며 사용하기 쉬운 XML 데이터 뷰를 제공합니다.

InfoPath는 사용자 정의 XML 스키마를 지원하고 웹 서비스와 통합되므로 InfoPath 양식은 백엔드 및 미들티어 시스템을 통합할 수 있습니다. 예를 들어 현재의 비즈니스 프로세스에는 각각의 백엔드, 기간 업무 응용 프로그램과 엄격한 상호 작용을 하고 있는 다수의 프런트엔드 시스템이 관련되어 있을 수 있습니다.

InfoPath를 사용하는 회사들은 여러 백엔드 시스템에 대해 프런트엔드로 역할하는 양식을 디자인함으로써 정보의 흐름을 단순화할 수 있습니다. 나아가 조직에서는 BizTalk Server를 사용하는 풍부한 워크플로를 디자인하고 XML 요소를 바탕으로 비즈니스 논리를 생성할 수 있습니다. 근본적으로 InfoPath는 정보 작업자가 조직의 정보에 직접 연결되도록 도움으로써 작업자의 업무 효율성을 더욱 높여줍니다.

FrontPage 2003

FrontPage 2003은 두 가지 방식으로 XML을 지원하는데 이러한 두 가지 방식은 새로운 방식으로 웹 사이트를 정보와 연결합니다. 첫째, 사이트 디자이너는 SharePoint 목록 또는 다른 XML 데이터 원본의 데이터를 이용하여 라이브 웹 사이트(사용자가 데이터와 상호 작용할 수 있는 웹 사이트)를 만들 수 있습니다. 기타 다른 XML 데이터 원본은 기간 업무 응용 프로그램 또는 타사 서비스의 XML 파일과 XML 서식이 지정된 쿼리 결과 등이 있습니다.

둘째는 XML 데이터 원본으로의 라이브 연결을 만드는 능력과 관련된 것으로, XML 데이터를 볼 수 있는 XSLT(eXtensible Stylesheet Language Transformation) 파일을 생성하고 편집하는 강력한 기능입니다. FrontPage 2003을 통해 사이트 디자이너는 데이터 변환을 만들기 위한 WYSIWYG 도구를 얻게 됩니다. 이 기능은 Microsoft Word 또는 XML 파일 및 XML을 반환하는 URL(Uniform Resource Locators)을 지원합니다. FrontPage 2003에는 XML 데이터 원본을 처리 및 서식 지정하는 데 필요한 모든 도구가 포함되어 있습니다. 또한 사이트 디자이너는 HTML 양식에서 얻은 결과를 XML 파일로 웹 사이트에 저장할 수 있으며, 해당 XML 데이터 파일의 뷰를 만들 수 있습니다.

Access 2003

Access 2003에서 XML을 지원함으로써 다음과 같은 다양하고 중요한 기능을 실현할 수 있게 되었습니다.

  • 관련 테이블 내보내기 Access 데이터베이스는 기본적으로 관계형이므로 일반적으로 보고 데이터는 여러 테이블에 저장됩니다. 예를 들어 판매 주문 목록에는 제품 목록, 주문 내역 및 기타 관련 정보를 담은 테이블의 데이터가 포함될 수 있습니다. 따라서 그 데이터를 내보내려면 관련 테이블들도 내보내야 하는데, Access 2003은 데이터를 XML로 내보내며 관련 세부 사항을 모두 자동으로 포함시킵니다. XML 보고서를 보는 모든 사람들은 모든 관련 테이블에서 모든 데이터에 액세스할 수 있습니다.

  • 게시된 XSD 네임스페이스 가져오기 또는 내보내기 Access 2002에서는 기존의 네임스페이스를 참조하기 때문에 개발자가 XML 스키마의 유효성을 검사하지 못했습니다. 하지만 이제 개발자들은 Access 2003 XML 스키마의 유효성을 검사할 수 있으므로, Microsoft Visual Studio .NET을 사용하여 응용 프로그램을 제작하는 개발자는 Access 2003에서 내보낸 XML 데이터를 활용할 수 있으며 해당 데이터를 더욱 큰 비즈니스 프로세스에 통합할 수 있습니다.

  • 내보내기 및 가져오기에 XSLT 적용 정보 작업자는 XML을 가져오고 내보낼 때 XSL 변환이 사용되도록 지정할 수 있습니다. 이것은 작업자가 데이터와 함께 양식을 XML로 내보낼 수 있다는 것과 해당 데이터를 특정 스키마를 사용하여 제출할 수 있다는 것을 의미합니다.

  • 프레젠테이션 XSL 내보내기 Access 데이터를 XML로 내보내는 정보 작업자는 프레젠테이션 XSL 파일 내보내기를 선택할 수 있습니다. Access 2003은 XSL 데이터를 내보내는 옵션을 제공할 뿐 아니라, 내보내는 데이터에 상응하는 스키마 또한 생성합니다.

    이러한 기능을 사용할 경우 고급 사용자와 개발자들은 Access 2003 데이터를 비즈니스 프로세스에 더욱 긴밀하게 통합할 수 있습니다.

Microsoft Office System의 XML 지원 기능을 최대한 활용하는 방법

XML은 확장이 가능하므로 조직에서 Microsoft Office System의 XML 지원 기능을 적절히 활용하려면 몇 가지 작업을 수행해야 합니다. 예를 들어 문서의 데이터가 매핑할 XML 요소를 정의해야 하며 해당 데이터를 사용할 논리를 정의해야 합니다. 그러나 그 효과를 생각할 때 이러한 추가 작업은 그만한 가치가 있습니다. 아래 섹션에서는 XML과 Microsoft Office System을 사용자의 환경에서 사용하기 위한 일반적인 고려 사항에 대해 설명하고 있습니다.

종속성

XML 요소를 Word 2003 문서로 매핑하려면 유효한 XML 스키마가 디자인되어야 합니다. 문서 서식 파일의 모든 변형을 지원하려면 스키마를 디자인할 때 많은 주의를 기울여야 합니다.

스마트 문서 및 스마트 태그를 위한 스키마 파일과 기타 솔루션 파일은 정보 작업자가 액세스할 수 있는 웹 서버에 저장하는 것이 좋습니다.

상호 운용성

XML 지원은 Microsoft Office System에서 매우 진화된 기능입니다. 스키마와 매핑된 문서는 이전 버전의 Microsoft Office에서도 볼 수 있지만 이전 버전에서 저장되는 경우에는 모든 스키마 정보가 사라지게 됩니다. 이전 버전에서는 XML 스키마 정보를 사용할 수 없습니다.

보안

네임스페이스와 스키마는 비즈니스 프로세스가 어떻게 진행되는지에 대한 훌륭한 사례로 활용될 수 있습니다. 따라서 스키마가 배포되는 방식에 주의하는 것이 좋습니다.

사용자 교육

정보 작업자는 XML 스키마를 어떻게 만드는지 몰라도 됩니다. 일반적으로 회사에서는 특정 문서 유형에 대한 스키마를 만들어서 이를 사용자들에게 배포할 것입니다. 일단 스키마가 첨부되면 정보 작업자들은 자신에게 친숙한 Office 응용 프로그램에서 만든 콘텐트가 실제로는 XML로 태그 처리되어 있다는 사실을 몰라도 됩니다.

결론

Microsoft Office System에서는 사용자 정의 XML 스키마의 지원으로 인해 문서, 데이터베이스 및 기타 응용 프로그램 사이의 정보 교환이 훨씬 간편해졌습니다. 사용자는 자신의 생각과 아이디어를 마음껏 제시할 수 있으며 개발자는 정보를 어떻게 처리할 지에 대해 걱정할 필요가 없습니다. 간단히 말해 Microsoft Office System의 콘텐트는 XML을 활용함으로써 자유롭게 흐르는 액세스 가능한 데이터가 될 수 있는 것입니다.

참고 자료

자세한 내용은 다음 자료를 참조하십시오.

최종 수정일: 2004년 3월 29일