TODO: - $call, for calling non-idempotent functions, requiring a (potentially empty) list of arguments - $repeat modifier, accepting an array of attributes to repeat the given attribute/function with, the results are an array in the same order - share the top-level properties among all of them - for named repeats, the user can use the alias feature instead? though no way to share properties in that case