verifying the short exact sequence of chain complexes formed by a triple $B \subseteq A \subseteq X$ defined in Hatcher's Algebraic Topology Sec2.1 I am verifying the statement:

An easy generalization of the long exact sequence of a pair $(X, A)$ is the long exact sequence of a triple $(X, A, B)$, where $B \subset A \subset X:$
$$
\cdots \rightarrow H_{n}(A, B) \xrightarrow{i_*} H_{n}(X, B) \xrightarrow{j_*} H_{n}(X, A) \xrightarrow{\partial} H_{n-1}(A, B) \rightarrow \cdots
$$
This is the long exact sequence of homology groups associated to the short exact sequence of chain complexes formed by the short exact sequences
$$
0 \rightarrow C_{n}(A, B) \xrightarrow{i} C_{n}(X, B) \xrightarrow{j} C_{n}(X, A) \rightarrow 0
$$

in hatcher's algebraic topology(page 118 at the bottom). Here $C_n(A, B)$ etc means the relative singular $n$-chain in $A$ relative to $B$, other notations have similar meaning.
It does seem to be obvious but I wanna verify it in detail. Here is my approach, please help to see if it's correct, thanks!(It seems the bracket representing for equivalent class is quite ambiguous.)
Proof:
Let $[\alpha] \in C_n(A,B)$ for some $\alpha \in C_n(A)$, define $i([\alpha]) = [\alpha] \in C_n(X,B)$. Then it's well defined: if $[\alpha] = [\beta] \in C_n(A,B)$ for some $\alpha, \beta \in C_n(A)$, then $\gamma = \alpha - \beta$ is in $C_n(B)$. Hence $i([\alpha])=[\alpha]=[\beta]=i([\beta]) \in C_n(X,B)$. For similar argument, $i$ is injective.
Similarly, let $[\alpha] \in C_n(X,B)$ for some $\alpha \in C_n(X)$, define $i([\alpha]) = [\alpha] \in C_n(X,A)$. Then it's well defined: if $[\alpha] = [\beta] \in C_n(X,B)$ for some $\alpha, \beta \in C_n(X)$, then $\gamma = \alpha - \beta$ is in $C_n(B)$. Since $B \subseteq A$, $C_n(B) \subseteq C_n(A)$. Hence $i([\alpha])=[\alpha]=[\beta]=i([\beta]) \in C_n(X,A)$. For similar argument, $j$ is surjective.
$\text{Im}i = \text{Ker}j$: if $[\alpha] \in C_n(X,B)$ is in $\text{Im}i$, then $[\alpha] \in C_n(A, B)$. Hence $\alpha \in C_n(A)$ and $[\alpha] = 0 \in C_n(X,A)$. Hence $\text{Im}i \subseteq \text{Ker}j$. Similarly we have $\text{Im}i \supseteq \text{Ker}j$. Hence they are equal.
So $$
0 \rightarrow C_{n}(A, B) \xrightarrow{i} C_{n}(X, B) \xrightarrow{j} C_{n}(X, A) \rightarrow 0
$$ is a short exact sequence.
And in the long exact sequence, $\partial $ take $[\alpha] \in H_n(X,A)$ to $[\partial \alpha] \in H_{n-1}(A,B)$: $\alpha$ is a relative cycle with $\partial \alpha \in C_{n-1}(A)$ and hence $\partial \alpha$ is a relative cycle in $C_{n-1}(A, B)$ since $\partial^2 (\alpha) = 0$.
$\tag*{$\blacksquare$}$
 A: What you have proved is correct, but partially unncessary.
On p. 118 Hatcher explains that a map of pairs $f : (X,A) \to (Y,B)$ induces a chain map $f_\# : C_n(X,A) = C_n(X)/C_n(A) \to C_n(Y,B) = C_n(Y)/C_n(B)$. You can apply this to the inlusion $\iota : (A,B) \to (X,B)$ and the "identity" $id : (X,B) \to (X,A)$ annd get chain maps
$$i = \iota_\# : C_n(A,B) = C_n(A)/C_n(B) \to C_n(X,B) = C_n(X)/C_n(B), \\ j = id_\# : C_n(X,B) = C_n(X)/C_n(B) \to C_n(X,A) = C_n(X)/C_n(A).$$
Clearly $i$ is injective since $\iota_\# : C_n(A) \to C_n(X)$ is injective and $\iota_\#(C_n(B)) = C_n(B)$. Similarly $j$ is surjective because $id_\# : C_n(X) \to C_n(X)$ is bijective and $id_\#(C_n(B)) \subset C_n(A)$.
By definition $ji = 0$ because each $[\alpha]_{A,B} \in C_n(A,B)$ is mapped to $[\iota \alpha]_{X,A}$ and $\iota\alpha \in \iota_\#(C_n(A)) = C_n(A) \subset C_n(X)$. Thus $\operatorname{im} i \subset \ker j$.
Next consider $[\beta]_{X,B} \in \ker j$. This means $j([\beta]_{X,B}) = [\beta]_{X,A} = 0$ in $C_n(X,A)$, i.e. $\beta \in C_n(A) \subset C_n(X)$. Thus $\beta = \iota_\#(\alpha)$ for some $\alpha \in C_n(A)$. This means that $[\beta]_{X,B} = i([\alpha]_{A,B})$. Thus $\ker j \subset \operatorname{im} i$.
The long exact sequence of a triple $(X,A,B)$ is now obtained by the general method on p. 116 / p. 117: For each short exact sequence of chain complexes we get a long exact sequence of homology groups. See Theorem 2.16.
