 <p>Your data is stored in elements, not attributes, and you forgot to add <code>DeliveryPackage</code> node into the xpath:</p> <pre><code>select T.C.value('Action[1]', 'nvarchar(128)') as [Action], T.C.value('SupplierID[1]', 'nvarchar(128)') as SupplierID, T.C.value('(Identity/POI_Entity_ID)[1]', 'nvarchar(128)') as POI_Entity_ID from @XML.nodes('DeliveryPackage/POI') as T(C) </code></pre> <p>Or, if you want to use <code>openxml</code>:</p> <pre><code>declare @hDoc int exec dbo.sp_xml_preparedocument @hDoc output, @XML select [Action],SupplierID,Poi_Entity_Id from openxml(@hDoc, 'DeliveryPackage/POI') with ( [Action] [varchar](50) 'Action[1]', SupplierID [int] 'SupplierID[1]', Poi_Entity_Id [varchar](100) '(Identity/POI_Entity_ID)[1]' ) exec dbo.sp_xml_removedocument @hDoc </code></pre>