WO2007026321A2 - A data processing system and a method of operating a rendering platform - Google Patents
A data processing system and a method of operating a rendering platform Download PDFInfo
- Publication number
- WO2007026321A2 WO2007026321A2 PCT/IB2006/053027 IB2006053027W WO2007026321A2 WO 2007026321 A2 WO2007026321 A2 WO 2007026321A2 IB 2006053027 W IB2006053027 W IB 2006053027W WO 2007026321 A2 WO2007026321 A2 WO 2007026321A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- rendering
- callback component
- callback
- engine
- fragment
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
Definitions
- This invention relates to a method of operating a rendering platform and to a data processing system that includes a rendering platform.
- the invention supports the calling of external services by means of rendering assets.
- 02/092183 allow authors to define interactive media presentations that span multiple input/output devices, such as lamps, fans, displays etc.
- the rendering platform renders "events", and there is often an event mechanism present that allows the rendering platform to render external events, for example, from a device by means of the 'event' language element in the specification defining the platform.
- event mechanism present that allows the rendering platform to render external events, for example, from a device by means of the 'event' language element in the specification defining the platform.
- third-party applications it is not possible for third-party applications to react to an event triggered by the distributed media presentation engine.
- One possible solution to this problem is to expose the inner state of the rendering platform to the third-party application, but this is often not desired in view of security.
- Third-party applications can add documents (sometimes referred to as fragments) that contain events and thereby have a means to affect the state of the rendering platform but the communication is only in one direction, from the third-party application to the rendering platform. Therefore it is impossible for third-party applications to react to changes in the state of the rendering platform.
- the application could try to keep a consistent copy of the state of the rendering platform, but this is not desirable, especially in highly distributed environments where there could be many of such applications active.
- applications can only 'guess' when to add or retract documents from the rendering platform. This implies that the rendering platform can only be used for relatively static distributed media presentations that involve only a limited form of interaction with end-users or third-party agents.
- the functionality that can be offered by the rendering platform and associated language is limited. For more complex rendering operations, for example three-dimensional manipulation on three-dimensional objects, most hypermedia markup languages are inadequate.
- a method of operating a rendering platform comprising receiving a rendering fragment at a rendering engine, passing an instruction from a rendering fragment to a callback component, and making a procedure call from the callback component to an external application according to the instruction.
- a data processing system comprising a rendering engine, one or more rendering devices, a callback component, and an external application, the rendering engine arranged to receive rendering fragments and to pass an instruction from a rendering fragment to the callback component, and the callback component arranged to make a procedure call to the external application according to the instruction.
- a computer program product on a computer readable medium for operating a rendering platform and comprising instructions for receiving a rendering fragment at a rendering engine, passing an instruction from a rendering fragment to a callback component, and making a procedure call from the callback component to an external application according to the instruction.
- Owing to the invention it is possible to operate a rendering platform in such a way that an external application can be called from a component within the rendering platform, but without that procedure call passing through the rendering engine.
- the command for the procedure call, the instruction passed to the callback component is passed through the rendering engine, however the rendering engine does not look at the contents of the instruction, but treats it as a string value and forwards it to the appropriate callback component.
- the benefits of this invention include the fact that it is highly generic, in that it will work with any type of application because a specific callback component can be written for each application.
- a more generic callback component (based on the SOAP protocol for example) is also possible, which does not require modification of the rendering platform. All that is required is a callback component to be implemented, and the internals of the rendering platform are not exposed.
- the invention provides the solution to the problem of accessing an external application in two parts. Firstly, there is implemented a rendering device that implements a callback mechanism for the third-party application. Second, a procedure call as a media asset/item in the presentation language is submitted to the rendering engine.
- the method further comprises registering one or more rendering devices on the rendering engine, and registering the callback component on the rendering engine.
- the callback component is registered on the rendering engine as a rendering device.
- the rendering engine will always address the callback component as a rendering device and no amendment to the operation of the rendering engine is required.
- the registering of a rendering device or the callback component comprises receiving an XML document
- the registering of the callback component comprises receiving an XML document from the external application.
- the instruction from the rendering fragment passed to the callback component comprises the procedure call.
- Figure 1 is a schematic diagram of a data processing system
- Figure 2 is a further schematic diagram of the data processing system of Figure 1.
- Figures 1 and 2 show a data processing system 10, which comprises a rendering platform 12, which is comprised of a rendering engine 14, rendering devices 16 and a callback component 18. Included within the system 10 is an application 20, which is external to the rendering platform 12.
- the rendering devices 16 and callback component 18 are being registered with the rendering engine 14, by means of XML documents 22 being provided to the rendering engine 14.
- the callback component 18 To register itself as a new device, the callback component 18 must register with the rendering engine 14. This is achieved by sending a document 22 to the rendering engine 14 that describes the capability of the callback component 18 and its location.
- the document 22 registering the callback component 18 originates with the third-party application 20, and this is the methodology by which the external application 20 can be called from the rendering platform 12.
- the code fragment below is an example of the contents of the document 22.
- the format and syntax of the document 22 will depend upon the details of the rendering platform 12.
- the rendering engine 14 will interpret this document 22 as the registration of a new device named callback with a capability to call procedures on an external application (type extemal_application).
- the device can be in any location (ANYWHERE). Once the device is registered with the rendering engine 14 it can be used.
- the callback component 18 is treated by the rendering engine 14 as if it were any other device in the platform.
- the rendering engine 14 will receive rendering fragments (such as document 24 in Figure 2), which are then distributed in whole or part to the rendering devices 16 and the callback component 18.
- the callback component 18 is effectively a special type of rendering device. Instead of rendering text, audio, or some other modality, it calls procedures on the third-party application 20 when instructed to by the rendering engine 14.
- the rendering engine 14 can use the callback component 18 alone and can composes generic software applications.
- the rendering engine 14 keeps track of the internal state and, via the callback component 18, calls program procedures.
- the rendering engine 14 using the callback component 18 can be implemented in the following manner.
- Rendering engine 14 receives the description 24 (typically an XML document) from a source, which could be the third-party application 20, which tells the engine 14 what should be rendered.
- the description 24 can be a fragment for a specific rendering engine or an HTML document for an HTML browser.
- the rendering engine 14 reads the description and gives instructions to the rendering devices 16 (for example, play or stop a media item).
- the code fragment below shows an example of a presentation description in a markup language suitable for use in the system of WO 02/092183.
- this fragment is added to the pool of fragments in the rendering engine 14 then the following will happen. If the state red is active in the rendering engine 14 and there are one or more devices 16 available of type rgbjight then the value 80, 0, 0 will be sent to those device(s) 16 (provided that each device has the same location attribute value as defined for the state/object red).
- the fragment 24 may include the following XML:
- this fragment 24 (which may be from the third-party application 20) is added to the rendering engine 14, then the instruction 26 printHello within the document 24 will be passed to the callback component 18.
- the callback component 18 will make a procedure call 28 to the third-party application 20 when the state red becomes true in the rendering engine 14.
- the callback component 18 implements how the third-party application 20 will be called, the rendering engine 14 only knows that a 'media asset' hello must be 'rendered' with value printHello.
- the third-party application 20 must have implemented a remote procedure call interface to allow callback components to invoke procedure calls otherwise all external (remote) procedure calls will fail.
- the document 24 with an asset description of type extemal_application is sent to the engine 14.
- the engine 14 recognizes the asset type (a device named callback registered itself with this capability before) and sends the command string printHello in the value attribute when the state becomes red to the device.
- the component18 invokes the printHello procedure on a third-party application 20 (locally or remote).
- the command string may contain a complete (remote) procedure call description (e.g. in SOAP) so that the callback component 18 can be made more generic.
- SMIL W3C standard for multimedia on the Web
- the layout section exists to specify (screen) devices and (screen) regions on devices.
- Language elements such as audio, video and image can be used in the main section to specify audio, video or image media items respectively. These media elements must always be associated to a region and therefore, indirectly, always link to a device. Therefore, a callback component as discussed above can be specified in the layout section and used in the main section.
- the invention applies to media-enhanced environments designed to support everyday life performances (ambient intelligent environments) and context-aware systems in general.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Image Generation (AREA)
- Facsimiles In General (AREA)
- Telephone Function (AREA)
- User Interface Of Digital Computer (AREA)
- Telephonic Communication Services (AREA)
- Control Of Indicators Other Than Cathode Ray Tubes (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Description
Claims
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008528635A JP2009507291A (en) | 2005-09-01 | 2006-08-31 | Data processing system and method for operating a rendering platform |
EP06795835.5A EP1949216B1 (en) | 2005-09-01 | 2006-08-31 | A data processing system and a method of operating a rendering platform |
KR1020087007894A KR101370321B1 (en) | 2005-09-01 | 2006-08-31 | A data processing system and a method of operating a rendering platform |
CN200680031773.XA CN101331455B (en) | 2005-09-01 | 2006-08-31 | The data handling system of operation presentation platforms and method |
US12/064,826 US8595754B2 (en) | 2005-09-01 | 2006-08-31 | Data processing system and a method of operating a rendering platform |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP05108027 | 2005-09-01 | ||
EP05108027.3 | 2005-09-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2007026321A2 true WO2007026321A2 (en) | 2007-03-08 |
WO2007026321A3 WO2007026321A3 (en) | 2008-07-31 |
Family
ID=37809265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/IB2006/053027 WO2007026321A2 (en) | 2005-09-01 | 2006-08-31 | A data processing system and a method of operating a rendering platform |
Country Status (8)
Country | Link |
---|---|
US (1) | US8595754B2 (en) |
EP (1) | EP1949216B1 (en) |
JP (1) | JP2009507291A (en) |
KR (1) | KR101370321B1 (en) |
CN (1) | CN101331455B (en) |
TR (1) | TR201901711T4 (en) |
TW (1) | TWI417788B (en) |
WO (1) | WO2007026321A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009136325A1 (en) * | 2008-05-09 | 2009-11-12 | Koninklijke Philips Electronics N. V. | System and method for processing application logic of a virtual and a real-world ambient intelligence environment |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101580999B1 (en) * | 2009-01-06 | 2015-12-30 | 삼성전자주식회사 | Apparatus and method for moving contents between applications |
US10333991B2 (en) | 2014-07-09 | 2019-06-25 | Hewlett-Packard Development Company, L.P. | Web browser policy for HTTP-based application |
US11170067B2 (en) * | 2017-12-13 | 2021-11-09 | Google Llc | Methods, systems, and media for updating a webpage rendered with cached content |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7650355B1 (en) * | 1999-05-21 | 2010-01-19 | E-Numerate Solutions, Inc. | Reusable macro markup language |
US6910068B2 (en) * | 1999-06-11 | 2005-06-21 | Microsoft Corporation | XML-based template language for devices and services |
JP2001273520A (en) * | 2000-03-23 | 2001-10-05 | Famotik Ltd | System for integrally displaying multimedia document |
CN1254296C (en) * | 2001-05-11 | 2006-05-03 | 皇家菲利浦电子有限公司 | Enabled device and method of operating a set of devices |
GB0111431D0 (en) | 2001-05-11 | 2001-07-04 | Koninkl Philips Electronics Nv | A real-world representation system and language |
KR20030021250A (en) * | 2001-05-11 | 2003-03-12 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Operation of a set of devices |
KR100414406B1 (en) * | 2001-08-09 | 2004-01-14 | 주식회사 핸디소프트 | Workflow System Capable of Version Management of Documents and the Method of Version Management of Documents Using the Same |
US20040003341A1 (en) * | 2002-06-20 | 2004-01-01 | Koninklijke Philips Electronics N.V. | Method and apparatus for processing electronic forms for use with resource constrained devices |
US20040056890A1 (en) | 2002-09-19 | 2004-03-25 | Ying Hao | Method and system for provisioning mobile device machine interfaces |
TWI259377B (en) * | 2003-09-29 | 2006-08-01 | Realm Systems Inc | Method for processing web services, mobility device and system relating to the same |
-
2006
- 2006-08-29 TW TW095131824A patent/TWI417788B/en active
- 2006-08-31 TR TR2019/01711T patent/TR201901711T4/en unknown
- 2006-08-31 KR KR1020087007894A patent/KR101370321B1/en active IP Right Grant
- 2006-08-31 EP EP06795835.5A patent/EP1949216B1/en active Active
- 2006-08-31 US US12/064,826 patent/US8595754B2/en active Active
- 2006-08-31 WO PCT/IB2006/053027 patent/WO2007026321A2/en active Application Filing
- 2006-08-31 CN CN200680031773.XA patent/CN101331455B/en active Active
- 2006-08-31 JP JP2008528635A patent/JP2009507291A/en active Pending
Non-Patent Citations (9)
Title |
---|
CHESTER T. M.: "Cross-Platform Integration with XML and SOAP" IT PRO, 2001, XP002482316 * |
CIANCARINI P ET AL: "An extensible rendering engine for XML and HTML" 1 April 1998 (1998-04-01), COMPUTER NETWORKS AND ISDN SYSTEMS, NORTH HOLLAND PUBLISHING. AMSTERDAM, NL, PAGE(S) 225 - 237 , XP004121424 ISSN: 0169-7552 * |
DUKE D J ET AL: "A STANDARD FOR MULTIMEDIA MIDDLEWARE" 12 September 1998 (1998-09-12), PROCEEDINGS OF THE ACM MULTIMEDIA 98. MM '98. BRISTOL, SEPT. 12 - 16, 1998; [ACM INTERNATIONAL MULTIMEDIA CONFERENCE], NEW YORK, NY : ACM, US, PAGE(S) 381 - 390 , XP000977528 ISBN: 978-1-58113-036-2 * |
FOX G.C., FURMANSKI W., OZDEMIR H.T., PALLICKARA S.: "New Systems Technologies and Software Products for HPCC: Volume III - High Performance Commodity Computing on the Pragmatic Object Web" TECHNOLOGY ASSESSMENT REPORT FOR RCI, LTD., 1998, XP002482314 Syracuse University * |
MORIRA R., ROCHA A., BRAGA DE VASCONCELOS J.: "MIDDLEWARE: THE LAYER IN BETWEEN" REVISTA DA FACULDADE DE CIÊNCIA E TECNOLOGIA, [Online] vol. 2, 2005, pages 135-152, XP002482296 Universidade Fernando Pessoa Retrieved from the Internet: URL:http://hdl.handle.net/10284/210> * |
ÖSTERLUND L.-O.: "Component Technology" IEEE COMPUTER APPLICATIONS IN POWER, 2000, XP002482317 * |
PARK J H ET AL: "CORBA-based distributed and replicated resource repository architecture for hierarchically configurable home network" 1 February 2005 (2005-02-01), JOURNAL OF SYSTEMS ARCHITECTURE, ELSEVIER SCIENCE PUBLISHERS BV., AMSTERDAM, NL, PAGE(S) 125 - 142 , XP004722082 ISSN: 1383-7621 * |
POLTAVETS Y ET AL: "IEEE1394 to UPnP software bridge structure" 8 January 2005 (2005-01-08), CONSUMER ELECTRONICS, 2005. ICCE. 2005 DIGEST OF TECHNICAL PAPERS. INT ERNATIONAL CONFERENCE ON LAS VEGAS, NV, USA JAN. 8-12, 2005, PISCATAWAY, NJ, USA,IEEE, PAGE(S) 375 - 376 , XP010796688 ISBN: 978-0-7803-8838-3 * |
PONZO J., GRUBER O.: "Integrating Web technologies in Eclipse" IBM SYSTEM JOURNAL, vol. 44, no. 2, 2005, XP002482315 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009136325A1 (en) * | 2008-05-09 | 2009-11-12 | Koninklijke Philips Electronics N. V. | System and method for processing application logic of a virtual and a real-world ambient intelligence environment |
Also Published As
Publication number | Publication date |
---|---|
US8595754B2 (en) | 2013-11-26 |
US20080244614A1 (en) | 2008-10-02 |
CN101331455A (en) | 2008-12-24 |
EP1949216B1 (en) | 2018-12-05 |
EP1949216A2 (en) | 2008-07-30 |
WO2007026321A3 (en) | 2008-07-31 |
CN101331455B (en) | 2015-09-16 |
KR20080049809A (en) | 2008-06-04 |
KR101370321B1 (en) | 2014-03-06 |
TWI417788B (en) | 2013-12-01 |
TW200729031A (en) | 2007-08-01 |
TR201901711T4 (en) | 2019-02-21 |
JP2009507291A (en) | 2009-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7937670B2 (en) | Data sharing system, method and software tool | |
US7216351B1 (en) | Systems and methods for synchronizing multi-modal interactions | |
US7739589B2 (en) | Extending markup of a browser using a plug-in framework | |
US8516486B2 (en) | Loading applications in non-designated environments | |
US7752256B2 (en) | Presentation server | |
US8578395B2 (en) | Common component framework | |
US20070067418A1 (en) | Object oriented web application framework | |
JP2004533736A (en) | Method and apparatus for reformatting content for display on interactive television | |
EP1949216B1 (en) | A data processing system and a method of operating a rendering platform | |
WO2014075509A1 (en) | Method and device for browser to process page element | |
JP2009509216A (en) | Extensible remote tag markup system and method | |
US6829758B1 (en) | Interface markup language and method for making application code | |
US20140095454A1 (en) | Message Validation in a Service-Oriented Architecture | |
US20060168102A1 (en) | Cooperation between web applications | |
KR20090056504A (en) | Proxy, terminal, method for processing the document object model events for modalities | |
WO2012063282A1 (en) | Operating method and system for mashup application | |
Fay | An Architecture for Distributed Applications on the Internet: Overview of Microsoft? s. NET Platform | |
JP4140878B2 (en) | Method and system for implementing multimodal browsing and conversational markup languages | |
Jendrock et al. | The Java EE 6 tutorial: advanced topics | |
US10095801B2 (en) | Providing interaction between a first content set and a second content set in a computer system | |
Pihkala et al. | A Browser Framework for Hybrid XML Documents. | |
KR20030093355A (en) | System and method for writing a hypermedia file to a multimedia storage device | |
Pollak | Simply Lift | |
KR101414862B1 (en) | Method and apparatus for web service supporting movability of web object | |
Ciubotaru et al. | Client-Side Network Programming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200680031773.X Country of ref document: CN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2006795835 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 12064826 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2008528635 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020087007894 Country of ref document: KR |
|
WWP | Wipo information: published in national office |
Ref document number: 2006795835 Country of ref document: EP |