Potrzebuję filtrować wyrażenie XPath, aby pobrać tylko określony atrybut, który nie jest pusty.Filtr XPath nie jest pustym elementem potomnym
Próbowałem to:
<xsl:template match="DocumentElement/QueryResults[string(@FileName)]">
a to:
<xsl:template match="DocumentElement/QueryResults[string-length(@FileName)>0]">
ale to nie działa. Muszę ten sam rodzaj danych powracających z wyrażeniem folloing XPath ...
<xsl:template match="DocumentElement/QueryResults">
... ale filtrowane, aby uniknąć elementy z pustego atrybutu @FileName.
Dzięki!
Os, przepraszam, właśnie znalazłem "FileName" isn't i atrybut, ale faktycznie węzeł. Jak mogę sprawdzić, czy nie jest pusty? Dzięki. –
@Marcos - To by wyjaśniało twoje problemy ... Odpowiedź zaktualizowana (po prostu usuń kwalifikator atrybutu @). – Oded
Dzięki, nie jestem specjalistą od XPATH i miałem problemy z dziwnym zachowaniem oprogramowania, którego używam i parsera. Ponieważ dane źródłowe były pobierane przez zapytanie SQL, zastosowałem do niego klauzulę WHERE, zamiast używać filtru w wyrażeniu XPATH. Dziękuję Ci. –