Systems and methods for generating personalized dynamic presentations from non-personalized presentation structures and contents

- MOET HENNESSY

A computer system for generating a dynamic presentation comprises: a master storage containing master presentation data having a master nodal structure and master contents associated with content nodes of said structure, a structure editor capable of copying said master nodal structure into a personalized data structure in a dedicated read/write storage and of selectively changing the copied master nodal structure into a personalized nodal structure in response to user inputs, wherein said personalized nodal structure comprises all or part of the nodes of the master nodal structure, a contents editor capable of copying a master content into said personalized data structure in said dedicated read/write storage and of selectively changing the copied master content into a personalized content in response to user inputs, a dynamic presentation generator for generating a personalized presentation by accessing said personalized data structure, determining which content nodes in said structure belong to personalized presentation, and for any such content node selectively accessing master contents or personalized content if the latter is present in said personalized data structure.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description
BACKGROUND OF THE INVENTION

The invention generally relates to a system and method for generating personalized dynamic presentations.

Computer systems equipped with software for generating dynamic multimedia presentations, are well known in the art.

There are several pieces of software on the market which are dedicated to multimedia presentations.

The most widespread is Microsoft PowerPoint®. PowerPoint runs on personal computers and is widely used by business people, educators, students, and trainers and is among the most prevalent forms of persuasion technology. As a part of Microsoft Office, Microsoft Office PowerPoint has become the world's most widely used presentation program.

In this software, as in most other presentation software, text, graphics, movies, and other objects are positioned on individual pages or “slides”. The “slide” analogy is a reference to the slide projector, a device which has become somewhat obsolete due to the use of PowerPoint and other presentation software. Slides can be printed, or (more often) displayed on-screen and navigated through at the command of the presenter.

PowerPoint provides two types of movements. Entrance, emphasis, and exit of elements on a slide itself are controlled by what PowerPoint calls Custom Animations. Transitions, on the other hand are movements between slides. These can be animated in a variety of ways. The overall design of a presentation can be controlled with a master slide; and the overall structure, extending to the text on each slide, can be edited using a primitive outliner.

Sharing a PowerPoint presentation with others generally means sending the whole file by email, or copying the whole presentation file on a removable storage such as a USB memory key for reading by another computer.

And the richer the presentation will be, the bigger will be this whole file, which makes sharing difficult. In this regard, there is no convenient way to only send changes from an older version of a given presentation.

Adobe Flash® technology offers another way to make presentations. Flash animation possibilities combined with interactivity bring more liberty to enrich presentation with visuals, texts, videos.

With internet democratization and broadband connections, Flash applications are now widely used. Even if these applications are conceived to be shown on screen, they can also be printed.

Thanks to the large possibilities offered by this technology, there is no limit but the imagination to make any kind of transition animations.

Although Flash presentations are now very widespread on the Internet, the underlying application design often provides static contents only, which means contents are not impacted by external data.

Nevertheless, the up-to-date Flash technology allows to build a Flash application based on dynamic contents, based on the ActionScript programming language which allows to manipulate variables, store and display data, etc.

Indeed, Flash-based applications (usually from websites) provide dynamic contents through a back office or administration page, usually in two steps: first the database where information is stored is modified by an administrator through at the back office level; then the information is dynamically read by a Flash application and displayed in front office. Thus a single Flash file requested by the user will change its state according to external data collected from the back office.

Although this presentation generating software is nowadays very thorough and capable, there is no convenient way for a user to modify (such as personalize) an existing presentation or for exchanging personalized presentations between users without the requirement of broadband communications or large physical mass storage compatible with the large size of such files.

More particularly, when an existing presentation is to be modified, adapted, or personalized to a specific context or public, it is necessary to rely on specific editing tools which can be mastered only by skilled people and the use of which can be fastidious and time consuming.

And this needs to be done each time a change, even a minute change, is to be brought to the presentation.

In addition, volume of presentation data can be quite large, in particular when multiple video sequences are involved (sometimes several hundreds of megabytes), and having numerous personalized presentations involve that a large disk space is required, and that any transmission of presentations on a network, e.g. via email, is virtually impossible.

SUMMARY OF THE INVENTION

The present invention seeks to mitigate these drawbacks, and aims at offering a presentation tool that allows easy building or personalized presentations from a master presentation, even by non skilled persons, and that allows easy transfer of personalized presentation data between users having access to the same master presentation data.

To this end, the present invention provides according to a first aspect a computer system for generating a dynamic presentation, comprising:

a master storage containing master presentation data having a master nodal structure and master contents associated with content nodes of said structure,

a structure editor capable of copying said master nodal structure into a personalized data structure in a dedicated read/write storage and of selectively changing the copied master nodal structure into a personalized nodal structure in response to user inputs, wherein said personalized nodal structure comprises all or part of the nodes of the master nodal structure,

a contents editor capable of copying a master content into said personalized data structure in said dedicated read/write storage and of selectively changing the copied master content into a personalized content in response to user inputs,

a dynamic presentation generator for generating a personalized presentation by accessing said personalized data structure, determining which content nodes in said structure belong to personalized presentation, and for any such content node selectively accessing master contents or personalized content if the latter is present in said personalized data structure.

Preferably, said contents editor and said presentation generator share common display generation tools, whereby said contents editor operates in what-you-see-is-what-you-get mode. This allows the user to immediately visualize any personalization made to the contents, without having to make any edition in the somewhat complex file structures.

In order to make the changes to the structure easy for the user, again without entering into the file representing the presentation structure, said structure editor comprises a display generator for displaying labels of nodes of the master nodal structure and user-input sensitive graphic items associated to each node label for selectively declaring each associated node as enabled or disabled in the personalized nodal structure.

Preferably, said master nodal structure comprises a tree structure file where each content node of the structure has an enabled/disabled tag, and wherein the structure editor is capable of changing the tag values depending on the user inputs made on the graphic items.

Preferably, said master contents include master presentation template data toward which point template pointers associated to structure nodes, and contents data towards which point content pointers associated to said template data, and wherein said presentation generator is capable of accessing master presentation template data pointed by an enabled node, of checking whether a corresponding personalized content is contained in said dedicated storage, if so using said personalized content for the presentation, and if not accessing master content located in the master storage for the presentation.

Conveniently, said nodal structures and said contents are tag-based arborescent files such as XML files.

It is further advantageous that the system comprises a plurality of personalization data sets, each comprising a personalized nodal structure and personalized contents, and a selector for selecting one among said sets. In this manner, the user can build different personalized presentations and select the one to be used in a specific instance.

Typically, the master storage is a read-only removable medium storage unit, such as a CD-ROM player, and said dedicated read/write storage is a different storage unit such as the computer system internal hard disk. In this manner, the same master CD-ROM can be provided to a plurality of users, and each user is capable of making his/her own personalized presentations.

The system may further comprise a communication device for transmitting to a remote computer system said personalization file as a single data package. In this manner, different users can share presentations, without the need to transfer from one computer system to another large quantities of information, since only what was modified is transferred.

It is further that the master storage contains both master presentation data and localized presentation data (in particular with text and speech in different languages). This allows, from the same starting materials, to easily build personalized presentations in different languages.

In this case, a language selector allows to use as master nodal structure and master contents the localized structure and contents.

In such a situation, the system is adapted, for each content intended to belong to a presentation, to first check whether a personalized content exists, if so to use such personalized content, and if not to check whether a localized content exists, if so to use such localized content, and if not to use a master content.

The computer system may further comprise a database editor capable of copying at least part of a master database contained in the master presentation data into said dedicated read-write storage and to personalize data of said copied database in response to user inputs, wherein said presentation generator is capable of dynamically using said personalized data for the presentation.

In such manner, to a given presentation can be attached any kind of personalized data to be dynamically used by the presentation generator or by any other software.

Preferably, dynamic presentation generator comprises a Flash™ type presentation generator.

According to a second aspect, the present invention provides a method for generating a personalized dynamic presentation in a computer system having a master storage containing master presentation data having a master nodal structure and master contents associated to the nodes of said nodal structure, defining together a non-personalized dynamic presentation, said method comprising:

copying said master nodal structure from said master storage to a personalized data structure contained in a dedicated read/write storage,

editing said copied structure into a personalized nodal structure in response to user inputs, wherein said personalized nodal structure comprises all or part of the nodes of the master nodal structure,

for at least one of said nodes, copying a master content to said personalized data structure contained in said dedicated read/write storage,

editing said copied master content into a personalized content in response to user inputs, and

generating said personalized dynamic presentation by accessing said personalized data structure, determining which content nodes in said structure belong to the personalized presentation, and for any such content node selectively accessing master contents or personalized content if the latter is present in said personalized data structure.

According to a third aspect, the present invention provides a method for transmitting a personalized dynamic presentation from a first computer system to second another computer system, comprising the steps of:

providing each computer system with a master storage medium containing similar non-personalized dynamic presentation data,

at said first computer system, assembling a personalized data structure generated by the method as defined above into a single data package.

transmitting said package from said first computer system to said second computer system via a standard communications process,

at said second computer system, disassembling said single data package into said personalized data structure, and storing said structure in a dedicated read/write storage,

whereby a method as defined above can be performed in said second computer system for generating said personalized dynamic presentation or a similar one from said non-personalized dynamic presentation data and said personalized data structure.

By this method, personalized presentations can easily be shared between user without fastidious and complex exchange of large volumes of information, and with a good reliability.

According to a fourth aspect of the present invention, a computer-based tool for assisting salespersons in the presentation of products/services on offer is provided, which comprises:

a storage containing a master product/service presentation including data associated with a number of products/services on offer,

an editor for changing the master product/service presentation into a personalized product presentation and for storing in a personalization data set representative of the changes,

a dynamic presentation generator for reading said master product presentation in said storage and said personalization file in order to generate a personalized presentation for selected products/services, where presentation contents can further be personalized, as entirely defined by the personalization data set.

According to a fifth aspect, the present invention provides a method for assisting salespersons in the presentation of products/services on offer, comprising:

providing to each salesperson a computer-readable data storage medium containing a master product/service presentation including data associated with a number of products/services on offer,

providing to each sales person a computer-based editor for changing the master product/service presentation into a personalized product presentation and for storing in a personalization data set representative of the changes and accessible by said computer,

providing to each salesperson a dynamic presentation generator for reading said master product presentation in said storage and said personalization file in order to generate a personalized presentation for selected products/services, as entirely defined by the personalization data set.

Preferably, said editor and said presentation generator are provided on said data storage medium for installation on the salesperson computer system. In this manner, a single medium such as a CD-ROM is provided to the salesperson without the need for high level of IT management.

Advantageously, the method comprises the additional following steps:

providing to regional sales entity computer-readable data storage media each containing a plurality of master product/service presentations corresponding to products/services available in respective regions,

providing the computer systems of salespersons in a given region with code limiting access by the editor and presentation generator to the master product/service presentation corresponding to said given region.

In this manner, an identical data storage medium can be provided to the various regional sales entities throughout the world, and at the same time a salesperson in a given region will be sure to present products/services that are effectively available in this region.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be more clearly understood from the following detailed description of a preferred embodiment thereof, made with reference to the appended drawings, in which:

FIG. 1A to 1D illustrate different levels of a simplified folder structure of a personalized presentation data set corresponding to a session.

FIG. 2 shows a new session display generated for creating a new session,

FIG. 3 shows the first slide of a template presentation that can be personalized in a presentation session,

FIG. 4 illustrates a session node in a XML structure,

FIG. 5 shows the main display of a session manager allowing to create, edit, import, etc. presentation sessions,

FIG. 6 illustrates an item portion of a XML structure of a session,

FIG. 7 illustrates another item portion of a XML structure of a session, where an item includes sub-items,

FIG. 8 illustrates the user interface of a slide manager for editing/personalizing the structure of a session,

FIG. 9 illustrates the main steps executed for performing a personalized presentation according to the present invention,

FIG. 10 shows an exemplary XML slide content with personalized text to be used by the system and method of the invention,

FIG. 11 illustrates the corresponding display during the presentation, and

FIGS. 12A and 12B illustrate two XML slide contents with different types of personalizations.

DETAILED DESCRIPTION Definitions

In the practical embodiment of the invention as described hereinunder, the following abbreviations/acronyms are used:

SWF: a proprietary vector graphics file format produced by the Flash software from Adobe (formerly Macromedia). Intended to be small enough for publication on the web, SWF files can contain animations or applets of varying degrees of interactivity and function. SWF is also sometimes used for creating animated display graphics and menus for DVD movies, and television commercials.

The Flash program generates in a manner known per se SWF files as a compressed and non-editable final product, whereas it uses the .fla format for its editable working files (source: Wikipedia.org). Specifications on the .fla file format may be found in the document entitled “Macromedia Flash FLA project File Format,” promulgated by Digital Preservation (digitalpreservation.gov) at the Library of Congress, the entire disclosure of which is hereby incorporated by reference herein.

These file format specifications can be found under the following link: http://www.adobe.com/licensing/developer/fileformat/faq/, which is fully incorporated by reference herein.

The specification details are well-defined. As explained in the “SWF File Format Specification” by thelabs.com, SWF files are stored in files with the extension .swf and are binary files stored as 8-bit bytes. The various parameters of the .swf structure are detailed in the “SWF File Format Specification,” and in “SWF File Reference” by Beijing Feynman Software Technology Co., Ltd available on their miniGUI.com website, the entire disclosures of which are hereby incorporated by reference herein.

Adobe Flash (abbreviated in Flash): refers to both the Adobe Flash Player, and to the Adobe Flash Professional multimedia authoring program. Adobe Flash Professional is used to create content for the Adobe Engagement Platform (such as web applications, games and movies, and content for mobile phones and other embedded devices). The Flash Player, developed and distributed by Adobe Systems, is a client application available in most common web browsers. It features support for vector and raster graphics, a scripting language called ActionScript and bi-directional streaming of audio and video. There are also versions of the Flash Player for mobile phones and other non-PC devices. (source: Wikipedia.org)

More information on the Flash Player can be found under the following link: http://www.adobe.com/products/flashplayer/ and in the white paper by Vikrant Karvir entitled “Delivering Enterprise Applications, Content, and Communications with the Flash® Platform, © 2005 by Macromedia, the entire disclosures of which are hereby incorporated by reference herein. Additional information on the Flash Player is detailed in “Adobe Flash” as of the filing date of the instant application at wikipedia.org, and in “Macromedia Flash 8 on Demand” by Anderson and Johnson, the entire disclosures of which are hereby incorporated by reference herein.

ActionScript: a scripting language based on ECMAScript, primarily associated with scripting behavior of Adobe Flash applications. Currently in version 3.0, ActionScript has revolutionized the flash format, which initially offered little else than typical linear animation. With ActionScript, a Flash application can provide a high level of interactivity, which is a necessary component of modern web design. Applications developed using Adobe Flash or Adobe Flex will often use ActionScript for runtime manipulation of data and content. Other platforms, such as ColdFusion also support scripting with the ActionScript language.

More information regarding the use of Adobe Flash authoring program and the ActionScript language can be found under the following link: http://livedocs.adobe.com/flash/9.0/main/ and in the following texts: “Essential Action Script 3.0” by Colin Moock, “Foundation Action Script for Flash 8” by Bhangal, Besley, Powers and Doleck, and “Adobe Flash CS3 Professional on Demand,” by Anderson, Johnson and Perspection, Inc. the entire disclosures of which are hereby incorporated by reference herein.

SWF2EXE software: a type of software which enables the creation of executable files from SWF files.

SWF files were originally designed for use in a web browser and required the Flash plug-in to be installed for the browser it is running on. However SWF files can be played outside of a web browser using the Adobe Flash Player, providing that the user has the Flash Player installed. The Adobe Flash Player provides an option to wrap the SWF file into a standalone executable which does not require the Flash Player to be installed for it to run successfully. This can be done by running the Flash projector, and in the File menu select ‘Create projector’. Using this description, the Flash Player can be thought of as a SWF2EXE program.

Since the option to create standalone presentations (or self executing Flash movies) from Flash was introduced, there have been several SWF2EXE programs, available commercially and as freeware, which claim to be able to create standalone executables from SWF files and at the same time extend the functionality of Flash. For example, these programs offer access to the file system to save to a file—something which cannot be done with Flash alone. (source: Wikipedia.org)

Introduction

In its currently preferred practical implementation, the computer-based dynamic presentation system and method according to the present invention is based on a combination of SWF files (made with a Flash authoring tool integrating Action Script development environment plus multiple graphic designs) and XML files warped into the commercial “Zinc SWF2EXE” solution available from Multimedia Limited (MDM), United Kingdom.

Starting Data Structures

The system of the present invention operates from a master dynamic presentation data stored on a read/write or read only medium, typically a CD-ROM or other appropriate medium.

By “presentation”, it is meant here any type of multimedia presentation including contents such as text, static images, video, sound, and which can perceived as a time succession of “slides” each having its own contents.

These master data can include different master localized versions each defining a master or model presentation in different languages in which the presentation is to be delivered (in particular text and speech).

These master localized versions can be attached to a root master content which is for instance the English version. It only uses a “menu.xml” file and the SWF slides as root master content.

Each master localized version includes a pack of XML files used as a basis for a session. The localized versions are stored in a data folder associated to the application on the medium, except for files which are not to be localized (e.g. images) which are stored in the root master contents.

The data folder associated to a localized version contains all localized XML slide files (localized master content) and a localized master nodal structure. The localized Master Nodal Structure can refer to different SWF/XML files using a “file” attribute as will be explained in greater detail in the following.

The master nodal structure is contained in a document named “menu.xml” and which defines a hierarchical organization of presentation items (the above-mentioned slides), said master nodal structure being stored in a “menu” folder of the master localized version.

Each item node of the master nodal structure may refer to a file belonging to a localized master content also stored in the master localized structure.

One aspect of the present invention is to allow a user, from these master data, to create a personalized dynamic presentation (“session”), wherein a set of personalized session data are created and stored in a read/write storage unit of the system, such as the system internal hard disk drive, without requiring the duplication of large presentation data. This set of personalization data is stored in a set of folders, the root of which will be called the local root folder in the following description.

Every time the presentation is modified, a new .xml file is created or updated, bearing in mind that to any .swf file always corresponds one .xml file per session.

Basic Operation

The dynamic presentation program embodying the method of the present invention comprises the following basic functions.

When the system is launched, a display is generated for input of user name and password for entitled use of the program.

After checking that the user name is registered and the password is correct, the program checks whether a date which has been associated to the master presentation data and which is stored therewith is consistent with the current system date.

This allows to possibly detect that a master presentation is obsolete, an in such case an error message is displayed, informing the user that he should obtain a more up-to-date version of the master presentation.

Then, the program checks whether a local root folder is present on the hard disk drive of the computer system, meaning that a personalized session has been already initiated in the same system.

This local root folder, the contents of which will be described in greater detail hereinafter, is expected by the program to be found along a given path in the main hard drive of the user's computer (e.g. C:\MHPS\COCKTAIL\ in the present example).

If the program does not find a local root folder, the program then automatically creates such a root folder as well as sub-folders including among others a subfolder “data” and, in the “data” folder, an empty XML file named “profil.xml” file.

FIGS. 1A to 1D shows an example of the COCKTAIL root folder and part of its hierarchical structure (according to a Windows® type operating system in the present species).

The sub-folders named “1”, “2” contained in the COCKTAIL folder as shown in FIG. 1A are session folders each corresponding to a personalized presentation.

The COCKTAIL folder further contains a “data” folder which itself contains an XML file named “profil.xml” which is used by the program as will be later explained.

As illustrated in FIG. 1B, a folder session (here a folder named “5”) itself contains several sub-folders.

A sub-folder “IMAGES” contains personalization images such as .jpeg files which are to be used instead of a master image in the personalized presentation. FIG. 1D shown an example of the contents of such “IMAGES” folder, with an image called 0001.jpg.

A sub-folder “menu” contains the personalized “menu.xml” file as mentioned in the foregoing and as will be described in greater detail in the following.

The “5” folder further contains a XML file corresponding to a personalized slide and named 0001_F.xml in the present example. This XML file contains personalization data including in particular personalized text and personalized text attributes for the relevant slide.

Advantageously, the names of the .jpg or .xml personalization files (or other file types) are identical to the names of the .swf slide template files contained in the master data, to that the program can find in a very straightforward manner the personalization files corresponding to the respective slides.

An example of such XML slide file is shown in FIG. 1C, and corresponds to the slide display as shown in FIG. 3. Basically, this file is derived either from the master .swf slide file contained in the master data, or from a pre-existing .xml personalization file, with personalized or further personalized items in the relevant places. It this example, a text field present in the fifth position in the XML contains some text with has been personalized (here the “TEST” text string come in replacement of the “CLIENT NAME” text string present in the master XML file and practically intended to be replaced with the name of the client to whom the personalized presentation is intended).

Through a mechanism that will be described later in the present description, the system would then display “TEST” in the place of “CLIENT NAME” in the slide displayed in FIG. 3.

After the launching step described above has been executed, a “session manager” part of the program (cf. infra) is then executed.

This session manager provides a number of session management actions to be done by the user, and in particular the creation of a new session by means of a mouse-clickable “ADD A SESSION” button as shown in FIG. 2. This causes the prompting for a new session name and a session language selected from a pop-up menu.

This allows the user to create a personalized session derived from to a master localized version as identified by the language choice. (see infra chapters Master Presentation Creation: Session Creation and Master Localized Version).

If the program does find a local root folder, then it launches the current Active Session as defined by the contents of the “profil.xml” file contained in the “data” sub-folder of the root folder.

The “profil.xml” file contained in the “data” folder under the “COCKTAIL” folder is used to store session personalization data, i.e. session parameters corresponding to different sessions created by the user as will be described hereinafter, and to determine which among a plurality of sessions should be the active session, i.e. the session to be used for a presentation. There is only one “profil.xml” file per type of presentation (a type of presentation being here COCKTAIL). A simple example of a “profil.xml” file with two session nodes is shown in FIG. 4.

When a session is created (cf. supra) or modified (cf. infra), the “profil.xml” file is updated with an additional session node of the type illustrated in FIG. 4.

The session node includes in the present species the following sub-nodes:

NOM: the specific session name as inputted by the user

ID: a unique session identification number

DATE: Creation date/Slide Manager modification date saved in the “profil.xml” file.

PATH: the local path for accessing the local root folder containing the “profil.xml” file.

LANGUE: designates a localized master version of the presentation used to create the session. “LANGUE” for “LANGUAGE” can possibly be changed in “COUNTRY” or “REGION” so as to designate to which part of the world the session node is assigned: “localized” shall be here understood in a wide meaning. Preferentially, only one language per session node is foreseen, so that the presentation can be easily and quickly transmitted and downloaded, meaning the language is adapted to the country where the presentation shall be used.

EDITABLE (value true or false): editable/non-editable character of the session (EDITABLE IS always true for sessions created by users).

The “profil.xml” file also includes as shown in FIG. 4 a LAUNCH_ID node identifying which session, as designated by the following parameter, is active.

Session Manager

The session manager will now be described in greater detail.

Basically, this part of the computer program allows users to manage (i.e. create, rename, duplicate, modify, delete, import, send to someone else, etc.) sessions in different ways.

A main display of the session manager is shown in FIG. 5. This display shows all existing sessions on a computer system. When the user clicks on a session name, the session manager updates the LAUNCH_ID attribute stored in the “profil.xml” file so that the location of the session can be found therefrom. The session then becomes the new active session.

The session manager allows renaming, duplicating, deleting, transmitting to another system, and reordering all sessions. All actions made by the user in the session manager result in a corresponding update of the “profil.xml” file under the active session node thereof and/or of the “profil.xml” file nodal structure.

The session manager can also alter presentation data files (deletion/duplication), as will be described hereinunder.

One main feature of the session manager is to allow to edit the structure of the session. This is done through another program part forming a structure editor and called slide manager in the present example.

In the example illustrated in FIG. 5, two sessions are existing and listed in the display: the first one is highlighted, meaning that it is the current active session.

The display further includes, for each listed session, session function buttons corresponding to functions of renaming, duplicating, deleting or sending a session, respectively.

This display also includes global function buttons allowing to add a new session, add a folder in a session, or import a session.

Master Presentation Creation: Session Creation

When a session is created (or duplicated from an existing session), the program modifies the “profil.xml” file so as to add thereto a new session node as described with reference to FIG. 4, and also creates a session folder in the local root folder (e.g. C:\MHPS\COCKTAIL\1\ as shown in FIG. 4 if this is the first created session), the name of the session folder being identical to the session ID (in the present species the “1” figure).

The program then reads the master nodal structure (“menu.xml” file) from the storage unit where the master localized versions are present, and copies this master nodal structure to become the “menu.xml” file contained in the “menu” folder of the newly created session folder.

This copy of the master nodal structure will be used for defining, under control of the user, the visibility/non-visibility in the final presentation of each content (slide) as pointed to by the master nodal structure.

The Master Nodal Structure defined by a “menu.xml” file contains a series of item nodes is illustrated in FIGS. 6 and 7. These are located at the lower level in the hierarchy and correspond to respective slides, i.e. individual parts of the presentation. Each item node refers to a master contents belonging to the corresponding master localized version. More particularly, each slide item has a “file” attribute designating the Flash files which are to be loaded and used as design template for the slide in question.

Once the “menu.xml” file has been copied from the relevant master localized version to the session folder, it can be used for determining which slides will be included in the presentation and which slides will not belong to the presentation.

In a practical embodiment, and as illustrated in FIG. 6, an item node contains several attributes:

enabled: a tag indicating whether said content (slide) is visible in the personalized presentation/session or not (values on or off).

file: a name used to identify the master content file to be loaded for the presentation; if the property is set to “no”, this means that no master content is available for the considered item node.

duration: a time indicator (e.g. in minutes or seconds) defining for how long Master Content has to be displayed; the presence of this indicator in each item nodes allows the user to evaluate in a very simple manner the total duration of the personalized presentation, practically, the system is capable of dynamically adding the time indicators of each items having an Enabled value set to “on”, and of displaying this duration.

label: the name of the Master Content (slide) used as label in the slide manager (cf. infra) and corresponding to the different chapters present in a session.

printable: an indicator of whether the Master Content (slide) can be printed from the slide manager or not (cf. infra).

It should be noted that an item node can be the child of another item node, allowing to build hierarchical menus as will be described in the following. And example of item nodes embedded into a parent item node is illustrated in FIG. 7.

According to an advantageous feature, the total duration of the presentation can by dynamically computed and displayed (cf. bottom left corner of FIG. 8) while the user in is the course of enabling/disabling slides.

More particularly, each time a menu item is enabled or disabled by the user according to the above procedure, the program recomputes the sum of the individual durations associated with each menu item. In this manner, the user can adjust the composition of the session so that a targeted duration can be achieved.

Structure Editor: Slide Manager

The menu.xml file interacts with a corresponding editor, named “slide manager”, which allows easy editing of the Master Nodal Structure associated with the created session. The Structure Editor reads the “menu.xml” file and displays it as a hierarchical menu, as illustrated in FIG. 8. Each item can be enabled or disabled by a tick box or by clicking in the zone of the item name.

The “on” or “off” status of an item is further revealed in the display by highlighting the enabled items or graying the disabled items.

Preferably, the change of the Enabled status of an item is automatically propagated to descendent item nodes, together with the display revealing the status.

Further, when the user sets the Enabled status of an item to “on”, the corresponding slide is displayed after having read the slide data from the master localized version. Further, the total duration of the presentation as described in the foregoing is updated.

Viewing the Presentation: Launching and Playing a Session

When a session is launched, the application loads the current session “menu.xml” file read from the “menu” folder contained in the session folder designated by the appropriate ID (cf. supra). The menu is displayed based on “menu.xml” file first child and the first enabled slide item is played.

Practically, a slide is a .SWF file used as design template. It can be associated to a XML file that provides modified content (e.g. the “0001_F.xml” file as described in the foregoing).

When a slide item is played, the application loads the SWF files corresponding to the slide item “file” attributes. Once loaded, it checks whether a XML slide content file is located in the local session folder, revealing that there is a modified content for this slide.

If so, the application loads the XML slide content and displays it through the SWF file using the SWF original design.

If no XML slide content is found in the local session folder, the application searches for one in the Master Localized Version (linked to the session by the “profil.xml” definition) and loads it.

If no XML slides content is found (either locally or in the Master Localized Version), the basic SWF content is displayed.

When the user goes to the next slide, the application plays the next enabled slide found in the “menu.xml” slide item.

Slide Personalization—XML Slide Content

According to one aspect of the present invention, a slide may be edited (personalized) by the user during the viewing of the presentation. When a slide is edited/personalized, the corresponding personalized slide content is implemented as a declarative XML file (e.g. the “0001_F.xml” file as described above) itself referring to different files, and in particular to the master content obtained from the master data, which practically is a SWF template which is supplied with initial content and formatting.

The edition/personalization is preferably done via an appropriate text editor, preferably in what-you-see-is-what-you-get (WYSIWYG) mode.

Of course, the degree of freedom allowed to the user for personalization can be adjusted.

In the present example, the user can modify text content and text style, and substitute an image to another one, or modify some contents in a video (e.g. text portions thereof). To the contrary, the slide layout (background colors, locations of the different items in the slide, etc.) as defined by the design slide template is kept untouched.

An example of a text-type XML slide content is illustrated in FIG. 10. It includes a plurality of “txt” nodes, having “mc” attributes which example of XML Slide Content: the “txt” nodes have “mc” attributes which declare which SWF Movie Clip (SWF structure) the node content is linked to. The data in the “txt” node is in HTML format, allowing rich and flexible layout (presentation options).

FIG. 11 shows a display generated by the system by interpretation of the XML Slide Content of FIG. 10.

FIGS. 12A and 12B further illustrate that an XML slide content can contain modified text contents (in FIG. 12A, the original text string “CLIENT NAME” in the fifth text item has been replaced with “NO TXT FORMAT CHANGE”) and/or modified text style (in FIG. 12B, the text format again in the fifth text item has been changed from FONT FACE=“DIN-Light” to FONT FACE=“DIN-Regular”, and the text content is this time “TXT FORMAT CHANGE”).

Details of Session Playing

FIG. 9 illustrates the different steps executed by the system when performing the presentation.

First of all, the system checks for the presence of an active local session on the system hard disk. The profil.xml file allows to determine the current active session.

The menu.xml file of this session is then parsed. When the system identifies that a menu item Enabled tag is set to “on”, it then loads from the master data storage the corresponding template slide file, which contains design information and content data.

Then before reading any content data for presentation, the system checks whether a personalized content exists in the personalized session data for this content.

If this step determines that no personalized content exists, then the presentation is performed either with a localized changed content, or, if no such content exists, with a master content.

To the contrary, if such personalized content is detected, then the presentation is performed with this personalized content.

These steps are repeated for each menu item, the ones having an Enabled tag set to “off” being merely ignored, and for each successive slide corresponding to the enabled items, whereby the personalized presentation is generated.

Session Export

A personalized session can be exported by a user for use by a different user having another computer system which can access the same master data, and possible localized data.

For that purpose, the folder organization of a session, starting from the session root folder, can be assembled in a single file, e.g. by a Zip® type compression software, and transmitted e.g. via email or through a removable storage unit such as a USB key, to the other system.

There, an import function of the session manager part of the program can use an Unzip piece of software for decompressing the file into the original folder arrangement, store this folder arrangement at the right place under the local root folder, and modify the local “profil.xml” file for making the system aware of this change.

A further characteristic of the program is the possibility for the program administrator to impose a filter regarding the slide contents, so that the user is able to concentrate on the presentation and lets the administrator take care of the local strategy to adopt in the considered region.

More particularly, computer-readable data storage media such as CD-ROMs, each containing a plurality of master product/service presentations corresponding to products/services available in respective regions, can be provided to the various regional sales entities of a same company, and code limiting access to the master product/service presentation(s) corresponding to said given region can be installed on each salesperson computer.

Dynamic Data Management

The present invention as described in the foregoing can be implemented in a dynamic data management environment.

For instance, a presentation can be further personalized by appropriate user interface displays belonging to the presentation and allowing to select/deselect products, to input price and/or quantity information associated to selected products, etc.

For this purpose, the master data can comprise a master product database including various types of data (description, manufacturing price, recommended retail price, etc.), and this database is exploited for creating in the folder of the active session a personalized database in response of appropriate user inputs. Such database is for instance in xml format.

The contents of this database can in turn be dynamically used by various calculation programs forming part of the presentation, so as to take into account only selected products and perform actions such as profit simulation based on quantities and pricing, etc.

Typically, this can be done with listing-type slides where items to be presented or not can be ticked or not by the user building his offer. The system copies the relevant parts of a master product database in xml format belonging to the master data in a specific xml personalization file in the session directory, and appropriate tags such as SELECTED/NON SELECTED are updated according to the user's selections.

In the same manner, pricing slides allows to input commercial data (prices, quantities, discounts, etc.) which again are stored under respective tags of the personalization file.

The latter is accessible for any computing to be made in association with the presentation or separately.

Of course, the system can handle different levels of user authorization corresponding to different capacities to personalize the data of the database.

Data Mining

Another optional feature of the system and method of the present invention comprises storing auxiliary data, such as logging the personalization actions made by each user, in a manner known per se in the art of database management.

Such data can then be gathered in real time or according to any schedule for any kind of processing such as commercial analysis or statistics.

Of course, many variants may be brought to the system and method as described in the foregoing.

In particular, other data structures, file types and dynamic presentation software can be used without departing from the scope and spirit of the present invention.

Claims

1. A computer system for generating a dynamic presentation, comprising:

a master storage containing master presentation data having a master nodal structure and master contents associated with content nodes of said structure,
a structure editor capable of copying said master nodal structure into a personalized data structure in a dedicated storage and of selectively changing the copied master nodal structure into a personalized nodal structure in response to user inputs, wherein said personalized nodal structure comprises all or part of the nodes of the master nodal structure,
a contents editor capable of copying a master content into said personalized data structure in said dedicated read/write storage and of selectively changing the copied master content into a personalized content in response to user inputs,
a dynamic presentation generator for generating a personalized presentation by accessing said personalized data structure, determining which content nodes in said structure belong to personalized presentation, and for any such content node selectively accessing master contents or personalized content if the latter is present in said personalized data structure.

2. A computer system according to claim 1, wherein said contents editor and said presentation generator share common display generation tools, whereby said contents editor operates in what-you-see-is-what-you-get mode.

3. A computer system according to claim 1 or 2, wherein said structure editor comprises a display generator for displaying labels of nodes of the master nodal structure and user-input sensitive graphic items associated to each node label for selectively declaring each associated node as enabled or disabled in the personalized nodal structure.

4. A computer system according to claim 3, wherein said master nodal structure comprises a tree structure file where each content node of the structure has an enabled/disabled tag, and wherein the structure editor is capable of changing the tag values depending on the user inputs made on the graphic items.

5. A computer system according to claim 4, further comprising a presentation duration computing unit capable of dynamically adding together duration information associated with each enabled node and of displaying the total duration.

6. A computer system according to claims 3, wherein:

said master contents include master presentation template data toward which point template pointers associated to structure nodes, and contents data towards which point content pointers associated to said template data, and
wherein said presentation generator is capable of accessing master presentation template data pointed by an enabled node, of checking whether a corresponding personalized content is contained in said dedicated storage, if so using said personalized content for the presentation, and if not accessing master content located in the master storage for the presentation.

7. A computer system according to claim 1, wherein said nodal structures and said contents are tag-based arborescent files.

8. A computer system according to claim 1, further comprising a plurality of personalization data sets and a selector for selecting one of said personalization data sets, each of said personalization data sets comprising a personalized nodal structure and personalized contents.

9. A computer system according to claim 1, wherein said master storage is a read-only removable medium storage unit, and wherein said dedicated read/write storage is a different storage unit.

10. A computer system according to claim 1, further comprising a communications device for transmitting to a remote computer system a personalized nodal structure and personalized contents as a single data package.

11. A computer system according to claim 1, wherein the master storage contains both master presentation data and localized presentation data, so that personalized presentation in different languages can be generated.

12. A computer system according to claim 11, further comprising a language selector for selecting a particular localized nodal structure and localized contents as master nodal structure and contents.

13. A computer system according to claim 12, wherein the system is adapted, for each content intended to belong to a presentation, to first check whether a personalized content exists, if so to use such personalized content, and if not to check whether a localized content exists, if so to use such localized content, and if not to use a master content.

14. A computer system according to claim 1, further comprising a database editor capable of copying at least part of a master database contained in the master presentation data into said dedicated read-write storage and to personalize data of said copied database in response to user inputs, wherein said presentation generator is capable of dynamically using said personalized data for the presentation.

15. A computer system according to claim 1, wherein said dynamic presentation generator comprises an interactive presentation generator.

16. A method for generating a personalized dynamic presentation in a computer system having a master storage containing master presentation data having a master nodal structure and master contents associated to the nodes of said nodal structure, defining together a non-personalized dynamic presentation, said method comprising:

copying said master nodal structure from said master storage to a personalized data structure contained in a dedicated read/write storage,
editing said copied structure into a personalized nodal structure in response to user inputs, wherein said personalized nodal structure comprises all or part of the nodes of the master nodal structure,
for at least one of said nodes, copying a master content to said personalized data structure contained in said dedicated read/write storage,
editing said copied master content into a personalized content in response to user inputs, and
generating said personalized dynamic presentation by accessing said personalized data structure, determining which content nodes in said structure belong to the personalized presentation, and for any such content node selectively accessing master contents or personalized content if the latter is present in said personalized data structure.

17. A method according to claim 16, wherein said contents editing and presentation generating steps are performed with common display generation tools, whereby said contents editing is made in what-you-see-is-what-you-get mode.

18. A method according to claim 16 or 17, wherein said structure editing step comprises displaying labels of nodes of the master nodal structure and user-input sensitive graphic items associated to each node label for selectively declaring each associated node as enabled or disabled to the personalized nodal structure.

19. A method according to claim 18, wherein said master nodal structure comprises a tree structure file where each content node of the structure has an enabled/disabled tag, said structure editing step comprising changing the values of said tags in response to user inputs on said graphic items.

20. A method according to claim 18, further comprising dynamically adding together duration information associated with each enabled node and displaying the total duration, the dynamically adding step being performed at the time of node enablement/disablement.

21. A method according to claim 18, wherein:

said master contents include master presentation template data toward which point template pointers associated to structure nodes, and contents data towards which point content pointers associated to said template data, and
wherein said presentation generating step comprises accessing master presentation template data pointed by an enabled node, checking whether a corresponding personalized content is contained in said personalized data structure and if so, accessing said personalized content for the part of the presentation corresponding to said node and alternatively if not, accessing master content located in the master storage for part of the presentation corresponding to said node.

22. A method according to claim 16, wherein said nodal structures and said contents are tag-based arborescent files.

23. A method according to claim 16, wherein:

said personalized data structure comprises a plurality of personalization data sets, each personalized data set comprising a personalized nodal structure and associated personalized contents, and
the method further comprises a step of selecting one of said personalization data sets prior to the presentation generating step.

24. A method according to claim 16, wherein said master storage is a read-only removable medium storage unit, and wherein said dedicated read/write storage is a different storage unit.

25. A method according to claim 16, wherein the master storage contains both master presentation data and localized presentation data, so that personalized presentation in different languages can be generated.

26. A method according to claim 25, further comprising an initial step of language selection, and a step of a language selector for selecting a particular localized nodal structure and localized contents as master nodal structure and contents.

27. A method for transmitting a personalized dynamic presentation from a first computer system to second computer system, comprising:

providing the first and second computer systems with a master storage medium containing similar non-personalized dynamic presentation data,
at said first computer system, assembling a personalized data structure into a single data package,
transmitting said package from said first computer system to said second computer system, and
at said second computer system, disassembling said single data package into said personalized data structure and storing said structure in a dedicated read/write storage,
whereby said second computer system is capable of generating said personalized dynamic presentation from said non-personalized dynamic presentation data and said personalized data structure.

28. A computer-based tool for assisting salespersons in the presentation of products/services on offer, comprising:

storage containing a master product/service presentation including data associated with a number of products/services on offer,
an editor for changing the master product/service presentation into a personalized product presentation and for storing in a personalization data set representative of the changes, and
a dynamic presentation generator for reading said master product presentation in said storage and said personalization file in order to generate a personalized presentation for selected products/services, wherein presentation contents can further be personalized in accordance with the personalization data set.

29. A method for assisting salespersons in the presentation of products/services on offer, comprising:

providing to each salesperson a computer-readable data storage medium containing a master product/service presentation including data associated with a number of products/services on offer,
providing to each sales person a computer-based editor for changing the master product/service presentation into a personalized product presentation and for storing in a personalization data set representative of the changes and accessible by said computer, and
providing to each salesperson a dynamic presentation generator for reading said master product presentation in said storage and said personalization file in order to generate a personalized presentation for selected products/services in accordance with the personalization data set.

30. A method according to claim 29, wherein said editor and said presentation generator are provided on said data storage medium for installation on the salesperson computer system.

31. A method according to claim 29 or 30, further comprising:

providing to regional sales entity computer-readable data storage media each containing a plurality of master product/service presentations corresponding to products/services available in respective regions,
providing the computer systems of salespersons in a given region with code limiting access by the editor and presentation generator to the master product/service presentation corresponding to said given region.

32. The computer system according to claim 7, wherein said tag-based arborescent files are XML files.

33. The method according to claim 22, wherein said tag-based arborescent files are XML files.

34. A method according to claim 27, wherein said second computer system generates said personalized dynamic presentation by:

copying a master nodal structure from a master storage to said personalized data structure contained in said dedicated read/write storage,
editing said copied structure into a personalized nodal structure in response to user inputs, wherein said personalized nodal structure comprises all or part of the nodes of the master nodal structure,
for at least one of said nodes, copying a master content to said personalized data structure contained in said dedicated read/write storage,
editing said copied master content into a personalized content in response to user inputs, and
generating said personalized dynamic presentation by accessing said personalized data structure, determining which content nodes in said structure belong to the personalized presentation, and for any such content node selectively accessing master contents or personalized content if the latter is present in said personalized data structure.
Patent History
Publication number: 20090076834
Type: Application
Filed: Sep 17, 2007
Publication Date: Mar 19, 2009
Applicant: MOET HENNESSY (Billancourt)
Inventors: Nicolas Rauber (Colombes), Davy Ea (Paris), Eric Chatry (Bois Colombes)
Application Number: 11/901,461
Classifications
Current U.S. Class: 705/1; 707/101; 707/104.1; Processing Agent (709/202); Hierarchy Or Network Structure (715/853); Document Retrieval Systems (epo) (707/E17.008)
International Classification: G06Q 30/00 (20060101); G06F 17/30 (20060101); G06F 3/048 (20060101);