As I've discussed previously, the Web 2.0 approach gives Web apps a Web services API so that the app's functionality can be invoked programmatically. Which then raises the question: What's a Web service?
In the Web 2.0 sense, a Web service is just some technology for invoking an application's service across the Web. The most common approach today is SOAP. However, many people believe that SOAP is too complex; they tend to prefer REST instead. Some diehards still use XML-RPC, the predecessor to SOAP which also came before REST. Amazon's AWS supports both SOAP and REST.
Wikipedia's list of Web service markup languages (which I updated) lists these and others, such as BEEP. It also lists a bunch of related XML schemas used with Web services that aren't actually for invoking Web services, like WSDL (for describing interfaces), UDDI (for locating service providers), and BPEL (for programming sequences of service invocations).
The point is, when I talk about Web 2.0 and giving Web apps a services API, not just an HTML GUI, I'm using the term "Web services" loosely to mean programatically invoking an application's service across the Web. (Google has a similar definition.) The format may be SOAP or just XML-RPC. The whole approach could be REST, which is more format independent. The transport is presumably HTTP, because that's what the Web runs on today, but perhaps even that will change someday.
The important trend of Web 2.0 is Web applications making their services available for direct, programatic invocation. The technology may change over time, but the need will probably only grow.