Мне нужно выбрать Property1 и SubProperty2 и удалить любые другие свойства. Мне нужно сделать это будущее доказательством, чтобы любые новые свойства, добавленные в xml, не нарушали проверки. По умолчанию новые поля Iow должны быть удалены.Не удалось выбрать свойства с помощью XSLT
<Root>
<Property1/>
<Property2/>
<Thing>
<SubProperty1/>
<SubProperty2/>
</Thing>
<VariousProperties/>
</Root>
так в моей XSLT Я сделал это:
<xsl:template match="Property1">
<Property1>
<xsl:apply-templates/>
</Property1>
</xsl:template>
<xsl:template match="/Thing">
<SubProperty1>
<xsl:apply-templates select="SubProperty1" />
</SubProperty1>
</xsl:template>
<xsl:template match="*" />
Последняя строка должна раздеться ничего я не определен, чтобы быть выбраны.
Это работает, чтобы выбрать мое свойство1, но всегда выбирает пустой узел для SubProperty. Матч на *, кажется, удаляет более глубокий объект, прежде чем мой матч на них может работать. Я удалил совпадение * и он выбрал мой SubProperty со значением. Итак, как я могу выбрать вспомогательные свойства и все еще удалить все, что я не использую.
Спасибо за консультацию.
Nevermind ... Я понял, как делать то, что мне нужно ... – user1549583