Чтобы проверить, является ли первый дочерний узел инструкцией обработки или нет

Я хочу, чтобы фрагмент кода проверял, является ли первый дочерний узел инструкцией обработки или нет?

Например:

<caml:Author>
<?PI-start data="processing instruction"?>
<caml:Leg> test data </caml:Leg>
</caml:Author>

В приведенном выше примере первый дочерний узел тега caml:Author является инструкцией обработки. Как я могу узнать, является ли первый дочерний узел инструкцией обработки?

1 ответ

Решение

Помня, что вы также можете получить комментарии или текстовые узлы (первый дочерний узел в вашем примере - это текстовый узел), тогда, если caml:Author - мой текущий узел, я бы использовал следующее для адресации дочерних узлов:

  test="(processing-instruction() | *)[1][self::processing-instruction()]"

Результат равен true, если первая из инструкции обработки и дочерних элементов является инструкцией обработки.

Другие вопросы по тегам