WindowPosition versus WindowFrame

I am attempting to write a collection of Macros to take the front most window and move it to the half the screen on the left, and if it is already half the size of the screen, resize and move to 1/3, and then if it is a 1/3, move and resize to a 1/4. Basically hitting the same keyboard shortcut will allow me to cycle through predetermined sizes.

In the documentation I see both WindowPosition and WindowFrame? What is the fundamental difference between them? it looks like Frame gives me the complete set of coordinates and Position only gives me half the information: Left and Top.



{x, y} vs {x, y, w, h}

The former suffices for moves without resize, for example.