WO2017045026A1 - System and method for providing a personalised reactive web experience - Google Patents
System and method for providing a personalised reactive web experience Download PDFInfo
- Publication number
- WO2017045026A1 WO2017045026A1 PCT/AU2016/050860 AU2016050860W WO2017045026A1 WO 2017045026 A1 WO2017045026 A1 WO 2017045026A1 AU 2016050860 W AU2016050860 W AU 2016050860W WO 2017045026 A1 WO2017045026 A1 WO 2017045026A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- user
- transformation rules
- web
- request
- transformation
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Definitions
- the present invention relates to delivery of content via the World Wide Web, and in particular to methods, systems and computer software products for modifying content to provide users with a personalised web experience.
- the Internet and more particularly the World Wide Web (or simply 'web') has become ubiquitous within the developed world, and is continuously extending its reach, particularly through advances in mobile data communications technology and
- Web sites and pages are available to cover nearly every possible topic of interest, and have become integral to many aspects of an individual's life, from entertainment to education, information exchange, research and shopping for goods and/or services, for performing a wide range of commercial, financial, governmental, and other functions online, among innumerable other applications.
- An 'accessible' web site is one which can be used by all of its intended visitors, including those with differing physical and cognitive capabilities.
- Web sites with accessibility problems can pose significant barriers to people with disabilities. While a number of techniques and standards have been developed in order to address web accessibility issues, web site designers and developers often lack the knowledge and skills to develop truly accessible web sites. Even if accessibility is considered during the development of a web site, errors, omissions and problems may still arise, particularly taking into consideration the very wide range of differing abilities of potential users. Everything from physical disabilities, such as vision impairment (including colour blindness) and motor control difficulties through to cognitive differences, e.g. resulting from location on the autism spectrum or other cognitive variation, can render an otherwise highly usable and generally accessible web site painful, difficult or
- an object of the present invention to provide novel systems, methods and computer software products capable of delivering a personalised reactive web experience to individual users, in a manner that is substantially independent of the design and implementation of each individual web site.
- a broad goal of the invention is to provide a more 'user-centric' window onto the World Wide Web.
- the present invention provides a method, implemented by a web experience platform application executed by a processor, for providing a user with a personalised web experience, the method comprising: receiving, from a client application operated by the user, a request to retrieve web-based content from a remote server accessible via a data network and identified by a server address;
- the method may further include, after receiving the request to retrieve web- based content and prior to forwarding the request, performing further steps of:
- a data store of transformation rules may embody instructions for performing transformative operations on outgoing user requests and/or retrieved web- based content. Such transformations may alter the appearance, layout, presentation and/or functionality of entire web sites, individual pages, and/or individual elements within a web page. Correlations between user characteristics and properties of transformation rules are used to select the transformations that may be applied when presenting web content to an individual user.
- the transformation rules are expressed using a scripting language, such that new rules and associated rule properties may be developed by human operators and/or via automated learning and extension operations.
- Characteristics associated with the user may include one or more user preferences, wherein each user preference comprises a measure of affinity of the user with a corresponding one of the transformation rules. A positive affinity may result in the associated transformation rule being automatically applied, or optionally suggested, to the user.
- Properties of the transformation rules may comprise one or more properties selected from a group comprising: transformation actions; traits; profiles; categories; and locators.
- a 'trait' is represented as a binary value defining an
- a 'profile' comprises one or more grouped traits, i.e. a set of binary values.
- a profile may further comprise other profiles.
- a 'category' comprises a tag or reference corresponding with a grouping of transformation rules.
- a 'locator' comprises web location information, and may include one or more of a domain name, an Internet address, a URI, a URL, or a URN.
- a locator may define a single page, a complete site, or a group site, for example through the use of appropriate wildcard characters.
- a locator may further comprise one or more time values defining one or more corresponding time periods.
- a locator may further comprise information identifying a context/environment.
- Context/environment information may include device type (e.g. 'desktop', 'laptop', 'tablet' etc), connectivity type (e.g. 'WiFi', '3G', '4G', 'LAN' etc), geographic location, execution environment, user agent parameters, and so forth.
- device type e.g. 'desktop', 'laptop', 'tablet' etc
- connectivity type e.g. 'WiFi', '3G', '4G', 'LAN' etc
- the method may further comprise presenting to the user, via the client application, details of one or more suggested transformation rules.
- the web experience platform application may receive from the user, via the client application, a preference response comprising an indication of user affinity with a suggested transformation rule. Preference responses may be stored in the
- the one or more matching transformation rules may comprise accepted transformation rules for which the user preferences indicate a positive affinity. For example, rules that have been expressly selected by the user are applied.
- the one or more matching transformation rules may comprise implicit transformation rules identified by correlating characteristics of accepted transformation rules of the user with characteristics of one or more additional transformation rules in the transformation rules data store. Such correlation may comprise computing a weighting value for each of the additional transformation rules, based on characteristics of accepted transformation rules and of the additional transformation rules, and treating the additional transformation rule as an implicit transformation rule if the weighting value exceeds a predetermined threshold.
- the method may further comprise presenting to the user, via the client application, details of one or more of the implicit transformation rules.
- the web experience platform application may receive from the user, via the client application, a preference response comprising an indication of user affinity with a presented implicit transformation rule.
- the method may also comprise maintaining a record of a number of times that an implicit transformation rule has been applied and, in the event that the number exceeds a threshold, treating the implicit transformation rule as an inferred
- Inferred transformation rules may be employed, alternatively or in addition to accepted transformation rules when performing correlations to identify matching transformation rules and/or identifying suggested transformation rules.
- the invention provides a method for assisting a first user with a personalised web experience, the method comprising:
- the invention provides a computer program product comprising a computer-readable storage medium containing stored instructions which, when executed by a corresponding processor, implement a web experience platform application configured to perform a method for providing a user with a personalised web experience, the method comprising:
- the invention provides a computer program product comprising a computer-readable storage medium containing stored instructions which, when executed by a corresponding processor, implement a web experience server platform configured to perform a method comprising:
- the remotely-executing web experience platform application is enabled to correlate the user characteristics with properties of the transformation rules to identify one or more matching transformation rules to be applied to request and/or response data so as to provide the user with a personalised web experience.
- a 'processor' in the context of the present invention, may refer to physical hardware (e.g. a microprocessor or CPU), to a virtual machine, interpreter or emulator executing on physical hardware, or to any other combination of hardware and/or software configured to execute stored instructions.
- stored instructions may include machine code, scripts, byte code and other elements, statements, commands and so forth that are capable of execution by a suitably-configured processor.
- choices such as hardware and software architecture, and language are a matter of design, and may be influenced by many factors additional to the particular functionality that is to be implemented. It will therefore be understood that the present invention is not limited to any particular set of such choices.
- Figure 1 is a schematic diagram illustrating a networked system embodying the invention
- FIG. 2 is a block diagram of an exemplary system architecture embodying the invention
- Figure 3 is a flowchart of a method of providing a user with a personalised web experience embodying the invention
- FIG. 4 is a flowchart of a method of identifying transformation rules embodying the invention.
- Figure 5 is a flowchart of a method of learning user characteristics embodying the invention.
- Figure 6 shows a section of a browser display including an exemplary overlay embodying the invention
- Figure 7 shows a personalised web experience editing menu embodying the invention
- Figure 8 shows a sub-menu of the menu of Figure 7;
- Figure 9 shows a further sub-menu of the menu of Figure 7;
- Figure 10 shows a section of an assistance form according to an embodiment of the invention
- FIG. 1 illustrates an assistance process embodying the invention
- Figure 12(a) and 12(b) are graphs illustrating exemplary Trait and Profile relationships, respectively, according to an embodiment of the invention.
- Figure 1 3 shows an exemplary transformation rule script according to one embodiment of the invention.
- FIG. 1 there is shown a block diagram illustrating a networked system 100 embodying the invention.
- the system 100 employs a
- communications network 102 for messaging between various components and devices, each of which generally comprises one or more computing devices such as servers, desktop computers, other personal computers, tablet computers, other portable computing devices, all being capable of connecting to and communicating via the network 102.
- the network 102 is the Internet, but may be a less-extensive network, such as a local area network or corporate intranet.
- the network 102 may comprise a mix of technologies, including one or more of wired networks (e.g. Ethernet) and/or wireless networks (e.g. Wi-Fi or cellular mobile data networks).
- the Internet provides access to numerous servers 104, which for present purposes may be viewed as web content sources.
- the servers 104 may therefore comprise web servers facilitating access to any form of web-based content available to end-users via the Internet or other data network 102.
- the system 100 further includes a web experience platform server 106 embodying the invention.
- the web experience platform server 106 is accessible via the Internet 102 from a variety of suitable client devices, exemplified by a desktop computer 108 and associated input/output peripherals 1 10, such as a keyboard, display and pointing device, which may be operated by a user in order to control as suitable client software application, such as a web browser.
- client software application such as a web browser.
- client software application such as a web browser.
- a web experience platform embodying the invention may be accessed from a range of client devices, including portable computers (e.g. notebook PCs) and mobile devices, such as tablets and smartphones.
- the web experience platform server 106 may generally comprise one or more computers, and in particular may be implemented using a cluster of computing processors, which may be located at a single data centre, or distributed over a number of geographic locations.
- a cluster of computing processors which may be located at a single data centre, or distributed over a number of geographic locations.
- a single exemplary processor 1 12 of the web experience platform server 106 which is representative of a collection of such processors that may be employed in practical and scalable
- the (or each) processor 1 12 is interfaced to, or otherwise operably
- non-volatile memory/storage device 1 14 may be a hard disk drive, and/or may include a solid-state non-volatile memory such as read only memory (ROM), flash memory, or the like.
- the processor 1 12 is also interfaced to volatile storage 1 16, such as random access memory (RAM) which contains program instructions and transient data relating to the operation of the web experience platform server 106.
- volatile storage 1 16 such as random access memory (RAM) which contains program instructions and transient data relating to the operation of the web experience platform server 106.
- RAM random access memory
- the storage device 1 14 may contain operating system programs and data, as well as other executable application software necessary for the intended functions of the web experience platform server 106.
- the storage device 1 14 may also contain program instructions which, when executed by the processor 1 12, enable the web experience platform server 106 to perform operations relating to the implementation of a web experience software platform embodying the invention. In operation, instructions and data held on the storage device 1 14 are transferred to volatile memory 1 16 for execution on-demand.
- the processor 1 12 is also operably associated with a network interface 1 18 in a conventional manner.
- the network interface 1 18 facilitates access to one or more communications networks, such as the Internet 102, employed for communication between the web experience platform server 106, user devices 108, and other Internet- connected services.
- the volatile storage 1 16 includes a corresponding body 120 of program instructions configured to perform processing and operations embodying features of the present invention, and comprising various steps in the processes described below with reference to the accompanying block diagrams, flowcharts, equations and other illustrative materials.
- the program instructions 120 include instructions implementing communications with a web experience platform application executing on the client's device 108. These communications enable the exchange of data, including user characteristics transformation rules (e.g. scripts), and other information to be
- the program instructions 120 may further include instructions embodying a web server application.
- Data stored in the non-volatile 1 14 and volatile 1 16 storage may then include web-based code for presentation and/or execution on the user device 108.
- the web-based interface may, for example, enable a user of the device 108 to access account information, user preference information, scripting development tools, and/or other information or administrative functions provided via the web experience platform server 106.
- the processor 1 12 is also operably associated with a further interface 122, such as a storage area network (SAN) interface providing access to large-scale storage facilities 124.
- the storage facilities 124 may be located at the same site as the web experience platform server 106, or may form part of a remote and/or distributed database accessible via the Internet 102, or other communications networks.
- the storage interface 122 may be a separate physical interface of the web experience platform server 106, or may be a virtual interface implemented via the physical network interface 1 18.
- the large-scale storage 124 is used to store, access, update and maintain databases employed by the web experience platform server 106. Further details of data stores employed by embodiments of the invention are described below with reference to Figure 2, and the use and general contents of these data stores will be apparent from subsequent more-detailed descriptions of embodiments of the invention.
- this is generally a conventional computing device comprising one or more processors or processor cores 126, which are interfaced to, or otherwise operably associated with, non-volatile storage 128 and volatile storage 130.
- a network interface 132 enables applications executed by the processor 126 to access content and services via the Internet 102.
- the storage device 128 typically contains operating system programs and data, as well as other executable application software necessary to the intended use and functions of the user device 108.
- the storage device 128 may also contain program instructions which, when executed by the processor 126, enable the user device 108 to perform operations relating to the implementation of a web experience platform application embodying the invention. In operation, instructions and data held on the storage device 128 are transferred to volatile memory 130 for execution on demand.
- the volatile storage 130 includes a corresponding body 134 of program instructions configured to perform processing and operations embodying features of the present invention, and more particularly implementing a web experience platform application which provides an interface between a client application, such as a web browser, and the Internet 102, as will be described in greater detail below with reference to Figure 2.
- FIG. 2 a block diagram 200 of an exemplary system architecture embodying the invention.
- the system comprises a web experience server platform 202 which executes on the server 106, and which manages a data store of user settings, characteristics or preferences 204.
- the server platform 202 further manages a data store 206, which comprises transformation rules configured to define transformations to be applied to web content so as to provide users with a personalised web experience.
- the transformation rules are implemented in the form of scripts, enabling new rules to be developed and implemented by users, either by direct authoring of scripts in a scripting language, or by use of automated or semi-automated script building interfaces that enable at least some basic functionality to be implemented by users who do not necessarily have the specialised technical skills required to conduct development in the scripting language.
- the user characteristics 204 include properties called 'traits' and 'profiles'. While these will be described in greater detail with reference to a specific embodiment, for present purposes a trait may be considered as a binary value specifying whether or not a user may be characterised by a corresponding attribute.
- a profile then comprises one or more grouped traits, i.e. is a set of binary values representing corresponding user attributes.
- a profile may further comprise other profiles.
- Such traits and profiles may also be associated with transformation rules, i.e. scripts, maintained within the data store 206. Accordingly, for example, where traits associated with a particular transformation rule, or set of transformation rules, correspond with traits associated with a particular user, the system 200 may determine that the transformation rule should be applied in the course of delivering a personalised web experience to that user.
- transformation rules i.e. scripts
- transformation rules may also be associated with 'categories' and 'locators'. Again, a more-detailed discussion of categories and locators will be provided with reference to a specific embodiment of the invention, but for present purposes a category may be regarded as a tag or reference corresponding with a grouping of transformation rules, while a locator comprises web location, environment and context information.
- the location may include one or more of a domain name, an Internet address, a URI, a URL or a URN, and may include wildcards.
- transformation rules may be associated with particular pages, sites or groups of sites, for example. Locators may further comprise temporal information, e.g.
- time values defining corresponding time periods, as well as a range of further environment/context information, such as device type, connectivity type, geographic location, execution environment, user agent parameters, and so forth.
- environment/context information such as device type, connectivity type, geographic location, execution environment, user agent parameters, and so forth.
- the web experience server platform may also comprise further software components 208, implementing such functions as management of the data stores 204, 206, an application programming interface (API), the main server engine, and associated logic.
- API application programming interface
- a web server 210 is implemented, in order to provide user access to services of the server platform, such as administration and script
- development functions which may execute on the same processor or cluster as the server platform 202, or may be separately implemented.
- the user may operate the device to control a conventional client application, such as a web browser 212.
- a web browser 212 communicates with a web experience platform application 214.
- this redirection of access is readily implemented in modern browsers and operating systems by configuring a web proxy. Accordingly, the platform
- a web proxy can be configured which resides on any network-accessible device, either on a local network (e.g. a server or desktop computer connected to a local area wired or wireless network), or on a remote server accessible via the Internet 102.
- a local network e.g. a server or desktop computer connected to a local area wired or wireless network
- a remote server accessible via the Internet 102.
- a user access the web experience platform via a mobile device, such as a tablet or smartphone, it may be more practical and convenient for the platform application 214 to reside on a separate PC or server rather than on the mobile device. In any event, all such arrangements should be understood to fall within the scope of the present invention.
- the application receives requests to retrieve web-based content from the browser application 212, forwards these requests to a corresponding remote server 104, receives the requested web-based content via the Internet 102, and is then able to process the received content by applying suitable transformation rules retrieved from the data store 206 of the server platform 202.
- the browser application in the presently-described embodiment is a conventional web browser having a user interface and operated by an end-user, the browser application is not limited to this particular embodiment.
- browser applications may include a wide range of web clients and user agents that employ web protocols (e.g. HTTP, HTTP/2, HTTPS) for communication and web markup and/or scripting languages (e.g. HTML, HTML5, CSS, JavaScript) for
- the framework 218 includes a learning engine, management functions, and a scripting interface, and employs services of an API and scripting engine 220.
- the scripting engine executes compiled scripts in order to implement transformation rules so as to generate transformed web content, which is transmitted to the web browser application 212.
- the user is provided with a personalised web experience based upon the transformation rules that are applied, which are in turn dependent upon identifying correlations between user characteristics (e.g. traits and profiles) and corresponding properties of the transformation rules, in combination with the other determining properties, such as categories and locators.
- FIG. 3 is a flowchart 300 showing a method of providing a user with a personalised web experience embodying the invention.
- the method represented by the flowchart 300 is implemented by the web experience platform application 214.
- the application 214 acts as a transparent proxy which mediates all communications between the client browser application 212 and web servers 104.
- the web experience platform application 214 receives a web content request 302 from the browser application 212. While
- transformation rules are most easily understood in terms of the transformations they may perform on content received in response to the request 302, they may also perform actions upon receipt of a web content request. Such actions may involve
- the application 214 identifies any relevant transformation rules that are to be applied in response to the received request 302, and at step 304 any such rules are executed and/or applied.
- the request is forwarded to the relevant web server 104. From the perspective of the web server 104 the request originating at the web experience platform application 214 is no different from any other corresponding request received from a client application, and the requested content is therefore served and received, at step 306, by the web experience platform application 214.
- transformation rules that are to be applied to the received content. This identification is based upon user characteristics and/or transformation rule/script properties retrieved from the data stores 204, 206 maintained by the server platform 202.
- step 310 the transformation rules are applied.
- the transformation rules are applied.
- application of the transformation rules involves execution of the identified scripts by a scripting engine of the web experience platform application 214, resulting in possible modifications to the received web content, thereby personalising the web experience of the user of the browser application 212.
- the transformed content is transmitted to the browser application 212.
- identification of transformation rules 308 firstly involves accessing user characteristics 402, which are maintained in the data store 204.
- the user characteristics and preferences may include specifically identified active
- any such active transformation rules are identified from the user preferences.
- transformation rules may be identified at step 406.
- implicit transformation rules are identified, based upon existing user characteristics, such as traits and profiles.
- users do not directly set specific traits or profiles, but rather provide the system with information regarding general preferences (e.g. as part of an initial setup process), as well as selecting or rejecting transformation rules that may be suggested or applied automatically by the system.
- general preferences e.g. as part of an initial setup process
- selecting or rejecting transformation rules that may be suggested or applied automatically by the system.
- Such selections or rejections by the user may be employed to implicitly determine user characteristics and preferences, and to establish corresponding traits and profiles. Correlation of these user characteristics with corresponding properties of individual transformation rules enables implicit identification of transformation rules at step 408.
- any relevant location information is applied. Accordingly, if a particular identified rule has a locator that indicates that the rule is not applicable to the current web site, at the current time, or in the current environment/context, such transformation rules will be discarded for the present identification process.
- transformation rules are selected from those identified which are to be applied to the current web content. Additionally, at step 414, one or more identified transformation rules may be selected to be suggested to the user. This suggestion process may be triggered by transformation rules that have some correlation with user characteristics (e.g. traits and profiles), but the correlation does not satisfy a threshold for automatic application. In this case, the user may be presented with an option, along with the transformed web content, to apply the suggested transformation rules. If the user applies, and likes, the suggested transformation rules, then the user may be enabled to select these rules for future application to all relevant web content.
- user characteristics e.g. traits and profiles
- step 416 the transformation rules to be applied, and any transformation rules to be suggested, are returned for use within the main process 300.
- FIG. 5 there is shown a flowchart 500 illustrating a method of learning user characteristics according to embodiments of the invention.
- the suggested transformation rules may be presented to the user, for example in an overlay to the presented web content in the browser application 212, thereby enabling the use to apply (e.g. 'try out') the suggested rules, and optionally to accept or reject the suggested rules for future applications to all relevant web content.
- the selection or confirmation of user preference for a particular transformation rule is received.
- properties associated with the selected rule are identified, such as corresponding user traits or profile information.
- this information is used to update the user characteristics. In this way, properties associated with particular information rules accepted by the user are employed to learn user trait and profile information. In this way, the system gradually learns user preferences for the
- FIG. 6 is a section of a browser display showing an exemplary overlay 600.
- the overlay can be generated by the web experience platform application 214, and 'inserted' into content delivered to the browser 212 in the form of dynamic scripting instructions, e.g. JavaScript code.
- the overlay 600 includes indications of the number 602 of transformation rules currently applied to the displayed content, as well as the number 604 of available suggested transformation rules. Applied rules may be those that have previously been explicitly approved or selected by the user, as well as those that have been inferred or implied by those selections (i.e. traits and profiles) and previous behaviour.
- the user can view details of the applied and suggested transformation rules. The user can then try out, explicitly suggest or explicitly reject any of these rules. In this way the system 'learns' user characteristics, as have been described above.
- the overlay 600 also includes a button 606 to enable the user to enter an 'editing' mode, to select and apply new transformation rules to the current content.
- the overlay also includes a 'help' button 608, and further controls 610 for accessing additional functions and settings.
- Figure 7 shows an 'editing' menu 700 that is available when the user enters the editing mode by selecting the button 606.
- the user has selected a 'French' language option, and then right-clicked (or equivalent) to bring up the menu 700.
- the menu 700 includes a number of options 704 for applying transformations to the selected content.
- the user has chosen to open up the 'Selecting' sub-menu 804, from which 'include more items' has been selected.
- the system through the dynamic scripting code, has identified and highlighted the group of related language options 806 based upon content properties (e.g. these items may all be enclosed within a common HTML ⁇ div> element, or may include other identifying mark-up).
- 'deleting' option 902 which is used to apply a corresponding deletion transformation rule.
- Options for the rule are selected via a sub-menu 904, which include the ability to trigger deletion based upon one or more identified words or phrases. In this case, however, the user does not speak any foreign languages, and would therefore prefer that language options are always removed from content pages to reduce unnecessary clutter. The user has therefore elected an 'always' option 904.
- the menu also enables location information to be provided 906 so that, for example, the new rule is applied only to the current page, or may be defined as applying to other pages in which similar content is identified.
- Figure 10 shows a section of a 'help' form 1000 that is called up when the user selects the 'help' button 608.
- the 'help' function may be invoked, for example, when the user is unable to resolve an issue with a content page by themselves, e.g. via the functions available from the menu 700. This may be because the user lacks the necessary skills to configure the desired transformation from the menu 700, or it may be because the transformation is not one that can be achieved using the subset of functions available via the menu 700.
- a scripting language provided in embodiments of the invention enables a very wide range of transformation rules and actions to be implemented, however use of the scripting language to implement sophisticated transformation rules is likely to be beyond the technical capabilities of many ordinary users.
- the help system implemented in embodiments of the invention provides a mechanism for users to obtain assistance when they are unable to achieve a desired outcome for themselves.
- the assistance may ultimately be provided by friends, family, other members of the user community, by expert users, or by paid developers.
- help may be provided at no charge, or may be provided as a paid service.
- the assistance process is described in greater detail below with reference to Figure 1 1 .
- the help form 1000 provides fields for selection of a category 1002 of assistance, a link 1004 to the page on which the user's issue has arisen, and a text field 1006 for entry of a description of the issue. For example, a user with a vision
- ⁇ impairment may require images to include 'alt' text for use by screen-reader software, but may have encountered a page on which such mark-up is not provided.
- a help request may be submitted for 'alt' text to be added, and a member of the user community may subsequently act on the request by creating a transformation rule for the page that adds appropriate 'alt' text to the image elements.
- FIG. 1 1 An overall assistance process 1 100 embodying the invention is shown in Figure 1 1 .
- a user identifies an issue and uses the help system to request assistance 1 102. This causes a job request to be created 1 104, and stored within a help system database 1 106 maintained by the server 106.
- Other users e.g. friends, family, community members, paid developers etc
- the solution may involve the creation of new or modified transformation rules, traits or profiles that can optionally be published or shared 1 1 14 to the main repository maintained in storage 124.
- the assistance process implemented by embodiments of the invention enables communities of users to create and share customised browsing experiences, and to resolve issues and annoyances with particular web sites or pages independently of the site operators and/or developers. While this may be extremely beneficial to particular communities of users, such as those with accessibility requirements, the process also has potential for uses and abuses that may be of concern to some web site operators. For example, transformations applied to a page or site may modify content in offensive or undesirable ways, and be potentially harmful to the reputation or branding of a site owner. Accordingly, in a practical embodiment the steps of applying 1 1 12, and particularly publishing 1 1 14, contributed 'fixes' may be subject to a review and approval process by a human operator.
- a Trait' is a single defining characteristic, feature or quality that is associated with a Character interacting with the Internet. Traits comprise binary values, i.e. a user either possesses a trait, or they do not. For example:
- Differing degrees of a characteristic can be defined using a selection of multiple Traits, for example:
- a 'Profile' comprises a group of Traits.
- the value associated with a Profile is, again, binary.
- a Profile also comprises a profile rule that determines the condition under which the Profile as a whole is 'true' or 'false'. For example for a Profile condition to be true it may require all Traits to be true, or require one or more Traits to be true.
- Boolean logic may be employed to define the Profile condition when the Profile is defined.
- Profiles for disabilities may be defined as follows:
- a 'Character' is defined by a set of Traits and/or Profiles. Two Characters are identical if, and only if, they comprise the exact same Traits and Profiles at the same Locators (see below for Locators definition).
- the exemplary embodiment may comprise a concept of a 'Dumb User' as having no known Traits and/or Profiles.
- a user with one or more known Traits and/or profiles is termed a 'Character'.
- Traits and Profiles may dynamically change and evolve. Characters can acquire new Traits and/or Profiles and deprecate existing Traits and/or Profiles, and each of these may depends on a Locator (see below). The web experience engine continuously learns user preferences and forms new impressions on the Character.
- the exemplary embodiment can obtain an 'impression imprint' of each Character which can be used to determine mathematically the Traits and Profiles that currently form the Character, and apply this knowledge to further enhance their Web experience.
- a 'Locator' identifies where and when the Traits and/or Profiles are defined for the Character. Accordingly, while Characters may have specific dominant Traits and/or Profiles, these may be subject to variations according to a location and context (e.g. web page, site of group of sites, and associated time period, device type, connectivity type, geographic location, execution environment, user agent parameters, and/or other environment/context parameters.). For example, a user's desire to simplify content on a particular website may apply only to that site, or even to a single page, may depend upon the type of device being used to access the site, and/or may depend upon their geographic location, such as whether or not they are at home. Locators can thus define combinations of 'when', 'where', and in what context to activate 'recessive' Traits and/or Profiles.
- a location and context e.g. web page, site of group of sites, and associated time period, device type, connectivity type, geographic location, execution environment, user agent parameters, and/
- Locators may employ various mechanisms to identify relevant context, which are identifiable using such parameters as web address, web content, user/device environment and so forth, and may include wildcards. For example (the following list is not intended to be limiting):
- Connectivity type e.g. 'WiFi', 'Mobile', 'LAN', 'WAN', Other'
- the system host environment ecosystem e.g. loT (Internet of Things, e.g. in cars, electronic appliance interface, etc) or conventional Internet connection, e.g. 'loT:Car', 'loT:Appliance', 'conventional Web browser', 'other'
- loT Internet of Things, e.g. in cars, electronic appliance interface, etc
- conventional Internet connection e.g. 'loT:Car', 'loT:Appliance', 'conventional Web browser', 'other'
- User device screen size e.g. 'small', 'large', 'width x height, 'other'
- Browser/renderer type (from user agent string), e.g. 'ie', 'edge', 'firefox', 'chrome', 'agent, 'viewer 1 , 'other'.
- Interactions' are the actions a user/Character undertakes when engaging with the Internet. This includes viewing and reading content as well as navigating through web content via clicks or through web actions. Interactions may trigger the application of transformation rules according to a Character's Traits, Profiles and Locators.
- the term 'Reactor' is used in the exemplary embodiment as a particular implementation of the transformation rules described previously, with reference to Figures 1 to 5.
- the exemplary embodiment is configured to provide Reactors that are targeted for each Character and Locator.
- An 'ideal' Reactor is aligned and matched with the Characters personal Traits and/or Profiles. As Traits and/or Profiles evolve through the learning capability of the system, the Reactors that are applied in response to interactions may also change.
- a Category groups Reactors according to a broad generic 'topic'. For example, consider a user/Character who wishes to personalise their web experience with enhanced privacy. There may be only a small number of Reactors that relate to privacy, and these Reactors may be associated with different Traits and Profiles such that a preference of the user for one privacy Reactor is insufficient for the system to infer that the user may wish to employ certain other Reactors also relating to privacy, or to identify such Reactors. Applying a common Category across related Reactors enables these groups, and general overall Traits and/or Profiles across generic topics, to be identified.
- the exemplary embodiment carefully chooses popular Category topics that enable grouping of most common Traits and/or Profiles from a high level. Categories are assigned to Reactors and may additionally be assigned to Packages. Categories are assigned when the Reactors are created. In the exemplary embodiment a manual review process ensures that Categories are appropriately assigned to Reactors. A user cannot alter or change Categories.
- a 'Package' is a collection of Reactors. Packages may be used to collect Reactors together for group application, for purposes such as sharing with other users or because the Reactors provide enhanced value when grouped together.
- a Package can also be formed by looking at common Traits and/or Profiles for a single Character or formed across a set of Characters. Such Packages may represent 'archetypes' for a set of standard/default Characters that can be used. For example, to create initial sets of characteristics and preferences for new users.
- a Package labelled 'completely blind' may be created which comprises the common Traits and/or Profiles derived from other users having this same characteristic.
- the 'completely blind' Package can then be used as the basis for the user's initial set of characteristics and preferences, thus 'jump-starting' their personalised web experience with Traits and/or Profiles that are more closely aligned to their requirements.
- a 'Preference' is an explicit indication of positive or negative response of a user to a Reactor.
- Preferences there are many opportunities for users to indicate Preferences in relation to Reactors while interacting with the exemplary embodiment. Traits and/or Profiles for a
- An 'Implicit Preference' refers to Traits and/or Profiles contained within a Reactor that is currently assigned no Preference by a user which becomes enabled due to the underlying Traits and/or Profiles associated with a Reactor for which the user has provided a positive or negative Preference.
- Implicit Reactor' corresponds with inferred transformation rules described previously, with reference to Figures 1 to 5. Implicit Reactors are made available to the Character and automatically activated based on the calculation on implied characteristic Traits and/or Profiles. Further details of these calculations are provided below.
- a 'Suggested Reactor' may be identified when the calculation of implied characteristic Traits and/or Profiles indicates some affinity for the Reactor, but the level is insufficient to trigger an Implicit Reactor. While the Suggested Reactor cannot be automatically activated in this scenario it may be presented to the user as an option, e.g. via an overlay on a rendered transformed web page. The user then has an option to trial the Suggested Reactor, and to enter a Preference. [0098] By offering possible Reactors that may match to the Character and having the Character Interacting by testing, refusing or accepting, enables the engine to learn further Character Traits and Profiles.
- a 'Perceived Reactor' is derived from an Implicit Reactor which has been applied many times with the Character without being accepted or rejected. In other words the absence of an action over a period of time means that it is 'perceived' that the Character has a positive preference the Reactor. Thus user behaviour over time can be used to learn further user Preferences, Traits and Profiles.
- a 'Mutating Reactor' is a Reactor that changes due to interaction by the Character and the web experience Platform.
- some Reactors can be defined as generic Reactors but, based on circumstances, or conditions, or interactions by the Character the Reactor may be refined based on these factors.
- a 'Derived Reactor' is a Reactor that is derived from one or more other Reactors. This provides the ability to reuse Reactors to extend the Reactor
- a Derived Reactor may comprise a Mutating Reactor.
- Traits are calculated by from Preferences on Reactors. However Implicit Reactors play a role when forming Perceived Reactors.
- a 'Perceived Trait' refers to a Trait which is determined by factoring in a Character's Preferences on Reactors as well as Traits from Perceived Reactors.
- Profiles are calculated from Preferences on Reactors. However Implicit Reactors play a role when forming Perceived Reactors.
- a 'Perceived Profile' refers to a Profile which is determined by factoring in a Character's Preferences on Profiles as well as Profiles from Perceived Reactors.
- 'Popularity' of Traits and/or Profiles can be calculated based on Popularity with existing Characters.
- Reactors comprising common Traits and/or Profiles can be ranked by Popularity.
- Users may be provided with an interface to find and trial and/or accept Reactors, and it may be useful to rank Reactors based on similar Traits and/or Profiles by popularity to see what is favourable amongst other Characters.
- 'Metrics' provide a mechanism to measure the web experience system based on what the exemplary embodiment has learnt. This includes: • Determining the Character imprint impressions based on the Traits and/or Profiles obtained from Interaction with Reactors.
- Locators that pinpoint underlying problems from Characters Interactions. For example: it would be possible to determine that multiple
- Characters are having problems with a given website based on Character impressions.
- Metrics may take account of Historic information and Trends. This enhances the value of the information and enables a deeper insight into a Character.
- 'Historic' refers to storing the Preferences and Character Impressions over a period of time. This is needed because it enables the ability of Trends which can be factored into the logic for determining a more accurate Metric on the Character's Implicit Preference, Implicit Reactors and Suggested Reactors.
- Patterns are a way to determine, analyse and forecast platform changes and aid the platform growth. For example, there may be multiple options for expanding and scaling a platform according to the exemplary embodiment, but it may not be obvious which option to follow or whether existing solutions can be reused or leveraged.
- Pattern analysis across Traits, Profiles, Categories and Reactors etc may enable the most productive options to be identified and implemented.
- Pattern Observation is integral to evolution of the web experience platform.
- the exemplary embodiment requires Locators, Categories, Traits, Profiles and Reactors in order to function.
- the learning engine is based on mathematics, from which algorithms are implemented. The following disclosure will therefore develop the mathematical framework for the implementation.
- the Reactor contains Locator information as to where the 'reaction' can take place. Some Reactors are scripted to apply for a particular website or based on a single action, whereas others are more generic and may apply globally under varying different conditions.
- the Character provides information regarding the Reactor in expressing 'when' and 'where' they wish the Reactor to apply. Just because a Reactor may be applied globally across all websites doesn't necessarily mean the Character wishes it so. Locators are denoted by 'L' in the mathematical description.
- Locator employ various mechanisms to obtain a range of location and context information. For example, in addition to HHTP headers, user agent strings, and other information reported by web browser applications, the web
- experience platform application 214 may include one or more executable code components configured to interface with the user device 108 and access additional device information.
- User input e.g. via the overlay 600 and menus 700, 800, 900 etc, may also be used to obtain relevant information, such as whether current preferences are to apply to a single page, an entire site, or all web pages. Since the platform application is also responsible for session management, it is able to store all such location and context parameters so that they can be passed back to the server platform 202, implicitly applied when performing Preference calculations, and automatically stored as required within user preferences data store 204.
- the 'Don't care' state represents a union of the other parameters that may be employed in defining a Locator, that do not otherwise explicitly contribute to the user's preference.
- Reactors play an extremely important part in the exemplary embodiment. Not only do they contain 'Web Experience Scripting Instructions' providing logic on how content needs to be transformed but more importantly contain the information relating to the Traits and/or Profiles that apply along with the Locator and Category information.
- the learning aspect of the exemplary embodiment is thus able to determine the future outcomes of Reactors with Characters based on past engagements with Reactors.
- Reactors are generally small pieces of logic that should have one desired outcome. Based on this it becomes relatively easier to decide which Categories, Traits and/or Profiles should be assigned to the Reactor. It is recalled also that Packages combine multiple Reactors together if it makes sense to do so (as discussed earlier). [0138] Reactors must have one or more Categories assigned. Assignment of multiple Categories does not influence or change the Reactor.
- Assigned Traits and/or Profiles to a Reactor are ranked. This means order is significant and the most important Traits and/or Profiles should be assigned first with the lessor last. In general, Profiles are considered more valuable than Traits given that Profiles can be formed from multiple sets of Traits and/or Profiles.
- Reactors are formed by a selection of ranked Traits and ranked Profiles implies that Reactors may be mathematically expressed with their respective Trait and/or Profile weights. This enables the overall Traits and / or Profiles associated with a Character to be determined by calculating weights based on Interactions with Reactors.
- FIG. 12(a) An exemplary Trait weight relationship versus selected Trait is illustrated in the form of a graph 1200 in Figure 12(a), in which the horizontal axis 1202 represents Traits, the vertical axis 1204 represents the weight value, and the functional form of the relationship 1206 is chosen so as to achieve a gradual decline in weight towards the maximum number of Traits offered for selection for each Reactor.
- One embodiment of the exemplary functional form 1206 has a weight equation representing the selected Traits wherein:
- FIG. 12(b) An exemplary Profile weight relationship verses selected Profile is illustrated in the form of a graph 1212 in Figure 12(b) in which the horizontal axis 1214 represents Profiles, the vertical axis 1216 represents the weight value, and the functional form of the relationship 1218 is chosen so as to achieve a rapid decline in weight towards the maximum number of Profiles offered for selection for each Reactor.
- One embodiment of the exemplary functional form 1218 has a weight equation representing the selected Profiles wherein:
- Alternative embodiments may employ different weighting equations, providing the weight outcome lies between zero and one. Further refinement may arise when dealing with large data that is not presently foreseeable. As more data becomes available, refinements may be made to the weighting system.
- the set of selected Traits with its weights is defined as:
- Mathematically Characters may be linked to Traits and Profiles by linking through Preferences.
- the concept is simple and relies on the Character Interacting with Reactors and learning their Preferences (i.e. 'liking' or 'disliking' a Reactor). Based on this, overall ranked Traits and/or Profiles can be determined from each Reactor
- Characters may be linked to Traits and Profiles by according to a product relationship between Preferences and Reactors.
- Implicit Reactors and Suggested Reactors along with Character Interaction with the Internet encourage the Characters to further Interact with Reactors.
- the iteration on constantly recalculating and reassessing Traits and Profiles forms the learning aspect that the exemplary embodiment has to offer.
- Character Impressions are calculated by determining the overall effect the Character with Traits and Profiles based on the Preferences on any Reactor at any Locator. It is recalled that Character Impressions are related to Locator (L) and Categories (C) as highlighted earlier.
- no Preferences set means no Reactors will be enabled. In this circumstance the exemplary embodiment would not be able to apply any Reactors to the Character and Internet Interaction.
- the exemplary embodiment sole goal is to quickly build up a profile of the Character to offer them the best experience/ service as possible as quickly as possible so the user immediately appreciates the value and offerings offered by the exemplary embodiment.
- Age bracket (age brackets can determine some presetting based on trending age groups of existing Character impressions we have)
- the goal of the exemplary embodiment is to learn the Traits and Profiles of each Character so that it can make Implicit Reactors decisions and present Suggested Reactors for Characters to 'like/accept' or 'dislike/reject'.
- it is useful to convert Character impressions for each Reactor to a scalar value.
- the scalar values can then be compared with thresholds to determine whether the Reactor has a strong match, a moderate match or a weak match. Based on the threshold matches, the exemplary embodiment can make decisions as to forming Implicit Reactors and Suggested Reactors.
- weight expression is obtained by selecting the weight component ⁇ ( ) for which matches i.e.:
- Implicit Reactor can be defined when:
- weights are always expressed in values between 0 and 1 the vectors have an origin of zero.
- Implicit Reactor can be defined when:
- each Reactor is formed based on ranked weights of Traits and Profiles assigned as the best fit for the Reactor. Categories tie similar Reactors together and, when selected by a Character (i.e. as a Preference) it becomes possible to determine alignment towards a given Trait and/or Profile that otherwise may not be apparent. It is noted, in particular, that the actual weight calculation is based on actual selected Preferences of the Character, and not against the total amount of Reactors available.
- the Character has a total of, for example, 400 selected Reactors then calculating weights across all of the 400 Character selected Reactors will fail to highlight the affinity with the Traits and/or Profiles dealing with privacy indicated by the three privacy-related Reactors. This is the dilution problem.
- the web experience Engine of the exemplary embodiment constantly runs calculations across different scenarios (i.e. across all Reactors, across Reactors of a given Category, across all Locations, across a given Location etc).
- the decision-making is actually a variable across different functions. Implicit decisions are made when thresholds are met. Suggested decisions are put forward to the user for selecting.
- Mathematically determining the Popularity of Traits or looking at Historical Metrics to determine Trends is straightforward and covered by simple statistical equations.
- a user selects a block of information and wishes to 'Simplify' by means of deleting.
- the web experience platform knows what to delete and knows the conditions associated with the delete. However, at this point the system can also determine that the user has expressed an Interest in 'Readability' along with the associated Traits and Profiles.
- the information that has been deleted can be further analysed by allowing each Reactor to inspect the information and determine whether it is applicable for the Reactor based on the Locator conditions. If there is a match then the Readability Reactor can form a Derived Reactor and form a Mutating Reactor which adopts and factors the Traits/Profiles in the Derived Reactor. [0231 ] The benefit in this approach can readily be seen.
- the primary Reactor 'deleted' content assisting the user with 'readability'. Looking at the deleted content can enhance the utility of the system to the user. For example, if the block of information was associated with Reactors whose Locators identified it as being associated with 'Social Sharing Networking' buttons then this can be taken into account in future decision-making logic.
- Reactors to form new logic as required and interpreted by the platform as deemed fit.
- the platform ensures that the mash up and forming of Derived Reactors and Mutating Reactors happens in such a way that the Reactors work together collaborative and in a way that makes sense and is constructive.
- the use of Derived Reactors actually allows information itself to be layered (information within information within information). Reactors can be applied to any layer.
- FIG. 13 An example of a transformation rule in the form of a Reactor script 1300 implemented in a proprietary scripting language embodying the invention is shown in Figure 13.
- the script 1300 is not intended as an exhaustive illustration of all features of the proprietary scripting language, and is provided only by way of example.
- transformation rules embodying the invention may be implemented in a variety of ways, including through the use of known programming or scripting languages such as PERL, Python, Ruby, or other suitable languages.
- the script 1300 comprises a 'project' part 1302, an 'includes' part 1304 and a Reactor part 1306.
- the 'project' part 1302 defines properties of the script 1300, including author, company identification, version, type, and a description. Some or all of this information may be displayed to users accessing the database of transformation rules.
- the 'includes' part 1304 specifies content of other scripting and related files to be imported into the script 1300.
- an 'include' statement imports a file containing useful constants, which may be used in the remainder of the script.
- the Reactor part 1306 itself comprises three parts, namely a 'locator' part 1308, a 'request' transformation part 1310 and a 'response' transformation part 1312.
- the 'locator' part 1308 defines matching rules, e.g. as applied in steps 303 and 308 of the process 300.
- the Reactor may be invoked for HTTP GET method, having content type 'html', transferred by way of HTTP protocol, from any host matching host 'exemplify.com'.
- the exemplary scripting language may also include dynamic matching operations that can be executed on a case-by-case basis in order to determine whether or not to apply transformation rules and further scripted operation, e.g. based upon user identify and/or other session information, among other dynamic parameters.
- the 'request' part 1310 is executed in response to outgoing requests matching the 'locator' part, e.g. at step 304 of the process 300.
- the 'request' part 1310 includes an OTHER block 131 1 containing dynamic logic which, if evaluated as 'true', may result in selection of the Reactor.
- the logic in the OTHER block determines whether the user's current device is one of a desktop computer, laptop computer or iPad AND the user is a paying subscriber.
- An OTHER block if this kind can be used to construct arbitrary logic tests based on current state information, including user and session data, which are accessible within the scripting language.
- the 'response' part 1312 is executed in respect of corresponding responses from the remote server at 'exemplify.com', e.g. at step 310 of the process 300.
- the 'response' script first creates 1314 a parser object for processing of the incoming HTML text.
- a condition statement 1316 identifies a closing ⁇ /body> tag of the HTML text using the parser object.
- An insertion operation 1318 then acts on the HTML text to insert a simple text footer immediately prior to the closing ⁇ /body> tag.
- all pages retrieved from 'exemplify.com' will have the footer text included at the bottom of the page.
- HTML text e.g. HTML text
- dynamic scripting e.g. JavaScript
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Claims
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| AU2016322017A AU2016322017A1 (en) | 2015-09-16 | 2016-09-14 | System and method for providing a personalised reactive web experience |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| AU2015903772 | 2015-09-16 | ||
| AU2015903772A AU2015903772A0 (en) | 2015-09-16 | System and method for providing a personalised reactive web experience |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2017045026A1 true WO2017045026A1 (en) | 2017-03-23 |
Family
ID=58287963
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/AU2016/050860 Ceased WO2017045026A1 (en) | 2015-09-16 | 2016-09-14 | System and method for providing a personalised reactive web experience |
Country Status (2)
| Country | Link |
|---|---|
| AU (1) | AU2016322017A1 (en) |
| WO (1) | WO2017045026A1 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2020070308A1 (en) * | 2018-10-04 | 2020-04-09 | Ve Global Uk Limited | Dynamic rendering of a web page |
| CN112288514A (en) * | 2020-10-19 | 2021-01-29 | 北京沃东天骏信息技术有限公司 | Article customization method, article customization system, storage medium, and electronic device |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040268249A1 (en) * | 2002-02-04 | 2004-12-30 | Thomas Fennelly | Document transformation |
| US20090235158A1 (en) * | 2005-04-29 | 2009-09-17 | Rosenstein Justin M | Web Page Authoring Tool for Structured Documents |
| WO2013005218A1 (en) * | 2011-07-01 | 2013-01-10 | Langoor Digital Pvt Ltd | A simplified system for website conversion & website design for mobile & hand-held devices |
| US20140108675A1 (en) * | 2010-04-09 | 2014-04-17 | Mobila, Inc. | Subscription-Based Dynamic Content Optimization |
| US20140258816A1 (en) * | 2013-03-08 | 2014-09-11 | True Xiong | Methodology to dynamically rearrange web content for consumer devices |
-
2016
- 2016-09-14 WO PCT/AU2016/050860 patent/WO2017045026A1/en not_active Ceased
- 2016-09-14 AU AU2016322017A patent/AU2016322017A1/en not_active Abandoned
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040268249A1 (en) * | 2002-02-04 | 2004-12-30 | Thomas Fennelly | Document transformation |
| US20090235158A1 (en) * | 2005-04-29 | 2009-09-17 | Rosenstein Justin M | Web Page Authoring Tool for Structured Documents |
| US20140108675A1 (en) * | 2010-04-09 | 2014-04-17 | Mobila, Inc. | Subscription-Based Dynamic Content Optimization |
| WO2013005218A1 (en) * | 2011-07-01 | 2013-01-10 | Langoor Digital Pvt Ltd | A simplified system for website conversion & website design for mobile & hand-held devices |
| US20140258816A1 (en) * | 2013-03-08 | 2014-09-11 | True Xiong | Methodology to dynamically rearrange web content for consumer devices |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2020070308A1 (en) * | 2018-10-04 | 2020-04-09 | Ve Global Uk Limited | Dynamic rendering of a web page |
| CN112288514A (en) * | 2020-10-19 | 2021-01-29 | 北京沃东天骏信息技术有限公司 | Article customization method, article customization system, storage medium, and electronic device |
Also Published As
| Publication number | Publication date |
|---|---|
| AU2016322017A1 (en) | 2018-03-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Sohn et al. | The impact of perceived visual complexity of mobile online shops on user's satisfaction | |
| RU2632132C1 (en) | Method and device for creating contents recommendations in recommendations system | |
| US10467541B2 (en) | Method and system for improving content searching in a question and answer customer support system by using a crowd-machine learning hybrid predictive model | |
| RU2636702C1 (en) | Method and device for selecting network resource as source of content in recommendations system | |
| Kardaras et al. | Content presentation personalisation and media adaptation in tourism web sites using Fuzzy Delphi Method and Fuzzy Cognitive Maps | |
| Shin et al. | Smart TV: are they really smart in interacting with people? Understanding the interactivity of Korean Smart TV | |
| Yoon et al. | Understanding usability and user experience of web-based 3D graphics technology | |
| US20140122619A1 (en) | Chatbot system and method with interactive chat log | |
| US20150081611A1 (en) | Method and system for presenting personalized content | |
| JP2017174062A (en) | Purchase behavior analyzing device and program | |
| US8745049B2 (en) | Anonymous personalized recommendation method | |
| US20130127920A1 (en) | Focusing on Contextually-Relevant Content | |
| US20210109989A1 (en) | Systems and methods for automatically generating and optimizing web pages | |
| Bonacin et al. | An ontology-based framework for improving color vision deficiency accessibility | |
| KR100372225B1 (en) | An apparatus for creating homepage, a method for automatically converting the homepage and method for discriminating to view the homepage | |
| WO2017045026A1 (en) | System and method for providing a personalised reactive web experience | |
| JP7699221B2 (en) | Content generation with intelligent assistants | |
| US11775773B2 (en) | Methods for conducting a conversation in an application enabled by a virtual assistant server and devices thereof | |
| KR102477245B1 (en) | Systems and methods for improved online research | |
| Kang et al. | What am I not seeing? An interactive approach to social content discovery in microblogs | |
| US20140108601A1 (en) | System and method for content personalization using feedback data | |
| Van Kesteren et al. | Evaluation of materials selection activities in user-centred design projects | |
| US20250103822A1 (en) | Generative artificial intelligence powered response generation, validation, and augmentation | |
| AU2024203669A1 (en) | Parallel interaction interface for machine learning models | |
| Rahman et al. | I sense my digital assistants! Assessing the impact of customers’ immersive experience and perceived social presence on purchase intention |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16845388 Country of ref document: EP Kind code of ref document: A1 |
|
| DPE1 | Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101) | ||
| ENP | Entry into the national phase |
Ref document number: 2016322017 Country of ref document: AU Date of ref document: 20160914 Kind code of ref document: A |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 16845388 Country of ref document: EP Kind code of ref document: A1 |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 16845388 Country of ref document: EP Kind code of ref document: A1 |
|
| 32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 05/10/2018) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 16845388 Country of ref document: EP Kind code of ref document: A1 |