В этом случае я бы использовал пользовательский XSLT - либо с помощью функции сценариев , либо заменив всю карту пользовательским файлом XSLT (в зависимости от того, как выглядит остальная часть вашей карты).
Решение может выглядеть примерно так.
XML
<Persons>
<Person>
<FirstName>abc</FirstName>
<Bsn>2345467</Bsn>
</Person>
</Persons>
XSLT
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="Persons">
<Persons>
<xsl:apply-templates select="Person" />
</Persons>
</xsl:template>
<xsl:template match="Person">
<Person>
<properties>
<xsl:apply-templates select="*" mode="properties" />
</properties>
</Person>
</xsl:template>
<xsl:template match="node()" mode="properties">
<property>
<propertyname>
<xsl:value-of select="local-name()"/>
</propertyname>
<propertyvalue>
<xsl:value-of select="."/>
</propertyvalue>
</property>
</xsl:template>
</xsl:stylesheet>
Результат
<?xml version="1.0" encoding="utf-8"?>
<Persons>
<Person>
<properties>
<property>
<propertyname>FirstName</propertyname>
<propertyvalue>abc</propertyvalue>
</property>
<property>
<propertyname>Bsn</propertyname>
<propertyvalue>2345467</propertyvalue>
</property>
</properties>
</Person>
</Persons>