데이터 피드 XML 구문
XML 데이터를 PowerPivot 통합 문서로 이동하기 위한 방법 중 하나는 PowerPivot for Excel에서 쉽게 사용할 수 있는 형식과 구조로 XML 데이터를 스트리밍하는 데이터 서비스나 웹 응용 프로그램을 빌드하는 것입니다. PowerPivot for Excel에는 RFC4287에 설명된 Atom 1.0 데이터 배포 형식을 따르는 XML 구조를 구문 분석할 수 있는 기본 제공 데이터 피드 판독기가 포함되어 있습니다.
다양한 도구와 응용 프로그램을 사용하여 데이터 피드를 생성할 수 있지만 ADO.NET Data Services 3.5.1 Atom 형식 기반의 데이터 서비스를 빌드하는 프로그래머는 PowerPivot for Excel에서 완벽하게 지원되는 피드를 만들 수 있습니다. 다음 제품과 기술에서 ADO.NET Atom 형식을 기반으로 하는 Atom 피드 생성을 지원합니다.
ADO.NET Data Services
WCF(Windows Communication Foundation)
SharePoint 2010 Atom 피드
SQL Server 2008 R2 Reporting Services Atom 피드
다른 도구나 방법을 사용하는 프로그래머는 PowerPivot for Excel의 기본 제공 데이터 피드 판독기에서 처리 가능한 올바른 XML 응답을 구성하는 방법을 알아야 합니다. 이 항목에서는 PowerPivot 통합 문서에 대해 지원되는 Atom 1.0 구문에 대해 설명합니다.
ADO.NET Data Services를 사용하여 다른 데이터 원본에서 데이터 피드를 생성하는 방법은 Microsoft 웹 사이트의 Microsoft ADO.NET Data Services 사용(Using Microsoft ADO.NET Data Services) 및 Atom 형식을 참조하십시오.
데이터 페이로드에 대한 설명
XML 구문의 세부 사항을 알아보기 전에 가져오기 작업 이후 PowerPivot 작업 영역에 데이터가 어떻게 표시되는지 떠올려 보는 것이 도움이 됩니다. PowerPivot 데이터 원본은 친숙한 모눈 레이아웃에 행과 열로 정렬된 테이블 형식 데이터로 이루어져 있습니다. 구조화된 Atom 1.0 데이터를 가져오면 모든 Atom 피드에 있는 기본 제공 데이터 요소와 분석가가 사용할 업무 또는 산업용 데이터가 포함된 사용자 지정 데이터가 결과 집합에 포함됩니다. 다음 예제를 살펴보십시오. 이 예제에서 기본 제공 Atom 데이터 요소는 굵게 표시되어 있고 내부 인사 데이터베이스의 데이터를 나타내는 데 사용되는 사용자 지정 데이터 요소는 기울임꼴로 표시되어 있습니다.
id |
title |
updated |
headcount |
Open positions |
Avg. Years in Dept |
http://AW:8080/AWDept/AWDataService.svc/Dept(1) |
Marketing department |
2008-04-18T18:16:30Z |
15 |
2 |
1.5 |
http://AW:8080/AWDept/AWDataService.svc/Dept(2) |
Production department |
2008-04-18T18:16:30Z |
26 |
3 |
4 |
위의 예제를 통해 다음과 같은 주요 사항을 설명할 수 있습니다.
기본 제공 필드가 결과 집합에 포함될 수 있습니다. id, title 및 updated와 같은 필드는 Atom 1.0 구문에서 지정되며 피드의 필수 부분입니다. 그러나 "Include Atom Elements"라는 데이터 피드 연결 매개 변수를 사용하여 필드를 포함하거나 제외할 수 있습니다. 이 매개 변수를 구성하는 방법에 따라 피드를 가져온 후 사용자가 PowerPivot 작업 영역에서 이들 필드를 볼 수 있는지 여부가 결정됩니다. 피드를 가져온 후 사용자는 데이터 원본 컨텍스트 내에서 의미가 없는 Atom 필드를 삭제할 수 있습니다.
사용자 지정 콘텐츠 필드는 PowerPivot 통합 문서에서 유용한 데이터를 반환하는 데 사용할 수 있습니다. 대부분의 경우 페이로드 데이터 중 많은 부분이 사용자 지정 콘텐츠로 구성되어 있습니다.
예제 페이로드의 XML 구조
Atom 1.0 데이터 피드는 기본 제공 요소와 사용자 지정 콘텐츠 요소의 조합이 포함된 XML 테이블 형식 데이터를 포함합니다. 기본 제공 요소는 처리에 사용되는 필수 메타데이터를 제공합니다. 사용자 지정 데이터는 피드에서 사용할 업무 데이터를 포함합니다. 테이블 형식의 데이터 집합에 있는 각 행에는 기본 제공 요소와 사용자 지정 요소가 모두 포함됩니다.
다음 예제에서는 이전 예제의 데이터 중 두 개 행을 제공하는 간단한 Atom 1.0 데이터 문서를 보여 줍니다. 기본 제공 Atom 요소는 굵게 표시되어 있습니다.
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title type="text">Departments</title>
<id>http://Adventure-works:8080/AW/AWDataService.svc/Department</id>
<updated>2008-04-18T18:16:30Z</updated>
<entry>
<id>http://AW:8080/AWDept/AWDataService.svc/Dept(1)</id>
<title type="text">Marketing department</title>
<updated>2008-04-18T18:16:30Z</updated>
<content type="application/xml">
<d:headcount type="int">15</d:headcount>
<d:openpositions type="int">2</d:openpositions>
<d:yrsinposition type="int">1.5</d:yrsinposition>
</content>
</entry>
<entry>
<id>http://AW:8080/AWDept/AWDataService.svc/Dept(2)</id>
<title type="text">Production department</title>
<updated>2008-04-18T18:16:30Z</updated>
<content type="application/xml">
<d:headcount type="int">26</d:headcount>
<d:openpositions type="int">3</d:openpositions>
<d:yrsinposition type="int">4</d:yrsinposition>
</content>
</entry>
</feed>
XML 참조
데이터 또는 웹 서비스는 <feed>, <entry> 및 <content> 데이터 구조가 포함된 올바른 형식의 XML 문서를 반환해야 합니다. 데이터 피드를 가져오면 이러한 요소가 PowerPivot 작업 영역의 테이블에 나타나는 테이블 구조, 행 구조 및 데이터 값에 매핑됩니다.
Atom 표준에는 XML 페이로드를 사용하는 클라이언트에 스키마 정보를 전달하는 기능이 포함되어 있지 않습니다. 그러나 클라이언트 응용 프로그램에 데이터 정의를 제공할 수 있는 현실적인 방법은 데이터 특성을 XML 특성으로 지정하는 것입니다. 데이터 형식, 서식 및 기타 열 특성에 대한 스키마 정보는 XML 데이터 요소에 포함된 설명을 기반으로 생성됩니다. 각 요소의 특성은 열에 숫자가 포함되는지 아니면 텍스트 데이터가 포함되는지를 결정합니다.
Feed 요소
Feed 요소는 메타데이터 및 데이터에 대한 컨테이너입니다. 이 요소는 PowerPivot 통합 문서에 만들어질 테이블을 설명합니다. 다음 예제에서는 PowerPivot for Excel에서 사용되는 피드 요소의 구문을 보여 줍니다.
<feed xmlns="http://www.w3.org/2005/Atom">
<title type="text">My Table Name</title>
<id>http://UniversalResourceIdentifier/identifiesthisfeed</id>
<updated>2008-10-31:09:23:34:1832</updated>
<entry />
</feed>
구문
요소 또는 특성 |
필수 여부 |
설명 |
---|---|---|
<feed xmlns= > |
아니요 |
xmlns 특성은 요소 이름 충돌을 해결하는 데 사용됩니다. 예를 들어 두 개의 <id> 요소가 있는 경우 각각을 식별하는 네임스페이스를 접두사로 사용할 수 있습니다. 즉, <atom:id>는 기본 제공 열을 나타내고 <adventureworks:id>는 Adventure Works 데이터 집합의 식별자를 나타낼 수 있습니다. 기본 제공 Atom 필드를 동일한 이름을 공유하는 다른 필드와 구분해야 하는 경우 Atom 네임스페이스를 피드 요소에 추가(xmlns="http://www.w3.org/2005/Atom")한 다음 atom 접두사를 사용하여 요소를 식별할 수 있습니다(예: atom:id, atom:title, atom:updated). |
<title> |
예 |
title 요소는 텍스트 문자열을 포함합니다. 이 요소는 PowerPivot 데이터 피드에서 사용되므로 데이터 피드를 PowerPivot for Excel로 가져올 때 PowerPivot 작업 영역에 만들어지는 테이블의 이름을 지정합니다. <title> 요소의 값은 런타임에 SharePoint 사이트의 데이터 서비스 문서에서 읽어옵니다. |
<id> |
예 |
id 요소는 피드 인스턴스를 고유하고 영구적으로 식별합니다. 이 값은 내부 전용 메타데이터입니다. 이 요소는 PowerPivot 작업 영역의 테이블이나 SharePoint 사이트의 응용 프로그램 페이지에 나타나지 않습니다. PowerPivot 데이터 피드에서 이 값은 데이터 새로 고침을 위해 동일한 피드의 미래 및 과거 인스턴스를 비교할 때 사용됩니다. 이 값은 URI이거나 IRI여야 하며, 대/소문자를 구분합니다. |
<updated> |
예 |
updated 요소는 데이터 피드가 수정된 날짜나 시간을 지정합니다. 이 값은 내부 전용 메타데이터입니다. 이 요소는 PowerPivot 작업 영역의 테이블이나 SharePoint 사이트의 응용 프로그램 페이지에 나타나지 않습니다. PowerPivot 데이터 피드에서 이 값은 데이터 새로 고침을 위해 동일한 피드의 미래 및 과거 인스턴스를 비교할 때 사용됩니다. 이 값은 유효한 날짜 타임스탬프여야 합니다. |
Feed의 무시되는 자식 요소
Atom 1.0 배포 형식에서 <entry> 요소에 대해 정의된 다른 모든 요소는 PowerPivot for Excel에서 무시됩니다. 여기에는 다음이 포함됩니다.
<Category>
<Contributor>
<Generator>
<Icon>
<Link>
<Logo>
<Rights>
<Subtitle>
<extensionElement>
Entry 요소
<entry> 요소는 데이터 행을 포함합니다. 다음 예제에서는 PowerPivot for Excel에서 사용되는 <entry> 요소의 구문을 보여 줍니다.
<entry>
<id>http://AW:8080/AW/AWDataService.svc/Department(1)</id>
<title type="text" />
<updated>2008-04-18T18:16:30Z</updated>
<content /> ;* contains data
</entry>
구문
요소 또는 특성 |
필수 여부 |
설명 |
---|---|---|
<id> |
예 |
id 요소는 행 인스턴스를 고유하고 영구적으로 식별합니다. 이 값은 일반적으로 데이터를 새로 고치는 동안 동일한 행의 다른 인스턴스를 비교하는 데 사용됩니다. 이 값은 PowerPivot 테이블의 행에 나타납니다. 이 값은 URI이거나 IRI여야 하며, 대/소문자를 구분합니다. |
<title> |
예 |
title 요소는 데이터 피드를 PowerPivot for Excel로 가져올 때 PowerPivot 테이블에 만들어지는 행 이름을 지정합니다. 이 요소는 반드시 지정해야 하지만 값은 지정하지 않아도 됩니다. 예를 들어 다음 요소는 올바른 Atom 1.0 구문입니다. <title type="text" /> |
<updated> |
예 |
updated 요소는 데이터 피드가 수정된 날짜나 시간을 지정합니다. 이 값은 PowerPivot 작업 영역의 테이블이나 SharePoint 사이트의 응용 프로그램 페이지에 나타납니다. |
<content> |
예 |
이 요소는 Atom 1.0 구문에서는 필수 요소가 아니지만 데이터를 PowerPivot 작업 영역의 테이블로 전달하는 데 필요합니다. 이 요소는 사용할 사용자 지정 데이터를 포함합니다. 데이터 구조를 정의하는 스키마는 없습니다. 스키마는 가져오기 작업 동안 특성 및 요소를 기반으로 동적으로 생성됩니다. 각 <content> 요소 내에는 열 이름 및 데이터 형식을 파생하는 데 사용되는 정보가 포함됩니다. |
사용자 지정 콘텐츠에 대해 파생된 스키마
데이터 피드에는 완전한 문서로 처리되는 자치 데이터가 들어 있습니다. 따라서 스키마에 대한 별도 조회 작업이 수행되지 않습니다. 그 대신 XML 구조 자체에 데이터 정의를 포함해야 합니다.
이전 예제에 나와 있는 다음 XML 조각을 살펴보십시오. 데이터 형식이 특성으로 지정된 것을 볼 수 있습니다.
<content type="application/xml">
<d:headcount type="int">15</d:headcount>
<d:openpositions type="int">2</d:openpositions>
<d:yrsinposition type="int">1.5</d:yrsinposition>
</content>
Entry의 무시되는 자식 요소
Atom 1.0 배포 형식에서 <entry> 요소에 대해 정의된 다른 모든 요소는 PowerPivot for Excel에서 무시됩니다. 여기에는 다음이 포함됩니다.
<Category>
<Contributor>
<Link>
<Published>
<Rights>
<Source>
<Summary>
<extensionElement>