CA2356846A1 - Generalized multi-interfaced extensible content management and delivery system, and on-line calendar - Google Patents
Generalized multi-interfaced extensible content management and delivery system, and on-line calendar Download PDFInfo
- Publication number
- CA2356846A1 CA2356846A1 CA002356846A CA2356846A CA2356846A1 CA 2356846 A1 CA2356846 A1 CA 2356846A1 CA 002356846 A CA002356846 A CA 002356846A CA 2356846 A CA2356846 A CA 2356846A CA 2356846 A1 CA2356846 A1 CA 2356846A1
- Authority
- CA
- Canada
- Prior art keywords
- content
- event
- calendar
- database
- site
- 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.)
- Abandoned
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
- G06Q10/1093—Calendar-based scheduling for persons or groups
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
A content management system allows users to post information into pre- authorized areas of public and private internet and intranet web sites. An automated computer-implemented on-line calendar system posts event informati on associated with a plurality of entities. Each entity has its own calendar. A calendar event database accepts event entry calendar input information from a plurality of content providers and stores the event entries. Each event entr y is associated with one or more entities specified by the content provider. A calendar assembler generates calendars of events for each of the entities using the information stored in the calendar event database. The event entri es include private entries which appear only on the calendar of an entity predesignated by the content provider and public entries which are available for viewing by any entity calendar.
Description
TITLE OF THE INVENTION
GENERALIZED MULTI-INTERFACED EXTENSIBLE CONTENT
MANAGEMENT AND DELIVERY SYSTEM, AND ON-LINE CALENDAR
BACKGROUND OF THE INVENTION
The present invention is directed to a multi-organizatian web content management system and a web-based on-line calendar system.
BACKGROUND TO WEB CONTENT MANAGEMENT SYSTEM
The present invention establishes the mechanism, the framework, the interfaces and ancillary methodology that allow multiple content creators to submit content, enable content managers to manage and expand their categories independently, facilitate the retrieval and manipulation of contents from multiple categories and merge them into a media form by the content consumer, and automate the processes where warranted.
Content management involves submission by creators, collection, editing, and processing by managers and re-distribution to consumers. An example of such a system is the operation of a newspaper. A more advanced example is a web site where feeds from various sources are collected and re-assembled for viewing on a browser.
A conventional static Web site consists of pages containing information units. Anchors embedded in the unit are used to link to logically subsequent units on other pages. A site map can show all the pages and the links among them. Tools abound to facilitate the production of such Web sites, from textual HTML editors to visual page designer like NetObjects Fusion. Programs like LinkBot exist to validate the links among pages; even so, broken links are commonplace on the Web given the inter-relationship among the pages.
This conventional Web site concept becomes merely a shell to an advanced dynamic and interactive site. At the core of such a site are one or more application programs that present the viewer information or functionality on demand. The pages serve as the user interface of the programs. It is not far-fetched to have an entire spreadsheet program running on the Web; Web-based Quattro Pro is available from Corel.
The Web publishing tools available on the market can be divided into two categories: site-centric and page-centric and are all based on the conventional page-and-link structure. They generally facilitate the creation of whole sites or whole pages. Microsoft FrontPage and Net Object Fusion are two examples of the page-centric approach. A
leading content publishing package, StoryServer by Vignet, attempts to control the entire site, leaving the site manager little flexibility, resulting in monotonous site designs (see www.news.com, www.cnet.com) . None of these products treat web sites as a componentized dynamic system where the content is isolated and treated independent of the web page to submit content for web publication layout.
GENERALIZED MULTI-INTERFACED EXTENSIBLE CONTENT
MANAGEMENT AND DELIVERY SYSTEM, AND ON-LINE CALENDAR
BACKGROUND OF THE INVENTION
The present invention is directed to a multi-organizatian web content management system and a web-based on-line calendar system.
BACKGROUND TO WEB CONTENT MANAGEMENT SYSTEM
The present invention establishes the mechanism, the framework, the interfaces and ancillary methodology that allow multiple content creators to submit content, enable content managers to manage and expand their categories independently, facilitate the retrieval and manipulation of contents from multiple categories and merge them into a media form by the content consumer, and automate the processes where warranted.
Content management involves submission by creators, collection, editing, and processing by managers and re-distribution to consumers. An example of such a system is the operation of a newspaper. A more advanced example is a web site where feeds from various sources are collected and re-assembled for viewing on a browser.
A conventional static Web site consists of pages containing information units. Anchors embedded in the unit are used to link to logically subsequent units on other pages. A site map can show all the pages and the links among them. Tools abound to facilitate the production of such Web sites, from textual HTML editors to visual page designer like NetObjects Fusion. Programs like LinkBot exist to validate the links among pages; even so, broken links are commonplace on the Web given the inter-relationship among the pages.
This conventional Web site concept becomes merely a shell to an advanced dynamic and interactive site. At the core of such a site are one or more application programs that present the viewer information or functionality on demand. The pages serve as the user interface of the programs. It is not far-fetched to have an entire spreadsheet program running on the Web; Web-based Quattro Pro is available from Corel.
The Web publishing tools available on the market can be divided into two categories: site-centric and page-centric and are all based on the conventional page-and-link structure. They generally facilitate the creation of whole sites or whole pages. Microsoft FrontPage and Net Object Fusion are two examples of the page-centric approach. A
leading content publishing package, StoryServer by Vignet, attempts to control the entire site, leaving the site manager little flexibility, resulting in monotonous site designs (see www.news.com, www.cnet.com) . None of these products treat web sites as a componentized dynamic system where the content is isolated and treated independent of the web page to submit content for web publication layout.
Accordingly, there is a need for a system which:
unifies the collection-processing-storage-distribution model across multiple platforms; establishes the mechanisms, interfaces and methodology for the efficient and secure flow of content from the creator to the consumer; allows multiple content contributors; enables content section managers to manage their sections independently; facilitates the site manager to retrieve and place contents from multiple sections and merge them into a site; automates the update of Web content; and enables the syndication of user content to multiple web sites. The present invention fulfills such needs.
BACKGROUND TO ON-LINE CALENDAR
On-line calendars allow multiple users to remotely and simultaneously maintain and access a shared calendar database. One conventional approach is to allow access to such calendars via an Internet browser and an Internet Service Provider (ISP). However, if a user wishes to access a plurality of different calendars from different organizations, the user must separately access different web sites. Likewise, if the user wishes to post the event to plural calendars, each calendar must be individually accessed to add the event. As more personal and organizational calendars become managed on-line via intranets, wide area networks, the Internet, and the like, the problem of calendar management grows exponentially.
Accordingly, there is a need for an on-line calendar system which can effectively and efficiently manage calendar data from plural businesses, organizations, and the like. The present invention fulfills such a need.
unifies the collection-processing-storage-distribution model across multiple platforms; establishes the mechanisms, interfaces and methodology for the efficient and secure flow of content from the creator to the consumer; allows multiple content contributors; enables content section managers to manage their sections independently; facilitates the site manager to retrieve and place contents from multiple sections and merge them into a site; automates the update of Web content; and enables the syndication of user content to multiple web sites. The present invention fulfills such needs.
BACKGROUND TO ON-LINE CALENDAR
On-line calendars allow multiple users to remotely and simultaneously maintain and access a shared calendar database. One conventional approach is to allow access to such calendars via an Internet browser and an Internet Service Provider (ISP). However, if a user wishes to access a plurality of different calendars from different organizations, the user must separately access different web sites. Likewise, if the user wishes to post the event to plural calendars, each calendar must be individually accessed to add the event. As more personal and organizational calendars become managed on-line via intranets, wide area networks, the Internet, and the like, the problem of calendar management grows exponentially.
Accordingly, there is a need for an on-line calendar system which can effectively and efficiently manage calendar data from plural businesses, organizations, and the like. The present invention fulfills such a need.
BRIEF SUMMARY OF THE PRESENT INVENTION
SUMMARY OF WEB CONTENT MANAGEMENT SYSTEM
The present invention isolates Web site management into three distinct elements: site layout, content creation and content placement. It therefore delegates the separated responsibilities to respective individuals. A visually .
unified site is substantially divided into sub-sites, or sections, independently maintained by the section managers.
As a set of Web content management tools, the present invention is useful for a large corporate site, a community site or a site which enables the sharing of content data across Web sites. Any content-rich site, such as newspaper sites, will find the present invention very helpful.
The present invention may be used in a complementary manner with MS FrontPage to do what FrontPage does not. FrontPage's editing capability may be used to allow content creator to copy materials edited in FrontPage into the content database of the present invention.
As its name suggests, the present invention does content management. Content mainly refers to textual and graphical information, also referred to herein as electronic digital assets or data. The present invention does not perform visual layout, which is best done with abundance of other programs. In this sense, the present invention is a post-design content management system.
Interaction with layout design, however, is beneficial and will simplify design work.
The present invention may be used with any programming or scripting language, Cold Fusion, ASP; C++, Visual Basic or Perl. The present invention may serve as an extension, or add-on component to web development platforms such as Cold Fusion and Active Server Pages. The present invention may also serve as a tool set for CGI and ISAPI
programming.
The present invention may be used any site that can access Component Object Model (COM) objects. It can be used from within Cold Fusion, ASP, or CGI programs. It is intended to be programming language neutral through the use of COM-DLL, servlettes, and Java features.
For the client using the Web site as a publication platform, the objectives of the present invention include at least the following goals:
1. To reduce or eliminate the need to manipulate Web site layout.
2. To deliver the power of the Web as a publishing channel to the hands of the content creator.
For the site manager, the objectives of the present invention include at least the following goals:
1. To modularize a Web site into replaceable selectable .components, the objectives of the present invention include at least the following goals:;
2. To decentralize the management of a Web site of diverse content types by separating content and form and distributing the control out content;
3. To streamline the publication of daily content and expansion of content areas; and 4. To facilitate the input, administration and presentation of Web content access across various electronic outlets.
SUMMARY OF ON-LINE CALENDAR
An automated, computer-implemented on-line calendar system is provided which posts event information associated with a plurality of entities. Each entity has its own calendar. Depending upon the implementation, each entity also has an apportionment of a large calendar database, or its own database. The system includes a calendar database and a calendar assembler. The calendar event database accepts event entry calendar input information from a plurality of content providers and stores the event entries. Each event entry is associated with one or more entities specified by the content provider. Event entries may specify a,plurality of entities for posting.
The calendar assembler generates calendars of events for each of the entities using the information stored in the calendar event database. The same event entry may appear on calendars of a plurality of entities if specified by the calendar event database. The event entries include private entries which appear only on the calendar of an entity predesignated by the content provider. Event entries which are not designated as private entries are treated as public entries and are available for viewing by any entity calendar.
BRIEF DESCRIPTION OF THE DRAWINGS
The following detailed description of preferred embodiments of the present invention would be better understood when read in conjunction with the appended drawings. For the purpose of illustrating the present invention, there is shown in the drawings embodiments which are presently preferred. However, the present invention is not limited to the precise arrangements and instrumentalities shown. In the drawings:
Fig. 1 shows a content management database in accordance with the present invention;
Fig. 2 shows a sample system configuration for .
implementing an electronic video shop using the content management system of the present invention;
Fig. 3A shows the interconnections between the major elements of the content management system;
Fig. 3B shows details of the content management database associated with the content management system;
Fig. 4 shows sample end products created by the content management system;
Fig. 5 is a screen shot from a web browser-based interface which illustrates the hierarchical structure, as well as the functions implemented at each level of the content management system;
Figs. 6A-9R show sample screen shots for one commercialized implementation of the present invention in the form of a web content management product.
Fig. 10 shows one embodiment of a system for managing the on-line calendar in accordance with the present invention, and shows the interconnections between the major elements;
Fig. 11 shows the database structure, including the objects, used for the on-line calendar; and -- WO 00/20945 _ Figs. 12-22 show sample screen shots for one preferred embodiment of the present invention in the form of a web content management product.
DETAILED DESCRIPTION OF THE INVENTION
Certain terminology is used herein for convenience only and is not to be taken as a limitation on the present-invention. In the drawings, the same reference letters are employed for designating the same elements throughout the several figures.
DETAILED DESCRIPTION OF WEB
CONTENT MANAGEMENT SYSTEM
A. DEFINITIONS
Content: any textual, visual and audio materials, or the combination thereof, including animated images, video and audio materials. In a broader sense, the term content covers the categorization of the actual content.
Content consumer: a person or a device that retrieves the content from storage for consumption, including web site, printing process, electronic mail system.
Content consumption: reading, viewing, hearing or redistribution of the content.
B. OVERVIEW OF PRESENT INVENTION
STRUCTURE OF WEB SITES FOR USE WITH THE PRESENT INVENTION
Content management should cover multiple web sites such that the contents can be efficiently shared among sites. At the top of the structure is a web, managed by a _g_ - PCT/US99123116 _ webmaster. The content management system supplies content units in the form of wrapped modules. Therefore, contents are independent of the sites while the sites are reliant on the content system.
Ideally, a content module would have one calling interface and be located at a site-independent URL.
Consider, for example, the following URL's:
1, http://www.regiononline.com/guild?site=Rest&Phone=1234567 2, http://www.regiononline.cm/calendar?site=2&date=4-30-98&class=2 3. http://www.regiononline.cvm/guides?site=1 §ion=edit&type=current 4. http://www.regiononline.com/images/header/headerl.gif In this way, it is possible to eliminate the redundancy of files and folders, simplify site management and enhance the efficiency and performance of the server.
Physically, a site consists of "templates." A
template is a mold for Web "pages." The template generates pages when given different "parameters." The template defines the layout of the resultant pages while the code and parameters determine the content of the output.
To a viewer, a Web site consist of pages, sewn together with anchors and links, in the form of hypertext markup language (HTML) .
To a site manager, a site consist of templates in the form of ffiles.
In terms of content, a Web site consists of "zones," which have "sections" under them. Zones and - PCT/US99/231 i 6 _ w WO 00/20945 .
sections are logical content units, rather than placement descriptions. A zone may not be a visual box on a web page;
it may span multiple pages; sections in one zone may not appear together. A section may span multiple templates or pages. A section contains articles that can be split into "parts." Articles of a section usually need to be presented in parallel. For example, "Local News" can be a zone, while "Bethlehem News" can be a section, which can have five stories for a day. Part 1's, or the titles of the stories, can be shown as a list. Clicking on one of the list items leads to the detailed story, which can be on a subsequent template.
A part can have a content, an anchor and an image.
The content can be pasted in or uploaded as a file.
Splitting an article into parts enables presenting a long article in multiple pages and attaching multiple images to an article. It also gives the contributor flexibility in handling the look and page transition of an article.
Besides an image that can be attached to a part of an article, an article can have a "lead image," which usually is needed in front of the title.
DIVISION OF RESPONSIBILITIES (generally) T_he site manager controls the physical placement by placing the code that retrieves the content of a section where it is desired to appear. The site manager can place one or more sections in a table cell or in a frame. The site manager does not decide on the content of a section.
The site manager's responsibilities are layout, which is usually prefabricated, and placement.
A Webmaster oversees the site managers and the _ WO 00/20945 PCT/US99/23116 zone manages and sets up their user accounts. The Webmaster decides on the server folder, URL mapping, etc. for the sites. The Webmaster also sets up folder to store documents, images and templates that are shared across sites.
The zone manager's role is administrative and includes defining sections within a zone and setting up -section manager accounts. The section manager oversees the content contributors and assures that the content and appearance of the materials submitted by the contributors are appropriate. All new articles submitted to a section are subject to the approval of the section manager.
The terms webmaster, site manager, zone manager and section manager pertain to the roles, rather than the personalities. There could be one person taking all the roles, or the roles could be delegated to different individuals. The division of responsibilities makes it possible for a team to split the roles and collaborate.
A portion of a section that appears on a template is a part of the section. The parts of a section are logically layered, in that a click on part 1 leads to part 2, much like the pages of a book. An example of a section is Ted's Place on Region Online (ROL). Part 1 of Ted's Place section is on home.cfm, which leads of part 2 on Content/tedplace/tedarchl.cfm. The complete article is part 3 on content/tedplace/date.cfin. Although the articles are present and stored in separate files now, with the use of a database, they can be accessed from one template. Therefore, Ted's Place section may have 3 parts.
Tt is advantageous to deem Ted's section a module, PCT/US99/Z3116 - _ with Ted responsible for its content and the site manager for its placement. A section manager can pre-approve the content of a contributor. It is desirable for Ted to have a simple interface to edit, update and archive.the articles of his section and for the site manager to be able to place the parts of Ted's section on the templates in an easy way.
Ted will have to know that his articles consist of 3 parts. Each part has its content and some ancillary properties, such as an anchor and an image. He does not know where exactly the parts are placed. He just edits the content and properties of the parts in a table.
The site manager places the parts by Ted as objects. If the manager uses Cold Fusion, the following code is used to put part 3 of Ted's Place where it is desired to appear.
<CFOUPU'I>#Section.Output("TedPlace")</CFOUTPU'T>
PROGRAMMING LOGIC
Components:
1. User Interfaces: content input, administration tasks 2. Database: save information on security and content 3. Transfer: access host through HTTP, display content in built-in browser 4. Server Object: enable the serve to interact with the database content; implemented in COM, it makes the present invention programming language-independent 5. Security mechanism 6. Correspondence system THE DATABASE DESIGN AND ACCESS METHODS
The database design handles all article types in any number of parts. The type of databases to be used is not restricted. With Active Data Object as the access method, we can access over one hundred databases, including MS Access, MS SQL Server, Oracle, and all ODBC data sources.
SECURITY CONSIDERATIONS
Security is implemented at all levels. The database is stored on the server and checks the user logon and presents the current user a temporary key to access the section he or she is authorized to work on. When the current user is finished, the temporary key is destroyed.
STATICIZING THE PRESENTATION UNIT
The object model of article and part makes it possible to staticize a presentation unit. When the object outputs the content from a query, it can write the results to a local file on the server. The next time the same content is requested, the query need not be executed. A
scheme is needed to generate file names unique to a query.
The staticized content is cached in a file named SectionyymmddHHAAPP.htm.
DYNAMIC LINKS
Ln order to give the server manager full control over the placement of the parts, the links between the parts to a section are not hard-coded by the content creator who does not know the exact placement. However, supply parameters to the links are provided such that the server manager can build a link that points to a specific content unit . For example, Ted would put <Click here for more> for the server manager to build a link.
THE NOTIFICATION SYSTEM
When a contributor submits an article, the section manager is notified by e-mail. When the section manager approves/deletes/criticizes an article, the author is notified.
SYSTEM REQUIREMENTS
The client interface is browser-based. No special hardware or software is required. The client needs Internet access, dial-up or whatever, and a browser.
In one preferred embodiment of the present invention, the server component requires Windows 95/NT and web server,. Microsoft Data Access Components, a scripting or programming environment to call COM objects. One embodiment of the present invention is implemented with Cold Fusion.
Another embodiment uses ASP calls to the database.
DIVISION OF RESPONSIBILITIES (detailed lists) Web Master:
1. Set up a Web root directory, name and password and specify an SMTP server, for use by the notification system.
2. Set up web site managers, allot a server folder for a site.
t~VO 00/20945 PCT/US99/23I 16 _ 3. Set up zone managers.
Site manager:
1. Edit templates for a site, place sections on the templates.
2. Adopt new templates.
Zone manager:
1. Set up section managers.
2. Create new sections.
Section manager:
1. Set up content writers.
2. Approve the content submitted by the writers. The Section Manager may send comment to the writer or delete the article.
Content writers:
1. Compose web content in his or her favorite editing environment, decide on the content and appearance of the articles.
2. Upload the article to the server.
When a section manager uses his or her password to enter a particular section, the articles in the section become accessible. The Section Manager can add an article or pick an existing article from a list to modify. The Section Manager logs out when he or she is done with the article.
The site manager uses a few lines of code to extract the content that the content creator has submitted.
Generally the site manager needs to specify the section and a display mode. If the site manager specifies a display of part 1 and more than one article is available, there will be a list of part 1's. The anchors are automatically built such that a click on part 1 leads to part 2 of the article.
The content appears wherever the code is put in a table cell or a frame. In other words, the present invention handles the output of content and the navigational links between the content units.
For example, the site manager may use a simple command : <% .getContent(SectionID, ArticleID, PartID, NumberOfArticles %>
to retrieve the content of a section, where:
SectionID is the name of the section;
ArticleID is usually programmatically supplied. If set to zero, the latest are retrieved;
PartID specifies either the header or body; and NumberOf Articles: Zero means all current ones, 1 means the latest one, etc.
USER KNOWLEDGE REQUIREMENTS
A content contributor needs to know how to type plain text. Special characters are automatically converted into HTML format. If a word processor is used to generate an HTML file and upload the file, the content contributor must know where the file is located. Alternatively, the content contributor needs to know how to use a word-processor.
1~V0 00/20945 PCT/US99/Z3116 The web server needs something to read CGI
parameters. CGI programming or server-side scripting tool, such as Cold Fusion, ASP, are sufficient for this purpose.
The site manager needs to understand what this system does and the sample implementations. The site manager does not need to do any coding.
Graphical designers need to understand the concept of templates and pages, and they need to make fewer replicates of their designs.
C. DETAILED DESCRIPTION
STRUCTURE OF THE CATEGORIES
The basis for content management is the categorical division of the content. Content may be divided into hierarchical categories. A news organization, for example, may categorize the news content into "sports", "business", etc. Each category is a collection of subcategories, such as "sports>swimming", and a sub-category is a collection of sub-subcategories, "sports>swimming>free style", and so on. There is no limit to the number of levels to the hierarchy, but each branch should be unique.
One way for managing such a hierarchy is using a relational database, such as an ANSI SQL database. The information on the categories can be stored in data tables while the database maintains the relationships among the units. Another way for managing such a hierarchy is using an object-oriented or hierarchical database, such as the registry of. Windows-NT.
The ways cited above for managing the hierarchy are the choice of the person implementing the system. The implementation person may choose another means, or devise one of his or her own, to maintain the categorical structure. The present invention is directed to concerns about the functionality of such a structure that is outlined as follows:
1. Each category may contain contents or "items".
2. Each category may contain subcategories, which in turn, are referred to as categories. Thus, a category may be main category with or without subcategories in one structure; a category may be a subcategory in another structure; or a category may be a sub-subcategory in another structure. The individual web site designer decides how to arrange the category structures.
3. Each category may be assigned to distinct individuals or "contributors" to maintain.
4. The existence of a category depends on the category immediately above it.
5. A manager of a category has control over the categories under it.
6. A category may contain actual contents or pointers to, or addresses of, contents.
SUMMARY OF WEB CONTENT MANAGEMENT SYSTEM
The present invention isolates Web site management into three distinct elements: site layout, content creation and content placement. It therefore delegates the separated responsibilities to respective individuals. A visually .
unified site is substantially divided into sub-sites, or sections, independently maintained by the section managers.
As a set of Web content management tools, the present invention is useful for a large corporate site, a community site or a site which enables the sharing of content data across Web sites. Any content-rich site, such as newspaper sites, will find the present invention very helpful.
The present invention may be used in a complementary manner with MS FrontPage to do what FrontPage does not. FrontPage's editing capability may be used to allow content creator to copy materials edited in FrontPage into the content database of the present invention.
As its name suggests, the present invention does content management. Content mainly refers to textual and graphical information, also referred to herein as electronic digital assets or data. The present invention does not perform visual layout, which is best done with abundance of other programs. In this sense, the present invention is a post-design content management system.
Interaction with layout design, however, is beneficial and will simplify design work.
The present invention may be used with any programming or scripting language, Cold Fusion, ASP; C++, Visual Basic or Perl. The present invention may serve as an extension, or add-on component to web development platforms such as Cold Fusion and Active Server Pages. The present invention may also serve as a tool set for CGI and ISAPI
programming.
The present invention may be used any site that can access Component Object Model (COM) objects. It can be used from within Cold Fusion, ASP, or CGI programs. It is intended to be programming language neutral through the use of COM-DLL, servlettes, and Java features.
For the client using the Web site as a publication platform, the objectives of the present invention include at least the following goals:
1. To reduce or eliminate the need to manipulate Web site layout.
2. To deliver the power of the Web as a publishing channel to the hands of the content creator.
For the site manager, the objectives of the present invention include at least the following goals:
1. To modularize a Web site into replaceable selectable .components, the objectives of the present invention include at least the following goals:;
2. To decentralize the management of a Web site of diverse content types by separating content and form and distributing the control out content;
3. To streamline the publication of daily content and expansion of content areas; and 4. To facilitate the input, administration and presentation of Web content access across various electronic outlets.
SUMMARY OF ON-LINE CALENDAR
An automated, computer-implemented on-line calendar system is provided which posts event information associated with a plurality of entities. Each entity has its own calendar. Depending upon the implementation, each entity also has an apportionment of a large calendar database, or its own database. The system includes a calendar database and a calendar assembler. The calendar event database accepts event entry calendar input information from a plurality of content providers and stores the event entries. Each event entry is associated with one or more entities specified by the content provider. Event entries may specify a,plurality of entities for posting.
The calendar assembler generates calendars of events for each of the entities using the information stored in the calendar event database. The same event entry may appear on calendars of a plurality of entities if specified by the calendar event database. The event entries include private entries which appear only on the calendar of an entity predesignated by the content provider. Event entries which are not designated as private entries are treated as public entries and are available for viewing by any entity calendar.
BRIEF DESCRIPTION OF THE DRAWINGS
The following detailed description of preferred embodiments of the present invention would be better understood when read in conjunction with the appended drawings. For the purpose of illustrating the present invention, there is shown in the drawings embodiments which are presently preferred. However, the present invention is not limited to the precise arrangements and instrumentalities shown. In the drawings:
Fig. 1 shows a content management database in accordance with the present invention;
Fig. 2 shows a sample system configuration for .
implementing an electronic video shop using the content management system of the present invention;
Fig. 3A shows the interconnections between the major elements of the content management system;
Fig. 3B shows details of the content management database associated with the content management system;
Fig. 4 shows sample end products created by the content management system;
Fig. 5 is a screen shot from a web browser-based interface which illustrates the hierarchical structure, as well as the functions implemented at each level of the content management system;
Figs. 6A-9R show sample screen shots for one commercialized implementation of the present invention in the form of a web content management product.
Fig. 10 shows one embodiment of a system for managing the on-line calendar in accordance with the present invention, and shows the interconnections between the major elements;
Fig. 11 shows the database structure, including the objects, used for the on-line calendar; and -- WO 00/20945 _ Figs. 12-22 show sample screen shots for one preferred embodiment of the present invention in the form of a web content management product.
DETAILED DESCRIPTION OF THE INVENTION
Certain terminology is used herein for convenience only and is not to be taken as a limitation on the present-invention. In the drawings, the same reference letters are employed for designating the same elements throughout the several figures.
DETAILED DESCRIPTION OF WEB
CONTENT MANAGEMENT SYSTEM
A. DEFINITIONS
Content: any textual, visual and audio materials, or the combination thereof, including animated images, video and audio materials. In a broader sense, the term content covers the categorization of the actual content.
Content consumer: a person or a device that retrieves the content from storage for consumption, including web site, printing process, electronic mail system.
Content consumption: reading, viewing, hearing or redistribution of the content.
B. OVERVIEW OF PRESENT INVENTION
STRUCTURE OF WEB SITES FOR USE WITH THE PRESENT INVENTION
Content management should cover multiple web sites such that the contents can be efficiently shared among sites. At the top of the structure is a web, managed by a _g_ - PCT/US99123116 _ webmaster. The content management system supplies content units in the form of wrapped modules. Therefore, contents are independent of the sites while the sites are reliant on the content system.
Ideally, a content module would have one calling interface and be located at a site-independent URL.
Consider, for example, the following URL's:
1, http://www.regiononline.com/guild?site=Rest&Phone=1234567 2, http://www.regiononline.cm/calendar?site=2&date=4-30-98&class=2 3. http://www.regiononline.cvm/guides?site=1 §ion=edit&type=current 4. http://www.regiononline.com/images/header/headerl.gif In this way, it is possible to eliminate the redundancy of files and folders, simplify site management and enhance the efficiency and performance of the server.
Physically, a site consists of "templates." A
template is a mold for Web "pages." The template generates pages when given different "parameters." The template defines the layout of the resultant pages while the code and parameters determine the content of the output.
To a viewer, a Web site consist of pages, sewn together with anchors and links, in the form of hypertext markup language (HTML) .
To a site manager, a site consist of templates in the form of ffiles.
In terms of content, a Web site consists of "zones," which have "sections" under them. Zones and - PCT/US99/231 i 6 _ w WO 00/20945 .
sections are logical content units, rather than placement descriptions. A zone may not be a visual box on a web page;
it may span multiple pages; sections in one zone may not appear together. A section may span multiple templates or pages. A section contains articles that can be split into "parts." Articles of a section usually need to be presented in parallel. For example, "Local News" can be a zone, while "Bethlehem News" can be a section, which can have five stories for a day. Part 1's, or the titles of the stories, can be shown as a list. Clicking on one of the list items leads to the detailed story, which can be on a subsequent template.
A part can have a content, an anchor and an image.
The content can be pasted in or uploaded as a file.
Splitting an article into parts enables presenting a long article in multiple pages and attaching multiple images to an article. It also gives the contributor flexibility in handling the look and page transition of an article.
Besides an image that can be attached to a part of an article, an article can have a "lead image," which usually is needed in front of the title.
DIVISION OF RESPONSIBILITIES (generally) T_he site manager controls the physical placement by placing the code that retrieves the content of a section where it is desired to appear. The site manager can place one or more sections in a table cell or in a frame. The site manager does not decide on the content of a section.
The site manager's responsibilities are layout, which is usually prefabricated, and placement.
A Webmaster oversees the site managers and the _ WO 00/20945 PCT/US99/23116 zone manages and sets up their user accounts. The Webmaster decides on the server folder, URL mapping, etc. for the sites. The Webmaster also sets up folder to store documents, images and templates that are shared across sites.
The zone manager's role is administrative and includes defining sections within a zone and setting up -section manager accounts. The section manager oversees the content contributors and assures that the content and appearance of the materials submitted by the contributors are appropriate. All new articles submitted to a section are subject to the approval of the section manager.
The terms webmaster, site manager, zone manager and section manager pertain to the roles, rather than the personalities. There could be one person taking all the roles, or the roles could be delegated to different individuals. The division of responsibilities makes it possible for a team to split the roles and collaborate.
A portion of a section that appears on a template is a part of the section. The parts of a section are logically layered, in that a click on part 1 leads to part 2, much like the pages of a book. An example of a section is Ted's Place on Region Online (ROL). Part 1 of Ted's Place section is on home.cfm, which leads of part 2 on Content/tedplace/tedarchl.cfm. The complete article is part 3 on content/tedplace/date.cfin. Although the articles are present and stored in separate files now, with the use of a database, they can be accessed from one template. Therefore, Ted's Place section may have 3 parts.
Tt is advantageous to deem Ted's section a module, PCT/US99/Z3116 - _ with Ted responsible for its content and the site manager for its placement. A section manager can pre-approve the content of a contributor. It is desirable for Ted to have a simple interface to edit, update and archive.the articles of his section and for the site manager to be able to place the parts of Ted's section on the templates in an easy way.
Ted will have to know that his articles consist of 3 parts. Each part has its content and some ancillary properties, such as an anchor and an image. He does not know where exactly the parts are placed. He just edits the content and properties of the parts in a table.
The site manager places the parts by Ted as objects. If the manager uses Cold Fusion, the following code is used to put part 3 of Ted's Place where it is desired to appear.
<CFOUPU'I>#Section.Output("TedPlace")</CFOUTPU'T>
PROGRAMMING LOGIC
Components:
1. User Interfaces: content input, administration tasks 2. Database: save information on security and content 3. Transfer: access host through HTTP, display content in built-in browser 4. Server Object: enable the serve to interact with the database content; implemented in COM, it makes the present invention programming language-independent 5. Security mechanism 6. Correspondence system THE DATABASE DESIGN AND ACCESS METHODS
The database design handles all article types in any number of parts. The type of databases to be used is not restricted. With Active Data Object as the access method, we can access over one hundred databases, including MS Access, MS SQL Server, Oracle, and all ODBC data sources.
SECURITY CONSIDERATIONS
Security is implemented at all levels. The database is stored on the server and checks the user logon and presents the current user a temporary key to access the section he or she is authorized to work on. When the current user is finished, the temporary key is destroyed.
STATICIZING THE PRESENTATION UNIT
The object model of article and part makes it possible to staticize a presentation unit. When the object outputs the content from a query, it can write the results to a local file on the server. The next time the same content is requested, the query need not be executed. A
scheme is needed to generate file names unique to a query.
The staticized content is cached in a file named SectionyymmddHHAAPP.htm.
DYNAMIC LINKS
Ln order to give the server manager full control over the placement of the parts, the links between the parts to a section are not hard-coded by the content creator who does not know the exact placement. However, supply parameters to the links are provided such that the server manager can build a link that points to a specific content unit . For example, Ted would put <Click here for more> for the server manager to build a link.
THE NOTIFICATION SYSTEM
When a contributor submits an article, the section manager is notified by e-mail. When the section manager approves/deletes/criticizes an article, the author is notified.
SYSTEM REQUIREMENTS
The client interface is browser-based. No special hardware or software is required. The client needs Internet access, dial-up or whatever, and a browser.
In one preferred embodiment of the present invention, the server component requires Windows 95/NT and web server,. Microsoft Data Access Components, a scripting or programming environment to call COM objects. One embodiment of the present invention is implemented with Cold Fusion.
Another embodiment uses ASP calls to the database.
DIVISION OF RESPONSIBILITIES (detailed lists) Web Master:
1. Set up a Web root directory, name and password and specify an SMTP server, for use by the notification system.
2. Set up web site managers, allot a server folder for a site.
t~VO 00/20945 PCT/US99/23I 16 _ 3. Set up zone managers.
Site manager:
1. Edit templates for a site, place sections on the templates.
2. Adopt new templates.
Zone manager:
1. Set up section managers.
2. Create new sections.
Section manager:
1. Set up content writers.
2. Approve the content submitted by the writers. The Section Manager may send comment to the writer or delete the article.
Content writers:
1. Compose web content in his or her favorite editing environment, decide on the content and appearance of the articles.
2. Upload the article to the server.
When a section manager uses his or her password to enter a particular section, the articles in the section become accessible. The Section Manager can add an article or pick an existing article from a list to modify. The Section Manager logs out when he or she is done with the article.
The site manager uses a few lines of code to extract the content that the content creator has submitted.
Generally the site manager needs to specify the section and a display mode. If the site manager specifies a display of part 1 and more than one article is available, there will be a list of part 1's. The anchors are automatically built such that a click on part 1 leads to part 2 of the article.
The content appears wherever the code is put in a table cell or a frame. In other words, the present invention handles the output of content and the navigational links between the content units.
For example, the site manager may use a simple command : <% .getContent(SectionID, ArticleID, PartID, NumberOfArticles %>
to retrieve the content of a section, where:
SectionID is the name of the section;
ArticleID is usually programmatically supplied. If set to zero, the latest are retrieved;
PartID specifies either the header or body; and NumberOf Articles: Zero means all current ones, 1 means the latest one, etc.
USER KNOWLEDGE REQUIREMENTS
A content contributor needs to know how to type plain text. Special characters are automatically converted into HTML format. If a word processor is used to generate an HTML file and upload the file, the content contributor must know where the file is located. Alternatively, the content contributor needs to know how to use a word-processor.
1~V0 00/20945 PCT/US99/Z3116 The web server needs something to read CGI
parameters. CGI programming or server-side scripting tool, such as Cold Fusion, ASP, are sufficient for this purpose.
The site manager needs to understand what this system does and the sample implementations. The site manager does not need to do any coding.
Graphical designers need to understand the concept of templates and pages, and they need to make fewer replicates of their designs.
C. DETAILED DESCRIPTION
STRUCTURE OF THE CATEGORIES
The basis for content management is the categorical division of the content. Content may be divided into hierarchical categories. A news organization, for example, may categorize the news content into "sports", "business", etc. Each category is a collection of subcategories, such as "sports>swimming", and a sub-category is a collection of sub-subcategories, "sports>swimming>free style", and so on. There is no limit to the number of levels to the hierarchy, but each branch should be unique.
One way for managing such a hierarchy is using a relational database, such as an ANSI SQL database. The information on the categories can be stored in data tables while the database maintains the relationships among the units. Another way for managing such a hierarchy is using an object-oriented or hierarchical database, such as the registry of. Windows-NT.
The ways cited above for managing the hierarchy are the choice of the person implementing the system. The implementation person may choose another means, or devise one of his or her own, to maintain the categorical structure. The present invention is directed to concerns about the functionality of such a structure that is outlined as follows:
1. Each category may contain contents or "items".
2. Each category may contain subcategories, which in turn, are referred to as categories. Thus, a category may be main category with or without subcategories in one structure; a category may be a subcategory in another structure; or a category may be a sub-subcategory in another structure. The individual web site designer decides how to arrange the category structures.
3. Each category may be assigned to distinct individuals or "contributors" to maintain.
4. The existence of a category depends on the category immediately above it.
5. A manager of a category has control over the categories under it.
6. A category may contain actual contents or pointers to, or addresses of, contents.
7. Each category and each content unit are uniquely identifiable.
Fig. 1 illustrates a content management database 10 organized in a category-type format. Note that in category 3, one of the contents is a pointer to a web site.
This taxonomic structure for content classification is capable of handling any and all systems of natural relationships. Therefore, the categorization system can be considered a model for the content body.
The present invention achieves the implementation of the functionality of such a structure with the use of object-oriented databases, relational databases, computer file systems, computer network protocols and the .
combinations or hybridization thereof.
INTERFACES THAT FACILITATE THE CREATION
'AND MAINTENANCE OF THE CATEGORIZATION
For the content managers, interfaces are devised for the creation and maintenance of such a taxonomic structure. As far as computer software is concerned, such interfaces can be designed in the form of application programming interfaces (API's), which allow the addition, deletion and setting the properties of categories, and which can be accessed with a programming or scripting language.
INTERFACES THAT ALLOW COLLECTION, MAINTENANCE AND DELIVERY OF CONTENT
For the content creators, managers and consumers, interfaces are designed for content collection, maintenance and retrieval.
END USER INTERFACES
The end user interfaces can be implemented desktop computer applications, web browser applications, or any other device that can take user selection and present the content.
STATICIZING MECHANISM
Although the content presentation is dynamic and in response to users' requests, the variations in the requests are limited and the same requests are often repeated. Staticizing provides content dynamics on an "as S needed" basis. The bottleneck for the speed of content delivery, as far as the server is concerned, is usually the database search and content processing. When the server receives a request, it is converted into a set of search criteria and a search is conducted by the database. The records found are processed and merged into a format, such as HTML, that is suitable for consumption. Two ways are used to speed this process:
1. Partial response caching. The requests are processed into unique identities and related to the final content units ready to be delivered. When the same request is received, no search and process is needed and the cached content is served out.
2. Full response caching. The fully assembled response, such as a front page of a web site, is cached so that majority of the processing time is saved.
SECURITY AND AUTHENTICATION
Security is implemented at all levels. Only authorized identity can access certain categories or functionality. The authorization can be based on organizational or corporate designation, or on financial transactions, e.g., payment received.
EXAMPLE IMPLEMENTATIONS
1. An Electronic Video Shop The video shop divides its content materials into categories such as Comic, Action, etc. A manager is assigned to a category. The present invention allows the category manager to retrieve video content materials from sources (content creators, such as Universal Studio) and place them under his or her category in a way that is described in the following pseudo-code:
Invention.DepositVideo(Category:=Action, Source:=US, SourceLocation:=name/Password@ftp.US.com://newRelease/ArnoldSchwart~eger1234 5, Description:=best Ever) The present invention builds interfaces for the end user to search for content in the content collection by various criteria. Upon the user selection, a device, or a program, will request the specific content to be sent to the user in a way that is described in the following pseudo-code:
Invention.DeliverVideo(title:=USnewAS12345, authenticated:=Yes, Mode:=HighResolution) Rig. 2 shows a sample system configuration for implementing the electronic video shop. The entered search may include one or more keywords, categories, or combinations of keywords and categories. In Fig. 2, a web browser 16 accepts a search input query which is routed by an ISP 18 to an interface 20 connected to the content management 'database 10 and the content database 14. A
search engine 22 uses the user's search input query to search the content database 14.
2. A Web Content Management System This system enables the collection of content from various sources, such as newspaper and magazine content systems, individually written articles, and the placement of content units on designated Web sites. It divides the content into levels of categories and assigns an owner to each category who has control over the content in his or her category. Multiple content creator, or writer, can be assigned to a category. The interfaces of the system facilitate the submission of content materials from various sources. For example, a desktop computer application is compiled to help a writer fill in the category name, user name, pass word, article header, etc. A visual what-you-see-is-what-you-get editing environment is incorporated in the application such that the writer needs not to know any more than ordinary composition. The communication protocols are built in the system such that the content can be transferred from the creator to a server and is processed and stored in appropriate databases or file structures. The manager of the category will then have the chance to examine the new content and decide whether is will be published. Once approved, the consumer can access the content in a presentation that is suitable for consumption on his or her device of choice, such as a computer program, a television set.
For efficient storage and retrieval for web distribution, textual content is stored in HTML (hypertext markup language) or XML (extensible markup language) and multimedia content in its native format.
Fig. 5 is a screen shot from a Web browser-based interface which illustrates the hierarchical structure as well as the functions implemented at each level of the web content management system.
Figs. 3A, 3B and 4 illustrate one embodiment of a web content management system in accordance with the present invention. Fig. 3A shows the interconnections between the major elements, Fig. 3B shows details of the content management database 10 used in Fig. 3A, and Fig. 4 shows sample end products as viewed at an end user interface, such as a browser. These figures illustrate how the present invention allows the contents of a single category to appeaf in a plurality of unrelated web sites 24 (labeled as 1-n), each of which may have completely different page layouts.
The same categories and their content may thus be automatically populated in multiple web sites. The "contributors" of Fig. 1 are equivalent to the content providers 12 of Fig. 3A.
Referring to Figs. 3A and 3B, a central site or a plurality of distributed sites includes a content database 14 for storing the content, and a content management database 10 for storing instructions regarding how the content is used and managed. A plurality of content providers 12 (labeled as A-Z) transmit content to locations in the content database 14. In one scheme, each content provider 12 is permitted to submit content to one or more preselected content numbers. There is a content number for each category item shown in Fig. 1. For example, content 1 may be item 1 of category 1; content 2 may be item 2 of category 1; content 3 may be item 1 of category 2, subcategory 1, and so on. Passwords and other appropriate security measures are used to ensure that content is received only from the predesignated provider. To facilitate illustration of the present invention, the content management database 10 is shown in Fig. 3B as an index of categories and the web site location at one or more web sites where the content (items) should appear.
The content provider 12 does not create the content management database 10. Instead, individual web site personnel and/or their authorized entities, set up and maintain the information in the content management database 10.
Referring to Figs. 3A, 3B and 4, consider the home page 26 of Site 1 which is arranged with five categories.
Categories 1, 3 and 4 each have two hypertext-linked items identified with a headline or teaser line (article header).
Category 2 has two hypertext-linked subcategories. Category 5 is a single graphic item. The headline of the items in contents 1, 3 and 4 appear in their respective locations of the Site 1 homepage. 26, and the full-text or full version of the items appear at the respective web site addresses shown in Fig. 3B. For example, the full version of item 2 of category 4 appears at-: sitel.com/category4/item2, as shown in Fig.
4.
Home page 28 of Site 2 is arranged with categories 1 and 2. The physical layout of category information may be different in sites 1 and 2, depending upon the formatting/layout of the sites and the number of different categories. Since category 2 has two subcategories, the home page lists the two subcategories as hypertext links.
Clicking on a subcategory link brings up a web page of subcategory items. Clicking on the items brings up the full versions of the item contents. Fig. 4 shows an example for viewing subcategory 1, item 1. Site 2 does not have categories 3-5.
In the example shown in Fig. 3B, site6.com (not shown in the figures) includes categories 3 and 5, but not categories 1, 2 and 5.
In the web page structure shown in Fig. 3B, the full version of content, as well as the clickable subcategory listings, are located on separate web pages and are not part of the front page web page. In an alternative web page structure, the full version of content appears on the same web page as the front page. For example, referring to Fig. 4, the item 2 full content may be located at the following address : sitel.com/frontpage?category=4&item=2 The alternative structure uses less pages and thus ,is more efficient, especially for a web site with a large number of branches.
As illustrated by this example, the same categories, (and thus, the same content items), may be automatically populated in a plurality of different web sites. In this example, when submitting the content, the content provider 12 must indicate which portion of the content is the headline and which portion is the full version. A summary of the content may also be provided if the web sites have separate locations or pages for content summaries. If the content of a category is subsequently changed and the change is approved by the site manager, the new content replaces the old content in each of the respective web sites.
As discussed above, a manager or administrator is assigned to each category for examining newly submitted content and deciding if it should be published.
The present invention may be used to create electronic newspapers for a plurality of web sites. Thus, a news article, sports article or weather report may simultaneously become the content of a local school newspaper, a regional newspaper, and a national newspaper.
In the newspaper example, the content provider 12 may be a reporter, writer, photographer, subscriber (e.g., for letters to the editor or a feedback section), or even a newswire service such as the Associated Press. Of course, the electronic newspaper is only one example of an application for the present invention and is not meant to limit the scope of the invention.
Figs. 6A-9R show sample screen shots for one commercialized implementation of the present invention in the form of a web content management product called "PublishNow," marketed by Regional Network Communications, Inc. (RNCi), Bethlehem, PA. PublishNow works in conjunction with other two products, "WriteNOW" and "CalendarNOW," also marketed by RNCi. WriteNOW is a web content entry tool for use with PublishNOW. WriteNOW uses Microsoft Word. The screen shots illustrate exactly how a user interacts with the product, and thus are self-explanatory. Some additional explanation of selected figures is provided below.
Figs. 6A-6H show the article submission process using a browser-based version of WriteNOW.
Figs. 7A-7C show the article submission process using a non-browser version of WriteNOW software (ver.
2.25) .
Figs. 8A-8Q show PublishNOW user interface screens. The "Site" Functions (Place Departments, Upload Template) are performed by the Site Administration Module, shown in Figs.
9A-9R.
Figs. 9A-9R show user interface screens for the Site Administration Module used with PublishNOW.
DETAILED DESCRIPTION
OF ON-LINE .CALENDAR
Fig. l0 illustrates one embodiment of a system 100 for managing the on-line calendar in accordance with the present invention, and shows the interconnections between the major elements.
Referring to Fig. 10, a central site or a plurality of distributed sites 1121, 112z,...112n, hosts a master calendar 114. The master calendar includes an event database 116 for storing all events which appear in the organization calendars. Each organization 1, 2,...n has a section of the event database 116. Each organization has "public" events and "private" events. Public events are stored as public entries in the event database 116, and private events are stored as private entries in the event database 116. A public event can be viewed by anyone accessing a web site associated with the master calendar entity. A private event is posted only to a particular organization's calendar. Passwords and other appropriate security measures may be used to ensure that content is received only from the preauthorized providers 117. Users access the organization calendars in one of two ways. The user may access the web site of the master calendar entity through a user computer 118 and an ISP 120. Alternatively, the user may directly access the web site of the organization via the user computer 118 and view the organization's calendar through its web site 112 which either mirrors or links to the master calendar entity.
The on-line calendar described below is preferably built using Microsoft Active Server Pages (ASP) and Component Object Model (COM) objects for fast response and design flexibility. ASP allows for good integration with the web server and system stability. COM objects make the system more efficient. Since a COM object is an actual compiled program (as opposed to a script that is processed) and is bound to the web server, the COM object becomes a natural extension of the server. Since a COM object is compiled, it runs faster and more efficiently.
The on-line calendar is preferably hosted on a Windows NT Server running Microsoft's IIS4 web server software, and the database is preferably stored in a Microsoft SQL Server.
Fig. 11 shows the database structure, including the objects, used for the on-line calendar.
Figs. 12-22 show sample screen shots for one preferred embodiment of the present invention in the form of a web content management product called "CalendarNow,"
marketed by Regional Network Communications, Inc. (RNCi), Bethlehem, PA. The screen shots illustrate exactly how a user interacts with the product, and thus are self-explanatory.
CALENDAR DISPLAY
The calendar display object is built using date routines that will fill-in the events for a particular month, defaulting to the current month. In addition to selecting a day in the month, the object has next and prior buttons that will scroll through the months of the year.
An automatic resizing feature is built into the calendar object. This allows the calendar to fluctuate in size based on the data that surrounds it. Both the graphics and the text are resized proportionally, the graphics in steps of one pixel and the text in steps if one font size.
T strut (placeholder) is built in some cases to equalize both.
Fig. 12 is an example of a Calendar Display, and Fig. 13 is an example of a Calendar Detail. Hypertext links are underlined.
CALENDAR SEARCH
The calendar search is full-featured with several ways in which to view events. First, events are selected by the time period the user defines:
Today By Month By day of the month By a range of days Second, the events are further defined by the following parameters if someone selects specific values from their drop-down list boxes.
location (venue) organization or department keyword type of event (category) PUBLIC VS. PRIVATE EVENTS
This application allows for events to be designated as "Open to the Public" or "Private to your Organization". In general, when an event is defined as public, it will display on a calendar page that can be viewed by anyone using a browser. In general, when the event is marked as private, it will only view on the organization's Intranet calendar page. This eliminates the need for dual entry of an event. An example of a private event is a departmental staff meeting, while a public event might be a charitable event held by the organization.
Fig. 14 shows SQL used in a Public Calendar Display and a Public Event Detail.
HYPERTEXT LINKS
The event detail generates several hypertext links, thereby allowing the user to gain additional information directly from the calendar page. Links are generated for the organization's web site and the online ticket house. The location name is linked out to mapping software. Email links are provided for ease of communications between a person viewing event information and the person who generated the event in the calendar.
MASTER EVENTS, SUBEVENTS, AND STAND-ALONE
Events are classified into 3 types. A Master Event is the uppermost level of an event hierarchy. All events that are posted under the Master Event are setup as Subevents and are grouped together by date in the calendar display. A stand-alone event does not have a master event and is a unique event in and of itself.
At the end of setting up a Master Event in the "Add Wizard" the application immediately returns to the beginning of the wizard in preparation for the entry of the first subevent. All entry fields are preset to the values from the Master Event for ease of use.
Fig. 15 shows a display screen adding an event for the Ominus Systems company calendar.
EVENT SCHEDULING
The application provides several ways for the event to be scheduled. An event can be non-repeating and have one end date. For a repeating event, options include _ daily, weekly, every 2, 3, or 4 weeks, monthly, every 2, 3;
or 6 months (which covers quarterly) and yearly. Based on the start date provided, the day of the week and the week of the month is calculated so an event can be scheduled once a month on that specific day.
Each repeat of the application can have a duration. An example of this would be a group meeting that runs for 2 days each quarter. Finally, the end date defines when the calculated repetitions should stop. The application allows for up to 3 years in the future. When an event is inserted into the database, the program generates a record for each occurrence. In this way the calendar displays the event correctly on any day or month entered in the search criteria.
Fig. 16 shows a display screen used for adding master event scheduling details to the Ominus Systems calendar.
MULTI-CALENDAR.
Flexibility has been built into the application so the event can be shown on several different calendars.
Should a particular site accommodate more than one calendar, the person setting up the event can designate what calendars the event will show on. The calendars are preset in a database table and display on the page with checkboxes.
More than one calendar can be selected.
When the event is inserted into the selected databases, the controlling database maintains records of the other calendar locations. If the event must be updated or deleted, the controlling database makes calls to the other calendars to apply the changes there as well.
Fig. 17 shows a display screen for adding an event to plural calendars.
SECURITY LEVELS
Content-level security is provided to assure accurate entry of events. Each calendar has an Administrator account. This account has the capability to add, update, and delete all components of the database. All other levels in the security hierarchy are setup to either approve events or enter events. There are no system limits to the number of security levels an organization can setup.
Fig. 18 shows a security level hierarchy chart.
Fig. 19 shows a screen display which provides a listing for the Administrator of all the accounts setup in the database. The administrator can see what departments have been setup and who is designated as an Administrator and a User.
Fig. 20 shows a screen display used for updating an account. Each account can be viewed individually. This is where the Administrator designates an individual as having approval security.
Fig. 21 shows a screen display used for processing yV0 00/20945 PCT/US99/Z3116 pending events. An event submitted by a non-Approval user is held pending review by an Administrator. The department approval account is sent an email notification that an event is pending approval. Upon review of the event information, the approver can add or delete the event. Adding an event will cause the event to display on the designated calendars.
CALENDAR HELP
The following text provides an example of "HELP"
text for the CalendarNOW product hosted by RegionOnline, in accordance with the first embodiment of the present invention, as shown in the display screens above (Figs. 12-22) and discussed above. The HELP text further explains the operation o_f the present invention from the user's standpoint, and thereby further explains the programming attributes of the present invention.
[BEGIN HELP TEXT]
1. Navigating through the calendar (generally) It's~very easy to move from one day to another in the calendar. Simply click on a day of the month in the main calendar display and you'll see a list of all events happening on that day. Events are always displayed to the right of the main calendar display and they are grouped by category. You can also click on Last and Next, which appear to the left and right of the month respectively, to change the month you are viewing.
To view the details for any event, simply click on the event name. This will present you with information about the event such as its dates and time, feature, organization, location, description, admission fee and contact information.
Wfl 00/20945 PCT/US99/23116 2. Searching the calendar (generally) In addition to browsing the calendar by day of the month, it's possible to search for specific events. This is done via the search form located beneath the main calendar display. A search will always begin on the current day that you are viewing and extends for a specified number of days.
The default search length is 7 days, but the viewer can change that number to as many days as desired, up to 99 days. The search can be further defined by specifying exactly what feature, organization and location should be searched. The default search will encompass all categories, organizations and locations, but you can be as specific as you would like by pulling down on any of the three menus.
Finally, a search may be specified by typing a keyword in the keyword entry field. Once you've defined your search, click the SEARCH button to view your results. If there are too many results, try to narrow your search criteria. If there are too few results, try broadening the search criteria.
3. Adding your events to the calendar (generally) To add an event to the calendar, click on the EVENT SETUP button on the main calendar display. This will present a login page that gives access to the calendar administration module. If no login is available, the page will explain how to contact the calendar administrator for the creation of an account.
4. Detailed HELP text Introduction Welcome to the administrative center of the calendar. Using a series of simple and intuitive forms, you'll be able to post and maintain events for your calendar. Since your calendar is part of the main RegionOnline system, events you add can also be seen by all of RegionOnline's users. Of course, you can always specify events as private so only individuals viewing your calendar will see them. You'll notice that the HELP button on each page links to a specific section in this document. If you are ever unfamiliar with a function or have a question about what to so. Simply click on HELP for the answers you need.
Logging in The interactive calendar system requires that all individuals and organization who wish to add events be authorized to do so. Once you've been authorized, a login will be created and you will be given a logon ID and password. This login is specific to you and your organization. Please do not give this information to anyone else who wishes to post events to the calendar. If you do not have a logon ID and password or you have forgotten your login information, please contact the Calendar Administrator. After you've entered your logon ID and password, click the LOGIN button to access the calendar administration system.
Account maintenance Updating your login information You may update your login information at any time.
This allows you to change your name and e-mail address as they appear in the calendar. In addition, you may change your password. To change your password, simply type your old password, your new password and then confirm your new password by typing it again. When finished, click the UPDATE
button to commit login information changes to the system.
NOTE: You cannot change your login ID or organization.
Adding accounts Calendar users who've been granted administrative access can create accounts, thus allowing new users to add their events to the calendar. In order to create a new account, you must specify the following: the user's full _ name, logon id, password, e-mail address and organization.
In addition, you must also specify whether the user should be granted administrative privileges. Users who only need to add events for their organization should not be granted administrative privileges. If, however, the user is going to add events and create accounts for individuals in her or his organization, administrative privileges should be granted. When finished, click the ADD button to create the new account.
NOTE: Duplicate logon IDs are not allowed, if you inadvertently add an account with a logon ID that is already in use, you'll receive a warning message. Simply change the login ID to something unique and resubmit the account. Also, if you would like to create an account for someone and their organization is not listed, you must first create the organization with the "Add an organization" feature of the calendar administration system. (See Fig. 22 for a screen display which performs this function.) Updating accounts Calendar users who've been granted administrative access can update existing accounts. You must first select the login ID you wish to update and click the GO GET IT!
button. The user's account will then be displayed. You can modify the user's e-mail address, active flag, administrative privilege and organization. By setting the account's active flag to N, the user will no longer be allowed to logon. Conversely, an active flag of Y gives the user the ability to logon to the calendar system. Users who only need to add events for their organization should not be granted administrative privileges. If, however, the user is going to add events and create accounts for individuals in her or his organization, administrative privileges should be granted. After making the desired changes to the account, click the UPDATE button to commit the changes. Optionally, 'you can select another calendar user's login ID and click the GO GET IT! button to make other changes.
NOTE: You cannot modify a user's login ID or name. The user can update their name by logging in and using the "Update your Login Information" feature of the calendar administration system. Also, if you would like to change the user's organization and their new organization is not listed, you must first create the organization with the "Add an Organization" feature of the calendar administration system. (See Fig. 22.) Listing accounts Calendar users who've been granted administrative access can list existing accounts. This list is sorted by organization and allows the administrator to view both administrative and general user logon IDs. In addition, full names and activity flags are displayed. An activity flag of Y means the user has the ability to logon to the calendar system and an activity flag of N means the user cannot logon to the calendar system. By clicking on any user ID, you can modify the account. This function is identical to the update an Account feature of the calendar administration system.
Event maintenance Adding events Events can be added to the calendar system from one form. The first section of the form defines the event name and when the event will occur. Both the event name and starting date must be provided. The ending date, starting _ time and ending time, however, are optional. By default, all events are considered to be one time only. They occur once and do not reoccur. However, the calendar system supports reoccurring events and you can specify an event entry as occurring daily, weekly, monthly by day, monthly by date, quarterly by day, quarterly by date, yearly by day or yearly by date. By providing the date on which the event last occurred, the calendar system can accurately calculate when the next and future occurrences will take place.
The second section of the form is used to provide detailed information about the event itself. You must specify the feature with which the event is associated and the location where the event will occur. If an appropriate feature or location is not available, you can take advantage of the calendar's "Add a Feature" and "Add a Location"
administrative functions respectively. In addition to the feature and location, you must also specify a contact name, phone number and event description. Optionally, you can specify additional location information for the event.
By default, all events are open to the public.
However, some events may be for individuals in your organization only. In such cases, you can designate their calendar entries as private to your organization. This setting will ensure that the event is posted only to your organization's calendar and not on the main RegionOnline calendar of events, which your calendar is section of.
When events are added, you have the option to associate them with an event series. An event series is a way to group similar events such as a lecture series or football games. To associate an event with a series, simply select the appropriate series. If you are currently entering the first event in a series, keep the default (none) setting and the aeries will automatically be created with the specified event name. You should also keep the default (none) setting if you do not wish to associate the event with a series. While the system will treat the entry as if IT were the first in a series, you are not obligated to add additional events to IT. IT can exist as a stand-alone or single event not associated with any others.
Finally, events can be flagged as having admission charges. By default events are considered to be free of charge, but you can designate an event as having a fee by selecting Yes to the question "Is admission charged for the event?" Optionally, you can specify the Internet ticket order address (a valid URL for the web site where tickets are being offered or sold) and any pertinent admission information.
When you are finished adding the event's information, click the ADD button to continue. You will then be asked to verify the event information you just provided.
If you've designated the event to be part of an event series, the page will specify the name of the series under which it will be posted. If the event is the first of a series or it is not meant to be part of a series, the page will simply state 'This event is an Event Series. If any information in the page is incorrect, simply click the BACK
button on your browser to make necessary adjustments.
Otherwise, click the ADD button on the page to add the event to the database. Your event will not be added to the database until you verify the information and click the ADD
button.
NOTE: Events posted by administrative users will be posted to on the calendar immediately. Events posted by general users, however, require an administrator's approval. In such cases notification will be sent to the administrator, letting her or him know that a new event has been added and requires approval.
Updating events The first step to updating an event already posted to the calendar is selecting it by name. Highlight the event you wish to work with from the menu and click the GO
GET IT! button. The event's information should be displayed and you can begin the second step, which is updating the actual entry.
Events updated are done from one form. The first section of the form defines the event name and when the event will occur. The event name, starting date and ending date must be provided. The staffing and ending times, however, are optional. By default, all events are considered to be one time only. They occur once and do not occur again.
However, the calendar system supports reoccurring events and you can specify an event entry as occurring daily, weekly, monthly by day, monthly by date, quarterly by day, quarterly by date, yearly by day or yearly by date. By providing the date on which the event last occurred, the calendar system can accurately calculate when the next and future occurrences will take place.
The second section of the form is used to provide detailed information about the event itself. You must specify the feature with which the event is associated and the location where the event will occur. If an appropriate feature or location is not available, you can take advantage of the calendar's "Add a Feature" and "Add a Location"
administrative functions respectively. In addition to the feature and location, you must also specify a contact name, phone number and event description. Optionally, you can specify additional location information for the event.
By default, all events are open to the public.
However, some events may be for individuals in your organization only. In such cases, you can designate their calendar entries as private to your organization. This setting will ensure that the event is posted only to your organization's calendar and not on the main RegionOnline calendar of events, which your calendar is section of.
When events are added, you have the option to associate them with an event series. An event series is a way to group similar events such as a lecture series or football games. To associate an event with a series, simple select the appropriate series. If you are currently entering the first event in a series, keep the default (none) setting and the series will automatically be created with the specified event name. You should also keep the default (none) setting if you do not wish to associate the event with a series. While the system will treat the entry as if it were the first in a series, you are not obligated to add additional events to it. It can exist as a stand-alone or single event not associated with any others.
Finally, events can be flagged as having admission charges. By default events are considered to be free of charge, but you can designate an event as having a fee by selecting Yes to the question "Is admission charged for the event?" Optionally, you can specify the Internet ticket order address (a valid URL for the web site where tickets are being offered or sold) and any pertinent admission information.
When you are finished updating the event's information, click the ADD button to continue. You will then be asked to verify the event information you just provided.
If you've designated the event to be part of an event series, the page will specify the name of the series under which it will be posted. If the event is the first of a series or it is not meant to be part of a series, the page will simply state "This event is an Event Series." If any information in the page is incorrect, simply click the BACK
button on your browser to make necessary adjustments.
Otherwise, click the UPDATE button on the page to add the event to the database. Your event will not be updated in the database until you verify the information and click the UPDATE button.
Deleting events Removing an event from the calendar is a two-step process. First, you must select the event that you would like to delete from the list and click the GO GET IT!
button. The event's information is displayed, but the event has not been removed from the calendar yet. The second step is to confirm your deletion by clicking the DELETE button at the bottom of the page. This will remove the entry from the system and return you to the main calendar administration screen. If you do not want to delete the current record, you can optionally select another record to delete and click on the GO GET IT! button to continue the process.
Processing pending events Calendar administrators have the responsibility to approve calendar entries added by non-administrative users.
Once the user adds an entry, you will receive notice that an event is awaiting your approval. The entry will not be posted to the calendar until it is approved. Within the administration system, you'll be shown the pending events .and given the option to either ADD or DELETE them. If you wish to approve the pending event, click the ADD button. If you wish to deny the pending event, click the DELETE button.
Events that are added/approved to the system will be visible to all calendar users and denied events will be removed from the system. If there are more than one event pending approval, you will see the next pending entry after approving the first. This continues until there are no additional pending entries.
Organization maintenance Adding organizations Main calendar administrators can create new organizations. These are functional groupings within your organization with which users and events are associated. To add a new organization, you must provide the following information: organization name, contact name, street address, city, state, zip code and phone number. Optionally, you may also specify a fax number, Internet address (a valid URL for the organization's web site) and a brief description. After completing the form, click the ADD button to add the new organization to the calendar system.
Updating organizations Main calendar administrators can update existing organizations. You must first select the organization you wish to update and click the GO GET IT! button. The organization's information will then be displayed. An active flag of Y means the organization's events are to be displayed in the calendar and an active flag of N means the-organization's events are not shown. When updating the organization, the following information must be provided:
contact name, street address, city, state, zip code and phone number. Optionally, you may also specify a fax number, Internet address (a valid URL for the organization's web site) and a brief description for the organization. After updating the organization's information, click the UPDATE
button to commit the changes. Optionally, you can select another organization and click the GO GET IT! button to make other changes.
NOTE: You cannot change the organization name.
Location maintenance Adding locations Locations are the physical sites within your organization where events occur. An executive board room, theater or lecture hall are all examples of possible locations. Events are associated with locations to provide more specific directions to users who wish to attend. To add a new location, the following information must be provided:
location name, street address, city, state and phone number.
Optionally, you may also specify the Internet address (a valid URL for the location's web site) when creating a new location. Once you've defined the new location, click the ADD button.
NOTE: Once you've added a new location, anyone else from your organization can add events to it. This includes individuals from other organizations.
Updating locations All calendar users can update existing locations.
You must first select the location you wish to update and click the GO GET IT! button. The location's information will then be displayed. An active flag of Y means the location is available for calendar event entry and an active flag of N
means the location is not available. When updating the location, the following information must be provided:
location name, street address, city, state, zip code and phone number. Optionally, you may also specify an Internet address (a valid URL for the organization's web site) for the location. After updating the location's information, click the UPDATE button to commit the changes. Optionally, you can select another location and click the GO GET IT1 button to make other changes.
Feature maintenance Adding Features Main calendar administrators can create new categories. Categories are descriptive groupings with which all events are associated. For example, events could be categorized as Sports, Business or Entertainment. In order to create a new feature, you must first associate it with an existing Re~gionOnline feature. This is necessary because your calendar makes use of the main RegionOnline calendar system and your events can also appear on RegionOnline. You do not have to use the RegionOnline feature names -- you merely have to associate your organization's feature names to one of those already defined by RegionOnline. After you've selected the RegionOnline feature, click the GO GET
IT! button. You can then enter the feature name that you'd like to use on your calendar and click the ADD button.
Optionally, you can select another RegionOnline feature and click the GO GET IT! button to add other categories.
Deleting Features Main calendar administrators can delete categories. Because categories for your organization are related to RegionOnline categories, you must first specify the RegionOnline feature with which the feature to be deleted is associated. After selecting the RegionOnline feature and clicking the GO GET IT! button, you'll be presented with a Iist of categories defined by your organization. To delete a feature, simply click on it.
Optionally, you can select another RegionOnline feature and click the GO GET IT! button to delete other categories.
[END OF HELP TEXT]
It will be appreciated by those skilled in the art that changes could be made to the embodiments described above without departing from the broad inventive concept thereof. Lt is understood, therefore, that this invention is not limited to the particular embodiments disclosed, but it is intended to cover modifications within the spirit and scope of the present invention as defined by the appended claims.
What is claimed is:
Fig. 1 illustrates a content management database 10 organized in a category-type format. Note that in category 3, one of the contents is a pointer to a web site.
This taxonomic structure for content classification is capable of handling any and all systems of natural relationships. Therefore, the categorization system can be considered a model for the content body.
The present invention achieves the implementation of the functionality of such a structure with the use of object-oriented databases, relational databases, computer file systems, computer network protocols and the .
combinations or hybridization thereof.
INTERFACES THAT FACILITATE THE CREATION
'AND MAINTENANCE OF THE CATEGORIZATION
For the content managers, interfaces are devised for the creation and maintenance of such a taxonomic structure. As far as computer software is concerned, such interfaces can be designed in the form of application programming interfaces (API's), which allow the addition, deletion and setting the properties of categories, and which can be accessed with a programming or scripting language.
INTERFACES THAT ALLOW COLLECTION, MAINTENANCE AND DELIVERY OF CONTENT
For the content creators, managers and consumers, interfaces are designed for content collection, maintenance and retrieval.
END USER INTERFACES
The end user interfaces can be implemented desktop computer applications, web browser applications, or any other device that can take user selection and present the content.
STATICIZING MECHANISM
Although the content presentation is dynamic and in response to users' requests, the variations in the requests are limited and the same requests are often repeated. Staticizing provides content dynamics on an "as S needed" basis. The bottleneck for the speed of content delivery, as far as the server is concerned, is usually the database search and content processing. When the server receives a request, it is converted into a set of search criteria and a search is conducted by the database. The records found are processed and merged into a format, such as HTML, that is suitable for consumption. Two ways are used to speed this process:
1. Partial response caching. The requests are processed into unique identities and related to the final content units ready to be delivered. When the same request is received, no search and process is needed and the cached content is served out.
2. Full response caching. The fully assembled response, such as a front page of a web site, is cached so that majority of the processing time is saved.
SECURITY AND AUTHENTICATION
Security is implemented at all levels. Only authorized identity can access certain categories or functionality. The authorization can be based on organizational or corporate designation, or on financial transactions, e.g., payment received.
EXAMPLE IMPLEMENTATIONS
1. An Electronic Video Shop The video shop divides its content materials into categories such as Comic, Action, etc. A manager is assigned to a category. The present invention allows the category manager to retrieve video content materials from sources (content creators, such as Universal Studio) and place them under his or her category in a way that is described in the following pseudo-code:
Invention.DepositVideo(Category:=Action, Source:=US, SourceLocation:=name/Password@ftp.US.com://newRelease/ArnoldSchwart~eger1234 5, Description:=best Ever) The present invention builds interfaces for the end user to search for content in the content collection by various criteria. Upon the user selection, a device, or a program, will request the specific content to be sent to the user in a way that is described in the following pseudo-code:
Invention.DeliverVideo(title:=USnewAS12345, authenticated:=Yes, Mode:=HighResolution) Rig. 2 shows a sample system configuration for implementing the electronic video shop. The entered search may include one or more keywords, categories, or combinations of keywords and categories. In Fig. 2, a web browser 16 accepts a search input query which is routed by an ISP 18 to an interface 20 connected to the content management 'database 10 and the content database 14. A
search engine 22 uses the user's search input query to search the content database 14.
2. A Web Content Management System This system enables the collection of content from various sources, such as newspaper and magazine content systems, individually written articles, and the placement of content units on designated Web sites. It divides the content into levels of categories and assigns an owner to each category who has control over the content in his or her category. Multiple content creator, or writer, can be assigned to a category. The interfaces of the system facilitate the submission of content materials from various sources. For example, a desktop computer application is compiled to help a writer fill in the category name, user name, pass word, article header, etc. A visual what-you-see-is-what-you-get editing environment is incorporated in the application such that the writer needs not to know any more than ordinary composition. The communication protocols are built in the system such that the content can be transferred from the creator to a server and is processed and stored in appropriate databases or file structures. The manager of the category will then have the chance to examine the new content and decide whether is will be published. Once approved, the consumer can access the content in a presentation that is suitable for consumption on his or her device of choice, such as a computer program, a television set.
For efficient storage and retrieval for web distribution, textual content is stored in HTML (hypertext markup language) or XML (extensible markup language) and multimedia content in its native format.
Fig. 5 is a screen shot from a Web browser-based interface which illustrates the hierarchical structure as well as the functions implemented at each level of the web content management system.
Figs. 3A, 3B and 4 illustrate one embodiment of a web content management system in accordance with the present invention. Fig. 3A shows the interconnections between the major elements, Fig. 3B shows details of the content management database 10 used in Fig. 3A, and Fig. 4 shows sample end products as viewed at an end user interface, such as a browser. These figures illustrate how the present invention allows the contents of a single category to appeaf in a plurality of unrelated web sites 24 (labeled as 1-n), each of which may have completely different page layouts.
The same categories and their content may thus be automatically populated in multiple web sites. The "contributors" of Fig. 1 are equivalent to the content providers 12 of Fig. 3A.
Referring to Figs. 3A and 3B, a central site or a plurality of distributed sites includes a content database 14 for storing the content, and a content management database 10 for storing instructions regarding how the content is used and managed. A plurality of content providers 12 (labeled as A-Z) transmit content to locations in the content database 14. In one scheme, each content provider 12 is permitted to submit content to one or more preselected content numbers. There is a content number for each category item shown in Fig. 1. For example, content 1 may be item 1 of category 1; content 2 may be item 2 of category 1; content 3 may be item 1 of category 2, subcategory 1, and so on. Passwords and other appropriate security measures are used to ensure that content is received only from the predesignated provider. To facilitate illustration of the present invention, the content management database 10 is shown in Fig. 3B as an index of categories and the web site location at one or more web sites where the content (items) should appear.
The content provider 12 does not create the content management database 10. Instead, individual web site personnel and/or their authorized entities, set up and maintain the information in the content management database 10.
Referring to Figs. 3A, 3B and 4, consider the home page 26 of Site 1 which is arranged with five categories.
Categories 1, 3 and 4 each have two hypertext-linked items identified with a headline or teaser line (article header).
Category 2 has two hypertext-linked subcategories. Category 5 is a single graphic item. The headline of the items in contents 1, 3 and 4 appear in their respective locations of the Site 1 homepage. 26, and the full-text or full version of the items appear at the respective web site addresses shown in Fig. 3B. For example, the full version of item 2 of category 4 appears at-: sitel.com/category4/item2, as shown in Fig.
4.
Home page 28 of Site 2 is arranged with categories 1 and 2. The physical layout of category information may be different in sites 1 and 2, depending upon the formatting/layout of the sites and the number of different categories. Since category 2 has two subcategories, the home page lists the two subcategories as hypertext links.
Clicking on a subcategory link brings up a web page of subcategory items. Clicking on the items brings up the full versions of the item contents. Fig. 4 shows an example for viewing subcategory 1, item 1. Site 2 does not have categories 3-5.
In the example shown in Fig. 3B, site6.com (not shown in the figures) includes categories 3 and 5, but not categories 1, 2 and 5.
In the web page structure shown in Fig. 3B, the full version of content, as well as the clickable subcategory listings, are located on separate web pages and are not part of the front page web page. In an alternative web page structure, the full version of content appears on the same web page as the front page. For example, referring to Fig. 4, the item 2 full content may be located at the following address : sitel.com/frontpage?category=4&item=2 The alternative structure uses less pages and thus ,is more efficient, especially for a web site with a large number of branches.
As illustrated by this example, the same categories, (and thus, the same content items), may be automatically populated in a plurality of different web sites. In this example, when submitting the content, the content provider 12 must indicate which portion of the content is the headline and which portion is the full version. A summary of the content may also be provided if the web sites have separate locations or pages for content summaries. If the content of a category is subsequently changed and the change is approved by the site manager, the new content replaces the old content in each of the respective web sites.
As discussed above, a manager or administrator is assigned to each category for examining newly submitted content and deciding if it should be published.
The present invention may be used to create electronic newspapers for a plurality of web sites. Thus, a news article, sports article or weather report may simultaneously become the content of a local school newspaper, a regional newspaper, and a national newspaper.
In the newspaper example, the content provider 12 may be a reporter, writer, photographer, subscriber (e.g., for letters to the editor or a feedback section), or even a newswire service such as the Associated Press. Of course, the electronic newspaper is only one example of an application for the present invention and is not meant to limit the scope of the invention.
Figs. 6A-9R show sample screen shots for one commercialized implementation of the present invention in the form of a web content management product called "PublishNow," marketed by Regional Network Communications, Inc. (RNCi), Bethlehem, PA. PublishNow works in conjunction with other two products, "WriteNOW" and "CalendarNOW," also marketed by RNCi. WriteNOW is a web content entry tool for use with PublishNOW. WriteNOW uses Microsoft Word. The screen shots illustrate exactly how a user interacts with the product, and thus are self-explanatory. Some additional explanation of selected figures is provided below.
Figs. 6A-6H show the article submission process using a browser-based version of WriteNOW.
Figs. 7A-7C show the article submission process using a non-browser version of WriteNOW software (ver.
2.25) .
Figs. 8A-8Q show PublishNOW user interface screens. The "Site" Functions (Place Departments, Upload Template) are performed by the Site Administration Module, shown in Figs.
9A-9R.
Figs. 9A-9R show user interface screens for the Site Administration Module used with PublishNOW.
DETAILED DESCRIPTION
OF ON-LINE .CALENDAR
Fig. l0 illustrates one embodiment of a system 100 for managing the on-line calendar in accordance with the present invention, and shows the interconnections between the major elements.
Referring to Fig. 10, a central site or a plurality of distributed sites 1121, 112z,...112n, hosts a master calendar 114. The master calendar includes an event database 116 for storing all events which appear in the organization calendars. Each organization 1, 2,...n has a section of the event database 116. Each organization has "public" events and "private" events. Public events are stored as public entries in the event database 116, and private events are stored as private entries in the event database 116. A public event can be viewed by anyone accessing a web site associated with the master calendar entity. A private event is posted only to a particular organization's calendar. Passwords and other appropriate security measures may be used to ensure that content is received only from the preauthorized providers 117. Users access the organization calendars in one of two ways. The user may access the web site of the master calendar entity through a user computer 118 and an ISP 120. Alternatively, the user may directly access the web site of the organization via the user computer 118 and view the organization's calendar through its web site 112 which either mirrors or links to the master calendar entity.
The on-line calendar described below is preferably built using Microsoft Active Server Pages (ASP) and Component Object Model (COM) objects for fast response and design flexibility. ASP allows for good integration with the web server and system stability. COM objects make the system more efficient. Since a COM object is an actual compiled program (as opposed to a script that is processed) and is bound to the web server, the COM object becomes a natural extension of the server. Since a COM object is compiled, it runs faster and more efficiently.
The on-line calendar is preferably hosted on a Windows NT Server running Microsoft's IIS4 web server software, and the database is preferably stored in a Microsoft SQL Server.
Fig. 11 shows the database structure, including the objects, used for the on-line calendar.
Figs. 12-22 show sample screen shots for one preferred embodiment of the present invention in the form of a web content management product called "CalendarNow,"
marketed by Regional Network Communications, Inc. (RNCi), Bethlehem, PA. The screen shots illustrate exactly how a user interacts with the product, and thus are self-explanatory.
CALENDAR DISPLAY
The calendar display object is built using date routines that will fill-in the events for a particular month, defaulting to the current month. In addition to selecting a day in the month, the object has next and prior buttons that will scroll through the months of the year.
An automatic resizing feature is built into the calendar object. This allows the calendar to fluctuate in size based on the data that surrounds it. Both the graphics and the text are resized proportionally, the graphics in steps of one pixel and the text in steps if one font size.
T strut (placeholder) is built in some cases to equalize both.
Fig. 12 is an example of a Calendar Display, and Fig. 13 is an example of a Calendar Detail. Hypertext links are underlined.
CALENDAR SEARCH
The calendar search is full-featured with several ways in which to view events. First, events are selected by the time period the user defines:
Today By Month By day of the month By a range of days Second, the events are further defined by the following parameters if someone selects specific values from their drop-down list boxes.
location (venue) organization or department keyword type of event (category) PUBLIC VS. PRIVATE EVENTS
This application allows for events to be designated as "Open to the Public" or "Private to your Organization". In general, when an event is defined as public, it will display on a calendar page that can be viewed by anyone using a browser. In general, when the event is marked as private, it will only view on the organization's Intranet calendar page. This eliminates the need for dual entry of an event. An example of a private event is a departmental staff meeting, while a public event might be a charitable event held by the organization.
Fig. 14 shows SQL used in a Public Calendar Display and a Public Event Detail.
HYPERTEXT LINKS
The event detail generates several hypertext links, thereby allowing the user to gain additional information directly from the calendar page. Links are generated for the organization's web site and the online ticket house. The location name is linked out to mapping software. Email links are provided for ease of communications between a person viewing event information and the person who generated the event in the calendar.
MASTER EVENTS, SUBEVENTS, AND STAND-ALONE
Events are classified into 3 types. A Master Event is the uppermost level of an event hierarchy. All events that are posted under the Master Event are setup as Subevents and are grouped together by date in the calendar display. A stand-alone event does not have a master event and is a unique event in and of itself.
At the end of setting up a Master Event in the "Add Wizard" the application immediately returns to the beginning of the wizard in preparation for the entry of the first subevent. All entry fields are preset to the values from the Master Event for ease of use.
Fig. 15 shows a display screen adding an event for the Ominus Systems company calendar.
EVENT SCHEDULING
The application provides several ways for the event to be scheduled. An event can be non-repeating and have one end date. For a repeating event, options include _ daily, weekly, every 2, 3, or 4 weeks, monthly, every 2, 3;
or 6 months (which covers quarterly) and yearly. Based on the start date provided, the day of the week and the week of the month is calculated so an event can be scheduled once a month on that specific day.
Each repeat of the application can have a duration. An example of this would be a group meeting that runs for 2 days each quarter. Finally, the end date defines when the calculated repetitions should stop. The application allows for up to 3 years in the future. When an event is inserted into the database, the program generates a record for each occurrence. In this way the calendar displays the event correctly on any day or month entered in the search criteria.
Fig. 16 shows a display screen used for adding master event scheduling details to the Ominus Systems calendar.
MULTI-CALENDAR.
Flexibility has been built into the application so the event can be shown on several different calendars.
Should a particular site accommodate more than one calendar, the person setting up the event can designate what calendars the event will show on. The calendars are preset in a database table and display on the page with checkboxes.
More than one calendar can be selected.
When the event is inserted into the selected databases, the controlling database maintains records of the other calendar locations. If the event must be updated or deleted, the controlling database makes calls to the other calendars to apply the changes there as well.
Fig. 17 shows a display screen for adding an event to plural calendars.
SECURITY LEVELS
Content-level security is provided to assure accurate entry of events. Each calendar has an Administrator account. This account has the capability to add, update, and delete all components of the database. All other levels in the security hierarchy are setup to either approve events or enter events. There are no system limits to the number of security levels an organization can setup.
Fig. 18 shows a security level hierarchy chart.
Fig. 19 shows a screen display which provides a listing for the Administrator of all the accounts setup in the database. The administrator can see what departments have been setup and who is designated as an Administrator and a User.
Fig. 20 shows a screen display used for updating an account. Each account can be viewed individually. This is where the Administrator designates an individual as having approval security.
Fig. 21 shows a screen display used for processing yV0 00/20945 PCT/US99/Z3116 pending events. An event submitted by a non-Approval user is held pending review by an Administrator. The department approval account is sent an email notification that an event is pending approval. Upon review of the event information, the approver can add or delete the event. Adding an event will cause the event to display on the designated calendars.
CALENDAR HELP
The following text provides an example of "HELP"
text for the CalendarNOW product hosted by RegionOnline, in accordance with the first embodiment of the present invention, as shown in the display screens above (Figs. 12-22) and discussed above. The HELP text further explains the operation o_f the present invention from the user's standpoint, and thereby further explains the programming attributes of the present invention.
[BEGIN HELP TEXT]
1. Navigating through the calendar (generally) It's~very easy to move from one day to another in the calendar. Simply click on a day of the month in the main calendar display and you'll see a list of all events happening on that day. Events are always displayed to the right of the main calendar display and they are grouped by category. You can also click on Last and Next, which appear to the left and right of the month respectively, to change the month you are viewing.
To view the details for any event, simply click on the event name. This will present you with information about the event such as its dates and time, feature, organization, location, description, admission fee and contact information.
Wfl 00/20945 PCT/US99/23116 2. Searching the calendar (generally) In addition to browsing the calendar by day of the month, it's possible to search for specific events. This is done via the search form located beneath the main calendar display. A search will always begin on the current day that you are viewing and extends for a specified number of days.
The default search length is 7 days, but the viewer can change that number to as many days as desired, up to 99 days. The search can be further defined by specifying exactly what feature, organization and location should be searched. The default search will encompass all categories, organizations and locations, but you can be as specific as you would like by pulling down on any of the three menus.
Finally, a search may be specified by typing a keyword in the keyword entry field. Once you've defined your search, click the SEARCH button to view your results. If there are too many results, try to narrow your search criteria. If there are too few results, try broadening the search criteria.
3. Adding your events to the calendar (generally) To add an event to the calendar, click on the EVENT SETUP button on the main calendar display. This will present a login page that gives access to the calendar administration module. If no login is available, the page will explain how to contact the calendar administrator for the creation of an account.
4. Detailed HELP text Introduction Welcome to the administrative center of the calendar. Using a series of simple and intuitive forms, you'll be able to post and maintain events for your calendar. Since your calendar is part of the main RegionOnline system, events you add can also be seen by all of RegionOnline's users. Of course, you can always specify events as private so only individuals viewing your calendar will see them. You'll notice that the HELP button on each page links to a specific section in this document. If you are ever unfamiliar with a function or have a question about what to so. Simply click on HELP for the answers you need.
Logging in The interactive calendar system requires that all individuals and organization who wish to add events be authorized to do so. Once you've been authorized, a login will be created and you will be given a logon ID and password. This login is specific to you and your organization. Please do not give this information to anyone else who wishes to post events to the calendar. If you do not have a logon ID and password or you have forgotten your login information, please contact the Calendar Administrator. After you've entered your logon ID and password, click the LOGIN button to access the calendar administration system.
Account maintenance Updating your login information You may update your login information at any time.
This allows you to change your name and e-mail address as they appear in the calendar. In addition, you may change your password. To change your password, simply type your old password, your new password and then confirm your new password by typing it again. When finished, click the UPDATE
button to commit login information changes to the system.
NOTE: You cannot change your login ID or organization.
Adding accounts Calendar users who've been granted administrative access can create accounts, thus allowing new users to add their events to the calendar. In order to create a new account, you must specify the following: the user's full _ name, logon id, password, e-mail address and organization.
In addition, you must also specify whether the user should be granted administrative privileges. Users who only need to add events for their organization should not be granted administrative privileges. If, however, the user is going to add events and create accounts for individuals in her or his organization, administrative privileges should be granted. When finished, click the ADD button to create the new account.
NOTE: Duplicate logon IDs are not allowed, if you inadvertently add an account with a logon ID that is already in use, you'll receive a warning message. Simply change the login ID to something unique and resubmit the account. Also, if you would like to create an account for someone and their organization is not listed, you must first create the organization with the "Add an organization" feature of the calendar administration system. (See Fig. 22 for a screen display which performs this function.) Updating accounts Calendar users who've been granted administrative access can update existing accounts. You must first select the login ID you wish to update and click the GO GET IT!
button. The user's account will then be displayed. You can modify the user's e-mail address, active flag, administrative privilege and organization. By setting the account's active flag to N, the user will no longer be allowed to logon. Conversely, an active flag of Y gives the user the ability to logon to the calendar system. Users who only need to add events for their organization should not be granted administrative privileges. If, however, the user is going to add events and create accounts for individuals in her or his organization, administrative privileges should be granted. After making the desired changes to the account, click the UPDATE button to commit the changes. Optionally, 'you can select another calendar user's login ID and click the GO GET IT! button to make other changes.
NOTE: You cannot modify a user's login ID or name. The user can update their name by logging in and using the "Update your Login Information" feature of the calendar administration system. Also, if you would like to change the user's organization and their new organization is not listed, you must first create the organization with the "Add an Organization" feature of the calendar administration system. (See Fig. 22.) Listing accounts Calendar users who've been granted administrative access can list existing accounts. This list is sorted by organization and allows the administrator to view both administrative and general user logon IDs. In addition, full names and activity flags are displayed. An activity flag of Y means the user has the ability to logon to the calendar system and an activity flag of N means the user cannot logon to the calendar system. By clicking on any user ID, you can modify the account. This function is identical to the update an Account feature of the calendar administration system.
Event maintenance Adding events Events can be added to the calendar system from one form. The first section of the form defines the event name and when the event will occur. Both the event name and starting date must be provided. The ending date, starting _ time and ending time, however, are optional. By default, all events are considered to be one time only. They occur once and do not reoccur. However, the calendar system supports reoccurring events and you can specify an event entry as occurring daily, weekly, monthly by day, monthly by date, quarterly by day, quarterly by date, yearly by day or yearly by date. By providing the date on which the event last occurred, the calendar system can accurately calculate when the next and future occurrences will take place.
The second section of the form is used to provide detailed information about the event itself. You must specify the feature with which the event is associated and the location where the event will occur. If an appropriate feature or location is not available, you can take advantage of the calendar's "Add a Feature" and "Add a Location"
administrative functions respectively. In addition to the feature and location, you must also specify a contact name, phone number and event description. Optionally, you can specify additional location information for the event.
By default, all events are open to the public.
However, some events may be for individuals in your organization only. In such cases, you can designate their calendar entries as private to your organization. This setting will ensure that the event is posted only to your organization's calendar and not on the main RegionOnline calendar of events, which your calendar is section of.
When events are added, you have the option to associate them with an event series. An event series is a way to group similar events such as a lecture series or football games. To associate an event with a series, simply select the appropriate series. If you are currently entering the first event in a series, keep the default (none) setting and the aeries will automatically be created with the specified event name. You should also keep the default (none) setting if you do not wish to associate the event with a series. While the system will treat the entry as if IT were the first in a series, you are not obligated to add additional events to IT. IT can exist as a stand-alone or single event not associated with any others.
Finally, events can be flagged as having admission charges. By default events are considered to be free of charge, but you can designate an event as having a fee by selecting Yes to the question "Is admission charged for the event?" Optionally, you can specify the Internet ticket order address (a valid URL for the web site where tickets are being offered or sold) and any pertinent admission information.
When you are finished adding the event's information, click the ADD button to continue. You will then be asked to verify the event information you just provided.
If you've designated the event to be part of an event series, the page will specify the name of the series under which it will be posted. If the event is the first of a series or it is not meant to be part of a series, the page will simply state 'This event is an Event Series. If any information in the page is incorrect, simply click the BACK
button on your browser to make necessary adjustments.
Otherwise, click the ADD button on the page to add the event to the database. Your event will not be added to the database until you verify the information and click the ADD
button.
NOTE: Events posted by administrative users will be posted to on the calendar immediately. Events posted by general users, however, require an administrator's approval. In such cases notification will be sent to the administrator, letting her or him know that a new event has been added and requires approval.
Updating events The first step to updating an event already posted to the calendar is selecting it by name. Highlight the event you wish to work with from the menu and click the GO
GET IT! button. The event's information should be displayed and you can begin the second step, which is updating the actual entry.
Events updated are done from one form. The first section of the form defines the event name and when the event will occur. The event name, starting date and ending date must be provided. The staffing and ending times, however, are optional. By default, all events are considered to be one time only. They occur once and do not occur again.
However, the calendar system supports reoccurring events and you can specify an event entry as occurring daily, weekly, monthly by day, monthly by date, quarterly by day, quarterly by date, yearly by day or yearly by date. By providing the date on which the event last occurred, the calendar system can accurately calculate when the next and future occurrences will take place.
The second section of the form is used to provide detailed information about the event itself. You must specify the feature with which the event is associated and the location where the event will occur. If an appropriate feature or location is not available, you can take advantage of the calendar's "Add a Feature" and "Add a Location"
administrative functions respectively. In addition to the feature and location, you must also specify a contact name, phone number and event description. Optionally, you can specify additional location information for the event.
By default, all events are open to the public.
However, some events may be for individuals in your organization only. In such cases, you can designate their calendar entries as private to your organization. This setting will ensure that the event is posted only to your organization's calendar and not on the main RegionOnline calendar of events, which your calendar is section of.
When events are added, you have the option to associate them with an event series. An event series is a way to group similar events such as a lecture series or football games. To associate an event with a series, simple select the appropriate series. If you are currently entering the first event in a series, keep the default (none) setting and the series will automatically be created with the specified event name. You should also keep the default (none) setting if you do not wish to associate the event with a series. While the system will treat the entry as if it were the first in a series, you are not obligated to add additional events to it. It can exist as a stand-alone or single event not associated with any others.
Finally, events can be flagged as having admission charges. By default events are considered to be free of charge, but you can designate an event as having a fee by selecting Yes to the question "Is admission charged for the event?" Optionally, you can specify the Internet ticket order address (a valid URL for the web site where tickets are being offered or sold) and any pertinent admission information.
When you are finished updating the event's information, click the ADD button to continue. You will then be asked to verify the event information you just provided.
If you've designated the event to be part of an event series, the page will specify the name of the series under which it will be posted. If the event is the first of a series or it is not meant to be part of a series, the page will simply state "This event is an Event Series." If any information in the page is incorrect, simply click the BACK
button on your browser to make necessary adjustments.
Otherwise, click the UPDATE button on the page to add the event to the database. Your event will not be updated in the database until you verify the information and click the UPDATE button.
Deleting events Removing an event from the calendar is a two-step process. First, you must select the event that you would like to delete from the list and click the GO GET IT!
button. The event's information is displayed, but the event has not been removed from the calendar yet. The second step is to confirm your deletion by clicking the DELETE button at the bottom of the page. This will remove the entry from the system and return you to the main calendar administration screen. If you do not want to delete the current record, you can optionally select another record to delete and click on the GO GET IT! button to continue the process.
Processing pending events Calendar administrators have the responsibility to approve calendar entries added by non-administrative users.
Once the user adds an entry, you will receive notice that an event is awaiting your approval. The entry will not be posted to the calendar until it is approved. Within the administration system, you'll be shown the pending events .and given the option to either ADD or DELETE them. If you wish to approve the pending event, click the ADD button. If you wish to deny the pending event, click the DELETE button.
Events that are added/approved to the system will be visible to all calendar users and denied events will be removed from the system. If there are more than one event pending approval, you will see the next pending entry after approving the first. This continues until there are no additional pending entries.
Organization maintenance Adding organizations Main calendar administrators can create new organizations. These are functional groupings within your organization with which users and events are associated. To add a new organization, you must provide the following information: organization name, contact name, street address, city, state, zip code and phone number. Optionally, you may also specify a fax number, Internet address (a valid URL for the organization's web site) and a brief description. After completing the form, click the ADD button to add the new organization to the calendar system.
Updating organizations Main calendar administrators can update existing organizations. You must first select the organization you wish to update and click the GO GET IT! button. The organization's information will then be displayed. An active flag of Y means the organization's events are to be displayed in the calendar and an active flag of N means the-organization's events are not shown. When updating the organization, the following information must be provided:
contact name, street address, city, state, zip code and phone number. Optionally, you may also specify a fax number, Internet address (a valid URL for the organization's web site) and a brief description for the organization. After updating the organization's information, click the UPDATE
button to commit the changes. Optionally, you can select another organization and click the GO GET IT! button to make other changes.
NOTE: You cannot change the organization name.
Location maintenance Adding locations Locations are the physical sites within your organization where events occur. An executive board room, theater or lecture hall are all examples of possible locations. Events are associated with locations to provide more specific directions to users who wish to attend. To add a new location, the following information must be provided:
location name, street address, city, state and phone number.
Optionally, you may also specify the Internet address (a valid URL for the location's web site) when creating a new location. Once you've defined the new location, click the ADD button.
NOTE: Once you've added a new location, anyone else from your organization can add events to it. This includes individuals from other organizations.
Updating locations All calendar users can update existing locations.
You must first select the location you wish to update and click the GO GET IT! button. The location's information will then be displayed. An active flag of Y means the location is available for calendar event entry and an active flag of N
means the location is not available. When updating the location, the following information must be provided:
location name, street address, city, state, zip code and phone number. Optionally, you may also specify an Internet address (a valid URL for the organization's web site) for the location. After updating the location's information, click the UPDATE button to commit the changes. Optionally, you can select another location and click the GO GET IT1 button to make other changes.
Feature maintenance Adding Features Main calendar administrators can create new categories. Categories are descriptive groupings with which all events are associated. For example, events could be categorized as Sports, Business or Entertainment. In order to create a new feature, you must first associate it with an existing Re~gionOnline feature. This is necessary because your calendar makes use of the main RegionOnline calendar system and your events can also appear on RegionOnline. You do not have to use the RegionOnline feature names -- you merely have to associate your organization's feature names to one of those already defined by RegionOnline. After you've selected the RegionOnline feature, click the GO GET
IT! button. You can then enter the feature name that you'd like to use on your calendar and click the ADD button.
Optionally, you can select another RegionOnline feature and click the GO GET IT! button to add other categories.
Deleting Features Main calendar administrators can delete categories. Because categories for your organization are related to RegionOnline categories, you must first specify the RegionOnline feature with which the feature to be deleted is associated. After selecting the RegionOnline feature and clicking the GO GET IT! button, you'll be presented with a Iist of categories defined by your organization. To delete a feature, simply click on it.
Optionally, you can select another RegionOnline feature and click the GO GET IT! button to delete other categories.
[END OF HELP TEXT]
It will be appreciated by those skilled in the art that changes could be made to the embodiments described above without departing from the broad inventive concept thereof. Lt is understood, therefore, that this invention is not limited to the particular embodiments disclosed, but it is intended to cover modifications within the spirit and scope of the present invention as defined by the appended claims.
What is claimed is:
Claims (19)
1. An automated, computer-implemented content management system for publishing content to a plurality of electronically accessible sites, each site including at least one predesignated page layout having one or more content categories within the page layout, the system comprising:
(a) a content database which stores a plurality of content entry items submitted by one or more content providers;
(b) a content management database that specifies which content entry items appear in the content categories for each site, wherein the content management database may specify that a particular content entry item shall appear in content categories of a plurality of sites; and (c) a site page assembler which automatically generates completed pages for each of the sites in the predesignated page layout format using the information stored in the content management database and the content database, wherein the same content entry item may be syndicated to a plurality of sites if specified by the content management database.
(a) a content database which stores a plurality of content entry items submitted by one or more content providers;
(b) a content management database that specifies which content entry items appear in the content categories for each site, wherein the content management database may specify that a particular content entry item shall appear in content categories of a plurality of sites; and (c) a site page assembler which automatically generates completed pages for each of the sites in the predesignated page layout format using the information stored in the content management database and the content database, wherein the same content entry item may be syndicated to a plurality of sites if specified by the content management database.
2. A system according to claim 1 wherein the content entry items include content submitted directly by a content provider.
3. A system according to claim 1 wherein the content entry items include pointers to the location of the contents from a content provider.
4. A system according to claim 1 wherein each category includes a plurality of subcategories, the content management database specifying which content entry items appear in the content subcategories for each site, wherein the content management database may specify that a particular content entry item shall appear in subcontent categories of a plurality of sites.
5. A system according to claim 1 wherein each category includes at least one predesignated, authorized contributor.
6. A system according to claim 1 wherein each category includes at least one predesignated, authorized manager.
7. A system according to claim 1 wherein each category includes a plurality of content entry items.
8. A system according to claim 1 wherein the sites are selected from the group consisting of web sites, intranets and extranets.
9. A system according to claim 1 wherein each content entry item includes a short version and a full version, the content management database specifying:
(i) a category for the short version, and (ii) a location within the site for the full version.
(i) a category for the short version, and (ii) a location within the site for the full version.
10. A system according to claim 9 wherein the short version is a headline describing the full version.
11. A system according to claim 1 wherein the system is web-based so that content is submitted and assembled pages are made available to the plurality of sites via the worldwide web.
12. A system according to claim 1 wherein the plurality of sites are electronic media outlets.
13. A system according to claim 1 wherein the content is electronic digital assets or data.
14. A system according to claim 1 further comprising:
(d) a content entry device which allows the content provider to enter the content without using programming language.
(d) a content entry device which allows the content provider to enter the content without using programming language.
15. An automated, computer-implemented on-line calendar system for posting event information associated with a plurality of entities, each entity having its own calendar, the system comprising:
(a) a calendar event database which accepts event entry calendar input information from a plurality of content providers and stores the event entries, each event entry being associated with one or more entities specified by the content provider, wherein event entries may specify a plurality of entities for posting; and (b) a calendar assembler which generates calendars of events for each of the entities using the information stored in the calendar event database, wherein the same event entry may appear on calendars of a plurality of entities if specified by the calendar event database.
(a) a calendar event database which accepts event entry calendar input information from a plurality of content providers and stores the event entries, each event entry being associated with one or more entities specified by the content provider, wherein event entries may specify a plurality of entities for posting; and (b) a calendar assembler which generates calendars of events for each of the entities using the information stored in the calendar event database, wherein the same event entry may appear on calendars of a plurality of entities if specified by the calendar event database.
16. A system according to claim 15 wherein the event entries include private entries which appear only on the calendar of an entity predesignated by the content provider.
17. A system according to claim 16 wherein event entries which are not designated as private entries are treated as public entries and are available for viewing by any entity calendar.
18. A system according to claim 15 wherein the entities are selected from the group consisting of organizations, businesses and individuals.
19. A system according to claim 15 wherein the event entries include one or more event descriptors selected from the group consisting location or venue, organization or department, keyword, and type of event or category, thereby allowing event entries in the calendar event database to be searched by descriptors.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10328298P | 1998-10-06 | 1998-10-06 | |
US10329398P | 1998-10-06 | 1998-10-06 | |
US60/103,293 | 1998-10-06 | ||
US60/103,282 | 1998-10-06 | ||
PCT/US1999/023116 WO2000020945A2 (en) | 1998-10-06 | 1999-10-06 | Generalized multi-interfaced extensible content management and delivery system, and on-line calendar |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2356846A1 true CA2356846A1 (en) | 2000-04-13 |
Family
ID=26800277
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002356846A Abandoned CA2356846A1 (en) | 1998-10-06 | 1999-10-06 | Generalized multi-interfaced extensible content management and delivery system, and on-line calendar |
Country Status (3)
Country | Link |
---|---|
AU (1) | AU6413899A (en) |
CA (1) | CA2356846A1 (en) |
WO (1) | WO2000020945A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015039209A1 (en) * | 2013-09-21 | 2015-03-26 | Agendrix | Computer networked calendar |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6560639B1 (en) | 1998-02-13 | 2003-05-06 | 3565 Acquisition Corporation | System for web content management based on server-side application |
US7003528B2 (en) | 1998-02-13 | 2006-02-21 | 3565 Acquisition, Llc | Method and system for web management |
US7181679B1 (en) | 2000-05-26 | 2007-02-20 | Newsstand, Inc. | Method and system for translating a digital version of a paper |
US7900130B1 (en) | 2000-05-26 | 2011-03-01 | Libredigital, Inc. | Method, system and computer program product for embedding a hyperlink within a version of a paper |
AU2001264850A1 (en) * | 2000-05-26 | 2001-12-11 | Newsstand, Inc. | Method, system, and computer program product for providing digital version of a mass-produced printed paper |
US6845273B1 (en) | 2000-05-26 | 2005-01-18 | Newsstand, Inc. | Method and system for replacing content in a digital version of a mass-produced printed paper |
US6850260B1 (en) | 2000-05-26 | 2005-02-01 | Newsstand, Inc. | Method and system for identifying a selectable portion of a digital version of a mass-produced printed paper |
EP1172734A1 (en) * | 2000-07-12 | 2002-01-16 | eGrail | Method and system for web management |
WO2002013035A1 (en) | 2000-08-07 | 2002-02-14 | Active Data Exchange, Inc. | Syndication methodology to dynamically place digital assets on non-related web sites |
WO2002029724A1 (en) * | 2000-10-05 | 2002-04-11 | Kloss Ronald J | Timeline publishing system |
US20080162505A1 (en) * | 2006-12-29 | 2008-07-03 | Hill Charles R | Context browser based navigation of pivotally related information for a document |
JP6031735B2 (en) * | 2011-06-13 | 2016-11-24 | ソニー株式会社 | Information processing apparatus, information processing method, and computer program |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5617565A (en) * | 1994-11-29 | 1997-04-01 | Hitachi America, Ltd. | Broadcast interactive multimedia system |
US5819271A (en) * | 1996-06-04 | 1998-10-06 | Multex Systems, Inc. | Corporate information communication and delivery system and method including entitlable hypertext links |
US5864871A (en) * | 1996-06-04 | 1999-01-26 | Multex Systems | Information delivery system and method including on-line entitlements |
-
1999
- 1999-10-06 CA CA002356846A patent/CA2356846A1/en not_active Abandoned
- 1999-10-06 AU AU64138/99A patent/AU6413899A/en not_active Abandoned
- 1999-10-06 WO PCT/US1999/023116 patent/WO2000020945A2/en active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015039209A1 (en) * | 2013-09-21 | 2015-03-26 | Agendrix | Computer networked calendar |
Also Published As
Publication number | Publication date |
---|---|
WO2000020945A2 (en) | 2000-04-13 |
AU6413899A (en) | 2000-04-26 |
WO2000020945A3 (en) | 2000-08-17 |
WO2000020945A9 (en) | 2001-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6026433A (en) | Method of creating and editing a web site in a client-server environment using customizable web site templates | |
US6266683B1 (en) | Computerized document management system | |
US6990629B1 (en) | Publishing system for intranet | |
US6581065B1 (en) | Dynamic insertion and updating of hypertext links for internet servers | |
US6748385B1 (en) | Dynamic insertion and updating of hypertext links for internet servers | |
US8561153B2 (en) | Web-based collaborative framework | |
US7167903B2 (en) | System and method for user updateable web sites and web pages | |
US5864871A (en) | Information delivery system and method including on-line entitlements | |
US6560639B1 (en) | System for web content management based on server-side application | |
US7392254B1 (en) | Web-enabled transaction and matter management system | |
US8478993B2 (en) | System and method for distributing and creating presentations | |
US8171387B2 (en) | Method of and system for collaboration web-based publishing | |
US20080313260A1 (en) | Automated website generation | |
US20060149833A1 (en) | System and method of web management | |
US20030110106A1 (en) | System and method for enabling content providers in a financial services organization to self-publish content | |
US20060010373A1 (en) | Portal information delivery system for personal computers and SOHO computer systems | |
US7404141B1 (en) | System for creating and maintaining a website | |
US20090094137A1 (en) | Web Page Optimization Systems | |
US20050149549A1 (en) | Content management in web environments | |
KR20090005097A (en) | Systems and methods of transforming data for web communities and web applications | |
CA2356846A1 (en) | Generalized multi-interfaced extensible content management and delivery system, and on-line calendar | |
US20030126140A1 (en) | Method, system, and computer program product for generating custom databases | |
US7788486B2 (en) | System and method for distributing and creating presentations | |
US20010047362A1 (en) | Automated web site publishing and design system | |
Kristof et al. | Kent State University's electronic reserves experience |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FZDE | Discontinued |