Hi @a81383. A proxy object is sort of like a copy of the original geometry, that gets created when put components into an assembly, and that only exists within the assembly. This copied version of the geometry object is the only geometry from the component that really exists directly within the assembly, and is sort of transformed from the component's model space to the assemblies own model space when it is copied. In an assembly, there is no original, native geometry other than things like work features (WorkAxes, WorkPlanes, WorkPoints, etc), and any sketch geometry that was created directly within the assembly itself. All 'real' geometry in an assembly belongs to the components within the assembly, not the assembly itself. So, within an assembly, any geometry you see and can click on, like a Face, Edge, or Vertex (visible geometry of components) are actually things like FaceProxy, EdgeProxy, VertexProxy, which are like copies of the original geometry objects. These proxy versions of objects only exist within the assembly, and are used for things like measurements, and constraints. Since these proxy objects all co-exist directly within the assembly's 3D space (3D coordinate system of the main assembly), they can be measured between, and constrained to each other. When you think of having a part document open and active on your screen, you know you can not measure between one of its faces and a face on another part in another part file, because the two parts are in different/separate 3D coordinate systems, and the two systems can't relate to each other. The components you put into an assembly are just copied instances (proxy) of the original geometry of the parts. Also, while in a main assembly, a component that is down within another sub-assembly, is also known as a ComponentOccurrenceProxy, instead of a regular ComponentOccurrence, because it is sort of like a copy of a copy, from the perspective of the main assembly. Most specific proxy type objects have a property called NativeObject, which will usually return the geometry object that they are a copy of (its source). If the proxy object represents the face of a top level part type component in the main assembly, then the NativeObject of that FaceProxy object will be the original Face object within the context (3d coordinate space) of the original part file. Does that make more sense now?
Wesley Crihfield

(Not an Autodesk Employee)