Andrew,
I think Ulf made it clear that SOA is an architecture which can be implemented with webservices or Messaging.
Here is the defination from wiki.
In computing, service-oriented architecture (SOA) provides methods for systems development and integration where systems package functionality as interoperable services. A SOA infrastructure allows different applications to exchange data with one another.
So it is a very wide term which can be anything for
exchange of data. What exactly are you looking for. Be more specific to your requirement or if you want to learn the concepts of SOA by implementing webserived, this book is good one to start.
SOA Using Java(TM) Webservices
Thanks,
Rahul