lucamar did not draw attention to it, but note how he changed your type name to Txyz.
You can ignore this convention, but once you start writing complex code, you'll find that visually identifying all types (as distinct from other identifiers) by a leading "T" makes code far more readable for others as well as you.
A further advantage of explicitly named types rather than anonymous types is that it becomes straightforward to use the variable in a function/procedure call:
procedure ReportXYZ(anXYZ: Txyz);
begin
WriteLn('var1: ', anXYZ.var1, ', var2:', anXYZ.var2);
end;
Without the type you can't write
var
xyz: TXYZ;
begin ...
ReportXYZ(xyz);
...
end.