In this paper we present two approaches to Lindenmayer systems (L-systems): the procedural (or ‘generative’) approach, which focuses on L-systems as string rewriting systems, and a declarative (or ‘model-theoretic’) approach, where the grammar is a set of local admissibility conditions: in this paper, these conditions will be defined over graphs. We contend that it is possible, for a subset of L-systems and the languages they generate, to map superficial regularities in the distribution of symbols at the string level to local tree admissibility conditions, effectively providing a way to link string languages and tree languages in a novel manner. We will work out how to construct structure assuming only superficial constraints on expressions, and define a set of constraints that well-formed expressions of specific L-languages must satisfy. A significant result is that L-systems which are distinguished by methods focused on derivational properties turn out to satisfy the same model: this has consequences for the use of L-systems as probes for human sensitivity to hierarchical structure in Artificial Grammar Learning (AGL) protocols.