Home

Web content management based on timeliness metadata

image

Contents

1. SEND HTTP RESPONSE U S Patent Jan 29 2013 Sheet 1 of 5 US 8 365 069 1 FIG 1 100 106 x PROCESSOR 10 102 108 GRAPHICS NBIMCH MAIN 116 136 PROCESSOR MEMORY AUDIO SIO ADAPTER 104 140 138 BUS 07 BUS HARD USB AND KEYBOARD CD DISK OTHER 1 AND MODEM DRIVE PORTS MOUSE ADAPTER 122 124 126 130 NETWORK ADAPTER 112 U S Patent Jan 29 2013 Sheet 2 of 5 US 8 365 069 1 FIG 2 231 WEB BROWSER PLUG IN CLIENT SEARCH ENGINE 201 202 WEB SERVER 4 WEB SERVER 311 313 1 4 9 gt lt img src path pic omp 2011 01 03 expire date 2012 12 31 gt Fig 328 A 21 lt META NAME earliest create date 2011 01 03 gt 323 lt META NAME latest expire date 2014 01 03 gt 300 5 399 UID 350 351 create date 352 expire date 353 LAST UPDATE Fig 1234 9012 3B 5678 2011 12 20 2011 12 25 U S Patent Jan 29 2013 Sheet 3 of 5 US 8 365 069 1 FIG 4 BEGIN 411 SERVER RECEIVES HTTP REQUEST NO METADATA WEB SERVER MODULE ENABLED 413 SERVER PARSES HTML 415 ELEMENTS OF THE HTML DOCUMENT FOR TIMELINESS TAGS SERVER GENERATES HEADER TAGS BASED ON TIMELINESS TAGS 417 SERVER CONFIGURED TO HANDLE EX
2. a Gregorian calendar it is appreciated that these dates can be expressed in any coordinated time format and can be in gradations of a second or smaller In addition the date may be expressed with an offset from coordinated universal time FIG 4 is a flowchart of methods and or processes per formed at a server machine in accordance with an illustrative embodiment of the invention Initially a server such as web server 250 of FIG 2 may receive a HTTP request step 411 A hypertext request also referred equivalently as an HTTP request is a request for a hypertext document that conforms to the W3C hypertext request format Next the server may determine if a metadata web server module is enabled step 413 The server may perform this step by parsing a configu ration file for an indicator that the web server module is enabled The web server module may be the software com ponent that establishes the scope content and handling of individual timeliness tags If the determination at step 413 is negative the server may send an HTTP response to a client step 431 Processing may terminate thereafter However if the determination at step 413 is positive the server may parse HTML elements of the HTML document for timeliness tags step 415 Parsing HTML elements for time liness tags may include requesting timeliness details from the metadata registry contained in the timeliness tag Timeliness details can be either expire date or create
3. a general purpose computer spe cial purpose computer or other programmable data process US 8 365 069 1 5 ing apparatus to produce a machine such that the instruc tions which execute via the processor of the computer or other programmable data processing apparatus create means for implementing the functions acts specified in the flowchart and or block diagram block or blocks These computer program instructions may also be stored in acomputer readable medium that can direct a computer other programmable data processing apparatus or other devices to function in a particular manner such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function act specified in the flowchart and or block diagram block or blocks The computer program instructions may also be loaded onto a computer other programmable data processing appa ratus or other devices to cause a series of operational steps to be performed on the computer other programmable appara tus or other devices to produce a computer implemented process such that the instructions which execute on the com puter or other programmable apparatus provide processes for implementing the functions acts specified in the flowchart and or block diagram block or blocks The illustrative embodiments permit a web server to iden tify timeliness data concerning HTML elements so that spi ders and clients c
4. described by the meta name field For example in create date timeliness tag 301 the tag name is create date 311 An attribute is associated with the tag in this case 2011 01 03 Further examples of the use of create date include a Picture declaration lt img src path pic bmp 2012 12 31 gt create date 2010 01 01 US 8 365 069 1 7 b Paragraph declaration lt p expire date http www meta registry com uid 5678 amp expire gt lt p gt embedded object declaration create date can be inter preted as day of recording lt object data aGreatSong mp3 type audio mpeg title my song create date 2010 12 31 gt lt a href ourHomePage html gt web page of our band lt a gt lt object gt and d a regular link create date can be interpreted as day of first publishing lt a href MyFirstPublication pdf create date 2005 04 03 gt My first publication lt a gt Note that the use of ellipses above the ellipses represent further arbitrary content and or HTML tags Expire date timeliness tag 303 is another form of a timeliness tag In this HTML tag the name field is expire date 313 Accordingly this HTML tag assigns an expiration to the content enclosed between this HTML tag and its matching end tag In an example where HTML tag 301 encloses content the t
5. text passage can be replaced with lt img src http a2 twimg com profile_images 604158358 TweetMe_nor gt Alternatively the server may merely delete the content that is enclosed by the expired tag In any case the server can make an HTTP response to selectively incorporate one or more HTML elements based on timeliness tags present in a hyper text document referenced by the hypertext request Process ing may continue at step 429 Alternatively in response to determining that strict timeli ness handling is enabled the server may send an HTTP error to the client step 425 This error may include use of the number 520 which is currently unused for other purposes in the HyperText Transfer Protocol HTTP error 520 is not defined in conventional W3C HTTP standards As such 520 may be used to signal that the server has refused to provide a web page due to the presence of an expired tag or at least that a tag has been found in the web page either directly or by indirect reference to be indicate that the cur rent time is invalid In other words the timeliness tags when compared to the current time indicate that the current time is during an invalid period with respect to the timeliness tags An invalid period is a time that is either before the earliest of a web page s create date timeliness tags which can be modi fied to include earliest create date in the head or a time that is after the late
6. 5 234 715 201 715 205 715 717 looks up hypertext document wherein looking up com 709 203 709 219 709 224 prises obtaining first HTML element and second HTML 58 Field of Classification Search 715 201 element and combining the first HTML element and second 715 202 204 205 209 210 226 231 234 HTML element into a hypertext document in response 715 255 273 700 714 717 760 709 201 204 receiving the hypertext request from the client The server 2 709 215 217 21 220 223 226 227 the hypertext document for timeliness tags The server See application file for complete search history generates at least one header tag based on the timeliness tags The server determines whether at least one expired tag is 56 References Cited among the timeliness tags Responsive to a determination that at least one expired tag is among the timeliness tags the U S PATENT DOCUMENTS server can look up a timeliness tag rule corresponding to the 6 173 317 1 1 2001 Chaddha et al 709 219 at least one timeliness tag 6 760 043 2 7 2004 Markel 715 717 6 886 005 2 4 2005 Davis 7 325 193 2 1 2008 Edd et al 7 Claims 5 Drawing Sheets SEND HTTP RESPONSE TO CLIENT WITH NEW HEADER SERVER CONFIGURED TO HANDLE EXPIRA TION YES 423 STRICT TIMELINESS HANDLING ENABLED REWRITE HTVL DATA ACCORDING TOA TIMELINESS TAG RULE
7. FIG 3B UID 350 Otherwise a negative result at step 511 may cause the client to treat the available timeliness tag dates according to step 515 The client may handle timeliness tags as configured by rules 515 Step 515 follows step 513 or a negative outcome to step 511 A rule can be for example entirely remove expired ele ments from the web page rule alternative can be enclose the expired element with additional logic to place alternative content in the place of the expired element The alternative content can be rather simple such as for example a place holder A placeholder can be some indicator that can be ren dered to a display that fills the region of a browser window with trivial content The placeholder can be for example white space The placeholder can be a small graphic image that symbolizes time or time expiration prematurity or the like A third alternative rule can be provide login fields and corresponding validation in response to an expired element A fourth alternative may be replace the expired element with a second element found elsewhere in the web page Regardless of the rules an unexpired or otherwise timely HTML element may be left unchanged by the client The rules can be described in a configuration database Next the client may display the web page to a user per step 517 Processing terminates thereafter FIG 6 is an example of registry references in accordance with an ill
8. META NAME EARLIEST CREATE DATE CONTENT 2011 01 03 gt 90 2014 01 02 gt lt gt US 8 365 069 1 1 WEB CONTENT MANAGEMENT BASED ON TIMELINESS METADATA BACKGROUND The present invention relates generally to a data processing system and computer program product for sorting informa tion and more specifically to searching hypertext documents and selectively transmitting and or displaying a document and or its component parts Metadata is data about data or more specifically data concerning the content of data Metadata can include the source of data the type of data and dates related to data For example a granted patent has at least two associated meta data First the granted patent has a filing date that identifies when the data was submitted as a patent application to the U S Patent and Trademark Office Second the granted patent has a granted date which is the date on which the patent office granted the patent in a way that permits the owner to enforce his rights to the material described therein Metadata plays a key role in the Internet Specifically as used in markup languages such as hypertext markup language HTML metadata can be placed in documents in a manner that is not ordinarily visible to a user of a modern browser This metadata is enclosed in one or more HTML tags The first HTML pages were authored by people in
9. PIRA TION NO EXPIRED TAG FOUND SEND HTTP RESPONSE TO CLIEN Q m STRICT TIMELINESS HANDLING ENABLED SEND HTTP ERROR TO CLIENT REWRITE HTML DATA ACCORDING TOA TIMELINESS TAG RULE SEND HTTP RESPONSE TO CLIENT WITH NEW HEADER U S Patent Jan 29 2013 Sheet 4 of 5 US 8 365 069 1 FIG 5 501 SEND HTTP REQUEST TO URL 503 RECEIVE WEB SERVER RESPONSE WEB PAGE EXPIRED 505 YES NO 507 ANALYZE HTML ELEMENTS OF THE WEB PAGE FOR TIMELINESS TAGS 509 NO FOUND A TIMELINESS TAG NO FOUND REFERENCES TO METADATA IN REGISTRY 519 2 RENDER HTTP RESPONSE REQUEST TIMELINESS USER 515 DATA FROM METADATA REGISTRY HANDLE TIMELINESS TAGS AS CONFIGURED BY RULES 517 DISPLAY WEB PAGE TO 1921 4 U S Patent Jan 29 2013 Sheet 5 of 5 US 8 365 069 1 FIG 6 601 4 oe cig src path pic bmp create date http www meta registry com uid 12348create gt src path pic bmp expire date http Avww meta registry com uid 1234 amp create gt 6 lt img src path pic bmp create date http Avww meta registry com uid 1234 amp create expire date http www meta registry com uid 1234 amp expire gt 609 lt img src path pic bmp create date http Avww meta registry com uid 1234 amp create expire date 2012 12 31 gt 621 221 gt 625 lt HEAD gt 627 lt
10. US008365069B1 az United States Patent 10 Patent No US 8 365 069 B1 Haubrich et al 45 Date of Patent Jan 29 2013 54 WEB CONTENT MANAGEMENT BASED ON 7 561 159 B2 7 2009 Abeletal 345 473 TIMELINESS METADATA 2002 0087986 1 7 2002 Markel 725 42 2004 0001106 1 1 2004 Deutscher etal 345 838 2007 0139418 1 6 2007 Abel etal 345 474 75 Inventors Manfred Haubrich Gensingen DE 2007 0277102 Al 11 2007 icine Simon Lorenz Geisenheim 2009 0077173 Al 3 2009 Lowery et al Frank Marschollek Idar Oberstein DE Rainer Wolafka FOREIGN PATENT DOCUMENTS Hofheim Langenhain DE Alexander WO 01 57729 8 2001 Wolf Reber Dietzenbach DE OTHER PUBLICATIONS 73 Assignee International Business Machines Ektron Inc Ektron CMS400 Net User Manual Version 7 0 Revi Corporation Armonk NY US sion 4 May 2007 Nashua NH Adobe Systems Inc Using Adobe Contribute CS5 Oct 22 2010 Notice Subject to any disclaimer the term of this San Jose CA patent is extended or adjusted under 35 U S C 154 b by 0 days cited by examiner 21 Appl No 13 211 654 Primary Examiner Maikhanh Nguyen 22 Filed Aug 17 2011 74 Attorney Agent or Firm David Mims Robert Rolnik 51 Int Cl GO6F 17 00 2006 01 57 ABSTRACT 06 15 16 2006 01 server receives hypertext request from client The server 52 U S 71
11. a way where each keystroke is typically added by a human being How ever as new models for blending articles with advertising and navigation evolved pages began to appear based on frag ments or elements that were authored independent of one from the other Search engines are a combination of databases that are fed by information collected by spiders Spiders are automated programs that collect HTML by methodically traversing the links in each page Spiders can obtain metadata based on the date that the spider visited an HTML page for example as defined by its universal resource locator URL Such infor mation can be used later to filter results of a search engine query to a specified range of dates where the dates are those dates that the spider collected the data One limitation of the above method of creating date meta data is that the search engine only identifies the date on which the spider visited the web page Nothing indicates the creation date Conventional web pages HTML tags also do not iden tify an expiration date nor other metadata concerning when the web page or its component elements is obsolete or oth erwise invalid In addition the component parts themselves may have distinct creation dates which the prior art fails to identify in HTML tags Accordingly a remedy is sought SUMMARY According to one embodiment of the present invention a computer program product and data processing system for respon
12. ag becomes expired when the date is after 2012 12 31 or Dec 31 2012 Generally this status is referred to as an invalid period In contrast a valid period is the time that is during and after the earliest create date but during or before the latest expire date in this case extending from Jan 3 2011 through Dec 31 2012 HTML tag 321 is a timeliness tag used within the head portion of a web page HTML tag 321 is an earliest create date field Embodiments may derive this tag on the basis of the metadata content of create date timeliness tags found within the body portion of the web page In other words a web server can parse the body of the web page for all create date timeliness tags and select the timeliness tag that has the earliest date Once that earliest date is located the server can generate content field 328 of the earliest create date Similarly HTML tag 323 is a timeliness tag used within the head portion of a web page HTML tag 323 is a latest expire date field Embodiments may derive this tag on the basis of the metadata content of expire date timeliness tags found within the body portion of the web page for example see expire date timeliness tag 303 In other words a web server can parse the body of the web page for all expire date timeliness tags and select the timeliness tag that has the latest date Once that latest date is located the server can generate content f
13. an apply criteria when searching highlight ing rendering or otherwise preparing a referenced web page for user review For example a client having available expi ration data may substitute a placeholder for an HTML ele ment in response to that HTML element being expired In addition a search engine based on earlier retrieved spider results can filter web pages on the basis of creation time or expiration time as may be present in the new timeliness tags As a result content may be inhibited from being displayed and or referenced when such data is premature or expired FIG 2 is a block diagram of a network architecture in accordance with an illustrative embodiment of the invention FIG 2 features a web browser A web browser is a device that hosts a client and optionally a plug in Web browser 200 may be implemented as data processing system 100 of FIG 1 client is a data processing system that supports the hypertext transfer protocol HTTP A client can be for example a basic text only browser executing in a computer such as Lynx A client can be for example a spider executing on a computer for example spiders operated by search engine companies Alternatively a client can be a modern browser suitable for handling a variety of content such as Firefox or Chrome Firefox 15 a registered trademark of the Mozilla Foundation Google Chrome browser is a trademark of Google Inc Web browser 200 relies on client 202 to c
14. arting from the scope and spirit of the described embodiments The terminology used herein was chosen to best explain the prin ciples of the embodiments the practical application or tech nical improvement over technologies found in the market place or to enable others of ordinary skill in the art to understand the embodiments disclosed herein As will be appreciated by one skilled in the art aspects of the present invention may be embodied as a system or com puter program product Accordingly aspects of the present invention may take the form of an entirely hardware embodi ment an entirely software embodiment including firmware 0 5 30 40 45 50 55 4 resident software micro code etc or an embodiment com bining software and hardware aspects that may all generally be referred to herein as a circuit module or system Furthermore aspects of the present invention may take the form ofa computer program product embodied in one or more computer readable medium s having computer readable pro gram code embodied thereon Any combination of one or more computer readable medi um s may be utilized The computer readable medium may be a computer readable signal medium or a computer read able storage medium A computer readable storage medium may be for example but not limited to an electronic mag netic optical or semiconductor system apparatus or device or any suitable combinatio
15. date times associ ated with the HTML element of the timeliness tag The request can be formulated and directed to a metadata registry provided the server locates an URL for the registry in the applicable timeliness tag FIG 6 below describes the ability to reference the metadata registry with URLs Next the server may generate header tags based on the timeliness tags step 417 In other words the server may modify the HTML document in its header to include an indication of an earliest create date that results from a check ing the set of create date timeliness tags for the earliest of all such dates Similarly the server may modify the HTML docu ment to include in its header an indication of the latest expiration date that results from checking the set of expire date timeliness tags for the latest of all such dates In sum mary step 417 involves the server generating at least one header tag based on the timeliness tags Next the server may determine if the server is configured to handle expiration step 419 If the server is not configured in this way the server may continue by sending an HTTP response to the client with the new header step 429 The setting of handling expiration can be done by setting a field in a configuration file Accordingly the determination step 419 can be done by the server checking the configuration file or other data structure for the status of the field Processing may terminate thereafter Alternat
16. devices used to transmit and receive data such as a modem or a network adapter A memory may be for example main memory 108 or a cache such as found in north bridge and memory controller hub 102 A processing unit may include one or more processors or CPUs The depicted example in FIG 1 is not meant to imply architectural limita tions For example data processing system 100 also may bea tablet computer laptop computer or telephone device in addition to taking the form of a PDA The terminology used herein is for the purpose of describ ing particular embodiments only and is not intended to be limiting of the invention As used herein the singular forms and the are intended to include the plural forms as well unless the context clearly indicates otherwise It will be further understood that the terms comprises and or com prising when used in this specification specify the presence of stated features integers steps operations elements and or components but do not preclude the presence or addition of one or more other features integers steps operations elements components and or groups thereof The description of the various embodiments of the present invention have been presented for purposes of illustration but are not intended to be exhaustive or limited to the embodi ments disclosed Many modifications and variations will be apparent to those of ordinary skill in the art without dep
17. ding to hypertext requests are disclosed A server receives a hypertext request from client The server looks up a hypertext document wherein looking up comprises obtain ing a first HTML element and a second HTML element and combining the first HTML element and second HTML ele ment into a hypertext document in response to receiving the hypertext request from the client The server parses the hyper text document for timeliness tags The server generates at least one header tag based on the timeliness tags The server determines whether at least one expired tag is among the timeliness tags Responsive to a determination that at least 20 25 30 35 40 45 50 55 60 65 2 one expired tag is among the timeliness tags the server can look up a timeliness tag rule corresponding to the at least one timeliness tag BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS FIG 1 is a block diagram of a data processing system in accordance with an illustrative embodiment of the invention FIG 2 is a block diagram of a network architecture in accordance with an illustrative embodiment of the invention FIG 3A is starting strings for timeliness tags in accordance with an illustrative embodiment of the invention FIG 3B is a table or data structure of the related informa tion applicable to a HyperText Markup Language element HTML element in accordance with an illustrative embodi ment of the invention FIG 4 is a
18. e storage devices to substitute at least the metadata registry reference with the timeliness details 7 The computer program product of claim 6 wherein the timeliness tag consists of a string selected from the group of strings consisting of create date and expire date
19. eb server module is a software component which may be selected to execute and operate cooperatively with a processing engine of a web server The web server module may operate to selectively dynamically generate an HTTP response that analyzes HTML elements for timeliness tags and selects such elements for further processing and resolution An HTML element is content that is bounded by at least an opening tag and a closing tag These tags are HTML tags that define some feature of the enclosed content Such features can include text decorations refer ences to external content file types and the like As such an HTML tag can make references that the web server module can resolve by making further requests to metadata registry 254 Metadata registry 254 may consult repository 260 which is a data structure designed to resolve timeliness infor mation that is associated with a unique identifier that is located in the applicable HTML tag FIG 3B below explains further this data structure FIG 3A is starting strings for the timeliness tags in accor dance with an illustrative embodiment of the invention A timeliness tag is an HTML tag that associates content to a date either for purposes of determining if the current time is before or after the creation date or create date as the string is stated in the tag and or for determining if the current time is before or after the expiration date or expire date The pur pose of the timeliness tag is
20. egin with lt html gt tag 623 Web page excerpt 621 depicts this initial HTML tag as well as the details placed in the head element of the web page as enclosed by lt head gt 625 and lt head gt 631 Excerpt 621 can be the product of a server in response to executing step 417 of FIG 4 above Accordingly on the basis of previously located timeliness tags in the body element of the web page a server can create earliest create date timeliness tag 627 and latest expire date timeliness tag 629 Accordingly embodiments of the invention may permit a server and or a client to provide alternative HTML elements remove HTML elements or inhibit rendering ofa web page in response to detecting one or more expired HTML elements in a requested web page The flowchart and block diagrams in the Figures illustrate the architecture functionality and operation of possible implementations of systems methods and computer program products according to various embodiments of the present invention In this regard each block in the flowchart or block diagrams may represent a module segment or portion of code which comprises one or more executable instructions for implementing the specified logical function s It should also be noted that in some alternative implementations the functions noted in the block may occur out of the order noted in the figures For example two blocks shown in succession may in fact be executed substantially concurre
21. em and applications or programs are located on computer readable tangible storage devices such as hard disk drive 126 and may be loaded into main memory 108 for execution by processor 106 The processes of the present invention can be performed by processor 106 using computer implemented instructions which may be located in amemory such as for example main memory 108 read only memory 124 or in one or more peripheral devices Those of ordinary skill in the art will appreciate that the hardware in FIG 1 may vary depending on the implementa tion Other internal hardware or peripheral devices such as flash memory equivalent non volatile memory and the like may beused in addition to or in place of the hardware depicted in FIG 1 In addition the processes of the illustrative embodi ments may be applied to a multiprocessor data processing system In some illustrative examples data processing system 100 may be a personal digital assistant PDA which is config ured with flash memory to provide non volatile memory for storing operating system files and or user generated data A bus system may be comprised of one or more buses such as a system bus an I O bus and a PCI bus Of course the bus system may be implemented using any type of communica tions fabric or architecture that provides for a transfer of data between different components or devices attached to the fab ric or architecture A communication unit may include one or more
22. enabled 4 The computer program product of claim 1 wherein a web server module is a software component executing in a server to dynamically generate a hypertext transfer protocol HTTP response to selectively incorporate one or more HTML elements based on timeliness tags present in the hypertext document referenced by the hypertext request 5 The computer program product of claim 1 wherein program instructions stored on at least one of the one or more storage devices to parse further comprise program instructions stored on at least one of the one or more storage devices to parse at least one timeliness tag 20 14 program instructions stored on at least one of the one or more storage devices to determine that the timeliness tag contains a metadata registry reference program instructions stored on at least one of the one or more storage devices to request timeliness details from the metadata registry contained in the timeliness tag responsive to a determination that the timeliness tag contains the metadata registry reference and program instructions stored on at least one of the one or more storage devices to receive timeliness details from a metadata registry reference 6 The computer program product of claim 5 wherein program instructions stored on at least one of the one or more storage devices to receive timeliness details further com prises program instructions stored on at least one of the one or mor
23. ersal serial bus USB ports and other communications ports 132 and PCI PCle devices 134 connect to south bridge and I O controller hub 104 through bus 138 and bus 140 PCI PCle devices may include for example Ethernet adapters add in cards and PC cards for notebook computers PCI uses a card bus controller while PCle does not ROM 124 may be for example a flash binary input output system BIOS Hard disk drive 126 and CD ROM drive 130 may use for example an integrated drive electronics IDE or serial advanced technology attachment SATA interface A super I O SIO device 136 may be connected to south bridge and I O controller hub 104 An operating system runs on processor 106 and coordi nates and provides control of various components within data processing system 100 in FIG 1 The operating system may be a commercially available operating system such as Microsoft Windows XP Microsoft and Windows are trademarks of Microsoft Corporation in the United States other countries or both An object oriented programming system such as the Java programming system may run in conjunction with the operating system and provides calls to US 8 365 069 1 3 the operating system from Java programs or applications executing on data processing system 100 Java is a trade mark of Sun Microsystems Inc in the United States other countries or both Instructions for the operating system the object oriented programming syst
24. flowchart of methods and or processes per formed at a server machine in accordance with an illustrative embodiment of the invention FIG 5 is a flowchart of methods and or processes per formed at a client machine in accordance with an illustrative embodiment of the invention and FIG 6 is an example of registry references in accordance with an illustrative embodiment of the invention DETAILED DESCRIPTION With reference now to the figures and in particular with reference to FIG 1 a block diagram of a data processing system is shown in which aspects of an illustrative embodi ment may be implemented Data processing system 100 is an example of a computer in which code or instructions imple menting the processes of the present invention may be located In the depicted example data processing system 100 employs a hub architecture including a north bridge and memory controller hub NB MCH 102 and a south bridge and input output I O controller hub SB ICH 104 Proces sor 106 main memory 108 and graphics processor 110 con nect to north bridge and memory controller hub 102 Graphics processor 110 may connect to the NB MCH through an accel erated graphics port AGP for example In the depicted example local area network LAN adapter 112 connects to south bridge and I O controller hub 104 and audio adapter 116 keyboard and mouse adapter 120 modem 122 read only memory ROM 124 hard disk drive HDD 126 CD ROM drive 130 univ
25. ield 328 of the latest expire date FIG 3B is a table or data structure of the related informa tion applicable to a HyperText Markup Language element HTML element in accordance with an illustrative embodi ment of the invention Data structure 300 may describe the data fields that are used in repository 260 of FIG 2 The data fields are stored and or retrieved through the use of a unique identifier UID 350 UID 350 may be unique at least within the context of the repository Additional fields of owner 351 and last update 355 can be used for administrative purposes by content providers or other owners In addition when a timeliness tag merely references UID but otherwise fails to specify an actual date data structure 300 may be used to obtain both a creation date create date 352 and an expiration date expire date 353 through the use of a reference to locate data from a central repository Such a data structure can simplify the management of dates applicable to specific HTML elements located among a set of scattered web servers For example a web page in web server 250 can reference a UID of 5678 In this example metadata registry 20 40 45 60 8 254 can respond to requests by looking up in data structure 300 the create date of 2011 12 20 and the expire date of 2011 12 25 Although the create date timeliness tag and the expire date timeliness tag are expressed in the several figures as dates corresponding to
26. ively in response to a sever being configured to handle expiration at step 419 the server may determine whether an expired tag is found step 421 An expired tag is atimeliness tag that has an expired date prior to a current time as measured by the server Ifno expired tag is found process ing continues at step 429 However in response to determin ing that an expired tag is among the timeliness tags the server may exclude an HTML element associated with the at least one expired tag as the server responds to the client US 8 365 069 1 9 To exclude the HTML element that is associated with the expired tag the server first determines whether strict timeli ness handling is enabled step 423 For example the server may perform this step by parsing a configuration file to deter mine if an administrator set a suitable field or variable to an indication that timeliness should be strictly enforced In response to an absence of strict enforcement for example as determined from the configuration file the server may rewrite the HTML data of the web page according to a timeliness tag rule corresponding to the at least one timeliness tag step 427 One timeliness tag rule can be to exclude the associated expired HTML elements Alternatively a timeliness tag rule can be to rewrite the HTML data to put a placeholder in place of the excluded HTML elements For example a text passage can be lt p gt This is a text passage lt p gt This
27. mputer program product for responding to hypertext requests the computer program product comprising one or more computer readable tangible storage devices program instructions stored on at least one of the one or more storage devices to receive a hypertext request from a client program instructions stored on at least one of the one or more storage devices to look up a hypertext document wherein program instructions stored on at least one of the one or more storage devices to look up comprises obtaining a first HyperText Markup Language HTML element and a second HTML element and combining the first HTML element and second HTML element into the hypertext document responsive to receiving the hyper text request from the client program instructions stored on at least one of the one or more storage devices to parse the hypertext document for timeliness tags program instructions stored on at least one of the one or more storage devices to generate at least one header tag based on the timeliness tags program instructions stored on at least one of the one or more storage devices to determine if at least one expired tag is among the timeliness tags and program instructions stored on at least one of the one or more storage devices to look up a timeliness tag rule corresponding to the at least one expired tag wherein program instructions stored on at least one of the one or more storage devices to look up the timeli
28. n of the foregoing More specific examples a non exhaustive list of the computer readable storage medium would include the following a portable com puter diskette a hard disk a random access memory RAM aread only memory ROM an erasable programmable read only memory EPROM or Flash memory a portable com pact disc read only memory CD ROM an optical storage device a magnetic storage device or any suitable combina tion of the foregoing In the context of this document a computer readable storage medium may be any tangible medium that can contain or store a program for use by or in connection with an instruction execution system apparatus or device A computer readable signal medium may include a propa gated data signal with computer readable program code embodied therein for example in baseband or as part of a carrier wave Such a propagated signal may take any of a variety of forms including but not limited to electro mag netic optical or any suitable combination thereof A com puter readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate propagate or transport a program for use by or in connection with an instruction execution system apparatus or device Program code embodied on a computer readable medium may be transmitted using any appropriate medium including but not limited to wireless wireline optical fiber cable RF etc or a
29. ness tag rule corresponding to the at least one expired tag com prise program instructions stored on at least one of the one or more storage devices to determine that the timeliness tag rule is to exclude in response to the at least one expired tag and program instructions stored on at least one of the one or more storage devices to determine to exclude an HTML element associated with the at least one expired tag as a server responds to the client respon sive to the determination that the timeliness tag rule is to exclude in response to the at least one expired tag 2 The computer program product of claim 1 wherein the computer program product further comprises program instructions stored on at least one of the one or more storage devices to determine that a web server US 8 365 069 1 13 module is enabled wherein program instructions stored onat least one of the one or more storage devices to look up the hypertext document are responsive to a determi nation that the web server module is enabled responsive to receiving the hypertext request from the client 3 The computer program product of claim 2 wherein program instructions stored on at least one of the one or more storage devices to determine that the web server module is enabled further comprises program instructions stored on at least one of the one or more storage devices to parse a configuration file for an indicator that the web server module is
30. ntly or the blocks may sometimes be executed in the reverse order depending upon the functionality involved It will also be noted that each block of the block diagrams and or flowchart illustration and combinations of blocks in the block diagrams and or flowchart illustration can be implemented by special purpose hardware based systems that perform the specified functions or acts or combinations of special purpose hard ware and computer instructions The invention can take the form of an entirely hardware embodiment an entirely software embodiment or an embodi ment containing both hardware and software elements In a preferred embodiment the invention is implemented in soft ware which includes but is not limited to firmware resident software microcode etc Furthermore the invention can take the form of a computer program product accessible from a computer usable or com puter readable medium providing program code for use by or in connection with a computer or any instruction execution system For the purposes of this description a computer usable or computer readable medium can be any tangible apparatus that can store the program for use by or in connec tion with the instruction execution system apparatus or device A data processing system suitable for storing and or executing program code will include at least one processor coupled directly or indirectly to memory elements through a system bus The memory elements can incl
31. ny suitable combination of the foregoing Computer program code for carrying out operations for aspects of the present invention may be written in any com bination of one or more programming languages including an object oriented programming language such as Java Smalltalk C or the like and conventional procedural pro gramming languages such as the programming language or similar programming languages The program code may execute entirely on the user s computer partly on the user s computer as a stand alone software package partly on the user s computer and partly on a remote computer or entirely on the remote computer or server In the latter scenario the remote computer may be connected to the user s computer through any type of network including a local area network LAN ora wide area network WAN or the connection may be made to an external computer for example through the Internet using an Internet Service Provider Embodiments are described below with reference to flow chart illustrations and or block diagrams of methods appa ratus systems and computer program products according to embodiments of the invention It will be understood that each block of the flowchart illustrations and or block diagrams and combinations of blocks in the flowchart illustrations and or block diagrams can be implemented by computer program instructions These computer program instructions may be provided to a processor of
32. oordi nate communications with machines reached on the internet and render such results to for example a display Client 202 may use plug in 201 to render advanced file types such as streaming audio or streaming video among others Addi tional plug ins may be present to assist web browser 200 Accordingly a plug in can enhance a browser s ability to render and or synthesize a web page for human consumption Web browser 200 may make requests to machines for web pages using for example Internet 240 Machines include for example web servers 250 261 263 search engine 231 and metadata registry 254 A web server is a data processing system that executes a host process that responds to hypertext requests either with resolved content transmitted to the requester or with a status indication A web server may be implemented as data pro cessing system 100 of FIG 1 The web server may host a processing engine as a process that responds to hypertext transport protocol HTTP requests Accordingly processing 20 25 30 35 40 45 50 55 60 65 6 engine 251 may be a daemon executing using the resources of web server 250 The processing engine may respond to HTTP requests with content having associated HTML tags ofat least a head and body type This content in combination with the HTML tags is known as a hypertext document A hypertext document is a file that substantially adheres to the conven tions described by
33. st of the web page s expire dates It is appre ciated that a number other than 520 may be used to signal that a page is being requested during an invalid period In order for the web page to be not timely the web page will be either expired or premature at or substantially contempora neously with the time of the HTTP request Processing may terminate thereafter FIG 5 is a flowchart of methods and or processes per formed at a client machine in accordance with an illustrative embodiment of the invention Initially the client sends an HTTP request to a uniform resource locator URL step 501 The client can be for example client 202 of FIG 2 Next the client may receive a web server response step 503 The client may determine if the web server responds with an indication that the request is not timely For example the client may determine whether the web page is expired step 505 In other words the client at step 505 may determine that the HTTP request 15 later than the valid period of the web page A valid period is the time between the earliest create date and the latest expire date of the web page One way to make this determination is to receive and interpret an error code sent from the server For example if the web page is expired the client tests for the error code or number sent from the server as described in step 425 in FIG 4 above and determines that the error code matches Alter natively some embodimen
34. the World Wide Web Consortium W3C for example For example a hypertext document also referred to as HTML document is content that is enclosed at least by the lt html gt lt html gt tags lt body gt lt body gt tags and has an associated lt head gt lt head gt tag Many additional HTML tags are also allowed in a hypertext document In addition tags that are well formed XML eXtended Markup Language tags that do not conform to W3C can also be present in a hypertext document Periodically processing engine 251 may coordinate with database 252 web server module 253 and configuration file 259 Database 252 may be a data structure of locally stored files that supply content to the processing engine In some cases a requested web page may include contents entirely located in database 252 However in other cases further web servers may provide content within subcompo nents of the web page described in the request For example web server 250 may request dynamic content from web server 261 Processing engine 251 while processing HTML tags may encounter timeliness tags described further below Handling of such timeliness tags may be delegated to web server mod ule 253 The operation of the web server generally and also of the web server module can be according to the flowchart in FIG 5 below Web server module 253 may be passed HTML elements that the processing engine parses from an initial web page located in database 252 A w
35. ts may rather than test for web 0 25 40 45 50 55 10 page expiration test for validity of the time of the HTTP request as compared to the valid period of the web page In other words in such an embodiment a premature time can generate a result that the HTTP request is not timely A positive result at step 505 may cause the client to render an HTTP response to the user step 519 Rendering the response can be as simple as displaying the error code for example 520 more elaborate response can be to describe in words the status of the web page as expired premature or otherwise untimely Processing may terminate thereafter In response to the web page being unexpired the client may analyze the HTML elements of the web page for time liness tags step 507 The client determines if it finds a timeliness tag step 509 If not the client displays the web page to the user step 517 and processing terminates there after However if the client finds a timeliness tag the client determines whether it found references to metadata in a meta data registry step 511 A format for references to a metadata registry is described further as registry references in FIG 6 below If one or more registry references is found the client may request timeliness data from the metadata registry step 513 The request may include the metadata registry URL and an identifier of the HTML element for example as described in
36. ude local memory employed during actual execution of the program code bulk storage and cache memories which provide temporary stor age of at least some program code in order to reduce the number of times code must be retrieved from bulk storage during execution 20 40 45 65 12 Input output or I O devices including but not limited to keyboards displays pointing devices etc can be coupled to the system either directly or through intervening control lers Network adapters may also be coupled to the system to enable the data processing system to become coupled to other data processing systems or remote printers or computer read able tangible storage devices through intervening private or public networks Modems cable modem and Ethernet cards are just a few of the currently available types of network adapters The description of the present invention has been presented for purposes of illustration and description and is not intended to be exhaustive or limited to the invention in the form disclosed Many modifications and variations will be apparent to those of ordinary skill in the art The embodiment was chosen and described in order to best explain the prin ciples of the invention the practical application and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated What is claimed is 1 A co
37. ustrative embodiment of the invention The create date timeliness tag identifies a registry The registry can be for example metadata registry 254 of FIG 2 The metadata registry can be identified by its uniform resource locator URL in this case http www meta registry com The metadata registry reference includes at least an URL as well as an indication ofa field that is to be looked up The URL can incorporate query fields that determine which row of the repository s data structure to look up as well as the corre sponding column or field entry Create date timeliness tag 603 references a UID of 1234 and a field name of create date Accordingly relying on data structure 300 of FIG 3B the metadata registry may lookup 2011 11 24 at the corre sponding row and column Timeliness tag 607 is an alternative form of a timeliness tag Timeliness tag 607 is a hybrid tag that references a metadata registry for both the create date metadata and the US 8 365 069 11 expire date metadata Accordingly when making determina tion as to the corresponding content in this case content known as path pic bmp the server or the client can parse a single start tag Such an arrangement may be less burdensome to author than preparing two separate timeliness tags as shown in timeliness tag 603 and 605 The hybrid timeliness tag format may permit a mixed usage as well for example as shown in timeliness tag 609 All web pages b

Download Pdf Manuals

image

Related Search

Related Contents

Philips 21PT3426  GE PGB995SETSS User's Manual  User`s Manual for Conservators in Colorado  取扱説明書 (操作マニュアル)  Monitores e controladores de custo de consumo de  CONQUEST(MC) - BASF Canada  TTB - 6055 / 100T  取扱説明書  『浸透保湿エイシンクケア』  Vivre l`aventure - Université Catholique de Lille  

Copyright © All rights reserved.
Failed to retrieve file