What is XML, AJAX & Web API Terminologies

What is XML, AJAX & Web API Terminologies

In this XML, AJAX & Web API Assignment you will understand these different technical web application terminologies and their advantages and disadvantages.

XML, AJAX & Web API Assignment

XML:

XML stands for Extensible Markup Language used for documents containing structured information. It is used for display of both  the content of the documents as well as the structure of the document as well. People generally take it to be like HTML (Hyper Text Markup Language) but there is difference between the two. In case of HTML, the tag semantics and the tags to be used are fixed. The tags are limited in terms of changes that can be made to them, by the browser vendors.XML, on the other hand, does not have a fixed set of tags or semantics. Users can actually define the tags according to their needs. XML was majorly developed to display vividly descriptive documents (with pictures and graphics) over the internet. It is also important to note that XML requires a designated processing system. (http://www.xml.com/pub/a/98/10/guide0.html?page=2, 2010)

The major use of XML is in the standardization of data interchange format which allows multiple applications on various platforms to work with the same data format. Since it is not a binary format it is easy to modify by the end users also.

Explore Data Mining Assignment Here

XML documents usually contain schema information within themselves which is written in the XSD or XML Schema definition.

Advantages :

  1. Most programming languages have libaries for parsing and generating XML. Thus it does not depend on which language the XML was generated from.
  2. Portable : Since XML is just a text based format it can be easily transported across the internet or stored in files and opened in any operating system.
  3. Extensible: Just like in a database systems, more data columns can be added simple by adding new tags to the XML file.
  4. The data is represented as a Document Object Model allowing for very easy access in a variety of situations.

Disadvantages :

  1. Storage space: the same data can be represented in binary format in a very compact notation. A lot of space is wasted by opening and closing tags for every data element.
  2. Documents do not have any concept of internal data types like integer string etc.
  3. Every time an XML file is loaded it must be parsed and then an object graph must be constructed requiring more CPU power than reading binary files
Explore here: Computing and System Development Assignment

WEB API:

API stands for Application Program Interface. It is basically a set of protocols and tools that are used for developing different software applications.

Most of the operating environments (for example Windows) have a provision of having an API because programmers need to develop software that are in sync with the operating system. API is particularly useful for the end users as well because all programs that use API have a similar interface and set of functions. This helps them learn and use any program or software relatively easily. (Robert, 2009)

Many of the websites today expose their data in XML or JSON format , for eg. flick, google maps, google search. This means that third party application which are not part of the original design can access their data and can create new applications. Recently there has been a growth of mashup applications which can combine data from various web services and develop new applications.

eg.

to access all your photos on flick it may be possible to say this :

http://flickr.com/users/453/photos/all : this may return all your photograph urls and their metadata in xml

<photos>

  <photo url=”/photos/xyz.jpg”>

  <creaetd>1-1-2011</created>

  </photo>

</photos>

Web API / Web Service can be delivered using JSON or XML which are both standards are have a lot of libraries in various languages for serialization and de serialization. To prevent improper usage most provider also require the use of an API key which is unique to you and must be kept a secret. Service like google search api also impose restrictions on the number of queries you can per day for free. Other APIs like the google docs api also require additional authentication by a username and password to protect your data from unauthorized usage.

Advantages :

  1. We do not need to maintain the infrastructure and database for such applications.
  2. The web being ubiquitous allows us to develop application which can be accessed from any computer and anywhere while still maintaining the consistent data.
  3. Allows a more than two user to collaborate on the same data in real time.
  4. Exposes the data stored on a service provider without the additional cost of maintenance

Disadvantages:

  1. Requires a Internet connection to work : by design web apis are not made for working with offline use
  2. The data format is decided by the service provider and cannot be modified by us.
  3. The data format may be changed at a later time breaking our application.
  4. The quality of service depends on the service provider and we have no control over it.

Rich Interface Application :

AJAX stands for Asynchronous Java Script and Java. It is basically a set of techniques that are used to develop content on the web. These techniques are used to develop interactive web applications. It is very useful for simultaneous working of programs and can help different web applications work coherently without interfering in the functioning of each other. It uses both HTML and CSS for this. The major drawback is that many popular devices like multimedia phones, PDAs and iPads are unable to support it and hence there are many AJAX based applications that fail to run on these devices. (Anglin, 2010)

Before RIA techniques were developed the Internet was made using HTML pages. These pages had to refresh every time a change was to be made. After Javascript gained prominence on the client side, a lot of UI processing was shifted to the client there by relieving the server of valuable CPU resources. At the same time Javascript on the browser enabled the use of animations and other interactive features. In early 2000, the AJAX technology gained mainstream usage after being demonstrated in gmail interface. It allows the developers to develop applications which could modify the page with the server data without a refresh.

This allowed them to replicate a lot of the desktop look and feel.

Today it is possible to make highly responsive user interface which have functionality simillar that of desktop applications. Thus today we do not need a email client, or a word processor installed on the computer. Instead we can open a url which will then download the javascript application and execute inside the browser.

There are some security restrictions to prevent it from misuse, like the same origin policy which says that javascript can only request data from the same domain from which it has originated. There are further restrictions that it must not be able to access any data on the client machine, apart from when the user uploads or wants to download some data.

Advantages :

  1. The client developed with such technologies will live on the client side and will be downloaded every time the application is accessed, hence the interface can be modified on the server and that will change it every where.
  2. The user experience is more responsive compared to static HTML where the entire page is refreshed every time some data is required.
  3. Utilizes less bandwidth since only the user interface which needs to be displayed is fetched from the server instead of the entire page.
  4. The application can be easily modified without requiring a compilation step and hence the development time is fast.
  5. Allows to lower the server side load because a lot of processing is done on the client side.

Disadvantages:

  1. The application cannot be used offline. Support for this feature is still under development.
  2. Since most browsers have slightly different implementation of HTML and Javascript, it is sometimes difficult to maintain such code.
  3. The client cannot take advantage of operating system specific features because of web browser security restrictions.
  4. The computation speed is limited since javascript is dynamic language which has to interpreted and hence is slow.

Bibliography

  • Anglin, T. (2010). http://www.code-magazine.com/downloads/telerik_ajax.pdf. Retrieved November 2010, from www.code-magazine.com.
  • FairerPlatform. (2009, February). http://macdailynews.com/index.php/weblog/comments/23941/. Retrieved November 2010
  • http://roshanbh.com.np/2008/03/jquery-benefits-examples-free-ebook.html. (n.d.). Retrieved November 2010, from www.roshanbh.com.np.
  • http://www.xml.com/pub/a/98/10/guide0.html?page=2. (2010). Retrieved November 30, 2010, from www.xml.com.
  • Robert, K. (2009, November). http://infotrope.net/blog/2009/11/16/defining-openness-open-source-open-data-open-apis-open-communities-and-more/. Retrieved November 2010, from www.infotrope.net.

Book your copy of XML, AJAX & Web API Assignment order us now