An operation of concatenation is introduced for graphs. Then strings are viewed as expressions denoting graphs, and string languages are interpreted as graph languages. For a class K of string languages, Int(K) is the class of all graph languages that are interpretations of languages from K. For the class REG of regular languages, Int(REG) might be called the class of regular graph languages; it equals the class of graph languages generated by linear Hyperedge Replacement Systems. Two characterizations are given of the largest class K such that Int(K ) = Int(K). Context-free graph languages are generated by context-free graph grammars, which are graph replacement systems. One of the most popular types of context-free graph grammar is the Hyperedge Replacement System, or HR grammar (see, e.g., [9]). A completely different way of generating graphs (introduced in [1]) is to select a number of graph operations, to generate a set of expressions (built from these operations), and to interpr...