<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-70073604024567658</id><updated>2011-11-27T15:48:50.582-08:00</updated><title type='text'>Everything IN NET</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>22</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-5924410507654946807</id><published>2009-02-05T21:54:00.000-08:00</published><updated>2009-02-05T21:56:04.761-08:00</updated><title type='text'>Resume Services and other activities-Powering ur resume</title><content type='html'>&lt;script type="text/javascript" language="javascript" src="http://www.anrdoezrs.net/h8117trncegjqnfgt15798944?target=_blank&amp;mouseover=Y"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-5924410507654946807?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/5924410507654946807/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=5924410507654946807' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/5924410507654946807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/5924410507654946807'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/02/resume-services-and-other-activities.html' title='Resume Services and other activities-Powering ur resume'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-2265925190516579616</id><published>2009-02-01T22:17:00.000-08:00</published><updated>2009-02-01T22:19:02.737-08:00</updated><title type='text'>In-house SEO: Is it a Good Choice?</title><content type='html'>&lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=204140%26bid=498115" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt; &lt;br /&gt;Even the smartest or the most proficient businessman cannot be an expert in everything. He may be good in one or two business functions, but for all others, he may require the specialization of somebody else. It's the same thing if you're talking about getting your website optimized. &lt;br /&gt;&lt;br /&gt;You can perhaps only count with your fingers those business owners who are also knowledgeable about search engine optimization and their technical roles in the business. After all, what they're really concerned about is how the strategy may be able to help out in increasing their revenues. &lt;br /&gt;&lt;br /&gt;And because they don't have the knowledge or even the skill, the next best option is to have the job outsourced. Let somebody else who is not connected with the company to do the job for them. &lt;br /&gt;&lt;br /&gt;However, we are not talking about simple individuals. They are considered to be the best in the industry. After all, hiring them means that they are making a long-term investment in the company. Moreover, getting one that qualifies only means that they are making good decisions for their company. &lt;br /&gt;&lt;br /&gt;Getting into the In-house SEO Mode &lt;br /&gt;There are companies that decide to do in-house SEO, and perhaps this is for a very good reason. You see, even if some businessmen are very much aware of the benefits of SEO in relation to ROI for their business, there are still a number of issues that they have to settle. For example, there are times when objectives of the company are not in line with those of the SEO specialists. &lt;br /&gt;&lt;br /&gt;The former believes that the latter will be able to do wonders for their business website despite the unethical practices that they may want these SEO experts to do. On the other hand, SEO specialists are not too keen on the real goal of the company. &lt;br /&gt;&lt;br /&gt;They are too focused on the technical side of things that they have gone beyond the very reason why they are optimizing the pages. Adopting an in-house SEO will provide both camps an opportunity to sit down and talk about the best strategies that will absolutely create a win-win situation. &lt;br /&gt;&lt;br /&gt;The Role of an In-house SEO Specialist &lt;br /&gt;There is perhaps no need to illustrate again and again the job description of an SEO specialist. Of course, their primary role is to ensure that the website will be ranking beautifully in search engines, using a particular keyword. &lt;br /&gt;&lt;br /&gt;As a matter of fact, the URL should be seen in the first page of search engines. But more than that, it's also the job of an SEO expert to act as an intermediary, especially when he/she is placed in an environment that is not SEO-friendly. &lt;br /&gt;&lt;br /&gt;This means that there are some key people within the organization who cannot see the real benefits of search engine optimization not only to their business website but also to their long-term financial and management goals. For instance, a marketing executive who often ignores SEO will likely concentrate on other modes of advertisement, such as PPC or traditional ones like newspapers, radios, and TVs. Though they are still very effective, they are often costly and have limited reach, compared to when your link is part of the World Wide Web. &lt;br /&gt;&lt;br /&gt;Those who are managing the business finances may cut down the budget intended for SEO. As an SEO expert, he/she basically understands that it's not going to be one-time deal. It takes months, some money, and a lot of patience and determination to make things work out. Nevertheless, in the end, everyone shall be greatly rewarded. &lt;br /&gt;&lt;br /&gt;In relation to this, managers should be able to pick people who will be brave enough to speak about the importance of SEO and is full of vindication when it comes to the technique's primary role in the organization. They need someone who can be very much dedicated to obtain only the best results. &lt;br /&gt;&lt;br /&gt;The Shortage and How to Solve It &lt;br /&gt;There are some companies that feel the need of having SEO as part of their marketing strategy, and yet they are apprehensive on the available talent. Furthermore, as mentioned a while ago, they need someone who can better understand not just the technical aspect of the job but also the real purpose of performing search engine optimization that is to increase revenues in the business and to act as leverage. Thus, what they see as perfect remedy is to train some of their people the techniques involved in SEO and SEM. &lt;br /&gt;&lt;br /&gt;However, this should not be the case. First, you will be spending a lot of your time on money on trainings, and these aren't even a guarantee that you will be getting the right kinds of results from them. If you're looking for real value of your money, you better look outside for people who have the attitude, talent, and sense of professionalism&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-2265925190516579616?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/2265925190516579616/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=2265925190516579616' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/2265925190516579616'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/2265925190516579616'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/02/in-house-seo-is-it-good-choice.html' title='In-house SEO: Is it a Good Choice?'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-4436292672539674617</id><published>2009-02-01T22:15:00.000-08:00</published><updated>2009-02-01T22:16:48.201-08:00</updated><title type='text'>Information About Bluetooth Technology and Proximity Advertising</title><content type='html'>Bluetooth technology is currently the top selection for campaigning and marketing. In fact, Bluetooth marketing aka Proximity advertising has become increasingly popular overseas as the hottest way to get in touch with future or existent customers. Bluetooth is a major role player in this type of technology, it started in 2003 and all sorts of corporations and businesses have seen it to be incredibly usable. &lt;br /&gt;&lt;br /&gt;By definition proximity marketing is "the localized wireless distribution of advertising content associated with a particular place. Transmissions can be received by individuals in that location that wish to receive them and have the necessary equipment to do so." So if you own a cell phone and it's in the proximity of a marketing broadcast that is "on air," you would be able to acquire the substance or advert. &lt;br /&gt;&lt;br /&gt;If you are a little less techy and you still don't understand the process of what is going on here exactly or what all this means for the corporations using this technique, let me explain it a little better. Firstly, all of this makes a little more sense if you simplify the word proximity which means; The state, quality, sense, or fact of being near or next; closeness. &lt;br /&gt;&lt;br /&gt;But let's try a little example out so you can really understand the nitty gritty details! Say for instance that your walking through a shopping mall, and you just happened to pass a proximity broadcast station that was on air. If your phone is on, then the broadcast station will in turn "find" your phone. This will grant all the ads in the area to contact your cell phone. First and foremost, the program will ask you if you would like to receive this information from the supplier. &lt;br /&gt;&lt;br /&gt;So they are really requiring for your permission, if its okay or if you would rather not receive the message to your phone. If you will, think of it as something like a moving billboard advertisement, except it's going directly to your cell! &lt;br /&gt;&lt;br /&gt;Another purposeful use for this type of advertising is for police forces in the United Kingdom to use it for missing persons. This is an excellent way for the police and other authoritative figures to broadcast a missing persons information and even their picture over peoples cell phones through use of bluetooth! It has also been used in several occasions to warn people in the area about robberies or muggings which will then of course let people know to be cautious and careful! So you see this isn't just for use of companies but its also helpful for other reasons as well! &lt;br /&gt;&lt;br /&gt;This type of advertising has been used for quite some time now in Europe and other various international locations. There are thousands of companies already taking full vantage of this type of marketing with many more on the way coming from the United States. &lt;br /&gt;&lt;br /&gt;Bluetooth proximity marketing is merely the next technological step for businesses to take if they want to really get their business name out there. This is not only an incredibly quick procedure but also very effective. I wouldn't be surprised if by next year this time there are millions upon millions of people taking advantage of the immense benefits that come from Bluetooth proximity advertising! Are you going to be one of them&lt;br /&gt;&lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=204140%26bid=498026" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-4436292672539674617?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/4436292672539674617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=4436292672539674617' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/4436292672539674617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/4436292672539674617'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/02/information-about-bluetooth-technology.html' title='Information About Bluetooth Technology and Proximity Advertising'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-889504484042535950</id><published>2009-02-01T22:10:00.000-08:00</published><updated>2009-02-01T22:15:11.977-08:00</updated><title type='text'>Understanding Cloud Computing and Its Potential for Your Business</title><content type='html'>Cloud computing is the wave of the future - much more so than any type of computer, any new enormous size chip or card, and more than any other program. &lt;br /&gt;&lt;br /&gt;It is a new way of thinking about delivering applications, and providing data storage better network performance management and higher level information technology infrastructure. Yet all of this can be provided without the enormous financial burden to business. We look at what cloud computing is and how it could impact your business. &lt;br /&gt;&lt;br /&gt;The surface description of cloud computing can sound a little scary to businesses - it basically means that businesses and employees (as well as private computer users, of course), can access technological services without control or ownership of the infrastructure, expertise with the systems, the need to maintain programs or data, and even without knowledge of how the storage and manipulation occurs. &lt;br /&gt;&lt;br /&gt;Despite the fact that it removes some of the control for businesses, it also relieves a huge technological burden. Your IT consultant can explain to you how it can reduce costs for your particular business, as well as allowing you to do things that were previously not viable due to finance constraints. &lt;br /&gt;&lt;br /&gt;Some of the key characteristics of cloud computing include capital expenditure being minimized. Your information technology infrastructure budget can be slashed, and the related IT consulting services are minimized also. Things like external storage devices, network routers, and extra computers with different programs on them are needed in fewer and fewer situations. &lt;br /&gt;&lt;br /&gt;An internet connection is all the information technology infrastructure that is needed, usually. &lt;br /&gt;Your business information is more accessible with cloud computing - you are able to access complex platforms that are web based from devices that previously couldn't support that sort of manipulation - you may be able to use design software from mobile phones, for example. &lt;br /&gt;&lt;br /&gt;Your network performance management is much simpler, as there is a lower information burden on the system. Servers and routers can still be used for some things, but are no longer critical. However, you should note that the limiting factor with cloud computing will be bandwidth or high network load, rather than information technology infrastructure limits. &lt;br /&gt;&lt;br /&gt;If you deliver services to your clients electronically, you will have found your IT consultants working on engineering your sites and programs for peak loads, to ensure that service is not stopped for some people at high demand times. Scalability is much better with cloud computing - changing user demands can be factored into information technology infrastructure development. &lt;br /&gt;&lt;br /&gt;If you have ever had that sinking feeling of seeing your screen suddenly blank out, wondered just how much work you had lost, and tried frantically to recall your information technology consulting firm's phone number, you will appreciate the disaster recovery and business continuity features of cloud computing. &lt;br /&gt;&lt;br /&gt;The only limiting factor then is an outage of internet service - this makes it critical that you discuss with your information technology consultancy which is the most reliable internet provider, and stick with it. &lt;br /&gt;&lt;br /&gt;You can see the likelihood of encountering a large outage - historical data on cloud outages is tracked on a database known as the Cloud Computing Incidents Database.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-889504484042535950?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/889504484042535950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=889504484042535950' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/889504484042535950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/889504484042535950'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/02/understanding-cloud-computing-and-its.html' title='Understanding Cloud Computing and Its Potential for Your Business'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-6280539537553309123</id><published>2009-01-30T05:22:00.000-08:00</published><updated>2009-01-30T05:28:37.892-08:00</updated><title type='text'>SAP HR Interview Questions and Answers</title><content type='html'>SAP HR Interview Questions and Answers&lt;br /&gt; &lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=204140%26bid=498026" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt; &lt;br /&gt;&lt;br /&gt;Explain the uses of the simple maintenance interface?&lt;br /&gt;&lt;br /&gt;Simple Maintenance is used when Staff assignments and reporting structure are to be changed. There are three main areas in Simple Maintenance. Each area contains particular maintenance functions, depending on whether you want to edit organizational structure, staff assignments or task profiles. For Organizational Management users, Simple Maintenance is best used to establish the basic framework in organizational plan development. For complete, detailed editing of individual organizational objects in your organizational plan (editing particular positions or organizational units, for example), we recommend that you switch to Info-type Maintenance. Simple maintenance uses a tree structure, which allows you to create a basic framework for organizational plans, using streamlined procedures. In this way, we can create an organizational and reporting structures step by step.&lt;br /&gt;&lt;br /&gt;2. What is the use of INFOGROUPS?&lt;br /&gt;&lt;br /&gt;The infotype group (commonly known as infogroup) guarantees that during the personnel action, all information needed for the business processes is stored. The infogroup is processed when you perform a personnel action. - An infogroup exists in the standard system for every personnel action type. - In Customizing for Personnel Administration, you can tailor the make-up of the various infogroups to the requirements of your company. - You can define infogroups as user-group dependent. Infogroups are used in Personnel Actions to define a set of sequencial infotypes that you would be using while performing an action. For example, when you hire, you would want to use IT0000,0001,0002,0006,0007,0008 etc in a sequence- in a particular order. So define an Infogroup for this purpose which contains all these infotypes, their order of execution and the user groups it is applicable for. Then you assign this infogroup to the action that you had defined.&lt;br /&gt;&lt;br /&gt;3. What is PROCESSING CLASS, where we do them and why?&lt;br /&gt;&lt;br /&gt;Wage type characteristic that determines how processing is conducted during the payroll run.&lt;br /&gt;&lt;br /&gt;4. What is EVALUTION PATH, where do we do it and why?&lt;br /&gt;&lt;br /&gt;A chain of relationships between objects in a hierarchical structure. for eg. O-S-P(Organization-&gt;Position-&gt;Person).&lt;br /&gt;&lt;br /&gt;5. What is INTERNAL PAYROLL PROCESS?&lt;br /&gt;&lt;br /&gt;Payroll process(program) is run at a specific point in time, not only to calculate an employee’s basic remuneration but also any special payments, overtime payments or bonuses that must be effected for the period in question&lt;br /&gt; &lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=204140%26bid=498026" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-6280539537553309123?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/6280539537553309123/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=6280539537553309123' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/6280539537553309123'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/6280539537553309123'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/sap-hr-interview-questions-and-answers.html' title='SAP HR Interview Questions and Answers'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-3392053256961513276</id><published>2009-01-28T03:43:00.000-08:00</published><updated>2009-01-28T03:57:05.795-08:00</updated><title type='text'>ASP.NET INTERVIEW QUESTIONS</title><content type='html'>&lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=204140%26bid=498026" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt; &lt;br /&gt;ASP.NET Interview Questions&lt;br /&gt;This is a list of questions I have gathered and created over a period of time from my experience, many of which I felt where incomplete or simply wrong. I have finally taken the time to go through each question and correct them to the best of my ability. However, please feel free to post feedback to challenge, improve, or suggest new questions. I want to thank those of you that have contributed quality questions and corrections thus far.&lt;br /&gt;There are some questions in this list that I do not consider to be good questions for an interview. However, they do exist on other lists available on the Internet so I felt compelled to keep them here for easy access.&lt;br /&gt;&lt;!-- Begin BidVertiser Referral code --&gt;&lt;br /&gt;&lt;script language="JavaScript"&gt;var bdv_ref_pid=204140;var bdv_ref_type='i';var bdv_ref_option='p';var bdv_ref_eb='0';var bdv_ref_gif_id='ref_120x60_blue_pbl';var bdv_ref_width=120;var bdv_ref_height=60;&lt;/script&gt;&lt;br /&gt;&lt;script language="JavaScript" src="http://srv.bidvertiser.com/bidvertiser/referral_button.html?pid=204140"&gt;&lt;/script&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser Referral code --&gt;&lt;br /&gt;Describe the role of inetinfo.exe, aspnet_isapi.dll andaspnet_wp.exe in the page loading process.&lt;br /&gt;inetinfo.exe is theMicrosoft IIS server running, handling ASP.NET requests among other things.&lt;br /&gt;&lt;br /&gt;When an ASP.NET request is received (usually a file with .aspx extension)?&lt;br /&gt; the ISAPI filter aspnet_isapi.dll takes care of it by passing the request tothe actual worker process aspnet_wp.exe.&lt;br /&gt;&lt;br /&gt;What’s the difference between Response.Write() andResponse.Output.Write()?Response.Output.Write() allows you to write formatted output.&lt;br /&gt;&lt;br /&gt; What methods are fired during the page load?&lt;br /&gt;Init() - when the page is instantiatedLoad() - when the page is loaded into server memoryPreRender() - the brief moment before the page is displayed to the user as HTMLUnload() - when page finishes loading. When during the page processing cycle is ViewState available?After the Init() and before the Page_Load(), or OnLoad() for a control.&lt;br /&gt;&lt;br /&gt;What namespace does the Web page belong in the .NET Framework class hierarchy?System.Web.UI.Page Where do you store the information about the user’s locale?System.Web.UI.Page.Culture&lt;br /&gt;&lt;br /&gt; What’s the difference between Codebehind="MyCode.aspx.cs" andSrc="MyCode.aspx.cs"?CodeBehind is relevant to Visual Studio.NET only. What’s a bubbled event?When you have a complex control, like DataGrid, writing an event processing routine for each object (cell, button, row, etc.) is quite tedious. The controls can bubble up their eventhandlers, allowing the main DataGrid event handler to take care of its constituents. Suppose you want a certain ASP.NET function executed on MouseOver for a certain button.&lt;br /&gt;&lt;br /&gt;Where do you add an event handler?&lt;br /&gt;Add an OnMouseOver attribute to the button. Example: btnSubmit.Attributes.Add("onmouseover","someClientCodeHere();"); What data types do the RangeValidator control support?Integer, String, and Date.&lt;br /&gt;&lt;br /&gt; Explain the differences between Server-side and Client-side code?&lt;br /&gt;Server-side code executes on the server. Client-side code executes in the client's browser.&lt;br /&gt;&lt;br /&gt; What type of code (server or client) is found in a Code-Behind class?&lt;br /&gt;The answer is server-side code since code-behind is executed on the server. However, during the code-behind's execution on the server, it can render client-side code such as JavaScript to be processed in the clients browser. But just to be clear, code-behind executes on the server, thus making it server-side code.&lt;br /&gt;&lt;br /&gt;Should user input data validation occur server-side or client-side? Why?&lt;br /&gt;All user input data validation should occur on the server at a minimum. Additionally, client-side validation can be performed where deemed appropriate and feasable to provide a richer, more responsive experience for the user.&lt;br /&gt;&lt;br /&gt;What is the difference between Server.Transfer and Response.Redirect? Why would I choose one over the other?&lt;br /&gt;Server.Transfer transfers page processing from one page directly to the next page without making a round-trip back to the client's browser. This provides a faster response with a little less overhead on the server. Server.Transfer does not update the clients url history list or current url. Response.Redirect is used to redirect the user's browser to another page or site. This performas a trip back to the client where the client's browser is redirected to the new page. The user's browser history list is updated to reflect the new address.&lt;br /&gt;&lt;br /&gt;Can you explain the difference between an ADO.NET Dataset and an ADO Recordset?&lt;br /&gt;Valid answers are:· A DataSet can represent an entire relational database in memory, complete with tables, relations, and views.· A DataSet is designed to work without any continuing connection to the original data source.· Data in a DataSet is bulk-loaded, rather than being loaded on demand.· There's no concept of cursor types in a DataSet.· DataSets have no current record pointer You can use For Each loops to move through the data.· You can store many edits in a DataSet, and write them to the original data source in a single operation.· Though the DataSet is universal, other objects in ADO.NET come in different versions for different data sources.&lt;br /&gt;&lt;br /&gt;What is the Global.asax used for?&lt;br /&gt;The Global.asax (including the Global.asax.cs file) is used to implement application and session level events.&lt;br /&gt;&lt;br /&gt;What are the Application_Start and Session_Start subroutines used for?&lt;br /&gt;This is where you can set the specific variables for the Application and Session objects.&lt;br /&gt;&lt;br /&gt;Can you explain what inheritance is and an example of when you might use it?&lt;br /&gt;When you want to inherit (use the functionality of) another class. Example: With a base class named Employee, a Manager class could be derived from the Employee base class.&lt;br /&gt;&lt;!-- Begin BidVertiser Referral code --&gt;&lt;br /&gt;&lt;script language="JavaScript"&gt;var bdv_ref_pid=204140;var bdv_ref_type='i';var bdv_ref_option='p';var bdv_ref_eb='0';var bdv_ref_gif_id='ref_120x60_blue_pbl';var bdv_ref_width=120;var bdv_ref_height=60;&lt;/script&gt;&lt;br /&gt;&lt;script language="JavaScript" src="http://srv.bidvertiser.com/bidvertiser/referral_button.html?pid=204140"&gt;&lt;/script&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser Referral code --&gt;&lt;br /&gt;Whats an assembly?Assemblies are the building blocks of the .NET framework. Overview of assemblies from MSDN Describe the difference between inline and code behind.Inline code written along side the html in a page. Code-behind is code written in a separate file and referenced by the .aspx page.&lt;br /&gt;&lt;br /&gt;Explain what a diffgram is, and a good use for one?The DiffGram is one of the two XML formats that you can use to render DataSet object contents to XML. A good use is reading database data to an XML file to be sent to a Web Service.&lt;br /&gt;&lt;br /&gt;Whats MSIL, and why should my developers need an appreciation of it if at all?&lt;br /&gt;MSIL is the Microsoft Intermediate Language. All .NET compatible languages will get converted to MSIL. MSIL also allows the .NET Framework to JIT compile the assembly on the installed computer.&lt;br /&gt;&lt;br /&gt; Which method do you invoke on the DataAdapter control to load your generated dataset with data?&lt;br /&gt;The Fill() method.&lt;br /&gt;&lt;br /&gt;Can you edit data in the Repeater control?&lt;br /&gt;No, it just reads the information from its data source.&lt;br /&gt;&lt;br /&gt;Which template must you provide, in order to display data in a Repeater control?I&lt;br /&gt;temTemplate.&lt;br /&gt;&lt;br /&gt;How can you provide an alternating color scheme in a Repeater control?&lt;br /&gt;Use the AlternatingItemTemplate.&lt;br /&gt;&lt;br /&gt;What property must you set, and what method must you call in your code, in order to bind the data from a data source to the Repeater control?&lt;br /&gt;You must set the DataSource property and call the DataBind method.&lt;br /&gt;&lt;!-- Begin BidVertiser Referral code --&gt;&lt;br /&gt;&lt;script language="JavaScript"&gt;var bdv_ref_pid=204140;var bdv_ref_type='i';var bdv_ref_option='p';var bdv_ref_eb='0';var bdv_ref_gif_id='ref_120x60_blue_pbl';var bdv_ref_width=120;var bdv_ref_height=60;&lt;/script&gt;&lt;br /&gt;&lt;script language="JavaScript" src="http://srv.bidvertiser.com/bidvertiser/referral_button.html?pid=204140"&gt;&lt;/script&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser Referral code --&gt;&lt;br /&gt;What base class do all Web Forms inherit from?&lt;br /&gt;The Page class.&lt;br /&gt;&lt;br /&gt;Name two properties common in every validation control?&lt;br /&gt;ControlToValidate property and Text property.&lt;br /&gt;&lt;br /&gt;Which property on a Combo Box do you set with a column name, prior to setting the DataSource, to display data in the combo box?&lt;br /&gt;DataTextField property.&lt;br /&gt;&lt;br /&gt;Which control would you use if you needed to make sure the values in two different controls matched?&lt;br /&gt;CompareValidator control.&lt;br /&gt;&lt;br /&gt;How many classes can a single .NET DLL contain?&lt;br /&gt;It can contain many classes.&lt;br /&gt; &lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=204140%26bid=498026" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-3392053256961513276?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/3392053256961513276/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=3392053256961513276' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/3392053256961513276'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/3392053256961513276'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/aspnet-interview-questions.html' title='ASP.NET INTERVIEW QUESTIONS'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-5535311570182640982</id><published>2009-01-19T09:04:00.000-08:00</published><updated>2009-01-27T06:19:29.559-08:00</updated><title type='text'>SAP ABAP</title><content type='html'>&lt;span style="FONT-WEIGHT: bold"&gt;Type of tables?&lt;/span&gt;&lt;br /&gt;Ans: There are three thypes of tables exists in abap. They are-:&lt;br /&gt;1. Transparent Tables.It maintains one to one relation with database tables.&lt;br /&gt;2. Pooled tables and&lt;br /&gt;It maintains many to one relation with database tables.&lt;br /&gt;3. Cluster tables.It maintains many to one relation with database tables.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;Events of module pool?&lt;/span&gt;&lt;br /&gt;There are four events in mpp:They are&lt;br /&gt;1. PBO: Process Before Output.&lt;br /&gt;2. PAI: Process after Input.&lt;br /&gt;3. POH: Process on help.&lt;br /&gt;4. POV: Process on Value.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;Events of interactive report?&lt;/span&gt;&lt;br /&gt;Ans:&lt;br /&gt;AT LINE-SELECTION.&lt;br /&gt;AT USERCOMMAND.&lt;br /&gt;AT PF.&lt;br /&gt;TOP-OF-PAGE DURING LINE SELECTION.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;Filters &amp;amp; idoc and segments?&lt;/span&gt;&lt;br /&gt;ans: Filters are used in idocs to filter the data of segments.&lt;br /&gt;Segment is the actual data which resides in the idoc.&lt;br /&gt;Types of enhancements?&lt;br /&gt;Two Types:&lt;br /&gt;1. UserExits.&lt;br /&gt;2. Badis.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;Type of partner profile?&lt;/span&gt;&lt;br /&gt;It is used to mention the logical system name of the remote system while transferring data through ALE or EDI.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;What is RFC? What is its purpose?&lt;/span&gt;&lt;br /&gt;RFC: It is a function module with remote enabled property. It is used to fetch the data from remote system to current system.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;Steps of LSMW?&lt;/span&gt;&lt;br /&gt;Ans: There are 14 steps in LSMW.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;Types of BDC? How u proceed BDC(call transaction)without recording?&lt;/span&gt;&lt;br /&gt;ans: Types of bdc are two types:&lt;br /&gt;1. SESSION METHOD.&lt;br /&gt;2. CALL TRANSACTION METHOD.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;What is message type in idoc?&lt;/span&gt;&lt;br /&gt;Ans: It specifies what kind of data is residing in IDOC.&lt;br /&gt;Ex: MATMAS, DEBMAS,CREMAS.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;What is a dialog program?&lt;/span&gt;&lt;br /&gt;Ans: Dialog programming is nothing but module pool programming which is used to create screens or tansactions.&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;What is debugging? How do you proceed the steps in your reports?&lt;/span&gt;&lt;br /&gt;Degugging is step by steps execution of a program.&lt;br /&gt;It can be done by setting break points.&lt;br /&gt;What are the parameters passed to fieldcatalog?&lt;br /&gt;What are all the tools used for debugging and run time analysis?&lt;br /&gt;For Debugging we can directly do it by setting break points.&lt;br /&gt;Run time analysis means perofrmance tuning;&lt;br /&gt;T-Code for runtime analysis is SE30.&lt;br /&gt;&lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=204140%26bid=498026" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=204140%26bid=498026" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-5535311570182640982?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/5535311570182640982/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=5535311570182640982' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/5535311570182640982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/5535311570182640982'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/sap-abap_19.html' title='SAP ABAP'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-2692521651069715832</id><published>2009-01-19T09:00:00.000-08:00</published><updated>2009-01-19T09:04:22.504-08:00</updated><title type='text'>SAP ABAP</title><content type='html'>Type of tables?&lt;br /&gt;Ans: There are three thypes of tables exists in abap. They are-:&lt;br /&gt;1. Transparent Tables.It maintains one to one relation with database tables.&lt;br /&gt;2. Pooled tables and&lt;br /&gt;It maintains many to one relation with database tables.&lt;br /&gt;3. Cluster tables.It maintains many to one relation with database tables.&lt;br /&gt;Events of module pool?&lt;br /&gt;There are four events in mpp:They are&lt;br /&gt;1. PBO: Process Before Output.&lt;br /&gt;2. PAI: Process after Input.&lt;br /&gt;3. POH: Process on help.&lt;br /&gt;4. POV: Process on Value.&lt;br /&gt;Events of interactive report?&lt;br /&gt;Ans:&lt;br /&gt;AT LINE-SELECTION.&lt;br /&gt;AT USERCOMMAND.&lt;br /&gt;AT PF.&lt;br /&gt;TOP-OF-PAGE DURING LINE SELECTION.&lt;br /&gt;&lt;br /&gt;Filters &amp; idoc and segments?&lt;br /&gt;ans: Filters are used in idocs to filter the data of segments.&lt;br /&gt;Segment is the actual data which resides in the idoc.&lt;br /&gt;Types of enhancements?&lt;br /&gt;Two Types:&lt;br /&gt;1. UserExits.&lt;br /&gt;2. Badis.&lt;br /&gt;Type of partner profile?&lt;br /&gt;It is used to mention the logical system name of the remote system while transferring data through ALE or EDI.&lt;br /&gt;What is RFC? What is its purpose?&lt;br /&gt;RFC: It is a function module with remote enabled property. It is used to fetch the data from remote system to current system.&lt;br /&gt;Steps of LSMW?&lt;br /&gt;Ans: There are 14 steps in LSMW.&lt;br /&gt;Types of BDC? How u proceed BDC(call transaction)without recording?&lt;br /&gt;ans: Types of bdc are two types:&lt;br /&gt;1. SESSION METHOD.&lt;br /&gt;2. CALL TRANSACTION METHOD.&lt;br /&gt;What is message type in idoc?&lt;br /&gt;Ans: It specifies what kind of data is residing in IDOC.&lt;br /&gt;Ex: MATMAS, DEBMAS,CREMAS.&lt;br /&gt;What is a dialog program?&lt;br /&gt;Ans: Dialog programming is nothing but module pool programming which is used to create screens or tansactions.&lt;br /&gt;What is debugging? How do you proceed the steps in your reports?&lt;br /&gt;Degugging is step by steps execution of a program.&lt;br /&gt;It can be done by setting break points.&lt;br /&gt;What are the parameters passed to fieldcatalog?&lt;br /&gt;What are all the tools used for debugging and run time analysis?&lt;br /&gt;For Debugging we can directly do it by setting break points.&lt;br /&gt;Run time analysis means perofrmance tuning;&lt;br /&gt;T-Code for runtime analysis is SE30.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-2692521651069715832?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/2692521651069715832/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=2692521651069715832' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/2692521651069715832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/2692521651069715832'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/sap-abap.html' title='SAP ABAP'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-2087329560161092060</id><published>2009-01-16T20:52:00.000-08:00</published><updated>2009-01-27T06:23:33.333-08:00</updated><title type='text'>SQL Interview Questions</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;try {&lt;br /&gt;var pageTracker = _gat._getTracker("UA-7051572-1");&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;} catch(err) {}&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What is SQL?&lt;/span&gt;&lt;br /&gt;A: SQL stands for 'Structured Query Language'.&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What is SELECT statement?&lt;/span&gt;&lt;br /&gt;A:The SELECT statement lets you select a set of values from a table in a database. The values selected from the database table would depend on the various conditions that are specified in the SQL query.&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:How can you compare a part of the name rather than the entire name?&lt;/span&gt;&lt;br /&gt;A:SELECT * FROM people WHERE empname LIKE '%ab%'&lt;br /&gt;Would return a recordset with records consisting empname the sequence 'ab' in empname .&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What is the INSERT statement?&lt;/span&gt;&lt;br /&gt;A:The INSERT statement lets you insert information into a database.&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:How do you delete a record from a database?&lt;/span&gt;&lt;br /&gt;A:Use the DELETE statement to remove records or any particular column values from a database.&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:How could I get distinct entries from a table?&lt;/span&gt;&lt;br /&gt;A:The SELECT statement in conjunction with DISTINCT lets you select a set of distinct values from a table in a database. The values selected from the database table would of course depend on the various conditions that are specified in the SQL query. Example&lt;br /&gt;SELECT DISTINCT empname FROM emptable&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:How to get the results of a Query sorted in any order?&lt;/span&gt;&lt;br /&gt;A:You can sort the results and return the sorted results to your program by using ORDER BY keyword thus saving you the pain of carrying out the sorting yourself. The ORDER BY keyword is used for sorting.&lt;br /&gt;SELECT empname, age, city FROM emptable ORDER BY empname&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:How can I find the total number of records in a table?&lt;/span&gt;&lt;br /&gt;A:You could use the COUNT keyword , example&lt;br /&gt;SELECT COUNT(*) FROM emp WHERE age&gt;40&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What is GROUP BY?&lt;/span&gt;&lt;br /&gt;A:The GROUP BY keywords have been added to SQL because aggregate functions (like SUM) return the aggregate of all column values every time they are called. Without the GROUP BY functionality, finding the sum for each individual group of column values was not possible.&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What is the difference among "dropping a table", "truncating a table" and "deleting all records" from a table.&lt;/span&gt;&lt;br /&gt;A:Dropping :  (Table structure  + Data are deleted), Invalidates the dependent objects ,Drops the indexes&lt;br /&gt;Truncating:  (Data alone deleted), Performs an automatic commit, Faster than delete&lt;br /&gt;Delete : (Data alone deleted), Doesn’t perform automatic commit&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What are the Large object types suported by Oracle?&lt;/span&gt;&lt;br /&gt;A:Blob and Clob.&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:Difference between a "where" clause and a "having" clause.&lt;/span&gt;&lt;br /&gt;A:Having clause is used only with group functions whereas Where is not used with.&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What's the difference between a primary key and a unique key?&lt;/span&gt;&lt;br /&gt;A:Both primary key and unique enforce uniqueness of the column on which they are defined. But by default primary key creates a clustered index on the column, where are unique creates a nonclustered index by default. Another major difference is that, primary key doesn't allow NULLs, but unique key allows one NULL only.&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What are cursors? Explain different types of cursors. What are the disadvantages of cursors? How can you avoid cursors?&lt;/span&gt;&lt;br /&gt;A:Cursors allow row-by-row prcessing of the resultsets.&lt;br /&gt;Types of cursors: Static, Dynamic, Forward-only, Keyset-driven. See books online for more information.&lt;br /&gt;Disadvantages of cursors: Each time you fetch a row from the cursor, it results in a network roundtrip, where as a normal SELECT query makes only one rowundtrip, however large the resultset is. Cursors are also costly because they require more resources and temporary storage (results in more IO operations). Furthere, there are restrictions on the SELECT statements that can be used with some types of cursors.&lt;br /&gt;Most of the times, set based operations can be used instead of cursors.&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What are triggers? How to invoke a trigger on demand?&lt;/span&gt;&lt;br /&gt;A:Triggers are special kind of stored procedures that get executed automatically when an INSERT, UPDATE or DELETE operation takes place on a table.&lt;br /&gt;Triggers can't be invoked on demand. They get triggered only when an associated action (INSERT, UPDATE, DELETE) happens on the table on which they are defined.&lt;br /&gt;Triggers are generally used to implement business rules, auditing. Triggers can also be used to extend the referential integrity checks, but wherever possible, use constraints for this purpose, instead of triggers, as constraints are much faster.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What is a join and explain different types of joins.&lt;/span&gt;&lt;br /&gt;A:Joins are used in queries to explain how different tables are related. Joins also let you select data from a table depending upon data from another table.&lt;br /&gt;Types of joins: INNER JOINs, OUTER JOINs, CROSS JOINs. OUTER JOINs are further classified as LEFT OUTER JOINS, RIGHT OUTER JOINS and FULL OUTER JOINS.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What is a self join?&lt;/span&gt;&lt;br /&gt;A:Self join is just like any other join, except that two instances of the same table will be joined in the query.&lt;br /&gt;&lt;br /&gt; &lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=204140%26bid=498026" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-2087329560161092060?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/2087329560161092060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=2087329560161092060' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/2087329560161092060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/2087329560161092060'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/sql-interview-questions_16.html' title='SQL Interview Questions'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-4185815910266540231</id><published>2009-01-14T08:15:00.000-08:00</published><updated>2009-01-27T08:46:49.289-08:00</updated><title type='text'>SAP-ERP Questions</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;try {&lt;br /&gt;var pageTracker = _gat._getTracker("UA-7051572-1");&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;} catch(err) {}&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;Q:&lt;span style="font-weight: bold;"&gt; What is ERP?&lt;/span&gt; -&lt;br /&gt;A:ERP is a package with the techniques and concepts for the integrated management of business as a whole, for effective use of management resources, to improve the efficiency of an enterprise. Initially, ERP was targeted for manufacturing industry mainly for planning and managing core business like production and financial market. As the growth and merits of ERP package ERP software is designed for basic process of a company from manufacturing to small shops with a target of integrating information across the company.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Q:&lt;span style="font-weight: bold;"&gt; Different types of ERP? &lt;/span&gt;&lt;br /&gt;A:- SAP, BAAN, JD Edwards, Oracle Financials, Siebel, PeopleSoft. Among all the ERP’s most of the companies implemented or trying to implement SAP because of number of advantages aver other ERP packages.&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;Q: What is SAP? &lt;/span&gt;&lt;br /&gt;A:- SAP is the name of the company founded in 1972 under the German name (Systems, Applications, and Products in Data Processing) is the leading ERP (Enterprise Resource Planning) software package.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;Q:. Explain the concept of “Business Content” in SAP Business Information Warehouse? &lt;/span&gt;&lt;br /&gt;A:- Business Content is a pre-configured set of role and task-relevant information models based on consistent Metadata in the SAP Business Information Warehouse. Business Content provides selected roles within a company with the information they need to carry out their tasks. These information models essentially contain roles, workbooks, queries, InfoSources, InfoCubes, key figures, characteristics, update rules and extractors for SAP R/3, mySAP.com Business Applications and other selected applications.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:  Why do you usually choose to implement SAP? &lt;/span&gt;&lt;br /&gt;A:- There are number of technical reasons numbers of companies are planning to implement SAP. It’s highly configurable, highly secure data handling, min data redundancy, max data consistency, you can capitalize on economics of sales like purchasing, tight integration-cross function.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:Can BW run without a SAP R/3 implementation? &lt;/span&gt;&lt;br /&gt;A:- Certainly. You can run BW without R/3 implementation. You can use pre-defined business content in BW using your non-SAP data. Here you simply need to map the transfer structures associated with BW data sources (InfoCubes, ODS tables) to the inbound data files or use 3rd part tool to connect your flat files and other data sources and load data in BW. Several third party ETL products such as Acta, Infomatica, DataStage and others will have been certified to load data in BW.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What is IDES?&lt;/span&gt;&lt;br /&gt;A: - International Demonstration and Education System. A sample application provided for faster learning and implementation.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q:What is WF and its importance? &lt;/span&gt;&lt;br /&gt;A:- Business Work Flow: Tool for automatic control and execution of cross-application processes. This involves coordinating the persons involved, the work steps required, the data, which needs to be processed (business objects). The main advantage is reduction in throughput times and the costs involved in managing business processes. Transparency and quality are enhanced by its use.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What is SAP R/3? &lt;/span&gt;&lt;br /&gt;A:- A third generation set of highly integrated software modules that performs common business function based on multinational leading practice. Takes care of any enterprise however diverse in operation, spread over the world. In R/3 system all the three servers like presentation, application server and database server are located at different system.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What are presentation, application and database servers in SAP R/3? &lt;/span&gt;&lt;br /&gt;A:- The application layer of an R/3 System is made up of the application servers and the message server. Application programs in an R/3 System are run on application servers. The application servers communicate with the presentation components, the database, and also with each other, using the message server. All the data are stored in a centralized server. This server is called database server.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What should be the approach for writing a BDC program? &lt;/span&gt;&lt;br /&gt;A:- Convert the legacy system data to a flat file and convert flat file into internal table. Transfer the flat file into sap system called “sap data transfer”. Call transaction(Write the program explicitly) or create sessions (sessions are created and processed ,if success data will transfer).&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: Explain open SQL vs native SQL? &lt;/span&gt;&lt;br /&gt;A:- ABAP Native SQL allows you to include database-specific SQL statements in an ABAP program. Most ABAP programs containing database-specific SQL statements do not run with different databases. If different databases are involved, use Open SQL. To execute ABAP Native SQL in an ABAP program, use the statement EXEC. Open SQL (Subset of standard SQL statements), allows you to access all database tables available in the R/3 System, regardless of the manufacturer. To avoid conflicts between database tables and to keep ABAP programs independent from the database system used, SAP has generated its own set of SQL statements known as Open SQL.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What are datasets?&lt;/span&gt;&lt;br /&gt;A: - The sequential files (processed on application server) are called datasets. They are used for file handling in SAP.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What are internal tables check table, value table, and transparent table?&lt;/span&gt;&lt;br /&gt;A: - Internal table: It is a standard data type object, which exists only during the runtime of the program. Check table: Check table will be at field level checking. Value table: Value table will be at domain level checking ex: scarr table is check table for carrid. Transparent table: - Exists with the same structure both in dictionary as well as in database exactly with the same data and fields.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What are the major benefits of reporting with BW over R/3? Would it be sufficient just to Web-enable R/3 Reports?&lt;/span&gt;&lt;br /&gt;A: - Performance — Heavy reporting along with regular OLTP transactions can produce a lot of load both on the R/3 and the database (cpu, memory, disks, etc). Just take a look at the load put on your system during a month end, quarter end, or year-end — now imagine that occurring even more frequently. Data analysis — BW uses a Data Warehouse and OLAP concepts for storing and analyzing data, where R/3 was designed for transaction processing. With a lot of work you can get the same analysis out of R/3 but most likely would be easier from a BW.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: How can an ERP such as SAP help a business owner learn more about how business operates? &lt;/span&gt;&lt;br /&gt;A:- In order to use an ERP system, a business person must understand the business processes and how they work together from one functional area to the other. This knowledge gives the student a much deeper understanding of how a business operates. Using SAP as a tool to learn about ERP systems will require that the      people understand the business processes and how they integrate.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What is the difference between OLAP and Data Mining?&lt;/span&gt;&lt;br /&gt;A: - OLAP - On line Analytical processing is a reporting tool configured to understand your database schema ,composition facts and dimensions . By simple point-n-clicking, a user can run any number of canned or user-designed reports without having to know anything of SQL or the schema. Because of that prior configuration, the OLAP engine “builds” and executes the appropriate SQL. Mining is to build the application to specifically look at detailed analyses, often algorithmic; even more often misappropriate called “reporting.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What is “Extended Star Schema” and how did it emerge? &lt;/span&gt;&lt;br /&gt;A:- The Star Schema consists of the Dimension Tables and the Fact Table. The Master Data related tables are kept in separate tables, which has reference to the characteristics in the dimension table(s). These separate tables for master data is termed as the Extended Star Schema.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: Define Meta data, Master data and Transaction data?&lt;/span&gt;&lt;br /&gt;A: - Meta Data: Data that describes the structure of data or MetaObjects is called Metadata. In other words data about data is known as Meta Data.&lt;br /&gt; Master Data: Master data is data that remains unchanged over a long period of time. It contains information that is always needed in the same way. Characteristics can bear master data in BW. With master data you are dealing with attributes, texts or hierarchies.&lt;br /&gt;Transaction data: Data relating to the day-to-day transactions is the Transaction data.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: Name some drawbacks of SAP?&lt;/span&gt;&lt;br /&gt;A: - Interfaces are huge problem, Determine where master data resides, Expensive, very complex, demands highly trained staff, lengthy implementation time.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What is Bex? &lt;/span&gt;&lt;br /&gt;A:- Bex stands for Business Explorer. Bex enables end user to locate reports, view reports, analyze information and can execute queries. The queries in workbook can be saved to there respective roles in the Bex browser. Bex has the following components: Bex Browser, Bex analyzer, Bex Map, Bex Web.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What are variables? &lt;/span&gt;&lt;br /&gt;A:- Variables are parameters of a query that are set in the parameter query definition and are not filled with values until the queries are inserted into workbooks. There are different types of variables which are used in different application: Characteristics variables, Hierarchies and hierarchy node, Texts, Formulas, Processing types, User entry/Default type, Replacment Path.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What is AWB?. What is its purpose? &lt;/span&gt;&lt;br /&gt;A:- AWB stands for Administrator WorkBench. AWB is a tool for controlling, monitoring and maintaining all the processes connected with data staging and processing in the business information whearhousing.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What is the significance of ODS in BIW? &lt;/span&gt;&lt;br /&gt;A:- An ODS Object serves to store consolidated and debugged transaction data on a document level (atomic level). It describes a consolidated dataset from one or more InfoSources. This dataset can be analyzed with a BEx Query or InfoSet Query. The data of an ODS Object can be updated with a delta update into InfoCubes and/or other ODS Objects in the same system or across systems. In contrast to multi-dimensional data storage with InfoCubes, the data in ODS Objects is stored in transparent, flat database tables.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What are the different types of source system? &lt;/span&gt;&lt;br /&gt;A:- SAP R/3 Source Systems, SAP BW, Flat Files and External Systems.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q: What is Extractor? &lt;/span&gt;&lt;br /&gt;A:- Extractors is a data retrieval mechanisms in the SAP source system. Which can fill the extract structure of a data source with the data from the SAP source system datasets. The extractor may be able to supply data to more fields than exist in the extract structure.&lt;br /&gt;&lt;br /&gt; &lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=204140%26bid=498115" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-4185815910266540231?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/4185815910266540231/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=4185815910266540231' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/4185815910266540231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/4185815910266540231'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/sap-erp-questions.html' title='SAP-ERP Questions'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-8196501543487834629</id><published>2009-01-13T02:44:00.000-08:00</published><updated>2009-01-27T08:48:11.380-08:00</updated><title type='text'>.NET Questions</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;try {&lt;br /&gt;var pageTracker = _gat._getTracker("UA-7051572-1");&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;} catch(err) {}&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Q:-&lt;strong&gt;What do you mean by Share Point Portal ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A:  Here I have taken information regarding Share Point Portal Server 2003 provides mainly access to the crucial business information and applications.With the help of Share Point Server we can server information between Public Folders, Data Bases, File Servers and the websites that are based on Windows server 2003. This Share Point Portal is integrated with MSAccess and Windows servers,So we can get a Wide range of document management functionality. We can also create a full featured portal with readymade navigation and structure.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Q:-What is cross page posting in ASP.NET2.0 ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: When we have to post data from one page to another in application we used server.transfer method but in this the URL remains the same but in cross page posting there is little different there is normal post back is done but in target page we can access values of server control in the source page.This is quite simple we have to only set the PostBackUrl property of Button,LinkButton or imagebutton which specifies the target page.In target page we can access the PreviousPage property.And we have to use the @PreviousPageType directive.We can access control of PreviousPage by using the findcontrol method.When we set the PostBackURL property ASP.NET framework bind the HTML and Javascript function automatically.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q:-How to call method that handles the Click event for several buttons ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: Protected Sub AnyClicked(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click, Button3.ClickDim b As Button = CType(sender, Button)Response.Write("You clicked the button labeled " &amp;amp; b.ID) End Sub &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Q: What is diffrence between Debug and Trace class ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: Debug Class helps to set methods and properties that helps in debugging code. If we use methods in Debug class for print debugging information and checking our logic with cases, we can make our code more robust without impacting the performance and code size. On the other side we use the properties and methods in the Trace class to release builds and instrumentation allows us to monitor the condition of our application running in real-life settings. Tracing helps us to know problems and fix them without interact a running system. Trace is enabled by default in visual 2005. So code is generated for all trace methods in both release and debug builds.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q: What do you mean by Web Part Control in asp.net ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: ASP.NET Web Parts controls are the integrated controls which helps in creation of Web sites that also help users to modify the content as well as appearance, and behavior of pages of web sites that are open in browser.Question: What changes are done in IIS 6.0 over IIS 5.0 ?Answer: IIS makes easy to get information.IIS 6.0 is the next latest of web server available in Windows Server 2003 platform. IIS 6.0 contains several enhancements over IIS 5.0 that are mainly to increase reliability, manageability, scalability, and security. IIS 6.0 is a key component of the Windows Server 2003 application platform, using which you can develop and deploy high performance ASP.NET Web applications, and XML Web Services.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt; Q: Com Marshler function in .NET ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: Com Marshler is useful component of CLR.Main work of marshal data between Managed and Unmanaged environment .It helps in representation of data accross diffrenet execution enviroment.Its also convert data format between manage and unmanaged code.By the helps of Com Marshlar CLR allows manage code to interoperate with unmanaged code.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q: How Visual SourceSafe helps Us ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: One of the powerful tool provided by Microsoft to keep up-to-date of files system its keeps records of file history once we add files to source safe it can be add to database and the changes ade by diffrenet user to this files are maintained in database from that we can get the older version of files to.This also helps in sharing,merging of files.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q: What is main difference between GridLayout and FormLayout ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: GridLayout helps in providing absolute positioning of every control placed on the page.It is easier to devlop page with absolute positioning because control can be placed any where according to our requirement.But FormLayout is little different only experience Web Devloper used this one reason is it is helpful for wider range browser.If there is absolute positioning we can notice that there are number of DIV tags.But in FormLayout whole work are done through the tables.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q: What is the purpose of IIS ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: We can call IIS(Internet Information Services) a powerful Web server that helps us creating highly reliable, scalable and manageable infrastructure for Web application which runs on Windows Server 2003. IIS helps development center and increase Web site and application availability while lowering system administration costs. It also runs on Windows NT/2000 platforms and also for above versions. With IIS, Microsoft includes a set of programs for building and administering Web sites, a search engine, and support for writing Web-based applications that access database. IIS also called http server since it process the http request and gets http response.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q: How to start Outlook,NotePad file in AsP.NET with code ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: Here is the syntax to open outlook or notepad file in ASP.NET VB.NET Process.Start("Notepad.exe") Process.Start("msimn.exe"); C#.NET System.Diagnostics.Process.Start("msimn.exe"); System.Diagnostics.Process.Start("Notepad.exe"); Question: What you thing about the WebPortal ?Answer: Web portal is nothing but a page that allows a user to customize his/her homepage. We can use Widgets to create that portal we have only to drag and drop widgets on the page. The user can set his Widgets on any where on the page where he has to get them. Widgets are nothing but a page area that helps particular function to response. Widgets example are address books, contact lists, RSS feeds, clocks, calendars, play lists, stock tickers, weather reports, traffic reports, dictionaries, games and another such beautiful things that we can not imagine. We can also say Web Parts in Share Point Portal. These are one of Ajax-Powered.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q:-Can you define what is SharePoint and some overview about this ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: SharePoint helps workers for creating powerful personalized interfaces only by dragging and drop pre-defined Web Part Components. And these Web Parts components also helps non programmers to get information which care and customize the appearance of Web pages. To under stand it we take an example one Web Part might display a user's information another might create a graph showing current employee status and a third might show a list of Employees Salary. This is also possible that each functions has a link to a video or audio presentation.So now Developers are unable to create these Web Part components and make them available to SharePoint users.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q:-What is different between WebUserControl and in WebCustomControl ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: &lt;strong&gt;Web user controls&lt;/strong&gt; :- Web User Control is Easier to create and another thing is that its support is limited for users who use a visual design tool one gud thing is that its contains static layout one more thing a seprate copy is required for each application. Web custom controls:-Web Custom Control is typical to create and gud for dynamic layout and another thing is it have full tool support for user and a single copy of control is required because it is placed in Global Assembly cache. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q:-What is Sandbox in SQL server and explain permission level in Sql Server ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: Sandbox is place where we run trused program or script which is created from the third party. There are three type of Sandbox where user code run.Safe Access Sandbox:-Here we can only create stored procedure,triggers,functions,datatypes etc.But we doesnot have acess memory ,disk etc.External Access Sandbox:-We cn access File systems outside the box. We can not play with threading,memory allocation etc.Unsafe Access Sandbox:-Here we can write unreliable and unsafe code.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q:-How many types of cookies are there in .NET ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: Two type of cookeies.a) single valued eg request.cookies("UserName").value="dotnetquestion"b)Multivalued cookies. These are used in the way collections are used examplerequest.cookies("CookiName")("UserName")="dotnetquestionMahesh"request.cookies("CookiName")("UserID")="interview″Question: When we get Error 'HTTP 502 Proxy Error' ?Answer: We get this error when we execute ASP.NET Web pages in Visual Web Developer Web server, because the URL randomly select port number and proxy servers did not recognize the URL and return this error. To resolve this problem we have to change settings in Internet Explorer to bypass the proxy server for local addresses, so that the request is not sent to the proxy. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q:-What do you mean by three-tier architecture?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: The three-tier architecture was comes into existence to improve management of code and contents and to improve the performance of the web based applications.There are mainly three layers in three-tier architecture.the are define as follows (1)Presentation (2)Business Logic (3)Database (1)First layer Presentation contains mainly the interface code, and this is shown to user. This code could contain any technology that can be used on the client side like HTML, JavaScript or VBScript etc.(2)Second layer is Business Logic which contains all the code of the server-side .This layer have code to interact with database database and to query, manipulate, pass data to user interface and handle any input from the UI as well. (3)Third layer Data represents the data store like MS Access, SQL Server, an XML file, an Excel file or even a text file containing data also some addtional database are also added to that layers.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q: What is Finalizer in .NET define Dispose and Finalize ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: We can say that Finalizer are the methods that's helps in cleanp the code that is executed before object is garbage collected .The process is called finalization . There are two methods of finalizer Dispose and Finalize .There is little diffrenet between two of this method .When we call Dispose method is realse all the resources hold by an object as well as all the resorces hold by the parent object.When we call Dispose method it clean managed as well as unmanaged resources.Finalize methd also cleans resources but finalize call dispose clears only the unmanged resources because in finalization the garbase collecter clears all the object hold by managed code so finalization fails to prevent thos one of methd is used that is: GC.SuppressFinalize.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q: Define SMTPclient class in DotNet framework class libarary ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: Each classes in dotnet framework inclue some properties,method and events.These properties ,methods and events are member of a class.SMTPclient class mainly concern with sending mail.This class contain the folling member.Properties:-Host:-The name or IP address of email server.Port:-Port that is use when sending mail.Methods:-Send:-Enables us to send email synchronously.SendAsynchronous:-Enables us to send an email asynchronously.Event:-SendCompleted:-This event raised when an asynchronous send opertion completes. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q: What is late binding ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: When code interacts with an object dynamically at runtime .because our code literally doesnot care what type of object it is interacting and with the methods thats are supported by object and with the methods thats are supported by object .The type of object is not known by the IDE or compiler ,no Intellisense nor compile-time syntax checking is possible but we get unprecedented flexibilty in exchange.if we enable strict type checking by using option strict on at the top of our code modules ,then IDE and compiler will enforce early binding behaviour .By default Late binding is done. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q:-Does .NET CLR and SQL SERVER run in different process ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: Dot Net CLR and all .net realtes application and Sql Server run in same process or we can say that that on the same address because there is no issue of speed because if these two process are run in different process then there may be a speed issue created one process goes fast and other slow may create the problem.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q:-What is Com Marshler and its importance in .NET ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: Com Marshler is one of useful component of CLR. Its Task is to marshal data between Managed and Unmanaged environment .It helps in representation of data accross diffrenet execution enviroment.It performs the conversion of data format between manage and unmanaged code.By the helps of Com Marshlar CLR allows manage code to interoperate with unmanaged code. Question: What is CSU and its description ?Answer: CSU stands for comma separate values also called comma delimited.It is plain text file which stores spreadsheets or basic datatype in very simple format.One record in each line and each field separted with comma's it is often used to transfer large ammount spreadsheet data or database information between program. Question: The IHttpHandler and IHttpHandlerFactory interfaces ?Answer: The IHttpHandler interface is implemented by all the handlers. The interface consists of one property called IsReusable. The IsReusable property gets a value indicating whether another request can use the IHttpHandler instance. The method ProcessRequest() allows you to process the current request. This is the core place where all your code goes. This method receives a parameter of type HttpContext using which you can access the intrinsic objects such as Request and Response. The IHttpHandlerFactory interface consists of two methods - GetHandler and ReleaseHandler. The GetHandler() method instantiates the required HTTP handler based on some condition and returns it back to ASP.NET. The ReleaseHandler() method allows the factory to reuse an existing handler. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q: what is Viewstate?&lt;/strong&gt; &lt;/p&gt;&lt;p&gt;A:View state is used by the ASP.NET page framework to automatically save the values of the page and of each control just prior to rendering to the page. When the page is posted, one of the first tasks performed by page processing is to restore view state.State management is the process by which you maintain state and page information over multiple requests for the same or different pages. Client-side options are:&lt;br /&gt;* The ViewState property&lt;br /&gt;* Query strings&lt;br /&gt;* Hidden fields&lt;br /&gt;* Cookies&lt;br /&gt;Server-side options are:&lt;br /&gt;* Application state&lt;br /&gt;* Session state&lt;br /&gt;* DataBase&lt;br /&gt;Use the View State property to save data in a hidden field on a page. Because ViewState stores data on the page, it is limited to items that can be serialized. If you want to store more complex items in View State, you must convert the items to and from a string.ASP.NET provides the following ways to retain variables between requests:Context.Handler object Use this object to retrieve public members of one Web form’s class from a subsequently displayed Web form. Query strings Use these strings to pass information between requests and responses as part of the Web address. Query strings are visible to the user, so they should not contain secure information such as passwords. Cookies Use cookies to store small amounts of information on a client. Clients might refuse cookies, so your code has to anticipate that possibility. View state ASP.NET stores items added to a page’s ViewState property as hidden fields on the page.Session state Use Session state variables to store items that you want keep local to the current session (single user).Application state Use Application state variables to store items that you want be available to all users of the application. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Q: DOTNET PAGE LIFECYCLE ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: While excuting the page, it will go under the fallowing steps(or fires the events) which collectivly known as Page Life cycle.Page_Init -- Page InitializationLoadViewState -- View State LoadingLoadPostData -- Postback data processingPage_Load -- Page LoadingRaisePostDataChangedEvent -- PostBack Change NotificationRaisePostBackEvent -- PostBack Event HandlingPage_PreRender -- Page Pre Rendering PhaseSaveViewState -- View State SavingPage_Render -- Page Rendering Page_UnLoad -- Page UnloadingQuestion: What is Satellite Assemblies ?Answer: Satellite assemblies are often used to deploy language-specific resources for an application. These language-specific assemblies work in side-by-side execution because the application has a separate product ID for each language and installs satellite assemblies in a language-specific subdirectory for each language. When uninstalling, the application removes only the satellite assemblies associated with a given language and .NET Framework version. No core .NET Framework files are removed unless the last language for that .NET Framework version is being removed. For example, English and Japanese editions of the .NET Framework version 1.1 share the same core files. The Japanese .NET Framework version 1.1 adds satellite assemblies with localized resources in a \ja subdirectory. An application that supports the .NET Framework version 1.1, regardless of its language, always uses the same core runtime files. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q: What is CAS ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A:CAS: CAS is the part of the .NET security model that determines whether or not a piece of code is allowed to run, and what resources it can use when it is running. For example, it is CAS that will prevent a .NET web applet from formatting your hard disk. How does CAS work? The CAS security policy revolves around two key concepts - code groups and permissions. Each .NET assembly is a member of a particular code group, and each code group is granted the permissions specified in a named permission set. For example, using the default security policy, a control downloaded from a web site belongs to the 'Zone - Internet' code group, which adheres to the permissions defined by the 'Internet' named permission set. (Naturally the 'Internet' named permission set represents a very restrictive range of permissions.) &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Q: Automatic Memory Management ?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: Automatic Memory Management: From a programmer's perspective, this is probably the single biggest benefit of the .NET Framework. No, I'm not kidding. Every project I've worked on in my long career of DOS and Windows development has suffered at some point from memory management issues. Proper memory management is hard. Even very good programmers have difficulty with it. It's entirely too easy for a small mistake to cause a program to chew up memory and crash, sometimes bringing the operating system to a screeching halt in the process.Programmers understand that they're responsible for releasing any memory that they allocate, but they're not very good at actually doing it. In addition, functions that allocate memory as a side effect abound in the Windows API and in the C runtime library. It's nearly impossible for a programmer to know all of the rules. Even when the programmer follows the rules, a small memory leak in a support library can cause big problems if called enough.The .NET Framework solves the memory management problems by implementing a garbage collector that can keep track of allocated memory references and release the memory when it is no longer referenced. A large part of what makes this possible is the blazing speed of today's processors. When you're running a 2 GHz machine, it's easy to spare a few cycles for memory management. Not that the garbage collector takes a huge number of cycles--it's incredibly efficient.The garbage collector isn't perfect and it doesn't solve the problem of mis-managing other scarce resources (file handles, for example), but it relieves programmers from having to worry about a huge source of bugs that trips almost everybody up in other programming environments.On balance, automatic memory management is a huge win in almost every situation.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q: What Language familar to CLR?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A: Any language that can be compiled into Microsoft Intermediate Language (MSIL) is considered a .NET-compliant language. Following are a few of the popular .NET-compliant languages supported by CLR:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt; &lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=204140%26bid=498115" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;pay per click advertising&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-8196501543487834629?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/8196501543487834629/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=8196501543487834629' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/8196501543487834629'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/8196501543487834629'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/net-questions.html' title='.NET Questions'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-2447878739908416611</id><published>2009-01-13T02:40:00.000-08:00</published><updated>2009-01-16T21:06:35.851-08:00</updated><title type='text'>JAVA Questions-3</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;try {&lt;br /&gt;var pageTracker = _gat._getTracker("UA-7051572-1");&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;} catch(err) {}&lt;/script&gt;&lt;br /&gt;&lt;strong&gt;Q: What if the main method is declared as private?&lt;/strong&gt;&lt;br /&gt;A: The program compiles properly but at runtime it will give "Main method not public." message.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: What if the static modifier is removed from the signature of the main method?&lt;/strong&gt;&lt;br /&gt;A: Program compiles. But at runtime throws an error "NoSuchMethodError".&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: What if I write static public void instead of public static void?&lt;/strong&gt;&lt;br /&gt;A: Program compiles and runs properly.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Q&lt;strong&gt;: What if I do not provide the String array as the argument to the method?&lt;/strong&gt;&lt;br /&gt;A: Program compiles but throws a runtime error "NoSuchMethodError".&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: What is the first argument of the String array in main method? &lt;/strong&gt;&lt;br /&gt;A: The String array is empty. It does not have any element. This is unlike C/C++ where the first element by default is the program name.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: If I do not provide any arguments on the command line, then the String array of Main method will be empty or null?&lt;br /&gt;&lt;/strong&gt;A: It is empty. But not null.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: How can one prove that the array is not null but empty using one line of code?&lt;/strong&gt;&lt;br /&gt;A: Print args.length. It will print 0. That means it is empty. But if it would have been null then it would have thrown a NullPointerException on attempting to print args.length.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: What environment variables do I need to set on my machine in order to be able to run Java programs?&lt;br /&gt;&lt;/strong&gt;A: CLASSPATH and PATH are the two variables.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: Can an application have multiple classes having main method?&lt;/strong&gt;&lt;br /&gt;A: Yes it is possible. While starting the application we mention the class name to be run. The JVM will look for the Main method only in the class whose name you have mentioned. Hence there is not conflict amongst the multiple classes having main method.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: Can I have multiple main methods in the same class?&lt;/strong&gt;&lt;br /&gt;A: No the program fails to compile. The compiler says that the main method is already defined in the class.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: Do I need to import java.lang package any time? Why ?&lt;/strong&gt;&lt;br /&gt;A: No. It is by default loaded internally by the JVM.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: Can I import same package/class twice? Will the JVM load the package twice at runtime?&lt;br /&gt;&lt;/strong&gt;A: One can import the same package or same class multiple times. Neither compiler nor JVM complains abt it. And the JVM will internally load the class only once no matter how many times you import the same class.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: What are Checked and UnChecked Exception?&lt;/strong&gt;&lt;br /&gt;A: A checked exception is some subclass of Exception (or Exception itself), excluding class RuntimeException and its subclasses.&lt;br /&gt;Making an exception checked forces client programmers to deal with the possibility that the exception will be thrown. eg, IOException thrown by java.io.FileInputStream's read() method·&lt;br /&gt;Unchecked exceptions are RuntimeException and any of its subclasses. Class Error and its subclasses also are unchecked. With an unchecked exception, however, the compiler doesn't force client programmers either to catch the&lt;br /&gt;exception or declare it in a throws clause. In fact, client programmers may not even know that the exception could be thrown. eg, StringIndexOutOfBoundsException thrown by String's charAt() method· Checked exceptions must be caught at compile time. Runtime exceptions do not need to be. Errors often cannot be.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: What is Overriding?&lt;/strong&gt;&lt;br /&gt;A: When a class defines a method using the same name, return type, and arguments as a method in its superclass, the method in the class overrides the method in the superclass.&lt;br /&gt;When the method is invoked for an object of the class, it is the new definition of the method that is called, and not the method definition from superclass. Methods may be overridden to be more public, not more private.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Q: What are different types of inner classes?&lt;/strong&gt;&lt;br /&gt;A: Nested top-level classes, Member classes, Local classes, Anonymous classes&lt;br /&gt;Nested top-level classes- If you declare a class within a class and specify the static modifier, the compiler treats the class just like any other top-level class.&lt;br /&gt;Any class outside the declaring class accesses the nested class with the declaring class name acting similarly to a package. eg, outer.inner. Top-level inner classes implicitly have access only to static variables.There can also be inner interfaces. All of these are of the nested top-level variety.&lt;br /&gt;&lt;br /&gt;Member classes - Member inner classes are just like other member methods and member variables and access to the member class is restricted, just like methods and variables. This means a public member class acts similarly to a nested top-level class. The primary difference between member classes and nested top-level classes is that member classes have access to the specific instance of the enclosing class.&lt;br /&gt;&lt;br /&gt;Local classes - Local classes are like local variables, specific to a block of code. Their visibility is only within the block of their declaration. In order for the class to be useful beyond the declaration block, it would need to implement a&lt;br /&gt;more publicly available interface.Because local classes are not members, the modifiers public, protected, private, and static are not usable.&lt;br /&gt;&lt;br /&gt;Anonymous classes - Anonymous inner classes extend local inner classes one level further. As anonymous classes have no name, you cannot provide a constructor.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-2447878739908416611?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/2447878739908416611/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=2447878739908416611' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/2447878739908416611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/2447878739908416611'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/java-questions-3.html' title='JAVA Questions-3'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-6985000249545041559</id><published>2009-01-13T02:34:00.000-08:00</published><updated>2009-01-16T21:07:13.595-08:00</updated><title type='text'>JAVA Questions-2</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;try {&lt;br /&gt;var pageTracker = _gat._getTracker("UA-7051572-1");&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;} catch(err) {}&lt;/script&gt;&lt;br /&gt;Q: What is the difference between an Interface and an Abstract class?     &lt;br /&gt;A: An abstract class can have instance methods that implement a default behavior. An Interface can only declare constants and instance methods, but cannot implement default behavior and all methods are implicitly abstract. An interface has all public members and no implementation. An abstract class is a class which may have the usual flavors of class members (private, protected, etc.), but has some abstract methods.&lt;br /&gt;.     &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: What is the purpose of garbage collection in Java, and when is it used?    &lt;br /&gt;A: The purpose of garbage collection is to identify and discard objects that are no longer needed by a program so that their resources can be reclaimed and reused. A Java object is subject to garbage collection when it becomes unreachable to the program in which it is used.     &lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Q: Describe synchronization in respect to multithreading.    &lt;br /&gt;A: With respect to multithreading, synchronization is the capability to control the access of multiple threads to shared resources. Without synchonization, it is possible for one thread to modify a shared variable while another thread is in the process of using or updating same shared variable. This usually leads to significant errors.     &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: Explain different way of using thread?     &lt;br /&gt;A: The thread could be implemented by using runnable interface or by inheriting from the Thread class. The former is more advantageous, 'cause when you are going for multiple inheritance..the only interface can help.    &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: What are pass by reference and passby value?     &lt;br /&gt;A: Pass By Reference means the passing the address itself rather than passing the value. Passby Value means passing a copy of the value to be passed.     &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: What is HashMap and Map?    &lt;br /&gt;A: Map is Interface and Hashmap is class that implements that.    &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: Difference between HashMap and HashTable?    &lt;br /&gt;A: The HashMap class is roughly equivalent to Hashtable, except that it is unsynchronized and permits nulls. (HashMap allows null values as key and value whereas Hashtable doesnt allow). HashMap does not guarantee that the order of the map will remain constant over time. HashMap is unsynchronized and Hashtable is synchronized.     &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: Difference between Vector and ArrayList?    &lt;br /&gt;A: Vector is synchronized whereas arraylist is not.    &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: Difference between Swing and Awt?    &lt;br /&gt;A: AWT are heavy-weight componenets. Swings are light-weight components. Hence swing works faster than AWT.    &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: What is the difference between a constructor and a method?     &lt;br /&gt;A: A constructor is a member function of a class that is used to create objects of that class. It has the same name as the class itself, has no return type, and is invoked using the new operator.&lt;br /&gt;A method is an ordinary member function of a class. It has its own name, a return type (which may be void), and is invoked using the dot operator.    &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: What is an Iterator?    &lt;br /&gt;A: Some of the collection classes provide traversal of their contents via a java.util.Iterator interface. This interface allows you to walk through a collection of objects, operating on each object in turn. Remember when using Iterators that they contain a snapshot of the collection at the time the Iterator was obtained; generally it is not advisable to modify the collection itself while traversing an Iterator.    &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: State the significance of public, private, protected, default modifiers both singly and in combination and state the effect of package relationships on declared items qualified by these modifiers.    &lt;br /&gt;A: public : Public class is visible in other packages, field is visible everywhere (class must be public too)&lt;br /&gt;private : Private variables or methods may be used only by an instance of the same class that declares the variable or method, A private feature may only be accessed by the class that owns the feature.&lt;br /&gt;protected : Is available to all classes in the same package and also available to all subclasses of the class that owns the protected feature.This access is provided even to subclasses that reside in a different package from the class that owns the protected feature.&lt;br /&gt;default :What you get by default ie, without any access modifier (ie, public private or protected).It means that it is visible to all within a particular package.    &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: What is an abstract class?    &lt;br /&gt;A: Abstract class must be extended/subclassed (to be useful). It serves as a template. A class that is abstract may not be instantiated (ie, you may not call its constructor), abstract class may contain static data. Any class with an abstract method is automatically abstract itself, and must be declared as such.&lt;br /&gt;A class may be declared abstract even if it has no abstract methods. This prevents it from being instantiated.    &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: What is static in java?    &lt;br /&gt;A: Static means one per class, not one for each object no matter how many instance of a class might exist. This means that you can use them without creating an instance of a class.Static methods are implicitly final, because overriding is done based on the type of the object, and static methods are attached to a class, not an object. A static method in a superclass can be shadowed by another static method in a subclass, as long as the original method was not declared final. However, you can't override a static method with a nonstatic method. In other words, you can't change a static method into an instance method in a subclass.    &lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;Q: What is final?    &lt;br /&gt;A: A final class can't be extended ie., final class may not be subclassed. A final method can't be overridden when its class is inherited. You can't change value of a final variable (is a constant).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-6985000249545041559?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/6985000249545041559/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=6985000249545041559' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/6985000249545041559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/6985000249545041559'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/java-questions-2.html' title='JAVA Questions-2'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-3073611559367094349</id><published>2009-01-12T06:45:00.001-08:00</published><updated>2009-01-16T21:08:26.796-08:00</updated><title type='text'>XML Interview Questions</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;try {&lt;br /&gt;var pageTracker = _gat._getTracker("UA-7051572-1");&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;} catch(err) {}&lt;/script&gt;&lt;br /&gt;1. What is XML?&lt;br /&gt;XML is the Extensible Markup Language. It improves the functionalityof the Web by letting you identify your information in a more accurate,flexible, and adaptable way. It is extensible because it is nota fixed format like HTML (which is a single, predefined markup language).Instead, XML is actually a meta language—a language for describingother languages—which lets you design your own markup languagesfor limitless different types of documents. XML can do this becauseit’s written in SGML, the international standard meta language fortext document markup (ISO 8879).&lt;br /&gt;2. What is a markup language?&lt;br /&gt;A markup language is a set of words and symbols for describingthe identity of pieces of a document (for example ‘this isa paragraph’, ‘this is a heading’, ‘thisis a list’, ‘this is the caption of this figure’,etc). Programs can use this with a style sheet to create outputfor screen, print, audio, video, Braille, etc. Some markup languages (eg those used in word processors) only describeappearances (’this is italics’, ‘this is bold’),but this method can only be used for display, and is not normallyre-usable for anything else.&lt;br /&gt;3. Where should I use XML?&lt;br /&gt;Its goal is to enable generic SGML to be served, received, andprocessed on the Web in the way that is now possible with HTML.XML has been designed for ease of implementation and for interoperabilitywith both SGML and HTML. Despite early attempts, browsers never allowed other SGML, onlyHTML (although there were plugins), and they allowed it (even encouragedit) to be corrupted or broken, which held development back for overa decade by making it impossible to program for it reliably. XMLfixes that by making it compulsory to stick to the rules, and bymaking the rules much simpler than SGML.&lt;br /&gt;But XML is not just for Web pages: in fact it’s very rarely usedfor Web pages on its own because browsers still don’t provide reliablesupport for formatting and transforming it. Common uses for XMLinclude: Information identification because you can define your own markup,you can define meaningful names for all your information items.Information storage because XML is portable and non-proprietary,it can be used to store textual information across any platform.Because it is backed by an international standard, it will remainaccessible and processable as a data format. Information structureXML can therefore be used to store and identify any kind of (hierarchical)information structure, especially for long, deep, or complex documentsets or data sources, making it ideal for an information-managementback-end to serving the Web. This is its most common Web application,with a transformation system to serve it as HTML until such timeas browsers are able to handle XML consistently. Publishing theoriginal goal of XML as defined in the quotation at the start ofthis section. Combining the three previous topics (identity, storage,structure) means it is possible to get all the benefits of robustdocument management and control (with XML) and publish to the Web(as HTML) as well as to paper (as PDF) and to other formats (egBraille, Audio, etc) from a single source document by using theappropriate stylesheets. Messaging and data transfer XML is alsovery heavily used for enclosing or encapsulating information inorder to pass it between different computing systems which wouldotherwise be unable to communicate. By providing a lingua francafor data identity and structure, it provides a common envelope forinter-process communication (messaging). Web services Building onall of these, as well as its use in browsers, machine-processabledata can be exchanged between consenting systems, where before itwas only comprehensible by humans (HTML). Weather services, e-commercesites, blog newsfeeds, AJaX sites, and thousands of other data-exchangeservices use XML for data management and transmission, and the webbrowser for display and interaction.&lt;br /&gt;4. Why is XML such an important development?&lt;br /&gt;It removes two constraints which were holding back Web developments:1. dependence on a single, inflexible document type (HTML) whichwas being much abused for tasks it was never designed for;&lt;br /&gt;2. the complexity of full SGML, whose syntax allows many powerfulbut hard-to-program options.XML allows the flexible development of user-defined document types.It provides a robust, non-proprietary, persistent, and verifiablefile format for the storage and transmission of text and data bothon and off the Web; and it removes the more complex options of SGML,making it easier to program for.&lt;br /&gt;5. Describe the differences between XML and HTML.&lt;br /&gt;It’s amazing how many developers claim to be proficient programmingwith XML, yet do not understand the basic differences between XMLand HTML. Anyone with a fundamental grasp of XML should be abledescribe some of the main differences outlined in the table below.&lt;br /&gt;XMLUser definable tags&lt;br /&gt;Content drivenEnd tags required for well formed documentsQuotes required around attributes valuesSlash required in empty tags&lt;br /&gt;HTMLDefined set of tags designed for web display&lt;br /&gt;Format drivenEnd tags not requiredQuotes not requiredSlash not required&lt;br /&gt;6. Describe the role that XSL can play when dynamicallygenerating HTML pages from a relational database.&lt;br /&gt;Even if candidates have never participated in a project involvingthis type of architecture, they should recognize it as one of thecommon uses of XML. Querying a database and then formatting theresult set so that it can be validated as an XML document allowsdevelopers to translate the data into an HTML table using XSLT rules.Consequently, the format of the resulting HTML table can be modifiedwithout changing the database query or application code since thedocument rendering logic is isolated to the XSLT rules.&lt;br /&gt;7. What is SGML?&lt;br /&gt;SGML is the Standard Generalized Markup Language (ISO 8879:1986),the international standard for defining descriptions of the structureof different types of electronic document. There is an SGML FAQfrom David Megginson at http://math.albany.edu:8800/hm/sgml/cts-faq.htmlFAQ;and Robin Cover’s SGML Web pages are at http://www.oasis-open.org/cover/general.html.For a little light relief, try Joe English’s ‘Not the SGMLFAQ’ at http://www.flightlab.com/~joe/sgml/faq-not.txtFAQ.SGML is very large, powerful, and complex. It has been in heavyindustrial and commercial use for nearly two decades, and thereis a significant body of expertise and software to go with it. XML is a lightweight cut-down version of SGML which keeps enoughof its functionality to make it useful but removes all the optionalfeatures which made SGML too complex to program for in a Web environment.&lt;br /&gt;8. Aren’t XML, SGML, and HTML all the same thing?&lt;br /&gt;Not quite; SGML is the mother tongue, and has been used for describingthousands of different document types in many fields of human activity,from transcriptions of ancient Irish manuscripts to the technicaldocumentation for stealth bombers, and from patients’ clinical recordsto musical notation. SGML is very large and complex, however, andprobably overkill for most common office desktop applications.&lt;br /&gt;XML is an abbreviated version of SGML, to make it easier to useover the Web, easier for you to define your own document types,and easier for programmers to write programs to handle them. Itomits all the complex and less-used options of SGML in return forthe benefits of being easier to write applications for, easier tounderstand, and more suited to delivery and interoperability overthe Web. But it is still SGML, and XML files may still be processedin the same way as any other SGML file (see the question on XMLsoftware). HTML is just one of many SGML or XML applications—the onemost frequently used on the Web. Technical readers may find it more useful to think of XML as beingSGML– rather than HTML++.&lt;br /&gt;9. Who is responsible for XML?&lt;br /&gt;XML is a project of the World Wide Web Consortium (W3C), and thedevelopment of the specification is supervised by an XML WorkingGroup. A Special Interest Group of co-opted contributors and expertsfrom various fields contributed comments and reviews by email. XML is a public format: it is not a proprietary development of anycompany, although the membership of the WG and the SIG representedcompanies as well as research and academic institutions. The v1.0specification was accepted by the W3C as a Recommendation on Feb10, 1998.&lt;br /&gt;10. Why is XML such an important development?&lt;br /&gt;It removes two constraints which were holding back Web developments:1. dependence on a single, inflexible document type (HTML) whichwas being much abused for tasks it was never designed for;2. the complexity of full question A.4, SGML, whose syntax allowsmany powerful but hard-to-program options. XML allows the flexible development of user-defined document types.It provides a robust, non-proprietary, persistent, and verifiablefile format for the storage and transmission of text and data bothon and off the Web; and it removes the more complex options of SGML,making it easier to program for.&lt;br /&gt;11. Give a few examples of types of applications that canbenefit from using XML.&lt;br /&gt;There are literally thousands of applications that can benefitfrom XML technologies. The point of this question is not to havethe candidate rattle off a laundry list of projects that they haveworked on, but, rather, to allow the candidate to explain the rationalefor choosing XML by citing a few real world examples. For instance,one appropriate answer is that XML allows content management systemsto store documents independently of their format, which therebyreduces data redundancy. Another answer relates to B2B exchangesor supply chain management systems. In these instances, XML providesa mechanism for multiple companies to exchange data according toan agreed upon set of rules. A third common response involves wirelessapplications that require WML to render data on hand held devices.&lt;br /&gt;12. What is DOM and how does it relate to XML?&lt;br /&gt;The Document Object Model (DOM) is an interface specification maintainedby the W3C DOM Workgroup that defines an application independentmechanism to access, parse, or update XML data. In simple termsit is a hierarchical model that allows developers to manipulateXML documents easily Any developer that has worked extensively withXML should be able to discuss the concept and use of DOM objectsfreely. Additionally, it is not unreasonable to expect advancedcandidates to thoroughly understand its internal workings and beable to explain how DOM differs from an event-based interface likeSAX.&lt;br /&gt;13. What is SOAP and how does it relate to XML?&lt;br /&gt;The Simple Object Access Protocol (SOAP) uses XML to define a protocolfor the exchange of information in distributed computing environments.SOAP consists of three components: an envelope, a set of encodingrules, and a convention for representing remote procedure calls.Unless experience with SOAP is a direct requirement for the openposition, knowing the specifics of the protocol, or how it can beused in conjunction with HTTP, is not as important as identifyingit as a natural application of XML.&lt;br /&gt;14. Why not just carry on extending HTML?&lt;br /&gt;HTML was already overburdened with dozens of interesting but incompatibleinventions from different manufacturers, because it provides onlyone way of describing your information. XML allows groups of people or organizations to question C.13, createtheir own customized markup applications for exchanging informationin their domain (music, chemistry, electronics, hill-walking, finance,surfing, petroleum geology, linguistics, cooking, knitting, stellarcartography, history, engineering, rabbit-keeping, question C.19,mathematics, genealogy, etc). HTML is now well beyond the limit of its usefulness as a way ofdescribing information, and while it will continue to play an importantrole for the content it currently represents, many new applicationsrequire a more robust and flexible infrastructure.&lt;br /&gt;15. Why should I use XML?&lt;br /&gt;Here are a few reasons for using XML (in no particular order).Not all of these will apply to your own requirements, and you mayhave additional reasons not mentioned here (if so, please let theeditor of the FAQ know!). * XML can be used to describe and identify information accuratelyand unambiguously, in a way that computers can be programmed to‘understand’ (well, at least manipulate as if they couldunderstand).&lt;br /&gt;* XML allows documents which are all the same type to be createdconsistently and without structural errors, because it providesa standardized way of describing, controlling, or allowing/disallowingparticular types of document structure. [Note that this has absolutelynothing whatever to do with formatting, appearance, or the actualtext content of your documents, only the structure of them.]* XML provides a robust and durable format for information storageand transmission. Robust because it is based on a proven standard,and can thus be tested and verified; durable because it uses plain-textfile formats which will outlast proprietary binary ones.* XML provides a common syntax for messaging systems for the exchangeof information between applications. Previously, each messagingsystem had its own format and all were different, which made inter-systemmessaging unnecessarily messy, complex, and expensive. If everyoneuses the same syntax it makes writing these systems much fasterand more reliable.* XML is free. Not just free of charge (free as in beer) but freeof legal encumbrances (free as in speech). It doesn’t belong toanyone, so it can’t be hijacked or pirated. And you don’t have topay a fee to use it (you can of course choose to use commercialsoftware to deal with it, for lots of good reasons, but you don’tpay for XML itself).* XML information can be manipulated programmatically (under machinecontrol), so XML documents can be pieced together from disparatesources, or taken apart and re-used in different ways. They canbe converted into almost any other format with no loss of information.* XML lets you separate form from content. Your XML file containsyour document information (text, data) and identifies its structure:your formatting and other processing needs are identified separatelyin a style sheet or processing system. The two are combined at outputtime to apply the required formatting to the text or data identifiedby its structure (location, position, rank, order, or whatever).&lt;br /&gt;16. Can you walk us through the steps necessary to parseXML documents?&lt;br /&gt;Superficially, this is a fairly basic question. However, the pointis not to determine whether candidates understand the concept ofa parser but rather have them walk through the process of parsingXML documents step-by-step. Determining whether a non-validatingor validating parser is needed, choosing the appropriate parser,and handling errors are all important aspects to this process thatshould be included in the candidate’s response.&lt;br /&gt;17. Give some examples of XML DTDs or schemas that youhave worked with.&lt;br /&gt;Although XML does not require data to be validated against a DTD,many of the benefits of using the technology are derived from beingable to validate XML documents against business or technical architecturerules. Polling for the list of DTDs that developers have workedwith provides insight to their general exposure to the technology.The ideal candidate will have knowledge of several of the commonlyused DTDs such as FpML, DocBook, HRML, and RDF, as well as experiencedesigning a custom DTD for a particular project where no standardexisted.&lt;br /&gt;18. Using XSLT, how would you extract a specific attributefrom an element in an XML document?&lt;br /&gt;Successful candidates should recognize this as one of the mostbasic applications of XSLT. If they are not able to construct areply similar to the example below, they should at least be ableto identify the components necessary for this operation: xsl:templateto match the appropriate XML element, xsl:value-of to select theattribute value, and the optional xsl:apply-templates to continueprocessing the document.&lt;br /&gt;Extract Attributes from XML Data Example 1.&lt;xsl:template match="element-name"&gt;Attribute Value:&lt;xsl:value-of select="@attribute"&gt;&lt;xsl:apply-templates/&gt;&lt;br /&gt;&lt;/xsl:template&gt;&lt;br /&gt;19. When constructing an XML DTD, how do you create anexternal entity reference in an attribute value?&lt;br /&gt;Every interview session should have at least one trick question.Although possible when using SGML, XML DTDs don’t support definingexternal entity references in attribute values. It’s more importantfor the candidate to respond to this question in a logical way thanthan the candidate know the somewhat obscure answer.&lt;br /&gt;20. How would you build a search engine for large volumesof XML data?&lt;br /&gt;The way candidates answer this question may provide insight intotheir view of XML data. For those who view XML primarily as a wayto denote structure for text files, a common answer is to builda full-text search and handle the data similarly to the way Internetportals handle HTML pages. Others consider XML as a standard wayof transferring structured data between disparate systems. Thesecandidates often describe some scheme of importing XML into a relationalor object database and relying on the database’s engine for searching.Lastly, candidates that have worked with vendors specializing inthis area often say that the best way the handle this situationis to use a third party software package optimized for XML data.&lt;br /&gt;21. What is the difference between XML and C or C++ orJava? Updated&lt;br /&gt;C and C++ (and other languages like FORTRAN, or Pascal, or VisualBasic, or Java or hundreds more) are programming languages withwhich you specify calculations, actions, and decisions to be carriedout in order: mod curconfig[if left(date,6) = "01-Apr", t.put "April googlel!", f.put days('31102005','DDMMYYYY') -days(sdate,'DDMMYYYY')" more shopping days to Samhain"];&lt;br /&gt;XML is a markup specification language with which you can designways of describing information (text or data), usually for storage,transmission, or processing by a program. It says nothing aboutwhat you should do with the data (although your choice of elementnames may hint at what they are for):&lt;part num="DA42″ models=" update=""&gt;&lt;name&gt;Camshaft end bearing retention circlip&lt;/name&gt;&lt;image drawing="RR98-dh37″ type="SVG" x="476″&lt;br /&gt;y="226″/&gt; &lt;maker id=""&gt;RingtownFasteners Ltd&lt;/maker&gt;&lt;notes&gt;Angle-nosed insertion tool &lt;tool id=""&gt; is required for the removal&lt;br /&gt;and replacement of this part.&lt;/notes&gt;&lt;/part&gt;On its own, an SGML or XML file (including HTML) doesn’t do anything.It’s a data format which just sits there until you run a programwhich does something with it.&lt;br /&gt;22. Does XML replace HTML?&lt;br /&gt;No. XML itself does not replace HTML. Instead, it provides an alternativewhich allows you to define your own set of markup elements. HTMLis expected to remain in common use for some time to come, and thecurrent version of HTML is in XML syntax. XML is designed to makethe writing of DTDs much simpler than with full SGML. (See the questionon DTDs for what one is and why you might want one.)&lt;br /&gt;23. Do I have to know HTML or SGML before I learn XML?&lt;br /&gt;No, although it’s useful because a lot of XML terminology and practicederives from two decades’ experience of SGML. Be aware that ‘knowing HTML’ is not the same as ‘understandingSGML’. Although HTML was written as an SGML application, browsersignore most of it (which is why so many useful things don’t work),so just because something is done a certain way in HTML browsersdoes not mean it’s correct, least of all in XML.&lt;br /&gt;24. What does an XML document actually look like (inside)?&lt;br /&gt;The basic structure of XML is similar to other applications ofSGML, including HTML. The basic components can be seen in the followingexamples. An XML document starts with a Prolog: 1. The XML Declaration which specifies that this is an XML document;2. Optionally a Document Type Declaration which identifies the typeof document and says where the Document Type Description (DTD) isstored;&lt;br /&gt;The Prolog is followed by the document instance:1. A root element, which is the outermost (top level) element (start-tagplus end-tag) which encloses everything else: in the examples belowthe root elements are conversation and titlepage;2. A structured mix of descriptive or prescriptive elements enclosingthe character data content (text), and optionally any attributes(’name=value’ pairs) inside some start-tags.XML documents can be very simple, with straightforward nested markupof your own design:&lt;?xml version="1.0″ standalone="yes"?&gt;&lt;conversation&gt;&lt;br /&gt;&lt;br /&gt;&lt;greeting&gt;Hello, world!&lt;/greeting&gt;&lt;response&gt;Stop the planet, I want to get off!&lt;/response&gt;&lt;/conversation&gt;Or they can be more complicated, with a Schema or question C.11,Document Type Description (DTD) or internal subset (local DTD changesin [square brackets]), and an arbitrarily complex nested structure:&lt;br /&gt;&lt;?xml version="1.0″ encoding="iso-8859-1″?&gt;&lt;!DOCTYPE titlepage SYSTEM "http://www.google.bar/dtds/typo.dtd" [&lt;!ENTITY % active.links "INCLUDE"&gt;]&gt;&lt;titlepage id=""&gt;&lt;br /&gt;&lt;white-space type="vertical" amount=""&gt;&lt;title font="Baskerville" alignment="centered" size=""&gt;Hello, world!&lt;/title&gt;&lt;white-space type="vertical" amount=""&gt;&lt;!– In some copies the following&lt;br /&gt;decoration is hand-colored, presumably by the author –&gt;&lt;image location="http://www.google.bar/fleuron.eps" type="URI" alignment="centered"&gt;&lt;white-space type="vertical" amount=""&gt;&lt;author font="Baskerville" size="18/22″&lt;br /&gt;style="italic"&gt;Vitam capias&lt;/author&gt;&lt;white-space type="vertical" role="filler"&gt;&lt;/titlepage&gt;&lt;br /&gt;Or they can be anywhere between: a lot will depend on how you wantto define your document type (or whose you use) and what it willbe used for. Database-generated or program-generated XML documentsused in e-commerce is usually unformatted (not for human reading)and may use very long names or values, with multiple redundancyand sometimes no character data content at all, just values in attributes:&lt;?xml version="1.0″?&gt; &lt;ORDER-UPDATE AUTHMD5="4baf7d7cff5faa3ce67acf66ccda8248″&lt;br /&gt;ORDER-UPDATE-ISSUE="193E22C2-EAF3-11D9-9736-CAFC705A30B3″ORDER-UPDATE-DATE="2005-07-01T15:34:22.46″ ORDER-UPDATE-DESTINATION="6B197E02-EAF3-11D9-85D5-997710D9978F"ORDER-UPDATE-ORDERNO="8316ADEA-EAF3-11D9-9955-D289ECBC99F3″&gt;&lt;order-update-delta-modification-detail id=""&gt;&lt;order-update-delta-modification-value item="56″ORDER-UPDATE-QUANTITY="&gt;&lt;br /&gt;&lt;/ORDER-UPDATE-DELTA-MODIFICATION-DETAIL&gt;&lt;/ORDER-UPDATE&gt;&lt;br /&gt;25. How does XML handle white-space in my documents?&lt;br /&gt;All white-space, including linebreaks, TAB characters, and normalspaces, even between ’structural’ elements where notext can ever appear, is passed by the parser unchanged to the application(browser, formatter, viewer, converter, etc), identifying the contextin which the white-space was found (element content, data content,or mixed content, if this information is available to the parser,eg from a DTD or Schema). This means it is the application’s responsibilityto decide what to do with such space, not the parser’s:* insignificant white-space between structural elements (space whichoccurs where only element content is allowed, ie between other elements,where text data never occurs) will get passed to the application(in SGML this white-space gets suppressed, which is why you canput all that extra space in HTML documents and not worry about it)* significant white-space (space which occurs within elements whichcan contain text and markup mixed together, usually mixed contentor PCDATA) will still get passed to the application exactly as underSGML. It is the application’s responsibility to handle it correctly.&lt;br /&gt;The parser must inform the application that white-space has occurredin element content, if it can detect it. (Users of SGML will recognizethat this information is not in the ESIS, but it is in the Grove.)&lt;br /&gt;&lt;chapter&gt; &lt;title&gt; My title forChapter 1.&lt;br /&gt;&lt;/title&gt; &lt;para&gt; text &lt;/para&gt; &lt;/chapter&gt;&lt;br /&gt;In the example above, the application will receive all the pretty-printinglinebreaks, TABs, and spaces between the elements as well as thoseembedded in the chapter title. It is the function of the application,not the parser, to decide which type of white-space to discard andwhich to retain. Many XML applications have configurable optionsto allow programmers or users to control how such white-space ishandled.&lt;br /&gt;26. Which parts of an XML document are case-sensitive?&lt;br /&gt;All of it, both markup and text. This is significantly differentfrom HTML and most other SGML applications. It was done to allowmarkup in non-Latin-alphabet languages, and to obviate problemswith case-folding in writing systems which are caseless.* Element type names are case-sensitive: you must follow whatevercombination of upper- or lower-case you use to define them (eitherby first usage or in a DTD or Schema). So you can’t say &lt;body&gt;…&lt;/body&gt;:upper- and lower-case must match; thus &lt;img/&gt;, &lt;img/&gt;,and &lt;img/&gt; are three different element types;&lt;br /&gt;* For well-formed XML documents with no DTD, the first occurrenceof an element type name defines the casing;* Attribute names are also case-sensitive, for example the two widthattributes in &lt;pic width="7in"&gt; and &lt;pic width="6in"&gt;(if they occurred in the same file) are separate attributes, becauseof the different case of width and WIDTH;* Attribute values are also case-sensitive. CDATA values (eg Url="MyFile.SGML")always have been, but NAME types (ID and IDREF attributes, and tokenlist attributes) are now case-sensitive as well;* All general and parameter entity names (eg A), and yourdata content (text), are case-sensitive as always.&lt;br /&gt;27. How can I make my existing HTML files work in XML?&lt;br /&gt;Either convert them to conform to some new document type (withor without a DTD or Schema) and write a stylesheet to go with them;or edit them to conform to XHTML. It is necessary to convert existingHTML files because XML does not permit end-tag minimisation (missing, etc), unquoted attribute values, and a number of other SGML shortcutswhich have been normal in most HTML DTDs. However, many HTML authoringtools already produce almost (but not quite) well-formed XML. You may be able to convert HTML to XHTML using the Dave Raggett’sHTML Tidy program, which can clean up some of the formatting messleft behind by inadequate HTML editors, and even separate out someof the formatting to a stylesheet, but there is usually still somehand-editing to do.&lt;br /&gt;28. Is there an XML version of HTML?&lt;br /&gt;Yes, the W3C recommends using XHTML which is ‘a reformulationof HTML 4 in XML 1.0′. This specification defines HTML asan XML application, and provides three DTDs corresponding to theones defined by HTML 4.* (Strict, Transitional, and Frameset). Thesemantics of the elements and their attributes are as defined inthe W3C Recommendation for HTML 4. These semantics provide the foundationfor future extensibility of XHTML. Compatibility with existing HTMLbrowsers is possible by following a small set of guidelines (seethe W3C site).&lt;br /&gt;29. If XML is just a subset of SGML, can I use XML filesdirectly with existing SGML tools?&lt;br /&gt;Yes, provided you use up-to-date SGML software which knows aboutthe WebSGML Adaptations TC to ISO 8879 (the features needed to supportXML, such as the variant form for EMPTY elements; some aspects ofthe SGML Declaration such as NAMECASE GENERAL NO; multiple attributetoken list declarations, etc). An alternative is to use an SGML DTD to let you create a fully-normalisedSGML file, but one which does not use empty elements; and then removethe DocType Declaration so it becomes a well-formed DTDless XMLfile. Most SGML tools now handle XML files well, and provide anoption switch between the two standards.&lt;br /&gt;30. Can XML use non-Latin characters?&lt;br /&gt;Yes, the XML Specification explicitly says XML uses ISO 10646,the international standard character repertoire which covers mostknown languages. Unicode is an identical repertoire, and the twostandards track each other. The spec says (2.2): ‘All XMLprocessors must accept the UTF-8 and UTF-16 encodings of ISO 10646…’.There is a Unicode FAQ at http://www.unicode.org/faq/FAQ. UTF-8 is an encoding of Unicode into 8-bit characters: the first128 are the same as ASCII, and higher-order characters are usedto encode anything else from Unicode into sequences of between 2and 6 bytes. UTF-8 in its single-octet form is therefore the sameas ISO 646 IRV (ASCII), so you can continue to use ASCII for Englishor other languages using the Latin alphabet without diacritics.Note that UTF-8 is incompatible with ISO 8859-1 (ISO Latin-1) aftercode point 127 decimal (the end of ASCII). UTF-16 is an encoding of Unicode into 16-bit characters, which letsit represent 16 planes. UTF-16 is incompatible with ASCII becauseit uses two 8-bit bytes per character (four bytes above U+FFFF).&lt;br /&gt;31. What’s a Document Type Definition (DTD) and where doI get one?&lt;br /&gt;A DTD is a description in XML Declaration Syntax of a particulartype or class of document. It sets out what names are to be usedfor the different types of element, where they may occur, and howthey all fit together. (A question C.16, Schema does the same thingin XML Document Syntax, and allows more extensive data-checking.)For example, if you want a document type to be able to describeLists which contain Items, the relevant part of your DTD might containsomething like this: &lt;!ELEMENT List (Item)+&gt; &lt;!ELEMENT Item (#PCDATA)&gt;&lt;br /&gt;This defines a list as an element type containing one or more items(that’s the plus sign); and it defines items as element types containingjust plain text (Parsed Character Data or PCDATA). Validators readthe DTD before they read your document so that they can identifywhere every element type ought to come and how each relates to theother, so that applications which need to know this in advance (mosteditors, search engines, navigators, and databases) can set themselvesup correctly. The example above lets you create lists like:&lt;br /&gt;&lt;list&gt;&lt;item&gt;Chocolate&lt;/item&gt;&lt;item&gt;Music&lt;/item&gt;&lt;item&gt;Surfingv&lt;/item&gt;&lt;br /&gt;&lt;/list&gt;&lt;br /&gt;(The indentation in the example is just for legibility while editing:it is not required by XML.) A DTD provides applications with advance notice of what names andstructures can be used in a particular document type. Using a DTDand a validating editor means you can be certain that all documentsof that particular type will be constructed and named in a consistentand conformant manner. DTDs are not required for processing the tip in question Bwell-formeddocuments, but they are needed if you want to take advantage ofXML’s special attribute types like the built-in ID/IDREF cross-referencemechanism; or the use of default attribute values; or referencesto external non-XML files (’Notations’); or if you simplywant a check on document validity before processing. There are thousands of DTDs already in existence in all kinds ofareas (see the SGML/XML Web pages for pointers). Many of them canbe downloaded and used freely; or you can write your own (see thequestion on creating your own DTD. Old SGML DTDs need to be convertedto XML for use with XML systems: read the question on convertingSGML DTDs to XML, but most popular SGML DTDs are already availablein XML form. The alternatives to a DTD are various forms of question C.16, Schema.These provide more extensive validation features than DTDs, includingcharacter data content validation.&lt;br /&gt;32. Does XML let me make up my own tags?&lt;br /&gt;No, it lets you make up names for your own element types. If youthink tags and elements are the same thing you are already in considerabletrouble: read the rest of this question carefully.&lt;br /&gt;33. How do I create my own document type?&lt;br /&gt;Document types usually need a formal description, either a DTDor a Schema. Whilst it is possible to process well-formed XML documentswithout any such description, trying to create them without oneis asking for trouble. A DTD or Schema is used with an XML editoror API interface to guide and control the construction of the document,making sure the right elements go in the right places. Creating your own document type therefore begins with an analysisof the class of documents you want to describe: reports, invoices,letters, configuration files, credit-card verification requests,or whatever. Once you have the structure correct, you write codeto express this formally, using DTD or Schema syntax.&lt;br /&gt;34. How do I write my own DTD?&lt;br /&gt;You need to use the XML Declaration Syntax (very simple: declarationkeywords begin with &lt;!ELEMENT Shopping-List (Item)+&gt;&lt;!ELEMENT Item (#PCDATA)&gt;&lt;br /&gt;It says that there shall be an element called Shopping-List andthat it shall contain elements called Item: there must be at leastone Item (that’s the plus sign) but there may be more than one.It also says that the Item element may contain only parsed characterdata (PCDATA, ie text: no further markup). Because there is no other element which contains Shopping-List,that element is assumed to be the ‘root’ element, whichencloses everything else in the document. You can now use it tocreate an XML file: give your editor the declarations: &lt;?xml version="1.0″?&gt;&lt;br /&gt;&lt;!DOCTYPE Shopping-List SYSTEM "shoplist.dtd"&gt;&lt;br /&gt;(assuming you put the DTD in that file). Now your editor will letyou create files according to the pattern: &lt;shopping-list&gt;&lt;br /&gt;&lt;item&gt;Chocolate&lt;/item&gt;&lt;item&gt;Sugar&lt;/item&gt;&lt;br /&gt;&lt;item&gt;Butter&lt;/item&gt;&lt;/Shopping-List&gt;&lt;br /&gt;It is possible to develop complex and powerful DTDs of great subtlety,but for any significant use you should learn more about documentsystems analysis and document type design. See for example DevelopingSGML DTDs: From Text to Model to Markup (Maler and el Andaloussi,1995): this was written for SGML but perhaps 95% of it applies toXML as well, as XML is much simpler than full SGML—see thelist of restrictions which shows what has been cut out. WarningIncidentally, a DTD file never has a DOCTYPE Declaration in it:that only occurs in an XML document instance (it’s what referencesthe DTD). And a DTD file also never has an XML Declaration at thetop either. Unfortunately there is still software around which insertsone or both of these.&lt;br /&gt;35. Can a root element type be explicitly declared in theDTD?&lt;br /&gt;No. This is done in the document’s Document Type Declaration, notin the DTD.&lt;br /&gt;36. I keep hearing about alternatives to DTDs. What’s aSchema?&lt;br /&gt;The W3C XML Schema recommendation provides a means of specifyingformal data typing and validation of element content in terms ofdata types, so that document type designers can provide criteriafor checking the data content of elements as well as the markupitself. Schemas are written in XML Document Syntax, like XML documentsare, avoiding the need for processing software to be able to readXML Declaration Syntax (used for DTDs). There is a separate Schema FAQ at http://www.schemavalid.com.The term ‘vocabulary’ is sometimes used to refer toDTDs and Schemas together. Schemas are aimed at e-commerce, datacontrol, and database-style applications where character data contentrequires validation and where stricter data control is needed thanis possible with DTDs; or where strong data typing is required.They are usually unnecessary for traditional text document publishingapplications. Unlike DTDs, Schemas cannot be specified in an XML Document TypeDeclaration. They can be specified in a Namespace, where Schema-awaresoftware should pick it up, but this is optional:&lt;br /&gt;&lt;invoice id="abc123″xmlns=" xsi="http://www.w3.org/2001/XMLSchema-instance" schemalocation="http://acme.wilycoyote.org/xsd/invoice.xsd"&gt;…&lt;/invoice&gt;&lt;br /&gt;More commonly, you specify the Schema in your processing software,which should record separately which Schema is used by which XMLdocument instance. In contrast to the complexity of the W3C Schema model, Relax NGis a lightweight, easy-to-use XML schema language devised by JamesClark (see http://relaxng.org/) with development hosted by OASIS.It allows similar richness of expression and the use of XML as itssyntax, but it provides an additional, simplified, syntax whichis easier to use for those accustomed to DTDs.&lt;br /&gt;37. How do I get XML into or out of a database?&lt;br /&gt;Ask your database manufacturer: they all provide XML import andexport modules to connect XML applications with databases. In sometrivial cases there will be a 1:1 match between field names in thedatabase table and element type names in the XML Schema or DTD,but in most cases some programming will be required to establishthe desired match. This can usually be stored as a procedure sothat subsequent uses are simply commands or calls with the relevantparameters. In less trivial, but still simple, cases, you could export by writinga report routine that formats the output as an XML document, andyou could import by writing an XSLT transformation that formattedthe XML data as a load file.&lt;br /&gt;38. Can I encode mathematics using XML?Updated&lt;br /&gt;Yes, if the document type you use provides for math, and your users’browsers are capable of rendering it. The mathematics-using communityhas developed the MathML Recommendation at the W3C, which is a nativeXML application suitable for embedding in other DTDs and Schemas.It is also possible to make XML fragments from other DTDs, suchas ISO 12083 Math, or OpenMath, or one of your own making. Browserswhich display math embedded in SGML existed for many years (eg DynaText,Panorama, Multidoc Pro), and mainstream browsers are now renderingMathML. David Carlisle has produced a set of stylesheets for renderingMathML in browsers. It is also possible to use XSLT to convert XMLmath markup to LATEX for print (PDF) rendering, or to use XSL:FO.Please note that XML is not itself a programming language, so conceptssuch as arithmetic and if-statements (if-then-else logic) are notmeaningful in XML documents.&lt;br /&gt;39. How will XML affect my document links?&lt;br /&gt;The linking abilities of XML systems are potentially much morepowerful than those of HTML, so you’ll be able to do much more withthem. Existing href-style links will remain usable, but the newlinking technology is based on the lessons learned in the developmentof other standards involving hypertext, such as TEI and HyTime,which let you manage bidirectional and multi-way links, as wellas links to a whole element or span of text (within your own orother documents) rather than to a single point. These features havebeen available to SGML users for many years, so there is considerableexperience and expertise available in using them. Currently onlyMozilla Firefox implements XLink. The XML Linking Specification (XLink) and the XML Extended PointerSpecification (XPointer) documents contain the details. An XLinkcan be either a URI or a TEI-style Extended Pointer (XPointer),or both. A URI on its own is assumed to be a resource; if an XPointerfollows it, it is assumed to be a sub-resource of that URI; an XPointeron its own is assumed to apply to the current document (all exactlyas with HTML).&lt;br /&gt;An XLink may use one of #, ?, or . The # and ? mean the same asin HTML applications; the  means the sub-resource can be foundby applying the link to the resource, but the method of doing thisis left to the application. An XPointer can only follow a #. The TEI Extended Pointer Notation (EPN) is much more powerful thanthe fragment address on the end of some URIs, as it allows you tospecify the location of a link end using the structure of the documentas well as (or in addition to) known, fixed points like IDs. Forexample, the linked second occurrence of the word ‘XPointer’two paragraphs back could be referred to with the URI (shown herewith linebreaks and spaces for clarity: in practice it would ofcourse be all one long string):&lt;br /&gt;http://xml.silmaril.ie/faq.xml#ID(hypertext).child(1,#element,’answer’).child(2,#element,’para’).child(1,#element,’link’)&lt;br /&gt;This means the first link element within the second paragraph withinthe answer in the element whose ID is hypertext (this question).Count the objects from the start of this question (which has theID hypertext) in the XML source: 1. the first child object is the element containing the question();2. the second child object is the answer (the element);3. within this element go to the second paragraph;4. find the first link element.Eve Maler explained the relationship of XLink and XPointer as follows:&lt;br /&gt;XLink governs how you insert links into your XML document, wherethe link might point to anything (eg a GIF file); XPointer governsthe fragment identifier that can go on a URL when you’re linkingto an XML document, from anywhere (eg from an HTML file).[Or indeed from an XML file, a URI in a mail message, etc…Ed.]David Megginson has produced an xpointer function for Emacs/psgmlwhich will deduce an XPointer for any location in an XML document.XML Spy has a similar function.&lt;br /&gt;40. How does XML handle metadata?&lt;br /&gt;Because XML lets you define your own markup languages, you canmake full use of the extended hypertext features of XML (see thequestion on Links) to store or link to metadata in any format (egusing ISO 11179, as a Topic Maps Published Subject, with DublinCore, Warwick Framework, or with Resource Description Framework(RDF), or even Platform for Internet Content Selection (PICS)).There are no predefined elements in XML, because it is an architecture,not an application, so it is not part of XML’s job to specify howor if authors should or should not implement metadata. You are thereforefree to use any suitable method. Browser makers may also have theirown architectural recommendations or methods to propose.&lt;br /&gt;41. Can I use JavaScript, ActiveX, etc in XML files?&lt;br /&gt;This will depend on what facilities your users’ browsers implement.XML is about describing information; scripting languages and languagesfor embedded functionality are software which enables the informationto be manipulated at the user’s end, so these languages do not normallyhave any place in an XML file itself, but in stylesheets like XSLand CSS where they can be added to generated HTML. XML itself provides a way to define the markup needed to implementscripting languages: as a neutral standard it neither encouragesnot discourages their use, and does not favour one language overanother, so it is possible to use XML markup to store the programcode, from where it can be retrieved by (for example) XSLT and re-expressedin a HTML script element. Server-side script embedding, like PHP or ASP, can be used withthe relevant server to modify the XML code on the fly, as the documentis served, just as they can with HTML. Authors should be aware,however, that embedding server-side scripting may mean the fileas stored is not valid XML: it only becomes valid when processedand served, so care must be taken when using validating editorsor other software to handle or manage such files. A better solutionmay be to use an XML serving solution like Cocoon, AxKit, or PropelX.&lt;br /&gt;42. Can I use Java to create or manage XML files?&lt;br /&gt;Yes, any programming language can be used to output data from anysource in XML format. There is a growing number of front-ends andback-ends for programming environments and data management environmentsto automate this. Java is just the most popular one at the moment.&lt;br /&gt;There is a large body of middleware (APIs) written in Java and otherlanguages for managing data either in XML or with XML input or output.&lt;br /&gt;43. How do I execute or run an XML file?&lt;br /&gt;You can’t and you don’t. XML itself is not a programming language,so XML files don’t ‘run’ or ‘execute’. XMLis a markup specification language and XML files are just data:they sit there until you run a program which displays them (likea browser) or does some work with them (like a converter which writesthe data in another format, or a database which reads the data),or modifies them (like an editor). If you want to view or display an XML file, open it with an XMLeditor or an question B.3, XML browser. The water is muddied by XSL (both XSLT and XSL:FO) which use XMLsyntax to implement a declarative programming language. In thesecases it is arguable that you can ‘execute’ XML code,by running a processing application like Saxon, which compiles thedirectives specified in XSLT files into Java bytecode to processXML.&lt;br /&gt;44. How do I control formatting and appearance?&lt;br /&gt;In HTML, default styling was built into the browsers because thetagset of HTML was predefined and hardwired into browsers. In XML,where you can define your own tagset, browsers cannot possibly beexpected to guess or know in advance what names you are going touse and what they will mean, so you need a stylesheet if you wantto display formatted text. Browsers which read XML will accept and use a CSS stylesheet ata minimum, but you can also use the more powerful XSLT stylesheetlanguage to transform your XML into HTML—which browsers, ofcourse, already know how to display (and that HTML can still usea CSS stylesheet). This way you get all the document managementbenefits of using XML, but you don’t have to worry about your readersneeding XML smarts in their browsers.&lt;br /&gt;45. How do I use graphics in XML?&lt;br /&gt;Graphics have traditionally just been links which happen to havea picture file at the end rather than another piece of text. Theycan therefore be implemented in any way supported by the XLink andXPointer specifications (see question C.18, ‘How will XMLaffect my document links?’), including using similar syntaxto existing HTML images. They can also be referenced using XML’sbuilt-in NOTATION and ENTITY mechanism in a similar way to standardSGML, as external unparsed entities. However, the SVG specification (see the tip below, by Peter Murray-Rust)lets you use XML markup to draw vector graphics objects directlyin your XML file. This provides enormous power for the inclusionof portable graphics, especially interactive or animated sequences,and it is now slowly becoming supported in browsers. The XML linking specifications for external images give you muchbetter control over the traversal and activation of links, so anauthor can specify, for example, whether or not to have an imageappear when the page is loaded, or on a click from the user, orin a separate window, without having to resort to scripting.&lt;br /&gt;XML itself doesn’t predicate or restrict graphic file formats: GIF,JPG, TIFF, PNG, CGM, EPS, and SVG at a minimum would seem to makesense; however, vector formats (EPS, SVG) are normally essentialfor non-photographic images (diagrams). You cannot embed a raw binary graphics file (or any other binary[non-text] data) directly into an XML file because any bytes happeningto resemble markup would get misinterpreted: you must refer to itby linking (see below). It is, however, possible to include a text-encodedtransformation of a binary file as a CDATA Marked Section, usingsomething like UUencode with the markup characters ], &amp;amp; and&gt; removed from the map so that they could not occur as an erroneousCDATA termination sequence and be misinterpreted. You could evenuse simple hexadecimal encoding as used in PostScript. For vectorgraphics, however, the solution is to use SVG (see the tip below,by Peter Murray-Rust). Sound files are binary objects in the same way that external graphicsare, so they can only be referenced externally (using the same techniquesas for graphics). Music files written in MusiXML or an XML variantof SMDL could however be embedded in the same way as for SVG. The point about using entities to manage your graphics is that youcan keep the list of entity declarations separate from the restof the document, so you can re-use the names if an image is neededmore than once, but only store the physical file specification ina single place. This is available only when using a DTD, not a Schema.&lt;br /&gt;46. How do I include one XML file in another?&lt;br /&gt;This works exactly the same as for SGML. First you declare theentity you want to include, and then you reference it by name:&lt;?xml version="1.0″?&gt;&lt;!DOCTYPE novel SYSTEM "/dtd/novel.dtd" [&lt;!ENTITY chap1 SYSTEM "mydocs/chapter1.xml"&gt;&lt;!ENTITY chap2 SYSTEM "mydocs/chapter2.xml"&gt;&lt;!ENTITY chap3 SYSTEM "mydocs/chapter3.xml"&gt;&lt;br /&gt;&lt;!ENTITY chap4 SYSTEM "mydocs/chapter4.xml"&gt;&lt;!ENTITY chap5 SYSTEM "mydocs/chapter5.xml"&gt;]&gt;&lt;novel&gt;&lt;header&gt;…blah blah…&lt;br /&gt;&lt;/header&gt;&amp;chap1; &amp;chap2;&amp;chap3;&amp;chap4; &amp;chap5;&lt;br /&gt;&lt;/novel&gt;&lt;br /&gt;The difference between this method and the one used for includinga DTD fragment (see question D.15, ‘How do I include one DTD(or fragment) in another?’) is that this uses an externalgeneral (file) entity which is referenced in the same way as fora character entity (with an ampersand). The one thing to make sure of is that the included file must nothave an XML or DOCTYPE Declaration on it. If you’ve been using onefor editing the fragment, remove it before using the file in thisway. Yes, this is a pain in the butt, but if you have lots of inclusionslike this, write a script to strip off the declaration (and pasteit back on again for editing).&lt;br /&gt;47. What is parsing and how do I do it in XML&lt;br /&gt;Parsing is the act of splitting up information into its componentparts (schools used to teach this in language classes until theteaching profession collectively caught the anti-grammar disease).‘Mary feeds Spot’ parses as&lt;br /&gt;1. Subject = Mary, proper noun, nominative case2. Verb = feeds, transitive, third person singular, present tense3. Object = Spot, proper noun, accusative caseIn computing, a parser is a program (or a piece of code or API thatyou can reference inside your own programs) which analyses filesto identify the component parts. All applications that read inputhave a parser of some kind, otherwise they’d never be able to figureout what the information means. Microsoft Word contains a parserwhich runs when you open a .doc file and checks that it can identifyall the hidden codes. Give it a corrupted file and you’ll get anerror message. XML applications are just the same: they contain a parser whichreads XML and identifies the function of each the pieces of thedocument, and it then makes that information available in memoryto the rest of the program. While reading an XML file, a parser checks the syntax (pointy brackets,matching quotes, etc) for well-formedness, and reports any violations(reportable errors). The XML Specification lists what these are.&lt;br /&gt;Validation is another stage beyond parsing. As the component partsof the program are identified, a validating parser can compare themwith the pattern laid down by a DTD or a Schema, to check that theyconform. In the process, default values and datatypes (if specified)can be added to the in-memory result of the validation that thevalidating parser gives to the application.&lt;br /&gt;&lt;person corpid="abc123″ birth=" gender="female"&gt; &lt;name&gt; &lt;forename&gt;Judy&lt;/forename&gt;&lt;surname&gt;O’Grady&lt;/surname&gt; &lt;/name&gt; &lt;/person&gt;&lt;br /&gt;The example above parses as: 1. Element person identified with Attributecorpid containing abc123 and Attribute birth containing 1960-02-31and Attribute gender containing female containing …2. Element name containing …3. Element forename containing text ‘Judy’ followedby …4. Element surname containing text ‘O’Grady’(and lots of other stuff too).As well as built-in parsers, there are also stand-alone parser-validators,which read an XML file and tell you if they find an error (likemissing angle-brackets or quotes, or misplaced markup). This isessential for testing files in isolation before doing somethingelse with them, especially if they have been created by hand withoutan XML editor, or by an API which may be too deeply embedded elsewhereto allow easy testing.&lt;br /&gt;48. When should I use a CDATA Marked Section?&lt;br /&gt;You should almost never need to use CDATA Sections. The CDATA mechanismwas designed to let an author quote fragments of text containingmarkup characters (the open-angle-bracket and the ampersand), forexample when documenting XML (this FAQ uses CDATA Sections quitea lot, for obvious reasons). A CDATA Section turns off markup recognitionfor the duration of the section (it gets turned on again only bythe closing sequence of double end-square-brackets and a close-angle-bracket).Consequently, nothing in a CDATA section can ever be recognisedas anything to do with markup: it’s just a string of opaque characters,and if you use an XML transformation language like XSLT, any markupcharacters in it will get turned into their character entity equivalent.If you try, for example, to use:some text with &lt;![CDATA[markup]]&gt; in it.&lt;br /&gt;in the expectation that the embedded markup would remain untouched,it won’t: it will just outputsome text with &lt;em&gt;markup&lt;/em&gt; in it.In other words, CDATA Sections cannot preserve the embedded markupas markup. Normally this is exactly what you want because this techniquewas designed to let people do things like write documentation aboutmarkup. It was not designed to allow the passing of little chunksof (possibly invalid) unparsed HTML embedded inside your own XMLthrough to a subsequent process—because that would risk invalidatingthe output. As a result you cannot expect to keep markup untouched simply becauseit looked as if it was safely ‘hidden’ inside a CDATAsection: it can’t be used as a magic shield to preserve HTML markupfor future use as markup, only as characters.&lt;br /&gt;49. How can I handle embedded HTML in my XML&lt;br /&gt;Apart from using CDATA Sections, there are two common occasionswhen people want to handle embedded HTML inside an XML element:1. when they have received (possibly poorly-designed) XML from somewhereelse which they must find a way to handle;2. when they have an application which has been explicitly designedto store a string of characters containing &lt; and &amp;amp; characterentity references with the objective of turning them back into markupin a later process (eg FreeMind, Atom).Generally, you want to avoid this kind of trick, as it usually indicatesthat the document structure and design has been insufficiently thoughtout. However, there are occasions when it becomes unavoidable, soif you really need or want to use embedded HTML markup inside XML,and have it processable later as markup, there are a couple of techniquesyou may be able to use:&lt;br /&gt;* Provide templates for the handling of that markup in your XSLTtransformation or whatever software you use which simply replicateswhat was there, eg&lt;xsl:template match="b"&gt;&lt;b&gt;&lt;br /&gt;50. What are the special characters in XML&lt;br /&gt;For normal text (not markup), there are no special characters:just make sure your document refers to the correct encoding schemefor the language and/or writing system you want to use, and thatyour computer correctly stores the file using that encoding scheme.See the question on non-Latin characters for a longer explanation.If your keyboard will not allow you to type the characters you want,or if you want to use characters outside the limits of the encodingscheme you have chosen, you can use a symbolic notation called ‘entityreferencing’. Entity references can either be numeric, usingthe decimal or hexadecimal Unicode code point for the character(eg if your keyboard has no Euro symbol (€) you can type €);or they can be character, using an established name which you declarein your DTD (eg ) and then use as € in your document. If youare using a Schema, you must use the numeric form for all exceptthe five below because Schemas have no way to make character entitydeclarations. If you use XML with no DTD, then these five characterentities are assumed to be predeclared, and you can use them withoutdeclaring them: &amp;lt;&lt;br /&gt;The less-than character (&lt;) starts element markup (the firstcharacter of a start-tag or an end-tag). &amp;amp;&lt;br /&gt;The ampersand character (&gt;) starts entity markup (the firstcharacter of a character entity reference).&amp;gt;The greater-than character (&gt;) ends a start-tag or an end-tag.&amp;quot;The double-quote character (") can be symbolised with thischaracter entity reference when you need to embed a double-quoteinside a string which is already double-quoted.&lt;br /&gt;‘The apostrophe or single-quote character (’) can be symbolised withthis character entity reference when you need to embed a single-quoteor apostrophe inside a string which is already single-quoted.If you are using a DTD then you must declare all the character entitiesyou need to use (if any), including any of the five above that youplan on using (they cease to be predeclared if you use a DTD). Ifyou are using a Schema, you must use the numeric form for all exceptthe five above because Schemas have no way to make character entitydeclarations.&lt;br /&gt;51. Do I have to change any of my server software to workwith XML?&lt;br /&gt;The only changes needed are to make sure your server serves up.xml, .css, .dtd, .xsl, and whatever other file types you will useas the correct MIME content (media) types. The details of the settings are specified in RFC 3023. Most newversions of Web server software come preset.&lt;br /&gt;If not, all that is needed is to edit the mime-types file (or itsequivalent: as a server operator you already know where to do this,right?) and add or edit the relevant lines for the right media types.In some servers (eg Apache), individual content providers or directoryowners may also be able to change the MIME types for specific filetypes from within their own directories by using directives in a.htaccess file. The media types required are:* text/xml for XML documents which are ‘readable by casualusers’;* application/xml for XML documents which are ‘unreadableby casual users’;* text/xml-external-parsed-entity for external parsed entities suchas document fragments (eg separate chapters which make up a book)subject to the readability distinction of text/xml;* application/xml-external-parsed-entity for external parsed entitiessubject to the readability distinction of application/xml;* application/xml-dtd for DTD files and modules, including characterentity sets.&lt;br /&gt;The RFC has further suggestions for the use of the +xml media typesuffix for identifying ancillary files such as XSLT (application/xslt+xml).If you run scripts generating XHTML which you wish to be treatedas XML rather than HTML, they may need to be modified to producethe relevant Document Type Declaration as well as the right mediatype if your application requires them to be validated.&lt;br /&gt;51. I’m trying to understand the XML Spec: why does ithave such difficult terminology?&lt;br /&gt;For implementation to succeed, the terminology needs to be precise.Design goal eight of the specification tells us that ‘thedesign of XML shall be formal and concise’. To describe XML,the specification therefore uses formal language drawn from severalfields, specifically those of text engineering, international standardsand computer science. This is often confusing to people who areunused to these disciplines because they use well-known Englishwords in a specialised sense which can be very different from theircommon meanings—for example: grammar, production, token, orterminal. The specification does not explain these terms because of the otherpart of the design goal: the specification should be concise. Itdoesn’t repeat explanations that are available elsewhere: it isassumed you know this and either know the definitions or are capableof finding them. In essence this means that to grok the fullnessof the spec, you do need a knowledge of some SGML and computer science,and have some exposure to the language of formal standards. Sloppy terminology in specifications causes misunderstandings andmakes it hard to implement consistently, so formal standards haveto be phrased in formal terminology. This FAQ is not a formal document,and the astute reader will already have noticed it refers to ‘elementnames’ where ‘element type names’ is more correct;but the former is more widely understood.&lt;br /&gt;52. Can I still use server-side inclusions?&lt;br /&gt;Yes, so long as what they generate ends up as part of an XML-conformantfile (ie either valid or just well-formed). Server-side tag-replacers like shtml, PHP, JSP, ASP, Zope, etc storealmost-valid files using comments, Processing Instructions, or non-XMLmarkup, which gets replaced at the point of service by text or XMLmarkup (it is unclear why some of these systems use non-HTML/XMLmarkup). There are also some XML-based preprocessors for formatslike XVRL (eXtensible Value Resolution Language) which resolve specialisedreferences to external data and output a normalised XML file.&lt;br /&gt;53. Can I (and my authors) still use client-side inclusions?&lt;br /&gt;The same rule applies as for server-side inclusions, so you needto ensure that any embedded code which gets passed to a third-partyengine (eg calls to SQL, VB, Java, etc) does not contain any characterswhich might be misinterpreted as XML markup (ie no angle bracketsor ampersands). Either use a CDATA marked section to avoid yourXML application parsing the embedded code, or use the standard &lt;,and &amp;amp; character entity references instead.&lt;br /&gt;54. How can I include a conditional statement in my XML?&lt;br /&gt;You can’t: XML isn’t a programming language, so you can’t say thingslike &lt;google&gt;bar&lt;/google&gt; If you need to make an element optional, based on some internalor external criteria, you can do so in a Schema. DTDs have no internalreferential mechanism, so it isn’t possible to express this kindof conditionality in a DTD at the individual element level. It is possible to express presence-or-absence conditionality ina DTD for the whole document, by using parameter entities as switchesto include or ignore certain sections of the DTD based on settingseither hardwired in the DTD or supplied in the internal subset.Both the TEI and Docbook DTDs use this mechanism to implement modularity.&lt;br /&gt;Alternatively you can make the element entirely optional in theDTD or Schema, and provide code in your processing software thatchecks for its presence or absence. This defers the checking untilthe processing stage: one of the reasons for Schemas is to providethis kind of checking at the time of document creation or editing.&lt;br /&gt;55. I have to do an overview of XML for my manager/client/investor/advisor.What should I mention?&lt;br /&gt;* XML is not a markup language. XML is a ‘metalanguage’,that is, it’s a language that lets you define your own markup languages(see definition).* XML is a markup language [two (seemingly) contradictory statementsone after another is an attention-getting device that I'm fond of],not a programming language. XML is data: is does not ‘do’anything, it has things done to it.* XML is non-proprietary: your data cannot be held hostage by someoneelse.* XML allows multi-purposing of your data.&lt;br /&gt;* Well-designed XML applications most often separate ‘content’from ‘presentation’. You should describe what somethingis rather what something looks like (the exception being data contentwhich never gets presented to humans).Saying ‘the data is in XML’ is a relatively uselessstatement, similar to saying ‘the book is in a natural language’.To be useful, the former needs to specify ‘we have used XMLto define our own markup language’ (and say what it is), similarto specifying ‘the book is in French’.A classic example of multipurposing and separation that I oftenuse is a pharmaceutical company. They have a large base of dataon a particular drug that they need to publish as:* reports to the FDA;* drug information for publishers of drug directories/catalogs;* ‘prescribe me!’ brochures to send to doctors;&lt;br /&gt;* little pieces of paper to tuck into the boxes;* labels on the bottles;* two pages of fine print to follow their ad in Reader’s Digest;* instructions to the patient that the local pharmacist prints out;* etc.Without separation of content and presentation, they need to maintainessentially identical information in 20 places. If they miss a place,people die, lawyers get rich, and the drug company gets poor. WithXML (or SGML), they maintain one set of carefully validated information,and write 20 programs to extract and format it for each application.The same 20 programs can now be applied to all the hundreds of drugsthat they sell.&lt;br /&gt;In the Web development area, the biggest thing that XML offers isfixing what is wrong with HTML:* browsers allow non-compliant HTML to be presented;* HTML is restricted to a single set of markup (’tagset’).If you let broken HTML work (be presented), then there is no motivationto fix it. Web pages are therefore tag soup that are useless forfurther processing. XML specifies that processing must not continueif the XML is non-compliant, so you keep working at it until itcomplies. This is more work up front, but the result is not a dead-end.If you wanted to mark up the names of things: people, places, companies,etc in HTML, you don’t have many choices that allow you to distinguishamong them. XML allows you to name things as what they are:&lt;person&gt;Charles Goldfarb&lt;/person&gt; worked&lt;br /&gt;at &lt;company&gt;IBM&lt;/company&gt;gives you a flexibility that you don’t have with HTML:&lt;b&gt;Charles Goldfarb&lt;/b&gt; worked at&lt;b&gt;IBM&lt;&lt;/b&gt;&lt;br /&gt;With XML you don’t have to shoe-horn your data into markup thatrestricts your options.&lt;br /&gt;56. What is the purpose of XML namespaces?&lt;br /&gt;XML namespaces are designed to provide universally unique namesfor elements and attributes. This allows people to do a number ofthings, such as:* Combine fragments from different documents without any namingconflicts. (See example below.)* Write reusable code modules that can be invoked for specific elementsand attributes. Universally unique names guarantee that such modulesare invoked only for the correct elements and attributes.* Define elements and attributes that can be reused in other schemasor instance documents without fear of name collisions. For example,you might use XHTML elements in a parts catalog to provide partdescriptions. Or you might use the nil attribute defined in XMLSchemas to indicate a missing value.&lt;br /&gt;As an example of how XML namespaces are used to resolve naming conflictsin XML documents that contain element types and attributes frommultiple XML languages, consider the following two XML documents:&lt;?xml version="1.0″ ?&gt;&lt;address&gt;&lt;street&gt;Apple 7&lt;/street&gt;&lt;city&gt;Color&lt;/city&gt;&lt;br /&gt;&lt;state&gt;State&lt;/state&gt;&lt;country&gt;Country&lt;/country&gt;&lt;postalcode&gt;H98d69&lt;/postalcode&gt;&lt;/address&gt;&lt;br /&gt;and:&lt;?xml version="1.0″ ?&gt;&lt;server&gt;&lt;name&gt;OurWebServer&lt;/name&gt;&lt;address&gt;888.90.67.8&lt;/address&gt;&lt;br /&gt;&lt;/server&gt;&lt;br /&gt;Each document uses a different XML language and each language definesan Address element type. Each of these Address element types isdifferent — that is, each has a different content model, a differentmeaning, and is interpreted by an application in a different way.This is not a problem as long as these element types exist onlyin separate documents. But what if they are combined in the samedocument, such as a list of departments, their addresses, and theirWeb servers? How does an application know which Address elementtype it is processing?One solution is to simply rename one of the Address element types– for example, we could rename the second element type IPAddress.However, this is not a useful long term solution. One of the hopesof XML is that people will standardize XML languages for varioussubject areas and write modular code to process those languages.By reusing existing languages and code, people can quickly definenew languages and write applications that process them. If we renamethe second Address element type to IPAddress, we will break anycode that expects the old name.A better answer is to assign each language (including its Addresselement type) to a different namespace. This allows us to continueusing the Address name in each language, but to distinguish betweenthe two different element types. The mechanism by which we do thisis XML namespaces.(Note that by assigning each Address name to an XML namespace, weactually change the name to a two-part name consisting of the nameof the XML namespace plus the name Address. This means that anycode that recognizes just the name Address will need to be changedto recognize the new two-part name. However, this only needs tobe done once, as the two-part name is universally unique.&lt;br /&gt;57. What is an XML namespace?&lt;br /&gt;An XML namespace is a collection of element type and attributenames. The collection itself is unimportant — in fact, a reasonableargument can be made that XML namespaces don’t actually exist asphysical or conceptual entities . What is important is the nameof the XML namespace, which is a URI. This allows XML namespacesto provide a two-part naming system for element types and attributes.The first part of the name is the URI used to identify the XML namespace– the namespace name. The second part is the element type or attributename itself — the local part, also known as the local name. Together,they form the universal name. This two-part naming system is the only thing defined by the XMLnamespaces recommendation.&lt;br /&gt;58. Does the XML namespaces recommendation define anythingexcept a two-part naming system for element types and attributes?&lt;br /&gt;No.This is a very important point and a source of much confusion, sowe will repeat it:THE XML NAMESPACES RECOMMENDATION DOES NOT DEFINE ANYTHING EXCEPTA TWO-PART NAMING SYSTEM FOR ELEMENT TYPES AND ATTRIBUTES.&lt;br /&gt;In particular, they do not provide or define any of the following:* A way to merge two documents that use different DTDs. * A way to associate XML namespaces and schema information. * A way to validate documents that use XML namespaces. * A way to associate element type or attribute declarations in aDTD with an XML namespace.&lt;br /&gt;58. What do XML namespaces actually contain?&lt;br /&gt;XML namespaces are collections of names, nothing more. That is,they contain the names of element types and attributes, not theelements or attributes themselves. For example, consider the followingdocument.&lt;google:a google="http://www.google.org/"&gt;&lt;b c="google" d="bar"&gt;&lt;/google:A&gt;The element type name A and the attribute name C are in the http://www.google.org/namespace because they are mapped there by the google prefix. Theelement type name B and the attribute name D are not in any XMLnamespace because no prefix maps them there. On the other hand,the elements A and B and the attributes C and D are not in any XMLnamespace, even though they are physically within the scope of thehttp://www.google.org/ namespace declaration. This is because XMLnamespaces contain names, not elements or attributes.XML namespaces also do not contain the definitions of the elementtypes or attributes. This is an important difference, as many peopleare tempted to think of an XML namespace as a schema, which it isnot.&lt;br /&gt;59. Are the names of all element types and attributes insome XML namespace?&lt;br /&gt;No. If an element type or attribute name is not specifically declaredto be in an XML namespace — that is, it is unprefixed and (in thecase of element type names) there is no default XML namespace —then that name is not in any XML namespace. If you want, you canthink of it as having a null URI as its name, although no "null"XML namespace actually exists. For example, in the following, theelement type name B and the attribute names C and E are not in anyXML namespace: &lt;google:a google="http://www.google.org/"&gt;&lt;b c="bar"&gt;&lt;google:d e="bar"&gt;&lt;br /&gt;&lt;/google:A&gt;&lt;br /&gt;60. Do XML namespaces apply to entity names, notation names,or processing instruction targets?&lt;br /&gt;No.XML namespaces apply only to element type and attribute names. Furthermore,in an XML document that conforms to the XML namespaces recommendation,entity names, notation names, and processing instruction targetsmust not contain colons.&lt;br /&gt;61. Who can create an XML namespace?&lt;br /&gt;Anybody can create an XML namespace — all you need to do is assigna URI as its name and decide what element type and attribute namesare in it. The URI must be under your control and should not bebeing used to identify a different XML namespace, such as by a coworker.&lt;br /&gt;(In practice, most people that create XML namespaces also describethe element types and attributes whose names are in it — theircontent models and types, their semantics, and so on. However, thisis not part of the process of creating an XML namespace, nor doesthe XML namespace include or provide a way to discover such information.)&lt;br /&gt;62. Do I need to use XML namespaces?&lt;br /&gt;Maybe, maybe not. If you don’t have any naming conflicts in the XML documents youare using today, as is often the case with documents used insidea single organization, then you probably don’t need to use XML namespaces.However, if you do have conflicts today, or if you expect conflictsin the future due to distributing your documents outside your organizationor bringing outside documents into your organization, then you shouldprobably use XML namespaces. Regardless of whether you use XML namespaces in your own documents,it is likely that you will use them in conjunction with some otherXML technology, such as XSL, XHTML, or XML Schemas. For example,the following XSLT (XSL Transformations) stylesheet uses XML namespacesto distinguish between element types defined in XSLT and those definedelsewhere: &lt;xsl:stylesheet version="1.0″&lt;br /&gt;xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt;&lt;xsl:template match="Address"&gt;&lt;!– The Addresses element type is not part of the XSLT namespace.–&gt;&lt;addresses&gt;&lt;xsl:apply-templates/&gt;&lt;/addresses&gt;&lt;br /&gt;&lt;/xsl:template&gt;&lt;/xsl:stylesheet&gt;&lt;br /&gt;63. What is the relationship between XML namespaces andthe XML 1.0 recommendation?&lt;br /&gt;Although the XML 1.0 recommendation anticipated the need for XMLnamespaces by noting that element type and attribute names shouldnot include colons, it did not actually support XML namespaces.Thus, XML namespaces are layered on top of XML 1.0. In particular,any XML document that uses XML namespaces is a legal XML 1.0 documentand can be interpreted as such in the absence of XML namespaces.For example, consider the following document:&lt;br /&gt;&lt;google:a google="http://www.google.org/"&gt;&lt;google:b c="bar"&gt;&lt;br /&gt;&lt;/google:A&gt;&lt;br /&gt;If this document is processed by a namespace-unaware processor,that processor will see two elements whose names are google:A andgoogle:B. The google:A element has an attribute named xmlns:googleand the google:B element has an attribute named google:C. On theother hand, a namespace-aware processor will see two elements withuniversal names {http://www.google.org}A and {http://www.google.org}B.The {http://www.google.org}A does not have any attributes; instead,it has a namespace declaration that maps the google prefix to theURI http://www.google.org. The {http://www.google.org}B elementhas an attribute named {http://www.google.org}C.Needless to say, this has led to a certain amount of confusion.One area of confusion is the relationship between XML namespacesand validating XML documents against DTDs. This occurs because theXML namespaces recommendation did not describe how to use XML namespaceswith DTDs. Fortunately, a similar situation does not occur withXML schema languages, as all of these support XML namespaces. The other main area of confusion is in recommendations and specificationssuch as DOM and SAX whose first version predates the XML namespacesrecommendation. Although these have since been updated to includeXML namespace support, the solutions have not always been prettydue to backwards compatibility requirements. All recommendationsin the XML family now support XML namespaces.&lt;br /&gt;64. What is the difference between versions 1.0 and 1.1of the XML namspaces recommendation?&lt;br /&gt;There are only two differences between XML namespaces 1.0 and XMLnamespaces 1.1:&lt;br /&gt;* Version 1.1 adds a way to undeclare prefixes. For more information,see question 4.7.* Version 1.1 uses IRIs (Internationalized Resource Identifiers)instead of URIs. Basically, URIs are restricted to a subset of ASCIIcharacters, while IRIs allow much broader use of Unicode characters.For complete details, see section 9 of Namespaces in XML 1.1.NOTE: As of this writing (February, 2003), Namespaces in XML 1.1is still a candidate recommendation and not widely used. PART II:DECLARING AND USING XML NAMESPACES&lt;br /&gt;65. How do I declare an XML namespace in an XML document?&lt;br /&gt;To declare an XML namespace, you use an attribute whose name hasthe form:xmlns:prefix&lt;br /&gt;–OR–xmlnsThese attributes are often called xmlns attributes and their valueis the name of the XML namespace being declared; this is a URI.The first form of the attribute (xmlns:prefix) declares a prefixto be associated with the XML namespace. The second form (xmlns)declares that the specified namespace is the default XML namespace.For example, the following declares two XML namespaces, named http://www.google.com/ito/addressesand http://www.google.com/ito/servers. The first declaration associatesthe addr prefix with the http://www.google.com/ito/addresses namespaceand the second declaration states that the http://www.google.com/ito/serversnamespace is the default XML namespace.&lt;Departmentxmlns:addr="http://www.google.com/ito/addresses"&lt;br /&gt;xmlns="http://www.google.com/ito/servers"&gt;NOTE: Technically, xmlns attributes are not attributes at all —they are XML namespace declarations that just happen to look likeattributes. Unfortunately, they are not treated consistently bythe various XML recommendations, which means that you must be carefulwhen writing an XML application. For example, in the XML Information Set (http://www.w3.org/TR/xml-infoset),xmlns "attributes" do not appear as attribute informationitems. Instead, they appear as namespace declaration informationitems. On the other hand, both DOM level 2 and SAX 2.0 treat namespaceattributes somewhat ambiguously. In SAX 2.0, an application caninstruct the parser to return xmlns "attributes" alongwith other attributes, or omit them from the list of attributes.Similarly, while DOM level 2 sets namespace information based onxmlns "attributes", it also forces applications to manuallyadd namespace declarations using the same mechanism the applicationwould use to set any other attributes.&lt;br /&gt;66. Where can I declare an XML namespace?&lt;br /&gt;You can declare an XML namespace on any element in an XML document.The namespace is in scope for that element and all its descendantsunless it is overridden.&lt;br /&gt;67. Can I use an attribute default in a DTD to declarean XML namespace?&lt;br /&gt;Yes. For example, the following uses the FIXED attribute xmlns:googleon the A element type to associate the google prefix with the http://www.google.org/namespace. The effect of this is that both A and B are in the http://www.google.org/namespace. &lt;?xml version="1.0″ ?&gt;&lt;!DOCTYPE google:A [&lt;!ELEMENT google:A (google:B)&gt;&lt;!ATTLIST google:A&lt;br /&gt;xmlns:google CDATA #FIXED "http://www.google.org/"&gt;&lt;!ELEMENT google:B (#PCDATA)&gt;]&gt;&lt;!– google prefix declared through default attribute. –&gt;&lt;google:a&gt;&lt;google:b&gt;abc&lt;/google:B&gt;&lt;br /&gt;&lt;/google:A&gt;&lt;br /&gt;IMPORTANT: You should be very careful about placing XML namespacedeclarations in external entities (external DTDs), as non-validatingparsers are not required to read these. For example, suppose thepreceding DTD was placed in an external entity (google.dtd) andthat the document was processed by a non-validating parser thatdid not read google.dtd. This would result in a namespace errorbecause the google prefix was never declared: &lt;?xml version="1.0″ ?&gt;&lt;!– google.dtd might not be read by non-validating parsers.–&gt;&lt;!DOCTYPE google:A SYSTEM "google.dtd"&gt;&lt;!– google prefix not declared unless google.dtd is read. –&gt;&lt;br /&gt;&lt;google:a&gt;&lt;google:b&gt;abc&lt;/google:B&gt;&lt;/google:A&gt;&lt;br /&gt;68. Do the default values of xmlns attributes declaredin the DTD apply to the DTD?&lt;br /&gt;No.&lt;br /&gt;Declaring a default value of an xmlns attribute in the DTD doesnot declare an XML namespace for the DTD. (In fact, no XML namespacedeclarations apply to DTDs.) Instead, these defaults (declarations)take effect only when the attribute is instantiated on an element.For example: &lt;?xml version="1.0″ ?&gt;&lt;!DOCTYPE google:A [&lt;!ELEMENT google:A (google:B)&gt;&lt;!ATTLIST google:Axmlns:google CDATA #FIXED "http://www.google.org/"&gt;&lt;br /&gt;&lt;!ELEMENT google:B (#PCDATA)&gt;]&gt;&lt;google:a&gt; &lt;========== Namespace declaration takes effecthere.&lt;google:b&gt;abc&lt;/google:B&gt;&lt;/google:A&gt; &lt;========= Namespace declaration ends here.&lt;br /&gt;For more information, see question 7.2. (Note that an earlier versionof MSXML (the parser used by Internet Explorer) did use fixed xmlnsattribute declarations as XML namespace declarations, but that thiswas removed in MSXML 4.&lt;br /&gt;69. How do I override an XML namespace declaration thatuses a prefix?&lt;br /&gt;To override the prefix used in an XML namespace declaration, yousimply declare another XML namespace with the same prefix. For example,in the following, the google prefix is associated with the http://www.google.org/namespace on the A and B elements and the http://www.bar.org/ namespaceon the C and D elements. That is, the names A and B are in the http://www.google.org/namespace and the names C and D are in the http://www.bar.org/ namespace.&lt;br /&gt;&lt;google:a google="http://www.google.org/"&gt;&lt;google:b&gt;&lt;google:c google="http://www.bar.org/"&gt;&lt;br /&gt;&lt;google:d&gt;abcd&lt;/google:D&gt;&lt;/google:C&gt;&lt;/google:B&gt;&lt;/google:A&gt;&lt;br /&gt;In general, this leads to documents that are confusing to readand should be avoided.&lt;br /&gt;70. How do I override a default XML namespace declaration?&lt;br /&gt;To override the current default XML namespace, you simply declareanother XML namespace as the default. For example, in the following,the default XML namespace is the http://www.google.org/ namespaceon the A and B elements and the http://www.bar.org/ namespace onthe C and D elements. That is, the names A and B are in the http://www.google.org/namespace and the names C and D are in the http://www.bar.org/ namespace.&lt;br /&gt;&lt;a xmlns="http://www.google.org/"&gt;&lt;b&gt;&lt;c xmlns="http://www.bar.org/"&gt;&lt;d&gt;abcd&lt;/d&gt;&lt;br /&gt;&lt;/c&gt;&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;Using multiple default XML namespaces can lead to documents thatare confusing to read and should be done carefully.&lt;br /&gt;71. How do I undeclare an XML namespace prefix?&lt;br /&gt;In version 1.0 of the XML namespaces recommendation, you cannot"undeclare" an XML namespace prefix. It remains in scopeuntil the end of the element on which it was declared unless itis overridden. Furthermore, trying to undeclare a prefix by redeclaringit with an empty (zero-length) name (URI) results in a namespaceerror. For example:&lt;br /&gt;&lt;google:a google="http://www.google.org/"&gt;&lt;google:b&gt;&lt;google:c google=""&gt; &lt;==== This is an errorin v1.0, legal in v1.1.&lt;google:d&gt;abcd&lt;/google:D&gt;&lt;/google:C&gt;&lt;br /&gt;&lt;/google:B&gt;&lt;/google:A&gt;&lt;br /&gt;In version 1.1 of the XML namespaces recommendation [currentlya candidate recommendation -- February, 2003], you can undeclarean XML namespace prefix by redeclaring it with an empty name. Forexample, in the above document, the XML namespace declaration xmlns:google=""is legal and removes the mapping from the google prefix to the http://www.google.orgURI. Because of this, the use of the google prefix in the google:Delement results in a namespace error.&lt;br /&gt;71. How do I undeclare the default XML namespace?&lt;br /&gt;To "undeclare" the default XML namespace, you declarea default XML namespace with an empty (zero-length) name (URI).Within the scope of this declaration, unprefixed element type namesdo not belong to any XML namespace. For example, in the following,the default XML namespace is the http://www.google.org/ for theA and B elements and there is no default XML namespace for the Cand D elements. That is, the names A and B are in the http://www.google.org/namespace and the names C and D are not in any XML namespace.&lt;br /&gt;&lt;a xmlns="http://www.google.org/"&gt;&lt;br /&gt;&lt;b&gt;&lt;c xmlns=""&gt;&lt;d&gt;abcd&lt;/d&gt;&lt;/c&gt;&lt;/b&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;72. Why are special attributes used to declare XML namespaces?&lt;br /&gt;I don’t know the answer to this question, but the likely reasonis that the hope that they would simplify the process of movingfragments from one document to another document. An early draftof the XML namespaces recommendation proposed using processing instructionsto declare XML namespaces. While these were simple to read and process,they weren’t easy to move to other documents. Attributes, on theother hand, are intimately attached to the elements being moved.Unfortunately, this hasn’t worked as well as was hoped. For example,consider the following XML document:&lt;br /&gt;&lt;google:a google="http://www.google.org/"&gt;&lt;google:b&gt;&lt;br /&gt;&lt;google:c&gt;bar&lt;/google:C&gt;&lt;/google:B&gt;&lt;/google:A&gt;&lt;br /&gt;Simply using a text editor to cut the fragment headed by the &lt;b&gt;element from one document and paste it into another document resultsin the loss of namespace information because the namespace declarationis not part of the fragment — it is on the parent element (&lt;a&gt;)– and isn’t moved.&lt;br /&gt;Even when this is done programmatically, the situation isn’t necessarilyany better. For example, suppose an application uses DOM level 2to "cut" the fragment from the above document and "paste"it into a different document. Although the namespace informationis transferred (it is carried by each node), the namespace declaration(xmlns attribute) is not, again because it is not part of the fragment.Thus, the application must manually add the declaration before serializingthe document or the new document will be invalid. 73. How do different XML technologies treat XML namespace declarations?This depends on the technology — some treat them as attributesand some treat them as namespace declarations. For example, SAX1treats them as attributes and SAX2 can treat them as attributesor namespace declarations, depending on how the parser is configured.DOM levels 1 and 2 treat them as attributes, but DOM level 2 alsointerprets them as namespace declarations. XPath, XSLT, and XMLSchemas treat them as namespaces declarations. The reason that different technologies treat these differently isthat many of these technologies predate XML namespaces. Thus, newerversions of them need to worry both about XML namespaces and backwardscompatibility issues.&lt;br /&gt;74. How do I use prefixes to refer to element type andattribute names in an XML namespace?&lt;br /&gt;Make sure you have declared the prefix and that it is still inscope . All you need to do then is prefix the local name of an elementtype or attribute with the prefix and a colon. The result is a qualifiedname, which the application parses to determine what XML namespacethe local name belongs to.&lt;br /&gt;For example, suppose you have associated the serv prefix with thehttp://www.our.com/ito/servers namespace and that the declarationis still in scope. In the following, serv:Address refers to theAddress name in the http://www.our.com/ito/servers namespace. (Notethat the prefix is used on both the start and end tags.) &lt;!– serv refers to the http://www.our.com/ito/servers namespace.–&gt;&lt;serv:address&gt;127.66.67.8&lt;/serv:Address&gt;&lt;br /&gt;Now suppose you have associated the xslt prefix with the http://www.w3.org/1999/XSL/Transformnamespace. In the following, xslt:version refers to the versionname in the http://www.w3.org/1999/XSL/Transform namespace: &lt;!– xslt refers to the http://www.w3.org/1999/XSL/Transformnamespace. –&gt;&lt;br /&gt;&lt;html version=""&gt;&lt;br /&gt;75. How do I use the default XML namespace to refer toelement type names in an XML namespace?&lt;br /&gt;Make sure you have declared the default XML namespace and thatthat declaration is still in scope . All you need to do then isuse the local name of an element type. Even though it is not prefixed,the result is still a qualified name ), which the application parsesto determine what XML namespace it belongs to. For example, suppose you declared the http://www.w3.org/to/addressesnamespace as the default XML namespace and that the declarationis still in scope. In the following, Address refers to the Addressname in the http://www.w3.org/to/addresses namespace.&lt;br /&gt;&lt;!– http://www.w3.org/to/addresses is the default XML namespace.–&gt;&lt;address&gt;123.45.67.8&lt;/address&gt;&lt;br /&gt;76. How do I use the default XML namespace to refer toattribute names in an XML namespace?&lt;br /&gt;You can’t. The default XML namespace only applies to element type names, soyou can refer to attribute names that are in an XML namespace onlywith a prefix. For example, suppose that you declared the http://http://www.w3.org/to/addressesnamespace as the default XML namespace. In the following, the typeattribute name does not refer to that namespace, although the Addresselement type name does. That is, the Address element type name isin the http://http://www.fyicneter.com/ito/addresses namespace,but the type attribute name is not in any XML namespace.&lt;br /&gt;&lt;!– http://http://www.w3.org/to/addresses is the default XMLnamespace. –&gt;&lt;address type="home"&gt;&lt;br /&gt;To understand why this is true, remember that the purpose of XMLnamespaces is to uniquely identify element and attribute names.Unprefixed attribute names can be uniquely identified based on theelement type to which they belong, so there is no need identifythem further by including them in an XML namespace. In fact, theonly reason for allowing attribute names to be prefixed is so thatattributes defined in one XML language can be used in another XMLlanguage.&lt;br /&gt;77. When should I use the default XML namespace insteadof prefixes?&lt;br /&gt;This is purely a matter of choice, although your choice may affectthe readability of the document. When elements whose names all belongto a single XML namespace are grouped together, using a defaultXML namespace might make the document more readable. For example:&lt;br /&gt;&lt;!– A, B, C, and G are in the http://www.google.org/ namespace.–&gt;&lt;a xmlns="http://www.google.org/"&gt;&lt;b&gt;abcd&lt;/b&gt;&lt;br /&gt;&lt;c&gt;efgh&lt;/c&gt;&lt;!– D, E, and F are in the http://www.bar.org/ namespace. –&gt;&lt;d xmlns="http://www.bar.org/"&gt;&lt;e&gt;1234&lt;/e&gt;&lt;f&gt;5678&lt;/f&gt;&lt;br /&gt;&lt;/d&gt;&lt;!– Remember! G is in the http://www.google.org/ namespace.–&gt;&lt;g&gt;ijkl&lt;/g&gt;&lt;/a&gt;&lt;br /&gt;When elements whose names are in multiple XML namespaces are interspersed,default XML namespaces definitely make a document more difficultto read and prefixes should be used instead. For example:&lt;br /&gt;&lt;a xmlns="http://www.google.org/"&gt;&lt;b xmlns="http://www.bar.org/"&gt;abcd&lt;/b&gt;&lt;c xmlns="http://www.google.org/"&gt;efgh&lt;/c&gt;&lt;d xmlns="http://www.bar.org/"&gt;&lt;e xmlns="http://www.google.org/"&gt;1234&lt;/e&gt;&lt;br /&gt;&lt;f xmlns="http://www.bar.org/"&gt;5678&lt;/f&gt;&lt;/d&gt;&lt;g xmlns="http://www.google.org/"&gt;ijkl&lt;/g&gt;&lt;/a&gt;&lt;br /&gt;In some cases, default namespaces can be processed faster thannamespace prefixes, but the difference is certain to be negligiblein comparison to total processing time.&lt;br /&gt;78. What is the scope of an XML namespace declaration?&lt;br /&gt;The scope of an XML namespace declaration is that part of an XMLdocument to which the declaration applies. An XML namespace declarationremains in scope for the element on which it is declared and allof its descendants, unless it is overridden or undeclared on oneof those descendants. For example, in the following, the scope of the declaration of thehttp://www.google.org/ namespace is the element A and its descendants(B and C). The scope of the declaration of the http://www.bar.org/namespace is only the element C. &lt;google:a google="http://www.google.org/"&gt;&lt;google:b&gt;&lt;bar:c bar="http://www.bar.org/"&gt;&lt;br /&gt;&lt;/google:B&gt;&lt;/google:A&gt;&lt;br /&gt;79. Does the scope of an XML namespace declaration includethe element it is declared on?&lt;br /&gt;Yes. For example, in the following, the names B and C are in the http://www.bar.org/namespace, not the http://www.google.org/ namespace. This is becausethe declaration that associates the google prefix with the http://www.bar.org/namespace occurs on the B element, overriding the declaration onthe A element that associates it with the http://www.google.org/namespace. &lt;google:a google="http://www.google.org/"&gt;&lt;br /&gt;&lt;google:b google="http://www.bar.org/"&gt;&lt;google:c&gt;abcd&lt;/google:C&gt;&lt;/google:B&gt;&lt;/google:A&gt;&lt;br /&gt;Similarly, in the following, the names B and C are in the http://www.bar.org/namespace, not the http://www.google.org/ namespace because thedeclaration declaring http://www.bar.org/ as the default XML namespaceoccurs on the B element, overriding the declaration on the A element.&lt;br /&gt;&lt;a xmlns="http://www.google.org/"&gt;&lt;b xmlns="http://www.bar.org/"&gt;&lt;c&gt;abcd&lt;/c&gt;&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;A final example is that, in the following, the attribute name Dis in the http://www.bar.org/ namespace. &lt;google:a google="http://www.google.org/"&gt;&lt;google:b d="In http://www.bar.org/ namespace" google="http://www.bar.org/"&gt;&lt;c&gt;abcd&lt;/c&gt;&lt;br /&gt;&lt;/google:B&gt;&lt;/google:A&gt;&lt;br /&gt;One consequence of XML namespace declarations applying to the elementsthey occur on is that they actually apply before they appear. Becauseof this, software that processes qualified names should be particularlycareful to scan the attributes of an element for XML namespace declarationsbefore deciding what XML namespace (if any) an element type or attributename belongs to.&lt;br /&gt;80. If an element or attribute is in the scope of an XMLnamespace declaration, is its name in that namespace?&lt;br /&gt;Not necessarily. When an element or attribute is in the scope of an XML namespacedeclaration, the element or attribute’s name is checked to see ifit has a prefix that matches the prefix in the declaration. Whetherthe name is actually in the XML namespace depends on whether theprefix matches. For example, in the following, the element typenames A, B, and D and the attribute names C and E are in the scopeof the declaration of the http://www.google.org/ namespace. Whilethe names A, B, and C are in that namespace, the names D and E arenot.&lt;br /&gt;&lt;google:a google="http://www.google.org/"&gt;&lt;google:b c="google"&gt;&lt;bar:d e="bar"&gt;&lt;/google:A&gt;&lt;br /&gt;81. What happens when an XML namespace declaration goesout of scope?&lt;br /&gt;When an XML namespace declaration goes out of scope, it simplyno longer applies. For example, in the following, the declarationof the http://www.google.org/ namespace does not apply to the Celement because this is outside its scope. That is, it is past theend of the B element, on which the http://www.google.org/ namespacewas declared.&lt;br /&gt;&lt;!– B is in the http://www.google.org/ namespace;C is not in any XML namespace. –&gt;&lt;a&gt;&lt;b xmlns="http://www.google.org/"&gt;abcd&lt;/b&gt;&lt;c&gt;efgh&lt;/c&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;In addition to the declaration no longer applying, any declarationsthat it overrode come back into scope. For example, in the following,the declaration of the http://www.google.org/ namespace is broughtback into scope after the end of the B element. This is becauseit was overridden on the B element by the declaration of the http://www.bar.org/namespace. &lt;!– A and C are in the http://www.google.org/ namespace.B is in the http://www.bar.org/ namespace. –&gt;&lt;a xmlns="http://www.google.org/"&gt;&lt;b xmlns="http://www.bar.org/"&gt;abcd&lt;/b&gt;&lt;br /&gt;&lt;c&gt;efgh&lt;/c&gt;&lt;/a&gt;&lt;br /&gt;82. What happens if no XML namespace declaration is inscope?&lt;br /&gt;If no XML namespace declaration is in scope, then any prefixedelement type or attribute names result in namespace errors. Forexample, in the following, the names google:A and google:B resultin namespace errors. &lt;?xml version="1.0″ ?&gt;&lt;br /&gt;&lt;google:a b="error"&gt;&lt;br /&gt;In the absence of an XML namespace declaration, unprefixed elementtype and attribute names do not belong to any XML namespace. Forexample, in the following, the names A and B are not in any XMLnamespace.&lt;br /&gt;83. Can multiple XML namespace declarations be in scopeat the same time?&lt;br /&gt;Yes, as long as they don’t use the same prefixes and at most oneof them is the default XML namespace. For example, in the following,the http://www.google.org/ and http://www.bar.org/ namespaces areboth in scope for all elements: &lt;a google="http://www.google.org/" bar="http://www.bar.org/"&gt;&lt;br /&gt;&lt;google:b&gt;abcd&lt;/google:B&gt;&lt;bar:c&gt;efgh&lt;/bar:C&gt;&lt;/a&gt;One consequence of this is that you can place all XML namespacedeclarations on the root element and they will be in scope for allelements. This is the simplest way to use XML namespaces.&lt;br /&gt;84. How can I declare XML namespaces so that all elementsand attributes are in their scope?&lt;br /&gt;XML namespace declarations that are made on the root element arein scope for all elements and attributes in the document. This meansthat an easy way to declare XML namespaces is to declare them onlyon the root element.&lt;br /&gt;85. Does the scope of an XML namespace declaration everinclude the DTD?&lt;br /&gt;No. XML namespaces can be declared only on elements and their scopeconsists only of those elements and their descendants. Thus, thescope can never include the DTD.&lt;br /&gt;86. Can I use XML namespaces in DTDs?&lt;br /&gt;Yes and no.&lt;br /&gt;In particular, DTDs can contain qualified names but XML namespacedeclarations do not apply to DTDs .This has a number of consequences. Because XML namespace declarationsdo not apply to DTDs:1. There is no way to determine what XML namespace a prefix in aDTD points to. Which means…2. Qualified names in a DTD cannot be mapped to universal names.Which means…3. Element type and attribute declarations in a DTD are expressedin terms of qualified names, not universal names. Which means…4. Validation cannot be redefined in terms of universal names asmight be expected.&lt;br /&gt;This situation has caused numerous complaints but, as XML namespacesare already a recommendation, is unlikely to change. The long termsolution to this problem is an XML schema language: all of the proposedXML schema languages provide a mechanism by which the local namein an element type or attribute declaration can be associated withan XML namespace. This makes it possible to redefine validity interms of universal names.&lt;br /&gt;87. Do XML namespace declarations apply to DTDs?&lt;br /&gt;No. In particular, an xmlns attribute declared in the DTD with a defaultis not an XML namespace declaration for the DTD.. (Note that anearlier version of MSXML (the parser used by Internet Explorer)did use such declarations as XML namespace declarations, but thatthis was removed in MSXML 4.&lt;br /&gt;88. Can I use qualified names in DTDs?&lt;br /&gt;Yes.&lt;br /&gt;For example, the following is legal:&lt;br /&gt;&lt;!ELEMENT google:A (google:B)&gt;&lt;!ATTLIST google:Agoogle:C CDATA #IMPLIED&gt;&lt;!ELEMENT google:B (#PCDATA)&gt;&lt;br /&gt;However, because XML namespace declarations do not apply to DTDs, qualified names in the DTD cannot be converted to universal names.As a result, qualified names in the DTD have no special meaning.For example, google:A is just google:A — it is not A in the XMLnamespace to which the prefix google is mapped.&lt;br /&gt;The reason qualified names are allowed in the DTD is so that validationwill continue to work.&lt;br /&gt;89. Can the content model in an element type declarationcontain element types whose names come from other XML namespaces?&lt;br /&gt;Yes and no. The answer to this question is yes in the sense that a qualifiedname in a content model can have a different prefix than the qualifiedname of the element type being declared. For example, the followingis legal:&lt;!ELEMENT google:A (bar:B, baz:C)&gt;The answer to this question is no in the sense that XML namespacedeclarations do not apply to DTDs so the prefixes used in an elementtype declaration are technically meaningless. In particular, theydo not specify that the name of a certain element type belongs toa certain namespace. Nevertheless, the ability to mix prefixes inthis manner is crucial when: a) you have a document whose namescome from multiple XML namespaces , and b) you want to constructthat document in a way that is both valid and conforms to the XMLnamespaces recommendation .&lt;br /&gt;90. Can the attribute list of an element type contain attributeswhose names come from other XML namespaces?&lt;br /&gt;Yes and no. For example, the following is legal: &lt;!ATTLIST google:A bar:B CDATA #IMPLIED&gt;&lt;br /&gt;91. How can I construct an XML document that is valid andconforms to the XML namespaces recommendation?&lt;br /&gt;In answering this question, it is important to remember that:* Validity is a concept defined in XML 1.0,* XML namespaces are layered on top of XML 1.0 , and* The XML namespaces recommendation does not redefine validity,such as in terms of universal names .Thus, validity is the same for a document that uses XML namespacesand one that doesn’t. In particular, with respect to validity:* xmlns attributes are treated as attributes, not XML namespacedeclarations.&lt;br /&gt;* Qualified names are treated like other names. For example, inthe name google:A, google is not treated as a namespace prefix,the colon is not treated as separating a prefix from a local name,and A is not treated as a local name. The name google:A is treatedsimply as the name google:A.Because of this, XML documents that you might expect to be validare not. For example, the following document is not valid becausethe element type name A is not declared in the DTD, in spite ofthe fact both google:A and A share the universal name {http://www.google.org/}A:&lt;?xml version="1.0″ ?&gt;&lt;!DOCTYPE google:A [&lt;!ELEMENT google:A EMPTY&gt;&lt;!ATTLIST google:A&lt;br /&gt;xmlns:google CDATA #FIXED "http://www.google.org/"xmlns CDATA #FIXED "http://www.google.org/"&gt;]&gt;&lt;a/&gt;&lt;br /&gt;Similarly, the following is not valid because the xmlns attributeis not declared in the DTD:&lt;br /&gt;&lt;?xml version="1.0″ ?&gt;&lt;br /&gt;&lt;!DOCTYPE A [&lt;!ELEMENT A EMPTY&gt;]&gt;&lt;a xmlns="http://www.google.org/"&gt;&lt;br /&gt;Furthermore, documents that you might expect to be invalid arevalid. For example, the following document is valid but containstwo definitions of the element type with the universal name {http://www.google.org/}A:&lt;br /&gt;&lt;?xml version="1.0″ ?&gt;&lt;br /&gt;&lt;!DOCTYPE google:A [&lt;!ELEMENT google:A (bar:A)&gt;&lt;!ATTLIST google:Axmlns:google CDATA #FIXED "http://www.google.org/"&gt;&lt;!ELEMENT bar:A (#PCDATA)&gt;&lt;!ATTLIST bar:A&lt;br /&gt;xmlns:bar CDATA #FIXED "http://www.google.org/"&gt;]&gt;&lt;google:a&gt;&lt;bar:a&gt;abcd&lt;/bar:A&gt;&lt;/google:A&gt;&lt;br /&gt;Finally, validity has nothing to do with correct usage of XML namespaces.For example, the following document is valid but does not conformto the XML namespaces recommendation because the google prefix isnever declared: &lt;?xml version="1.0″ ?&gt;&lt;!DOCTYPE google:A [&lt;!ELEMENT google:A EMPTY&gt;]&gt;&lt;google:a&gt;&lt;br /&gt;Therefore, when constructing an XML document that uses XML namespaces,you need to do both of the following if you want the document tobe valid:* Declare xmlns attributes in the DTD.* Use the same qualified names in the DTD and the body of the document.For example:&lt;?xml version="1.0″ ?&gt;&lt;!DOCTYPE google:A [&lt;br /&gt;&lt;!ELEMENT google:A (google:B)&lt;!ATTLIST google:Axmlns:google CDATA #FIXED "http://www.google.org/"&gt;&lt;!ELEMENT google:B EMPTY&gt;]&gt;&lt;google:a&gt;&lt;br /&gt;&lt;google:b&gt;&lt;/google:A&gt;&lt;br /&gt;There is no requirement that the same prefix always be used forthe same XML namespace. For example, the following is also valid:&lt;?xml version="1.0″ ?&gt;&lt;!DOCTYPE google:A [&lt;!ELEMENT google:A (bar:B)&gt;&lt;br /&gt;&lt;!ATTLIST google:Axmlns:google CDATA #FIXED "http://www.google.org/"&gt;&lt;!ELEMENT bar:B EMPTY&gt;&lt;!ATTLIST bar:Bxmlns:bar CDATA #FIXED "http://www.google.org/"&gt;]&gt;&lt;br /&gt;&lt;google:a&gt;&lt;bar:b&gt;&lt;/google:A&gt;&lt;br /&gt;However, documents that use multiple prefixes for the same XMLnamespace or the same prefix for multiple XML namespaces are confusingto read and thus prone to error. They also allow abuses such asdefining an element type or attribute with a given universal namemore than once, as was seen earlier. Therefore, a better set ofguidelines for writing documents that are both valid and conformto the XML namespaces recommendation is: * Declare all xmlns attributes in the DTD.* Use the same qualified names in the DTD and the body of the document.&lt;br /&gt;* Use one prefix per XML namespace.* Do not use the same prefix for more than one XML namespace.* Use at most one default XML namespace.&lt;br /&gt;The latter three guidelines guarantee that prefixes are unique.This means that prefixes fulfill the role normally played by namespacenames (URIs) — uniquely identifying an XML namespace — and thatqualified names are equivalent to universal names, so a given universalname is always represented by the same qualified name. Unfortunately,this is contrary to the spirit of prefixes, which were designedfor their flexibility. For a slightly better solution.&lt;br /&gt;92. How can I allow the prefixes in my document to be differentfrom the prefixes in my DTD?&lt;br /&gt;One of the problems with the solution proposed in question is thatit requires the prefixes in the document to match those in the DTD.Fortunately, there is a workaround for this problem, although itdoes require that a single prefix be used for a particular namespaceURI throughout the document. (This is a good practice anyway, soit’s not too much of a restriction.) The solution assumes that youare using a DTD that is external to the document, which is commonpractice.&lt;br /&gt;To use different prefixes in the external DTD and XML documents,you declare the prefix with a pair of parameter entities in theDTD. You can then override these entities with declarations in theinternal DTD in a given XML document. This works because the internalDTD is read before the external DTD and the first definition ofa particular entity is the one that is used. The following paragraphsdescribe how to use a single namespace in your DTD. You will needto modify them somewhat to use multiple namespaces. To start with, declare three parameter entities in your DTD:&lt;br /&gt;&lt;!ENTITY % p "" &gt;&lt;!ENTITY % s "" &gt;&lt;!ENTITY % nsdecl "xmlns%s;" &gt;&lt;br /&gt;The p entity ("p" is short for "prefix") isused in place of the actual prefix in element type and attributenames. The s entity ("s" is short for "suffix")is used in place of the actual prefix in namespace declarations.The nsdecl entity ("nsdecl" is short for "namespacedeclaration") is used in place of the name of the xmlns attributein declarations of that attribute.&lt;br /&gt;Now use the p entity to define parameter entities for each of thenames in your namespace. For example, suppose element type namesA, B, and C and attribute name D are in your namespace.&lt;br /&gt;&lt;!ENTITY % A "%p;A"&gt;&lt;!ENTITY % B "%p;B"&gt;&lt;!ENTITY % C "%p;C"&gt;&lt;!ENTITY % D "%p;D"&gt;&lt;br /&gt;Next, declare your element types and attributes using the "name"entities, not the actual names. For example:&lt;br /&gt;&lt;!ELEMENT %A; ((%B;)*, %C;)&gt;&lt;!ATTLIST %A;%nsdecl; CDATA "http://www.google.org/"&gt;&lt;!ELEMENT %B; EMPTY&gt;&lt;!ATTLIST %B;%D; NMTOKEN #REQUIRED&lt;br /&gt;E CDATA #REQUIRED&gt;&lt;!ELEMENT %C; (#PCDATA)&gt;&lt;br /&gt;There are several things to notice here.* Attribute D is in a namespace, so it is declared with a "name"entity. Attribute E is not in a namespace, so no entity is used.* The nsdecl entity is used to declare the xmlns attribute. (xmlnsattributes must be declared on every element type on which theycan occur.) Note that a default value is given for the xmlns attribute.* The reference to element type B in the content model of A is placedinside parentheses. The reason for this is that a modifier — *in this case — is applied to it. Using parentheses is necessarybecause the replacement values of parameter entities are paddedwith spaces; directly applying the modifier to the parameter entityreference would result in illegal syntax in the content model.&lt;br /&gt;For example, suppose the value of the A entity is "google:A",the value of the B entity is "google:B", and the valueof the C entity is "google:C". The declaration:&lt;!ELEMENT %A; (%B;*, %C;)&gt;would resolve to:&lt;!ELEMENT google:A ( google:B *, google:C )&gt;&lt;br /&gt;This is illegal because the * modifier must directly follow thereference to the google:B element type. By placing the referenceto the B entity in parentheses, the declaration resolves to:&lt;br /&gt;&lt;!ELEMENT google:A (( google:B )*, google:C )&gt;&lt;br /&gt;This is legal because the * modifier directly follows the closingparenthesis.&lt;br /&gt;Now let’s see how this all works. Suppose our XML document won’tuse prefixes, but instead wants the default namespace to be thehttp://www.google.org/ namespace. In this case, no entity declarationsare needed in the document. For example, our document might be:&lt;br /&gt;&lt;!DOCTYPE A SYSTEM "http://www.google.org/google.dtd"&gt;&lt;a&gt;&lt;b d="bar" e="baz buz"&gt;&lt;b d="boo" e="biz bez"&gt;&lt;br /&gt;&lt;c&gt;bizbuz&lt;/c&gt;&lt;/a&gt;&lt;br /&gt;This document is valid because the declarations for p, s, and nsdeclin the DTD set p and s to "" and nsdecl to "xmlns".That is, after replacing the p, s, and nsdecl parameter entities,the DTD is as follows. Notice that both the DTD and document usethe element type names A, B, and C and the attribute names D andE.&lt;!ELEMENT A (( B )*, C )&gt;&lt;!ATTLIST A&lt;br /&gt;xmlns CDATA "http://www.google.org/"&gt;&lt;!ELEMENT B EMPTY&gt;&lt;!ATTLIST B D NMTOKEN #REQUIREDE CDATA #REQUIRED&gt;&lt;!ELEMENT C (#PCDATA)&gt;&lt;br /&gt;But what if the document wants to use a different prefix, suchas google? In this case, the document must override the declarationsof the p and s entities in its internal DTD. That is, it must declarethese entities so that they use google as a prefix (followed bya colon) and a suffix (preceded by a colon). For example:&lt;br /&gt;&lt;!DOCTYPE google:A SYSTEM "http://www.google.org/google.dtd"[&lt;!ENTITY % p "google:"&gt;&lt;!ENTITY % s ":google"&gt;]&gt;&lt;google:a&gt;&lt;br /&gt;&lt;google:b d="bar" e="baz buz"&gt;&lt;google:b d="boo" e="biz bez"&gt;&lt;google:c&gt;bizbuz&lt;/google:C&gt;&lt;/google:A&gt;&lt;br /&gt;In this case, the internal DTD is read before the external DTD,so the values of the p and s entities from the document are used.Thus, after replacing the p, s, and nsdecl parameter entities, theDTD is as follows. Notice that both the DTD and document use theelement type names google:A, google:B, and google:C and the attributenames google:D and E.&lt;br /&gt;&lt;!ELEMENT google:A (( google:B )*, google:C )&gt;&lt;!ATTLIST google:A xmlns:google CDATA "http://www.google.org/"&gt;&lt;!ELEMENT google:B EMPTY&gt;&lt;!ATTLIST google:B google:D NMTOKEN #REQUIRED&lt;br /&gt;E CDATA #REQUIRED&gt;&lt;!ELEMENT google:C (#PCDATA)&gt;&lt;br /&gt;93. How can I validate an XML document that uses XML namespaces?&lt;br /&gt;When people ask this question, they usually assume that validityis different for documents that use XML namespaces and documentsthat don’t. In fact, it isn’t — it’s the same for both. Thus, thereis no difference between validating a document that uses XML namespacesand validating one that doesn’t. In either case, you simply usea validating parser or other software that performs validation.&lt;br /&gt;94. If I start using XML namespaces, do I need to changemy existing DTDs?&lt;br /&gt;Probably. If you want your XML documents to be both valid and conformto the XML namespaces recommendation, you need to declare any xmlnsattributes and use the same qualified names in the DTD as in thebody of the document.&lt;br /&gt;If your DTD contains element type and attribute names from a singleXML namespace, the easiest thing to do is to use your XML namespaceas the default XML namespace. To do this, declare the attributexmlns (no prefix) for each possible root element type. If you canguarantee that the DTD is always read , set the default value ineach xmlns attribute declaration to the URI used as your namespacename. Otherwise, declare your XML namespace as the default XML namespaceon the root element of each instance document. If your DTD contains element type and attribute names from multipleXML namespaces, you need to choose a single prefix for each XMLnamespace and use these consistently in qualified names in boththe DTD and the body of each document. You also need to declareyour xmlns attributes in the DTD and declare your XML namespaces.As in the single XML namespace case, the easiest way to do thisis add xmlns attributes to each possible root element type and usedefault values if possible.&lt;br /&gt;95. How do I create documents that use XML namespaces?&lt;br /&gt;The same as you create documents that don’t use XML namespaces.If you’re currently using Notepad on Windows or emacs on Linux,you can continue using Notepad or emacs. If you’re using an XMLeditor that is not namespace-aware, you can also continue to usethat, as qualified names are legal names in XML documents and xmlnsattributes are legal attributes. And if you’re using an XML editorthat is namespace-aware, it will probably provide features suchas automatically declaring XML namespaces and keeping track of prefixesand the default XML namespace for you.&lt;br /&gt;96. How can I check that a document conforms to the XMLnamespaces recommendation?&lt;br /&gt;Unfortunately, I know of no software that only checks for conformanceto the XML namespaces recommendation. It is possible that some namespace-awarevalidating parsers (such as those from DataChannel (Microsoft),IBM, Oracle, or Sun) check XML namespace conformance as part ofparsing and validating. Thus, you might be able to run your documentthrough such parsers as a way of testing conformance.&lt;br /&gt;Note that writing an application to check conformance to the XMLnamespaces recommendation is not as easy as it might seem. The problemis that most parsers do not make DTD information available to theapplication, so it might not be possible to check conformance inthe DTD. Also note that writing a SAX 1.0 application that checksconformance in the body of the document (as opposed to the DTD)should be an easy thing to do.&lt;br /&gt;97. Can I use the same document with both namespace-awareand namespace-unaware applications?&lt;br /&gt;Yes. This situation is quite common, such as when a namespace-aware applicationis built on top of a namespace-unaware parser. Another common situationis when you create an XML document with a namespace-unaware XMLeditor but process it with a namespace-aware application. Using the same document with both namespace-aware and namespace-unawareapplications is possible because XML namespaces use XML syntax.That is, an XML document that uses XML namespaces is still an XMLdocument and is recognized as such by namespace-unaware software.The only thing you need to be careful about when using the samedocument with both namespace-aware and namespace-unaware applicationsis when the namespace-unaware application requires the documentto be valid. In this case, you must be careful to construct yourdocument in a way that is both valid and conforms to the XML namespacesrecommendation. (It is possible to construct documents that conformto the XML namespaces recommendation but are not valid and viceversa.)&lt;br /&gt;98. What software is needed to process XML namespaces?&lt;br /&gt;From a document author’s perspective, this is generally not a relevantquestion. Most XML documents are written in a specific XML languageand processed by an application that understands that language.If the language uses an XML namespace, then the application willalready use that namespace — there is no need for any special XMLnamespace software.&lt;br /&gt;99. How do I use XML namespaces with Internet Explorer5.0 and/or the MSXML parser?&lt;br /&gt;WARNING! The following applies only to earlier versions of MSXML.It does not apply to MSXML 4, which is the currently shipping version[July, 2002]. An early version of the MSXML parser, which was shipped as partof Internet Explorer 5.0, required that every XML namespace prefixused in an element type or attribute declaration had to be "declared"in the attribute declaration for that element type. This had tobe done with a fixed xmlns attribute declaration. For example, thefollowing was accepted by MSXML and both xmlns:google attributeswere required: &lt;!ELEMENT google:A (#PCDATA)&gt;&lt;br /&gt;&lt;!ATTLIST google:Axmlns:google CDATA #FIXED "http://www.google.org/"&gt;&lt;!ELEMENT google:B (#PCDATA)&gt;&lt;!ATTLIST google:Bxmlns:google CDATA #FIXED "http://www.google.org/"&gt;&lt;br /&gt;MSXML returned an error for the following because the second googleprefix was not "declared":&lt;br /&gt;&lt;!ELEMENT google:A (#PCDATA)&gt;&lt;!ATTLIST google:Axmlns:google CDATA #FIXED "http://www.google.org/"&gt;&lt;!ELEMENT google:B (#PCDATA)&gt;&lt;br /&gt;The reason for this restriction was so that MSXML could use universalnames to match element type and attribute declarations to elementsand attributes during validation. Although this would have simplifiedmany of the problems of writing documents that are both valid andconform to the XML namespaces recommendation some users complainedabout it because it was not part of the XML namespaces recommendation.In response to these complaints, Microsoft removed this restrictionin later versions, which are now shipping. Ironically, the ideawas later independently derived as a way to resolve the problemsof validity and namespaces. However, it has not been implementedby anyone.&lt;br /&gt;100. How do applications process documents that use XMLnamespaces?&lt;br /&gt;Applications process documents that use XML namespaces in almostexactly the same way they process documents that don’t use XML namespaces.For example, if a namespace-unaware application adds a new salesorder to a database when it encounters a Sales Order element, theequivalent namespace-aware application does the same. The only differenceis that the namespace-aware application:* Might need to check for xmlns attributes and parse qualified names.Whether it does this depends on whether such processing is alreadydone by lower-level software, such as a namespace-aware DOM implementation.* Uses universal (two-part) names instead of local (one-part) names.For example, the namespace-aware application might add a new salesorder in response to an {http://www.google.com/ito/sales}SalesOrderelement instead of a Sales Order element.&lt;br /&gt;101. How do I use XML namespaces with SAX 1.0?&lt;br /&gt;The easiest way to use XML namespaces with SAX 1.0 is to use JohnCowan’s Namespace SAX Filter (see http://www.ccil.org/~cowan/XML).This is a SAX filter that keeps track of XML namespace declarations,parses qualified names, and returns element type and attribute namesas universal names in the form:URI^local-name&lt;br /&gt;For example:http://www.google.com/ito/sales^SalesOrderYour application can then base its processing on these longer names.For example, the code:public void startElement(String elementName, AttributeList attrs)throws SAXException{&lt;br /&gt;…if (elementName.equals("SalesOrder")){// Add new database record.}…&lt;br /&gt;}might become:public void startElement(String elementName, AttributeList attrs)throws SAXException{…&lt;br /&gt;if (elementName.equals("http://www.google.com/sales^SalesOrder")){// Add new database record.}…}&lt;br /&gt;or:public void startElement(String elementName, AttributeList attrs)throws SAXException{…// getURI() and getLocalName() are utility functions&lt;br /&gt;// to parse universal names.if (getURI(elementName).equals("http://www.foo.com/ito/sales")){if (getLocalName(elementName).equals("SalesOrder")){// Add new database record.&lt;br /&gt;}}…}If you do not want to use the Namespace SAX Filter, then you willneed to do the following in addition to identifying element typesand attributes by their universal names:* In startElement, scan the attributes for XML namespace declarationsbefore doing any other processing. You will need to maintain a tableof current prefix-to-URI mappings (including a null prefix for thedefault XML namespace).&lt;br /&gt;* In startElement and endElement, check whether the element typename includes a prefix. If so, use your mappings to map this prefixto a URI. Depending on how your software works, you might also checkif the local part of the qualified name includes any colons, whichare illegal.* In startElement, check whether attribute names include a prefix.If so, process as in the previous point.&lt;br /&gt;102. How do I use XML namespaces with SAX 2.0?&lt;br /&gt;SAX 2.0 primarily supports XML namespaces through the followingmethods: * startElement and endElement in the ContentHandler interfacereturn namespace names (URIs) and local names as well as qualifiednames. * getValue, getType, and getIndex in the Attributes interfacecan retrieve attribute information by namespace name (URI) and localname as well as by qualified name.&lt;br /&gt;103. How do I use XML namespaces with DOM level 2?&lt;br /&gt;// Check the local name.&lt;br /&gt;// getNodeName() is a DOM level 1 method.&lt;br /&gt;if (elementNode.getNodeName().equals("SalesOrder")){// Add new database record.}&lt;br /&gt;might become the following namespace-aware code:&lt;br /&gt;// Check the XML namespace name (URI).// getNamespaceURI() is a DOM level 2 method.&lt;br /&gt;String SALES_NS = "http://www.foo.com/ito/sales";if (elementNode.getNamespaceURI().equals(SALES_NS)){&lt;br /&gt;// Check the local name.&lt;br /&gt;// getLocalName() is a DOM level 2 method.&lt;br /&gt;if (elementNode.getLocalName().equals("SalesOrder")){// Add new database record.}}&lt;br /&gt;Note that, unlike SAX 2.0, DOM level 2 treats xmlns attributesas normal attributes.&lt;br /&gt;104. Can an application process documents that use XMLnamespaces and documents that don’t use XML namespaces?&lt;br /&gt;Yes. This is a common situation for generic applications, such as editors,browsers, and parsers, that are not wired to understand a particularXML language. Such applications simply treat all element type andattribute names as qualified names. Those names that are not mappedto an XML namespace — that is, unprefixed element type names inthe absence of a default XML namespace and unprefixed attributenames — are simply processed as one-part names, such as by usinga null XML namespace name (URI). Note that such applications must decide how to treat documents thatdo not conform to the XML namespaces recommendation. For example,what should the application do if an element type name containsa colon (thus implying the existence of a prefix), but there areno XML namespace declarations in the document? The application canchoose to treat this as an error, or it can treat the document asone that does not use XML namespaces, ignore the "error",and continue processing.&lt;br /&gt;105. Can an application be both namespace-aware and namespace-unaware?&lt;br /&gt;Yes. However, there is generally no reason to do this. The reason isthat most applications understand a particular XML language, suchas one used to transfer sales orders between companies. If the elementtype and attribute names in the language belong to an XML namespace,the application must be namespace-aware; if not, the applicationmust be namespace-unaware. For a few applications, being both namespace-aware and namespace-unawaremakes sense. For example, a parser might choose to redefine validityin terms of universal names and have both namespace-aware and namespace-unawarevalidation modes. However, such applications are uncommon.&lt;br /&gt;106. What does a namespace-aware application do when itencounters an error?&lt;br /&gt;The XML namespaces recommendation does not specify what a namespace-awareapplication does when it encounters a document that does not conformto the recommendation. Therefore, the behavior is application-dependent.For example, the application could stop processing, post an errorto a log and continue processing, or ignore the error.PART III: NAMES, PREFIXES, AND URIs&lt;br /&gt;107. What is a qualified name?&lt;br /&gt;A qualified name is a name of the following form. It consists ofan optional prefix and colon, followed by the local part, whichis sometimes known as a local name. prefix:local-part–OR–local-part&lt;br /&gt;For example, both of the following are qualified names. The firstname has a prefix of serv; the second name does not have a prefix.For both names, the local part (local name) is Address.&lt;br /&gt;serv:AddressAddress&lt;br /&gt;In most circumstances, qualified names are mapped to universalnames.&lt;br /&gt;108. What characters are allowed in a qualified name?&lt;br /&gt;The prefix can contain any character that is allowed in the Name[5] production in XML 1.0 except a colon. The same is true of thelocal name. Thus, there can be at most one colon in a qualifiedname — the colon used to separate the prefix from the local name.&lt;br /&gt;109. Where can qualified names appear?&lt;br /&gt;Qualified names can appear anywhere an element type or attributename can appear: in start and end tags, as the document elementtype, and in element type and attribute declarations in the DTD.For example:&lt;br /&gt;&lt;!DOCTYPE foo:A [&lt;!ELEMENT foo:A (foo:B)&gt;&lt;!ATTLIST foo:Afoo:C CDATA #IMPLIED&gt;&lt;!ELEMENT foo:B (#PCDATA)&gt;&lt;br /&gt;]&gt;&lt;foo:a foo="http://www.foo.org/" c="bar"&gt;&lt;foo:b&gt;abcd&lt;foo:a&gt;&lt;br /&gt;Qualified names cannot appear as entity names, notation names,or processing instruction targets.&lt;br /&gt;110. Can qualified names be used in attribute values?&lt;br /&gt;Yes, but they have no special significance. That is, they are notnecessarily recognized as such and mapped to universal names. Forexample, the value of the C attribute in the following is the string"foo:D", not the universal name {http://www.foo.org/}D.&lt;foo:a foo="http://www.foo.org/"&gt;&lt;foo:b c="foo:D"&gt;&lt;foo:a&gt;&lt;br /&gt;In spite of this, there is nothing to stop an application fromrecognizing a qualified name in an attribute value and processingit as such. This is being done in various technologies today. Forexample, in the following XML Schemas definition, the attributevalue xsd:string identifies the type of the foo attribute as theuniversal name {http://www.w3.org/1999/XMLSchema}string.&lt;br /&gt;&lt;xsd:attribute name="foo" type="xsd:string"&gt;&lt;br /&gt;There are two potential problems with this. First, the applicationmust be able to retrieve the prefix mappings currently in effect.Fortunately, both SAX 2.0 and DOM level 2 support this capability.Second, any general purpose transformation tool, such as one thatwrites an XML document in canonical form and changes namespace prefixesin the process, will not recognize qualified names in attributevalues and therefore not transform them correctly. Although thismay be solved in the future by the introduction of the QName (qualifiedname) data type in XML Schemas, it is a problem today.&lt;br /&gt;111. How are qualified names mapped to names in XML namespaces?&lt;br /&gt;If a qualified name in the body of a document (as opposed to theDTD) includes a prefix, then that prefix is used to map the localpart of the qualified name to a universal name — that is, a namein an XML namespace. For example, in the following, the prefix foois used to map the local names A, B, and C to names in the http://www.foo.org/namespace: &lt;?xml version="1.0″ ?&gt;&lt;foo:a foo="http://www.foo.org/" c="bar"&gt;&lt;foo:b&gt;abcd&lt;br /&gt;&lt;foo:a&gt;&lt;br /&gt;If a qualified name in the body of a document does not includea prefix and a default XML namespace is in scope then one of twothings happens. If the name is used as an element tag, it is mappedto a name in the default XML namespace. If it is used as an attributename, it is not in any XML namespace. For example, in the following,A and B are in the http://www.foo.org/ namespace and C is not inany XML namespace:&lt;br /&gt;&lt;?xml version="1.0″ ?&gt;&lt;a xmlns="http://www.foo.org/" c="bar"&gt;&lt;b&gt;abcd&lt;/b&gt;&lt;br /&gt;&lt;a&gt;&lt;br /&gt;If a qualified name in the body of a document does not includea prefix and no default XML namespace is in scope, then that nameis not in any XML namespace. For example, in the following, A, B,and C are not in any XML namespace: &lt;?xml version="1.0″ ?&gt;&lt;a c="bar"&gt;&lt;b&gt;abcd&lt;/b&gt;&lt;br /&gt;&lt;a&gt;&lt;br /&gt;Qualified names in the DTD are never mapped to names in an XMLnamespace because they are never in the scope of an XML namespacedeclaration.&lt;br /&gt;112. How are universal names represented?&lt;br /&gt;There is no standard way to represent a universal name. However,three representations are common. The first representation keeps the XML namespace name (URI) andthe local name separate. For example, many DOM level 1 implementationshave different methods for returning the XML namespace name (URI)and the local name of an element or attribute node. The second representation concatenates the namespace name (URI)and the local name with caret (^). The result is a universally uniquename, since carets are not allowed in URIs or local names. Thisis the method used by John Cowan’s Namespace SAX Filter . For example,the universal name that has the URI http://www.google.org/to/serversand the local name Address would be represented as:&lt;br /&gt;http://www.foo.com/ito/servers^Address The third representation places the XML namespace name (URI) inbraces and concatenates this with the local name. This notationis suggested only for documentation and I am aware of no code thatuses it. For example, the above name would be represented as: {http://www.foo.com/ito/servers}Address&lt;br /&gt;113. Are universal names universally unique?&lt;br /&gt;No, but it is reasonable to assume they are. Universal element type and attribute names are not guaranteed tobe universally unique — that is, unique within the space of allXML documents — because it is possible for two different people,each defining their own XML namespace, to use the same URI and thesame element type or attribute name. However, this occurs only if:&lt;br /&gt;* One or both people use a URI that is not under their control,such as somebody outside Netscape using the URI http://www.netscape.com/,or* Both people have control over a URI and both use it.&lt;br /&gt;The first case means somebody is cheating when assigning URIs (aprocess governed by trust) and the second case means that two peoplewithin an organization are not paying attention to each other’swork. For widely published element type and attribute names, neithercase is very likely. Thus, it is reasonable to assume that universalnames are universally unique. (Since both cases are possible, applicationsthat present security risks should be careful about assuming thatuniversal names are universally unique.) For information about the ability of universal names to uniquelyidentify element types and attributes (as opposed to the names themselvesbeing unique).&lt;br /&gt;114. What is an XML namespace prefix?&lt;br /&gt;An XML namespace prefix is a prefix used to specify that a localelement type or attribute name is in a particular XML namespace.For example, in the following, the serv prefix specifies that theAddress element type name is in the http://www.foo.com/ito/addressesnamespace:&lt;br /&gt;&lt;serv:addresses serv="http://www.foo.com/ito/addresses"&gt;&lt;br /&gt;115. What characters are allowed in an XML namespace prefix?&lt;br /&gt;The prefix can contain any character that is allowed in the Name[5] production in XML 1.0 except a colon.&lt;br /&gt;116. Can I use the same prefix for more than one XML namespace?&lt;br /&gt;Yes.&lt;br /&gt;117. What happens if there is no prefix on an element typename?&lt;br /&gt;If a default XML namespace declaration is in scope, then the elementtype name is in the default XML namespace. Otherwise, the elementtype name is not in any XML namespace.&lt;br /&gt;118. What does the URI used as an XML namespace name pointto?&lt;br /&gt;The URI used as an XML namespace name is simply an identifier.It is not guaranteed to point to anything and, in general, it isa bad idea to assume that it does. This point causes a lot of confusion,so we’ll repeat it here: URIs USED AS XML NAMESPACE NAMES ARE JUST IDENTIFIERS. THEY ARENOT GUARANTEED TO POINT TO ANYTHING. While this might be confusing when URLs are used as namespace names,it is obvious when other types of URIs are used as namespace names.For example, the following namespace declaration uses an ISBN URN:xmlns:xbe="urn:ISBN:0-7897-2504-5″&lt;br /&gt;and the following namespace declaration uses a UUID URN: xmlns:foo="urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6″Clearly, neither namespace name points to anything on the Web. NOTE: Namespace URIs that are URLs may point to RDDL documents,although this does not appear to be widely implemented. For details,see the next question. NOTE: An early version of the W3C’s XML Schemas used namespace URIsto point to an XML Schema document containing the definitions ofthe element types and attributes named in the namespace. However,this proved very controversial and the idea has been withdrawn.&lt;br /&gt;119. What is an XML namespace name?&lt;br /&gt;An XML namespace name is a URI that uniquely identifies the namespace.URIs are used because they are widely understood and well documented.Because people may only allocate URIs under their control, it iseasy to ensure that no two XML namespaces are identified by thesame URI.&lt;br /&gt;120. Can I resolve the URI used as an XML namespace name?&lt;br /&gt;Yes.&lt;br /&gt;121. Can I use a relative URI as a namespace name?&lt;br /&gt;Yes. However, such usage is deprecated, so you should never doit.&lt;br /&gt;122. What is XPointer?&lt;br /&gt;XPointer is set of recommendations developed by the W3C. The corerecommendations are the XPointer Framework which provides an extensibleaddressing behavior for fragment identifiers in XML media types.XPointer gains its extensibility through the XPointer Framework,which identifies the syntax and processing architecture for XPointerexpressions and through an extensible set of XPointer addressingschemes. These schemes, e.g., element() or xpointer(), are actuallyQNames. The xmlns() scheme makes it possible for an XPointer todeclare namespace bindings and thereby use third-party schemes asreadily as W3C defined XPointer schemes.&lt;br /&gt;123. How do I install the XPointer processor?&lt;br /&gt;Download the latest "cweb-xpointer" release from SourceForge.This project uses Apache Maven and Java 1.4+, so you will need toinstall those as well. Normally you will also want to download oneof the XPointer Framework integrations, such as the xpointer+dom4jor the xpointer+jdom package. These "integration packages"provide support for a specific XML Document model. The project dependencies are explicitly declared in the Maven POM.This means that Maven can automagically download the required releasesof dependent JARs. There are several release artifacts. The "uberjar" releaseprovides an executable command line utility (see below) and bundlesall dependancies (except for Java itself). If you want to integrateinto an existing application, then you should use the cweb-xpointerJAR and also download copies of its dependencies. If you are usinga Maven project, then this is all very, very easy.&lt;br /&gt;124. What is server-side XPointer?&lt;br /&gt;The XPointer Framework provides an authoritative and extensibleinterpretation of the semantics of fragment identifiers for XMLmedia types. However, HTTP does NOT transmit the fragment identifieras part of the HTTP request. Therefore XPointer is generally appliedby the client, not by the server. For example, assuming that http://www.myorg.org/myTripleStore identifiesa resource that is willing to negotiate for RDF/XML, then the followingis typical of an HTTP request for an RDF/XML representation of thatresource and the server’s response.Request:&lt;br /&gt;GET /myTripleStore HTTP/1.1Host: www.myorg.org&lt;br /&gt;Accept: application/rdf+xml&lt;br /&gt;Response:HTTP/1.1 200 OkContent-Type: application/rdf+xml&lt;br /&gt;&lt;rdf:rdf&gt; This request asks for the entire triple store, serialized as RDF/XML.&lt;br /&gt;Server-side XPointer uses the HTTP "Range" header to transmitthe XPointer expression to the server. For example, let’s assumethat the URI of the triple store is the same, but we want to selectthe subresources identified by the following RDQL query: SELECT (?x foaf:mbox ?mbox)WHERE (?x foaf:name "John Smith") (?x foaf:mbox ?mbox)USING foaf FOR&lt;http://xmlns.com/foaf/0.1/&gt;)&lt;br /&gt;In that case the HTTP request, including a copy of the RDQL querywrapped up as an XPointer expression, looks as follows. Note thatwe have added a range-unit whose value is xpointer to indicate thatthe value of the Range header should be interpreted by an XPointerprocessor. Also note the use of the XPointer xmlns() scheme to setbind the namespace URI for the rdql() XPointer scheme. This is necessarysince this scheme has not been standardized by the W3C.&lt;br /&gt;GET /myTripleStore HTTP/1.1Host: www.myorg.orgAccept: application/rdf+xmlRange: xpointer = xmlns(x:http://www.mindswap.org)x:rdql(SELECT (?x foaf:mbox ?mbox) WHERE (?x foaf:name "John Smith") (?x foaf:mbox ?mbox)&lt;br /&gt;USING foaf FOR &lt;http://xmlns.com/foaf/0.1/&gt;)&lt;br /&gt;The response looks as follows. The HTTP 206 (Partial Content) statuscode is used to indicate that the server recognized and processedthe Range header and that the response entity includes only theidentified logical range of the addressed resource.HTTP/1.1 206 Partial ContentContent-Type: application/rdf+xml&lt;br /&gt;&lt;!– Only the selected sub-graph is transmitted to the client.–&gt; &lt;rdf:rdf&gt;&lt;br /&gt;125. What about non-XML resources?&lt;br /&gt;You can use the XPointer Framework with non-XML resources. Thisis especially effective when your resource is backed by some kindof a DBMS, or when you want to query a data model, such as RDF,and not the XML syntax of a representation of that data model. However, please note that the authoratitive interpretation of thefragment identifier is determined by the Internet Media Type. Ifyou want to opt-in for XPointer, then you can always create publishyour own Internet Media Type with IANA and specify that it supportsthe XPointer Framework for some kind of non-XML resource. In thiscase, you are going to need to declare your own XPointer schemesas well.&lt;br /&gt;126. What XPointer schemes are supported in this release?&lt;br /&gt;The XPointer integration distributions support shorthand pointers.In addition, they bundle support for at last the following XPointerschemes:* xmlns()&lt;br /&gt;* element()* xpath() - This is not a W3C defined XPointer scheme since W3Chas not published an XPointer sheme for XPath. The namespace URIfor this scheme is http://www.cogweb.org/xml/namespace/xpointer. It provides for addressing XML subresources using a XPath 1.0expressions.&lt;br /&gt;127. How do I configure an XPointer processor?&lt;br /&gt;There is no required configuration for the XPointer Framework.The uberjar command line utility provides some configuration options.Applications configure individual XPointer processors when theyobtain an instance from an appropriate XPointerProcessor factorymethod.&lt;br /&gt;128. How do integrate XPointer into my application?&lt;br /&gt;There are several ways to do this. The easiest is to use the uberjarrelease, which can be directly executed on any Java enabled platform.This makes it trivial to test and develop XPointer support in yourapplications, including server-side XPointer. The uberjar releasecontains a Java class org.CognitiveWeb.xpointer.XPointerDriver thatprovides a simple but flexible command line utility that exposesan XPointer processor. The XPointer is provided as a command lineargument and the XML resource is read from stdin. The results arewritten on stdout by default as a set of null-terminated XML fragments.See XPointerDriver in the XPointer JavaDoc for more information.&lt;br /&gt;If you already have a Java application, then it is straight-forwardto integrate XPointer support using: org.CognitiveWeb.xpointer.XPointerProcessorYou can see an example integration by looking at the XPointerDriverin the source code release.&lt;br /&gt;129. How do I implement an application-specific XPointerscheme?&lt;br /&gt;Short answer: Implement org.CognitiveWeb.xpointer.ISchemeProcessorThe XPointer Framework is extensible. One of the very coolest thingsabout this is that you can develop your own XPointer schemes thatexpose your application using the data model that makes the mostsense for your application clients. For example, let’s say that you have a CRM application. The importantlogical addressing units probably deal with concepts such as customers,channels, and products. You can directly expose these data usinga logical addressing scheme independent of the actual XML data model.Not only does this let people directly address the relevant conceptsusing a purpose-built addressing vocabulary, but this means thatyour addressing scheme can remain valid even if you change or versionyour XML data model. What a bonus! The same approach is being used by the MindSwap laboratory at theUniversity of Maryland to prototype a variety of XPointer schemesfor addressing semantic web data.&lt;br /&gt;130. How do I support very large resources?&lt;br /&gt;You can only do this with server-side XPointer. Further, you needto use (or implement) XPointer schemes that do not depend on a parsedXML document model. Basically, you need to use an XPointer schemethat interfaces with an indexed persistence store (RDBMS, ODBMS,or XML DBMS) which exposes to your ISchemeProcessor the informationthat it needs to answer subresource addressing requests. You will also have to provide shorthand pointer support for yourDBMS-based resource. The default shorthand pointer processor assumesthat it has access to a parsed XML document, so it can’t be usedwhen you have a very large XML resource.&lt;br /&gt;131. How do I contribute?&lt;br /&gt;The XPointer implementation is hosted as a SourceForge project.If you want to contribute send an email to one of the project administratorsfrom the project home page. The XPointer module uses numerous tests to validate correct behaviorof the XPointer processor. One valuable way to contribute is bydeveloping new tests that demonstrate broken behavior. Patches thatfix the problems identified by those tests are also valuable, butit is by the tests themselves that we can insure that each releaseof the XPointer processor will continue to meet the requirementsof the various XPointer specifications.&lt;br /&gt;132. What’s XLink?&lt;br /&gt;This specification defines the XML Linking Language (XLink), whichallows elements to be inserted into XML documents in order to createand describe links between resources. It uses XML syntax to createstructures that can describe links similar to the simple unidirectionalhyperlinks of today’s HTML, as well as more sophisticated links.Definition: An XLink link is an explicit relationship between resourcesor portions of resources.] [Definition: It is made explicit by anXLink linking element, which is an XLink-conforming XML elementthat asserts the existence of a link.] There are six XLink elements;only two of them are considered linking elements. The others providevarious pieces of information that describe the characteristicsof a link. (The term "link" as used in this specificationrefers only to an XLink link, though nothing prevents non-XLinkconstructs from serving as links.)&lt;br /&gt;133. What are the valid values for xlink:actuate and xlink:show?&lt;br /&gt;Don’t blame me to put such a simple question here. I saw a famousexam simulator gave wrong answer on this one. Typing them out alsohelp me to remember them. xlink:actuate onRequest, onLoad, other,none xlink:show replace new embed other none&lt;br /&gt;134. Mock question: What is the correct answer of the followingquestion? Which of the following is true about XLink and HTML hyperlinks?&lt;br /&gt;1. XLink can be attached with any element. Hyperlinks in HTML canbe attached to only an ANCHOR &lt;a&gt; element. 2. XLink can refer to a specific location in XML document by nameor context with the help of XPointer. HTML ANCHOR&lt;a&gt; doesnot have capability to point to specific location within an htmldocument. 3. XLink / XML links can be multidirectional. HTML links are unidirectional.4. HTML links are activated when user clicks on them. XLink hasoption of activating automatically when XML document is processed.&lt;br /&gt;Only 2 is incorrect, since HTML ANCHOR does have capability to pointto specific location within an html document.&lt;br /&gt;135. What three essential components of security does theXML Signatures provide?&lt;br /&gt;authentication, message integrity, and non-repudiation. In additionto signature information, an XML Signature can also contain informationdescribing the key used to sign the content.&lt;br /&gt;136. XLink Processing and Conformance&lt;br /&gt;Processing Dependencies: XLink processing depends on [XML], [XMLNames], [XML Base], and [IETF RFC 2396] Markup Conformance:&lt;br /&gt;An XML element conforms to XLink if: it has a type attribute from the XLink namespace whose value isone of "simple", "extended", "locator","arc", "resource", "title", or "none",and it adheres to the conformance constraints imposed by the chosenXLink element type, as prescribed in this specification. This specification imposes no particular constraints on DTDs; conformanceapplies only to elements and attributes. Application Conformance: An XLink application is any software module that interprets well-formedXML documents containing XLink elements and attributes, or XML informationsets [XIS] containing information items and properties correspondingto XLink elements and attributes. (This document refers to elementsand attributes, but all specifications herein apply to their informationset equivalents as well.) Such an application is conforming if:&lt;br /&gt;it observes the mandatory conditions for applications ("must")set forth in this specification, and for any optional conditions ("should" and "may")it chooses to observe, it observes them in the way prescribed, andit performs markup conformance testing according to all the conformanceconstraints appearing in this specification.&lt;br /&gt;137. XLink Markup Design&lt;br /&gt;Link markup needs to be recognized reliably by XLink applicationsin order to be traversed and handled properly. XLink uses the mechanismdescribed in the Namespaces in XML Recommendation [XML Names] toaccomplish recognition of the constructs in the XLink vocabulary.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-3073611559367094349?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/3073611559367094349/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=3073611559367094349' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/3073611559367094349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/3073611559367094349'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/xml-interview-questions.html' title='XML Interview Questions'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-8904353884243619372</id><published>2009-01-12T06:35:00.000-08:00</published><updated>2009-01-16T21:08:58.806-08:00</updated><title type='text'>GOOGLE INTERVIEW QUESTIONS</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;try {&lt;br /&gt;var pageTracker = _gat._getTracker("UA-7051572-1");&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;} catch(err) {}&lt;/script&gt;&lt;br /&gt;You have to get from point A to point B. You don’t know if you can get there. What would you do?&lt;br /&gt;Imagine you have a closet full of shirts. It’s very hard to find a shirt. So what can you do to organize your shirts for easy retrieval?&lt;br /&gt;&lt;strong&gt;What method would you use to look up a word in a dictionary?&lt;/strong&gt;&lt;br /&gt;Every man in a village of 100 married couples has cheated on his wife. Every wife in the village instantly knows when a man other than her husband has cheated, but does not know when her own husband has. The village has a law that does not allow for adultery. Any wife who can prove that her husband is unfaithful must kill him that very day. The women of the village would never disobey this law. One day, the queen of the village visits and announce that at least one husband has been unfaithful. What happens?&lt;br /&gt;You have eight balls all of the same size. 7 of them weigh the same, and one of them weighs slightly more. How can you fine the ball that is heavier by using a balance and only two weighings?&lt;br /&gt;&lt;strong&gt;How do you cut a rectangular cake into two equal pieces when someone has already taken a rectangular piece from it?&lt;/strong&gt;&lt;br /&gt;The removed piece an be any size or at any place in the cake. You are only allowed one straight cut.&lt;br /&gt;&lt;strong&gt;How many piano tuners are there in the entire world?&lt;br /&gt;What gives you joy?&lt;br /&gt;&lt;/strong&gt;Mike has $20 more than Todd. How much does each have given that combined they have $21 between them. You can’t use fractions in the answer. Hint: This is a trick question, pay close attention to the condition)&lt;br /&gt;&lt;strong&gt;How many times a day a clock’s hands overlap?&lt;/strong&gt;&lt;br /&gt;Two MIT math graduates bump into each other. They hadn’t seen each other in over 20 years.The first grad says to the second: “how have you been?”Second: “Great! I got married and I have three daughters now”First: “Really? how old are they?”Second: “Well, the product of their ages is 72, and the sum of their ages is the same as the number on that building over there..”First: “Right, ok.. oh wait.. I still don’t know”second: “Oh sorry, the oldest one just started to play the piano”First: “Wonderful! my oldest is the same age!” Problem: How old are the daughters?&lt;br /&gt;&lt;strong&gt;If you look at a clock and the time is 3:15, what is the angle between the hour and the minute hands? (The answer to this is not zero!)&lt;br /&gt;&lt;/strong&gt;Four people need to cross a rickety rope bridge to get back to their camp at night. Unfortunately, they only have one flashlight and it only has enough light left for seventeen minutes. The bridge is too dangerous to cross without a flashlight, and it’s only strong enough to support two people at any given time. Each of the campers walks at a different speed. One can cross the bridge in 1 minute, another in 2 minutes, the third in 5 minutes, and the slow poke takes 10 minutes to cross. How do the campers make it across in 17 minutes?&lt;br /&gt;&lt;strong&gt;If the probability of observing a car in 30 minutes on a highway is 0.95, what is the probability of observing a car in 10 minutes (assuming constant default probability)?&lt;/strong&gt;&lt;br /&gt;In a country in which people only want boys, every family continues to have children until they have a boy. if they have a girl, they have another child. if they have a boy, they stop. what is the proportion of boys to girls in the country?&lt;br /&gt;You have an empty room, and a group of people waiting outside the room. At each step, you may either get one person into the room, or get one out. Can you make subsequent steps, so that every possible combination of people is achieved exactly once?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-8904353884243619372?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/8904353884243619372/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=8904353884243619372' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/8904353884243619372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/8904353884243619372'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/google-interview-questions.html' title='GOOGLE INTERVIEW QUESTIONS'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-7243554413581413573</id><published>2009-01-12T06:33:00.000-08:00</published><updated>2009-01-16T21:09:25.069-08:00</updated><title type='text'>TRICKY "C" Questions</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;try {&lt;br /&gt;var pageTracker = _gat._getTracker("UA-7051572-1");&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;} catch(err) {}&lt;/script&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;How do you write a program which produces its own source code as its output?&lt;br /&gt;How can I find the day of the week given the date?&lt;br /&gt;Why doesn’t C have nested functions?&lt;br /&gt;What is the most efficient way to count the number of bits which are set in a value?&lt;br /&gt;How can I convert integers to binary or hexadecimal?&lt;br /&gt;How can I call a function, given its name as a string?&lt;br /&gt;How do I access command-line arguments?&lt;br /&gt;How can I return multiple values from a function?&lt;br /&gt;How can I invoke another program from within a C program?&lt;br /&gt;How can I access memory located at a certain address?&lt;br /&gt;How can I allocate arrays or structures bigger than 64K?&lt;br /&gt;How can I find out how much memory is available?&lt;br /&gt;How can I read a directory in a C program?&lt;br /&gt;How can I increase the allowable number of simultaneously open files?&lt;br /&gt;What’s wrong with the call fopen(”c:\newdir\file.dat”, “r”)? &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-7243554413581413573?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/7243554413581413573/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=7243554413581413573' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/7243554413581413573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/7243554413581413573'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/tricky-c-questions.html' title='TRICKY &quot;C&quot; Questions'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-1168673938738527378</id><published>2009-01-12T06:28:00.000-08:00</published><updated>2009-01-16T21:09:49.473-08:00</updated><title type='text'>SQL Interview Questions</title><content type='html'>&lt;strong&gt;What are two methods of retrieving SQL?&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;What cursor type do you use to retrieve multiple recordsets?&lt;br /&gt;What is the difference between a "where" clause and a "having" clause?&lt;/strong&gt; - "Where" is a kind of restiriction statement. You use where clause to restrict all the data from DB.Where clause is using before result retrieving. But Having clause is using after retrieving the data.Having clause is a kind of filtering command.&lt;br /&gt;&lt;strong&gt;What is the basic form of a SQL statement to read data out of a table? &lt;/strong&gt;&lt;br /&gt;The basic form to read data out of table is ‘SELECT * FROM table_name; ‘ An answer: ‘SELECT * FROM table_name WHERE xyz= ‘whatever’;’ cannot be called basic form because of WHERE clause.&lt;br /&gt;&lt;strong&gt;What structure can you implement for the database to speed up table reads?&lt;/strong&gt; - Follow the rules of DB tuning we have to: 1] properly use indexes ( different types of indexes) 2] properly locate different DB objects across different tablespaces, files and so on.3] create a special space (tablespace) to locate some of the&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;try {&lt;br /&gt;var pageTracker = _gat._getTracker("UA-7051572-1");&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;} catch(err) {}&lt;/script&gt;&lt;br /&gt; data with special datatype ( for example CLOB, LOB and …)&lt;br /&gt;&lt;strong&gt;What are the tradeoffs with having indexes?&lt;/strong&gt;&lt;br /&gt; - 1. Faster selects, slower updates. 2. Extra storage space to store indexes. Updates are slower because in addition to updating the table you have to update the index.&lt;br /&gt;What is a "join"? - ‘join’ used to connect two or more tables logically with or without common field.&lt;br /&gt;&lt;strong&gt;What is "normalization"? "Denormalization"? Why do you sometimes want to denormalize? -&lt;/strong&gt;&lt;br /&gt;Normalizing data means eliminating redundant information from a table and organizing the data so that future changes to the table are easier. Denormalization means allowing redundancy in a table. The main benefit of denormalization is improved performance with simplified data retrieval and manipulation. This is done by reduction in the number of joins needed for data processing.&lt;br /&gt;&lt;strong&gt;What is a "constraint"?&lt;/strong&gt; -&lt;br /&gt; A constraint allows you to apply simple referential integrity checks to a table. There are four primary types of constraints that are currently supported by SQL Server: PRIMARY/UNIQUE - enforces uniqueness of a particular table column. DEFAULT - specifies a default value for a column in case an insert operation does not provide one. FOREIGN KEY - validates that every value in a column exists in a column of another table. CHECK - checks that every value stored in a column is in some specified list. Each type of constraint performs a specific type of action. Default is not a constraint. NOT NULL is one more constraint which does not allow values in the specific column to be null. And also it the only constraint which is not a table level constraint.&lt;br /&gt;What types of index data structures can you have? - An index helps to faster search values in tables. The three most commonly used index-types are: - B-Tree: builds a tree of possible values with a list of row IDs that have the leaf value. Needs a lot of space and is the default index type for most databases. - Bitmap: string of bits for each possible value of the column. Each bit string has one bit for each row. Needs only few space and is very fast.(however, domain of value cannot be large, e.g. SEX(m,f); degree(BS,MS,PHD) - Hash: A hashing algorithm is used to assign a set of characters to represent a text string such as a composite of keys or partial keys, and compresses the underlying data. Takes longer to build and is supported by relatively few databases.&lt;br /&gt;&lt;strong&gt;What is a "primary key"?&lt;/strong&gt;&lt;br /&gt;- A PRIMARY INDEX or PRIMARY KEY is something which comes mainly from database theory. From its behavior is almost the same as an UNIQUE INDEX, i.e. there may only be one of each value in this column. If you call such an INDEX PRIMARY instead of UNIQUE, you say something about your table design, which I am not able to explain in few words. Primary Key is a type of a constraint enforcing uniqueness and data integrity for each row of a table. All columns participating in a primary key constraint must possess the NOT NULL property.&lt;br /&gt;What is a "functional dependency"? How does it relate to database table design? - Functional dependency relates to how one object depends upon the other in the database. for example, procedure/function sp2 may be called by procedure sp1. Then we say that sp1 has functional dependency on sp2.&lt;br /&gt;&lt;strong&gt;What is a "trigger"?&lt;/strong&gt; -&lt;br /&gt; Triggers are stored procedures created in order to enforce integrity rules in a database. A trigger is executed every time a data-modification operation occurs (i.e., insert, update or delete). Triggers are executed automatically on occurance of one of the data-modification operations. A trigger is a database object directly associated with a particular table. It fires whenever a specific statement/type of statement is issued against that table. The types of statements are insert,update,delete and query statements. Basically, trigger is a set of SQL statements A trigger is a solution to the restrictions of a constraint. For instance: 1.A database column cannot carry PSEUDO columns as criteria where a trigger can. 2. A database constraint cannot refer old and new values for a row where a trigger can.&lt;br /&gt;Why can a "group by" or "order by" clause be expensive to process? - Processing of "group by" or "order by" clause often requires creation of Temporary tables to process the results of the query. Which depending of the result set can be very expensive.&lt;br /&gt;What is "index covering" of a query? - Index covering means that "Data can be found only using indexes, without touching the tables"&lt;br /&gt;&lt;strong&gt;What types of join algorithms can you have?&lt;br /&gt;What is a SQL view?&lt;/strong&gt;&lt;br /&gt; - An output of a query can be stored as a view. View acts like small table which meets our criterion. View is a precomplied SQL query which is used to select data from one or more tables. A view is like a table but it doesn’t physically take any space. View is a good way to present data in a particular format if you use that query quite often. View can also be used to restrict users from accessing the tables directly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-1168673938738527378?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/1168673938738527378/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=1168673938738527378' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/1168673938738527378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/1168673938738527378'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/sql-interview-questions.html' title='SQL Interview Questions'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-1084415936933998051</id><published>2009-01-12T06:22:00.000-08:00</published><updated>2009-01-16T21:10:16.704-08:00</updated><title type='text'>JAVA Interview Questions</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;try {&lt;br /&gt;var pageTracker = _gat._getTracker("UA-7051572-1");&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;} catch(err) {}&lt;/script&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt; Describe what happens when an object is created in Java?&lt;/strong&gt;&lt;br /&gt; Several things happen in a particular order to ensure the object is constructed properly: 1. Memory is allocated from heap to hold all instance variables and implementation-specific data of the object and its superclasses. Implementation-specific data includes pointers to class and method data. 2. The instance variables of the objects are initialized to their default values. 3. The constructor for the most derived class is invoked. The first thing a constructor does is call the constructor for its uppercase. This process continues until the constructor for java.lang.Object is called, as java.lang.Object is the base class for all objects in java. 4. Before the body of the constructor is executed, all instance variable initializers and initialization blocks are executed. Then the body of the constructor is executed. Thus, the constructor for the base class completes first and constructor for the most derived class completes last.&lt;br /&gt;&lt;strong&gt;In Java, you can create a String object as below : String str = "abc"; &amp;amp; String str = new String("abc");  Why cant a button object be created as : Button bt = "abc"? Why is it compulsory to create a button object as: Button bt = new Button("abc"); Why this is not compulsory in String’s case?&lt;br /&gt;&lt;/strong&gt;Button bt1= "abc"; It is because "abc" is a literal string (something slightly different than a String object, by-the-way) and bt1 is a Button object. That simple. The only object in Java that can be assigned a literal String is java.lang.String. Important to not that you are NOT calling a java.lang.String constuctor when you type String s = "abc"; For example String x = "abc"; String y = "abc"; refer to the same object. While String x1 = new String("abc"); String x2 = new String("abc"); refer to two different objects.&lt;br /&gt;&lt;strong&gt;What is the advantage of OOP?&lt;/strong&gt;&lt;br /&gt;You will get varying answers to this question depending on whom you ask. Major advantages of OOP are: 1. Simplicity: software objects model real world objects, so the complexity is reduced and the program structure is very clear; 2. Modularity: each object forms a separate entity whose internal workings are decoupled from other parts of the system; 3. Modifiability: it is easy to make minor changes in the data representation or the procedures in an OO program. Changes inside a class do not affect any other part of a program, since the only public interface that the external world has to a class is through the use of methods; 4. Extensibility: adding new features or responding to changing operating environments can be solved by introducing a few new objects and modifying some existing ones; 5. Maintainability: objects can be maintained separately, making locating and fixing problems easier; 6. Re-usability: objects can be reused in different programs&lt;br /&gt;&lt;strong&gt;What are the main differences between Java and C++?&lt;br /&gt;&lt;/strong&gt;Everything is an object in Java( Single root hierarchy as everything gets derived from java.lang.Object). Java does not have all the complicated aspects of C++ ( For ex: Pointers, templates, unions, operator overloading, structures etc..)  The Java language promoters initially said "No pointers!", but when many programmers questioned how you can work without pointers, the promoters began saying "Restricted pointers." You can make up your mind whether it’s really a pointer or not. In any event, there’s no pointer arithmetic. There are no destructors in Java. (automatic garbage collection),  Java does not support conditional compile (#ifdef/#ifndef type). Thread support is built into java but not in C++. Java does not support default arguments. There’s no scope resolution operator :: in Java. Java uses the dot for everything, but can get away with it since you can define elements only within a class. Even the method definitions must always occur within a class, so there is no need for scope resolution there either. There’s no "goto " statement in Java. Java doesn’t provide multiple inheritance (MI), at least not in the same sense that C++ does. Exception handling in Java is different because there are no destructors. Java has method overloading, but no operator overloading. The String class does use the + and += operators to concatenate strings and String expressions use automatic type conversion, but that’s a special built-in case. Java is interpreted for the most part and hence platform independent&lt;br /&gt;&lt;strong&gt;What are interfaces?&lt;/strong&gt;&lt;br /&gt;Interfaces provide more sophisticated ways to organize and control the objects in your system. The interface keyword takes the abstract concept one step further. You could think of it as a “pure” abstract class. It allows the creator to establish the form for a class: method names, argument lists, and return types, but no method bodies. An interface can also contain fields, but The interface keyword takes the abstract concept one step further. You could think of it as a “pure” abstract class. It allows the creator to establish the form for a class: method names, argument lists, and return types, but no method bodies. An interface can also contain fields, but an interface says: “This is what all classes that implement this particular interface will look like.” Thus, any code that uses a particular interface knows what methods might be called for that interface, and that’s all. So the interface is used to establish a “protocol” between classes. (Some object-oriented programming languages have a keyword called protocol to do the same thing.)  Typical example from "Thinking in Java":&lt;br /&gt;import java.util.*; interface Instrument { int i = 5; // static &amp;amp; final // Cannot have method definitions: void play(); // Automatically public String what(); void adjust(); } class Wind implements Instrument { public void play() { System.out.println("Wind.play()"); public String what() { return "Wind"; } public void adjust() {} }&lt;br /&gt;How can you achieve Multiple Inheritance in Java?&lt;br /&gt;Java’s interface mechanism can be used to implement multiple inheritance, with one important difference from c++ way of doing MI: the inherited interfaces must be abstract. This obviates the need to choose between different implementations, as with interfaces there are no implementations.&lt;br /&gt;interface CanFight { void fight(); interface CanSwim { void swim(); interface CanFly { void fly(); class ActionCharacter { public void fight() {} class Hero extends ActionCharacter implements CanFight, CanSwim, CanFly { public void swim() {} public void fly() {} }&lt;br /&gt;You can even achieve a form of multiple inheritance where you can use the *functionality* of classes rather than just the interface:&lt;br /&gt;interface A { void methodA(); } class AImpl implements A { void methodA() { //do stuff } } interface B { void methodB(); } class BImpl implements B { void methodB() { //do stuff } } class Multiple implements A, B { private A a = new A(); private B b = new B(); void methodA() { a.methodA(); } void methodB() { b.methodB(); } } This completely solves the traditional problems of multiple inheritance in C++ where name clashes occur between multiple base classes. The coder of the derived class will have to explicitly resolve any clashes. Don’t you hate people who point out minor typos? Everything in the previous example is correct, except you need to instantiate an AImpl and BImpl. So class Multiple would look like this: class Multiple implements A, B { private A a = new AImpl(); private B b = new BImpl(); void methodA() { a.methodA(); } void methodB() { b.methodB(); } }&lt;br /&gt;What is the difference between StringBuffer and String class?&lt;br /&gt;A string buffer implements a mutable sequence of characters. A string buffer is like a String, but can be modified. At any point in time it contains some particular sequence of characters, but the length and content of the sequence can be changed through certain method calls. The String class represents character strings. All string literals in Java programs, such as "abc" are constant and implemented as instances of this class; their values cannot be changed after they are created. Strings in Java are known to be immutable. What it means is that every time you need to make a change to a String variable, behind the scene, a "new" String is actually being created by the JVM. For an example: if you change your String variable 2 times, then you end up with 3 Strings: one current and 2 that are ready for garbage collection. The garbage collection cycle is quite unpredictable and these additional unwanted Strings will take up memory until that cycle occurs. For better performance, use StringBuffers for string-type data that will be reused or changed frequently. There is more overhead per class than using String, but you will end up with less overall classes and consequently consume less memory. Describe, in general, how java’s garbage collector works? The Java runtime environment deletes objects when it determines that they are no longer being used. This process is known as garbage collection. The Java runtime environment supports a garbage collector that periodically frees the memory used by objects that are no longer needed. The Java garbage collector is a mark-sweep garbage collector that scans Java’s dynamic memory areas for objects, marking those that are referenced. After all possible paths to objects are investigated, those objects that are not marked (i.e. are not referenced) are known to be garbage and are collected. (A more complete description of our garbage collection algorithm might be "A compacting, mark-sweep collector with some conservative scanning".) The garbage collector runs synchronously when the system runs out of memory, or in response to a request from a Java program. Your Java program can ask the garbage collector to run at any time by calling System.gc(). The garbage collector requires about 20 milliseconds to complete its task so, your program should only run the garbage collector when there will be no performance impact and the program anticipates an idle period long enough for the garbage collector to finish its job. Note: Asking the garbage collection to run does not guarantee that your objects will be garbage collected. The Java garbage collector runs asynchronously when the system is idle on systems that allow the Java runtime to note when a thread has begun and to interrupt another thread (such as Windows 95). As soon as another thread becomes active, the garbage collector is asked to get to a consistent state and then terminate.&lt;br /&gt;&lt;strong&gt;What’s the difference between == and equals method?&lt;/strong&gt;&lt;br /&gt;equals checks for the content of the string objects while == checks for the fact that the two String objects point to same memory location ie they are same references.&lt;br /&gt;What are abstract classes, abstract methods?&lt;br /&gt;Simply speaking a class or a method qualified with "abstract" keyword is an abstract class or abstract method. You create an abstract class when you want to manipulate a set of classes through a common interface. All derived-class methods that match the signature of the base-class declaration will be called using the dynamic binding mechanism. If you have an abstract class, objects of that class almost always have no meaning. That is, abstract class is meant to express only the interface and sometimes some default method implementations, and not a particular implementation, so creating an abstract class object makes no sense and are not allowed ( compile will give you an error message if you try to create one). An abstract method is an incomplete method. It has only a declaration and no method body. Here is the syntax for an abstract method declaration: abstract void f(); If a class contains one or more abstract methods, the class must be qualified an abstract. (Otherwise, the compiler gives you an error message.). It’s possible to create a class as abstract without including any abstract methods. This is useful when you’ve got a class in which it doesn’t make sense to have any abstract methods, and yet you want to prevent any instances of that class. Abstract classes and methods are created because they make the abstractness of a class explicit, and tell both the user and the compiler how it was intended to be used. For example: abstract class Instrument { int i; // storage allocated for each public abstract void play(); public String what() { return "Instrument"; public abstract void adjust(); } class Wind extends Instrument { public void play() { System.out.println("Wind.play()"); } public String what() { return "Wind"; } public void adjust() {} Abstract classes are classes for which there can be no instances at run time. i.e. the implementation of the abstract classes are not complete. Abstract methods are methods which have no defintion. i.e. abstract methods have to be implemented in one of the sub classes or else that class will also become Abstract.&lt;br /&gt;&lt;strong&gt;What is the difference between an Applet and an Application?&lt;/strong&gt;&lt;br /&gt;A Java application is made up of a main() method declared as public static void that accepts a string array argument, along with any other classes that main() calls. It lives in the environment that the host OS provides. A Java applet is made up of at least one public class that has to be subclassed from java.awt.Applet. The applet is confined to living in the user’s Web browser, and the browser’s security rules, (or Sun’s appletviewer, which has fewer restrictions).  The differences between an applet and an application are as follows: 1. Applets can be embedded in HTML pages and downloaded over the Internet whereas Applications have no special support in HTML for embedding or downloading. 2. Applets can only be executed inside a java compatible container, such as a browser or appletviewer whereas Applications are executed at command line by java.exe or jview.exe. 3. Applets execute under strict security limitations that disallow certain operations(sandbox model security) whereas Applications have no inherent security restrictions. 4. Applets don’t have the main() method as in applications. Instead they operate on an entirely different mechanism where they are initialized by init(),started by start(),stopped by stop() or destroyed by destroy().&lt;br /&gt;Java says "write once, run anywhere". What are some ways this isn’t quite true?&lt;br /&gt;As long as all implementaions of java are certified by sun as 100% pure java this promise of "Write once, Run everywhere" will hold true. But as soon as various java core implemenations start digressing from each other, this won’t be true anymore. A recent example of a questionable business tactic is the surreptitious behavior and interface modification of some of Java’s core classes in their own implementation of Java. Programmers who do not recognize these undocumented changes can build their applications expecting them to run anywhere that Java can be found, only to discover that their code works only on Microsoft’s own Virtual Machine, which is only available on Microsoft’s own operating systems.&lt;br /&gt;&lt;strong&gt;What is the difference between a Vector and an Array. Discuss the advantages and disadvantages of both?&lt;/strong&gt;&lt;br /&gt;Vector can contain objects of different types whereas array can contain objects only of a single type. - Vector can expand at run-time, while array length is fixed. - Vector methods are synchronized while Array methods are not&lt;br /&gt;&lt;strong&gt;What are java beans?&lt;/strong&gt;&lt;br /&gt;JavaBeans is a portable, platform-independent component model written in the Java programming language, developed in collaboration with industry leaders. It enables developers to write reusable components once and run them anywhere — benefiting from the platform-independent power of Java technology. JavaBeans acts as a Bridge between proprietary component models and provides a seamless and powerful means for developers to build components that run in ActiveX container applications. JavaBeans are usual Java classes which adhere to certain coding conventions: 1. Implements java.io.Serializable interface 2. Provides no argument constructor 3. Provides getter and setter methods for accessing it’s properties&lt;br /&gt;&lt;strong&gt;What is RMI?&lt;/strong&gt;&lt;br /&gt;RMI stands for Remote Method Invocation. Traditional approaches to executing code on other machines across a network have been confusing as well as tedious and error-prone to implement. The nicest way to think about this problem is that some object happens to live on another machine, and that you can send a message to the remote object and get a result as if the object lived on your local machine. This simplification is exactly what Java Remote Method Invocation (RMI) allows you to do. Above excerpt is from "Thinking in java". For more information refer to any book on Java.&lt;br /&gt;&lt;strong&gt;What does the keyword "synchronize" mean in java. When do you use it? What are the disadvantages of synchronization?&lt;/strong&gt;&lt;br /&gt;Synchronize is used when you want to make your methods thread safe. The disadvantage of synchronize is it will end up in slowing down the program. Also if not handled properly it will end up in dead lock.&lt;br /&gt;&lt;strong&gt;What gives java it’s "write once and run anywhere" nature?&lt;/strong&gt;&lt;br /&gt;Java is compiled to be a byte code which is the intermediate language between source code and machine code. This byte code is not platorm specific and hence can be fed to any platform. After being fed to the JVM, which is specific to a particular operating system, the code platform specific machine code is generated thus making java platform independent.&lt;br /&gt;&lt;strong&gt;What are native methods? How do you use them?&lt;br /&gt;&lt;/strong&gt;Native methods are methods written in other languages like C, C++, or even assembly language. You can call native methods from Java using JNI. Native methods are used when the implementation of a particular method is present in language other than Java say C, C++. To use the native methods in java we use the keyword native public native method_a(). This native keyword is signal to the java compiler that the implementation of this method is in a language other than java. Native methods are used when we realize that it would take up a lot of rework to write that piece of already existing code in other language to Java.&lt;br /&gt;What is JDBC? Describe the steps needed to execute a SQL query using JDBC.&lt;br /&gt;We can connect to databases from java using JDBC. It stands for Java DataBase Connectivity. Here are the steps: 1. Register the jdbc driver with the driver manager 2. Establish jdbc connection 3. Execute an sql statement 4. Process the results 5. Close the connection Before doing these do import java.sql.* JDBC is java based API for accessing data from the relational databases. JDBC provides a set of classes and interfaces for doing various database operations. The steps are: Register/load the jdbc driver with the driver manager. Establish the connection thru DriverManager.getConnection(); Fire a SQL thru conn.executeStatement(); Fetch the results in a result set Process the results Close statement/result set and connection object.&lt;br /&gt;How many different types of JDBC drivers are present? Discuss them.&lt;br /&gt;There are four JDBC driver types. Type 1: JDBC-ODBC Bridge plus ODBC Driver: The first type of JDBC driver is the JDBC-ODBC Bridge. It is a driver that provides JDBC access to databases through ODBC drivers. The ODBC driver must be configured on the client for the bridge to work. This driver type is commonly used for prototyping or when there is no JDBC driver available for a particular DBMS. Type 2: Native-API partly-Java Driver: The Native to API driver converts JDBC commands to DBMS-specific native calls. This is much like the restriction of Type 1 drivers. The client must have some binary code loaded on its machine. These drivers do have an advantage over Type 1 drivers because they interface directly with the database. Type 3: JDBC-Net Pure Java Driver: The JDBC-Net drivers are a three-tier solution. This type of driver translates JDBC calls into a database-independent network protocol that is sent to a middleware server. This server then translates this DBMS-independent protocol into a DBMS-specific protocol, which is sent to a particular database. The results are then routed back through the middleware server and sent back to the client. This type of solution makes it possible to implement a pure Java client. It also makes it possible to swap databases without affecting the client. Type 4: Native-Protocol Pure Java Driver These are pure Java drivers that communicate directly with the vendor’s database. They do this by converting JDBC commands directly into the database engine’s native protocol. This driver has no additional translation or middleware layer, which improves performance tremendously. What does the "static" keyword mean in front of a variable? A method? A class? Curly braces {}? static variable - means a class level variable static method: -does not have "this". It is not allowed to access the not static members of the class. can be invoked enev before a single instance of a class is created. eg: main static class: no such thing. static free floating block: is executed at the time the class is loaded. There can be multiple such blocks. This may be useful to load native libraries when using native methods. eg: native void doThis(){ static{ System.loadLibrary("myLibrary.lib"); }&lt;br /&gt;Access specifiers: "public", "protected", "private", nothing?&lt;br /&gt;In the case of Public, Private and Protected, that is used to describe which programs can access that class or method: Public – any other class from any package can instantiate and execute the classes and methods. Protected – only subclasses and classes inside of the package can access the classes and methods. Private – the original class is the only class allowed to executed the methods.&lt;br /&gt;&lt;strong&gt;What does the "final" keyword mean in front of a variable? A method? A class?&lt;/strong&gt;&lt;br /&gt;FINAL for a variable : value is constant FINAL for a method : cannot be overridden FINAL for a class : cannot be derived A final variable cannot be reassigned, but it is not constant. For instance, final StringBuffer x = new StringBuffer() x.append("hello"); is valid. X cannot have a new value in it,but nothing stops operations on the object that it refers, including destructive operations. Also, a final method cannot be overridden or hidden by new access specifications.This means that the compiler can choose to in-line the invocation of such a method.(I don’t know if any compiler actually does this, but it’s true in theory.) The best example of a final class is String, which defines a class that cannot be derived.&lt;br /&gt;&lt;strong&gt;Does Java have "goto"?&lt;/strong&gt;&lt;br /&gt;No.&lt;br /&gt;&lt;strong&gt;What synchronization constructs does Java provide? How do they work?&lt;/strong&gt;&lt;br /&gt;The two common features that are used are: 1. Synchronized keyword - Used to synchronize a method or a block of code. When you synchronize a method, you are in effect synchronizing the code within the method using the monitor of the current object for the lock. The following have the same effect. synchronized void foo() { } and void foo() { synchronized(this) { } If you synchronize a static method, then you are synchronizing across all objects of the same class, i.e. the monitor you are using for the lock is one per class, not one per object. 2. wait/notify. wait() needs to be called from within a synchronized block. It will first release the lock acquired from the synchronization and then wait for a signal. In Posix C, this part is equivalent to the pthread_cond_wait method, which waits for an OS signal to continue. When somebody calls notify() on the object, this will signal the code which has been waiting, and the code will continue from that point. If there are several sections of code that are in the wait state, you can call notifyAll() which will notify all threads that are waiting on the monitor for the current object. Remember that both wait() and notify() have to be called from blocks of code that are synchronized on the monitor for the current object.&lt;br /&gt;&lt;strong&gt;Does Java have multiple inheritance?&lt;/strong&gt;&lt;br /&gt;Java does not support multiple inheritence directly but it does thru the concept of interfaces. We can make a class implement a number of interfaces if we want to achieve multiple inheritence type of functionality of C++.&lt;br /&gt;&lt;strong&gt;How does exception handling work in Java?&lt;/strong&gt;&lt;br /&gt;1.It separates the working/functional code from the error-handling code by way of try-catch clauses. 2.It allows a clean path for error propagation. If the called method encounters a situation it can’t manage, it can throw an exception and let the calling method deal with it. 3.By enlisting the compiler to ensure that "exceptional" situations are anticipated and accounted for, it enforces powerful coding. 4.Exceptions are of two types: Compiler-enforced exceptions, or checked exceptions. Runtime exceptions, or unchecked exceptions. Compiler-enforced (checked) exceptions are instances of the Exception class or one of its subclasses — excluding the RuntimeException branch. The compiler expects all checked exceptions to be appropriately handled. Checked exceptions must be declared in the throws clause of the method throwing them — assuming, of course, they’re not being caught within that same method. The calling method must take care of these exceptions by either catching or declaring them in its throws clause. Thus, making an exception checked forces the us to pay heed to the possibility of it being thrown. An example of a checked exception is java.io.IOException. As the name suggests, it throws whenever an input/output operation is abnormally terminated.&lt;br /&gt;&lt;strong&gt;Does Java have destructors?&lt;/strong&gt;&lt;br /&gt;Garbage collector does the job working in the background Java does not have destructors; but it has finalizers that does a similar job. the syntax is public void finalize(){ } if an object has a finalizer, the method is invoked before the system garbage collects the object&lt;br /&gt;What does the "abstract" keyword mean in front of a method? A class?&lt;br /&gt;Abstract keyword declares either a method or a class. If a method has a abstract keyword in front of it,it is called abstract method.Abstract method hs no body.It has only arguments and return type.Abstract methods act as placeholder methods that are implemented in the subclasses. Abstract classes can’t be instantiated.If a class is declared as abstract,no objects of that class can be created.If a class contains any abstract method it must be declared as abstract&lt;br /&gt;&lt;strong&gt;Are Java constructors inherited ? If not, why not?&lt;/strong&gt;&lt;br /&gt;You cannot inherit a constructor. That is, you cannot create a instance of a subclass using a constructor of one of it’s superclasses. One of the main reasons is because you probably don’t want to overide the superclasses constructor, which would be possible if they were inherited. By giving the developer the ability to override a superclasses constructor you would erode the encapsulation abilities of the language.&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-1084415936933998051?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/1084415936933998051/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=1084415936933998051' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/1084415936933998051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/1084415936933998051'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/java-interview-questions.html' title='JAVA Interview Questions'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-6779635823172802088</id><published>2009-01-11T02:06:00.001-08:00</published><updated>2009-01-16T21:10:46.066-08:00</updated><title type='text'>Most Frequently Asked Interview Questions</title><content type='html'>&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:130%;color:#ff6666;"&gt;Most frequently asked Interview Questions&lt;/span&gt; :&lt;br /&gt; Why have you selected to join us?I always longed to work with a company. I am familiar and whose products I have used and trusted.(Narrate briefly how you can prove your statement. Do good research on the company before facing the interview)&lt;br /&gt;Where do you want to be in 5 years?I would like to be frank. Judge me from the work and I am sure you will put me right where I want to be.Note : Do not over ambitious and speak in a way that you are not satisfied with your current job which you have applied for.&lt;br /&gt;Describe your ideal career?Talk of what you enjoy most your skills and natural talents. Do not specify your goal and any job title.&lt;br /&gt;Tell me something about yourselfDo not just repeat what you have given in your resume. Be ready with the answer, a talent or something you did out of the ordinary. You can sound it as unique or give it a touch of your personality.&lt;br /&gt;How did you apply for the job?Be specific and give a straight answer of how you came to&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;try {&lt;br /&gt;var pageTracker = _gat._getTracker("UA-7051572-1");&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;} catch(err) {}&lt;/script&gt;&lt;br /&gt; know about the vacancy. If it was advertised specify how you came across it.&lt;br /&gt;Why do you want to work here?Have a research done about the company / organization Give just one or two reasons why you are interested. You can add these points (1)  company's reputation(2) desire to join the specific field of interest.&lt;br /&gt;Don't you think that you are over qualified for this job?(This question is put to you to puzzle a candidate. Be calm and answer the question with a positive and confident approach)Answer in the negativeMy experience and qualification will just help me to do the job better. Moreover I am at establishing a long term relationship which my qualification will favor me to handle more responsibilities and help me to rise to your expectations.&lt;br /&gt;What competition do you see if you take up this job?When you answer, clearly show that you have researched carefully and acquired more in-depth knowledge about the company.Enumerate some positive and negative traits of the company and their competitions.Feel confident to show that competition is not an unexpected one.&lt;br /&gt;What would you do if our competitor offer you a job?Show your confidence in the company's worth, stress the point 'I would say No' by pointing out some qualities you found out in your research about the company.&lt;br /&gt;Why are you leaving your current job?You should give two or three reasons  for leaving.Lack of challenge, focus on the limitations etc. Point out your ambition to prove your worth confidently.&lt;br /&gt;What salary do you expect?(This is a tricky question to be answered carefully. Interviewers often accept people with realistic financial goals.)If you mention a salary that is low it shows that you are not up to the mark. If you mention too high you have ruined a chance to get a job. So the best is to ask for the salary they offer and then show your capacity, how your experience and qualification rate with what is offered.&lt;br /&gt;What interests you most about the job?(Show how you believe that you are most suited to the post. If you can find out an earlier experience it would be fine.)If you have experience, you can quote some similarities from the past and how you achieved success.&lt;br /&gt;What is your dream job?Make the question a chance to display your aptitude that fits the job you have applied for. Display how your skills can be put into suite the challenges and modern trends.&lt;br /&gt;Why should we take you?This is often the concluding Question( Some tips to the answer)&lt;br /&gt;Don'ts :  Do not repeat your resumeDo not enumerate your experience&lt;br /&gt;Do's: Prove Your interest              Be positive in your answer              Be prepared with confidence in what you are going to say              Make sure the answer comes from the bottom of your heart.&lt;br /&gt;If you have unlimited time and financial resources how would you spend themEven though it is tempting to discuss thing you would do for fun, answer these questions with strict coherence with the job you have applied for.Egg: If you  are into teaching, touch on your interest in adult literary programmers and  other teaching  oriented  aspects.&lt;br /&gt;How is your experience relevant to this job?Sketch out some similar work which you have done in your previous job. It should be something justifiable by you, even though others may think differently.You can even ask some question where you can prove that your experience stands in good strand. &lt;br /&gt;How could you enrich your current job?Design your answer to show that you are still interested in the job and you point out a few instances where improvements can be made. Convince the person that you can be relied on and you will not get bored with what you do with time.&lt;br /&gt;How many days where you absent from work?Give a solid attendance record. But at the same time show you were not responsible . Convince that you are willing to take up responsibility.Egg: I was absent 7 days. 4 days due to conjunctivitis and one day due to the death of a close relative and 2 days had to accompany my parents for their check up.&lt;br /&gt;Tell me about a time you had to deal with an irritate customer, how did you handle the solution?The question is aimed at you to hear from yourself how you handle people when others loose their temper. Here the best answer you can give to describe a situation and show how you handled  it with maturity and diplomacy.  &lt;br /&gt;How do you manage stress in your daily work?You can describe a situation of how you had managed stress in your previous work if you had one or narrate how you can find time in your busy schedule to relax a bit.&lt;br /&gt;Describe a professional skill you have developed in you?It will be better if you be specific with your answer. Narrate some thing you  worked for  to fulfill your work more efficiently. Describe how you attended a seminar and brought about the changed in your work.&lt;br /&gt;How do you manage your work to meet dead linesAnswer the question effectively .  Describe in detail how your plan out, set priorities, determine schedules, how you follow out to see the progress and meet the dead line.&lt;br /&gt;What books you read?Do not ever say you have read a book which you have not. Here your suggestion can lead the interviewer to know your taste and interest. It can also hint on how you take your profession.&lt;br /&gt;What are the most rewarding aspect of you most recent job?The best way to answer it is to focus in what you do efficiently, keep in mind the position you are applying for.&lt;br /&gt;What aspects of this job do you feel most confident?Narrate what you are good and match it with the present job requirements. You may ask questions to clear if that particular skill will add benefit to the company&lt;br /&gt;What can motivate you?The Interview expects an answer to know you better .Keep in tune with your job and work you have applied for. Do not beat around the bush.&lt;br /&gt;Whom do you choose as your reference and why?Name the references and how you know them. You can also show that you are a person who care for relationships and how you stand in good stead with them.&lt;br /&gt;Can we call all your references?If you have given your present boss as your reference you can tell that you prefer to call your current boss only after you receive a confirmed offer as he may not like you changing the job.&lt;br /&gt;Do you have any questions?Be prepared to answer this question in advance. List out a few questions you wish to know more about. After you have faced the  interview your logic will guide you to ask the question you really want to know more about.&lt;br /&gt;How do you handle criticismHere the interview is on the look out for your accountability and professional character.Simply explain a situation that caused a problem and narrate how you faced it and overcame it.&lt;br /&gt;Tell me about a situation that upset  you at workHer the interview is trying to find out how you deal with pressure. Be diplomatic and objective with your answer. Prepare the answer so that the answer comes as a smooth reassurance&lt;br /&gt;Have you ever been fired?If  the answer is negative, the answer is simple. But if you have been fired, you need to be prepared  to the answer the follow up questions that my come up.If the termination was for reason beyond your control narrate it. If not do not try justifying yourself. If you had a fault, admit it and convince the interview that you have corrected it. &lt;br /&gt;Do you change  your job frequently?Be honest and if you had changed the jobs frequently there could be ample reasons to do so. Put them up as contracts that expired at the stipulated time.Be convincing when you say that you long to have a steady and long lasting relationship with the present job you are applying for.&lt;br /&gt;What is the toughest job you had?Avoid making any negative statements especially about your previous employer. Change the question with a positive outlook and answer it with a satisfied remark of your outcome.&lt;br /&gt;How do you handle tension?Answer with ease that in any job and any situation that  tension is a part of it.  Relax before putting the f act you are very used to such type of works.&lt;br /&gt;What is your current salary?Do not bluff. Be specific on the answer. Do not hesitate to say the benefits you enjoyed in the previous job. It may be verified so never mention the benefits you have not got.&lt;br /&gt;Will you be willing to accept transfer?Tell you preference but do not specify that you will be not willing to work else where.&lt;br /&gt;What is your weakness?Turn the question to a positive one. Simply say that you  are a perfectionist and your commitment to output of high quality perfect work. Say this is your weakness.&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-6779635823172802088?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/6779635823172802088/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=6779635823172802088' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/6779635823172802088'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/6779635823172802088'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/most-frequently-asked-interview_11.html' title='Most Frequently Asked Interview Questions'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-8126047273354819267</id><published>2009-01-11T02:06:00.000-08:00</published><updated>2009-01-11T02:08:06.426-08:00</updated><title type='text'>Most Frequently Asked Interview Questions</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-8126047273354819267?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/8126047273354819267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=8126047273354819267' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/8126047273354819267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/8126047273354819267'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2009/01/most-frequently-asked-interview.html' title='Most Frequently Asked Interview Questions'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-8346561588766156104</id><published>2008-11-30T05:32:00.000-08:00</published><updated>2008-11-30T05:48:01.001-08:00</updated><title type='text'>Walk-In for HR in SunMicrosystem</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;     &lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 153);"&gt;WALK-IN IN SUN MICROSYSTEM&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Company Profile:&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;/span&gt;&lt;span style="font-family:Verdana; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-Times New Roman&amp;quot;; mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language: AR-SAfont-family:&amp;quot;;font-size:8.5pt;color:#333333;"&gt;Incorporated in 1982, Sun has had a history marked by great ideas, break-through thinking, and market shattering achievements. Sun has been widely acknowledged as the thought leader of the computing industry.&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Verdana; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-Times New Roman&amp;quot;; mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language: AR-SAfont-family:&amp;quot;;font-size:8.5pt;color:#333333;"&gt;Today, Sun Microsystems is a USD 12.5 billion Fortune 500 company employing 34,000 people across the world. We are the global market leaders in UNIX � systems revenue and unit market share (IDC).&lt;br /&gt;&lt;br /&gt;What makes us unique is our belief that eventually every man, woman, and child on the planet will be connected to the Network. So will virtually everything with a digital or electrical heartbeat -- from mobile phones to automobiles, thermostats to razor blades.&lt;br /&gt;&lt;br /&gt;Sun Microsystems has had a significant presence in India since 1987 through a distributor arrangement,but established a direct presence for the first time in 1995 as a liaison office.&lt;br /&gt; This office was finally converted into a wholly owned subsidiary on July 1, 1998. Year after year we have been consistently rated number one in India in UNIX � systems revenue and unit market share (IDC). Sun India has been growing at twice the industry average for the last 5 years.&lt;br /&gt; Sun has adopted a business model of working in partnership with key Indian partners to deliver all products and services such as hardware platforms, services, certification training etc. The company works with leading partners such as Wipro, Tata Infotech, CMC, Tech Pacific, Accel ICIM, HCL Infosystems, CDAC to deliver hardware products and services.&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Sun has a very strong relationship model with worldwide organizations like Oracle, SAP, PeopleSoft, EDS and others to deliver the best of breed solutions and services to its customers.&lt;br /&gt; In order to retain and grow our status as the undisputed market leader of enterprise computing systems, we need to hire for the following positions&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Job Description:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=" color: rgb(51, 51, 51); font-size:8.5pt;"&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;The role of HR Coordinator is responsible for HR administrative support required to occur in country on standard HR programmes. The role is a key link between the country HR team and SunDIAL to ensure HR provides a seamless service for Sun managers and employees. Excellent communication skills, attention to detail and the ability to multi-task are essential in this role. In addition, the ability to work effectively as part of a remote team is key.&lt;br /&gt;The following lists the key responsibilities of the role, however, there will be times when the incumbent will be required to support or drive additional&lt;br /&gt;PECM HR programmes.&lt;br /&gt;&lt;br /&gt;Set up, maintenance and completion of hard copy filing in a timely and accurate manner.&lt;br /&gt;Set up, maintance and completion of electronic filing as required for PECM HR programmes.&lt;br /&gt;Fullfillment needs on letters produced by RSC which require a wet HR signature and distribution to the appropriate manager/employee.&lt;br /&gt;4. Preparation of job offer letters for HR signature and their distribution to the appropriate manager.&lt;br /&gt;Prepation of hew hire information packs, termination packs, RIF packs, onboarding materials and distribution as required.&lt;br /&gt;6. Order stationery as required for HR needs.&lt;br /&gt;Update RSC on received acceptance letters from candidates/promotion etc, follow up to ensure all documents are signed and returned as required.&lt;br /&gt;Distribute service awards.&lt;br /&gt;Support government reporting requirements.&lt;br /&gt;Support government audit and SOX audit requirements.&lt;br /&gt;Maintain and update the HR website.&lt;br /&gt;Seek approval for invoices and pass on to RSC to manage PO process, monitor for timely payment.&lt;br /&gt;Manage/support local HR tools as required.&lt;/span&gt; &lt;/span&gt;&lt;!--EndFragment--&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;    litebreed solutions and services to its customers.&lt;br /&gt; In order to retain and grow our status as the undisputed market leader of enterprise computing systems, we need to hire for the following positions &lt;/span&gt; &lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   font-family:Verdana;font-size:11px;"&gt;Support for HR programme implementation eg RIF, Benefit briefings etc.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   font-weight: bold;font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Desired Profile: &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;4 -8 years experience is required&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Industry Type: &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;IT-Software/ Software Services&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Functional Area: &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;HR / Administration, IR&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Education: &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;UG - Any Graduate - Any Specialization&lt;span class="apple-converted-space"&gt; PG - Any PG Course - Any Specialization&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color: rgb(51, 51, 51);  font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Contact: &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color: rgb(51, 51, 51);  font-weight: bold;font-family:Verdana;"&gt;&lt;span style="font-family:Verdana; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-Times New Roman&amp;quot;; mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language: AR-SAfont-family:&amp;quot;;font-size:8.5pt;color:#333333;"&gt;Sun Microsystems India Pvt Ltd&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   font-weight: bold;font-family:Verdana;font-size:11px;"&gt;&lt;span style="font-family:Verdana; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-Times New Roman&amp;quot;; mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language: AR-SAfont-family:&amp;quot;;font-size:8.5pt;color:#333333;"&gt;Bengaluru/Bangalore&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   font-weight: bold;font-family:Verdana;font-size:11px;"&gt;&lt;span style="font-family:Verdana; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-Times New Roman&amp;quot;; mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language: AR-SAfont-family:&amp;quot;;font-size:8.5pt;color:#333333;"&gt;&lt;a href="http://www.sun.com/" target="_blank"&gt;&lt;span style=" text-decoration:none;text-underline:nonecolor:#FF7B00;"&gt;http://www.sun.com&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-8346561588766156104?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/8346561588766156104/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=8346561588766156104' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/8346561588766156104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/8346561588766156104'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2008/11/walk-in-for-hr-in-sunmicrosystem.html' title='Walk-In for HR in SunMicrosystem'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-70073604024567658.post-6015188632157947694</id><published>2008-11-30T05:08:00.000-08:00</published><updated>2008-11-30T05:57:12.728-08:00</updated><title type='text'>walk-in for HR</title><content type='html'>&lt;span class="Apple-style-span"  style=" -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;font-family:Arial;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;     &lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 153);"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;WALK-IN IN BIOCON LTD&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Company Profile:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style=" -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;font-family:Arial;"&gt;&lt;span style="font-family:Verdana; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-Times New Roman&amp;quot;; mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language: AR-SAfont-family:&amp;quot;;font-size:8.5pt;color:#333333;"&gt;Biocon is an integrated biotechnology enterprise focused on the development of biopharmaceuticals. With successful initiatives in drug discovery and development, bioprocessing and global marketing, we deliver products and solutions to partners and customers in over 50 countries. We are confident that we have the defining science, world class capabilities and a focused vision to deliver the promise of new medicine to a waiting world. Today, Biocon together with group companies employs more than 2500 employees with approxmimately Rs 1,000 crore turnover and is expected to grow further during the current financial year.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;font-family:Verdana;font-size:11px;"&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Designation:       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Deputy Manager/Manager (HR)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:13px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Job Description:&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color: rgb(51, 51, 51);  font-weight: bold;font-family:Verdana;"&gt;&lt;span style="font-family:Verdana; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-Times New Roman&amp;quot;; mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language: AR-SAfont-family:&amp;quot;;font-size:8.5pt;color:#333333;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;HR Generalist role involves recruitment and selection, performance management, staffing , employee relations.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color: rgb(51, 51, 51);  font-weight: bold;font-family:Verdana;"&gt;&lt;span style="font-family:Verdana; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-Times New Roman&amp;quot;; mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language: AR-SAfont-family:&amp;quot;;font-size:8.5pt;color:#333333;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Close interaction with the sales and marketing team on all the issues Reports to the Head Group HR&lt;br /&gt;This job involves extensive traveling&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   font-weight: bold;font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   font-weight: bold;font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Desired Profile:&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color: rgb(51, 51, 51);  font-weight: bold;font-family:Verdana;"&gt;&lt;span style="font-family:Verdana; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-Times New Roman&amp;quot;; mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language: AR-SAfont-family:&amp;quot;;font-size:8.5pt;color:#333333;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Should have handled Field H.R in a Pharmaceutical company / FMCG Company with large and scattered field force.&lt;br /&gt;Some without formal HR qualifies but relevant experience can be considered also.Candidate with exposure to assessment and development tools&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   font-weight: bold;font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   font-weight: bold; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Experience:   &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; "&gt;6 - 10 Years&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Industry Type&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Verdana; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-Times New Roman&amp;quot;; mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language: AR-SAfont-family:&amp;quot;;font-size:8.5pt;color:#333333;"&gt;: &lt;/span&gt;&lt;/b&gt;Pharma/ Biotech/Clinical Research&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Functional Area: &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;HR / Administration, IR&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Education: &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;UG - Any Graduate&lt;span class="apple-converted-space"&gt; PG - Any PG Course,MBA/PGDM,PG Diploma&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Location:  &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;Bengaluru/Bangalore&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;b&gt;&lt;span style=" color: rgb(51, 51, 51); font-family:Verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Contact: &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;Biocon Limited&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);  font-family:Verdana;font-size:11px;"&gt;&lt;span style="font-family:Verdana; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-Times New Roman&amp;quot;; mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language: AR-SAfont-family:&amp;quot;;font-size:8.5pt;color:#333333;"&gt;&lt;a href="http://www.biocon.com/" target="_blank"&gt;http://www.biocon.com/&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   font-weight: bold;font-family:Verdana;font-size:11px;"&gt;&lt;div align="center"&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/70073604024567658-6015188632157947694?l=career-in.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://career-in.blogspot.com/feeds/6015188632157947694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=70073604024567658&amp;postID=6015188632157947694' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/6015188632157947694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/70073604024567658/posts/default/6015188632157947694'/><link rel='alternate' type='text/html' href='http://career-in.blogspot.com/2008/11/walk-in-for-hr.html' title='walk-in for HR'/><author><name>hari krishnan</name><uri>http://www.blogger.com/profile/09465915311035594771</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
