If you're a programmer you'll understand - you can't argue generally about a class because of the properties of an instance of that class.
I see where you've gone astray: law is made on a case-by-case basis in the USA. The USA has a "common law" system (https://en.wikipedia.org/wiki/Common_law) where precedent (https://en.wikipedia.org/wiki/Precedent) is overwhelmingly important.
If I understand correctly, the FBI was attempting to set a precedent, using an instance that has lots of emotional appeal ("Terrorism!") and they were really working that emotional aspect ("Couldn't look the survivors in the eye") hard. Once that precedent is set, the USA's legal system would require some new laws to make the precedent go away (in a legal sense). The FBI could at the least operate under the legality of the precedent until the new law(s) take effect, if such new laws get made. They often don't, and the USA just rides on the precedent.