Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

According to W3C:

Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format

Web application conforms to this definition. Its interface is HTTP.

So can web application be called web service?

share|improve this question
    
This question originated from Should web-service tag be merged? –  Andrey Botalov Sep 29 '12 at 18:51
add comment

2 Answers

up vote 2 down vote accepted

Quick Answer: NO, even-though they are both applications with different purpose.

Longer Answer: A web application is generally used to build websites which have UI (web pages, views, some presentation layer).

A web service is an application that provides services to consumers (web applications, thick clients, other services, mobile apps, etc.). Those services may provide data, perform some calculation or just about anything other than providing a UI. Thus, it will have a clearly-defined API which consists of providing responses to HTTP GET and POST requests made by a remote application. Now, this doesn't mean you can't access a web service from your browser, but it means that the application won't necessarily have a GUI user interface. For example: receive all results of GET and POST requests as strings of XML/JSON, which requires a client-side parser.

share|improve this answer
add comment

I would say that it isn't, and that your interpretation of the interface is incorrect.

HTTP isn't the interface that a web service exposes. A web service exposes a higher level interface, say, a set of REST endpoints or a SOAP contract, that is machine readable. Saying that a web service exposes an HTTP interface is like saying it exposes a TCP/IP interface - technically true, perhaps, but at a lower level, thus making it irrelevant.

A web application is a set of HTML tags, or rich content (Flash, etc), that is human readable. A human is needed to understand that clicking the "Contact Us" link leads to a contact form, and it is not machine-readable.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.