The scale, in fact all transforms, *IS* being inherited.

Lets take a real simple example:

Lets say you have two group objects (which are just transforms without shapes):

nullA and nullB

```
group -empty -name "nullA";
group -empty -name "nullB";
```

Now lets parent nullB to nullA

```
parent nullB nullA;
```

Now lets scale up nullA to {10.0, 10.0, 10.0}

```
setAttr "nullA.scale" 10.0 10.0 10.0;
```

If you look at the scale of nullB it will still be {1.0, 1.0, 1.0}. As this is the ‘difference’ in scale between it’s parent and itself. Think of it like a multiplication, the scale on any object is it’s scale multiplied by it’s parents.

So object nullB scale = {1.0, 1.0, 1.0} * {10.0, 10.0, 10.0} = {10.0, 10.0, 10.0}

Therefore if you unparent nullB from nullA it’s scale will be set to {10.0, 10.0, 10.0} to compensate for the missing parent scale.

```
parent -w nullB;
print (getAttr("nullB.scale"));
```

Again this applies to all transforms but with the scale it’s a multiplication and the rotation/translation it’s an addition.