News Column

Researchers Submit Patent Application, "Third Party Application Communication Api", for Approval

September 4, 2014



By a News Reporter-Staff News Editor at Politics & Government Week -- From Washington, D.C., VerticalNews journalists report that a patent application by the inventor ABRAHAMI, Yoav (Tel Aviv, IL), filed on February 10, 2014, was made available online on August 21, 2014.

No assignee for this patent application has been made.

News editors obtained the following quote from the background information supplied by the inventors: "There are many commercially available website building systems and other interactive application building tools that can be used to create and edit websites and other on-line applications. End users can access such websites using client software on a variety of different platforms such as regular personal computers, smart-phones, tablets and other desktop or mobile devices.

"These website building systems can come in different configurations such as fully on-line website building systems which are hosted on a server or servers connected to the internet and which are accessed using internet communication protocols such as hypertext transfer protocol (HTTP). The creation, editing and deployment of these website building systems are all performed on-line working directly with the servers.

"Website building systems can also be partially online or sometimes even fully offline. For a partially online system, the website editing is performed locally on the user's machine and is later uploaded to a central server or servers for deployment. Once uploaded, these website building systems behave in the same way as the full on-line website building systems.

"Website building systems have internal data architecture in order to organize data and elements within the system. This architecture may be different from the external view of the site in question as seen by the user and may also differ from the way typical hypertext markup language (HTML) pages are sent to the browser. For example, the internal data architecture can contain additional properties for each element on the page (creator, creation time, access permissions, links to templates etc.) which are essential for editing and maintaining the site within the website building system, but are not externally visible to the end-user (or even to some editing users). A typical architecture for a website building system based site may consist of pages containing components (e.g. shape components, picture components, text components, single- and multi-page containers containing mini-pages, etc.)

"Components may be content-less such as a star-shape which does not have any internal content (through it has color, size, position and some other attributes) or may have internal content, such as a text paragraph component, whose internal content includes the displayed text, as well as font, formatting and layout information. This content may, of course, vary from one instance of the text paragraph component to another.

"A designer using such a website building system may design a new creation from scratch (starting with a blank screen), or may rely on predefined application templates created by the designer himself or herself, by the system creator, or by the designer community. The website building system may support templates which are mere component collections, complete pages (or mini pages) or even sets of pages and complete web sites.

"When an application template is provided, the designer can customize it at will--adding, removing or modifying all elements of the template to create his or her version of the template. Such customization may be implemented by creating a modified version of the template (which is distinct and separate from the template). Alternatively, the website building system may apply the customizations through an inheritance-type mechanism which retains the link to the original template, and would thus reflect later changes made to the template.

"Website building systems can also be extended using third party applications and components embedded in them. Such third party applications may be included in the website building system design environment or may be purchased (or otherwise acquired) separately through a number of distribution mechanisms, such as from an application store (AppStore) integrated into the website building system, or from a separate, web-based or standalone application repository (or AppStore) operated by the website building systems (WBS) vendor or by another entity. Third party applications may be also be obtained directly from the third party application vendor (through an AppStore or not)--which would provide an actual installation module, or just an activation or access code.

"A third party application may include any combination of front-end (display) elements with back-office elements (which are not a part of the visual web site display). The third party application may be entirely back-office (i.e. include no display element), entirely front-end (i.e. be activated only within the context of web site use) or be a combination of the two.

"The back-office element of the third party application may include functions such as data-base communication, external update options etc. For example, a blog third party application might include a back-office element which allow updates to be received from non-human sources (e.g. a RSS news feed from a major news service), as well as from human sources not related to the web site (e.g. a stand-alone smart-phone application which allows submission of blog entries).

"The integration of the visual element of a third party application into the containing web site can be done in a number of ways. Widget-type third party applications can be embedded inside a web site page as a component whereas section-type third party applications can be added to the web site as an additional page or pages.

"Furthermore third party applications (both widget and section) can be single-page third party applications or multi-page third party applications (which have internal mini-pages represented as an internal URL structure). A system may implement any or all of the four possible combinations (widget or section, single-page or multi-page).

"Multi-page third party applications usually provide a default 'landing' mini-page, which could be an opening page, a specific internal mini-page (e.g. the most recent blog entry in a blog third party application), a mini-page selection screen or some other mini-page.

"The use of third party applications in website building system-based web sites is done through third party application instances. The website building system may support multiple uses of third party applications at a number of levels, such as allowing a single third party application instance in the entire web site; allowing instances of multiple third party applications to be created inside the web site (but not more than one instance of any given third party application) and allowing multiple instances of multiple third party applications to be created, but no more than one instance per a given page. It may also allow multiple instances per page of component third party applications but not of section third party applications and may also allow multiple instances of multiple third party applications to be created without any limitations on the amount, multiplicity or location of the third party applications instances.

"The third party application instance may have instance-specific content. For example, an e-Shop third party application may have a product database associated with the specific instance, which is different from the product database associated with other instances of the same e-Shop third party application (in the same site or other sites).

"For the purposes of discussion, the web site page (or mini-page) containing the third party application and its mini-pages or elements (i.e. the 'wrapper page') shall be known as the containing web page and to the entire web site as the main site. The integrated page shown to the user--including the main page and an embedded TPA mini-page/component--shall be referred to as combined page. For section type third party applications, the 'virtual page' containing the third party application would serve as the containing web page.

"Third party applications are usually deployed either on the website building system vendor servers, on the third party application vendor server, on external (4.sup.th party) servers, or any combination thereof. A third party application may also include elements actually running on the end user machine, such as a statically-installed browser extension or a dynamically run JavaScript component running inside the website building system client-side code as is illustrated in FIG. 1 to which reference is now made.

"The website building system vendor's servers act as a contact point for the end-user, and responds to requests (possibly connecting to the third party applications vendors' servers to receive required information). The website building system may create direct connections (as required) between the client computer and the third party application vendors' servers, for example when video streaming is required.

"Included third party application instances may have their own internal content, similar to the way in which regular components include internal content. The third party application may manage this content independently of the website building system and of the website generated using the website building system as is illustrates in FIG. 2 to which reference is now made. Multiple third party application instances (of single or multiple third party applications) may have shared content, e.g. two e-Shop instances in two separate web site pages may refer to the same product database.

"The output from included third party applications may be integrated into the containing web page in a number of ways, such as:

"Server Side Processing:

"in this alternative as is illustrated in FIG. 3 to which reference is now made, third party application [a] (including design and display elements) and the user-specific third party application data [b] are merged by the third party application server code [c] running on the third party application vendors' server [d]. They are sent over the communication medium [e] to the website building system server code [f] which merges them with the containing web page information [g] and then sends them for display on the user client station [h].

"Client-Side Processing:

"in this alternative as is illustrated in FIG. 4 to which reference is now made, third party application [a] (including design and display elements) and the user-specific third party application data [b] are merged by the third party application server code [c] running on the third party application vendors' server [d]. They are sent over the communication medium [e] to a client side processing component [h]. The website building system server code [f] sends the containing web page information [g] to this client side processing component [h]. The client side processing component [h] performs the merging of the two source of information and presents a unified application to the browser (or other client agent) [i].

"iFrame Inclusion:

"in this alternative as is illustrated in FIG. 5 to which reference is now made, the third party application [a] (including design and display elements) and the user-specific third party application data [b] are merged by the third party application server code [c] running on the third party application vendors' server [d]. They are sent over the communication medium [e] to a browser-based application [h] running inside the user agent (e.g. a web browser) [i]. The website building system server code [f] sends the containing web page information [g] to this browser-based application [h]. The containing web page is realized as a web page which contains one or more iframe directives which include the content from the third party application server [d]. Additional and alternative methods may be applicable as well."

As a supplement to the background information on this patent application, VerticalNews correspondents also obtained the inventor's summary information for this patent application: "There is provided in accordance with a preferred embodiment of the present invention, a device for a website building system. The device includes a page composer to create a page containing website instances of at least one third party application and a configurer to define a 2-way communication backchannel between the page and the at least one third party application or between the at least one third party application and at least one other third party application. The device also includes a coordinator to coordinate communication according to the communication backchannel when the page is viewed or accessed.

"Moreover, in accordance with a preferred embodiment of the present invention, the device is implementable on a client.

"Further, in accordance with a preferred embodiment of the present invention, the device is implementable on a server.

"Still further, in accordance with a preferred embodiment of the present invention, the communication backchannel is at least one of an HTML5 (Hypertext Markup Language 5) a PostMessage, a URL fragment identifier for messages, a specialized communication web service, an HTML5 local storage, an HTML5 local file system access APIs and a specialized browser plug in.

"Additionally, in accordance with a preferred embodiment of the present invention, the coordinator is embedded in the page using an iframe.

"Moreover, in accordance with a preferred embodiment of the present invention, the at least one third party application is embedded in the page using an iframe.

"Further, in accordance with a preferred embodiment of the present invention, the at least one third party application is at least one of a multi-part third party application and a modular third party application.

"Still further, in accordance with a preferred embodiment of the present invention, the coordinator includes a configuration manager to monitor pre-defined at least one third party application instances.

"Additionally, in accordance with a preferred embodiment of the present invention, the coordinator includes a smart identifier and addresser to identify and translate symbolic and absolute addresses of the source or target of the communication.

"Moreover, in accordance with a preferred embodiment of the present invention, the coordinator includes a communication policy enforcer to enforce a communication policy between the website building system and the at least one third party application.

"Further, in accordance with a preferred embodiment of the present invention, the coordinator includes a redirector to reroute communication messages to and from the at least one third party application within the website building system.

"Still further, in accordance with a preferred embodiment of the present invention, the coordinator includes an originator verifier to verify authenticity of incoming messages from the at least one third party application.

"Additionally, in accordance with a preferred embodiment of the present invention, the coordinator includes a protocol translator to resolve protocol compatibility issues between the website building system and the at least one third party application and between the third party application and the at least one other third party application.

"Moreover, in accordance with a preferred embodiment of the present invention, the coordinator includes a dynamic layout updater to update dynamic layout changes between at least one of the page and the at least one third party application, the at least one third party application and the page and the at least one third party application and the at least one other third party application.

"Further, in accordance with a preferred embodiment of the present invention, the coordinator includes an updater to update at least one of a global attribute of the website building system, a control permission of the at least one third party application and the layout, style and content of elements of the page.

"There is provided in accordance with a preferred embodiment of the present invention, a device for a website building system, the device includes a third party application receiver to receive at least one website building system template from an outside source where a third party application is associated with the at least one website building system template. The device also includes an installer to install the template into a website page when an instance of the at least one third party application is created within the page.

"Moreover, in accordance with a preferred embodiment of the present invention, the device is implementable on at least one of a server and client.

"Further, in accordance with a preferred embodiment of the present invention, the template is editable.

"Still further, in accordance with a preferred embodiment of the present invention, the template contains at least one of a website building system component and a multipart third party application.

"Additionally, in accordance with a preferred embodiment of the present invention, the website page is at least one of an existing page, an existing mini-page, a newly created page and a newly created mini-page.

"Moreover, in accordance with a preferred embodiment of the present invention, the receiver preserves referential integrity and performs interface resolution between the at least one third party application and the page.

"There is provided in accordance with a preferred embodiment of the present invention, a method for a website building system. The method includes creating a page containing website instances of at least one third party application and defining a 2-way communication backchannel between the page and the at least one third party application or between the at least one third party application and at least one other third party application. The method also includes coordinating communication according to the communication backchannel when the page is viewed or accessed.

"Moreover, in accordance with a preferred embodiment of the present invention, the at least one third party application is at least one of a multi-party third party application and a modular third party application.

"Further, in accordance with a preferred embodiment of the present invention, the coordinating includes monitoring pre-defined at least one third party application instances.

"Still further, in accordance with a preferred embodiment of the present invention, the coordinating comprises identifying and translating symbolic and absolute addresses of the source or target of the communication.

"Additionally, in accordance with a preferred embodiment of the present invention, the coordinating includes enforcing a communication policy between the website building system and the at least one third party application.

"Moreover, in accordance with a preferred embodiment of the present invention, the coordinating includes rerouting communication messages to and from the at least one third party application within the website building system.

"Further, in accordance with a preferred embodiment of the present invention, the coordinating includes verifying the authenticity of incoming messages from the at least one third party application.

"Still further, in accordance with a preferred embodiment of the present invention, the coordinating includes resolving protocol compatibility issues between the website building system and the at least one third party application and between the third party application and the at least one other third party application.

"Additionally, in accordance with a preferred embodiment of the present invention, the coordinating includes dynamic layout updating of changes between at least one of the page and the at least one third party application, the at least one third party application and the page, and the at least one third party application and the at least one other third party application.

"Moreover, in accordance with a preferred embodiment of the present invention, the coordinating includes updating at least one of a global attribute of the website building system, a control permission of the at least one third party application and the layout, style and content of elements of the page.

"Further, in accordance with a preferred embodiment of the present invention, the updating includes cascading style sheets.

"There is provided in accordance with a preferred embodiment of the present invention, a method for a web site building system. The method includes receiving at least one website building system template from an outside source where the third party application is associated with the at least one website building system template. The method also includes installing the template into a website page when an instance of the at least one third party application is created within the page.

"Moreover, in accordance with a preferred embodiment of the present invention, the template is editable.

"Further, in accordance with a preferred embodiment of the present invention, the template contains at least one of a website building system component and a multipart third party application.

"Still further, in accordance with a preferred embodiment of the present invention, the website page is at least one of an existing page, an existing mini-page, a newly created page and a newly created mini-page.

"Additionally, in accordance with a preferred embodiment of the present invention, the receiving preserves referential integrity and performs interface resolution between the at least one third party application and the page.

BRIEF DESCRIPTION OF THE DRAWINGS

"The subject matter regarded as the invention is particularly pointed out and distinctly claimed in the concluding portion of the specification. The invention, however, both as to organization and method of operation, together with objects, features, and advantages thereof, may best be understood by reference to the following detailed description when read with the accompanying drawings in which:

"FIG. 1 is a schematic illustration of deployment configurations between a website building system and a third party application;

"FIG. 2 is a schematic illustration of third party application internal content management;

"FIG. 3 is a schematic illustration of third party application inclusion in a containing web page through server side processing;

"FIG. 4 is a schematic illustration of third party application inclusion in a containing web page through client side processing;

"FIG. 5 is a schematic illustration of third party application inclusion in a containing web page through iframe inclusion;

"FIG. 6 is a schematic illustration of existing and non-optimal third party application displays during page layout change;

"FIGS. 7A and 7B are schematic illustrations of a system for integrating a website building system and one or more third party applications, constructed and operative in accordance with the present invention;

"FIG. 8 is a schematic illustration of a document object model compared to a component model;

"FIG. 9 is a schematic illustration of a sample multi-part blog third party application;

"FIG. 10 is a schematic illustration of a sample modular sales third party application;

"FIGS. 11A and 11B are schematic illustrations of different implementations of a communication hub, constructed and operative in accordance with the present invention;

"FIG. 11C is a schematic illustration of the elements of the communication hub of FIGS. 11A and 11B, constructed and operative in accordance with the present invention;

"FIG. 12 is a schematic illustration of a communication translation scenario performed by the communication hub of FIGS. 11A and 11B, constructed and operative in accordance with the present invention;

"FIG. 13 is a schematic illustration of a containing web page handling a third party application which has an associated template, constructed and operative in accordance with the present invention; and

"FIG. 14 is a schematic illustration of a containing web page that includes a third party application which has an associated template inside a mini-page, constructed and operative in accordance with the present invention.

"It will be appreciated that for simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements for clarity. Further, where considered appropriate, reference numerals may be repeated among the figures to indicate corresponding or analogous elements."

For additional information on this patent application, see: ABRAHAMI, Yoav. Third Party Application Communication Api. Filed February 10, 2014 and posted August 21, 2014. Patent URL: http://appft.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&u=%2Fnetahtml%2FPTO%2Fsearch-adv.html&r=293&p=6&f=G&l=50&d=PG01&S1=20140814.PD.&OS=PD/20140814&RS=PD/20140814

Keywords for this news article include: Patents.

Our reports deliver fact-based news of research and discoveries from around the world. Copyright 2014, NewsRx LLC


For more stories covering the world of technology, please see HispanicBusiness' Tech Channel



Source: Politics & Government Week


Story Tools






HispanicBusiness.com Facebook Linkedin Twitter RSS Feed Email Alerts & Newsletters