(:) is a constructor. For example, you can define lists as:
data List a = Nil | Cons a (List a)
GHC does some magic to provide us with the same definition, but with Nil replaced by [] and Cons replaced by (:).
As constructors can be pattern matched on, you can also match on a (:), which is a data constructor.
You might consider (x:xs) as a tuple, only if you're willing to consider (Cons x xs) as a tuple. It is a tuple (ordered collection of two values), but not a tuple according to their definition in haskell.
What kind of tuple are you talking about?
Hope this helps.