Partial:
--CREATE SCHEMA [cpqa]
USE [cpqaAnswers]
GO
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[cpqa].[tblIK]') AND type in (N'U'))
DROP TABLE [cpqa].[tblIK]
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[cpqa].[tblIKIdx]') AND type in (N'U'))
DROP TABLE [cpqa].[tblIKIdx]
CREATE TABLE [cpqaAnswers].[cpqa].[tblIK](
[xml_in][xml]
)
CREATE TABLE [cpqaAnswers].[cpqa].[tblIKIdx](
[idx][int]IDENTITY(1,1) NOT NULL,
[xml_in][xml]
)
INSERT INTO [cpqaAnswers].[cpqa].[tblIK]
SELECT * FROM OPENROWSET(BULK 'C:\Users\IK\logical.xml', SINGLE_BLOB) AS [whatever]
INSERT INTO [cpqaAnswers].[cpqa].[tblIKIdx]
SELECT [xml_in] FROM [cpqaAnswers].[cpqa].[tblIK]
Single "record" as XML, indexed ...
SELECT * FROM [cpqaAnswers].[cpqa].[tblIKIdx]
The SQL2008 part anyway ...
[edit]
For the re-output part certain things have to be known about the "root" obviously; looking at the XML used for input in logical.xml ... Something like this then:
SELECT [xml_in] FROM [cpqaAnswers].[cpqa].[tblIKIdx]
FOR XML PATH('kangaroo'), ROOT('Root')
[End edit]]