Sintaxis XML de las fuentes de distribución de datos
Un enfoque para pasar los datos XML a los libros PowerPivot es compilar un servicio de datos o aplicación web que vierte los datos XML en un formato y estructura que se usan con facilidad en PowerPivot para Excel.PowerPivot para Excel contiene un lector integrado de fuente de distribución de datos integrado que puede analizar estructuras XML que cumplen con el formato de sindicación de datos de Atom 1.0 descrito en RFC4287.
Aunque puede usar una variedad de herramientas y aplicaciones para generar una fuente de distribución de datos, los programadores que compilan un servicio de datos que está basado en el formato de Atom de ADO.NET Data Services 3.5.1 crearán fuentes totalmente compatibles con PowerPivot para Excel. Los siguientes productos y tecnologías admiten la generación de fuentes de Atom basadas en el formato de ADO.NET Atom:
ADO.NET Data Services
Windows Communication Foundation (WCF)
Fuentes de SharePoint 2010 Atom
Fuentes de SQL Server 2008 R2 Reporting Services Atom
Programadores que usan otras herramientas o enfoques necesitarán conocer la forma de estructurar una respuesta XML válida que pueda ser procesada por el lector de la fuente de distribución de datos que está integrada en PowerPivot para Excel. En este tema se describen las partes de la sintaxis de Atom 1.0 que son compatibles con los libros PowerPivot.
Para obtener más información acerca de cómo utilizar ADO.NET Data Services para generar fuentes de distribución de datos de otros orígenes de datos, vea Uso de ADO.NET Data Services y el formato de Atom en el sitio web de Microsoft.
Imaginarse la carga de datos
Antes de bucear en los detalles de la sintaxis XML, ayuda visualizar cómo los datos se presentan en el área de trabajo de PowerPivot después de una operación de importación. Un origen de datos PowerPivot está compuesto por datos tabulares que están organizados en filas y columnas en un diseño familiar de cuadrícula. Al importar los datos estructurados de Atom 1.0, el conjunto de resultados incluye elementos de datos integrados que se encuentran en cualquier fuente de distribución de Atom, y datos personalizados que contienen datos comerciales o industriales que los analistas desean usar. Considere el siguiente ejemplo, que muestra elementos de datos de Atom integrados en negrita, y elementos de datos personalizados usados para presentar datos de una base de datos de recursos humanos internos en cursiva:
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 |
El ejemplo anterior se puede usar para mostrar los siguientes puntos clave:
Los campos integrados podrían formar parte del conjunto de resultados. Los campos como id., title y updated se especifican en la sintaxis de Atom 1.0 y son parte necesaria de la fuente. Sin embargo, puede usar un parámetro de conexión de fuente de distribución de datos denominado "Include Atom Elements" para incluir o excluir los campos. Dependiendo de cómo configure el parámetro, los usuarios pueden esperar ver estos campos en el área de trabajo de PowerPivot una vez importada la fuente. Después de importar una fuente, los usuarios pueden eliminar los campos de Atom si no son significativos dentro del contexto del origen de datos.
Los campos de contenido personalizado se pueden usar para devolver cualquier dato que sea útil en un libro PowerPivot. En la mayor parte de los casos, la mayoría de los datos de la carga está formada por contenido personalizado.
Estructura XML de la carga del ejemplo
Una fuente de distribución de datos de Atom 1.0 incluye datos XML tabulares con una combinación de elementos integrados y elementos de contenido personalizados. Los elementos integrados proporcionan metadatos esenciales usados para procesar. Los datos personalizados incluyen los datos empresariales que desea poner a disposición de la fuente de distribución. Cada fila en un conjunto de datos tabular incluye elementos integrados y personalizados.
El siguiente ejemplo muestra un sencillo documento de datos de Atom 1.0 que proporciona dos filas de datos del ejemplo anterior. Los elementos de Atom integrados se indican en el tipo de letra negrita.
<?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>
Referencia de XML
Los datos o servicio web debe devolver un documento XML correcto que contiene <feed>, <entry>y estructuras de datos <content>. Estos elementos se asignan a la estructura de tabla, estructura de fila y valores de datos que aparecen en una tabla en el área de trabajo de PowerPivot una vez importada una fuente de distribución de datos.
Las normas de Atom no incluyen indicaciones para pasar información del esquema a un cliente que usa la carga XML. Sin embargo, un enfoque práctico para asegurarse de que las definiciones de datos se proporcionan a una aplicación cliente es especificar atributos de datos como atributos XML. La información del esquema acerca del tipo de datos, formato y otros atributos de columna se genera dependiendo de las descripciones que se incrustan en los elementos de datos XML. Los atributos en cada elemento determinan si una columna contiene datos numéricos o de texto.
Elemento Feed
El elemento Feed es un contenedor para metadatos y datos. Describe la tabla que se creará en el libro PowerPivot. El siguiente ejemplo muestra la sintaxis del elemento Feed como lo usa PowerPivot para 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>
Sintaxis
Elemento o atributo |
Obligatorio |
Descripción |
---|---|---|
<feed xmlns= > |
No |
El atributo xmlns se usa para resolver conflictos de nombre de elemento. Por ejemplo, si tiene dos elementos <id>, puede prefijar un espacio de nombres que identifique cada uno, donde <atom:id> haga referencia a la columna integrada y <adventureworks:id> haga referencia a un identificador en un conjunto de datos de Adventure Works. Si necesita eliminar la ambigüedad de los campos de Atom de otros campos que comparten el mismo nombre, puede agregar el espacio de nombres de Atom al elemento Feed (xmlns = "http://www.w3.org/2005/Atom") y, a continuación, usar el prefijo de Atom para identificar el elemento (por ejemplo, Atom:id, Atom:title, Atom:updated). |
<title> |
Sí |
El elemento title contiene una cadena de texto. Tal y como se usa en una fuente de distribución de datos de PowerPivot, especifica el nombre de la tabla que se crea en el espacio de trabajo de PowerPivot cuando se importa la fuente de distribución de datos a PowerPivot para Excel. En tiempo de ejecución, el valor para el elemento <title> se lee del documento de servicio de datos en el sitio de SharePoint. |
<id> |
Sí |
El elemento id identifica una instancia de la fuente de distribución de manera única y permanente. Este valor son metadatos solo para uso interno. No aparece en una tabla en el área de trabajo de PowerPivot ni en páginas de aplicaciones en el sitio de SharePoint. En una fuente de distribución de datos de PowerPivot, este valor se usa al comparar instancias pasadas y futuras de la misma fuente con fines de actualización de datos. Este valor debe ser un URI o IRI. El valor distingue mayúsculas de minúsculas. |
<updated> |
Sí |
El elemento updated especifica una fecha u hora en la que se modificó la fuente de distribución de datos. Este valor son metadatos solo para uso interno. No aparece en una tabla en el área de trabajo de PowerPivot ni en páginas de aplicaciones en el sitio de SharePoint. En una fuente de distribución de datos de PowerPivot, este valor se usa al comparar instancias pasadas y futuras de la misma fuente con fines de actualización de datos. Este valor debe ser una marca de fecha y tiempo válida. |
Elementos secundarios omitidos de fuente
PowerPivot para Excel omite todos los otros elementos que se definen para el elemento <entry> en el formato de sindicación de Atom 1.0. Incluye lo siguiente:
<Categoría>
<Colaborador>
<Generador>
<Icono>
<Vínculo>
<Logotipo>
<Derechos>
<Subtítulo>
<extensionElement>
Elemento de entrada
El elemento <entry> contiene una fila de datos. El siguiente ejemplo muestra la sintaxis del elemento <entry> según la usa PowerPivot para Excel.
<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>
Sintaxis
Elemento o atributo |
Obligatorio |
Descripción |
---|---|---|
<id> |
Sí |
El elemento id identifica una instancia de la fila de manera única y permanente. Se usa este valor al comparar otras instancias de la misma fila, normalmente durante la actualización de datos. Este valor aparece en una fila de una tabla de PowerPivot. Este valor debe ser un URI o IRI. El valor distingue mayúsculas de minúsculas. |
<title> |
Sí |
El elemento title especifica un nombre de una fila que se creó en una tabla de PowerPivot cuando se importó la fuente de distribución de datos a.PowerPivot para Excel. Se debe especificar el elemento, pero no requiere un valor. Por ejemplo, el siguiente elemento tiene sintaxis válida de Atom 1.0: <title type="text" /> |
<updated> |
Sí |
El elemento updated especifica una fecha u hora en la que se modificó la fuente de distribución de datos. El valor aparece en una tabla en el área de trabajo de PowerPivot o en páginas de aplicaciones en el sitio de SharePoint. |
<content> |
Sí |
Este elemento no se requiere en sintaxis de Atom 1.0 pero es necesario que pase datos a una tabla del espacio de trabajo de PowerPivot. Contiene los datos personalizados que desea usar. No hay ningún esquema que define las estructuras de datos. El esquema se genera dinámicamente durante una operación de importación basada en los atributos y elementos. Dentro de cada elemento <content> hay información que se usa para derivar nombres de columna y tipo de datos. |
Esquema derivado para el contenido personalizado
Las fuentes de distribución de datos contienen datos autónomos que se procesan como un documento completo. Como tal, no hay ninguna búsqueda independiente de los esquemas. En su lugar, debe incrustar definiciones de datos dentro de las estructuras XML en sí.
Considere el siguiente fragmento XML del ejemplo anterior. Observe que el tipo de datos se especifica como un atributo.
<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>
Elementos secundarios omitidos de entrada
PowerPivot para Excel omite todos los otros elementos que se definen para el elemento <entry> en el formato de sindicación de Atom 1.0. Incluye lo siguiente:
<Categoría>
<Colaborador>
<Vínculo>
<Publicado>
<Derechos>
<Origen>
<Resumen>
<extensionElement>