• No results found

DOM (Document Object Model)

The Document Object model (DOm) is a way to represent a Web document (see html and xml) as an object that can be manipulated using code in a scripting language (see javascRipt). The DOm was created by the World Wide Web Consortium (W3C) as a way to standardize methods of manipulating Web pages at a time when different brows- ers used different access models. The full specification is divided into four levels (0 through 3). By 2005, most DOm specifications were supported by the major Web browsers.

Using DOm, a programmer can navigate through the hierarchical structure of a document, following links or “descending” into forms and user-interface objects. With DOm one can also add HTmL or xmL elements, as well as load, save, or format documents.

Code can also be written to respond to a number of “events,” including user keyboard or mouse activity and interactions with specific user-interface elements and HTmL forms. For example, the “mouseover” event will be triggered when the user moves the mouse cursor over a defined region. The code can then perform an action such as popping up a box with explanatory text. The “submit” event will be triggered when the user has finished filling in a form and clicked the button to send it to the Web site. When an event occurs, the event object is used to pass detailed information about it to the program, such as which key or button was pressed, the location of the mouse pointer, and so on.

Although learning the DOm methods and how to use them takes some time, and familiarity with JavaScript is helpful, the syntax for accessing DOm methods should be familiar to anyone who has used an object-oriented program- ming language. Here are some simple sample statements.

Get the document with the specified ID: document.getElementById(ID)

Get the element with the specified tag: document.getElementByTagName(tagname)

Get the specified attribute (property) of the specified element:

myElement.getAttribute(attributeName) Create an element with the specified tag and reference it through a variable:

var myElementNode = document. createElement(tagname)

e

vaLuation

Although dynamic HTmL (DHTmL) also has an object model that can be used to access and manipulate individual elements, DOm is more comprehensive because it provides access to the document as a whole and the ability to navi- gate through its structure.

By providing a uniform way to manipulate documents, DOm makes it easier to write tools to process them in a series of steps. For example, database programs and xmL parsers can produce DOm document “trees” as output, and an xSLT (xmL style sheet processor) can then be used to format the final output.

For working with xmL, another popular alternative is the Simple API for xmL (SAx). The SAx model is quite dif- ferent from DOm in that the former “sees” a document as a stream of events (such as element nodes) and the parser is programmed to call methods as events are encountered. DOm, on the other hand, is not a stream but a tree that can be entered arbitrarily and traversed in any direction. On the other hand, SAx streams do not require that the entire document be held in memory, and processing can some- times be faster.

Further Reading

Document Object model FAQ. World Wide Web Consortium. Available online. URL: http://www.w3.org/DOm/faq.html. Accessed September 16, 2007.

Heilmann, Christian. Beginning JavaScript with DOM Scripting and Ajax: From Novice to Professional. Berkeley, Calif.: APress, 2006. Keith, Jeremy. DOM Scripting: Web Design with JavaScript and the

Document Object Model. Berkeley, Calif.: APress, 2005. Robie, Jonathan. “What Is the Document Object model?” World

Wide Web Consortium. Available online. URL: http://www. w3.org/TR/WD-DOm/introduction.html. Accessed Septem- ber 14, 2007.

Sambells, Jeffrey, and Aaron gustafson. Advanced DOM Script- ing: Dynamic Web Design Techniques. Berkeley, Calif.: APress, 2007.

DOS 

Seems-dos.

Dreyfus, Hubert

(1929– )

American

Philosopher, Cognitive Psychologist

As the possibilities for computers going beyond “number crunching” to sophisticated information processing became clear starting in the 1950s, the quest to achieve artificial intel- ligence (AI) was eagerly embraced by a number of innovative

researchers. For example, Allen Newell, Herbert Simon, and Cliff Shaw at the RAND Corporation, attempted to write programs that could “understand” and intelligently manipu- late symbols rather than just literal numbers or characters. Similarly, mIT’s marvin minsky (see minsky, maRvin) was attempting to build a robot that could not only perceive its environment, but in some sense understand and manipulate it. (See aRtificialintelligence and Robotics.)

Into this milieu came Hubert Dreyfus, who had earned his Ph.D. in philosophy at Harvard. Dreyfus had special- ized in the philosophy of perception (how meaning can be derived from a person’s environment) and phenomenology (the understanding of processes). When Dreyfus began to teach a survey course on these areas of philosophy, some of his students asked him what he thought of the artificial intelligence researchers who were taking an experimental and engineering approach to the same topics the philoso- phers had discussed abstractly.

Philosophy had attempted to explain the process of per- ception and understanding (see also cognitive science). One tradition, the rationalism represented by such think- ers as Descartes, Kant, and Husserl took the approach of formalism and attempted to elucidate rules governing the process. They argued that in effect the human mind was a machine (albeit a wonderfully complex and versatile one). The opposing tradition, represented by the phenomenolo- gists Wittgenstein, Heidegger, and merleau-Ponty, took a holistic approach in which physical states, emotions, and experience were inextricably intertwined in creating the world that people perceive and relate to.

If computers, which at that time had only the most rudimentary “senses” and no emotions could perceive and understand in the way humans did, then the rules-based approach of the rationalist philosophers would be vindi- cated. But when Dreyfus had examined the AI efforts, he wrote a paper titled “Alchemy and Artificial Intelligence.” His comparison of AI to alchemy was provocative in that it suggested that like the alchemists, the modern AI research- ers had met with only limited success in manipulating their materials (such as by teaching computers to perform such intellectual tasks as playing checkers and even prov- ing mathematical theorems). However, Dreyfus concluded that the kind of flexible, intuitive, and ultimately robust intelligence that characterizes the human mind couldn’t be matched by any programmed system. Each time AI research- ers demonstrated the performance of some complex task, Dreyfus examined the performance and concluded that it lacked the essential characteristics of human intelligence. Dreyfus expanded his paper into the book What Computers Can’t Do. meanwhile, critics complained that Dreyfus was moving the goal posts after each play, on the assumption that “if a computer did it, it must not be true intelligence.”

Two decades later, Dreyfus reaffirmed his conclusions in

What Computers Still Can’t Do, while acknowledging that the AI field had become considerably more sophisticated in creat- ing systems of emergent behavior (such as neural networks).

Currently a professor in the graduate School of Phi- losophy at the University of California, Berkeley, Dreyfus continues his work in pure philosophy (including a com-

mentary on phenomenologist philosopher martin Hei- degger’s Being and Time) while still keeping an eye on the computer world in his latest publication, On the Internet.

Further Reading

Dreyfus, Hubert. What Computers Can’t Do: A Critique of Artificial Reason. New York: Harper and Row, 1972.

———. What Computers Still Can’t Do. Cambridge, mass.: mIT Press, 1992.

Dreyfus, Hubert, and Stuart Dreyfus. Mind over Machine: the Power of Human Intuitive Expertise in the Era of the Computer. Rev. ed. New York: Free Press, 1988.

Henderson, Harry. Artificial Intelligence: Mirrors for the Mind. New York: Chelsea House, 2007.

DRM 

SeedigitalRightsmanagement.

DSL  (digital subscriber line)

DSL (digital subscriber line) is one of the two most preva- lent forms of high-speed wired access to the Internet (see

bRoadband and cable modem). DSL can operate over regular phone lines (sometimes called POTS or “plain old telephone service”). DSL takes advantage of the fact that existing phone lines can carry frequencies far beyond the narrow band used for voice telephony. When install- ing DSL, the phone company must evaluate the quality of existing lines to determine how many frequency bands are usable, and thus how much data can be transmitted. Fur- ther, because the higher the frequency the shorter the dis- tance the signal can travel, the available bandwidth drops as one gets farther from the central office or a local DSL access multiplexer (DSLAm).

Typical DSL services can range in speed from 128 kbps to 3 mbps. many providers offer higher speeds at additional cost. Speeds quoted are generally maximums; actual speed may be less due to poor line quality or greater distance from the central office.

The most common form of DSL is ADSL (asymmetric DSL), which has much higher download speeds than upload speeds. This is generally not a problem, since most users consume much more content than they generate. The lower frequencies are generally reserved for regular voice and fax service. A single DSL modem can serve multiple users in a local network by being connected to a router.

As more people move from land-line phone service to cellular, there has been greater demand for offering so- called naked DSL—DSL without traditional phone ser- vice. DSL can also be provided over optical fiber (see fibeR optics).

Note that an older and lower-bandwidth version of the technology called ISDN (Integrated Services Digital Net- work) is still in use, but has largely been superseded by DSL/ADSL.

a

Lternativesto

dsL

Cable is still more popular than DSL, though the latter has closed the gap somewhat. The fact that the two services can both provide fast Internet access (mostly) through existing         DRM

infrastructure has created considerable competition. Thus a cable provider can now offer telephone service via the Internet (see voip) at the same time a phone provider using DSL can offer movies and television programming streamed over the network. The fact that in many locations DSL and cable providers are in competition can result in lower rates or more attractive “bundles” of services for consumers.

On average, cable modem speeds are somewhat faster than DSL; however, cable speeds can degrade as more users are added to a circuit. Although both services have had their share of glitches, they now both tend to be quite reliable. Further Reading

golden, Philip, Herve Dedieu, and Krista S. Jacobsen, eds. Imple- mentation and Applications of DSL Technology. Boca Raton, Fla.: CRC Press, 2007.

mitchell, Bradley. “DSL vs. Cable: modem Comparison.” Avail- able online. URL:http://compnetworking.about.com/od/ dslvscablemodem/a/dslcablecompare.htm. Accessed Septem- ber 16, 2007.

Reynolds, Janice. A Practical Guide to DSL: High-Speed Connections for Local Loop and Network. New York: CmP Books, 2001. Smith, Roderick W. Broadband Internet Connections: A User’s Guide

to DSL and Cable. Upper Saddle River, N.J.: Addison-Wesley Professional, 2007.

DTP 

Seedesktoppublishing.