Como liberar memória de uma estrutura com ponteiros para outra estrutura

Eu tenho duas estruturas

struct SimpleXY
{
    double x;
    double y;

};

    struct SimpleXyLink
    {
            int num_xy;
            SimpleXY *simpleXyList;
    };

Gostaria de saber qual é a maneira correta de liberar a memória retida porSimplyXyLink? Atualmente estou usando

void Free(SimpleXyLink *myList)
{

    free(myList->simpleXyList);
}

Mas acho que isso está errado, porque não libera a memória dentro do elementosimpleXyList.

questionAnswers(3)

yourAnswerToTheQuestion