FIXED: Using Variable Names to print the term, when required.

ADDED: Intentional modifications of the variables in pattern are
respected.  Long to explain, but an example follows:

expand_term(xpsfact:_,
  finde_alle(Position, Call, List),
  findall(Element, Call, List),
  ( Call \= _:_,
    arg(Position, Call, Element),
    refactor_context(variable_names, Names),
    ( member(Name=Value, Names), Element==Value-> true;Name='Element'),
    Element='$VAR'(Name)
  ),show).

Note the assignment to Element.