Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DATA MANAGING APPARATUS AND METHOD FOR REPRODUCING INTERACTIVE DIGITAL CONTENT, AND INFORMATION STORAGE MEDIUM THEREFOR
Document Type and Number:
WIPO Patent Application WO/2004/012096
Kind Code:
A1
Abstract:
Provided are a data managing apparatus and method for reproducing interactive digital content, and an information storage medium therefor, in which transferring information and sharing system parameters related to reproduction of audio/video data, between markup documents are enabled in a reproducing apparatus which reproduces interactive digital content created by using a markup language. The data managing apparatus comprises a data storage unit which is capable of storing and/or reading data; and a presentation engine which controls the data storage unit according to a command program contained in an input markup document. By using the data managing apparatus, the browser does not need to be redefined, and transferring information and/or sharing system parameters between markup documents are enabled without heavily loading to the CPU.

Inventors:
JUNG KIL-SOO
CHUNG HYUN-KWON
PARK SUNG-WOOK
Application Number:
PCT/KR2003/000614
Publication Date:
February 05, 2004
Filing Date:
March 27, 2003
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SAMSUNG ELECTRONICS CO LTD (KR)
International Classes:
G06F17/00; (IPC1-7): G06F17/00
Foreign References:
KR20020023048A2002-03-28
KR20020057709A2002-07-12
KR010092449A
Attorney, Agent or Firm:
Lee, Young-pil (1571-18 Seocho-don, Seocho-gu Seoul 137-874, KR)
Download PDF:
Claims:
What is claimed is:
1. A data managing apparatus for reproducing interactive digital content, comprising: a data storage unit which is capable of storing and/or reading data; and a presentation engine which controls the data storage unit according to a command program contained in an input markup document.
2. The data managing apparatus of claim 1, wherein the presentation engine comprises: a parser which verifies the syntax of the markup document; a document object model (DOM) tree forming unit which receives the markup document from the parser, interprets the structure of the document, and extracts the command program; and an interpreter which receives the extracted command program from the DOM tree forming unit and controls the data storage unit.
3. The data managing apparatus of claim 1, wherein the command program is written in a script language.
4. The data managing apparatus of claim 1, wherein the command program comprises a cookie generation command program, and according to the cookie generation command program, the presentation engine generates cookie information containing predetermined target information and stores the cookie information in the data storage unit.
5. The data managing apparatus of claim 4, wherein the data storage unit comprises a nonvolatile data storage unit; and/or a volatile data storage unit, and according to cookie storage attribute information contained in the cookie generation command program, the presentation engine stores the cookie information in one of the nonvolatile data storage unit or the volatile data storage unit.
6. The data managing apparatus of claim 5, wherein if the cookie information is stored in the nonvolatile data storage unit, the presentation engine includes digital content identification information contained in the command program in the cookie information and stores the cookie information.
7. The data managing apparatus of claim 6, wherein if a first markup document is input, the presentation engine searches the nonvolatile data storage unit for cookie information containing the same digital content identification information as digital content identification information contained in the first markup document, and reads the cookie information.
8. The data managing apparatus of claim 4, further comprising: a decoder which receives audio/video (AV) data and decodes the AV data, wherein the cookie generation command program is a command program which commands that predetermined target information be fetched from the decoder, cookie information containing the predetermined target information be generated, and the generated cookie information be stored in the data storage unit.
9. The data managing apparatus of claim 4, wherein the cookie generation command program is a command program which commands that cookie information containing predetermined target information included in the markup document be generated, and the generated cookie information be stored in the data storage unit.
10. The data managing apparatus of claim 4, wherein the presentation engine further receives data from a user, and the cookie generation command program is a command program which commands that cookie information containing predetermined target information included in the input data from the user be generated, and the generated cookie information be stored in the data storage unit.
11. The data managing apparatus of claim 1, wherein the command program comprises a cookie reference command program, and according to the cookie reference command program, the presentation engine searches for at least one cookie information item stored in advance in the data storage unit, and extracts predetermined target information.
12. The data managing apparatus of claim 1, wherein the command program comprises a cookie deletion command program, and according to the cookie deletion command program, the presentation engine searches for at least one cookie information item stored in advance in the data storage unit, and deletes cookie information corresponding to the item.
13. The data managing apparatus of claim 4, wherein the cookie information includes at least first information which defines an interactive digital content reproducing apparatus capable of using the cookie information, and second information which indicates the path of a markup document using the target information, and the target information includes a name that identifies the target information and the value of the target information.
14. The data managing apparatus of claim 13, wherein the cookie information further includes third information which defines the duration of the cookie information.
15. The data managing apparatus of claim 13, wherein if cookie information having the same first information and second information, and the same name for identifying the target information as the cookie information generated according to the cookie generation command program is already stored in the data storage unit, the presentation engine overwrites the stored cookie information with the generated cookie information.
16. The data managing apparatus of claim 13, wherein in the search for extracting target information according to the cookie reference command program, the presentation engine searches for cookie information having the same first information and second information as in the command program.
17. The data managing apparatus of claim 16, wherein in the search, the presentation engine searches for cookie information having the same name for identifying the target information as in the command program.
18. A data managing method for reproducing interactive digital content, comprising: (a) receiving a markup document containing a predetermined command program; (b) parsing for verifying the syntax of the markup document; (c) extracting the command program by interpreting the document structure of the markup document; and (d) controlling a data storage unit according to the command program.
19. The data managing method of claim 18, wherein the command program is written in a script language.
20. The data managing method of claim 18, wherein the command program comprises a cookie generation command program, and the step (d) comprises: (d1) according to the cookie generation command program, generating cookie information containing predetermined target information; and (d2) storing the generated cookie information in the data storage unit.
21. The data managing method of claim 20, wherein in the step (d2) the data storage unit comprises a nonvolatile data storage unit; and/or a volatile data storage unit, and according to cookie storage attribute information contained in the cookie generation command program, the cookie information is stored in one of the nonvolatile data storage unit or the volatile data storage unit.
22. The data managing method of claim 21, wherein in the step (d2) if the cookie information is stored in the nonvolatile data storage unit, digital content identification information contained in the command program is included in the cookie information and the cookie information is stored.
23. The data managing method of claim 20, wherein in the step (d1) predetermined target information is fetched from a decoder which decodes AV data and the cookie information is generated.
24. The data managing method of claim 20, wherein in the step (d1) cookie information containing predetermined target information included in the input markup document is generated.
25. The data managing method of claim 20, before the step (d) further comprising: (e) receiving data from a user, wherein in the step (d1) cookie information containing predetermined target information included in the input data form the user is generated.
26. The data managing method of claim 18, wherein the command program comprises a cookie reference command program, and the step (d) comprises: (d3) according to the cookie reference command program, searching for at least one cookie information item stored in advance in the data storage unit ; and (d4) extracting predetermined target information from the data storage unit.
27. The data managing method of claim 18, wherein the command program comprises a cookie deletion command program, and the step (d) comprises: (d5) according to the cookie deletion command program, searching for at least one cookie information item stored in advance in the data storage unit; and (d6) deleting the found cookie information.
28. The data managing method of claim 18, wherein the cookie information includes at least first information which defines an interactive digital content reproducing apparatus capable of using the cookie information effectively, and second information which indicates the path of a markup document using the target information effectively, and the target information is a pair of a name that identifies the target information and the value of the target information.
29. The data managing method of claim 28, wherein the cookie information further includes third information which defines the duration of the cookie information.
30. The data managing method of claim 28, wherein in the step (d2), if cookie information having the same first information and second information, and the same name for identifying the target information as the cookie information generated according to the cookie generation command program is already stored in the data storage unit, the stored cookie information is overwritten with the generated cookie information.
31. The data managing method of claim 29, wherein in the step (d3), in the search for extracting target information according to the cookie reference command program, cookie information having the same first information and second information as in the command program is searched for.
32. The data managing method of claim 31, wherein in the step (d3) cookie information having the same name for identifying the target information as in the command program is extracted.
33. A data managing method for reproducing interactive digital content, comprising: (a) receiving a markup document containing digital content identification information for the first time; (b) searching a nonvolatile data storage unit for cookie information having the same digital content identification information as the digital content identification information and predetermined target information; and (c) reading the predetermined target information contained in the found cookie information.
34. The data managing method of claim 33, wherein in the step (b), according to a cookie generation command program included in a markup document which is input previously, cookie information stored in the nonvolatile data storage unit is generated such that the cookie information includes the digital content identification information and the predetermined target information, and according to cookie storage attribute information included in the cookie generation command program, the cookie information is stored in the nonvolatile data storage unit.
35. The data managing method of claim 33, further comprising: (d) another markup document being requested; (e) receiving the requested markup document containing a predetermined command program; (f) parsing by verifying the syntax of the markup document; (g) extracting the command program by interpreting the document structure of the markup document; and (h) controlling a data storage unit according to the command program.
36. An information storage medium comprising: AV data; and a markup document which reproduces the AV data in an interactive manner, wherein the markup document contains a predetermined command program, and the predetermined command program is performed by an interactive digital content reproducing apparatus to control a data storage unit included in the interactive digital content reproducing apparatus.
37. The information storage medium of claim 36, wherein the command program includes digital content identification information.
38. The information storage medium of claim 36, wherein the command program is written in a script language.
39. The information storage medium of claim 36, wherein the command program comprises a cookie generation command program, and the cookie generation command program performs control so that the interactive digital content reproducing apparatus generates cookie information containing predetermined target information and stores in the data storage unit.
40. The information storage medium of claim 39, wherein the data storage unit comprises a nonvolatile data storage unit and/or a volatile data storage unit, and the cookie generation command program performs control so that according to cookie storage attribute information contained in the cookie generation command program, the interactive digital content reproducing apparatus stores the cookie information in one of the nonvolatile data storage unit or the volatile data storage unit.
41. ; The information storage medium of claim 40, wherein if the cookie information is controlled to be stored in the nonvolatile data storage unit, the cookie generation command program performs a control so that the digital content identification information contained in the command program is included in the cookie information and the cookie information is stored in the nonvolatile data storage unit.
42. The information storage medium of claim 39, wherein the cookie generation command program performs control so that predetermined target information is fetched from a decoder which decodes the AV data, cookie information containing the predetermined target information is generated, and the generated cookie information is stored in the data storage unit.
43. The information storage medium of claim 39, wherein the cookie generation command program performs control so that cookie information containing predetermined target information included in the markup document is generated, and the generated cookie information is stored in the data storage unit.
44. The information storage medium of claim 39, wherein the interactive digital content reproducing apparatus further receives data from a user, and the cookie generation command program performs a control so that cookie information containing predetermined target information included in the input data from the user is generated, and the generated cookie information is stored in the data storage unit.
45. The information storage medium of claim 36, wherein the command program comprises a cookie reference command program, and the cookie reference command program performs a control so that the interactive digital content reproducing apparatus searches for at least one cookie information item stored in advance in the data storage unit, and extracts predetermined target information.
46. The information storage medium of claim 36, wherein the command program comprises a cookie deletion command program, and the cookie deletion command program performs a control so that the interactive digital content reproducing apparatus searches for at least one cookie information item stored in advance in the data storage unit, and deletes cookie information corresponding to the item.
47. The information storage medium of claim 39, wherein the cookie generation command program performs a control so as to generate the cookie information which includes at least first information which defines an interactive digital content reproducing apparatus capable of using the cookie information effectively, second information which indicates the path of a markup document using the target information effectively, and the target information which is a pair of a name that identifies the target information and the value of the target information.
48. The information storage medium of claim 47, wherein the cookie information further includes third information which defines the duration of the cookie information.
49. The information storage medium of claim 45, wherein the cookie information includes at least first information which defines an interactive digital content reproducing apparatus capable of using the cookie information effectively, second information which indicates the path of a markup document using the target information effectively, and the target information which is a pair of a name that identifies the target information and the value of the target information, and the cookie reference command program performs control so that cookie information having the same first information, second information, and name for identifying the target information as in the command program is searched for and the value of the target information is extracted.
50. The information storage medium of claim 46, wherein the cookie information includes at least first information which defines an interactive digital content reproducing apparatus capable of using the cookie information effectively, second information which indicates the path of a markup document using the target information effectively, and the target information which is a pair of a name that identifies the target information and the value of the target information, and the cookie deletion command program performs control so that cookie information having the same first information, second information, and name for identifying the target information as in the command program is searched for and the found cookie information is deleted.
51. A computer readable medium having embodied thereon a program for performing the method of claim 18.
Description:
DATA MANAGING APPARATUS AND METHOD FOR REPRODUCING INTERACTIVE DIGITAL CONTENT, AND INFORMATION STORAGE MEDIUM THEREFOR Technical Field The present invention relates to a data managing apparatus and method and an information storage medium therefor, and more particularly, to a data managing apparatus and method by which transferring information and sharing system parameters related to audio/video reproduction between markup documents are enabled in a reproducing apparatus for reproducing interactive digital content produced by using a markup language, and an information storage medium therefor.

Background Art Interactive digital content refers to data stored in an information storage medium, for example, an interactive digital versatile disc (DVD), in which audio/video (AV) data and a markup document for supporting an interactive function are stored together. The markup document is a document written in a markup language such as a hyper text markup language (HTML) or an extended markup language (XML).

The AV data recorded on an interactive DVD may be reproduced in the same manner as AV data recorded on an ordinary DVD-video, or an AV screen, in which AV data is reproduced and displayed through a browser, may be embedded in a display window defined in a markup document and displayed with the markup document. In the latter case, the interactive function is supported. For example, when the AV data is a movie title, the interactive function is shown as a variety of interactive digital contents in which a movie is being shown on a part of the display window, the caption is displayed on another part of the display window, and a still picture advertising a trailer is put on still another part.

Meanwhile, a markup document includes a script tag written in a script language in order to implement a simple function which cannot be expressed by the markup language. A script is a program or a list of instructions that are interpreted or executed by other programs. Among the script languages, there are Perl, Java Script, and REXX that is used in an IBM mainframe. Java script contained in a web page is executed by a web browser, that is, by a client side. In general, script languages are more structured, and can be used more easily and quickly than such languages as C and C++ that need compiling. Accordingly, the script languages are appropriate for generating a program having a very limited capability, or programs that can be reused after being connected to an already compiled program.

However, since information generated in a markup document containing this script is erased when the document is changed by another document, the information cannot be transferred between markup documents. When discs are changed because the digital content is written in a plurality of discs, the same problem occurs such that information cannot be transferred between markup documents stored in different discs. To solve this problem, first, a new browser (viewer) that memorizes all information even when a markup document is changed by another markup document may be defined, or, secondly, an external program such as a Java application may be used so that information can be stored even when a markup document displayed by a browser is changed. However, the former method in which a new browser is defined is inefficient in time, cost and efforts. Also, the latter method, in which an external program such as a Java application is written and used, demands a lot of million instructions per second (MIPS) power of a central processing unit (CPU) in the reproducing apparatus such that the computational burden is too heavy for a home-use reproducing apparatus whose system resources are limited.

Meanwhile, in a web environment, a cookie is used for storing and exchanging information between a client and a server. A cookie is special text data which a web page inserts to the local storage, for example, a hard disc, of a client. Since the cookie is a stateless protocol in which a hyper text transfer protocol (HTTP) that is a web protocol does not memorize what happened before, the web server does not have any records on which page (markup document) was transmitted to the user, and it is difficult to know even whether or not the user visited the web page before. A cookie is usually stored in the lower layer of a browser directory used by a user, for example, in a sub directory of Netscape directory. All cookies on web pages which the user visited are stored in a cookie directory.

A process for exchanging information between a client and a server using a cookie will now be explained briefly.

First, a server selected by an HTTP request of a client provides access to a requested resource as an HTTP response, and the HTTP response containing a SET ROOKIE command, which commands a cookie in the header of the response to be stored in the local data storage apparatus of the client, is transmitted to the client together with the requested markup document. The SET COOKIE command is generated when the user requests data for the first time from a predetermined server through a browser. Information stored by a cookie may include, for example, the domain address of a uniform resource identifier (URI) for which the cookie can be used effectively, the directory of a URI for which the cookie can be used effectively, the name and value of the cookie, and date when the cookie ends.

The client parses and renders a markup document file transmitted by the server.

The client stores information in the HTTP header in the local storage according to a function defined in the markup document.

When the client accesses the server again, the client confirms the domain and route of a server input by the user, accesses cookie information corresponding to the server stored in the local storage of the client, adds the cookie information to the HTTP header, and transmits the cookie information to the server. Accordingly, information is exchanged between the server and client.

Disclosure of the Invention The present invention provides a data managing apparatus and method, by which predetermined information on a current markup document is stored in an interactive digital content reproducing system by using a cookie and needed information is read by referring to the stored cookie so that transferring information and sharing system parameters related to AV data reproduction between different markup documents are enabled, and an information storage medium therefor.

According to an aspect of the present invention, there is provided a data managing apparatus for reproducing interactive digital content comprising a data storage unit which is capable of storing and/or reading data and a presentation engine which controls the data storage unit according to a command program contained in an input markup document.

The presentation engine comprises a parser which verifies the syntax of the markup document; a document object model (DOM) tree forming unit which receives the markup document from the parser, interprets the structure of the document, and extracts the command program; and an interpreter which receives the extracted command program from the DOM tree forming unit and controls the data storage unit.

The command program may include at least one of a cookie generation command program which commands generation of cookie information, a cookie reference command program which commands

search for at least one cookie information item stored in a data storage unit and fetch of a value of predetermined target information, and a cookie deletion command program which commands search for at least one cookie information item stored in a data storage unit and deletion of predetermined cookie information.

According to another aspect of the present invention, there is provided a data managing method for reproducing interactive digital content comprising (a) receiving a markup document containing a predetermined command program; (b) parsing for verifying the syntax of the markup document; (c) extracting the command program by interpreting the document structure of the markup document; and (d) controlling a data storage unit according to the command program.

In the method, the command program may comprise a cookie generation command program, and the step (d) may comprise (d1) according to the cookie generation command program, generating cookie information containing predetermined target information; and (d2) storing the generated cookie information in the data storage unit.

In the method, the command program may comprise a cookie reference command program, and the step (d) may comprise (d3) according to the cookie reference command program, searching for at least one cookie information item stored in advance in the data storage unit; and (d4) extracting predetermined target information from the data storage unit.

In the method, the command program may comprise a cookie deletion command program, and the step (d) may comprise (d5) according to the cookie deletion command program, searching for at least one cookie information item stored in advance in the data storage unit; and (d6) deleting the found cookie information.

According to still another aspect of the present invention, there is provided an information storage medium comprising AV data; and a markup document which reproduces the AV data in an interactive

manner, wherein the markup document contains a predetermined command program, and the predetermined command program is performed by an interactive digital content reproducing apparatus to control a data storage unit included in the interactive digital content reproducing apparatus.

In the information storage medium of the present invention, the command program may comprise a cookie generation command program, and the cookie generation command program may perform a control so that the interactive digital content reproducing apparatus generates cookie information containing predetermined target information and stores the cookie information in the data storage unit.

In the information storage medium, the command program may comprise a cookie reference command program, and the cookie reference command program may perform a control so that the interactive digital content reproducing apparatus searches for at least one cookie information item stored in advance in the data storage unit, and extracts predetermined target information.

In the information storage medium, the command program may comprise a cookie deletion command program, and the cookie deletion command program may perform a control so that the interactive digital content reproducing apparatus searches for at least one cookie information item stored in advance in the data storage unit, and deletes cookie information corresponding to the item.

Brief Description of the Drawings FIG. 1 is a block diagram showing a preferred embodiment of a data managing apparatus for reproducing interactive digital content according to the present invention; FIG. 2 is a block diagram for explaining a detailed structure of the presentation engine shown in FIG. 1;

FIG. 3 is a diagram showing the directory structure of data stored in a digital content storage medium; FIG. 4 is a flowchart for explaining a preferred embodiment of a data managing method for reproducing interactive digital content according to the present invention; FIG. 5 is a flowchart for explaining a preferred embodiment of step 340 shown in FIG. 4; FIG. 6 is a flowchart for explaining another preferred embodiment of step 340 shown in FIG. 4; FIG. 7 is a flowchart for explaining still another preferred embodiment of step 340 shown in FIG. 4; and FIG. 8 is a flowchart for explaining another preferred embodiment of the data managing method for reproducing interactive digital content according to the present invention.

Best mode for carrying out the Invention The present invention will now be described in more detail with reference to the accompanying drawing.

Referring to FIGS. 1 through 3, a data managing apparatus for reproducing interactive digital content according to the present invention will now be explained.

FIG. 1 is a block diagram showing a preferred embodiment of a data managing apparatus for reproducing interactive digital content according to the present invention. Referring to FIG. 1, the data managing apparatus comprises a reading unit 120, a decoder 130, a presentation engine 140, a data storage unit 150, a blender 160, a network 170, and a network data receiving unit 180. The data storage unit 150 comprises a non-volatile data storage unit 151 and a volatile data storage unit 153.

First, a digital content storage medium 110 is a medium for storing interactive digital content, for example, an interactive DVD. The

interactive DVD stores AV data, markup documents, and other data.

FIG. 3 is a diagram showing the directory structure of data stored in the digital content storage medium 110 according to the present invention. The directory structure includes VIDEO TS directory for storing AV data, DVDENAV directory for storing data supporting interactive functions, such as markup documents, and other files.

The markup document contains a command program which controls the data storage unit 150. The presentation engine 140 interprets the command program and executes commands. The command program is written in the Java script language. Also, the command program may be written in other languages, for example, the Visual Basic script language. The command program contained in the markup document is written such that the command program has at least one of a cookie generation command program, a cookie reference program, and a cookie deletion program. The cookie generation command program commands that predetermined information on the current document be stored in the form of a cookie in the data storage unit 150. The cookie reference command program commands that predetermined information previously stored be fetched by referring to the stored cookie. The cookie deletion command program commands that a cookie containing predetermined information be deleted. The command program is written by the content creator when the markup document is written.

An example of a command program written in the head tag of a markup document that is written in DVD-HTML version 1.0, which can be defined as a markup language for interactive DVDs, will now be explained.

<? xml version ="1. 0" encoding="UTF-8" ? > <! DOCTYPE html PUBLIC"-//DVD//DTD XHTML DVD-HTML 1. 0//EN" "http://www. dvdforum. org/envideo/dtd/dvdhtml-1-0. dtd"> <html> <head> <title>Embodiment </title> <meta name="diskid"content="disk. 1"/> <meta name="contentid" content="3AE86B20-7BE8-11 D1-ABE6-OOAOC905F375"/> <script type= text/ecmascript> var playstate//a variable for storing the reproducing state of DVD video embedded in the current page var parental-level//a variable for storing a parental level set to the current reproducing apparatus playstate = InteractiveDVD. PlayState parental-level = InteractiveDVD. ParentalLevel </script> <script type ="text/ecmascript"src="cookie. js"> //To reduce the size of a document, by externally referring to functions setCookie (), getCookie (), delCookie () </script> <script type ="text/ecmascript"> //To store needed information setCookie ("parental_level", parental_level,"permanent", "/dvd_enav","dvd :") setCookie ("play_state", playstate) //To obtain needed information getCookie ("user_input","dvd :") II An example for obtaining a user input value stored in the previous page getCookie ("form_1")//An example for referring to the contents stored in the first space of the previous page //To delete stored information delCookie ("form_2","dvd :")//An example for deleting the contents stored in the second space of the previous page //-> </script> </head> <body> </body> </html>

The command program in the above embodiment is written in the ECMA script.

In the head part of the markup document, "contentid"that is digital content identification information is defined as "3AE86B20-7BE8-11D1-ABE6-OOAOC905F375". Also,"diskid"that is information indicating the volume number of a disk when digital content is formed with a plurality of disks is defined as"disk. 1", which indicates the disk is the first disk of the digital content. With the digital content identification information, the digital content uniquely indicates a predetermined video title or a predetermined game title.

The"playstate"is a system variable for storing a state of the reproducing states, that is, reproduction, pause, stop, etc. , of the DVD video embedded in the current page (markup document), and "parental level"is a variable for storing parental_level that is set to the current reproducing apparatus. The parental-level is information indicating a system variable set to the reproducing apparatus in order to prevent reproduction of a video program that is inappropriate to children or teenagers, or information indicating the permitted age to watch the

digital content in the DVD video. For example, NC-17 indicates that the permitted age to watch the digital content is 17.

The variables playstate and parental-level receive property values of InteractiveDVD. PlayState and InteractiveDVD. ParentalLevel, respectively, from the decoder 130 and store as respective variable values. Application program interface (API) is a set of functions for interfacing a DVD video program with a markup document, and the API can be broken down into three types, "method","property", and"event".

An example of the API is an API defined in InterActual's Application Program Interface Specification. In the preferred embodiment of the present invention, the API of InterActual will be referred to.

In the embodiment, it is shown that the three programs, the cookie generation command program, the cookie reference command program, and the cookie deletion command program, are included.

First, the cookie generation command program part generates a cookie by using"setCookie"function. Among the elements of the cookie,"parental_level"and parental_level correspond to the name and the value, respectively, of target information to be stored in the data storage unit 150, for example, information on a system variable.

The"permanent"information indicates that the generated cookie information will be stored in the non-volatile data storage unit 151 of the data storage unit 150. That is, the information is an example of attribute information which determines where generated cookie information is to be stored. If there is no"permanent"information, the generated cookie information is stored in the volatile data storage unit 151.

If the digital content reproducing apparatus is turned off and then again turned on, or if the digital content is stored on a plurality of disks and after removing a current disk from the reproducing apparatus, another disk is placed therein, information to be used again in a new markup document is stored in the form of cookie information in the non-volatile data storage unit 151.

The cookie attribute information may be expressed by other methods than the method using the presence of the"permanent" information. For example, date information indicating the duration of cookie information may be used as cookie storage attribute information.

That is, if the date information is for a future date when compared to a current date, the cookie information is stored in the non-volatile data storage unit 151. Accordingly, after a predetermined duration, the cookie information is deleted. In another method, when there is no duration information, the cookie information may be deleted when a viewer indicating a markup document finishes.

In the cookie information stored in the non-volatile data storage unit 151, the digital content identification information described in the head part of the markup document is included. With the digital content identification information, information that is needed later by another markup document related to the identical digital content can be reused by searching the non-volatile data storage unit 151 for the cookie information having the identical digital content identification information.

The cookie information stored in the non-volatile data storage unit 151 relates to a markup document which is first input, that is, a markup document which is first input after the data managing apparatus is turned on, or after a new disk is placed.

The"/dvd_enav"is information indicating a path, and is used to name a path in a domain (the reproducing apparatus) in which the stored information is effectively used. If the stored information corresponds to an effective domain, the path name of the current markup document is compared with the path attribute stored in the data storage unit 150. If the path name matches the path attribute, it is determined that the stored information is effective. Path"/samsung"may be regarded as a path matching"/samsungelectronics", or"/samsung/index. html" which contains the same character string. Also, only a path that has accurately the same text as a path attribute may be defined as an identical path.

The following is a program showing an example of defining a "setCookie"function. function setCookie (name, value) { //To obtain the number of parameters of function setCookie var argc = setCookie. arguments. length //To obtain an array of parameters of function setCookie var argv = setCookie. arguments //Parameter #2 is a value for expires var expires = (2<argc > 4) ? argv [2] : null ; //Paramter #3 is a value for path var path = (3<argc > 5) ? argv [3] : null ; //Parameter #4 is a value for path var path = (4<argc) ? argv [4] : null ; //Parameter #5 is a value for domain var domain = (5<argc) ? argv [5] : null ; //Parameter #6 is a value for secure var secure = (6<argc) ? argv [6] : null ; //To set information to cookie attributes document. cookie = name +"="+ escape (value) + ((expires==null) ?"": ("; expires="+ expires + ((path==null) ?"": ("; path="+ path)) + ((domain==null) ?"" : ("; domain="+ domain)) + ((secure==true) ?"; secure":"") ; }

By"getCookie"function, the cookie reference command program searches a plurality of cookies stored in the data storage unit 150, for a desired cookie, and fetches the value of the desired target information.

An example in which the value of target information corresponding to the name of the target information is fetched by the program code getCookie ("userinput","dvd : ") is described in the above program. With the name"user input"of target information as a key value, the script interpreter 147 of the presentation engine 140, first, searches the data storage unit 150 storing a plurality of cookies, for cookies having information indicating an effective reproducing apparatus as"dvd:", and then searches for cookies having the same path information as the path of the current markup document. Among those cookies, the script interpreter 147 searches for a cookie having the name"user input"of the target information, and fetches the value"user input"of the target information of the cookie.

The following is a program showing an example of defining "getCookie"function. function getCookie (name) { var Found = false //Search by checking effective information of a corresponding domain var domain start, domain end var i = 0 while (i <= document. cookie. length) { domain-start i domain end = domain start + valid domain. length if (document. cookie. substring (domainstart, domainend) == valid_domain) { in if it is effective domain information, var start, end var j = valid domain. length + 1 //Search the entire stored character string while (j <= document. cookie. length) { start = j end = start + name. length //if there is a character string the same as name if (document. cookie. substring (start, end) == name) { Found = true break } j++ } //if name character string is found in stored information if (Found==true { start = end +1 end = document. cookie. indexOf (" ;", start) //Meaning the last part (There is no" ;" for the last part) if (end < start) end = document. cookie. length //extract a value corresponding to name and return it return document. cookie. substring (start, end) } //if it is not found return"" ) // if there is no effective domain information return "" }

By"delCookie"function, the cookie deletion command program searches a plurality of cookies stored in the data storage unit 150, for a desired cookie and deletes the desired cookie. An example deiCookie ("form 2", dvd:") in which a cookie having the name of target information is deleted is described in the above program. With the name"form 2"of target information as a key value, the script interpreter 147 of the presentation engine 140, first, searches the data storage unit 150 storing a plurality of cookies, for cookies having information indicating an effective reproducing apparatus as"dvd:", and then searches for cookies having the same path information as the path of the current markup document. Among those cookies, the script interpreter 147 deletes cookies having the name of target information"form 2".

The following is a program showing an example of defining a "delCookie"function. function delCookie (name, valid_domain) { var today = new Date () //to make a past time today. setTime (today. getTime ()-1) //to find information by name var value = getCookie (name, valid_domain) if (value ! ="") document. cookie = name +"="+ value +"; expires="+ today. toGMTString ()

Meanwhile, in the embodiment related to the program <script type ="text/ecmascript"src="cookie. js"> described in the head tag, functions "setCookie","getCookie", and"delCookie"are stored as files outside the program, that is, in the digital content storage medium 110. The functions are referred to by the presentation engine 140 when the command program is executed. The size of the markup document can be reduced by referring to the functions outside the program. It is shown in FIG. 3 that a file"cookie. js" is in the DVDJENAV directory, and this file is an example of a file defining those functions. Also, the functions may be defined in the markup document.

Next, the reading unit 120 reads data from the digital content storage medium 110, outputs AV data to the decoder 130, and outputs data, including the markup document related to the interactive functions, to the presentation engine 140.

AV data or markup document and other data may be transmitted through the network 170. If digital content of an online game is transmitted through the network 170, the network data receiving unit 180 receives the digital content, outputs the AV data to the decoder 130, and outputs the markup document and other data to the presentation engine 140.

The decoder 130 receives and decodes the AV data. For example, video data encoded in the MPEG method is decoded or audio data encoded in the MPEG or AC3 method is decoded.

The presentation engine 140 receives the markup document and other data, and according to the command program included in the markup document, controls the data storage unit 150. Also, the presentation engine 140 receives an input user operation (UOP) from the user and performs interactive functions. The UOP includes, for example, commands related to reproduction such as play, pause, and stop that are input by the user through a remote controller, and

commands related to navigation key inputs needed when the interactive digital content is reproduced. On a display apparatus, a screen in which AV data is reproduced is embedded in the markup document is shown through a browser to the user.

According to the control of the presentation engine 140 which interprets and performs the command program included in the markup document, the data storage unit 150 stores generated cookie information, outputs the cookie information to the presentation engine 140, or deletes the cookie information. The data storage unit 150 has the non-volatile data storage unit 151 and the volatile data storage unit 153. As described above, if the digital content reproducing apparatus is turned off and then turned on again, or if the digital content is stored on a plurality of disks and the current disk is removed from the reproducing apparatus and then another disk is placed therein, information which should be used again in the markup document is stored in the form of cookie information in the non-volatile data storage unit 151 according to the control of the presentation engine 140. Whether the generated cookie information is stored in the non-volatile data storage unit 151 or in the volatile data storage unit 152 is determined by the cookie storage attribute information contained in the cookie generation command program. For example, if the cookie storage attribute information is "permanent", the generated cookie information is stored in the non-volatile data storage unit 151. In the cookie information stored in the non-volatile data storage unit 151, the digital content identification information specified in the head part is included. Information that is needed later by another markup document related to the identical digital content can be reused by searching the non-volatile data storage unit 151 for the cookie information having the identical digital content identification information.

The presentation engine 140 interprets and performs the cookie reference command program and searches cookie information stored in

the non-volatile data storage unit 151 or the volatile data storage unit 153, and reads predetermined target information.

The presentation engine 140 interprets and performs the cookie deletion command program and searches the non-volatile data storage unit 151 or the volatile data storage unit 153 and deletes cookie information containing predetermined target information.

FIG. 2 is a block diagram for explaining a detailed structure of the presentation engine 140 shown in FIG. 1, and the presentation engine 140 comprises a parser 141, a document object model (DOM) tree forming unit 143, a presentation method determining unit 145, a script interpreter 147, and a layout formatter 149.

First, the parser 141 comprises an HTML parser 141a and cascading style sheet (CSS) parser 141 b. When an HTML markup document is input, the HTML parser 141a verifies whether or not the document complies with the HTML syntax.

The CSS parser 141 b verifies whether or not the markup document complies with display rules on colors and fonts.

The DOM tree forming unit 143 makes the markup document structured. That is, the DOM tree forming unit 143 divides the markup document into a head part and a body part, and divides the head part again into a title and tag parts, and by doing so, makes the markup document a tree format such that the data is structured. Through the structuring process in the DOM tree forming unit 143, the command program is also extracted.

The presentation method determining unit 145 determines the display method including the colors and fonts.

The script interpreter 147 receives the extracted command program from the DOM tree forming unit 143, generates a cookie, and stores the cookie in the data storage unit 150, or refers to the stored cookie, or delete the stored cookie. By doing so, the script interpreter 147 performs operations for controlling the data storage unit 150.

The layout formatter 149 determines a layout format for the screen according to the layout information indicated by each tag of the markup document and outputs the formats to the blender 160.

Referring to attached drawings, a data managing method for reproducing interactive digital content according to the present invention will now be explained.

FIG. 4 is a flowchart for explaining a data managing method which is performed in the data managing apparatus for reproducing interactive digital content according to the present invention shown in FIG. 2.

First, the markup document stored in the digital content storage medium 110 is read by the reading unit 120 and input to the parser 141, or the markup document transmitted through the network 170 is input to the parser 141 by the network data receiving unit 180 in step 310.

The parser 141 verifies whether or not the markup document complies with the syntax of the markup language and with the display rules on the colors and fonts in step 320.

The DOM tree forming unit 143 interprets the structure of the markup document and extracts the command program for controlling the data storage unit 150 in step 330.

The script interpreter 147 receives the extracted command program from the DOM tree forming unit 143, generates a cookie, and stores the cookie in the data storage unit 150, or refers to the stored cookies, or deletes the cookie, and by doing so, controls the data storage unit 150 in step 340.

FIG. 5 is a flowchart for explaining the detailed structure of the step 340 shown in FIG. 4, in which the command program is the cookie generation command program.

First, the script interpreter 147 generates cookie information containing target information to be stored in step 341. As described above, the cookie information includes information defining an effective reproducing apparatus, information indicating the path of the markup

document in which the target information is effectively used, and the target information. Also, the target information is a pair of the name which identifies the target information and the value of the target information. Also, the cookie information may be generated such that information on the duration which defines the effective period of the cookie information is also included.

After the step 341, the script interpreter 147 determines whether or not the generated cookie information is to be stored in the non-volatile data storage unit 151 in step 342. According to the cookie storage attribute information contained in the cookie generation command program, the script interpreter 147 determines whether to store the cookie information in the non-volatile data storage unit 151 or in the volatile data storage unit 153.

The script interpreter 147 stores the generated cookie information in the data storage unit 150 in step 343. If the cookie storage attribute information contained in the cookie generation command program commands the non-volatile data storage unit 151 to store the cookie information, the cookie information is stored in the non-volatile data storage unit 151 in step 343a.

If the cookie storage attribute information contained in the cookie generation command program commands the volatile data storage unit 153 to store the cookie information, the cookie information is stored in the volatile data storage unit 153 in step 343b.

FIG. 6 is a flowchart for explaining another preferred embodiment of the step 340 shown in FIG. 4.

First, according to the description of the cookie reference command program, the script interpreter 147 searches a plurality of cookies stored in advance in the data storage unit 150 for desired cookie information in step 344.

The step 344 comprises the following sub steps. The script interpreter 147 receives the name of target information requested by the

cookie reference program in step 344a.

The script interpreter 147 first searches the data storage unit 150 storing the plurality of cookie information items, for cookie information items having the same information defining an effective reproducing apparatus as in the cookie reference command program in step 344b.

Among the plurality of cookie information items having the same information defining an effective reproducing apparatus, the script interpreter 147 searches for cookie information items having the same information indicating a path as in the command program in step 344c.

Among the cookie information items having the same information defining an effective reproducing apparatus and the same information indicating a path as in the command program, the script interpreter 147 searches for a cookie information item having the same name of target information as in the command program, and extracts the value of the target information corresponding to the cookie information item in step 345. Also, when the cookie reference command program does not specify the name of the target information, a plurality of values of target information from a plurality of cookie information items having the same information defining an effective reproducing apparatus and the same information indicating a path may be extracted and used.

FIG. 7 is a flowchart for explaining still another preferred embodiment of the step 340 shown in FIG. 4, in which the command program is the cookie deletion command program.

First, the script interpreter 147 searches the data storage unit 150 storing in advance a plurality of cookie information items, for a cookie information item corresponding to the cookie information to be deleted which is indicated by the cookie deletion command program in step 347.

The step 347 comprises the following sub steps.

The script interpreter 147 receives the name of target information to be deleted according to the cookie deletion command program in step 347a.

The script interpreter 147 searches the data storage unit 150 storing a plurality of cookie information items, for. cookie information items having the same information defining an effective reproducing apparatus as in the command program in step 347b.

The script interpreter 147 searches a plurality of cookie information items having the same information defining an effective reproducing apparatus, for cookie information items having the same information indicating a path as in the command program in step 347c.

The script interpreter 147 searches for a cookie information item having the same name of target information as in the command program and deletes the cookie information item in the data storage unit 150 in step 348.

FIG. 8 is a flowchart for explaining another preferred embodiment of the data managing method performed in the data managing apparatus for reproducing interactive digital content according to the present invention shown in FIGS. 1 and 2.

The data managing apparatus receives the markup document containing digital content identification information for the first time in step 410. It does not matter whether the markup document is stored in the digital content storage medium 110 or is transmitted through the network 170. The markup document which is input for the first time is the markup document which is first input after the data managing apparatus is turned on, or after a new disk is placed.

The data managing apparatus which receives the markup document for the first time searches the non-volatile data storage unit 151 storing a plurality of cookie information items, for a cookie information item having the same digital content identification information as described in the markup document in step 420.

The data managing apparatus reads predetermined target information contained in the cookie information item found in the non-volatile data storage unit 151, and initializes the data managing

apparatus in step 430.

The data managing apparatus determines whether or not another markup document is requested in step 440. If another markup document is requested, the step 310 shown in FIG. 4 is performed and then the steps 320 through 340 are performed. If another markup document is not requested, the process is finished.

The present invention may be embodied in a code program, which can be read by a computer, on a computer readable recording medium.

The computer readable recording medium includes all kinds of recording apparatuses on which computer readable data are stored. The computer readable recording media includes storage media such as magnetic storage media (e. g., ROM's, floppy disks, hard disks, etc.), optically readable media (e. g. , CD-ROMs, DVDs, etc. ) and carrier waves (e. g. , transmissions over the Internet). Also, the computer readable recording media can be stored on computer systems connected through a network and executed in a distributed mode.

The drawing and specification of the invention are provided for illustration only and are not used to limit the scope of the invention set forth in appended claims.

Industrial Applicabilitv As described above, by a data managing apparatus and a method for reproducing interactive digital content, and an information storage medium therefor according to the present invention, an interactive digital content reproducing apparatus is assumed to be a domain, and predetermined information on a current markup document is stored in the data storage unit of the predetermined domain by using cookies.

When a markup document is changed, needed information is read by referring to the stored cookies such that a browser does not need to be redefined, and transferring information and/or sharing system parameters between markup documents are enabled without heavily loading a CPU.