This should do itDECLARE @Sample TABLE ( GalaxyID INT, ObjectID VARCHAR(16), ObjectType VARCHAR(5), ObjectTitle VARCHAR(200) )INSERT @SampleSELECT 1, 'T022520001611242', 'Topic', 'Business Strategy' UNION ALLSELECT 1, 'T021320001145243', 'Topic', 'Decision Making' UNION ALLSELECT 1, 'T8150310322032', 'Topic', 'New Growth' UNION ALLSELECT 1, 'T97200019493829', 'Topic', 'Marketing Strategy' UNION ALLSELECT 2, 'T1210018575047', 'Topic', 'Strategic Relationships' UNION ALLSELECT 2, 'T1027001655860', 'Topic', 'Globalization' UNION ALLSELECT 2, 'T95200015582307', 'Topic', 'Strategic Sourcing' UNION ALLSELECT 2, 'T021120001714561', 'Topic', 'Business Processes & Architectures' UNION ALLSELECT 3, 'T011820001527219', 'Topic', 'Business Models' UNION ALLSELECT 3, 'T022520001622334', 'Topic', 'Venture Capital Processes' UNION ALLSELECT 3, 'T524200010114538', 'Topic', 'Entrepreneurial Thinking' UNION ALLSELECT 3, 'T011820001524538', 'Topic', 'Drivers of Change & Growth'-- Display the XMLSELECT s.GalaxyID AS [@Id], ( SELECT x.ObjectID AS [@Id], x.ObjectType AS [@Type], x.ObjectTitle AS [Title] FROM @Sample AS x WHERE x.GalaxyID = s.GalaxyID FOR XML PATH('Object'), TYPE )FROM ( SELECT GalaxyID FROM @Sample GROUP BY GalaxyID ) AS sFOR XML PATH('Galaxy'), ROOT('Universe')
E 12°55'05.63"N 56°04'39.26"