> - An URI is a string, despite its special arrangement of characters and > set of rules.
Hmm, isn't that kind of self-definition, though? To me, a URI "is," if it is any one non-OO thing, a struct with enum, and char[] members (and some const members for the separators). It isn't just a char[]. I'm speaking conceptually as far as it integrates into code. I mean, a DNS zone entry "is" a String, too... but it has well-known component parts that have entirely distinct "horizontal" purposes within a DNS server. (Maybe this is a bad example, it's just the first one that came to me.) The browser expects the user to enter the serialized version all the time (after all, it is not an IDE), but that doesn't stop the Location object from being a more OO beast. It's not as if there's any way for a client or server to just chomp down on the entire thing without looking at the individual members. > You'd really need to run toString() everytime you're going to > pass it. Me, I wouldn't have a problem with that! I think that would be educational for anyone who chose to use such a class... if someone didn't want the education, then just use String stuff instead of an object. --Sandy
