It's also important to know what is not in a foreign term. Foreign terms do not contain any information about an X resource that may be changed. The sole exception to this rule is graphics contexts, which are discussed below. For example, a ProXL window may remember its depth (which cannot be changed once the window is created), but it won't remember its width or height, since they can change. This means that it is possible for other programs, running in the same or different address space, to share X resources with ProXL. ProXL will have no problems with window managers moving or resizing windows, since it goes to the server when it wants to know a window's size.
An unfortunate result of this is that not all attributes that can be changed can be gotten. This is because the X protocol does not provide a way to get all information about every X resource. For example, it is possible to set the background of a window, but it is not possible to get it. There aren't many such attributes, and they are documented in the ProXL manual.