Given
<xsl:key name="id" match="Item" use="@id"/>
you could use <xsl:variable name="uniqueItems" select="/Items/Item[not(key('id', @id)[2])]"/>
.
Or use for-each-group
to find groups of single items:
<xsl:variable name="uniqueItems" as="element(Item)">
<xsl:for-each-group select="/Items/Item" group-by="@id">
<xsl:if test="not(current-group()[2])">
<xsl:sequence select="."/>
</xsl:if>
</xsl:for-each-group>
</xsl:variable>
If you want to eliminate duplicates then with
<xsl:variable name="uniqueItems" as="element(Item)">
<xsl:for-each-group select="/Items/Item" group-by="@id">
<xsl:sequence select="."/>
</xsl:for-each-group>
</xsl:variable>