The following script fails to create the path with refid 'c'. <?xml version="1.0" encoding="UTF-8"?> <project> <!-- (a) Make a path without any expansion --> <path id="a"> <pathelement location="${user.home}"/> </path> <property name="aPath" refid="a"/> <echo message="aPath=${aPath}"/> <!-- (b) Make a path inside a macro using macro attribute expansion to get the path id --> <macrodef name="make-path"> <attribute name="pathId"/> <sequential> <path id="@{pathId}"> <pathelement location="${user.home}"/> </path> </sequential> </macrodef> <make-path pathId="b"/> <property name="bPath" refid="b"/> <echo message="bPath=${bPath}"/> <!-- (c) Make a path using property expansion to get the path id --> <property name="cName" value="c"/> <path id="${cName}"> <pathelement location="${user.home}"/> </path> <property name="cPath" refid="c"/> <echo message="cPath=${cPath}"/> </project>