EPC Exhibit 133-13.1 April 22, 2010 THE LIBRARY OF CONGRESS Dewey Section To: Caroline Kent, Chair Decimal Classification Editorial Policy Committee Cc: Members of the Decimal Classification Editorial Policy Committee Karl E. Debus-López, Chief, U.S. General Division From: Rebecca Green, Assistant Editor Dewey Decimal Classification OCLC Online Computer Library Center, Inc. Via: Joan S. Mitchell, Editor in Chief Dewey Decimal Classification OCLC Online Computer Library Center, Inc. Re: 004–006 Selected topics (based on LCSH review) Expansion From To 004.678 004.6782 Topic Cloud computing This exhibit addresses recent or emerging topics in computer science and technology that are not well represented in the current schedules and that we would like represented in DDC 23. Topics are drawn largely from two sources: frequently occurring Library of Congress Subject Headings (LCSHs) from 2006–2010 that occur in WorldCat with works classed in 004–006; and Ebe Kartus (Manager, Acquisitions & Cataloguing, RMIT University, Australia), who has been engaged in a classification project involving computer science. Cyberinfrastructure Various definitional statements make clear that cyberinfrastructure comprises many aspects of 004–006 and thus approximates the whole of 004: Cyberinfrastructure is the coordinated aggregate of software, hardware and other technologies, as well as human expertise, required to support current and future discoveries in science and engineering. (Fran Berman, SBE/CISE Workshop on Cyberinfrastructure for the Social Sciences, San Diego Supercomputer Center and UC San Diego; http://vis.sdsc.edu/sbe/SBE-CISE_Workshop_Intro.pdf) 1 Cyberinfrastructure consists of computing systems, data storage systems, advanced instruments and data repositories, visualization environments, and people, all linked together by software and high performance networks to improve research productivity and enable breakthroughs not otherwise possible. (Craig Stewart, Indiana University Cyberinfrastructure Newsletter; http://pti.iu.edu/ci/cyberinfrastructure-news?d=200703) Like the physical infrastructure of roads, bridges, power grids, telephone lines, and water systems that support modern society, “cyberinfrastructure” refers to the distributed computer, information and communication technologies combined with the personnel and integrating components that provide a long-term platform to empower the modern scientific research endeavor. (Report of the National Science Foundation Blue-Ribbon Advisory Panel on Cyberinfrastructure; http://www.nsf.gov/od/oci/reports/toc.jsp) We propose to add cyberinfrastructure to the class-here note at 004. Mobile computing Webopedia treats Mobile computing as a category (http://webopedia.com/Mobile_Computing/) encompassing a broad range of topics, for example, hardware (e.g., handhelds), networking (e.g., wireless computing), and operating systems (e.g., Symbian OS). We propose to treat mobile computing as a class-here concept at 004 with a scatter see reference for specific aspects of mobile computing. Netbook computers We propose to add netbook computers to the class-here note at 004.16 Personal computers, where it joins with microcomputers, laptop, notebook, pen, portable, tablet, and wearable computers, and workstations. Web servers While the term “web server” has both a hardware-oriented sense and a software-oriented sense, Webopedia and pcmag.com agree that the hardware-oriented sense predominates: Web server: A computer that delivers (serves up) Web pages. Every Web server has an IP address and possibly a domain name. For example, if you enter the URL http://www.pcwebopedia.com/index.html in your browser, this sends a request to the server whose domain name is pcwebopedia.com. The server then fetches the page named index.html and sends it to your browser. (http://www.webopedia.com/TERM/W/Web_server.html) Web server: A computer that runs a Web site. Using the HTTP protocol, the Web server delivers Web pages to browsers as well as other data files to Web-based applications. The Web server includes the hardware, operating system, Web server software, TCP/IP protocols and site content (Web pages, images and other files). (http://www.pcmag.com/encyclopedia_term/0,2542,t=Web+server&i=54342,00.asp) 2 As web servers represent the essence of client-server computing, the best placement for them is in 004.36, where web servers join client-server computing in the class-here note. We propose to add class-elsewhere notes to refer between web servers at 004.36 and web services at 006.78. Cloud computing The pcmag.com encyclopedia provides this definition/description of cloud computing: “Using the Web server facilities of a third party provider on the Internet (the "cloud") to store, deploy and run applications. Cloud computing takes two forms. It may refer to ‘utility’ computing in which only the hardware and software infrastructure (operating system, databases, etc.) are offered, or it may refer to ‘software as a service’ (SaaS), which includes the business applications as well.” Other characterizations of cloud computing differentiate among infrastructure-as-a-service, platform-as-a-service, and software-as-a-service. (http://www.pcmag.com/encyclopedia_term/0%2C2542%2Ct%3Dcloud+computing&i%3D5796 4%2C00.asp) Since cloud computing can have different meanings, the best comprehensive works number is not immediately obvious. The broad scope of the term—it may refer to computing capacity, storage, networking, database services, software, etc—argues for a number in 004. What all uses of the term have in common is third-party provision of computing resources over the Internet, which leads us to 004.678 Internet. But there is sufficient literary warrant for an expansion here; we propose 004.6782. A scatter see reference is added to class works on specific aspects of cloud computing with the aspect. Aspect-oriented programming Aspect-oriented programming refers to a programming paradigm that focuses on the modularization of source code according to aspects / concerns / functionality, including the isolation of concerns that cut across a number of concerns/functions (e.g., printing, logging). Aspect-oriented programming grew out of object-oriented programming and thus belongs in 005.117 Object-oriented programming. Since variously-named programming paradigms come and go, it could be counterproductive to explicitly mention aspect-oriented programming at 005.117, but aspect-oriented programming should be indexed to 005.117. Integrated development environments Integrated development environments (IDEs) provide programmers an integrated set of tools (e.g., text editor, compiler, build mechanism, debugger) with which to develop software. The various components of IDEs are associated with multiple classes in 005: application generators and text editors specially designed to assist in coding programs are in the including note at 005.13 Programming languages; debugging is in the caption at 005.14 Verification, testing, measurement, debugging; interpreters, compilers, and assemblers are subdivisions of 005.45 Programming language translators. The major question is whether one wants to represent that an IDE qualifies as a systems program (as interpreters, compilers, and assemblers are treated) or as an aid in programming (as application generators, text editors specially designed to assist in coding programs, and debuggers are treated). The rule of application sides with the latter. We 3 therefore propose to add integrated development environments to the class-here note at 005.1 Programming. (The integration of various tools in support of programming argues for treating IDEs as a topic that approximates the whole of programming.) (See note below Application frameworks.) Application frameworks The pcmag.com encyclopedia characterizes an application framework as “a set of common software routines that provides a foundation structure for developing an application. Frameworks take the tedium out of writing all the program code for an application from scratch. Objectoriented application frameworks, which are the norm today, are structured as a class library.” Application frameworks can assist in building general-purpose applications or specific types of applications. As a set of routines, an application framework is software, but not an application; its purpose is to support the development of programs. As such the rule of application leads to application frameworks being associated with 005.1 Programming, where we propose its addition to the class-here note. (http://www.pcmag.com/encyclopedia_term/0%2C2542%2Ct%3Dapplication+framework&i%3 D37907%2C00.asp ) (Note regarding Integrated development environments and Application frameworks: In our editorial team meetings the question was raised whether these topics ought to be in the same number with software compatibility, portability, reliability, and reusability [which are in the class-here note at 005]. Our conclusion was that they should not. Software compatibility, portability, reliability, and reusability relate both to how programming is done and to the result of the programming process, whereas Integrated development environments and Application frameworks apply only to supporting the programming process.) Computational intelligence In the period between 2005 and 2009, the LCSH Computational intelligence has been assigned to works classed in 006 an average of 75 times a year. It is not immediately clear whether computational intelligence should be associated with 006.3 Artificial intelligence or with 006.32 Neural nets (Neural networks). On the one hand, the journal Computational intelligence “promotes and stimulates research in the field of artificial intelligence,” focusing on the following topic areas: machine learning; web intelligence and semantic web; discovery science and knowledge mining; agents and multiagent systems; knowledge-based systems (http://www.wiley.com/bw/journal.asp?ref=0824-7935). The multivolume work Foundations of computational intelligence, published in 2009, also casts its net widely, with separate volumes on learning and approximation; approximate reasoning; global optimization; bio-inspired data mining; function approximation and classification; and data mining. On the other hand, the scope of the IEEE Computational Intelligence Society is stated somewhat more narrowly: “the theory, design, application, and development of biologically and linguistically motivated computational paradigms emphasizing neural networks, connectionist systems, genetic algorithms, evolutionary programming, fuzzy systems, and hybrid intelligent systems in which these paradigms are contained” (http://ieee-cis.org/about_cis/scope/). As the breadth of the name is likely to attract a wide array of topics, adding computational intelligence at 006.3 is considered 4 the wiser option; indeed, it approximates the whole of 006.3 and should be added to the classhere note. Web application frameworks According to wiseGEEK, “Web application frameworks are software tools that are commonly used to aid in the creation and management of various types of online applications. A web application framework can involve designing and launching pages for a website or provisioning various applications to provide a wide range of web services to consumers. The framework tends to include all the elements needed to accomplish the desired tasks, thus eliminating the need to secure the necessary tools from different sources” (http://www.wisegeek.com/what-is-a-webapplication-framework.htm). Web application frameworks belong in 006.76, alongside web programming. Rich Internet applications Rich Internet applications are web applications that function like desktop applications; typically they depend on having software such as ActiveX, Java, or Flash installed on the client machine. It is proposed to add them to the including note at 006.78. Augmented reality The Webopedia entry for augmented reality states: An augmented reality system generates a composite view for the user that is the combination of the real scene viewed by the user and a virtual scene generated by the computer that augments the scene with additional information. The virtual scene generated by the computer is designed to enhance the user's sensory perception of the virtual world they are seeing or interacting with. The goal of Augmented Reality is to create a system in which the user cannot tell the difference between the real world and the virtual augmentation of it. (http://www.webopedia.com/TERM/A/Augmented_Reality.html) Characterizations of augmented reality differ on whether augmented reality is a special kind of virtual reality or whether virtual reality is an aspect of virtual reality. The happiest compromise is to treat both augmented reality and virtual reality in the same number. However, just adding augmented reality to the caption at 006.8 Virtual reality is not enough, since the definition note there is specific to virtual reality. The definition note also needs modification to cover both. Web 2.0 The Webopedia entry for Web 2.0 (http://www.webopedia.com/TERM/W/Web_2_point_0.html) states: Web 2.0 is the term given to describe a second generation of the World Wide Web that is focused on the ability for people to collaborate and share information online. Web 2.0 basically refers to the transition from static HTML Web pages to a more dynamic Web that is 5 more organized and is based on serving Web applications to users. Other improved functionality of Web 2.0 includes open communication with an emphasis on Web-based communities of users, and more open sharing of information. Over time Web 2.0 has been used more as a marketing term than a computer-science-based term. Blogs, wikis, and Web services are all seen as components of Web 2.0. Web 2.0 was previously used as a synonym for Semantic Web, but while the two are similar, they do not share precisely the same meaning. The Wikipedia article for Web 2.0 sheds this further light: The term [Web 2.0] is closely associated with Tim O'Reilly because of the O'Reilly Media Web 2.0 conference in 2004. Although the term suggests a new version of the World Wide Web, it does not refer to an update to any technical specifications, but rather to cumulative changes in the ways software developers and end-users use the Web. Whether Web 2.0 is qualitatively different from prior web technologies has been challenged by World Wide Web inventor Tim Berners-Lee, who called the term a "piece of jargon"— precisely because he intended the Web to embody these values in the first place. As to the possible relationship between Web 2.0 and the Semantic Web, the Webopedia entry on Web 3.0 and a section on Web 3.0 in the Wikipedia Web 2.0 article offer the following: Web 3.0: The term used to describe the evolution of the Web as an extension of Web 2.0. This definition of Web 3.0 is the popular view held by Tim O'Reilly. In contrast, Nova Spivack defines Web 3.0 as connective intelligence; connecting data, concepts, applications and ultimately people. While some call the The [sic] Semantic Web 'Web 3.0', Spivack's opinion is that The Semantic Web is just one of several converging technologies and trends that will define Web 3.0. Not much time passed before "Web 3.0" was coined. Definitions of Web 3.0 vary greatly. Amit Agarwal states that Web 3.0 is, among other things, about the Semantic Web and personalization. Andrew Keen, author of The Cult of the Amateur, considers the Semantic Web an "unrealisable abstraction" and sees Web 3.0 as the return of experts and authorities to the Web. For example, he points to Bertelsman's deal with the German Wikipedia to produce an edited print version of that encyclopedia. Others still such as Manoj Sharma, an organization strategist, in the keynote A Brave New World Of Web 3.0 proposes that Web 3.0 will be a "Totally Integrated World" - cradle-to-grave experience of being always plugged onto the net. CNN Money's Jessi Hempel expects Web 3.0 to emerge from new and innovative Web 2.0 services with a profitable business model. Conrad Wolfram has argued that Web 3.0 is where "the computer is generating new information", rather than humans. Three options can be considered for treatment of Web 2.0: (1) grouped with “Web 1.0” / general works on the World Wide Web, (2) expansion for Web 2.0, or (3) grouped with Semantic Web. The material quoted above indicates that “Web 2.0” does not have a single, widely-recognized meaning and that development from an “information-only” WWW to a more collaborative WWW has been incremental, which argues against the second option. Although “Web 2.0” has 6 at times been used to refer to the Semantic Web, that usage is not current. Thus, we recommend the first of these options. As it is not clear that the terminology “Web 2.0” will have staying power, we recommend that Web 2.0 be used as an electronic-only index term for 025.042, the interdisciplinary number for World Wide Web, and not be mentioned explicitly in the schedule entry there. 004 Computer science Class here data processing; selection and use of computer hardware; electronic computers; electronic digital computers; computer systems (computers, their peripheral devices, their operating systems); cyberinfrastructure; central processing units; computer reliability; interactive, online processing; mobile computing; comprehensive works on hardware and programs in electronic data processing Class computer modeling and simulation in 003.3. Class computer science and data processing applied to a specific subject with the subject, plus notation 0285 from Table 1, e.g., data processing in banking 332.10285 For computer programming, programs, data, see 005; for special computer methods, see 006; for engineering, manufacture, repair of computers, see 621.39. For a specific aspect of mobile computing, see the aspect, e.g., handheld computing devices 004.167, wireless communications 004.6, mobile operating systems for handheld computing devices 005.446 See also 025.04 for automated information storage and retrieval; also 303.4834 for computers as a cause of social change; also 343.0999 for computer law; also 364.168 for financial and business computer crimes; also 371.334 for computerassisted instruction (CAI); also 658.05 for data processing in management; also 794.8 for computer games See Manual at 004–006 vs. 621.39; also at 004 vs. 005; also at 510, T1—0151 vs. 004–006, T1—0285 004.16 *Personal computers Class here microcomputers; laptop, netbook, notebook, pen, portable, tablet, wearable computers; workstations; comprehensive works on midrange and personal computers For midrange computers, see 004.14 7 004.36 *Distributed processing Including systems analysis and design, computer architecture, performance evaluation Class here client-server computing, web servers; grid computing Class web services in 006.78 See also 004.6 for computer communications networks; also 005.758 for distributed databases 004.678 *Internet Including extranets, virtual private networks Class here World Wide Web Interdisciplinary works on World Wide Web relocated to 025.042 Class a specific regional or national network with the area served, e.g., BiblioRedes (Chilean network) 004.6780983 For Internet, World Wide Web as information systems, see 025.042 See Manual at 004.678 vs. 006.7, 025.042, 384.33 004.678 2 Cloud computing For a specific aspect of cloud computing, see the aspect, e.g., grid computing 004.36, web services 006.78 8 005.1 *Programming Class here application frameworks, application programming, computer algorithms, integrated development environments, software engineering Class algorithms discussed solely from a theoretical perspective, without regard to computer implementation, in 518.1. Class a specific application of programming within computer science with the application in 005.4–005.8 or 006, e.g., programming of computer graphics 006.66 For programming for specific types of computers, for specific operating systems, for specific user interfaces, see 005.2 See Manual at 005.1–005.2 vs. 005.42; also at 005.1 vs. 005.3 006.3 *Artificial intelligence Class here comprehensive works on artificial intelligence and cognitive science [formerly 153], computational intelligence, intelligent agents, multi-agent systems, question-answering systems Class robotics in 629.892 For cognitive science, see 153 See also 006.4 for pattern recognition not used as a tool of artificial intelligence See Manual at 006.3 vs. 153 006.76 *Programming Class here Internet programming, web application frameworks, web programming For programming for specific types of computers, for specific operating systems, for specific user interfaces, see 006.77 9 006.78 Programs Including rich Internet applications (RIAs), web services Class here multimedia authoring programs, software; multimedia software Add to base number 006.78 the numbers following 005.3 in 005.31–005.39, e.g., multimedia authoring software that runs on Apple iMac® 006.7865 Class web servers in 004.36 006.8 *Augmented and vVirtual reality A combination of computer software and hardware that adds computer-generated information to the visual presentation of a real environment or that gives an illusion of being in an artificial environment or a remote real environment and gives the user an ability to manipulate objects in that environment. The illusion is created by visual, auditory, and other sensory data provided by the computer system to the user Standard subdivisions are added for either or both topics in heading *Use notation 019 from Table 1 as modified at 004.019 10