WO2004012096A1 - Data managing apparatus and method for reproducing interactive digital content, and information storage medium therefor - Google Patents

Data managing apparatus and method for reproducing interactive digital content, and information storage medium therefor Download PDF

Info

Publication number
WO2004012096A1
WO2004012096A1 PCT/KR2003/000614 KR0300614W WO2004012096A1 WO 2004012096 A1 WO2004012096 A1 WO 2004012096A1 KR 0300614 W KR0300614 W KR 0300614W WO 2004012096 A1 WO2004012096 A1 WO 2004012096A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
cookie
command program
storage unit
data storage
Prior art date
Application number
PCT/KR2003/000614
Other languages
French (fr)
Inventor
Kil-Soo Jung
Hyun-Kwon Chung
Sung-Wook Park
Original Assignee
Samsung Electronics Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co., Ltd. filed Critical Samsung Electronics Co., Ltd.
Priority to AU2003218807A priority Critical patent/AU2003218807A1/en
Publication of WO2004012096A1 publication Critical patent/WO2004012096A1/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/11Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information not detectable on the record carrier
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs

Definitions

  • 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.
  • 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.
  • the interactive function is supported.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • HTTP hyper text transfer protocol
  • 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 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_COOKIE 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.
  • URI uniform resource identifier
  • 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.
  • 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.
  • 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.
  • 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.
  • 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
  • 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.
  • 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.
  • the command program may comprise a cookie generation command program
  • 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.
  • the command program may comprise a cookie reference command program
  • 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.
  • the command program may comprise a cookie deletion command program
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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
  • 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.
  • 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.
  • 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.
  • a digital content storage medium 1 10 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, DVD_ENAV 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.
  • var playstate // a variable for storing the reproducing state of DVD video embedded in the current page var parentaljevel // a variable for storing a parental level set to the current reproducing apparatus
  • the command program in the above embodiment is written in the ECMA script.
  • 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 "parentaljevel” is a variable for storing parentaljevel that is set to the current reproducing apparatus.
  • the parentaljevel 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.
  • API Application program interface
  • the variables playstate and parentaljevel receive property values of InteractiveDVD. PlayState and InteractiveDVD.ParentalLevel, respectively, from the decoder 130 and store as respective variable values.
  • API Application program interface
  • 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.
  • the cookie generation command program part generates a cookie by using "setCookie" function.
  • "parentaljevel” and parentaljevel 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.
  • the cookie attribute information may be expressed by other methods than the method using the presence of the "permanent" information.
  • 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.
  • the digital content identification information described in the head part of the markup document is included.
  • 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 7dvd__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 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.
  • the script interpreter 147 of the presentation engine 140 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 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 delCookie("form 2",dvd:”) in which a cookie having the name of target information is deleted is described in the above program.
  • the script interpreter 147 of the presentation engine 140 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 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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
  • DOM document object model
  • the parser 141 comprises an HTML parser 141a and cascading style sheet (CSS) parser 141 b.
  • CSS cascading style sheet
  • 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
  • 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.
  • 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.
  • the markup document stored in the digital content storage medium 1 10 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.
  • the script interpreter 147 generates cookie information containing target information to be stored in step 341.
  • 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.
  • the target information is a pair of the name which identifies the target information and the value of the target information.
  • the cookie information may be generated such that information on the duration which defines the effective period of the cookie information is also included.
  • 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.
  • 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.
  • 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.
  • 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
  • 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).
  • the computer readable recording media can be stored on computer systems connected through a network and executed in a distributed mode.
  • 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.
  • 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.

Landscapes

  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Television Signal Processing For Recording (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

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.

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_COOKIE 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 1 10 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, DVD_ENAV 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.17>
<meta name="contentid" content="3AE86B20-7BE8-11 D1-ABE6-00A0C905F375"/>
<script type= text/ecmascript>
var playstate // a variable for storing the reproducing state of DVD video embedded in the current page var parentaljevel // a variable for storing a parental level set to the current reproducing apparatus
playstate = InteractiveDVD.PIayState parentaljevel = 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 setCookiefparentalJevel", parentaljevel, "permanent",
7dvd_enav","dvd:") setCookie("play_state", playstate)
// To obtain needed information getCookie("userJnput","dvd:") // 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-11 D1-ABE6-00A0C905F375". 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 "parentaljevel" is a variable for storing parentaljevel that is set to the current reproducing apparatus. The parentaljevel 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 parentaljevel 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, "parentaljevel" and parentaljevel 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 7dvd__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("userJnput","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(domain_start, domain_end) == valid_domain) { // 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 }
}
// 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 delCookie("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.toGMTStringQ 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 DVDJΞNAV 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 1 10 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 Applicability
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.

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 non-volatile 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 non-volatile 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 non-volatile 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 non-volatile 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 non-volatile 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 non-volatile 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 non-volatile 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 non-volatile 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 non-volatile 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 non-volatile 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 non-volatile 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 non-volatile 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 non-volatile 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 non-volatile 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.
PCT/KR2003/000614 2002-07-27 2003-03-27 Data managing apparatus and method for reproducing interactive digital content, and information storage medium therefor WO2004012096A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2003218807A AU2003218807A1 (en) 2002-07-27 2003-03-27 Data managing apparatus and method for reproducing interactive digital content, and information storage medium therefor

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20020044505 2002-07-27
KR10-2002-0044505 2002-07-27
KR10-2002-0059777 2002-10-01
KR20020059777 2002-10-01

Publications (1)

Publication Number Publication Date
WO2004012096A1 true WO2004012096A1 (en) 2004-02-05

Family

ID=31190420

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2003/000614 WO2004012096A1 (en) 2002-07-27 2003-03-27 Data managing apparatus and method for reproducing interactive digital content, and information storage medium therefor

Country Status (5)

Country Link
KR (1) KR20040012470A (en)
AU (1) AU2003218807A1 (en)
HK (1) HK1084457A1 (en)
RU (1) RU2295760C2 (en)
WO (1) WO2004012096A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008036146A2 (en) 2006-07-14 2008-03-27 Sanofi Pasteur Biologics Co. Construction of recombinant virus vaccines by direct transposon-mediated insertion of foreign immunologic determinants into vector virus proteins

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100636141B1 (en) * 2004-04-30 2006-10-18 삼성전자주식회사 Storage medium recording applications having programming function, reproducing apparatus, and reproducing method thereof
US8103547B2 (en) * 2006-09-18 2012-01-24 Microsoft Corporation Logocons: AD product for brand advertisers
CN101504648A (en) * 2008-11-14 2009-08-12 北京搜狗科技发展有限公司 Method and apparatus for showing web page resources
JP5488180B2 (en) * 2010-04-30 2014-05-14 ソニー株式会社 Content reproduction apparatus, control information providing server, and content reproduction system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020023048A (en) * 2000-09-22 2002-03-28 구자홍 Method for layout of Documents using Extensible Markup Language and system for the same
KR20020057709A (en) * 2001-01-05 2002-07-12 문영웅 XML builder

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020023048A (en) * 2000-09-22 2002-03-28 구자홍 Method for layout of Documents using Extensible Markup Language and system for the same
KR20020057709A (en) * 2001-01-05 2002-07-12 문영웅 XML builder

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008036146A2 (en) 2006-07-14 2008-03-27 Sanofi Pasteur Biologics Co. Construction of recombinant virus vaccines by direct transposon-mediated insertion of foreign immunologic determinants into vector virus proteins

Also Published As

Publication number Publication date
HK1084457A1 (en) 2006-07-28
RU2005101873A (en) 2005-08-10
RU2295760C2 (en) 2007-03-20
AU2003218807A1 (en) 2004-02-16
KR20040012470A (en) 2004-02-11

Similar Documents

Publication Publication Date Title
US7984037B2 (en) Method for evaluating xpath-like fragment identifiers of audio-visual content
US7401100B2 (en) Method of and apparatus for synchronizing interactive contents
US20030084460A1 (en) Method and apparatus reproducing contents from information storage medium in interactive mode
CN100437552C (en) Managing metadata and system thereof
US20060136815A1 (en) Apparatus and method for reproducing content and information storage medium therefor
WO2004012096A1 (en) Data managing apparatus and method for reproducing interactive digital content, and information storage medium therefor
US8042144B2 (en) Interactive medium and method for managing additional data thereof
JP2003228568A (en) Information storage medium recorded by data structure easy to retrieve text information, regenerator therefor, and regeneration method therefor
KR100396553B1 (en) Optical recording medium capable of being searched for text information contained therein, reproducing apparatus, and recording apparatus therefor
RU2298845C2 (en) Data storage carrier, having information for controlling buffered state of markup document, and also method and device for reproducing data from data storage carrier
KR100553891B1 (en) Reproducing method for interactive mode using markup documents
US20060242117A1 (en) Information storage medium capable of being searched for text information contained therein, reproducing apparatus and recording apparatus therefor
KR100780786B1 (en) Search system, search server, client, search method, and recording medium
KR100644606B1 (en) Apparatus for reproducing content in interactive mode
JP2005085462A (en) Information storage medium for recording search information file, and its reproducing method and reproducing device
KR100584561B1 (en) Apparatus for reproducing Audio-Visual data in interactive mode using markup document
KR20030035864A (en) Method and apparatus for reproducing contents recorded on an information storage medium by interactive mode
KR20030082886A (en) Information storage medium containing interactive contents version information, recording method and reproducing method therefor
KR20030035791A (en) Information storage medium having data structure that allows easy searching of text information, apparatus and method for reproducing therefor
EP1546900A1 (en) Network accessible apparatus, security method used by the apparatus, and information storage medium that is reproducible by the apparatus

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PH PL PT RO RU SC SD SE SG SK SL TJ TM TN TR TT TZ UA UG UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP