US20080235573A1 - Content Markup Transformation - Google Patents

Content Markup Transformation Download PDF

Info

Publication number
US20080235573A1
US20080235573A1 US11/689,335 US68933507A US2008235573A1 US 20080235573 A1 US20080235573 A1 US 20080235573A1 US 68933507 A US68933507 A US 68933507A US 2008235573 A1 US2008235573 A1 US 2008235573A1
Authority
US
United States
Prior art keywords
content
markup language
corrected
mobile device
browser
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US11/689,335
Other versions
US7853593B2 (en
Inventor
Frank S Serdy
Rainer J Romatka
Michael S. Agney
Shyam S. Habarakada
Sarthak D Shah
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Priority to US11/689,335 priority Critical patent/US7853593B2/en
Assigned to MICROSOFT CORPORATION reassignment MICROSOFT CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HABARAKADA, SHYAM S., SHAH, SARTHAK D., AGNEY, MICHAEL S., SERDY, JR., FRANK S, ROMATKA, PH.D., RAINER J.
Publication of US20080235573A1 publication Critical patent/US20080235573A1/en
Application granted granted Critical
Publication of US7853593B2 publication Critical patent/US7853593B2/en
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC reassignment MICROSOFT TECHNOLOGY LICENSING, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MICROSOFT CORPORATION
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents

Definitions

  • Markup languages are utilized to control data presentation to electronic device users.
  • users are typically provided content that may include images, textual data and the like information for presentation.
  • a markup language may be implemented to control the way in which this content is presented, such as providing data hierarchies.
  • An example of a hierarchy is to separate a textual portion into a title portion which is distinct from the bulk of the text, given a particular alignment, or provided with a special characteristic.
  • a markup language may be utilized for determining the display of an image, such as an image file for presentation on a display.
  • Drawbacks may include, but are not limited to, improperly formatted markups, images exceeding the display capability of the device, ill-formed content data, ill-formed tables, harmful markups being forwarded to the device, incomplete markup (e.g. a missing closing markup), missing links and similar issues that may diminish the user's experience. These issues may be particularly troublesome for “thin” client devices. Thin client devices may include those devices having limited capabilities in comparison to the data to be handled, such as mobile devices including smart phones, cellular phones, and so on.
  • HTML hypertext markup language
  • HTML is utilized to author information on the Internet (the World Wide Web or “the web”).
  • HTML is utilized to provide the “feel” to the content being provided, e.g., HTML may be implemented to control the way in which the content data is presented to the user in order to provide the desired experience.
  • a smart phone user browsing the Internet, may be confronted with an image with dimensions larger than the phone's display.
  • data often is ill-formed for thin device access or data is ill-communicated for the device's capabilities.
  • a website is unavailable to a mobile device. From the web-side perspective, including alternate markup which is thin device friendly may be time consuming and increase the overall expense of providing content.
  • Mobile devices may also suffer from “browsing” issues associated with accessing different content sources as the user “surfs” the web.
  • Links or uniform resource locators (URL) are utilized to direct the browser to the address for the desired content. Therefore, a link may be included in content that may be rendered by a thick client that may not be rendered by a thin client.
  • URL uniform resource locators
  • Methods of correcting and transcoding markup language content for mobile devices are described.
  • mobile device capabilities are determined.
  • Content is processed to correct malformed tags in the content based on the mobile device's determined capabilities.
  • the corrected content is transcoded from a first mark-up language, which is not supported by a mobile device, into a second markup language which is supported by the mobile device.
  • FIG. 1 illustrates an environment in an exemplary implementation that may use technologies to transform and transcode content.
  • FIG. 2 is an illustration of a thin mobile device in an exemplary implementation.
  • FIG. 3 is a flow diagram depicting a procedure in an exemplary implementation in which malformed content is processed into mobile browser compliant and supportable content based on determined capabilities of a mobile device.
  • FIG. 4 is a flow diagram depicting a procedure in an exemplary implementation in which URL identified content is proxied for presentation on a mobile device.
  • a system which utilizes transforming and transcoding modules to process incomplete first-markup language into content which is supported by a mobile device.
  • HTML web content may be corrected to “fill-in” malformed markup tags. Included content may be reformed in accordance with the capabilities of the mobile target browser for facilitating a rich mobile browsing experience.
  • the corrected content may be transcoded into a language which is understood by the mobile device.
  • a procedure is implemented to proxy URL identified first-markup language content into supported content for presentation on a mobile browser 113 . Further discussion of content processing may be generally found in the discussion with respect to FIG. 3 .
  • an exemplary environment is first described that is operable to convert ill-formed content into mobile browser supported content. Additionally, a link rewriting functionality is also described which may be included to promote mobile browser navigation.
  • FIG. 1 illustrates an environment 100 in an exemplary implementation that is operable to employ a markup content controller 102 for communication with a thin client, such as a mobile device 104 .
  • a thin client such as a mobile device 104
  • a “thick” client 106 typically includes robust capabilities, such as relatively high processing power, extensive memory, and significant data storage capability in comparison to the content being accessed. Examples of thick devices typically include hardwired desktop computers, laptops, fixed multimedia device, and so on.
  • the markup content controller 102 is resident on a server 108 .
  • the server 108 is functioning as a portal for content derived from an external content provider 110 .
  • content may flow from the content provider 110 to the server 108 , via the network 114 .
  • a direct link may be used to transfer content from the content provider 110 to the server 108 and eventually to the client 104 .
  • Other suitable markup content controller 103 configurations include, but are not limited to, on a content provider server 112 or resident on a server interposed between a mobile device and the network 114 .
  • the requested content may flow from the content provider server through the network 114 (partially via a wireless) to the mobile device 104 .
  • the markup content controller 103 included on content provider server 112 the markup content controller and the controller components are substantially similar to markup content controller 102 , discussed herein.
  • the markup content controller 102 determines the thin device's capability in order to match a known agent with the mobile device. For example, the markup content controller 102 may determine device capabilities, such as mobile browser 113 , by interrogating a user-agent header, included in a hypertext transfer protocol (HTTP) request from the mobile device. For instance, ASP.NET (Microsoft Corporation, Redmond, Wash.) web application technology may be utilized. If an agent is matched using ASP.NET technology, the markup content controller 102 captures mobile browser information for use in structuring a reply. For situations in which an agent is not matched, a sufficiently similar agent is implemented. A sufficiently similar agent may be an agent having sufficiently similar browser capabilities. Browser information may include information about the device, supported markup information, screen size, specific transforming idiosyncrasies (e.g., does the browser support tables), maximum content amount, and so on.
  • HTTP hypertext transfer protocol
  • Browser information may include information about the device, supported markup information, screen size, specific transforming idio
  • the markup content controller 102 may include a transforming module 116 which is representative of the functionality to reform malformed content authored in a first-markup language, such as HTML, into corrected content. To accomplish this, the transforming module 116 may correct HTML tags to identify content presentation characteristics. In numerous instances, closing tags (markups which end a particular markup characteristic) are missing or unbalanced. In these instances, the transforming module 116 may be executed to fix this malformed content for presentation.
  • the original content is corrected sufficiently to permit display on a thin device.
  • the transforming module 116 may determine if the image exceeds a particular browser's capabilities. For instance, an image may exceed the browser capabilities by being of a size greater than can be displayed or having a file size which makes display impractical, such as, a high resolution image that takes an inordinate amount of time to download. In such an instance, images exceeding the browser's capacity may be resealed or the image “degraded.” If for instance, an original image is greater than the device's display capabilities, the original image tag may be replaced with an image tag to the resized image designed to fit the mobile device's display capacity. Resizing may be performed by an adaptive transforming proxy such as WINDOWS (Microsoft Corp., Redmond, Wash.) Live Mobile Adaptive Transforming Proxy.
  • WINDOWS Microsoft Corp., Redmond, Wash.
  • the transforming module 116 may be implemented to remove the offending markups prior to fixing improperly constructed tags, such as markups which do not meet a safety criteria.
  • a JavaScript Java Microsystems, Santa Clara, Calif.
  • RSS rich site summary
  • This functionality may be performed by a separate module included in the markup content controller 102 to compartmentalized processing. In this manner, markups that do not meet a safety criteria may be reformed to eliminate or diminish the risk to the mobile browser 113 .
  • a transcoding module 118 is configured to receive the corrected content from the transforming module 116 . Inclusion of the transcoding module 118 , in the markup content controller 102 , permits translation of the first-markup language content into a second-markup language that is supported by the browser. For instance, the transcoding module 118 is configured to convert HTML content into WML content for presentation on the mobile device browser The transcoding module 118 is implemented to transcode the first-language markup into a markup language that is supported by the mobile browser 113 . In situations in which the second-markup language does not support an attribute (e.g., from the first-markup language content), the transcoding module 118 may strip-out the unsupported attribute, while permitting presentation of the underlying content. For instance, the transcoding module 118 may strip out a STYLE attribute from a DIV element when converting HTML content, because the browser implements compact hypertext markup language (cHTML) which does not support STYLE attributes.
  • cHTML compact hypertext markup language
  • the transcoding module 118 may be configured to paginate the content (e.g., FIG. 2 , 204 ). Using this paginated content, a user may efficiently access content on the mobile device. For example, large amounts of text may be broken-up into pages based on a screen size 202 available to a browser 113 .
  • a link rewriting module 120 may be included in the markup content controller 102 (as shown) although alternatively, the link rewriting module 120 may be implemented as a stand-alone component.
  • a markup content controller 102 including the link rewriting module 120 , is substantially similar in configuration and operation as the markup content controller 102 except as is discussed herein.
  • a link rewriting module 120 may promote mobile browsing between web pages over that experienced with mobile browsers implementing standard content.
  • the link rewriting module 120 may function as a proxy for second content referenced in first content. If, for example, a web page references an external content source via a uniform resource locator (URL), the link rewriting module 120 may function to provide the second content in a mobile browser compliant manner.
  • the external content i.e., the target content
  • the target content is downloaded from the external content provider and the content is corrected and transcoded for the mobile browser 113 .
  • a HTML (the first-markup language) link included in first content, is re-pointed to the proxy holding the revised content.
  • the user may have a rich browser navigation experience.
  • a mobile device 104 may access the network 114 via a wireless communication link 122 .
  • a browser 113 resident on the mobile device 104 , presents second-markup language content which is supported by the mobile device.
  • the second-markup language permits content display in a mobile-friendly manner.
  • Second-markup language may allow for stream-lined presentation on a mobile device screen, account for mobile device processor configurations, account for wireless communication rates, accept limited input functionality.
  • a smart phone 104 having a limited screen size 204 , in comparison to a fixed personal computer, limited physical inputs 206 in comparison to a full Qwerty keyboard and pointing system, or similar functionality.
  • acceptable second markup languages include, but are not limited to, wireless markup language (WML), extensible hypertext markup language (XHTML), compact hypertext markup language (cHTML).
  • WML wireless markup language
  • XHTML extensible hypertext markup language
  • cHTML compact hypertext markup language
  • device specific markups are implemented to increase the mobile browsing experience.
  • Device specific markups may address mobile browser idiosyncrasies, e.g., does the browser support tables the maximum amount of content that can be returned, and so on.
  • the network may include a wide area network (WAN), a local area network (LAN), a wireless network, a public telephone network, an intranet, and so on. Other markup languages are acceptable and contemplated as well.
  • WAN wide area network
  • LAN local area network
  • wireless network a public telephone network
  • intranet an intranet
  • Other markup languages are acceptable and contemplated as well.
  • a network 114 is shown, the network may be configured to include multiple sub-networks.
  • any of the functions described herein can be implemented using software, firmware, hardware (e.g., fixed logic circuitry), manual processing, or a combination of these implementations.
  • the terms “module,” “functionality,” and “logic” as used herein generally represent software, firmware, hardware, or a combination thereof.
  • the module, functionality, or logic represents program code that performs specified tasks when executed on a processor (e.g., CPU or CPUs).
  • the program code can be stored in one or more computer readable memory devices, e.g., memory.
  • the markup content controller 102 may be formed as hardware, software, a hybrid of hardware and software, firmware, stored in memory, as a set of computer readable instructions embodied in electronically readable media, etc.
  • FIG. 3 discloses an exemplary procedure of transforming malformed content into corrected transcoded content.
  • the procedure includes determining 302 mobile target browser capabilities.
  • the determination 302 may be made based on header information provided as part of the content request. For instance, the ASP.NET's Mobile Control's infrastructure may be queried to obtain the HTTP request, from the mobile browser, for comparison to a list of known agents. If a match is found, the known browser capabilities are provided.
  • Capabilities include, but are not limited to, supported markups, screen size, specific transforming idiosyncrasies (e.g., does the target browser support table), maximum content return, and so forth.
  • markup tags or scripts having an undesirable characteristic may be removed from the content.
  • a JavaScript Java Microsystems, Santa Clara, Calif.
  • a markup may be removed because the tags are of a class which is capable of being dangerous rather than having been specifically identified as dangerous.
  • scripts and markup tags meeting or exceeding a predetermined safety criteria threshold are eliminated in order to minimize the risk to the mobile device.
  • the safety criteria level may be adjusted as desired. Removing questionable tags and scripts prior to transmission to the mobile browser may minimize the burden on a mobile device to remove the undesirable material.
  • the malformed content may then be processed 304 based on the determined capabilities.
  • the content may be corrected 306 to fix-up malformed tags within the content.
  • Correcting 306 may include fixing-up malformed content (such as, inserting closing tags) to provide substantially complete content. For instance, a close paragraph tag may be included to ensure the relevant text is displayed as a paragraph.
  • Correcting 306 may also be based on the determined characteristics 302 . For instance, the content may be corrected to account for resolution of a mobile device, inputs supported by the mobile, the memory capabilities of the mobile device, and so on. Correcting 306 may ensure that the content is sufficiently well formed for rendering in accordance with the target mobile browser. In this way, the target mobile device does not have to handle these content issues.
  • Links to resized images may be included 308 , such as, when an included image exceeds a predetermined size defined in the mobile target browser capabilities. For example, the image may be resized if the image would exceed the display screen of the mobile device. In other instances, the image is resized if the file containing the image hinders downloading or data presentation. For instance, an image may be “degraded” if the original image is of a higher quality than is capable of being displayed on the mobile device or if download the image would take an excessive amount of time in comparison to the determined capabilities. In this situation, the original image tag is replaced with a link to the resized image generated by an adaptive transforming proxy (i.e., Windows Live Mobile Adaptive Transforming Proxy, Microsoft Corp., Redmond, Wash.) from the downloaded original image.
  • an adaptive transforming proxy i.e., Windows Live Mobile Adaptive Transforming Proxy, Microsoft Corp., Redmond, Wash.
  • the transformed content is transcoded 310 from the first-markup language, which is not supported by a mobile device, into a second-markup language which is supported by the device.
  • second-markup languages include, but are not limited to, extensible hypertext markup language (XHTML), compact hypertext markup language (cHTML), and wireless markup language (WML).
  • the particular markup language selected may be obtained from the captured agent which was utilized to determine 302 the mobile browser's capabilities.
  • transcoding 310 may include stripping out markup tags which are not supported by the mobile browser. In instances in which content exceeds the determined display capabilities, transcoding may include “breaking” the content up into display pages and paginating the content. The size of the content, per page, may be defined by the browser capabilities in order to provide a mobile device friendly experience.
  • the processed content may be returned to the hosting page for transmission to the mobile device.
  • the transformed content is returned to the host page so the processed content is transferred via a wireless link for display on the mobile device.
  • a variety of other examples are also contemplated.
  • FIG. 4 in further examples are discussed in which computer-readable media comprising computer-executable instructions that, when executed, direct a processor, included in a computing system, to rewrite 400 a link to ensure URL referenced second content is provided in a mobile browser friendly manner.
  • the software and acts of the present example may be integrated into the procedure discussed with respect to FIG. 3 or incorporated into software capable being capable of correcting transcoding and/or rewriting.
  • the instruction may permit handling of first content including a link to externally provided second content. For instance, a URL link, referring to external content, is included in a first web page.
  • the computer-executable instructions rewrite 402 a URL link to point to proxied 404 second content.
  • a mobile device attempting to access the content may have difficulty handling the content, present the content in an ill-formed manner or not be able to obtain the second content.
  • the referenced content may be downloaded for processing.
  • the referenced content i.e., the target content
  • Images may be resized and a resized image link included, if desired (discussed above). Markup tags and scrips not meeting a safety threshold or criteria also may be removed.
  • the corrected second content is transcoded 408 into second markup language for proxying 404 . In this way, a mobile device user experiences the proxied second content in a mobile friendly manner in comparison to the original content.
  • the referenced content is authored for mobile browsers
  • link rewriting is altered to accommodate the content.
  • the attribute is passed through link rewriting, but is recognized so the attribute is present in the mobile browser content.
  • an element in the target content has a Multipurpose Internet Media Extension (MIME) TYPE attribute
  • MIME Multipurpose Internet Media Extension
  • Examples of “A” element having a TYPE attribute include;

Abstract

Methods of correcting and transcoding markup language content for mobile devices are described. In an example, mobile device capabilities are determined. Content is processed to correct malformed tags in the content based on the determination. The corrected content is transcoded from a first mark-up language which is not supported by a mobile device into a second markup language which is supported by the mobile device.

Description

    BACKGROUND
  • Markup languages are utilized to control data presentation to electronic device users. In a computing environment, for instance, users are typically provided content that may include images, textual data and the like information for presentation. A markup language may be implemented to control the way in which this content is presented, such as providing data hierarchies. An example of a hierarchy is to separate a textual portion into a title portion which is distinct from the bulk of the text, given a particular alignment, or provided with a special characteristic. Additionally, a markup language may be utilized for determining the display of an image, such as an image file for presentation on a display.
  • While the Internet has experienced phenomenal growth, implementation of particular markup languages, such as hypertext markup language (HTML), may create drawbacks for certain devices. Drawbacks may include, but are not limited to, improperly formatted markups, images exceeding the display capability of the device, ill-formed content data, ill-formed tables, harmful markups being forwarded to the device, incomplete markup (e.g. a missing closing markup), missing links and similar issues that may diminish the user's experience. These issues may be particularly troublesome for “thin” client devices. Thin client devices may include those devices having limited capabilities in comparison to the data to be handled, such as mobile devices including smart phones, cellular phones, and so on.
  • Commonly, hypertext markup language (HTML) is utilized to author information on the Internet (the World Wide Web or “the web”). HTML is utilized to provide the “feel” to the content being provided, e.g., HTML may be implemented to control the way in which the content data is presented to the user in order to provide the desired experience.
  • For instance, a smart phone user, browsing the Internet, may be confronted with an image with dimensions larger than the phone's display. In other instances, data often is ill-formed for thin device access or data is ill-communicated for the device's capabilities. In some cases, a website is unavailable to a mobile device. From the web-side perspective, including alternate markup which is thin device friendly may be time consuming and increase the overall expense of providing content.
  • Mobile devices may also suffer from “browsing” issues associated with accessing different content sources as the user “surfs” the web. Links or uniform resource locators (URL) are utilized to direct the browser to the address for the desired content. Therefore, a link may be included in content that may be rendered by a thick client that may not be rendered by a thin client. Thus, while a mobile browser may display a first website correctly, accessing an external source (a second website page) may result in ill-handled content and decrease the overall mobile browsing experience.
  • SUMMARY
  • Methods of correcting and transcoding markup language content for mobile devices are described. In an example, mobile device capabilities are determined. Content is processed to correct malformed tags in the content based on the mobile device's determined capabilities. The corrected content is transcoded from a first mark-up language, which is not supported by a mobile device, into a second markup language which is supported by the mobile device.
  • This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The detailed description is described with reference to the accompanying figures. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The use of the same reference numbers in different instances in the description and the figures may indicate similar or identical items.
  • FIG. 1 illustrates an environment in an exemplary implementation that may use technologies to transform and transcode content.
  • FIG. 2 is an illustration of a thin mobile device in an exemplary implementation.
  • FIG. 3 is a flow diagram depicting a procedure in an exemplary implementation in which malformed content is processed into mobile browser compliant and supportable content based on determined capabilities of a mobile device.
  • FIG. 4 is a flow diagram depicting a procedure in an exemplary implementation in which URL identified content is proxied for presentation on a mobile device.
  • DETAILED DESCRIPTION
  • Overview
  • Accordingly, techniques are described to process content for display by a “thin” client. In one or more implementations, a system is discussed which utilizes transforming and transcoding modules to process incomplete first-markup language into content which is supported by a mobile device.
  • In an implementation, a technique is described in which content is transformed for transcoding into a mobile browser supportable language. For example, HTML web content may be corrected to “fill-in” malformed markup tags. Included content may be reformed in accordance with the capabilities of the mobile target browser for facilitating a rich mobile browsing experience. Continuing with the previous example, the corrected content may be transcoded into a language which is understood by the mobile device. In other instances, a procedure is implemented to proxy URL identified first-markup language content into supported content for presentation on a mobile browser 113. Further discussion of content processing may be generally found in the discussion with respect to FIG. 3.
  • In the following discussion, an exemplary environment is first described that is operable to convert ill-formed content into mobile browser supported content. Additionally, a link rewriting functionality is also described which may be included to promote mobile browser navigation.
  • Exemplary Environment
  • FIG. 1 illustrates an environment 100 in an exemplary implementation that is operable to employ a markup content controller 102 for communication with a thin client, such as a mobile device 104. In contrast to a “thin” device, a “thick” client 106 typically includes robust capabilities, such as relatively high processing power, extensive memory, and significant data storage capability in comparison to the content being accessed. Examples of thick devices typically include hardwired desktop computers, laptops, fixed multimedia device, and so on.
  • In the referenced implementation, the markup content controller 102 is resident on a server 108. In this instance, the server 108 is functioning as a portal for content derived from an external content provider 110. In this way, in response to a mobile client 104 request, content may flow from the content provider 110 to the server 108, via the network 114. In other instance, a direct link may be used to transfer content from the content provider 110 to the server 108 and eventually to the client 104. Other suitable markup content controller 103 configurations include, but are not limited to, on a content provider server 112 or resident on a server interposed between a mobile device and the network 114. When the requested data is included on the content provider server 112 the requested content may flow from the content provider server through the network 114 (partially via a wireless) to the mobile device 104. In the case of the markup content controller 103 included on content provider server 112, the markup content controller and the controller components are substantially similar to markup content controller 102, discussed herein.
  • In the illustrated embodiment the markup content controller 102 determines the thin device's capability in order to match a known agent with the mobile device. For example, the markup content controller 102 may determine device capabilities, such as mobile browser 113, by interrogating a user-agent header, included in a hypertext transfer protocol (HTTP) request from the mobile device. For instance, ASP.NET (Microsoft Corporation, Redmond, Wash.) web application technology may be utilized. If an agent is matched using ASP.NET technology, the markup content controller 102 captures mobile browser information for use in structuring a reply. For situations in which an agent is not matched, a sufficiently similar agent is implemented. A sufficiently similar agent may be an agent having sufficiently similar browser capabilities. Browser information may include information about the device, supported markup information, screen size, specific transforming idiosyncrasies (e.g., does the browser support tables), maximum content amount, and so on.
  • Often, Internet content is authored in a relaxed manner that is less than fully compliant with HTML standards. While less than fully compliant content is acceptable for thick devices having robust functionality, mobile devices may have difficulty presenting content, present the data in an awkward fashion, or may be unable to present the content. The markup content controller 102 may include a transforming module 116 which is representative of the functionality to reform malformed content authored in a first-markup language, such as HTML, into corrected content. To accomplish this, the transforming module 116 may correct HTML tags to identify content presentation characteristics. In numerous instances, closing tags (markups which end a particular markup characteristic) are missing or unbalanced. In these instances, the transforming module 116 may be executed to fix this malformed content for presentation. In the previous example, the original content is corrected sufficiently to permit display on a thin device. For content including an image, the transforming module 116 may determine if the image exceeds a particular browser's capabilities. For instance, an image may exceed the browser capabilities by being of a size greater than can be displayed or having a file size which makes display impractical, such as, a high resolution image that takes an inordinate amount of time to download. In such an instance, images exceeding the browser's capacity may be resealed or the image “degraded.” If for instance, an original image is greater than the device's display capabilities, the original image tag may be replaced with an image tag to the resized image designed to fit the mobile device's display capacity. Resizing may be performed by an adaptive transforming proxy such as WINDOWS (Microsoft Corp., Redmond, Wash.) Live Mobile Adaptive Transforming Proxy.
  • For content including “dangerous” scripts or markup tags, the transforming module 116 may be implemented to remove the offending markups prior to fixing improperly constructed tags, such as markups which do not meet a safety criteria. For instance, a JavaScript (JAVA, Sun Microsystems, Santa Clara, Calif.), included in a blog post, or rich site summary (RSS) feed, may be removed because the script is capable of including a computer virus. This functionality may be performed by a separate module included in the markup content controller 102 to compartmentalized processing. In this manner, markups that do not meet a safety criteria may be reformed to eliminate or diminish the risk to the mobile browser 113.
  • A transcoding module 118 is configured to receive the corrected content from the transforming module 116. Inclusion of the transcoding module 118, in the markup content controller 102, permits translation of the first-markup language content into a second-markup language that is supported by the browser. For instance, the transcoding module 118 is configured to convert HTML content into WML content for presentation on the mobile device browser The transcoding module 118 is implemented to transcode the first-language markup into a markup language that is supported by the mobile browser 113. In situations in which the second-markup language does not support an attribute (e.g., from the first-markup language content), the transcoding module 118 may strip-out the unsupported attribute, while permitting presentation of the underlying content. For instance, the transcoding module 118 may strip out a STYLE attribute from a DIV element when converting HTML content, because the browser implements compact hypertext markup language (cHTML) which does not support STYLE attributes.
  • For content exceeding the display capacity of the mobile device, the transcoding module 118 may be configured to paginate the content (e.g., FIG. 2, 204). Using this paginated content, a user may efficiently access content on the mobile device. For example, large amounts of text may be broken-up into pages based on a screen size 202 available to a browser 113.
  • A link rewriting module 120 may be included in the markup content controller 102 (as shown) although alternatively, the link rewriting module 120 may be implemented as a stand-alone component. A markup content controller 102, including the link rewriting module 120, is substantially similar in configuration and operation as the markup content controller 102 except as is discussed herein.
  • Inclusion of a link rewriting module 120 may promote mobile browsing between web pages over that experienced with mobile browsers implementing standard content. The link rewriting module 120 may function as a proxy for second content referenced in first content. If, for example, a web page references an external content source via a uniform resource locator (URL), the link rewriting module 120 may function to provide the second content in a mobile browser compliant manner. In the previous instance, the external content, i.e., the target content, is proxied with the original URL included as an argument. The target content is downloaded from the external content provider and the content is corrected and transcoded for the mobile browser 113. In a specific example, a HTML (the first-markup language) link, included in first content, is re-pointed to the proxy holding the revised content. In the foregoing manner, the user may have a rich browser navigation experience.
  • A mobile device 104 may access the network 114 via a wireless communication link 122. For instance, a browser 113, resident on the mobile device 104, presents second-markup language content which is supported by the mobile device. The second-markup language permits content display in a mobile-friendly manner. Second-markup language may allow for stream-lined presentation on a mobile device screen, account for mobile device processor configurations, account for wireless communication rates, accept limited input functionality. For example, a smart phone 104 having a limited screen size 204, in comparison to a fixed personal computer, limited physical inputs 206 in comparison to a full Qwerty keyboard and pointing system, or similar functionality. Examples of acceptable second markup languages include, but are not limited to, wireless markup language (WML), extensible hypertext markup language (XHTML), compact hypertext markup language (cHTML). In specific instances, device specific markups are implemented to increase the mobile browsing experience. Device specific markups may address mobile browser idiosyncrasies, e.g., does the browser support tables the maximum amount of content that can be returned, and so on.
  • While the Internet is referenced throughout the previous discussion, other networks are suitable as well. For example, the network may include a wide area network (WAN), a local area network (LAN), a wireless network, a public telephone network, an intranet, and so on. Other markup languages are acceptable and contemplated as well. Although a network 114 is shown, the network may be configured to include multiple sub-networks.
  • Generally, any of the functions described herein can be implemented using software, firmware, hardware (e.g., fixed logic circuitry), manual processing, or a combination of these implementations. The terms “module,” “functionality,” and “logic” as used herein generally represent software, firmware, hardware, or a combination thereof. In the case of a software implementation, for instance, the module, functionality, or logic represents program code that performs specified tasks when executed on a processor (e.g., CPU or CPUs). The program code can be stored in one or more computer readable memory devices, e.g., memory. The markup content controller 102 may be formed as hardware, software, a hybrid of hardware and software, firmware, stored in memory, as a set of computer readable instructions embodied in electronically readable media, etc.
  • The following discussion describes transformation techniques that may be implemented utilizing the previously described systems and devices. Aspects of each of the procedures may be implemented in hardware, firmware, or software, or a combination thereof. The procedures are shown as a set of blocks that specify operations performed by one or more devices and are not necessarily limited to the orders shown for performing the operations by the respective blocks.
  • FIG. 3 discloses an exemplary procedure of transforming malformed content into corrected transcoded content. The procedure includes determining 302 mobile target browser capabilities. The determination 302 may be made based on header information provided as part of the content request. For instance, the ASP.NET's Mobile Control's infrastructure may be queried to obtain the HTTP request, from the mobile browser, for comparison to a list of known agents. If a match is found, the known browser capabilities are provided. Capabilities include, but are not limited to, supported markups, screen size, specific transforming idiosyncrasies (e.g., does the target browser support table), maximum content return, and so forth.
  • Optionally, markup tags or scripts having an undesirable characteristic may be removed from the content. For example, a JavaScript (JAVA, Sun Microsystems, Santa Clara, Calif.), is removed as the script may include a virus. In another example, a markup may be removed because the tags are of a class which is capable of being dangerous rather than having been specifically identified as dangerous. For example, scripts and markup tags meeting or exceeding a predetermined safety criteria threshold are eliminated in order to minimize the risk to the mobile device. Additionally, the safety criteria level may be adjusted as desired. Removing questionable tags and scripts prior to transmission to the mobile browser may minimize the burden on a mobile device to remove the undesirable material.
  • The malformed content may then be processed 304 based on the determined capabilities. The content, for instance, may be corrected 306 to fix-up malformed tags within the content. Correcting 306 may include fixing-up malformed content (such as, inserting closing tags) to provide substantially complete content. For instance, a close paragraph tag may be included to ensure the relevant text is displayed as a paragraph. Correcting 306 may also be based on the determined characteristics 302. For instance, the content may be corrected to account for resolution of a mobile device, inputs supported by the mobile, the memory capabilities of the mobile device, and so on. Correcting 306 may ensure that the content is sufficiently well formed for rendering in accordance with the target mobile browser. In this way, the target mobile device does not have to handle these content issues.
  • Links to resized images may be included 308, such as, when an included image exceeds a predetermined size defined in the mobile target browser capabilities. For example, the image may be resized if the image would exceed the display screen of the mobile device. In other instances, the image is resized if the file containing the image hinders downloading or data presentation. For instance, an image may be “degraded” if the original image is of a higher quality than is capable of being displayed on the mobile device or if download the image would take an excessive amount of time in comparison to the determined capabilities. In this situation, the original image tag is replaced with a link to the resized image generated by an adaptive transforming proxy (i.e., Windows Live Mobile Adaptive Transforming Proxy, Microsoft Corp., Redmond, Wash.) from the downloaded original image.
  • The transformed content is transcoded 310 from the first-markup language, which is not supported by a mobile device, into a second-markup language which is supported by the device. Exemplary second-markup languages include, but are not limited to, extensible hypertext markup language (XHTML), compact hypertext markup language (cHTML), and wireless markup language (WML). The particular markup language selected may be obtained from the captured agent which was utilized to determine 302 the mobile browser's capabilities. As discussed previously, transcoding 310 may include stripping out markup tags which are not supported by the mobile browser. In instances in which content exceeds the determined display capabilities, transcoding may include “breaking” the content up into display pages and paginating the content. The size of the content, per page, may be defined by the browser capabilities in order to provide a mobile device friendly experience.
  • The processed content may be returned to the hosting page for transmission to the mobile device. For instance, the transformed content is returned to the host page so the processed content is transferred via a wireless link for display on the mobile device. A variety of other examples are also contemplated.
  • Referring to FIG. 4, in further examples are discussed in which computer-readable media comprising computer-executable instructions that, when executed, direct a processor, included in a computing system, to rewrite 400 a link to ensure URL referenced second content is provided in a mobile browser friendly manner. Further, the software and acts of the present example may be integrated into the procedure discussed with respect to FIG. 3 or incorporated into software capable being capable of correcting transcoding and/or rewriting. The instruction may permit handling of first content including a link to externally provided second content. For instance, a URL link, referring to external content, is included in a first web page. The computer-executable instructions rewrite 402 a URL link to point to proxied 404 second content. If, link rewriting were not applied, a mobile device attempting to access the content may have difficulty handling the content, present the content in an ill-formed manner or not be able to obtain the second content. The referenced content may be downloaded for processing. In this instance, the referenced content, i.e., the target content, is corrected to ensure the content is sufficiently robust or compliant for efficient presentation by the mobile device. Images may be resized and a resized image link included, if desired (discussed above). Markup tags and scrips not meeting a safety threshold or criteria also may be removed. The corrected second content is transcoded 408 into second markup language for proxying 404. In this way, a mobile device user experiences the proxied second content in a mobile friendly manner in comparison to the original content.
  • If, the referenced content is authored for mobile browsers, link rewriting is altered to accommodate the content. If the referenced content is authored for mobile browsing and includes particular attributes, the attribute is passed through link rewriting, but is recognized so the attribute is present in the mobile browser content. If an element in the target content has a Multipurpose Internet Media Extension (MIME) TYPE attribute, the MIME attribute is recognized for utilization in transforming the data. Examples of “A” element having a TYPE attribute include;
      • If the TYPE attribute is “application/x-gadget, and if the transformer's GadgetFormatString property is set to some non-empty string value, the URL of the A element will be re-written to match the value of the GadgetFormatString property, with {0} replaced by the URL-encoded value of the original URL. (This may be used for links to other pages within the same application.)
      • If the TYPE attribute is “application/x-direct”, and if the transformer's IsDirectLink Supported property is set to true, the URL of the A element will be preserved. (This may be used for links to external content sites that are known to be capable of mobile transforming.)
      • If the TYPE attribute is “application/x-render”, the URL will be rewritten to point to the Adaptive Transforming proxy. (This may be used for links to sites which are known to require more robust computing (e.g., desktop computers).
        Explicitly setting the above attributes for the hosted transformer permits content developers to generate mobile browser orientated web applications without having to directly develop support for mobile markup languages.
  • Conclusion
  • Although the invention has been described in language specific to structural features and/or methodological acts, it is to be understood that the invention defined in the appended claims is not necessarily limited to the specific features or acts described. Rather, the specific features and acts are disclosed as exemplary forms of implementing the claimed invention.

Claims (20)

1. A method comprising:
determining capabilities of a mobile device; and
processing content based on the determining by:
correcting malformed markup tags in the content; and
transcoding the corrected content from a first-markup language that is not supported by the mobile device into a second-markup language that is supported by the mobile device.
2. The method as described in claim 1, further comprising inserting a resized image link into the corrected content based on the determining.
3. The method as described in claim 1, further comprising rewriting a uniform resource locator link, included in the corrected content, to point to second content.
4. The method as described in claim 3, wherein rewriting includes proxying second content from an external source.
5. The method as described in claim 1, wherein correcting includes removing tags that do not meet a safety criteria.
6. The method as described in claim 1, further comprising transmitting the transcoded content to a thin device.
7. The method as described in claim 1, wherein determining is based on comparing a request header with a list of known agents.
8. The method as described in claim 1, wherein the method is implement as an active server page.
9. A system comprising:
a transforming module to correct malformed tags in content based on determined capabilities of a browser; and
a transcoding module to transcode the corrected content from a first-markup language that is not supported by the browser into a second-markup language that is supported by the browser.
10. The system as described in claim 9, further comprising a link rewriting module to proxy uniform resource locator identified content for correction.
11. The system as described in claim 9, wherein the malformed tags are corrected such that transforming module removes undesirable tags in content.
12. The system as described in claim 9, wherein the transforming module inserts an image link, in the corrected content, based on determined capabilities of the browser.
13. The system as described in claim 9, wherein the transcoding module paginates corrected content based on determined capabilities of the browser.
14. The system as described in claim 9, wherein the first-markup language is hypertext markup language (HTML).
15. The system as described in claim 9, wherein the system is implemented as an active server page.
16. The system as described in claim 9, wherein the system is in wireless communication with a thin device.
17. One or more computer-readable media comprising computer-executable instructions that, when executed, direct a computing system to,
rewrite a uniform resource locator link, included in first content, to point to second content; and
proxy second content processed to:
correct malformed markup tags in the second content; and
transcode the corrected second content from first-markup language that is not supported by a mobile device into second-markup language that is supported by the mobile device.
18. The one or more computer-readable media as described in claim 17, wherein proxying is provided as an active server page.
19. The one or more computer-readable media as described in claim 17, wherein the second content is corrected to include a resized image link based on the determining.
20. The one or more computer-readable media as described in claim 17, wherein first-markup language is hypertext markup language (HTML).
US11/689,335 2007-03-21 2007-03-21 Content markup transformation Expired - Fee Related US7853593B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/689,335 US7853593B2 (en) 2007-03-21 2007-03-21 Content markup transformation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/689,335 US7853593B2 (en) 2007-03-21 2007-03-21 Content markup transformation

Publications (2)

Publication Number Publication Date
US20080235573A1 true US20080235573A1 (en) 2008-09-25
US7853593B2 US7853593B2 (en) 2010-12-14

Family

ID=39775948

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/689,335 Expired - Fee Related US7853593B2 (en) 2007-03-21 2007-03-21 Content markup transformation

Country Status (1)

Country Link
US (1) US7853593B2 (en)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080270913A1 (en) * 2007-04-26 2008-10-30 Howard Singer Methods, Media, and Devices for Providing a Package of Assets
WO2009152891A2 (en) * 2008-05-29 2009-12-23 Vodtec Bvba An on-board module and associated method for delivery of content
US20100162133A1 (en) * 2008-12-23 2010-06-24 At&T Mobility Ii Llc User interface paradigm for next-generation mobile messaging
US20100299591A1 (en) * 2008-01-25 2010-11-25 Access Co., Ltd. Markup language document conversion system, device, method, and program
US20110040828A1 (en) * 2007-12-20 2011-02-17 Chalk Media Service Corp. Method and System for Authoring Mobile Content in a Slideshow or Presentation Application for Direct Delivery to a Mobile Device
US20110167333A1 (en) * 2008-06-03 2011-07-07 Symmetric Co. Ltd Web page distribution system
US20120096366A1 (en) * 2010-10-15 2012-04-19 Cellco Partnership D/B/A Verizon Wireless Technique for handling urls for different mobile devices that use different user interface platforms
US20120284700A1 (en) * 2008-06-04 2012-11-08 Dell Products L.P. Modular asl component
US20130007107A1 (en) * 2011-07-01 2013-01-03 International Business Machines Corporation Rendering components within different browser environments
US20130117351A1 (en) * 2011-11-09 2013-05-09 Cellco Partnership D/B/A Verizon Wireless Efficient transfer of web content to different user platforms
US20140201625A1 (en) * 2012-04-24 2014-07-17 Concepts in Data Management, SRL System and method for generating a browser compatible document
US20140245415A1 (en) * 2012-03-26 2014-08-28 Tencent Technology (Shenzhen) Company Limited Method and system for implementing directional publishing of information, and computer storage medium
US20150249722A1 (en) * 2014-02-28 2015-09-03 Kabushiki Kaisha Toshiba Content providing apparatus and method, and computer program product
US9183012B2 (en) 2012-06-22 2015-11-10 Microsoft Technology Licensing, Llc Adaptive rendering based on runtime capability check
US9503509B1 (en) * 2012-11-14 2016-11-22 Facebook, Inc. Systems and methods for substituting references to content
US10185702B1 (en) * 2010-12-28 2019-01-22 Amazon Technologies, Inc. Publisher formatting controls
US20190141076A1 (en) * 2016-03-15 2019-05-09 Vade Retro Technology Inc. METHODS, SYSTEMS AND DEVICES TO MITIGATE THE EFFECTS OF SIDE EFFECT URLs IN LEGITIMATE AND PHISHING ELECTRONIC MESSAGES
US10999233B2 (en) 2008-12-23 2021-05-04 Rcs Ip, Llc Scalable message fidelity
US11134365B2 (en) * 2014-12-29 2021-09-28 Convida Wireless, Llc Resource link management at service layer
US11599325B2 (en) * 2019-01-03 2023-03-07 Bluebeam, Inc. Systems and methods for synchronizing graphical displays across devices

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8086756B2 (en) * 2006-01-25 2011-12-27 Cisco Technology, Inc. Methods and apparatus for web content transformation and delivery
US8156418B2 (en) * 2008-06-05 2012-04-10 Microsoft Corporation Image acquisition from dynamic content for delivery to network-enabled static display devices
US9071651B2 (en) * 2008-06-05 2015-06-30 Microsoft Technology Licensing, Llc Dynamic content delivery to network-enabled static display device
US8468587B2 (en) * 2008-09-26 2013-06-18 Microsoft Corporation Binding activation of network-enabled devices to web-based services
US9131013B2 (en) 2011-07-29 2015-09-08 International Business Machines Corporation Tailoring content to be delivered to mobile device based upon features of mobile device
JP2013168129A (en) * 2012-01-18 2013-08-29 Ricoh Co Ltd Information processing system, data providing device, electronic apparatus, information processing method, data providing method, data acquiring method, and program
US9866652B2 (en) 2013-01-28 2018-01-09 Telefonaktiebolaget L M Ericsson (Publ) Method, apparatus and computer program for providing a data object from a content server to a client device over a radio access network (RAN)

Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6247048B1 (en) * 1998-04-30 2001-06-12 Openwave Systems Inc Method and apparatus for transcoding character sets between internet hosts and thin client devices over data networks
US20010037405A1 (en) * 2000-04-07 2001-11-01 Sideek Sinnathambi Mohamed Wireless web generation from conventional web sites by pattern identification and dynamic content extraction
US20030004984A1 (en) * 2001-07-02 2003-01-02 Iscreen Corporation Methods for transcoding webpage and creating personal profile
US20030018796A1 (en) * 2001-05-11 2003-01-23 Jim Chou Transcoding multimedia information within a network communication system
US20030053448A1 (en) * 2001-05-16 2003-03-20 David Craig Systems and methods for providing differentiated services within a network communication system
US20030115365A1 (en) * 2001-12-19 2003-06-19 Teddy Lindsey Transcoding information in a first markup language into a second markup language
US6611358B1 (en) * 1997-06-17 2003-08-26 Lucent Technologies Inc. Document transcoding system and method for mobile stations and wireless infrastructure employing the same
US20040002325A1 (en) * 1997-07-22 2004-01-01 Evans Michael Paul Mobile handset with browser application to be used to recognize textual presentation
US20040034853A1 (en) * 2002-03-22 2004-02-19 Bill Gibbons Mobile download system
US20040148571A1 (en) * 2003-01-27 2004-07-29 Lue Vincent Wen-Jeng Method and apparatus for adapting web contents to different display area
US6880014B2 (en) * 2001-09-24 2005-04-12 International Business Machines Corporation Method and system of use of transcode directives for distributed control of transcoding servers
US6925595B1 (en) * 1998-08-05 2005-08-02 Spyglass, Inc. Method and system for content conversion of hypertext data using data mining
US6971060B1 (en) * 2001-02-09 2005-11-29 Openwave Systems Inc. Signal-processing based approach to translation of web pages into wireless pages
US7020685B1 (en) * 1999-10-08 2006-03-28 Openwave Systems Inc. Method and apparatus for providing internet content to SMS-based wireless devices
US7024460B2 (en) * 2001-07-31 2006-04-04 Bytemobile, Inc. Service-based compression of content within a network communication system
US7054952B1 (en) * 1999-12-09 2006-05-30 International Business Machines Corp. Electronic document delivery system employing distributed document object model (DOM) based transcoding and providing interactive javascript support
US20060168129A1 (en) * 2004-12-22 2006-07-27 Research In Motion Limited System and method for enhancing network browsing speed by setting a proxy server on a handheld device
US7120702B2 (en) * 2001-03-03 2006-10-10 International Business Machines Corporation System and method for transcoding web content for display by alternative client devices
US20060271642A1 (en) * 2005-05-26 2006-11-30 Nicholas Stavrakos Method for multipart encoding
US20070266113A1 (en) * 2006-05-12 2007-11-15 Chris Koopmans Method for cache object aggregation

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001086462A1 (en) 2000-05-08 2001-11-15 Leap Wireless International, Inc. Method of converting html/xml to hdml/wml in real-time for display on mobile devices
TW494691B (en) 2000-11-21 2002-07-11 Koninkl Philips Electronics Nv Mobile device, auxiliary rendering device and arrangement

Patent Citations (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6611358B1 (en) * 1997-06-17 2003-08-26 Lucent Technologies Inc. Document transcoding system and method for mobile stations and wireless infrastructure employing the same
US20040002325A1 (en) * 1997-07-22 2004-01-01 Evans Michael Paul Mobile handset with browser application to be used to recognize textual presentation
US6247048B1 (en) * 1998-04-30 2001-06-12 Openwave Systems Inc Method and apparatus for transcoding character sets between internet hosts and thin client devices over data networks
US6925595B1 (en) * 1998-08-05 2005-08-02 Spyglass, Inc. Method and system for content conversion of hypertext data using data mining
US7020685B1 (en) * 1999-10-08 2006-03-28 Openwave Systems Inc. Method and apparatus for providing internet content to SMS-based wireless devices
US7054952B1 (en) * 1999-12-09 2006-05-30 International Business Machines Corp. Electronic document delivery system employing distributed document object model (DOM) based transcoding and providing interactive javascript support
US20010037405A1 (en) * 2000-04-07 2001-11-01 Sideek Sinnathambi Mohamed Wireless web generation from conventional web sites by pattern identification and dynamic content extraction
US6971060B1 (en) * 2001-02-09 2005-11-29 Openwave Systems Inc. Signal-processing based approach to translation of web pages into wireless pages
US7120702B2 (en) * 2001-03-03 2006-10-10 International Business Machines Corporation System and method for transcoding web content for display by alternative client devices
US7444418B2 (en) * 2001-05-11 2008-10-28 Bytemobile, Inc. Transcoding multimedia information within a network communication system
US20030018796A1 (en) * 2001-05-11 2003-01-23 Jim Chou Transcoding multimedia information within a network communication system
US20030053448A1 (en) * 2001-05-16 2003-03-20 David Craig Systems and methods for providing differentiated services within a network communication system
US7031314B2 (en) * 2001-05-16 2006-04-18 Bytemobile, Inc. Systems and methods for providing differentiated services within a network communication system
US20030004984A1 (en) * 2001-07-02 2003-01-02 Iscreen Corporation Methods for transcoding webpage and creating personal profile
US7024460B2 (en) * 2001-07-31 2006-04-04 Bytemobile, Inc. Service-based compression of content within a network communication system
US6880014B2 (en) * 2001-09-24 2005-04-12 International Business Machines Corporation Method and system of use of transcode directives for distributed control of transcoding servers
US20030115365A1 (en) * 2001-12-19 2003-06-19 Teddy Lindsey Transcoding information in a first markup language into a second markup language
US20040034853A1 (en) * 2002-03-22 2004-02-19 Bill Gibbons Mobile download system
US20040148571A1 (en) * 2003-01-27 2004-07-29 Lue Vincent Wen-Jeng Method and apparatus for adapting web contents to different display area
US20060168129A1 (en) * 2004-12-22 2006-07-27 Research In Motion Limited System and method for enhancing network browsing speed by setting a proxy server on a handheld device
US20060271642A1 (en) * 2005-05-26 2006-11-30 Nicholas Stavrakos Method for multipart encoding
US20070266113A1 (en) * 2006-05-12 2007-11-15 Chris Koopmans Method for cache object aggregation

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080270913A1 (en) * 2007-04-26 2008-10-30 Howard Singer Methods, Media, and Devices for Providing a Package of Assets
US20110040828A1 (en) * 2007-12-20 2011-02-17 Chalk Media Service Corp. Method and System for Authoring Mobile Content in a Slideshow or Presentation Application for Direct Delivery to a Mobile Device
US20100299591A1 (en) * 2008-01-25 2010-11-25 Access Co., Ltd. Markup language document conversion system, device, method, and program
WO2009152891A2 (en) * 2008-05-29 2009-12-23 Vodtec Bvba An on-board module and associated method for delivery of content
WO2009152891A3 (en) * 2008-05-29 2010-08-12 Vodtec Bvba An on-board module and associated method for delivery of content
US20110167333A1 (en) * 2008-06-03 2011-07-07 Symmetric Co. Ltd Web page distribution system
US8726150B2 (en) * 2008-06-03 2014-05-13 Symmetric Co., Ltd. Web page distribution system
US20120284700A1 (en) * 2008-06-04 2012-11-08 Dell Products L.P. Modular asl component
US9678722B2 (en) * 2008-06-04 2017-06-13 Dell Products L.P. Modular ASL component
US10999233B2 (en) 2008-12-23 2021-05-04 Rcs Ip, Llc Scalable message fidelity
US20100162133A1 (en) * 2008-12-23 2010-06-24 At&T Mobility Ii Llc User interface paradigm for next-generation mobile messaging
US9009599B2 (en) * 2010-10-15 2015-04-14 Cellco Partnership Technique for handling URLs for different mobile devices that use different user interface platforms
US20120096366A1 (en) * 2010-10-15 2012-04-19 Cellco Partnership D/B/A Verizon Wireless Technique for handling urls for different mobile devices that use different user interface platforms
US10185702B1 (en) * 2010-12-28 2019-01-22 Amazon Technologies, Inc. Publisher formatting controls
US9143378B2 (en) * 2011-07-01 2015-09-22 International Business Machines Corporation Rendering components within different browser environments
US20130007107A1 (en) * 2011-07-01 2013-01-03 International Business Machines Corporation Rendering components within different browser environments
US9208253B2 (en) * 2011-11-09 2015-12-08 Cellco Partnership Efficient transfer of web content to different user platforms
US20130117351A1 (en) * 2011-11-09 2013-05-09 Cellco Partnership D/B/A Verizon Wireless Efficient transfer of web content to different user platforms
US20140245415A1 (en) * 2012-03-26 2014-08-28 Tencent Technology (Shenzhen) Company Limited Method and system for implementing directional publishing of information, and computer storage medium
US20140201625A1 (en) * 2012-04-24 2014-07-17 Concepts in Data Management, SRL System and method for generating a browser compatible document
US9183012B2 (en) 2012-06-22 2015-11-10 Microsoft Technology Licensing, Llc Adaptive rendering based on runtime capability check
US10229030B2 (en) 2012-06-22 2019-03-12 Microsoft Technology Licensing, Llc Adaptive rendering based on runtime capability check
US20170237827A1 (en) * 2012-11-14 2017-08-17 Facebook, Inc. Systems and methods for substituting references to content
US10084885B2 (en) * 2012-11-14 2018-09-25 Facebook, Inc. Systems and methods for substituting references to content
US9674304B2 (en) * 2012-11-14 2017-06-06 Facebook, Inc. Systems and methods for substituting references to content
US20170054829A1 (en) * 2012-11-14 2017-02-23 Facebook, Inc. Systems and methods for substituting references to content
US9503509B1 (en) * 2012-11-14 2016-11-22 Facebook, Inc. Systems and methods for substituting references to content
US20150249722A1 (en) * 2014-02-28 2015-09-03 Kabushiki Kaisha Toshiba Content providing apparatus and method, and computer program product
US11134365B2 (en) * 2014-12-29 2021-09-28 Convida Wireless, Llc Resource link management at service layer
US20190141076A1 (en) * 2016-03-15 2019-05-09 Vade Retro Technology Inc. METHODS, SYSTEMS AND DEVICES TO MITIGATE THE EFFECTS OF SIDE EFFECT URLs IN LEGITIMATE AND PHISHING ELECTRONIC MESSAGES
US10708303B2 (en) * 2016-03-15 2020-07-07 Vade Secure Inc. Methods, systems and devices to mitigate the effects of side effect URLs in legitimate and phishing electronic messages
US11599325B2 (en) * 2019-01-03 2023-03-07 Bluebeam, Inc. Systems and methods for synchronizing graphical displays across devices

Also Published As

Publication number Publication date
US7853593B2 (en) 2010-12-14

Similar Documents

Publication Publication Date Title
US7853593B2 (en) Content markup transformation
US6535896B2 (en) Systems, methods and computer program products for tailoring web page content in hypertext markup language format for display within pervasive computing devices using extensible markup language tools
US8001257B2 (en) Supplying electronic content to networked appliances
US9866612B2 (en) Server-based browser system
CN102779167B (en) The method and system of display web page in the terminal
US10015226B2 (en) Methods for making AJAX web applications bookmarkable and crawlable and devices thereof
US20020069296A1 (en) Internet content reformatting apparatus and method
US9984052B2 (en) Verifying content of resources in markup language documents
WO2018001124A1 (en) Webpage file sending method, webpage rendering method and apparatus, and webpage rendering system
US20110106908A1 (en) Transfer of information between at least two software
US20040268249A1 (en) Document transformation
CN110221871B (en) Webpage acquisition method and device, computer equipment and storage medium
CN106980698A (en) Browser static resource loading method, browser program and readable storage medium storing program for executing
WO2016050124A1 (en) Method, device and server for web page transcoding
KR20030041432A (en) An XML-based method of supplying Web-pages and its system for non-PC information terminals
Whang et al. WebAlchemist: a web transcoding system for mobile web access in handheld devices
WO2008132706A1 (en) A web browsing method and system
WO2001048630A2 (en) Client-server data communication system and method for data transfer between a server and different clients
US8806326B1 (en) User preference based content linking
US20130110912A1 (en) System and method for providing anonymous internet browsing
Davis et al. A comparative study of SOAP and DCOM
CN101651939A (en) Method for replacing Web pages oriented to B/S system proxy server
JP2004252546A (en) Content conversion method and device, and program
JP2004021988A (en) System, method, and computer readable medium for transferring and rendering web page
Hong et al. A real-time web contents adaptation for mobile user

Legal Events

Date Code Title Description
AS Assignment

Owner name: MICROSOFT CORPORATION, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SERDY, JR., FRANK S;ROMATKA, PH.D., RAINER J.;AGNEY, MICHAEL S.;AND OTHERS;REEL/FRAME:019067/0318;SIGNING DATES FROM 20070315 TO 20070320

Owner name: MICROSOFT CORPORATION, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SERDY, JR., FRANK S;ROMATKA, PH.D., RAINER J.;AGNEY, MICHAEL S.;AND OTHERS;SIGNING DATES FROM 20070315 TO 20070320;REEL/FRAME:019067/0318

STCF Information on status: patent grant

Free format text: PATENTED CASE

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

CC Certificate of correction
FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034542/0001

Effective date: 20141014

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552)

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20221214