I'm not clear on what should be a comment vs. what should be an answer, but I'll add to what's already been said the following.
From a computer science perspective, which is probably influenced by category theory, I think your $Y$ (bullet 2) is commonly called the codomain. Also, at least in the context of functional languages, the $\rightarrow$ in $f : X \rightarrow Y$ indicates "function from". In text (if not in code) the notation mentioned by @dtldarek (which I don't know how to encode in latex) is often used to indicate a partial function and functions are usually assumed to be total (modulo termination) unless the context is made clear.
You can read ":" to mean "has type". So you can read $f : X \rightarrow Y$ as $f$ has the type of (total, depending on context) function from domain $X$ to codomain $Y$. In this sense, you might see (general) relations as $R : X \times Y$ or $R \subseteq X \times Y$ -- $R$ has the type (or is a subset of) $X \times Y$. I have been corrected on the ":" notation for relations in mathematical contexts, so it is probably peculiar to computer science.
EDIT: As pointed out in the comments, I am no longer so sure about the $\colon$ notation for relations. At any rate, I agree that $\subseteq$ is probably clearer. The point I was inelagantly trying to make was that I do not think the $\rightarrow$ notation is usually used for (general) relations.
Finally, I believe even the ordered triple notation $(f,X,Y)$ for a function $f$ usually assumes a total function (i.e. $X$ is the domain as in bullet 3) into codomain $Y$, unless it is clear from the context.