Managing graphic databases
Abstract
A public graphic library coupled to a WAN offers access to a database of graphics, while another graphic library inside the firewall of an enterprise network provides graphics to users in an enterprise. Transferring graphics from the public graphic library to the enterprise graphic library enables enterprise users to access content residing on the public graphic library while the enterprise network is disconnected or otherwise isolated from the WAN. A remote library director in a drawing software program directs communication between a user computer and either the public graphic library or the enterprise graphic library. The configuration of this director specifies the library from which a user accesses graphics.

Term
Term ended
Projected expiry passed 7 February 2025, 1.6 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
20 claims: 3 independent, 17 dependent
- 1A method for loading a graphic onto a computer comprising the steps of:entering a search term associated with the graphic into the computer;directing communications between the computer and a selected one of a plurality of graphic libraries;identifying the graphic in the selected graphic library based on the search term;communicating information associated with the graphic from the selected graphic library to the computer;displaying the information at the computer;selecting the graphic based on the information;and responsive to selecting the graphic, loading the graphic onto the computer from the selected graphic library.
- 2The method of Claim 1, wherein the directing step comprises configuring software to communicate with one of a private graphic library on a local-area network and a public graphic library on a wide-area network.
- 3The method of Claim 1, wherein the directing step comprises writing an address for the selected graphic library into a configuration database associated with an operating system of the computer.
- 4The method of Claim 1, wherein the directing step further comprises changing a wide-area network address to a local-area network address in the event that the selected graphic library comprises a private graphic database on the local area network.
- 5The method of Claim 1, wherein the information comprises metadata.
- 6The method of Claim 1, wherein the graphic library is located inside a firewall of an enterprise.
- 7The method of Claim 1, wherein the selected graphic library is located at an intranet site, and wherein the identifying step comprises generating a document associated with the graphic and transmitting the document to an active server page of the intranet site.
- 8A system for managing graphics comprising:a first graphic database coupled to a first network;a second graphic database, coupled to a second network and positioned at a first location, comprising at least a portion of the first graphic database;and a computer, coupled to the second network and positioned at a second location, comprising a director configurable to a first state and a second state, wherein the director directs communication from the computer to the second graphic database responsive to the first state.
- 9The system of Claim 8, wherein:the first state comprises a first address that points to the second database on the second network;and the second state comprises a second address that points to the first database on the first network.
- 10The system of Claim 8, wherein the system further comprises a communication path for transferring graphics from the first graphic database to the second graphic database.
- 11The system of Claim 10, wherein the communication path is operable to transfer a physical medium.
- 12The system of Claim 8, wherein:the first graphic database comprises a public graphics database;the second graphic database comprises a private graphics database;the first network is a wide-area network;the second network is a local-area network;and the wide-area network is coupled to the local-area network through a firewall.
- 13The system of Claim 8, wherein:the first network is a public network;the second network is a private network isolated from the public network;and the director directs search communication between the computer and the second database, the system further comprising a second computer, coupled to the public network, comprising a second director that directs communication between the second computer and the first database.
- 14The system of Claim 8, wherein:the first network comprises a wide-area network;the first database comprises public content;the second network is an enterprise network;and the second database further comprises enterprise-specific content.
- 15A computer-readable medium having computer-executable instructions for performing the following steps:pointing to an address on an enterprise network-;sending a graphic search request for a graphic to the address;receiving metadata associated with the graphic from the address in response to the graphic search request;sending a request for the graphic to the address based on the received metadata;and receiving the requested graphic.
- 16The computer-readable medium of Claim 15, wherein the pointing step further comprises setting a registry key.
- 17The computer-readable medium of Claim 15, wherein the address comprises an active server page and wherein sending the graphic search request comprises sending an extensible markup language document to the active server page.
- 18The computer-readable medium of Claim 15, further having a computer-executable instruction for performing the step of placing the received graphic on a drawing page.
- 19The computer-readable medium of Claim 15, further having a computer-executable instruction for performing the step of receiving a uniform resource locator of the requested graphic, wherein receiving the requested graphic comprises downloading the requested graphic according to the uniform resource locator.
- 20The computer-readable medium of Claim 19, wherein the enterprise network is a private network, and wherein the uniform resource locator locates the graphic on a server in the private network.
Independent claims20
117 paragraphs in 5 sections, as filed
TECHNICAL FIELD
0001The present invention relates to managing graphical databases in association with communication networks and more specifically to searching and maintaining graphic databases for access in enterprise networks.
BACKGROUND OF THE INVENTION
0002Computer programs are widely available for creating drawings and other documents with graphic content. These programs incorporate a variety of tools to aid a user in creating and manipulating graphics, such as icons, images, drawings, diagrams, clip art, artwork, pictures, symbols, line drawings, and similar visual content through a computer and its associated user interface ("UI''). In addition to creating graphics from scratch, a user may acquire a predefined graphic from a graphic database and subsequently customize its color, size, orientation, shape, or other feature.
0003Suppliers of graphics frequently supply graphic databases written onto one or more compact disk read-only memory ("CD-ROM") devices or similar optical medium. Configuring the graphics in the database in an industry-standard format facilitates compatibility with software programs from a wide range of vendors. Alternatively, a software vendor may supply a proprietary graphic database coupled to a drawing software package. The process of installing the drawing software onto a computer loads the graphic database onto the computer's hard drive so a user can quickly access the database's graphics.
0004In addition to providing a graphic database installed on a user's hard drive, a software vendor may provide access to a central graphic database over a wide-area network ("WAN"). For example, a vendor may offer access over the Internet, which is a WAN, to a public database of graphic content using a configuration that provides exclusive access to users of the vendor's software. A module in the software that is resident on the user's computer directs the software to communicate over the Internet with the vendor's site when the user requests graphic content. The vendor may regularly append and update the public database to enhance the value of the graphic database to its customers and to adapt to trends in the graphic preferences of users.
0005While conventional WAN-based public graphic databases are suited to graphic updates, the graphic file sizes can impede the speed with which a remote user accesses graphics from such a database. To address file transfer speed limitations, the communication link between the user and the remote database may include an application server page ("ASP") that functions as a database gateway and facilitates expeditious information transfer. The ASP accepts user search requests, communicates with a server to seek graphics that meet the search terms, and returns metadata to the user. If a user determines that a graphic is acceptable based on the metadata, the user may elect to download the full graphic file.
0006Although relaying metadata through ASPs promotes efficient transfer of graphics, such transfer is generally implemented over a WAN, such as the Internet. Data that is transferring across such a WAN encounters potential time delays associated with the physical expanse of the WAN, communication bottlenecks such as WAN access interfaces, and other communication impediments.
0007Another problem with typical WAN-based graphic databases is that all users do not have the Internet connectivity generally associated with accessing the database. Certain enterprises have internal computer networks that are disconnected, locked down, or otherwise isolated from the Internet or other WAN. Some users' connectivity may be intermittent, slow, or unreliable. Furthermore, a fault in the WAN communication link between the user and the WAN-based graphic can disrupt a user's database access.
0008In addition to having communication-related limitations, WAN-based graphic databases are usually public databases that offer the same content to all the users that they serve. The content is often optimized to maximize the number of graphic choices that are available to users. Such databases generally lack provisions to provide a user with custom graphics or graphic sets that are specifically tailored to meet the standardization requirements of a specific user or set of users. That is, conventional WAN-based databases are usually incompatible with the needs of enterprises that seek to provide their internal users with a standard, consistent graphic set.
0009To address these representative deficiencies in the graphic database art, what is needed is a capability for managing graphic databases that serves users that are disconnected or otherwise isolated from the Internet or other WAN. Further a capability is needed to provide enterprise-based users with graphic sets that are tailored to meet specific content needs of the enterprise. Such capabilities would benefit users that need graphic content for insertion into drawings and other documents.
SUMMARY OF THE INVENTION
0010The present invention supports providing users in an enterprise with access to a database of graphics. In one aspect of the present invention, a public graphic library is accessible to software users via the Internet or other network that spans a large geographic area and/or offers unrestricted access. Using Internet connectivity, users can download graphics for insertion into drawings and other documents. An administrator of this public graphic library can regularly update the graphic content of the library. Another graphic library can be coupled to a computer network in an enterprise, such as a business or other organization, to serve users of the enterprise that lack open access to the public graphic library. This enterprise graphic library can include content, in whole or in part, from the public graphic library. Access to the enterprise graphic library can be restricted to the enterprise's users and others having authorization.
0011In another aspect of the present invention, a software program or module can include a configuration that can point either to the public graphic library on the Internet or the enterprise graphic library on the enterprise's network. Configuring the software so that it points to the public graphic library can direct graphic communication between the software and the public graphic library so a user can download graphics from the public graphic library over the Internet. On the other hand, configuring the software so that it points to the enterprise graphic library can direct graphic communication between the software and the enterprise graphic library so a user can download graphics from the enterprise's graphic library over the enterprise's network. The configuration can include a network address that points to the network location of a graphic library. The address can be written into a configuration database associated with the operating system of the computer upon which the software runs, for example setting a registry key.
0012In another aspect of the present invention, the public graphic library and the enterprise graphic library can include parallel functionality. Duplicating the functionality of the public graphic library in the enterprise graphic library can facilitate the software communicating with the enterprise library in large part as if it was the public graphic library. The software can communicate with either the enterprise graphic library or the public graphic library using common communication methods such as protocols and standards. An information gateway that provides a centralized communication point in the public graphic library can correspond to an information gateway in the enterprise graphic library that provides parallel functionality. These gateways can be ASPs.
0013In yet another aspect of the present invention, a user can search a remote graphic library for a suitable graphic. The user can enter search terms that can be transmitted to the library. The library can return a list of graphics that match the search term along with a textual description and an abridged graphic, such as a bitmapped image, for each listed graphic. When the user selects a specific graphic from the list for insertion into a drawing, the library can transmit the full, unabridged graphic. Transmitting a list of abridged images in preparation for transmitting a full graphic from the list can promote timely transfer of graphical data.
0014The discussion of graphic databases presented in this summary is for illustrative purposes only. Various aspects of the present invention may be more clearly understood and appreciated from a review of the following detailed description of the disclosed embodiments and by reference to the drawings and claims.
BRIEF DESCRIPTION OF THE DRAWINGS
0015<ul id="ul0001" list-style="none" compact="compact"><li>Figures 1 is a functional block diagram illustrating an operating environment according to an exemplary embodiment of the present invention.</li><li>Figure 2 is a functional block diagram illustrating an enterprise coupled to a public graphic library via a WAN and another enterprise coupled to an enterprise graphic library via a LAN according to an exemplary embodiment of the present invention.</li><li>Figure 3 illustrates a drawing software module with a remote library director that directs communication to either a public graphic library or an enterprise graphic library according to an exemplary embodiment of the present invention.</li><li>Figures 4A, 4B, and 4C illustrate local, enterprise, and public databases according to exemplary embodiments of the present invention.</li><li>Figure 5 illustrates a user interface for setting graphic search preferences according to an exemplary embodiment of the present invention.</li><li>Figures 6A and 6B illustrate selecting a graphic from a search window and inserting the selected graphic on a drawing page according to an exemplary embodiment of the present invention.</li><li>Figure 7 illustrates a process for searching a remote graphic library and downloading graphics according to an exemplary embodiment of the present invention.</li><li>Figures 8A and 8B illustrate a routine for locating graphics according to an exemplary embodiment of the present invention.</li><li>Figures 9A and 9B illustrate a routine for downloading a graphic and inserting it into a drawing according to an exemplary embodiment of the present invention.</li></ul>
DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS
0016The present invention is directed to managing, networking, and accessing graphic databases in a manner that provides database access to enterprise-based users that are disconnected or otherwise isolated from the Internet or another WAN and/or that are impeded from downloading graphics from WAN-based graphic databases.
0017Turning now to discuss each of the drawings presented in Figures 1-9, in which like numerals indicate like elements throughout the several figures, an exemplary operating environment and an exemplary embodiment of the present invention will be described in detail.
0018Figure 1 illustrates an exemplary operating environment for implementation of the present invention according to one embodiment of the present invention. The exemplary operating environment includes a general-purpose computing device in the form of a conventional personal computer 120, as exemplified by the architectural overview <b>100</b> in Figure 1. Generally, the personal computer <b>120</b> includes a processing unit <b>121,</b> a system memory <b>122,</b> and a system bus <b>123</b> that couples various system components including the system memory <b>122</b> to the processing unit <b>121.</b> The system bus <b>123</b> may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. The system memory <b>122</b> includes a read-only memory ("ROM") <b>124</b> and a random access memory ("RAM") <b>125.</b> A basic input/output system ("BIOS") <b>126,</b> containing the basic routines that help to transfer information between elements within the personal computer <b>120,</b> such as during startup, is stored in ROM <b>124.</b>
0019The personal computer <b>120</b> further includes a hard disk drive/hard disk <b>127,</b> a magnetic disk drive <b>128</b> for reading from or writing to a removable magnetic disk <b>129,</b> and an optical disk drive <b>130</b> for reading from or writing to a removable optical disk <b>131</b> such as a compact disk read-only memory ("CD-ROM") or other optical media. The hard disk drive <b>127,</b> magnetic disk drive <b>128,</b> and optical disk drive <b>130</b> are each connected to the system bus <b>123</b> by a hard disk drive interface <b>132,</b> a magnetic disk drive interface <b>133,</b> and an optical disk drive interface <b>134,</b> respectively.
0020Although the exemplary environment described herein employs a hard disk <b>127,</b> a removable magnetic disk <b>129,</b> and a removable optical disk <b>131,</b> it should be appreciated by those skilled in the art that other types of computer readable media which can store data that is accessible by a computer, such as magnetic cassettes, flash memory cards, digital video disks, Bernoulli cartridges, RAMs, ROMs, and the like, may also be used in the exemplary operating environment. The drives and their associated computer readable media provide nonvolatile storage of computer-executable instructions, data structures, program modules, and other data for the personal computer <b>120.</b>
0021A number of program modules may be stored on the hard disk <b>127,</b> magnetic disk <b>129,</b> optical disk <b>131,</b> ROM <b>124,</b> or RAM <b>125,</b> including an operating system 135 and a drawing software module <b>175.</b> Program modules include routines, sub-routines, programs, objects, components, data structures, etc., which perform particular tasks or implement particular abstract data types. Aspects of the present invention may be implemented in the form of a drawing software module <b>175.</b> Storing frequently used data on the hard drive <b>127</b> facilitates expeditious access by active software running on the computer <b>120,</b> for example the drawing software module <b>175</b> has ready access to graphics from the local graphic database <b>180.</b>
0022A user may enter commands and information into the personal computer 120 through input devices, such as a keyboard 140 and a pointing device <b>142.</b> Pointing devices may include a mouse, a trackball, and an electronic pen that can be used in conjunction with an electronic tablet. Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, scanner, or the like. These and other input devices are often connected to the processing unit <b>122</b> through a serial port interface <b>146</b> that is coupled to the system bus <b>123,</b> but may be connected by other interfaces, such as a parallel port, game port, a universal serial bus ("USB"), or the like. A display device <b>147</b> may also be connected to the system bus <b>123</b> via an interface, such as a video adapter 148. In addition to the monitor <b>147,</b> personal computers typically include other peripheral output devices (not shown), such as speakers and printers.
0023The pointing device <b>142</b> can control a pointer, such as a cursor on a displayed, or electronic, page. Moving a mouse or a trackball, for example, can adjust the position of the pointer on the displayed page. The pointing device <b>142</b> can also include a button or similar feature through which a user can communicate with software routines executing in the computer system <b>120.</b> For example, a user of a drawing software package can position the pointer over an object on an electronic page and depress the button to select the object. With the object selected and the pointing device button in the depressed state, the user can reposition the object on the page and release the click to set the object into its new position on the page using a drag-and-drop gesture.
0024The personal computer <b>120</b> may operate in a networked environment using logical connections to one or more remote computers <b>149.</b> A remote computer <b>149</b> may be another personal computer, a server, a client, a router, a network personal computer, a peer device, or other common network node. While a remote computer <b>149</b> typically includes many or all of the elements described above relative to the personal computer <b>120,</b> only its memory storage device <b>150</b> has been illustrated in Figure 1. The logical connections depicted in Figure 1 include a local-area network ("LAN") <b>151</b> and a WAN <b>152.</b> Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets, and the Internet.
0025When used in a LAN networking environment, the personal computer <b>120</b> is often connected to the LAN <b>151</b> through a network interface or adapter <b>153.</b> When used in a WAN networking environment, the personal computer <b>120</b> typically includes a modem <b>154</b> or other apparatus for establishing communications over a WAN <b>152,</b> such as the Internet. The modem <b>154,</b> which may be internal or external, is connected to a system bus <b>123</b> via serial port interface <b>146.</b> In a networked environment, programs such as the drawing software module <b>175,</b> can access information, such as a graphic, from a remote database <b>190</b> of information via the LAN <b>151</b> or the WAN <b>152.</b> It will be appreciated that the network connections shown are exemplary and other provisions for establishing a communications link between the computers may be used.
0026Moreover, those skilled in the art will appreciate that the present invention may be implemented in other computer system configurations, including handheld devices, multiprocessor systems, microprocessor based or programmable consumer electronics, network personal computers, minicomputers, mainframe computers, and the like. The invention may also be practiced in distributed computing environments, where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
0027In one exemplary embodiment of the present invention, the present invention includes hardware and software components illustrated in Figure 1. That is, an exemplary embodiment of the present invention includes a computer <b>120,</b> LAN 151, WAN <b>152,</b> drawing software module <b>175,</b> and one or more types of remote databases <b>175,</b> as will be discussed below in reference to Figures 2-9.
0028The term "enterprise," as used herein, refers to an organization, such as a business, school, government department, military base, association, political unit, or other institution, that utilizes computers. An enterprise can be located in a single facility, physically concentrated in a campus or other collection of buildings, or dispersed across a geographic area.
0029The term "enterprise network," as used herein, refers to a computer network, such as a LAN <b>151</b> or campus-area network ("CAN"), that serves a specific enterprise. The terms "LAN" and "local-area network," as used herein, refer to a computer network that spans a relatively small area. Most LANs <b>151</b> are confined to a single building or group of buildings. An Ethernet is an example of a LAN <b>151.</b>
0030An "intranet," as used herein, refers to an enterprise network based on Internet protocols that is accessible only by the enterprise's constituents and others with authorization. Secure intranets are either disconnected from the Internet or otherwise isolated by a firewall or other device that restricts network access. An intranet's websites look and function in a manner similar to Internet Web sites.
0031The terms "WAN" and "wide-area network,'' as used herein, refer to a computer network that spans a relatively large geographic area and typically includes a connection between two or more LANs <b>151.</b> The Internet is a WAN <b>152</b> that is a global network connecting millions of computers. A metropolitan-area network ("MAN") is type of WAN <b>152</b> that is configured for a town, city, or metropolitan area. While WANs <b>152</b> often include communication links through a public network such as the telephone system, they can also include leased lines or satellites.
0032The term "public," as used herein in connection with a network, library, or database, refers to a network, library, or database having access that is not restricted to the constituents of a specific enterprise and others having authorization. For example, a network, library, or database that is accessible only to purchasers of a specific software package is typically public since those purchasers come from multiple businesses or other enterprises. In contrast, the term "private," as used herein in connection with a network, library, or database, refers to a network, library, or database this is accessible only to a defined set of users and others with authorization. Private databases often have content that is customized to the needs of a specific enterprise, for example.
0033In addition to these networking terms, other terminology will be referenced and described in conjunction with the discussions below. The present invention includes multiple computer programs which embody the functions described herein and illustrated in the exemplary displays, functional block diagrams, and the appended flow charts. However, it should be apparent that there could be many different ways of implementing the invention in computer programming, and the invention should not be construed as limited to any one set of computer program instructions. Further, a skilled programmer would be able to write such a computer program to implement the disclosed invention without difficulty based on the exemplary displays, functional block diagrams, and flow charts and associated description in the application text, for example.
0034Therefore; disclosure of a particular set of program code instructions is not considered necessary for an adequate understanding of how to make and use the invention. The inventive functionality of the computer program aspects of the present invention will be explained in more detail in the following description in conjunction with the remaining figures illustrating the functions and program flow.
0035Certain steps in the processes described below must naturally precede others for the present invention to function as described. However, the present invention is not limited to the order of the steps described if such order or sequence does not alter the functionality of the present invention. That is, it is recognized that some steps may be performed before or after other steps or in parallel with other steps without departing from the scope and spirit of the present invention.
0036Processes and components of an exemplary embodiment of the present invention will be further described in reference to Figures 2 - 9. Turning now to Figure 2, this figure is a functional block diagram <b>200</b> illustrating an enterprise <b>205</b> coupled to a public graphic library <b>210</b> via a WAN <b>152</b> and another enterprise <b>215</b> coupled to an enterprise graphic library <b>220</b> via a LAN <b>151</b> according to an exemplary embodiment of the present invention. The enterprise <b>215</b> with the enterprise graphic library <b>220</b> is illustrated in a state of disconnection from the WAN <b>152</b> that serves as a bridge to the public graphic library <b>210.</b>
0037The WAN-connected enterprise <b>205</b> includes a LAN <b>151</b> of computers <b>120</b> with a router <b>230</b> that provides access to the WAN <b>152.</b> This communication system affords the users of the enterprise <b>205,</b> who interface with these computers <b>120,</b> access resources over the WAN <b>152.</b> Although Figure 2 depicts a single WAN-connected enterprise <b>205,</b> numerous WAN-connected enterprises <b>205</b> and individual users typically couple to the public graphic library <b>210</b> from various sites on the WAN <b>152.</b>
0038In one embodiment of the present invention, the WAN <b>152</b> is the Internet <b>152</b> and the computers <b>120</b> and router <b>230</b> communicate with the Internet <b>152</b> using the Internet's standard suite of communication protocols. In one embodiment of the present invention, this protocol is transmission control protocol/Internet protocol ("TCP/IP").
0039A public graphics library <b>210</b> resides on the WAN <b>152</b> at a location that is distinct from the WAN-connected enterprise <b>205.</b> The public graphics library <b>210</b> includes a public graphic database <b>235</b> associated with an Internet server <b>225.</b> The public graphic database <b>235</b> is a database of public graphic content that is accessible to the computers <b>120</b> in the WAN-connected enterprise <b>205</b> and other individual users and entities that have access to the WAN <b>152</b> from an Internet service provider ("ISP") or other access arrangement.
0040The public graphic database <b>235</b> contains a wide assortment of graphics, such as drawings, diagrams, clip art, symbols, line drawings, images, and other visual content useful to the public graphic library's clients. Typical content includes two-dimensional and perspective line representations of flow chart shapes, electrical symbols, marketing diagrams, computing illustrations, call out bubbles, and many other images.
0041In one exemplary embodiment of the present invention, the content of the public graphic database <b>235</b> is voluminous so as to meet the varied image needs and preferences of a wide range of users. For example, this database <b>235</b> might feature an assortment of styles of electrical symbols, each style meeting the standards of a different standards-governing body or the preferences of an engineering firm. Users needing to comply with the European standards might select one electrical transformer symbol while those seeking to comply with United States standards might select a different symbol representative of a transformer.
0042An administrator of the public graphic library <b>210</b> regularly updates the public graphic database <b>235</b> so it is current with changes in drawing standards and trends in user preferences. The administrator also analyzes the graphic requests that arrive at this library <b>210</b> and responds by augmenting content in popular areas and filling in content gaps as they become apparent. Consequently, the public graphic database <b>235</b> evolves and expands over time.
0043In one exemplary embodiment of the present invention, a vendor of drawing software <b>175</b> configures and administers the public graphic library <b>210</b> to restrict accessibility to users of the vendor's software <b>175.</b> In other words, a software vendor can design its drawing software modules <b>175</b> and the public graphic library <b>210</b> so that the public graphic database <b>235</b> is exclusively compatible with this software <b>175.</b>
0044In association with the graphic content, the public graphic library <b>210</b> contains metadata. Each metadata entry is linked to a specific graphic, and each graphic is linked to a specific metadata entry. The metadata for each graphic includes a searchable textual description and an abridged image, such as a bit-mapped image, that has significantly fewer digital bytes that the graphic itself. In order to conserve communication bandwidth and expedite communication, the public graphic library <b>210</b> transmits metadata prior to sending a graphic over the WAN <b>152</b> to a user. If the user determines that the received metadata indicates that a graphic is suitable, the user requests the full graphic and the public graphic library <b>210</b> complies with the request.
0045Like the WAN-connected enterprise <b>205,</b> the WAN-disconnected enterprise <b>215</b> has a LAIN <b>151</b> of computers <b>120</b> whose users lack immediate WAN-based access to the graphic resources of the public graphic database <b>235.</b> Any of numerous conditions can isolate the WAN-disconnected enterprise <b>215</b> from the WAN <b>152.</b> A failure in an access point onto the WAN <b>152</b> or in a communication path between a computer <b>120</b> and the public graphic database <b>235</b> can cause isolation. If a low-speed connection couples the WAN-disconnected enterprise <b>215</b> to the WAN <b>152,</b> but the connection lacks sufficient bandwidth to provide users with access to the public graphic library <b>210,</b> then the enterprise <b>215</b> is disconnected from the WAN <b>152</b> in terms of connectivity to the public graphic library <b>210.</b> Management of a WAN-disconnected enterprise may provide users with access to the WAN <b>152</b> but block their access to the public graphic library <b>210.</b> The WAN-disconnected enterprise <b>215</b> may simply lack an Internet connection because such connection is unavailable in a geographic locale, due to economic reasons, or as a consequence of other circumstances. In other words, in a WAN-disconnected enterprise <b>215</b> can either be physically disconnected from the WAN <b>152</b> or otherwise isolated from WAN-based access to the remote graphic library <b>210.</b> In one embodiment of the present invention, the WAN-disconnected enterprise's LAN <b>151</b> is a private network.
0046In place of the public graphic library <b>210,</b> the WAN-disconnected enterprise <b>215</b> maintains an enterprise graphic library <b>220</b> coupled to its LAN <b>151.</b> The enterprise graphic library <b>220</b> provides graphics to the users coupled to the LAN <b>151</b> of this enterprise <b>215.</b> A LAN server <b>245</b> provides a link between the enterprise graphic database <b>250,</b> which is a database of graphics similar to the public graphic database <b>235,</b> and the LAN <b>151.</b> That is, users on the LAN <b>151</b> remotely access the enterprise graphic database <b>250</b> over the LAN <b>151</b> via the LAN server <b>245.</b>
0047In addition to providing the benefit of accessibility, connecting a graphic database directly to an enterprise's LAN <b>151</b> offers an enterprise <b>215</b> speed benefits for downloading and/or uploading graphics. Rather than configuring its user computers <b>120</b> and/or the associated software to access graphics remotely over the WAN <b>152,</b> a WAN-disconnected enterprise <b>215</b> can setup and maintain a high-speed LAN network <b>151</b> coupled to the enterprise graphic database <b>250.</b> Such a high-speed LAN network <b>151</b> is often more economical than obtaining and maintaining a WAN connection providing equivalent bandwidth to the public graphic database <b>235.</b>
0048The enterprise graphic database <b>250</b> receives graphic content <b>260</b> from the public graphic database <b>235</b> stored on a physical medium, such as a CD-ROM <b>131,</b> as traditional mail over a physical mail communication link <b>255,</b> such as United States Postal Service or other transportation service. When graphic updates <b>260</b> arrive from the public graphic library <b>210,</b> the information technology ("IT") department of the WAN-disconnected enterprise <b>215</b> can elect to update the enterprise graphic database <b>250</b> with the new content <b>260.</b> The IT department may implement a full database replacement to synchronize the enterprise graphic database <b>250</b> with the public graphic database <b>235.</b> Alternatively, the IT department or other management personnel can opt to selectively modify the enterprise graphic database <b>250</b> with the new content <b>260.</b> The updates <b>260</b> typically arrive periodically, for example semiannually, quarterly, or monthly.
0049As an alternative to receiving graphic content <b>260</b> written on a physical medium <b>260,</b> the IT department of the WAN-disconnected enterprise <b>215</b> can communicate with the public graphics library <b>210</b> via a communication link, such as a WAN <b>152.</b> In this case, the WAN-disconnected enterprise <b>215</b> maintains a WAN connection that is not directly available to users on the LAN <b>151</b> for downloading graphics from the public graphic database <b>235.</b> The IT department downloads graphics from the public graphic database <b>235</b> at an appropriate time interval and loads the graphics, in full or in part, into the enterprise graphic database <b>250</b> where it is accessible to users on the LAN <b>151.</b>
0050Turning now to Figure 3, this figure illustrates a drawing software module <b>175</b> installed on a computer <b>120</b> with a remote library director <b>320</b> that directs communication to either the public graphic library <b>210</b> or the enterprise graphic library <b>220</b> according to an exemplary embodiment of the present invention. A director is an element that specifies a communication destination. Configuring the remote library director <b>320</b> to communicate over the WAN <b>152</b> with the public graphic library <b>210</b> sets up the drawing software module <b>175</b> and the computer 120 on which it resides to operate in a WAN-connected enterprise 205. On the other hand, configuring the remote library director 320 to communicate with the enterprise graphic library 220 on a LAN 151 inside a firewall 355 sets up the drawing software module 175 and computer 120 for a WAN-disconnected enterprise 215.
0051In one embodiment of the present invention, the remote library director 320 directs communication to both the enterprise graphic library 220 and the public graphic library 210 so that a user in a WAN-connected enterprise 205 that maintains an enterprise graphic library 220 gains access to multiple remote libraries 210, 220. With this capability, a user can search the enterprise graphic library 220 for graphics that are proprietary or otherwise specific to the WAN-connected enterprise 205 and search the public graphic library 210 for content that is public or otherwise nonexclusive to the WAN-connected enterprise 205. That is, a single search can locate graphics in a public graphic database 235, an enterprise graphic database 250, and a local graphic database 180 and return results from all three databases 235, 250, 180. Also, a user can specify one of these databases 235, 250, 180 as a search destination.
0052The drawing software module 175 is a software program through which a user creates drawings or other documents with graphic content, for example by inserting any of the exemplary graphics described herein onto a drawing page. In one exemplary embodiment of the present invention, the drawing software module 175 is a software program that helps users create business or technical diagrams.
0053According to one exemplary embodiment of the present invention, the drawing software module 175 is based on the drawing software product sold by Microsoft Corporation of Redmond, Washington under the registered trademark VISIO. In one exemplary embodiment of the present invention, the drawing software module 175 illustrated in Figure 3 is an adaptation of the VISIO 2003 program. As supplied, the VISIO 2003 program communicates with a public graphic library 210 maintained by Microsoft Corporation that provides users of the VISIO 2003 program with remote access to graphics from a public graphic database 235 over the Internet 152. A fixed address that the VISIO 2003 program writes into the registry, which is a database used by the computer's operating system 122 to store configuration information, points to the location of this remote library site 235. Overriding this fixed address in the VISIO 2003 program by setting a registry key to a new address causes the VISIO 2003 program to attempt to establish communication with a remote graphic library 220 at the new address. The remote library director 320, which is not a component of the Visio 2003 program, provides this overwriting function. That is, overlaying the remote library director 320 on the VISIO 2003 program provides an exemplary software module 175 according to an embodiment of the present invention. In this configuration, the remote library director 320 directs the VISIO 2003 program to communicate with an enterprise graphic library 220 on a LAN 151 of a WAN-disconnected enterprise 215 by overwriting the address of the public graphic library 210 maintained by Microsoft Corporation with the LAN address of the enterprise graphic library 220.
0054The remote library director 320 can be a macro, script, batch file, standalone program, manual operation, physical component, or integral software component associated with the drawing software module 175. In one exemplary embodiment of the present invention, the remote library director 320 is a software configuration that is set prior to loading the drawing software module 175 on a computer 120. In another exemplary embodiment of the present invention, a user interface (not shown) accompanies the remote library director 320 so that a user can define the location of a specific remote graphic library or select one graphic library from a list of choices. As an alternative to writing the communication direction into a registry or other database associated with the computer's operating system, the present invention supports using a variety of elements for directing communication. For example, configuration files or internal storage coupled to a user interface can store communication addresses and other information associated with directing communication to a specific destination.
0055The remote library director 320 is a component of the drawing software module's graphic locator 305. The graphic locator 305 receives user requests for graphics, coordinates acquisition of requested graphics, and transfers acquired graphics to software components (not shown) in the drawing software module 175 that store and display acquired graphics. The graphic locator 305 includes two software modules, a local graphic acquirer 315 and a remote graphic acquirer 310, that it engages for these tasks. The local graphic acquirer 315 finds and acquires graphics stored locally in a local graphic database 180 on the hard drive 127 of the computer 120. This local graphic database 180 stores a set of basic graphics and frequently-used graphics, such as graphics downloaded one or more times from a remote graphic library 210, 220. The remote graphic acquirer 310 finds and acquires graphics from either the public graphic library 210 or the enterprise graphic library 220 according to the configuration of the remote library director 320.
0056Configuring the remote library director 320 to communicate with the public graphic library 210 sets up the drawing software module 175 for a WAN-connected enterprise 205. In this state 325, graphic requests from the remote graphic acquirer 310 propagate across the LAN 151 of the WAN-connected enterprise 205 to the router 230, which typically serves as a demarcation point between the LAN 151 and the WAN 152. The remote graphic acquirer generates these requests as extensible markup language ("XML") documents. The router 230 sends these XML documents through the firewall 355, which prevents unauthorized access onto LAN 151, and onto the WAN 152 towards the public graphic library 210. An ASP 335 associated with an Internet information server ("IIS") 340 at the public graphic library 210 receives these XML documents and responds accordingly. The ASP 335 can be a dynamically created Web page with an .ASP extension that utilizes ActiveX scripting.
0057The ASP 335 is also linked to a public file server 345 and a public structured query language ("SQL") server 350 at the public graphic library 210. That is, the public graphic base 235 is distributed between the IIS 340, the public file server <b>345,</b> and the public SQL server <b>350.</b> The public file server <b>345</b> contains graphic files, while the SQL server <b>350</b> contains metadata associated with each graphic. The SQL server <b>350</b> is a database management system ("DBMS") that responds to queries formatted in SQL language from the ASP <b>335.</b>
0058When the ASP <b>335</b> receives an inquiry for graphic metadata from the remote graphic acquirer <b>310</b> in the format of an XML document, it queries the SQL server <b>350.</b> When the SQL server <b>350</b> supplies the requested metadata, the ASP <b>335</b> relays it back to the remote graphic acquirer <b>310.</b> When the ASP <b>335</b> receives an inquiry for a full graphic file from the remote graphic acquirer <b>310,</b> it acquires that graphic file from the public file server <b>345</b> and sends it to the remote graphic acquirer <b>310.</b>
0059In one embodiment of the present invention, a single server contains the IIS <b>340,</b> the public file server <b>345,</b> and the SQL server <b>350.</b> That is, the IIS server <b>340,</b> the public file server <b>345,</b> and the SQL server <b>350</b> can be either virtual servers in a single enclosure or separate servers located in separate enclosures. Furthermore, the public file server <b>345</b> and the public SQL server <b>350</b> can be virtual servers within the IIS <b>340.</b>
0060For each illustrated component <b>335, 340, 345, 350</b> and function in the public graphic library <b>210,</b> the enterprise graphic library <b>220</b> includes a corresponding component <b>360, 245, 370, 365,</b> and function. The parallelism between these two remote libraries <b>210, 220</b> enables the remote graphic acquirer <b>310</b> to interact with the enterprise graphic library <b>220</b> as if it were the public graphic library <b>210.</b> In other words, the communication destination, whether it is the public graphic library <b>210</b> or the enterprise graphic library <b>220,</b> is essentially transparent to the remote graphic acquirer <b>310</b> in one exemplary embodiment of the present invention.
0061When the remote library director <b>320</b> is configured to the enterprise graphic library state <b>330,</b> the remote graphic acquirer's XML documents arrive at the intranet ASP <b>360</b> on the LAN <b>151</b> within the firewall <b>355</b> rather than the Internet ASP <b>335</b> on the WAN <b>152.</b> The intranet ASP <b>360</b> queries the enterprise SQL server <b>365</b> for metadata or the enterprise file server <b>370</b> for full graphic files according to the content of the XML document. The intranet ASP <b>360</b> returns such information that it acquires from the enterprise SQL server <b>365</b> and the enterprise file server <b>370</b> to the location on the LAN <b>151</b> of the computer <b>120</b> that originated the graphic request. This computer <b>120</b> is within the LAN-disconnected enterprise <b>215</b> (shown in Figure 2).
0062The enterprise file server <b>370</b> and the enterprise SQL server <b>365</b> are typically virtual servers within a LAN server <b>245</b> associated with the intranet ASP <b>360.</b> However, these three servers <b>245, 370, 365</b> can be distinct, interconnected hardware devices that are components of the enterprise graphic database <b>250.</b>
0063Those skilled in the art appreciate that the communications, database management schemes, and programming languages described herein are exemplary and can practice the present invention using assorted database configurations, communication protocols and programming languages known in the art based on the description. For example, the public SQL server <b>350</b> and the private SQL server <b>365</b> can be servers that provide the functions described herein based on a programming language other than structured query language. And, communication between the remote graphic acquirer <b>310</b> and the Internet active server page <b>335</b> or the intranet active server page <b>360</b> can occur with various communication formats and languages other than the transmission of XML documents.
0064Those skilled in the art appreciate that using an ASP to access to a graphic database is exemplary and that the present invention supports a range of options for this function. The present invention can include web scripting modules such as hypertext preprocessor ("PHP"), practical extraction and report language ("Perl"), Java server page ("JSP"), or other alternatives known in the art. Furthermore, a range of web servers that are known to those skilled in the art can provide similar function to the exemplary IIS web server <b>340</b> discussed herein.
0065Turning now to Figures 4A, 4B, and 4C, these figures illustrate the content of focal, enterprise, and public databases <b>180, 250, 235</b> according to three exemplary embodiments of the present invention.
0066Figure 4A illustrates a public graphic database <b>235,</b> which is coupled to the WAN <b>152,</b> containing periodically appended or otherwise updated content. Upon such revision, the administrator of this remote database <b>235</b> provides a copy to the administrator of the enterprise graphic database <b>250,</b> such as the IT department of a WAN-disconnected enterprise <b>215.</b> The public graphic database administrator can send the enterprise IT department either a full database backup or the public content revisions occurring since its last transmission of content. The IT department updates the enterprise graphic database <b>250</b> to synchronize its content changes with those of the public graphic database <b>235.</b> That is, the content of the enterprise graphic database <b>250</b> is a duplicate of public graphic library's content. In this configuration <b>400,</b> a user in a WAN-disconnected enterprise <b>215</b> accesses the same graphic content from the enterprise graphic database <b>250</b> that a user in a WAN-connected enterprise <b>205</b> accesses from the public graphic database <b>235.</b> The local graphic database <b>180,</b> which is maintained locally on the user's hard drive <b>127,</b> contains frequently used graphics including a standard graphic set and downloaded graphics.
0067Figure 4B illustrates an exemplary embodiment of the present invention wherein the enterprise graphic database <b>250</b> includes content from the public graphic database <b>235</b> in addition to content generated by the WAN-disconnected enterprise <b>215</b> and/or third-party graphic sources. A WAN-disconnected enterprise <b>215</b> implements this database configuration <b>425</b> to provide its employees with a large selection of graphics, for example. When an employee generates a new graphic, the user may elect to upload it onto the enterprise graphic database <b>250</b> so other employees can access it.
0068Figure 4C illustrates another exemplary embodiment of the present invention wherein the WAN-disconnected enterprise <b>215</b> controls the enterprise graphic database <b>250</b> so that its content is specific to that enterprise <b>215.</b> With this control, the users on the LAN <b>151</b> of the WAN-disconnected enterprise <b>215</b> access consistent graphic content and generate drawings and other documents that exhibit a uniform appearance. The WAN-disconnected enterprise <b>215</b> can adopt a standard set of graphics so that each user on the LAN <b>151</b> uses the same architectural symbols or other symbols that are important to the enterprise's operations, for example. For example, the enterprise graphic database <b>250</b> can hold content that is not available on the public graphic database <b>235</b> such as internally produced graphics, logos, custom icons, or shapes that are unique to a company or organization. In one embodiment of the present invention, the enterprise graphic database <b>250</b> and the public graphic database <b>235</b> do not contain overlapping content.
0069In this database configuration <b>450,</b> the management of the WAN-disconnected enterprise <b>215</b> screens the content updates that it receives from the public graphic library <b>210</b> and determines the content that is acceptable for inclusion its enterprise graphic database <b>250.</b> Management adopts new content that will enhance the documents generated by the enterprise <b>215</b> without compromising its document standards and rejects unacceptable content. This enterprise graphic database <b>250</b> can be a private graphic database.
0070Figure 5 illustrates a user interface <b>500</b> for entering graphic search preferences according to an exemplary embodiment of the present invention. The drawing software module <b>175</b> displays this user interface window <b>500</b> when a user engages a pull down menu or provides another prompt. A user may elect to seek graphics from the local graphic database <b>180,</b> a remote graphic database <b>235, 250,</b> or both. When a user is isolated from both the WAN <b>152</b> and the LAN <b>151</b> and can access neither the public graphic library <b>210</b> nor the enterprise graphic library <b>220,</b> the user can elect to access graphics exclusively from the local graphic database <b>180,</b> for example.
0071When the user elects to seek graphics remotely, the state <b>325, 330</b> of the remote library director <b>320</b> defines the remote source as either the public graphic database <b>235</b> or the enterprise graphic database <b>250.</b> In one exemplary embodiment of the present invention, the graphic locator <b>305</b> searches for graphics from a remote graphic library <b>210, 220</b> only if the user opts for a remote search. And, if a user opts for a remote search the remote library director <b>320</b> defines destination of that search.
0072Figures 6A and 6B illustrate selecting a graphic from a search window 610 and inserting the selected graphic on a drawing page <b>605</b> according to an exemplary embodiment of the present invention. When a user desires to insert a graphic onto a drawing page <b>605,</b> the user can enter a search term such as "computer keyboard" or other descriptor that describes the desired graphic. The graphic locator <b>305</b> responds to this entry and engages the remote graphic acquirer <b>310</b> and the local graphic acquirer <b>315</b> to find graphics that match the description.
0073The local graphic acquirer <b>315</b> searches the local graphic database <b>180,</b> while the remote graphic acquirer searches one of the remote graphic databases <b>235, 250.</b> A search window <b>610</b> in the user interface <b>600</b> displays a list of identified graphics <b>620, 630, 640</b> meeting the search term. The search window 610 displays each listed graphic <b>620, 630, 640</b> in metadata form including a representative image and a textual description of the graphic. The representative image can be a bit-mapped image of the graphic, line drawing, a simple icon symbolizing the graphic, or other visualization element.
0074As illustrated in the exemplary display configuration <b>600</b> of Figure 6A, the user selects an entry <b>620</b> from the list of entries <b>620, 630, 640</b> in the search window and moves a pointer <b>645</b> or cursor over that entry <b>620.</b> As illustrated in the exemplary display configuration <b>650</b> of Figure 6B, the user depresses a button on a mouse <b>141</b> (illustrated in Figure 1) and drags the entry <b>620</b> to a desired location on the drawing page <b>605.</b> The user drops the graphic <b>670</b> at the desired location by releasing the mouse button. To insert the graphic <b>670</b> at the desired location rather than merely the metadata <b>620</b> associated with the graphic <b>670,</b> the user's drag-and-drop gesture triggers the graphic locator <b>305</b> to load the full graphic file from the appropriate graphic database <b>180</b>, <b>250, 235.</b>
0075If the selected graphic <b>670</b> is located in the local graphic database <b>180,</b> the graphic locator engages the local graphic acquirer <b>315</b> to load the graphic <b>670</b> from the local hard drive <b>127.</b> On the other hand, if the selected graphic <b>670</b> is located in a remote graphic database <b>235, 250</b>, the graphic locator <b>305</b> enlists the remote graphic acquirer <b>310</b> to download the graphic <b>670</b> from the remote graphic library <b>210. 220</b> that corresponds to the configuration <b>325, 330</b> of the remote library director <b>320.</b>
0076When loading of the graphic is complete, the drawing software module <b>175</b> displays the graphic <b>670</b> at the intended location of the drawing page <b>605</b> in a selection box <b>660.</b> The selection box <b>660</b> indicates that the graphic <b>670</b> remains active and enables the user to resize, reshape, or otherwise customize the graphic <b>670.</b>
0077Turning now to Figure 7, this figure illustrates a process <b>700</b> entitled "Search and Download Remote Graphic" for searching a remote graphic library <b>210, 220</b> and downloading graphics according to an exemplary embodiment of the present invention.
0078At Step <b>705,</b> the IT department or other party providing a software administrative function configures the drawing software module <b>175</b> so that the remote library director <b>320</b> points to a network address of either the public graphic library <b>210</b> or the enterprise graphic library <b>220.</b> The IT department can automatically set a registry key that points to the communication destination, for example. At Step <b>710,</b> a user of the drawing software module <b>175</b> enters a search term into a search window <b>610</b> associated with a drawing page <b>605</b> of a user interface <b>600.</b>
0079At Step <b>715,</b> the remote library director <b>320</b> directs communication between the remote graphic acquirer <b>310</b> and a specified remote graphic library <b>210, 220.</b> The configuration <b>325, 330</b> of the remote library director <b>320</b> determines whether the remote graphic acquirer <b>310</b> communicates with the public graphic library <b>210</b> or the private graphic library <b>220.</b> This communication includes searching for graphics and transferring metadata and full graphic files.
0080At Step <b>720,</b> the remote graphic acquirer <b>310</b> sends user-entered search terms to the specified graphic library <b>210, 220</b> for comparison with the metadata that accompanies each graphic in the remote graphic database <b>235, 250.</b> A search ensuing from this communication may turn up one or more candidate graphics with metadata matching the search parameters.
0081At Step <b>730,</b> the specified graphic library <b>210, 220</b> returns bit-mapped images and text metadata of each of these candidate graphics. At Step <b>735,</b> the remote graphic acquirer <b>310</b> receives the bit-mapped images and text metadata from the remote graphic library <b>210, 220</b> specified by the state <b>325, 330</b> of the remote library director <b>320.</b>
0082At Step <b>740,</b> the graphic locator <b>305</b> under the direction of the drawing software module <b>175</b> offers the user a list of the matched graphics in a metadata format as candidate graphics for insertion into the user's drawing page <b>605</b> as illustrated in Figure 6A and described above. At Step <b>750,</b> the user chooses one of the candidate graphics by selecting a displayed bit-mapped image <b>620</b> and text metadata as illustrated in Figure 6B and described above.
0083At Step <b>760,</b> the remote graphic acquirer <b>310</b> responds to the user's selection of a graphic and requests the full graphic from the remote graphic library <b>210, 220.</b> At Step <b>770,</b> either the public graphic library <b>210</b> or the enterprise graphic library <b>220</b> responds to the request and transmits the full graphic file to the remote graphic acquirer <b>310.</b>
0084At Step <b>780,</b> the drawing software module <b>175</b> receives the full graphic file and displays the graphic <b>670</b> on the drawing page <b>605.</b> At Step <b>790,</b> the user modifies the graphic <b>670</b> so that it is suited to its specific role on the drawing page <b>605.</b> Modification options include resizing, moving, altering, recoloring, reshaping, and other operations.
0085Turning now to Figures 8A and 8B, these figures illustrate a routine <b>800</b> entitled "Locate Graphic" for locating graphics according to an exemplary embodiment of the present invention.
0086At Step <b>803,</b> a user enters a search term such as "keyboard'' into the user interface of the graphics locator <b>305</b> and requests a search. For example, the user can initiate a search for graphics through the search window <b>610</b> illustrated in Figure 6A.
0087Inquiry Step <b>805</b> determines if the user has chosen to search the local graphic database <b>180</b> on the hard drive <b>127</b> of the user's computer <b>120,</b> a remote graphic library <b>220, 210,</b> or both the local database <b>180</b> and a remote library <b>220, 210.</b> The user has the option to enter such search preferences through a search window <b>500</b> as illustrated in Figure 5.
0088If the user has selected to search locally or both locally and remotely, Routine <b>800</b> executes Step <b>807</b> wherein the local graphic acquirer <b>315</b> searches the local hard drive <b>127</b> for graphics that match the search term. At Step <b>810,</b> the local graphic acquirer <b>315</b> acquires the results from the local graphic database <b>180</b> in metadata format.
0089If inquiry step <b>805</b> determines that the user has chosen to search for graphics at a remote library <b>210, 220</b> either in conjunction with searching the local graphic database <b>180</b> or instead of the local graphic database <b>180,</b> Routine <b>800</b> executes inquiry Step <b>825.</b> Inquiry Step <b>825</b> determines if the remote library director <b>320</b> is configured to direct remote graphic communication, including search inquiries, to a site on the LAN <b>151</b> of the enterprise graphic library <b>220</b> or a site on the WAN <b>152</b> of the public graphic library <b>210.</b>
0090If the remote library director <b>320</b> is configured to direct communication to the public graphic library <b>210,</b> Routine <b>800</b> executes Step <b>827</b> through Step <b>850.</b> On the other hand, if the remote library director <b>320</b> directs search communication to the enterprise graphic library <b>220,</b> Routine <b>800</b> executes Steps <b>860</b> through Step <b>895.</b>
0091If Step <b>825</b> results in Routine <b>800</b> directing execution flow through Step <b>827,</b> then at Step <b>827</b> the remote library director <b>320</b> directs remote search communication to the public graphic library <b>210</b> on the WAN <b>152.</b> At Step <b>830,</b> the remote graphic acquirer <b>310</b> generates an XML document containing graphic search parameters in accordance with the search terms entered in Step <b>803.</b>
0092At Step <b>832,</b> the remote graphic acquirer <b>310</b> sends the XML document to the Internet ASP <b>335</b> of the public graphic library <b>210</b> that is associated with the IIS <b>340</b> of that library <b>210.</b> The XML document passes onto the LAN <b>151</b> and to the router <b>230</b> of the WAN-connected enterprise <b>205.</b> The router <b>230</b> transmits the XML document onto the WAN <b>152</b> for arrival at the address of the Internet ASP <b>335.</b>
0093At Step <b>835,</b> the Internet ASP <b>335</b> receives the XML document from the remote graphic acquirer <b>310</b> and, in response, queries the public SQL server <b>350</b> to identify metadata that matches the search terms. At Step <b>837,</b> the public SQL server <b>350</b> responses to the query from the Internet ASP <b>335</b> and searches the its public SQL database that is on that server <b>837</b> and that contains metadata for each graphic in the public graphic library <b>210.</b>
0094At Step <b>840,</b> the public SQL server <b>350</b> returns the record set containing the metadata meeting the search criterion to the Internet ASP <b>335.</b> At Step <b>845,</b> the Internet ASP <b>335</b> generates an XML document based on the record set from the public SQL server <b>350.</b> That is, the Internet ASP <b>335</b> places a list of the graphics that meet the search term along with image and text metadata for each entry in the list into an XML document.
0095At Step <b>850,</b> the Internet ASP <b>335</b> transmits the XML document back to the remote graphic acquirer <b>310</b> that originated the search request. This document and the search results contained therein over the WAN <b>152</b> and through the WAN-connected enterprise LAN <b>151</b> for receipt by the user computer <b>120.</b>
0096If the remote library director <b>320</b> is configured to seek graphics from an enterprise graphic library <b>220</b> rather than the public graphic library <b>210,</b> then at inquiry Step <b>825,</b> as discussed above, Routine <b>800</b> executes Step <b>860.</b> At Step <b>860,</b> the remote library director <b>320</b> directs search communication to the enterprise graphic library <b>220.</b>
0097At Step <b>865,</b> the remote graphic acquirer <b>310</b> generates an XML document which can be essentially the same XML document described above in reference to Step <b>830.</b> That is, in one embodiment of the present invention, Step <b>865</b> and Step <b>830</b> generate essentially the same XML document containing graphic search parameters including one or more search terms.
0098At Step <b>870,</b> the remote graphic acquirer <b>310</b> sends the XML document to the intranet ASP <b>360</b> of the enterprise graphic library <b>220.</b> The XML document travels to the address defined by the remote library director <b>320</b> which is the LAN address of the enterprise graphic library <b>220</b> within the firewall <b>355</b> of the WAN-disconnected enterprise <b>215.</b> The intranet ASP <b>360</b> provides similar function to the Internet ASP <b>335</b> and accepts and receives information in the same format.
0099At Step <b>875,</b> the intranet ASP <b>360</b> queries the enterprise SQL server <b>365</b> to identify graphics matching the search terms entered in Step <b>803.</b> At Step <b>880,</b> the enterprise SQL server <b>365</b> responds to the intranet ASP's query and searches its internal enterprise SQL database for matches to the user's search terms. At Step <b>885,</b> the enterprise SQL server <b>365</b> returns the record set of search results and metadata to the intranet ASP <b>360.</b> At Step <b>890,</b> the intranet ASP <b>360</b> generates an XML document based on the record set. At Step <b>895,</b> the intranet ASP <b>360</b> transmits the XML document containing search results to the remote graphic acquirer <b>310</b> at the user's computer <b>120.</b>
0100At Step <b>897,</b> the graphic locator <b>305</b> merges search results from each of the graphic databases <b>180, 235, 250</b> that were searched and that identified suitable graphics content. The graphic locator <b>305</b> also eliminates duplicate results so that each search result is associated with a single graphic database.
0101At Step <b>898,</b> the drawing software module <b>175</b> displays the search results in metadata form, as a list of bitmapped images and accompanying text descriptors. Figure 6A illustrates an exemplary user interface <b>600</b> following this format.
0102From these search results, a user can select a specific graphic for downloading and insertion onto a document page. Figures 9A and 9B illustrate a routine <b>900</b> entitled "Insert Graphic" for downloading a graphic and inserting it into a drawing or other document according to an exemplary embodiment of the present invention.
0103At Step <b>905</b> in Routine <b>900,</b> the user originating the search selects a search result, which as described above is displayed as a bit-mapped image and text metadata on the graphic locator user interface. Figure 6B illustrates such an exemplary display <b>600.</b>
0104At Step <b>910,</b> the user drags and drops the selected bit-mapped image <b>620</b> into the drawing page <b>605.</b> Alternatively, the user can select this image <b>620</b> using arrow and function keyboard keys and depress the control key and the enter key in combination to move the image <b>620</b> onto the page <b>605.</b> Subsequent flow of Routine <b>900</b> proceeds according to the location of the selected graphic as determined in inquiry Step <b>915</b> and inquiry Step <b>932.</b> If the selected graphic is local, Routine <b>900</b> executes Step <b>920</b> and engages the local graphic acquirer <b>315</b> to load the selected graphic from the local graphic database <b>180</b> on the hard drive <b>127</b> of the user's computer <b>120.</b> If the selected graphic is remote, then Routine <b>900</b> executes inquiry Step <b>932.</b>
0105If the inquiry of Step <b>932</b> determines that the remote library director <b>320</b> is configured to the public graphic library state <b>325,</b> Routine <b>900</b> proceeds to Step <b>935</b> and the remote library director <b>320</b> directs communication between the remote graphic acquirer <b>310</b> and the public graphic library <b>210.</b>
0106At Step <b>940,</b> the remote graphic acquirer <b>310</b> generates an XML document containing a request to download the specific graphic that the user selected. At Step <b>945,</b> the remote graphic acquirer <b>310</b> sends this XML document to the Internet ASP <b>335</b> via the WAN <b>152.</b> That is, the request for a specific graphic transmits across the WAN-connected enterprise's firewall <b>355</b> to the address on the WAN <b>152</b> of the public graphic library <b>210.</b> This address complies with the state <b>325</b> of the remote library director <b>320.</b>
0107At Step <b>950,</b> the Internet ASP <b>335</b> returns the uniform resource locator ("URL") for the location of the selected graphic to the remote graphic acquirer <b>310</b>. A URL specifies an address of documents and other resources on a web such as the World Wide Web and typically defines a protocol and an Internet Protocol ("IP) or domain name where the resource is located. At Step <b>955,</b> the remote graphic acquirer <b>310</b> uses this URL to download the selected graphic.
0108If the remote library director <b>320</b> is configured to the enterprise state <b>330</b> rather than the public library state <b>325,</b> then following Step <b>932,</b> Routine <b>900</b> executes Step <b>960</b> and the remote library director <b>320</b> directs communication between the remote graphic acquirer <b>310</b> and the enterprise graphic library <b>220.</b>
0109At Step <b>965,</b> the remote graphic acquirer <b>310</b> generates an XML document that specifies the requested graphic. Since the destination of the XML document is not required to be included in the document itself, this XML document can be essentially the same XML document generated by Step <b>940,</b> which is described above.
0110At Step <b>970,</b> the remote graphic acquirer <b>310</b> transmits the XML document to the intranet ASP <b>360</b> under the direction of the remote library director <b>320</b>. The remote graphic acquirer <b>310</b> initiates the transmission and the remote library director <b>320</b> specifies the destination, which is the enterprise graphic library <b>220</b> on the LAN <b>151.</b>
0111At Step <b>975,</b> the intranet ASP <b>360</b> returns the URL for the location of the graphic to the remote graphic acquirer <b>310.</b> That is, the intranet ASP <b>360</b> replies to the remote graphic acquirer's request and provides the location of the specific graphic that the use wants to place in the active drawing document.
0112At Step <b>980,</b> the remote graphic acquirer <b>310</b> receives the URL from the intranet ASP <b>360</b> and downloads the graphic from the enterprise graphic library <b>220</b> based on the URL.
0113At Step <b>985,</b> the routine flow converges and Routine <b>900</b> executes Step <b>985</b> whether the graphic is local or remote and whether the remote library director is configured to the enterprise state <b>330</b> or the public library state <b>325.</b> At Step <b>985,</b> the remote graphic locator <b>305</b> receives the requested graphic and notifies the drawing software module <b>120</b> that the graphic is ready to be opened and placed into the user's document.
0114At Step <b>990,</b> the drawing software module <b>175</b> removes the bitmapped image displayed as metadata and replaces it with the full graphic by opening the full graphic and inserting it at the location indicated by the user's drag-and-drop gesture.
0115The user can customize the graphic, for example skewing, recoloring, or resizing it. If the user requests additional searches and inputs more graphics, the graphic locator <b>305</b> repeats Routine <b>800</b> and Routine <b>900</b> to accommodate the request.
0116In summary, the present invention provides an enterprise that is isolated from a public database of graphics with a graphic database that serves the needs of the enterprise and that can comprise graphic content drawn from the public database. The present invention supports a drawing software program that conducts searches for graphics from a remote graphic database in an environment of multiple remote graphic databases. The configuration of the software program can direct search communication to a select graphic database.
0117From the foregoing, it will be appreciated that the present invention overcomes the limitations of the prior art. From the description of the embodiments, equivalents of the elements shown therein will suggest themselves to those skilled in the art, and ways of constructing other embodiments of the present invention will suggest themselves to practitioners of the art. Therefore, the scope of the present invention is to be limited only by the claims below.
Contents5
12 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| CN110673859A | Cited by | China | Search report |
| US2003140038A1 | Cites | United States of America | Search report |
| GB2353135A | Cites | United Kingdom | Search report |
| US4710870A | Cites | United States of America | Search report |
| US6412004B1 | Cites | United States of America | Search report |
11 members in 5 offices; this record represents the family
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 777732 | United States of America | – | |
| 77773204 | United States of America | A |
Members11
| Document | Office | Kind | |
|---|---|---|---|
| CN1655148A | China | A | |
| EP1564662A2This record | European Patent Office (EPO) | A2 | |
| US2005182790A1 | United States of America | A1 | |
| JP2005228319A | Japan | A | |
| EP1564662A3 | European Patent Office (EPO) | A3 | |
| KR20060041877A | Republic of Korea | A | |
| KR20060041877A | Republic of Korea | A | |
| CN100568233C | China | C | |
| US7672986B2 | United States of America | B2 | |
| KR101005695B1 | Republic of Korea | B1 | |
| KR101005695B1 | Republic of Korea | B1 |
11 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Application refused18R | 18R | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: THE APPLICATION HAS BEEN REFUSEDSTAA | STAA | |
| First examination report despatched17Q | 17Q | |
| Designation fees paidAKX | AKX | |
| Request for examination filed17P | 17P | |
| Designated contracting statesAK | AK | |
| Request for extension of the european patentAX | AX | |
| Search report despatchedORIGINAL CODE: 0009013PUAL | PUAL | |
| Designated contracting statesAK | AK | |
| Request for extension of the european patentAX | AX | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI |
Numbers
- Publication
- 1564662
- Application
- 51008498
Titles3
- German
- Verwaltung von graphischen Datenbanken
- English
- Managing graphic databases
- French
- Gestion de bases de données graphiques
Classification
- CPC, 7
- G06F16/50
- G06F16/53
- G06F17/40
- Y10S707/99935
- Y10S707/99934
- Y10S707/99936
- Y10S707/99933
- IPC, 2
- G06F13 00
- G06F17 30
Designated states36
- Contracting states, 30
- Austria
- Belgium
- Bulgaria
- Switzerland
- Cyprus
- Czechia
- Germany
- Denmark
- Estonia
- Spain
- Finland
- France
- United Kingdom
- Greece
- Hungary
- Ireland
- Iceland
- Italy
- Liechtenstein
- Lithuania
- Luxembourg
- Monaco
- Netherlands (Kingdom of the)
- Poland
and 6 moreShow fewer
- Portugal
- Romania
- Sweden
- Slovenia
- Slovakia
- Türkiye
- Extension states, 6
- Albania
- Bosnia and Herzegovina
- Croatia
- Latvia
- North Macedonia
- Yugoslavia, later Serbia and Montenegro (until 2006)