What Keiss was saying is that you need to change the offending characters in the called macro. Your original query is fine: /w gm ?{choose a spell | @{repeating_spells_$0_spellname11}, @{repeating_spells_$0_spellmacro11} | @{repeating_spells_$1_spellname11}, @{repeating_spells_$1_spellmacro11} } But in the sheet, for the spell macro field, you'll need to change the , | and } there as required for nested queries. For example if you add the default level 0 divine spell of 'cure minor wounds' you get the following macro auto-populated: &{template:DnD35StdRoll} {{spellflag=true}} {{name=@{character_name} }} {{subtags=casts [Cure Minor Wounds]( <a href="http://www.dandwiki.com/wiki/Cure_minor_wounds" rel="nofollow">http://www.dandwiki.com/wiki/Cure_minor_wounds</a> ).}} {{School:= Conj(Healing)}} {{Level:= Cleric 0}} {{Cmpnts:=V,S}} {{Casting Time:=1 std action}} {{Range:= Touch}} {{Target:= Creature touched}} {{Duration:= Instantaneous}} {{Saving Throw:= Will Save(half) when used vs Undead}} {{Spell Resist.:= Undead can use spell resistance}} {{ Caster level check: = [[1d20+@{casterlevel}+@{spellpen}]] vs spell resistance.}} {{compcheck= Conc:[[{1d20 +[[@{concentration}]] }>?{Concentration DC=15+Spell Level or 10+Damage Received|16}]] }} {{succeedcheck=Success! She casts her spell!}} {{failcheck=She fails :( }} {{notes= ?{Recipient's name|@{character_name}} receives 1 heath (or 1 point of damage if an undead creature) }} You'd need to change that macro to read: &{template:DnD35StdRoll&#125; {{spellflag=true&#125;&#125; {{name=@{character_name} &#125;&#125; {{subtags=casts [Cure Minor Wounds](<a href="http://www.dandwiki.com/wiki/Cure_minor_wounds" rel="nofollow">http://www.dandwiki.com/wiki/Cure_minor_wounds</a> ).&#125;&#125; {{School:= Conj(Healing)&#125;&#125; {{Level:= Cleric 0&#125;&#125; {{Cmpnts:=V&#44;S&#125;&#125; {{Casting Time:=1 std action&#125;&#125; {{Range:= Touch&#125;&#125; {{Target:= Creature touched&#125;&#125; {{Duration:= Instantaneous&#125;&#125; {{Saving Throw:= Will Save(half) when used vs Undead&#125;&#125; {{Spell Resist.:= Undead can use spell resistance&#125;&#125; {{ Caster level check: = [[1d20+@{casterlevel}+@{spellpen}]] vs spell resistance.&#125;&#125; {{compcheck= Conc:[[{1d20 +[[@{concentration}]] &#125;>?{Concentration DC=15+Spell Level or 10+Damage Received&amp;#124;16&amp;#125;]] &#125;&#125; {{succeedcheck=Success! She casts her spell!&#125;&#125; {{failcheck=She fails :( &#125;&#125; {{notes= ?{Recipient's name&amp;#124;@{target|character_name}&amp;#125; receives 1 heath (or 1 point of damage if an undead creature) &#125;&#125; Then the query used to call it won't break at the first , | or } it finds in the macro... hope that helps.