No, the specification is more complicated, for example elements (and sub-elements recursively) can have transforms applied to them.
Excellent point. Inkscape has (had?) a feature to simplify SVG files, which pushed transformations down the tree. I never needed to use this in an automated process, just the occasional file.