On Linking and proxies

I notice that when I add an Object or Character (unrigged into a Blend file which may or may not be empty, I can click ‘link’ on opening ‘file’ and add it by clicking ‘object’ in the list that appears and selecting items from the list.
The Object is then inserted into the Blend file, bang at the x.y origin. It seems the user has choice in the matter.
But thereafter it stays ‘frozen’ - although the screen is in Object mode, the outline of the added Object stays BLUE (not yellow) and I cannot edit it - move it or scale it.

** Question 1: WHY IS THIS? WHAT IS HAPPENING?

In the ‘object’ tab in the 3D window header, there is an item ‘make proxy’.

** Question 2: Under what conditions can an object me made proxy? Does it need to have a rig available somewhere?

These two questions have baffled me and suggestions/answers would be gratefully received.

When you link an object all data for it, including position, is linked. This means that the object will stay in the origin if it is there in the original file.

To be able to move and animate the object you should make a group for the object in the source file (highlight the object and press ctrl+g). You can set the name in the menu on the left of the 3d view (which you can bring up by pressing t).

Now, when you want to link the object, you instead link to the group. Make sure that the option “make group instance” is checked. What will now happen is that you will get an empty, and on this empty sits your group (as something called a dupligroup).

When linking a character with an armature you need to first group the character and the armature. Then you link to that group from the file you want to use it in. Now you need to make a proxy of the armature. (This is something like a local copy but only certain things are allowed to change. And things that are not allowed to be edited will be restored when you reload your file. To make a proxy select the object and press ctrl+cmd+p (on Mac) or press space bar and type “make proxy”. A list of objects that are in your group will pop up (quite likely just the mesh and the armature). In this list you should select the armature. You will now have a new object with a name that ends with _proxy. In this object you can now enter pose mode and start to animate.

Hope this helps.