Actually it has 12 electrons that it is holding, 7 from itself, 2 from each of the double bonded oxygens and one from the other, and one from the single bond.
This is possible because Cl can expand its octet, as can all atoms after Sulfur in the periodic table. This is because it can place extra electrons in the 3d subshell, which has not yet been filled. Sorry I can't be more specific than that, as I don't actually know the exact reason for this myself, but I assume it has something to do with it being unstable when the 3rd shell being filled but the 3d sub-shell being left empty.