IDK. But why do have a setup for , which does not appear in your xml source (shouldn't it be ?)? Von: Hans van der Meer via ntg-context Gesendet: Sonntag, 3. September 2023 14:11 An: NTG ConTeXt Cc: Hans van der Meer Betreff: [NTG-context] ifxmlselfempty Is it possible that the new \ifxmlselfempty has reversed its outcome? Or did I something wrong in this MWE? Here an MWE. yours sincerely dr. Hans van der Meer \startbuffer[test] !not empty node! \stopbuffer \startxmlsetups xml:mysetups \xmlsetsetup{\xmldocument}{something|emptynode|notemptynode}{xml:*} \stopxmlsetups \xmlregistersetup{xml:mysetups} \startxmlsetups xml:emptynode node=\xmltag{#1}:\crlf ifxmlselfempty-else-fi:\space \ifxmlselfempty{#1} attribute = \xmlatt{#1}{value} \else content = \xmlflush{#1} \fi \crlf ifxmlselfempty-else-fi reversed:\space \ifxmlselfempty{#1} content = \xmlflush{#1} \else attribute = \xmlatt{#1}{value} \fi \blank \stopxmlsetups \startxmlsetups xml:notemptynode node=\xmltag{#1}:\crlf ifxmlselfempty-else-fi:\space \ifxmlselfempty{#1} attribute = \xmlatt{#1}{value} \else content = \xmlflush{#1} \fi \crlf ifxmlselfempty-else-fi reversed:\space \ifxmlselfempty{#1} content = \xmlflush{#1} \else attribute = \xmlatt{#1}{value} \fi \blank \stopxmlsetups \startxmlsetups xml:something \xmlall{#1}{./emptynode}\blank \xmlall{#1}{./notemptynode}\blank \stopxmlsetups \starttext \ConTeXt\ \contextversion\blank \xmlprocessbuffer{main}{test}{} \stoptext