Sintaxis de consulta XML para especificar datos de informe XML
Actualizado: 14 de abril de 2006
En Reporting Services, se pueden crear conjuntos de datos para orígenes de datos XML. Después de definir un origen de datos, se crea una consulta para el conjunto de datos. En función del tipo de datos XML a los que señala el origen de datos, la consulta del conjunto de datos se crea incluyendo un elemento XML Query o una ruta de acceso de elemento. Un elemento XML Query empieza con una etiqueta <Query> e incluye espacios de nombres y elementos XML que varían en función del origen de datos. Una ruta de acceso de elemento es independiente del espacio de nombres y especifica qué nodos y atributos de nodo se utilizan de los datos XML subyacentes con una sintaxis del tipo de XPath. Para obtener más información acerca de las rutas de acceso de elemento, vea Sintaxis de ruta de acceso de elemento para especificar datos de informe XML.
Se pueden crear orígenes de datos XML para los siguientes tipos de datos XML:
- Documentos XML a los que señala una dirección URL mediante el protocolo HTTP
- Extremos de servicio Web que devuelven datos XML
- Datos XML incrustados
La forma en que se especifica un elemento XML Query o una ruta de acceso de elemento depende del tipo de los datos XML.
En el caso de los documentos XML, el elemento XML Query es opcional. Si se incluye, puede contener un elemento XML ElementPath. El valor del elemento XML ElementPath utiliza la sintaxis de la ruta de acceso de elemento. Los elementos XML Query y ElementPath se incluyen para procesar los espacios de nombres correctamente cuando los datos XML del origen de datos los necesitan.
Para un extremo de servicio Web al que señala una dirección URL de cadena de conexión, el elemento XML Query define el método del servicio Web, la acción SOAP o ambos. El proveedor de datos XML crea una solicitud de servicio Web que recupera los datos XML que se utilizarán para el informe.
[!NOTA] Cuando un espacio de nombres de servicio Web incluye un carácter de barra diagonal (/), deben incluirse tanto el método del servicio Web como la acción SOAP, de manera que la extensión de procesamiento de datos XML pueda derivar el espacio de nombres correctamente.
En el caso de los documentos XML incrustados, el elemento XML Query define los datos XML incrustados que se van a utilizar, incluye espacios de nombres opcionales y contiene un elemento XML ElementPath opcional.
Especificar parámetros de consulta para datos XML
Puede especificar parámetros de consulta para documentos XML.
- Para solicitudes de dirección URL, los parámetros de consulta se incluyen como parámetros de dirección URL estándar.
- Para solicitudes de servicio Web, los parámetros de consulta se pasan al método del servicio Web. Para definir un parámetro de consulta, utilice la ficha Parámetros del cuadro de diálogo Conjunto de datos. Para obtener más información, vea Conjunto de datos (ficha Parámetros del Diseñador de informes).
Ejemplo
En los ejemplos de la tabla siguiente se muestra cómo se recuperan los datos desde el servicio Web del servidor de informes, un documento XML y datos XML incrustados.
Origen de datos XML | Ejemplo de consulta |
---|---|
Datos XML del servicio Web obtenidos a través del método ListChildren. |
|
Datos XML del servicio Web obtenidos a través de SoapAction. |
|
Documento XML o datos XML incrustados donde se usan espacios de nombres. Elemento de consulta que especifica los espacios de nombres de una ruta de acceso de elemento. |
|
Documento XML incrustado. |
|
Documento XML que utiliza el valor predeterminado. |
No query. La ruta de acceso de elemento se deriva del propio documento XML y es independiente del espacio de nombres. |
[!NOTA] El primer ejemplo de servicio Web muestra el contenido del servidor de informes a través del método ListChildren. Para ejecutar esta consulta, es necesario crear un nuevo origen de datos y establecer la cadena de conexión en https://localhost/reportserver/reportservice2005.asmx. El método ListChildren toma dos parámetros: Item y Recursive. Establezca el valor predeterminado de Item en / y Recursive en 1.
Especificar espacios de nombres
Use el elemento XML Query para especificar los espacios de nombres que se utilizan en los datos XML del origen de datos. En la siguiente consulta XML se utiliza el espacio de nombres sales. Los nodos de elemento XML ElementPath para sales:LineItems
y sales:LineItem
utilizan el espacio de nombres sales.
<Query xmlns:sales=
"https://schemas.microsoft.com/StandardSchemas/ExtendedSales">
<SoapAction>
https://schemas.microsoft.com/SalesWebService/ListOrders
</SoapAction>
<ElementPath>
Customers/Customer/Orders/Order/sales:LineItems/sales:LineItem
</ElementPath>
</Query>
Para especificar el espacio de nombres del proveedor de datos de manera que el espacio de nombres predeterminado permanezca vacío, utilice xmldp. Esto se muestra en el ejemplo siguiente.
Ejemplo
En los ejemplos siguientes se utiliza el documento XML DPNamespace.xml, que se proporciona después de la tabla a modo de ilustración. En esta tabla se muestran dos ejemplos de sintaxis de ruta de acceso de elemento XML que incluye prefijos de espacios de nombres.
Elemento de consulta XML
Campos resultantes en el conjunto de datos
<Query/>
Node
ns
Valor Ahttps://schemas.microsoft.com/...
Valor Bhttps://schemas.microsoft.com/...
Valor Chttps://schemas.microsoft.com/...
<xmldp:Query xmlns:xmldp="https://schemas.microsoft.com/sqlserver/2005/02/reporting/XmlDPQuery" xmlns:ns="https://schemas.microsoft.com/...">
<xmldp:ElementPath>Root {}/ns:Element2/Node</xmldp:ElementPath>
</xmldp:Query>
Node
Valor D
Valor E
Valor F
Documento XML: DPNamespace.xml
Puede copiar este documento XML y guardarlo en una dirección URL a la que tenga acceso el Diseñador de informes para utilizarlo como un origen de datos XML (por ejemplo, https://localhost/DPNamespace.xml).
<Root xmlns:ns="https://schemas.microsoft.com/...">
<ns:Element1>
<Node>Value A</Node>
<Node>Value B</Node>
<Node>Value C</Node>
</ns:Element1>
<ns:Element2>
<Node>Value D</Node>
<Node>Value E</Node>
<Node>Value F</Node>
</ns:Element2>
</Root>
Vea también
Conceptos
Definir conjuntos de datos de informe para datos XML
Otros recursos
Tutorial: Usar datos XML en un informe
Ayuda e información
Obtener ayuda sobre SQL Server 2005
Historial de cambios
Versión | Historial |
---|---|
14 de abril de 2006 |
|