Switch[Offline,
Online, ideal1=Import["http://katlas.org/w/images/d/d2/Ideal.txt.gz", "String"],
Offline, ideal1=Import["C:\\drorbn\\People\\Gilbert\\ideal.txt", "String"]
]

(* ideal1=Import["C:\\drorbn\\People\\Gilbert\\ideal.txt", "String"] *)

ideal="<data>"<>StringReplace[ideal1,"I="~~" "...~~ i:(DigitCharacter..) :> "I=\""<>i<>"\""]<>"</data>";

(* xml=ImportString[ideal, "XML"]; *)

data=Cases[ImportString[ideal, "XML"], XMLElement["AB", ab___] :> AB[ab], Infinity];

Length[data]

ProcessAB[ab_AB] := Module[
{Id, CS, L, n,c,k,K,coeffs},
{Id, CS, L} = {"Id", "Conway", "L"} /. ab[[1]];
{n,c,k} = ToExpression /@ StringSplit[Id, ":"];
If[n==10 && 161<k≤166, --k];
K=Knot[n,k];
coeffs=ab[[2]] /. XMLElement["Coeff", l_List, {}] :> {
ToExpression["I" /. l],
ToExpression["{"<>("A" /. l)<>"}"],
ToExpression["{"<>("B" /. l)<>"}"]
};
If[c == 1,
RopeLength[K] = ToExpression[L];
ConwayString[K] = CS;
IdealPresentationData[K] = coeffs;
K,
Print["Trouble in ", K]
]
];
IdealPresentation[K_Knot][t_] := Plus @@ (IdealPresentationData[K] /.
{i_,A_List,B_List} :> A Cos[i t] + B Sin[i t]
)

Ks = Union[ProcessAB /@ data];

Max[RopeLength /@ Ks]

RopeLength[Knot[0,1]]=N[Pi];
IdealPresentationData[Knot[0,1]] = {{1, {1,0,0}, {0,1,0}}};

ParametricPlot3D[IdealPresentation[Knot[0,1]][t], {t, 0, 2Pi}]

ParametricPlot3D[IdealPresentation[Knot[3,1]][t], {t, 0, 2Pi}]