Exemple : spécification de XSINIL avec la directive ELEMENTS
La requête suivante spécifie la directive ELEMENTS pour générer des données XML centrées sur les éléments à partir du résultat de la requête.
Exemple
USE AdventureWorks2012;
GO
SELECT ProductID, Name, Color
FROM Production.Product
FOR XML RAW, ELEMENTS;
GO
Le résultat partiel est le suivant.
<row>
<ProductID>1</ProductID>
<Name>Adjustable Race</Name>
</row>
...
<row>
<ProductID>317</ProductID>
<Name>LL Crankarm</Name>
<Color>Black</Color>
</row>
Comme la colonne Color possède des valeurs NULL pour certains produits, les données XML résultantes ne génèrent pas l'élément <Color> correspondant. En ajoutant la directive XSINIL à ELEMENTS, vous pouvez générer l'élément <Color> même pour les valeurs de couleurs NULL dans le jeu de résultats.
USE AdventureWorks2012;
GO
SELECT ProductID, Name, Color
FROM Production.Product
FOR XML RAW, ELEMENTS XSINIL ;
Voici le résultat partiel :
<row xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ProductID>1</ProductID>
<Name>Adjustable Race</Name>
<Color xsi:nil="true" />
</row>
...
<row>
<ProductID>317</ProductID>
<Name>LL Crankarm</Name>
<Color>Black</Color>
</row>