Saturday 9 April 2016

Internet Protocol (IPv6) Overview

The Internet operates by transmitting data in small independent packets across networks based on an international communications protocol called the Internet Protocol.  IPv6 is the latest version of the Internet Protocol.

Details

What was used before IPv6?

The first widely used and standardized Internet Protocol was IPv4 (Internet Protocol version 4) and it defined how the Internet and its connected devices operated and communicated with one another. When IPv4 became the Internet standard, the 4.2 billion possible IP addresses were never intended to house a global commercial Internet.  In fact, in 1981, there were only a limited number of computers that needed to connect to the Internet (mostly American government and research entities).  The  pool of IP addresses has been in use for the entire history of the commercial Internet, but recent technological developments have driven the available IP address pool close to depletion.  Just imagine that when the Internet was created, web-capable phones were far from being invented.
These days, in addition to every computer, nearly every cellular telephone and gaming console is connected to the Internet and this is without mention of the infrastructure hardware that required to make these devices work. As a result of this rapid growth the Number Resource Organization states that less than ten percent of them remained in the Internet Assigned Numbers Authority (IANA) free pool as of the beginning of 2010. Through the use of tools like Network Address Translation (NAT), users have extended the life of IPv4, because NAT allows multiple devices to speak to the Internet through a single IP address, while the router in that particular household or business keeps track of which device(s) are receiving and sending information.

What is an IP Address?

As you can assume, IP stands for Internet Protocol and this is the methodology for communication between devices on the Internet.  The IP Address is a number that uniquely identifies a device on a computer network and every device that is connected to the Internet must have a unique address for transport protocols to move information around the Internet. The fact that the same 4.2 billion IP addresses originally devised are almost deplete indicates the need for more.

Why use IPv6?

The solution to IP address depletion is simple and that is to develop a more robust numbering system that will allow for far more IP addresses.
IPv6 (the newer Internet Protocol) holds 340,282,366,920,938,463,463,374,607,431,768,211,456 IP addresses. This exponentially larger pool of IP addresses is the key to the future growth of the Internet, and companies that use and distribute IP addresses will need to adapt their networks and systems to use IPv6. Without IPv6, the Internet's expansion and innovation could be limited, and the underlying infrastructure will become increasingly complex to manage. The additional costs from delaying deployment will make life harder for Internet operators, application developers, and end users everywhere.
Here is an example of an IPv6 address: 3ffe:1900:4545:3:200:f8ff:fe21:67cf
Eventually, all IPv4 addresses will be phased out. This is not anticipated to happen for a long time, not before the middle of 2012.

How do I know if my ISP supports IPv6?

IPv6-test.com is a free service that checks your IPv6 and IPv4 connectivity and speed, diagnoses connection problems, and discovers which address(es) you are currently using to browse the Internet.  It additionally shows your browser's protocol of choice when both v6 and v4 are available.
The other test sites include:
http://netalyzr.icsi.berkeley.edu/
http://s.a.ak6i.net/a1/results/demo.html

Adware / Spyware

What is Spyware/Adware?


Adware and Spyware programs can adversely impact your computer performance. The information below provides tips and suggestions on how to remove malicious programs and protect your computer system.

According to the "Center for Democracy and Technology", there are at least three general categories of applications sometimes described as Spyware.

Spyware Categories Keystroke loggers and screen capture utilities, which are installed by a third party to monitor work habits, observe online behavior, or capture passwords and other information. "Adware" and similar applications that install themselves surreptitiously through "drive-by downloads" or by piggybacking on other applications and track user's behaviors take advantage of their internet connection. Legitimate applications that have faulty or weak user-privacy protections.


Spyware Categories


  • Keystroke loggers and screen capture utilities, which are installed by a third party to monitor work habits, observe online behavior, or capture passwords and other information.
  • "Adware" and similar applications that install themselves surreptitiously through "drive-by downloads" or by piggybacking on other applications and track user's behaviors and take advantage of their internet connection.
  • Legitimate applications that have faulty or weak user-privacy protections

There are many reasons why someone would install Adware / Spyware on your PC. The most notable include:

Advertising of products: Companies will pay developers of Adware to devise ways of showing their products to you. Some may be as simple as a pop-up ad that you see when you go to a particular website. More ingenious methods will install a small software program on your PC that can be continuously updated by these developers when new products are available.

Track your web-surfing habits for Marketing of new products: Developers will create small programs that "track" your web-surfing habits, which are then categorized for companies to create "targeted" marketing campaigns.
 
Identity theft: This form is, by far, the most malicious use of Spyware. Developers will create programs to capture personal information such as bank accounts, credit cards, and so on. Many of today's most popular Spyware applications promise the ability to execute via "remote installation". Remote installation is the ability to install a Spyware program on a computer.

ymptoms of Adware / Spyware


The best method for identifying Spyware on a computer is with the use of software designed to identify and remove it. Since most Spyware applications communicate with other computers and are programs themselves, they use system resources which include memory, CPU cycles and an Internet connection. Therefore, the following are some symptoms you might notice:

Slow Computer ­- Although there are many reasons why your computer may run slow, if you use your computer daily then you are familiar with how it behaves. Older computers and some applications can cause a computer to run slow; however, if suddenly it begins to run much slower, this could be a indication of Adware / Spyware./


Unknown E-mail Activity ­- If you start noticing email sent without your knowledge or you start receiving a large number of undelivered emails you did not send, then you may have been infected. There are some types of programs that can send out spam from your computer using your address book or simply return the email addresses in your address book to a spammer to be used for unsolicited email.

Odd Computer Behavior -­ You may notice hard drive activity when you are not using the computer, an unknown icon in your Windows system tray appears, settings modified, CD drives opening and shutting, or programs mysteriously opening and closing. These could be a sign of a Spyware program running on your PC.


Adware / Spyware

 
What is Spyware/Adware?

Adware and Spyware programs can adversely impact your computer performance. The information below provides tips and suggestions on how to remove malicious programs and protect your computer system.

According to the "Center for Democracy and Technology", there are at least three general categories of applications sometimes described as Spyware.

Spyware Categories Keystroke loggers and screen capture utilities, which are installed by a third party to monitor work habits, observe online behavior, or capture passwords and other information. "Adware" and similar applications that install themselves surreptitiously through "drive-by downloads" or by piggybacking on other applications and track user's behaviors take advantage of their internet connection. Legitimate applications that have faulty or weak user-privacy protections.


Quick Select



Spyware Categories

  • Keystroke loggers and screen capture utilities, which are installed by a third party to monitor work habits, observe online behavior, or capture passwords and other information.
  • "Adware" and similar applications that install themselves surreptitiously through "drive-by downloads" or by piggybacking on other applications and track user's behaviors and take advantage of their internet connection.
  • Legitimate applications that have faulty or weak user-privacy protections

There are many reasons why someone would install Adware / Spyware on your PC. The most notable include:

Advertising of products: Companies will pay developers of Adware to devise ways of showing their products to you. Some may be as simple as a pop-up ad that you see when you go to a particular website. More ingenious methods will install a small software program on your PC that can be continuously updated by these developers when new products are available.

Track your web-surfing habits for Marketing of new products: Developers will create small programs that "track" your web-surfing habits, which are then categorized for companies to create "targeted" marketing campaigns.
 
Identity theft: This form is, by far, the most malicious use of Spyware. Developers will create programs to capture personal information such as bank accounts, credit cards, and so on. Many of today's most popular Spyware applications promise the ability to execute via "remote installation". Remote installation is the ability to install a Spyware program on a computer.
Symptoms of Adware / Spyware

The best method for identifying Spyware on a computer is with the use of software designed to identify and remove it. Since most Spyware applications communicate with other computers and are programs themselves, they use system resources which include memory, CPU cycles and an Internet connection. Therefore, the following are some symptoms you might notice:

Slow Computer ­- Although there are many reasons why your computer may run slow, if you use your computer daily then you are familiar with how it behaves. Older computers and some applications can cause a computer to run slow; however, if suddenly it begins to run much slower, this could be a indication of Adware / Spyware./


Unknown E-mail Activity ­- If you start noticing email sent without your knowledge or you start receiving a large number of undelivered emails you did not send, then you may have been infected. There are some types of programs that can send out spam from your computer using your address book or simply return the email addresses in your address book to a spammer to be used for unsolicited email.

Odd Computer Behavior -­ You may notice hard drive activity when you are not using the computer, an unknown icon in your Windows system tray appears, settings modified, CD drives opening and shutting, or programs mysteriously opening and closing. These could be a sign of a Spyware program running on your PC.
Detecting Adware / Spyware

There are several steps you can take to detecting Adware / Spyware on your computer. The simplest method to determine if Spyware or Adware has been installed is to check your Windows Programs list or the Windows Start-Up folder. To check the Windows Programs list:

  • Click on Start
  • Select Control Panel
  • Double click Add/Remove Programs
  • Review the list of programs installed on your computer. If you identify a suspicious program research the applications on the internet to confirm it is Spyware and then remove it.

Another method of identifying Spyware is to check your Windows Start-Up folder:

  • Double click MY COMPUTER icon
  • Double click on the C:\ drive
  • Double click Documents and Settings folder
  • Double click All Users folder
  • Double click Start Menu folder
  • Double click Programs folder
  • Check for any unknown programs

If you are uncertain if a program is considered Adware / Spyware, we suggest researching the program against Spyware databases which can be found by searching the Internet.

Removing Adware / Spyware


If you believe you are infected with Adware / Spyware, the easiest way to detect and remove it is by the use of anti-spyware software or scanning software. Anti-spyware software is a different tool from anti-virus software but operates in much the same way, by scanning the hard drive looking for files associated with known Adware / Spyware programs. The software then returns any found programs and allows the user to determine what course of action to take.

Keeping Clean from Adware / Spyware


Be cautious of downloads. The easiest way is to not install them in the first place. Many of these applications are installed via "drive-by downloads", which use misleading tactics to install them. Many times users have no idea they have installed the application. Many developers will design their applications to be difficult to uninstall. If a small portion remains on your PC, it has the ability to rebuild itself, so be careful what you download. Be sure to read any privacy policies offered by the site and only install applications when you are certain what functions they are performing and AFTER you read the End User Licensing Agreement (EULA).

Be suspicious of pop-up ads. Do not download programs via pop-up ads or from unknown sites. Also, be sure to close any window that looks suspicious and always close windows properly by clicking the "X" in the upper right hand corner. Some pop-up ads will contain a close box or "X" within the window that will actually open the ad. To be safe, you can always close the window from your Windows taskbar by right clicking on the window located on your taskbar (generally found at the bottom of your screen) and selecting Close.

Stay updated. Simply keeping up with the latest security patches, fixes, and service packs will help prevent some of the programs from installing on your computer.

Scan regularly. Frequent scans using your anti-spyware tool will also keep you safe.

Where can I find additional information on Adware / Spyware?
Suddenlink does not endorse any particular site, but you can search the Internet for Spyware sites or visit sites like Microsoft or Spyware Guide to learn more about Adware/Spyware and utilities for removing these types of applications.



IP Address

What is an IP address?

An IP address is a unique identifier that is assigned to your modem when it's trying to connect to the internet.  Once connected, the modem is assigned a public IP address.  This IP address was dynamically chosen through Dynamic Host Configuration Protocol (DHCP), meaning that it was assigned to your modem randomly from a large pool of numbers.  IP addresses can also be assigned staticly, meaning that the IP address has been assigned specifically in the network and in your device for you to use so it never changes.

If your device is connected to a router then it will be assigned a private IP address by the router.

An IP address is much like having a street address. In order for someone to send you mail, they need to know your address. It's the same situation with IP addresses. It is needed for other computers and servers to be able to communicate with your computer and vice versa.

What is the difference between a public IP and a private IP?

A public IP is one that is assigned by a network and is able to be seen on the internet. Your IP address is tied to many (if not most) of the things you do on the internet and can be used to identify what general location you are at, as well as the company that is providing the internet service. This is because blocks of IPs are assigned to ISPs (Internet Service Providers) by the governing body called American Registry for Internet Numbers (ARIN). These blocks are then broken up and used for a variety of purposes including one being assigned to your modem so your devices can connect to the internet.

A private IP address is one given to your device when it connects to a private network, such as if your device is connected to your home router. Private IPs are not viewable on the internet in general. It is specific to your network and is managed by the router you are connected to. These generally start with 192.168.0.0 unless they are changed by a network administrator to something else.
What is the difference between dynamic and static IP addresses?

Dynamic IP addresses are ones that are assigned by the network when a device connecting to it requests one. The IP address is pulled from a larger pool of IPs that are set aside for customer connections. The IP address your device is given is assigned for a 24 hour lease. At the end of that lease your device will ask the network for an IP again. It may be given the same IP address again or it may be assigned another. This is why you may not have the same IP address today as you had yesterday or another time.

And all of this happens seamlessly in the background, so your service isn't interrupted.

Static IP addresses are ones that are assigned specifically to you in the system so no one else can use it. When your device tries to connect to the internet, instead of asking for an IP to be assigned to it dynamically, it asks the system to use the specific IP that it is set up with. If that IP address is available, which it should be, the network allows that connection. Static IP addresses are only assigned to Commercial customers and are not allowed on residential accounts.

How can I find my public IP address?

There are multiple ways to find out which public IP address you are using at any given point. But the easiest way is to go to one of the many websites that are set up specifically to show you what your IP is, such as whatismyipaddress.com or ipchicken.com

If you are using the Chrome browser, Firefox browser or an updated version of Internet Explorer, you can also do a Google search for "my ip address" and it will list your public IP address for you at the top of the search results!

Other important IP ranges to know

There are certain IPs and IP ranges that are not for use by most people because they are reserved for specific functions in either the computer or the network. The IP addresses listed below will be seen if your device is connected directly to the modem without a router being used.

  • 255.255.255.255 - This address is reserved for the network to send broadcast messages to all computers on the network.
  • 127.0.0.1 - This IP address is referred to as the "loopback" address. It is your computers way of identifying itself, no matter if it has an assigned IP address or not. It is typically used for troubleshooting and network testing.
  • 169.254.0.1 to 169.254.255.254 - This range is called the Automatic Private IP Addressing (APIPA) range. IPs in this range are assigned automatically when a computer is unsuccessful in getting an address from the DHCP server.

If your device is connected to a router, either wired or wirelessly, there is a different set of IP addresses or ranges that you might see.

  • 10.0.0.0 to 10.255.255.255 - Called a Class A range. This range holds 16,777,216 IP addresses available for use. Most of the time, this range is only used by ISPs and other very large organizations simply because of the sheer size of it.
  • 172.16.0.0 to 172.31.255.255 - Called a Class B range. This range holds 1,048,576 IP addresses available for use. It is typically used by medium sized networks such as a large college campus.
  • 192.168.0.0 to 192.168.255.255 - Called a Class C range. This range holds 65,536 IP addresses available for use. This is the IP range that is most commonly used by routers to assign IPs for an internal or private network. Obviously you will not use them all. But it is one of the smallest ranges.

Selenium Basic Concepts

What is Selenium ?
Selenium is an automation testing tool which will automate your web based applications. Selenium is an open source automation testing tool for web based applications. It is easy to use, strong and is very flexible. It can't use for Desktop based application automation.
You can work on many operating systems using selenium and you can code in any one of the following languages when using selenium.
Languages supported by Selenium
- Java   ---is most famous one
- C#
- Ruby
- Pyton
- PHP
- Pearl
It works on Mozilla, IE 6,7,8, Google Chrome(latest version), Opera 8,9,10, and Safari(latest version).
It also works on multiple operating systems-Windows, Mac, Linux/Unix, and many more operating systems.
It is not compulsory that our application code is in C# then you have to write selenium  code C#. 
It is independent of application to be test.
For example: if I make my website in java then I can write selenium code in PHP as well.
Components of Selenium
Selenium is made up of four components:
- Selenium IDE:  Installs as an addon in Mozilla.Only runs in Mozilla. Its got a strong feature of record and run. You can also extend IDE functionality with the help of user extensions. It supports regular extensions, loops, if statements and many other features. You can also parameterize your test cases using IDE.
For IDE, we dont need to learn any programming language. Only you need to know Javascript if you are using User extensions in IDE.
Drawback of IDE is that it works on only Firefox. sometimes it becomes difficult to use IDE.
Go to website- qtpselenium.com then select 'Selenium Training' and watch module no. 10
- Selenium RC:  This is the older version of selenium. It works on multiple browsers. RC can be implemented in any one of the programming languages mentioned above. RC has some limitations. To overcome those WebDriver came into the market.
- Webdriver:  Webdriver is the new version of selenium. It also works on multiple browsers. Its removed many drawbacks and issues in Selenium RC. It also supports Android and Iphone Testing. Architecture of WebDriver is totally different that the architecture of RC. But both RC and WebDriver require knowledge of one of the supported language.
 
- Grid:  Grid is used to run test cases in parallel on multiple machines and browsers. For example, you have 200 test cases and you want to run your test cases in parallel on four different machines(50 on each) or you want to run test cases in parallel(50 on Mozilla, 50 Safari, 50 on chrome, 50 IE) on single machine, you can do this easily using Grid.
Certain Features which make it a strong tool to use are:
- Open source
- Works on multiple browsers and multiple operating systems as compared to other tools in market.
- You can develop selenium code and make it run in parallel on multiple machines using different browsers.
- Support for Android and Iphone Testing.
- Selenium IDE is a simple tool which comes as an addon in firefox and is easy to use. It has the record and run feature which is very strong.
- You can also extend the functionality/scope of IDE with the help of many plugins available
- You can also create your own Selenium IDE plugins
- Selenium RC is the older version of selenium and is supporting all the languages mentioned above
- Webdriver is the latest version of selenium and is very strong. Its removed lots of drawbacks in RC and introduced many more features in selenium. - Selenium when used with Hudson can be used for Continuous integration.
- Object oriented datadriven or hybrid testing framework can be made very easily.
- You can use open source frameworks such as junit, testng, nunit etc and can write selenium test cases in them

Documentation for Selenium


Selenium video tutorial link-
qtpselenium.com

To read selenium language(Java, perl, etc.) specific link-
seleniumhq.org/docs

What is XML?

XML (eXtensible Markup Language) is a method for defining structure in documents. The philosophy behind XML is that the information (text, images, other parts) of a document can be identified through a set of rules. With these rules, a variety of software applications (like Web browsers) can interpret, display, or process data in documents.


======================================================================
 
The Extensible Markup Language (XML) is a subset of SGML, an enabling technology used in applications such as HTML. Its goal is to enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML has been designed for ease of implementation and for interoperability with both SGML and HTML. XML is not a replacement for HTML. XML and HTML were designed with different goals:
  1. XML was designed to describe data and to focus on what data is.
  2. HTML was designed to display data and to focus on how data looks.
 
HTML is about displaying information, while XML is about describing information. XML tags are not predefined. You must "invent" your own tags. The tags used to mark up HTML documents and the structure of HTML documents is predefined. The author of HTML documents can only use tags that are defined in the HTML standard (like <p>, <h1>, etc.). However, XML allows the author to define his own tags and his own document structure. The tags for example <to> and <from> are not defined in any XML standard. These tags are "invented" by the author of the XML document. It is important to understand that XML is not a replacement for HTML. In current and future Web development it is most likely that XML will be used to describe the data, while HTML will be used to format and display the same data. XML is a cross-platform, software and hardware independent tool for transmitting information.

Cascading Style Sheets (CSS)

First introduced in 1996 by the World Wide Web Consortium1, Cascading Style Sheets (CSS) serve an important role for specifying the appearance of HTML pages. Style sheets help you influence the way your HTML pages look in a way that is far more efficient that the HTML element-by-element techniques used in the past. With advances in Web browser technologies, CSS level 22, should be now available to many users, and CSS Level 3 is in development3.

The Purpose of Style Sheets

The overall purpose of style sheets are to help people who write HTML to separate the content of a Web page from specifications of how it looks. Style sheets are used to influence HTML page appearance. For example, HTML writers might want to indent the first line of each paragraph by five spaces. To do this the old way, they would place the (non-breaking space) entity five times at the start of each paragraph. This worked fine for pages generated by HTML editors, or even on a small scale for hand-prepared HTML pages. But what if the Web designer decided that the paragraphs should not have the first line of each paragraph indented? It would be a laborious process to have to go through all the HTML pages to remove the entities.
Rather than specify the appearance of elements in an HTML file, writers need a way to specify the appearance of an entire set of HTML pages all in one place, separate from the HTML content. Style sheets make this possible. You can use style sheets to efficiently create a consistent look and feel for your web and change this look and feel quickly and easily.

How Style Sheets Work

You create a style sheet in a file using a command syntax that describes how HTML elements in your files should be rendered in a Web browser. In your HTML files, you identify this style sheet file. When a user accesses your HTML pages, the Web browser refers to your style sheet file to display your HTML pages.
Using style sheets, you can tell a Web browser how to display HTML elements such as margins, point sizes, text background colors, and many others. For example, you can influence the margin spacing used in every P (paragraph) element in your HTML pages on your Web site. Using variations within style sheets called classes, you can create different styles of an HTML element.
For example, let's say you have a need for cautionary statements in your document. One such paragraph class could be a statement of warning, another paragraph class could be a statement of imminent danger. You would like Web browsers to display these paragraph classes in different ways--the danger in red, bold, and underlined text; the warnings in purple and bold text.
In your style sheet file, call it mystyle.css, you would place these statements to affect the appearance of the P (paragraph) element:
P.danger {
   color: red;
   font-weight: bold; 
   text-decoration: underline;
}

P.warning {
   color: purple;
   font-weight: bold; 
}
In your HTML files, you identify the style sheet you are using (mystyle.css), and then you can then use these classes to label statements. For example, in your HTML file mystyle.html, you could have:
<HTML>
   <HEAD>
           <LINK Rel="stylesheet" Href="mystyle.css" Type="text/css">
   </HEAD>
     <BODY>
   <P class="warning">
         Alien approaching!
   </P>
   <P class="danger">
      Destruction imminent!
   </P>
</BODY>
</HTML>
Your users will need to have more recent versions of the popular Internet Explorer (3.0 or above) or Netscape Navigator (4.0 or above) in order to see the style effects. If your users don't have these style-enabled browsers, they won't see all the effects you create. Therefore, in using style sheets, like many other kinds of new HTML elements that have come before, you will need to be sensitive to users who do not have the most current Web browser software.
With a little common sense and creativity, you you can still meet the needs of users who cannot use the style sheets. In fact, when you use style sheets, you can avoid much of the kind of syntax gymnastics that HTML writers have had to put into their pages to make things "look right." The result is that your HTML pages can be leaner and more easily displayed in all Web browsers. And instead of fiddling with how your Web pages look, you can focus on what your Web pages mean.

====================================================================

CSS
 
CSS stands for Cascading Style Sheets. The styles define how to display HTML elements and are normally stored in Style Sheets (.css). External Style Sheets are stored in CSS files and can save you a lot of work. Multiple style definitions will cascade into one. HTML tags were originally designed to define the content of a document. They were supposed to say "This is a header", "This is a paragraph", "This is a table", by using tags like <h1>, <p>, <table>, and so on. The layout of the document was supposed to be taken care of by the browser, without using any formatting tags. As the two major browsers - Netscape and Internet Explorer - continued to add new HTML tags and attributes (like the <font> tag and the color attribute) to the original HTML specification, it became more and more difficult to create Web sites where the content of HTML documents was clearly separated from the document's presentation layout. To solve this problem, the World Wide Web Consortium (W3C) - the non profit, standard setting consortium, responsible for standardizing HTML created STYLES in addition to HTML 4.0.  All major browsers support Cascading Style Sheets. Styles sheets define how HTML elements are to be displayed, just like the font tag and the color attribute in HTML 3.2. Styles are normally saved in external .css files. External style sheets enable you to change the appearance and layout of all the pages in your Web, just by editing one single CSS document.
CSS is a breakthrough in Web design because it allows developers to control the style and layout of multiple Web pages all at once. As a Web developer you can define a style for each HTML element and apply it to as many Web pages as you want. To make a global change, simply change the style, and all elements in the Web are updated automatically. Style sheets allow style information to be specified in many ways. Styles can be specified inside a single HTML element, inside the <head> element of an HTML page, or in an external CSS file. Even multiple external style sheets can be referenced inside a single HTML document.  What style will be used when there is more than one style specified for an HTML element? Generally speaking we can say that all the styles will "cascade" into a new "virtual" style sheet by the following rules, where number four has the highest priority:
 
  1. Browser default.
  2. External style sheet.
  3. Internal style sheet (inside the <head> tag).
  4. Inline style (inside an HTML element).

Emerging and Established Web Technologies

Highlights of Emerging and Established Web Technologies: 



XHTML

The Extensible HyperText Markup Language (XHTML) represents most current W3C recommendation for hyptertext implementation 4. XHTML merges the Extensible Markup Language (XML) technology with the HTML 4 standard to create a very flexible language that sets the framework for future Web page development. XML is a subset of Standard Generalized Markup Language (SGML), a language used to define markup languages (one such language defined by SGML is HTML). XHML is HTML expressed using XML. The old HTML standards will still work in Web browsers, but Web developers can use the new XHTML standard to write Web pages that can integrate well with other technologies defined by XML.


XSL

Cascading Style Sheets (CSS) were first introduced by the World Wide Web Consortium in 1996 5. CSS has been standardized to level 2 6 and CSS Level 3 is in development 7. Style sheets make it possible for you to specify the look and layout of your Web documents in one place, rather than using elements such as FONT in your HTML file itself But the just as the "X" idea was added to HTML, so too can the idea of extensibility be applied to style sheets. Extensible Stylesheet Language (XSL) is a language different from CSS, but sharing the same concept of working with the look and layout of a document. XSL has been developed to address the needs of large and complex publishing efforts and tasks. XSL 1.0 has been completed as a working draft 8.
Associated with XLS is a language called XSL Transformations (XSLT). XSLT is a language for transforming XML documents into other XML documents. XSLT has been defined as a recommendation 9. Another language, XML Path Language (XPath), can also be used with XSL to access particular parts of an XML document. XPath has also been defined as a recommendation 10. With XSL and related technologies, Web implementors can have a powerful way to manipulate large and complex documents published on the Web

DOM

The Document Object Model (DOM) is a standard 14 for representing the structure of a document. Programmers can use the DOM to add, delete, and change parts of a document. This makes it possible to write content to be delivered on the Web that can adapt itself to any browser or platform. The DOM provides a framework for scripts to access the content, structure, or style of a document, or to perform some processing and incorporate the results back into the document.