Although the element Attributes of BizDocEnvelope does not have any defined structure, during run-time Trading Networks will add your attributes under that element.
So, for example, if you have an attribute called orderID, during run-time there will actually be a string called orderID inside Attributes and this string will contain the value extracted from the document.
Therefore, if you know the attribute name during development (which you should), you can assume the attribute will be there and you can map the attribute value via variable substitution (ex. %bizdoc/Attributes/orderID%) or by creating a dummy document in “Pipeline In” called bizdoc with the following structure, for example:
You could then map straight out of orderID, if you would like.
I don’t know if this is the webMethods’ recommended way of doing this, but it’s worked for me in the past.