However, we do provide a discovery mechanism, the link names. Each link name is a token which should be registered and whose definition will be generally available. This tells the client what to expect from the server. It has been assumed that the linkschema return format would indicate if arbitrary link tokens are supported. The above are the answers for the link issue.
Attributes are more complex.
Links provide the infrastructure for attributes but do not solve all attribute problems, like search. I am currently working on that proposal. I have a number of concerns about how the spec treats attributes. Content negotiation can be done for them. There is no way to set multiple attributes at a time.