fixup deprecation of externalAttributes

- directly access private member internally
- only deprecate the property