JP2012507776A - コンディショナルプロセッシング方法及び装置 - Google Patents

コンディショナルプロセッシング方法及び装置 Download PDF

Info

Publication number
JP2012507776A
JP2012507776A JP2011534398A JP2011534398A JP2012507776A JP 2012507776 A JP2012507776 A JP 2012507776A JP 2011534398 A JP2011534398 A JP 2011534398A JP 2011534398 A JP2011534398 A JP 2011534398A JP 2012507776 A JP2012507776 A JP 2012507776A
Authority
JP
Japan
Prior art keywords
node
memory
conditional processing
parsing switch
child
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011534398A
Other languages
English (en)
Other versions
JP5536790B2 (ja
Inventor
ソ・ヨン・ファン
ジェ・ヨン・ソン
クーク・フイ・イ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
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
Publication of JP2012507776A publication Critical patent/JP2012507776A/ja
Application granted granted Critical
Publication of JP5536790B2 publication Critical patent/JP5536790B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/25Using a specific main memory architecture
    • G06F2212/251Local memory within processor subsystem
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Machine Translation (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

効率的なメモリ管理のためのコンディショナルプロセッシング方法及び装置が提供される。本発明のコンディショナルプロセッシング方法は、宣言的記述言語基盤で構成されたデータの複数のノードをローディングしてパースツリーを生成する過程と;前記ノードのうちコンディショナルプロセッシングのための条件を記述する属性を有するパーシングスイッチノードが存在する時、前記属性によって前記パーシングスイッチノードの子ノードを評価(evaluate)する過程と;前記属性を満足させる子ノードだけをメモリにローディングする過程と;メモリに維持(retain)される前記子ノードを出力する過程と;を含む。

Description

本発明は、一般的にデータプロセッシング方法及び装置に関し、特に、効率的なメモリ管理のためのコンディショナルプロセッシング方法及び装置に関する。
記述(description)言語は、命令形(imperative)記述言語と宣言的(declarative)記述言語とに分けられる。命令形記述言語は、<どんな>方法で目標を獲得すべきかに焦点を合わせて目標を達成するためのアルゴリズムを明示する。命令形記述言語は、フォートラン、C、Java(登録商標)などを含む。
これと反対に、宣言的記述言語は、<何>が実行されるべきかに焦点を合わせて目標を明示し、アルゴリズムの具現は残しておく。代表的な宣言的記述言語であるハイパーテキストマークアップ言語(HTML)プログラムを作成する時、HTMLビューアー、すなわちブラウザーで何を示さなければならなないかを宣言され、ブラウザーの手続アルゴリズムがこれを画面に表示する点に変換される。代表的な宣言的記述言語は、XSLT(XSL(Extensible Stylesheet Language)Transformations)、SQL(Structured Query Language)、XML(Extensible Markup Language)基盤のSVG(Scalable Vector Graphics)、LASeR(Lightweight Application Scene Representation)を含む。
LASeRは、通信及び放送技術の発展に伴い、場面記述(scene description)、ビデオ(video)、オーディオ(audio)、イメージ(image)、フォント(font)、テキスト(text)、メタデータ(meta−data)、スクリプト(script)のような多様なマルチメディア要素を利用した自由な表現とユーザとの相互作用を通じて、さらに豊かなコンテンツサービスを提供するために開発された国際標準である。
コンディショナルプロセッシングは、与えられた表現(expression)に対する評価を通じて、結果の有効性、サービスの提供可否及び情報の実行時間を決定するサービス制御技法である。宣言的記述言語においてコンディショナルプロセッシングは、コンディショナルプロセッシング関数で定められた宣言的記述言語で書かれた論理型宣言を含んでいて、情報の有効性、サービスの提供可否及び情報の実行時間が確定的に明示されている。
図1は、一般的な宣言的記述言語よりなるデータを受信した端末のコンディショナルプロセッシング実行過程を示す流れ図である。
図1を参照すれば、100段階で、データストリームが受信され、デコーディングバッファーに要素ストリームが割り当てられ、110段階で、端末が前記要素ストリームを復号化する。復号化された要素ストリームは、120段階で、メモリ構成器にロードされる。メモリ構成器にロードされた要素ストリーム、すなわちデータのコンポーネントは、意味あるトークンに分解される。このようなトークンは、その位階関係(hierarchical relationship)が分析され、データは、文章の構造が既に決定されたパースツリー(parsetree)を構成する。要素をすべてメモリ構成器にロードし、要素が実行のための構成(configuration)を実行する。130段階で、パースツリーを構成する階層要素のうちコンディショナルプロセッシング機能を実行する要素がある場合、端末は、140段階で、評価対象となるツリーノードの子ノードを全部メモリにロードし、150段階で、すべてのノードを1つずつアクセスする。端末は、160段階で、コンディショナルプロセッシング評価結果が真であるか否かを判断し、真の場合、その結果をディスプレイに出力する。
このような従来のコンディショナルプロセッシングの場合、すべての下向きノード(子ノード)がメモリ構成器にロードされた後、コンディショナルプロセッシングが実行される。コンディショナルプロセッシング過程で<真>として評価される子ノードが現われる時、コンディショナルプロセッシングが終了する。従来のコンディショナルプロセッシングは、評価結果によって画面を通じてディスプレイされない残りの子ノードもメモリ構成器にロードされた状態そのまま、メモリ構成器にそのまま残っているように設計されている。したがって、コンディショナルプロセッシングのための命令ノードのすべての子ノードがメモリ構成器にロードされ、多くのメモリ空間を占有する。したがって、コンディショナルプロセッシングを通じて出力される結果は、ただ1つの子ノードであると言っても、残りの子ノード、すなわちコンディショナルプロセッシングの評価結果が<偽>として評価されたノードは、続いてメモリ空間を占有する。
すなわち、従来の宣言的記述言語で構成されたデータの実行は、パースツリー(parsetree)を構成する時、すべての復号化されたデータがメモリ構成器にロードされるように設計されているので、コンディショナルプロセッシングノードも他のノードと共に同一の方式で1つずつ処理される。
現在の技術傾向によれば、DVB−CBMS(Convergence of Broadcasting and Mobile Service)やIPTVのように、他の技術を統合して他の種類の端末を統合的にサービスするネットワークモデルが可能である。IPTVサービスを提供するために、単一のネットワーク事業者が有線及び無線網を統合的に管理する時、移動及び固定装置の両方にIPTVサービスが提供されることができる。例えば、放送サービスは、1つの放送ストリームが同時に多様なディスプレイサイズ、メモリサイズ、性能及び特徴を有する多様な類型のユーザ端末に伝送されるように具現されることができる。これは、家庭用デジタルテレビ及び移動電話を含む多様な装置を通じて同一のサービスが提供されることができることを意味する。このような状況で、端末−適応型及び状況−適応型サービスを提供するための多様な技術が提案されている。このような統合されたネットワーク−基盤サービス環境において、前述したコンディショナルプロセッシング方法は、評価される子ノードを収容するための巨大なメモリ空間を要求することができる。しかし、比較的低い性能を有する端末は、過負荷を経験し、これは、サービス失敗につながる。ネットワークの統合だけでなく、サービス統合は、端末が同時に多様なサービスを受信する可能性を増加させるので、特定のアプリケーションの多くのメモリ占有は、他のサービスのために効率的に資源を管理することを困難にする。
したがって、ユーザ端末が受信したデータを処理する間、サービス提供に必要なデータだけをロードしてメモリ占有を減少させ、メモリの管理の効率性を向上するコンディショナルプロセッシング方法及び装置が要求される。
従来技術の問題点を克服するために、本発明は、宣言的記述言語で構成された受信データをパーシング(parsing)する時、サービス提供に必要なデータだけをメモリにロードしてメモリ管理効率を向上させるコンディショナルプロセッシング方法及び装置を提供する。
本発明の一実施例によれば、コンディショナルプロセッシング方法は、宣言的記述言語基盤で構成されたデータの複数のノードをローディングしてパースツリーを生成する過程と;前記ノードのうちコンディショナルプロセッシングのための条件を記述する属性を有するパーシングスイッチノードが存在する時、前記属性によって前記パーシングスイッチノードの子ノードを評価(evaluate)する過程と;前記属性を満足させる子ノードだけをメモリにローディングする過程と;メモリに維持(retain)される前記子ノードを出力する過程と;を含む。
好ましくは、前記プロセッシング方法は、前記属性を満足しない子ノードをメモリ構成器にロードしないか、またはメモリ構成器から削除する過程をさらに含む。
好ましくは、前記評価する過程は、少なくとも1つのノードが前記属性を満足させれば、評価を終了する過程を含む。
好ましくは、前記評価する過程は、前記属性を満足しないノードが感知されれば、評価を終了する過程を含む。
本発明の他の実施例によれば、コンディショナルプロセッシング装置は、宣言的記述言語基盤で構成された複数のノードを有するデータを復号化する復号器と;前記ノードでパースツリーを構成し、前記ノードのうちコンディショナルプロセッシングに対する条件を記述する少なくとも1つの属性を有するパーシングスイッチノードが発見される時、前記属性によって前記パーシングスイッチノードの子ノードを評価し、前記属性を満足する子ノードをロードするメモリ構成器と;前記メモリ構成器にロードされた子ノードをあらかじめ設定された形式で出力する構成器と;を含む。
好ましくは、前記メモリ構成器は、前記属性を満足しない子ノードをメモリ構成器にロードしないか、またはメモリ構成器から削除することを特徴とする。
好ましくは、前記メモリ構成器は、前記属性を満足するノードが少なくとも1つ感知されれば、プロセッシングを終了することを特徴とする。
好ましくは、前記メモリ構成器は、前記属性を満足しないノードが少なくとも1つ感知されれば、プロセッシングを終了することを特徴とする。
前述したように、本発明のコンディショナルプロセッシング方法及び装置は、データパーシング(parsing)過程でコンディショナルプロセッシング機能を実行し、サービスに必要なデータをメモリにロード(load)し、サービス提供のために不要なノードをアンロードするか、除去することによって、受信機のメモリ資源のリサイクル率を高め、制限されたメモリサイズを有する装置の処理負担を低減することができ、メモリを効率的に管理することができる。
前述したように、属性及び属性値は、多様な方式で定義されることができ、したがって、属性及び値を定義する他の方法は、参照機能を有する要素及び属性を利用して属性及び属性値を参照する時にも、同一の機能及び目的のために使用されれば、本発明の実施例によって具現されることができる。
本発明の前記及び他の客体、構成及び長所は、下記の詳細な説明及び添付の図面からさらに明確になる。
一般的な宣言的記述言語のデータを受信した端末のコンディショナルプロセッシング実行過程を示す流れ図である。 本発明の一実施例によるコンディショナルプロセッシング方法のためのパーシングスイッチ(parsingswitch)ノードの構成を示すブロック構成図である。 本発明の一実施例によるコンディショナルプロセッシング方法のための送信機を示すブロック構成図である。 本発明の一実施例によるコンディショナルプロセッシング方法のための受信機を示すブロック構成図である。 本発明の一実施例によるコンディショナルプロセッシング方法を示す流れ図である。 本発明の他の実施例によるコンディショナルプロセッシング方法を示す流れ図である。
以下、本発明の実施例を図面を参照して詳しく説明する。図面全般において、同一の参照符号は、同一または類似の部分を参照するために使用される。公知機能または構成に対する具体的な説明が本発明の要旨を不明瞭にすることを防止するために、その詳細な説明は省略されることができる。本明細書及び請求項で使用される用語は、その辞書的意味に限定されるものと解すべきではない。発明者が、当該発明を説明するのに最も適合するように用語を定義することができるという原則に基づいて、用語及び単語は、本発明の技術的意図に合致するように解釈すべきである。したがって、明細書に開示された実施例及び図面は、ただ例示的なものに過ぎず、本発明の特許出願時に多様な等価物または修正があり得る。
本発明の一実施例によれば、宣言的記述言語を基盤で構成されたデータのコンディショナルプロセッシングのための方法及び装置が提案される。特に本発明のコンディショナルプロセッシング方法及び装置は、受信された宣言的記述言語基盤のデータをサービス提供可能な形態で構成する過程において受信端末がデータパーシング過程でコンディショナルプロセッシングを実行し、サービス提供に必要なデータだけをメモリにロードし、メモリを効率的に管理することができるようにする。
本発明の実施例においてパーシングスイッチ(parsingSwitch)ノードの構造は、データパーシングとロード過程でコンディショナルプロセッシング機能を実行するためのノード類型として定義され、評価情報は、パーシングスイッチノードに関連している。
図2は、本発明の一実施例によるコンディショナルプロセッシング方法のためのパーシングスイッチ(parsingSwitch)ノードの構成を示すブロック構成図である。
図2に、データパーシング過程でコンディショナル機能を実行するために、ノードタイプとしてパーシングスイッチ(parsingSwitch)ノードのうちコンディショナルプロセッシング情報に含まれるノードを図示した。
本発明の一実施例においてコンディショナルプロセッシング情報は、パーシングスイッチノードの属性(attribute)になることができ、コンディショナルプロセッシング情報は、受信機がコンディショナルプロセッシング機能のための評価の対象、評価時間、評価手順、評価方法などを含むことができる。
データパーシング過程でサービス提供に必要なデータは、下記の表1及び図2に示されたように、順次に、または優先順位によってメモリにロードされる。これは、端末に場面構成のための効率的なメモリ管理機能を提供することができる。
前述したコンディショナルプロセッシングは、場面構成のために構成されたデータを構成器を通じて表現されるメモリにロードすべきかを判断し、トップ−ダウン方式またはボトム−アップ方式で実行される。
図2を参照すれば、パーシングスイッチノード200から伝送される情報は、パーシングスイッチノード200の属性(attribute)であり、パーシングノードIDフィールド210、モード(mode)フィールド220、キーワードパース(keywordParse)フィールド240、評価モード(evalMode)フィールド250、リムーバブル(removable)フィールド270、及びセレクションモード(selectionMode)フィールド280を含む。
パーシングノードIDフィールド210には、パーシングスイッチノード200を識別するための識別子が収納される。
モード(mode)フィールド220は、パーシングスイッチのコンディショナルプロセッシング機能のパーシングモードを示す。モード(mode)フィールド220は、<真>として評価されるノードが現われれば、コンディショナルプロセッシングの対象である残りの下向きノードに対する探索を中断することを意味するデクリメンタル(decremental)フィールド225と、<真>として評価されるノードが現われても、コンディショナルプロセッシングを継続して実行し、<偽>として評価されるノードあるいは当該サービスの実行時間途中に実行されないように設定されたノードが現われれば、当該ノードの下向きノード及びコンディショナルプロセッシングの対象となる残りの下向きノードに対する探索を中断することを意味するインクリメンタル(incremental)フィールド230とで構成される。
キーワードパース(keywordParse)フィールド240は、特定のキーワードを有する下向きノ−ドを対象としてコンディショナルプロセッシングを実行することを示す。キーワードパース(keywordParse)フィールド240は、コンディショナルプロセッシングの対象になるノードが有するキーワード(keyword)を示すキーワードフィールド245を含むことができる。
評価モード(evalMode)フィールド250には、コンディショナルプロセッシング機能を実行するにあたって、コンディション(condition)に対する評価をする時間に対する情報が収納される。評価モード(evalMode)フィールド250は、対象ノードがロード(load)される前に、すなわち対象ノードの属性に対する情報だけで対象ノードを評価する事前評価(preEval)フィールド255と、コンディショナルプロセッシングの対象となる対象ノード全体がメモリにロードされた後に評価する事後評価(postEval)フィールド260とで構成される。
リムーバブル(removable)フィールド270は、評価対象となる下向きノードのうち<偽>として評価されるノードあるいは当該サービスの実行時間途中に実行されないように設定されたノードをメモリにロードしないか、またはメモリから削除すべきか否かを示す。
セレクションモード(selectionMode)フィールド280は、コンディショナルプロセッシングで評価対象となる下向きノードのうち選択可能な下向きノードの数が収納される。セレクションモード(selectionMode)フィールド280は、パーシングスイッチ200がノードを評価する間、<真>として評価される1つのノードが現われる時、コンディショナルプロセッシングをすべき残りの下向き要素に対する探索を中断することを意味する単数(singular)フィールド285と、パーシングスイッチ200がノードを評価する間、<真>として評価されるノードが発見される時にも、<真>のノードを検索するためにコンディショナルプロセッシングを継続して実行することを意味する複数(plural)フィールド290とで構成される。
次の表1は、前記パーシングスイッチノード200に含まれることができる属性を説明するためのものである。
Figure 2012507776
また、表1には列挙されていないが、パーシングスイッチノード200は、従来のコンディショナルプロセッシング機能を実行するノードが有するフィールドをさらに含むことができ、これは、宣言的記述言語の一般的な場合に従う。
例えば、代表的な宣言的記述言語であるXML言語タイプは、メタデータで構成されたもので、文書の構造をマークアップ(mark−up)形式で定義する。したがって、データ構造、意味及び表現情報は、分離され、これにより、ノード値が要素及び属性で表現される。すなわち、前記表1のノード値とこれに含まれる各フィールド値をxml言語タイプにマッピングすることによって、1つのノードは、1つの要素(element)となり、各フィールド値は、前記要素に対する属性(attribute)の定義に該当するようになる。1つの要素を表現する属性(attribute)は、表1に定義された属性(attribute)のうち1つ以上によって代表されることができる。
Figure 2012507776
表2を参照すれば、パーシングスイッチ(parsingSwitch)ノード及びパーシングスイッチ(parsingSwitch)ノードを通じて伝送される情報を示す各フィールドをLASeRの新しい要素及び属性として記述した。
ここで、要素は、LASeRのような場面構成制御技術で場面を構成する個体の基本単位であり、属性は、場面を構成する要素の特性である。
表2で、パーシングスイッチ(parsingSwitch)要素のコンディショナルプロセッシング評価対象となる下向きノードは、ID属性値が各々<Condition01>、<Condition02>、<Condition03>の<g>要素である。ここで、前記<g>要素は、関連した要素を一緒にグループ化するコンテナー(container)要素である。
したがって、コンテンツを構成する多様な場面構成要素が<g>要素の内部に含まれることができる。ここで、前記構成要素は、四角形を描くための<rect>要素、円を描くための<circle>要素などのようなグラフィック要素及びオーディオ、ビデオ、イメージなどの場面構成要素を含む。
このような要素は、サービスされて画面イメージを構成する場面の実体を生成する。表2で、“<gid=“Condition01”>…場面構成(場面の実体)…</g>”で“Condition01”は属性であり、タグ<g>と</g>との間に位置するデータは、場面構成の実体である。例えば、要素が円なら、画面に実体である円が描かれる。このような場面、構成の実体である要素は、赤色円、青色円、大きい円、小さい円などになることができる。
表2のようなパーシングスイッチノード“<parsingSwitchmode=“decremental”removable=“true”evalMode=“postEval”…>…評価対象要素グループ…</parsingSwitch>”を伝送した場合、受信端末の動作は次の通りである:
第一に、モード(mode)フィールドのうちデクリメンタル(decremental)フィールドによって、端末は、<真>として評価されるノードが現われれば、コンディショナルプロセッシングの対象である残りの下向きノードに対する探索を中断する。
第二に、リムーバブルフィールド(removable=“true”)の値によって、端末は、評価対象となる下向きノードのうち<偽>として評価されるノードあるいは当該サービスの実行時間途中に実行されないように設定されたノードをメモリにロードしないか、またはメモリから削除する。
第三に、端末は、評価モードのうち事後評価フィールド(evalMode=“postEval”)によって、対象ノードがロードされた後、評価を実行する。
前述した情報を利用して、端末は、表2に記述された要素(<gid=“Condition01”>…</g>、<gid=“Condition02”>…</g>、<gid=“Condition03”>…</g>)に対するコンディショナルプロセッシングを実行し、前記要素のうち選択された要素をユーザに提供するようになる。表2で使用された用語“要素”は、用語“ノード”と同じ意味で使用できる。
次に、他の例によってパーシングスイッチノードを利用したコンディショナルプロセッシング方法を説明する。表3は、本発明の一実施例によるコンディショナルプロセッシング方法のためのパーシングスイッチノードの他の例を示す。
Figure 2012507776
表3は、コンディショナルプロセッシングのための基準としてパーシングスイッチノードのコンディショナルプロセッシングのための評価対象下向きノード(パーシングスイッチノードの子ノード)または要素をパーシングするのに必要なメモリ量に対する情報(memory=“…”)を端末が参照し、パーシングスイッチノードのコンディショナルプロセッシングの評価対象下向きノード(パーシングスイッチノードの子ノード)のうち1つのノードを場面に提供するために使用することを決定する例示的パーシングスイッチノードを示す。表3は、端末がコンディショナルプロセッシングの評価基準としてパーシングスイッチノードのコンディショナルプロセッシングのための評価対象下向きノード(パーシングスイッチノードの子ノード)または要素をパーシングするのに必要なメモリ量に対する情報(memory=“…”)を参照し、パーシングスイッチノードのコンディショナルプロセッシングの評価対象下向きノード(パーシングスイッチノードの子ノード)のうち1つのノードを場面に提供するために使用することを決定する例示的パーシングスイッチノードを示す。
具体的に説明しないが、パースツリーを構成する各ノード及び場面構成要素を表現するための下位要素をロードするのに必要なメモリ、全体メモリの量または場面をサービスするのに必要なメモリの量で表現されることができる。ノードをプロセッシングするのに必要なメモリの量は、パースツリーを構成する各ノード及び場面構成要素を表現するための下位要素をロードするのに必要なメモリの量、全体のメモリ量または場面をサービスするのに必要なメモリの量で表現されることができる。
パーシングスイッチ(parsingSwitch)ノードのモード(mode)フィールドがデクリメンタル(decremental)フィールドの場合、パーシングスイッチの子ノードは、メモリ要求量が大きい順に列挙されることができる。
この場合、端末は、端末の現在メモリ状態に適したコンディショナルプロセッシング対象ノードを評価し、<真>として評価されるノードがあれば、当該ノードをメモリにロードし、パーシングスイッチ(parsingSwitch)ノード内でのコンディショナルプロセッシングを中断する。
これと反対に、パーシングスイッチ(parsingSwitch)ノードのモード(mode)フィールドの下位フィールドがインクリメンタル(incremental)フィールドである場合、パーシングスイッチの子ノードは、そのメモリ要求量が増加する順に列挙されることができる。
端末は、端末の現在メモリ状態に適していないコンディショナルプロセッシング評価対象ノードに会えば、コンディショナルプロセッシングノードの下向きノードをメモリにローディングすることを中断し、当該パーシングスイッチ(parsingSwitch)ノード内でのコンディショナルプロセッシングを中断する。すなわち、特定パーシングスイッチノードが<偽>として評価されれば、そのパーシングスイッチノードの下向きノードは、メモリにロードされず、したがって、当該パーシングスイッチ(parsingSwitch)ノード内でのコンディショナルプロセッシングが終了する。
次に、本発明の一実施例によるコンディショナルプロセッシングの実行のための送信機及び受信機の構造について説明する。関連ない部分に対する過度な説明によって本発明の要旨が不明にならないように、説明は、コンディショナルプロセッシングに連関された部分に集中される。
まず、本発明の一実施例による送信機の構造を説明する。図3は、本発明の一実施例によるコンディショナルプロセッシング方法のための送信機の構造を示すブロック構成図である。
図3を参照すれば、本発明の一実施例による送信機は、データ生成部300、符号器320、データ伝送部330を含む。
データ生成部300は、宣言的記述言語基盤のデータを生成し、このようなデータは、本発明の一実施例によるパーシングスイッチ(parsingSwitch)ノードを含む。特に、データ生成部300は、パーシングスイッチノード生成のためのパーシングスイッチ(parsingSwitch)ノード生成器310を含む。パーシングスイッチノード310は、少なくとも1つの属性を有し、属性は、表1で説明したようなコンディショナルプロセッシング情報を含む。
データ生成部300で生成されたデータは、符号器320に伝達され、符号化される。符号化されたデータは、データ伝送部330に伝達され、受信機に伝送される。
次に、本発明の一実施例による受信機の構造について説明する。図4は、本発明の一実施例によるコンディショナルプロセッシングのための送信機の構造を示すブロック構成図である。
図4を参照すれば、本発明の一実施例によるコンディショナルプロセッシングのための受信機は、デコーディングバッファー400、復号器410、メモリ構成器420、及び構成器440を含む。
宣言的記述言語基盤で構成された複数のノードを有するデータが受信されれば、デコーディングバッファー400は、入力データを一時保存した後、復号器410に出力する。復号器410は、デコーディングバッファー400から入力されるデータを復号化し、復号化されたデータをメモリ構成器420に出力する。メモリ構成器420は、データの構成成分を意味あるトークンに分解し、そのトークン間の位階的相関関係を含むパースツリー(parsetree)を構成する。
特に、復号器410は、パーシングスイッチ(parsingSwitch)ノードを構成する各フィールドの情報(属性)を分析し、評価対象となるパーシングスイッチノードの子ノード(下向きノード)をメモリ構成器420に出力する。この時、表1で説明したコンディショナルプロセッシング情報によってメモリ構成器420に他のノードがロードされることができる。
メモリ構成器420は、前述したデータを構成する複数のノードを利用してパースツリーを構成し、パースツリーを形成する途中に、当該ノードがパーシングスイッチノードである時、パーシングスイッチノードの子ノードについて評価する。この時、評価は、パーシングスイッチノードの属性を基準に実行されることができる。このために、メモリ構成器420は、要求された<目標(goal)>であるか、あるいは実行可能なノードであるかを評価するコンディショナルプロセッシングモジュール430を備える。すなわち、メモリ構成器420は、コンディショナルプロセッシングモジュール430を通じてコンディショナルプロセッシングを実行する。
評価の結果が<真>である時、当該ノードは、構成器440を通じてディスプレイに出力される。
パーシングスイッチノードを構成する各フィールドの情報に対する分析の結果によって、下向きノードグループの実体をローディングする前に、評価対象ノードの属性に対する情報を用いて対象ノードを1つずつ評価することが決定される時、<真>として評価されたノードを構成するデータ(実体)がメモリ420にロードされる。また、メモリ構成器420にパースツリー(parsetree)形態で構成されたすべての情報は、構成器440を通じてディスプレイに出力される。
整理すれば、評価対象ノードとしてパーシングスイッチ(parsingSwitch)ノードの子ノードは、評価モード(evalMode)によって順次にメモリ構成器420にロードされる。この時、メモリ構成器の評価対象ノードは、パーシングスイッチノードの下向きノード(子ノード)であり、前記下向きノードは、パーシングスイッチノードの一部として見なされる。評価モード(evalMode)が事前評価(preEval)である時、属性がまずロードされる。評価モード(evalMode)が事後評価(postEval)である場合、実体、すなわち評価対象ノードを構成する実際データがロードされる。
メモリ構成器420は、評価情報の評価モード(evalMode)によって、ロードされたノードの属性を評価するか(preEval)、またはノードの実体(ノード)を評価する(postEval)。評価結果が<真>の場合、メモリ構成器420は、当該ノードをロードする。一方、評価結果が<偽>の場合、当該ノードは、メモリ構成器420にロードされないか、またはメモリに既にロードされた時には、当該ノードは、メモリ構成器420から削除される。
構成器440は、入力されるノードをユーザに提供可能な形態で出力する。視覚的データを発生させるノードの場合、構成器440は、ノードをディスプレイに出力する。この時、構成器440は、ノードの属性によって再生装置として具現されることができる。
例えば、円を具現する属性を有するノードの場合、構成器440は、ディスプレイ装置に円が描かれることができるように、R、G、Bなどのアナログ信号及び表示位置を示す信号を提供することができる。
一方、本発明の一実施例においてメモリ構成器と称するブロックは、メモリ構成器と同一の動作をしたら、各プログラム実行エンジンや、RME(Rich Media Engine)によって他の名称と呼ばれることができる。例えば、メモリ構成器は、“場面ツリーマネージャー”あるいは“DOMツリー構成部”と呼ばれることができる。また、データが送信機で符号化されて伝送されない場合、受信機で復号化過程は省略されることができる。
次に、送信機及び受信機のパーシングスイッチノードのコンディショナルプロセッシングを説明する。前述したように、送信機は、宣言的記述言語を基盤としてコンディショナルプロセッシング機能を実行するパーシングスイッチ(parsingSwitch)ノードを含むデータを生成して伝送する。次に、宣言的記述言語基盤のデータを受信する受信機のコンディショナルプロセッシング方法を説明する。
特に、評価モード(事前評価及び事後評価)によるコンディショナルプロセッシング方法を説明する。
まず、メモリ要求量に対する属性を有するノード(要素)A、B、Cがあると仮定する。ここで、ノード(要素)Aの実体は、ビデオとオーディオで構成され、ノードBの実体は、円、四角形などのグラフィック要素で構成され、ノードCの実体は、テキストで構成される。
パーシングスイッチノードの評価モードフィールドが<事前評価>に設定された場合、受信機は、各ノードのメモリ要求量に対する属性だけをロードし、当該ノードを評価する。Aノードのメモリ要求量に対する属性が現在受信機のメモリ状態を充足させて、<真>として評価されれば、受信機は、要素(ノード)Aのビデオとオーディオデータをメモリ構成器420にロードし、構成器440を通じてビデオとオーディオデータをユーザ−親和的形式で出力する。当該パーシングスイッチのモードフィールドが<デクリメンタル>に指定されている場合、受信機は、B及びCノードは評価しない。
パーシングスイッチノードの評価モードフィールドが<事後評価>に設定された場合、受信機は、ノードAのビデオとオーディオデータをメモリ構成器420にロードし、データを評価する。当該パーシングスイッチのモード(Mode)フィールドが<デクリメンタル>に指定されている場合、受信機は、B及びCノードは評価しない。
パーサ(parser)がパースツリー(parsetree)を構成する間、すべてのノードをメモリにロードする従来技術とは異なって、本発明によるコンディショナルプロセッシング方法は、パーサ(parser)が条件によってノードをロードする。このために、パーサは、データの中に本発明で提示するコンディショナルプロセッシングを実行するパーシングスイッチ(parsingSwitch)ノードが含まれているか否かを判断しなければならない。
次に、本発明の一実施例によるコンディショナルプロセッシング方法を説明する。
図5は、本発明の一実施例によるコンディショナルプロセッシング方法を示す流れ図である。
ここで、コンディショナルプロセッシング過程は、パーシングスイッチ(parsing Switch)ノードの評価モード(evalMode)フィールドが<事前評価>(postEval)に設定されている時、またはパーシングスイッチ(parsingSwitch)ノードのコンディショナルプロセッシングの評価対象となるノードの場面構成データのメモリロード後に行われるものと仮定する。
図5を参照すれば、受信機は、500段階で、宣言的記述言語基盤で構成された複数のノード(要素)を有するデータを受信する。受信されたデータは、デコーディングバッファー400に割り当てられ、順次に復号器410に出力される。受信機は、505段階で、復号器410を通じてデータを復号化する。受信機は、510段階で、復号化されたデータをメモリ構成器420に順次にロードする。復号化されたデータの構成成分は、トークンに分解される。その後、受信機は、構成成分間の位階関係を分析し、位階関係によってパースツリー(parsetree)を構成する。
受信機は、復号化されたデータをロードし、パースツリー(parsetree)を構成し、パースツリーを構成しながら、515段階で、パーシングスイッチノードが感知されるか否かを判断する。
パーシングスイッチ(parsingSwitch)ノードが感知されれば、520段階で、受信機は、パーシングスイッチ(parsingSwitch)ノードのすべての属性を解釈し、評価対象となるパーシングスイッチノードの子ノードを順次にメモリ構成器420にロードする。
525段階で、受信機は、メモリ構成器420にロードされた評価対象ノードを評価する。すなわち、受信機は、コンディショナルプロセッシングを実行する。コンディショナルプロセッシングは、当該ノードがパーシングスイッチノードの属性を満足させるか否かを判断する過程である。当該ノードがパーシングスイッチノードの属性を満足させる場合、<真>として評価され、そうではなければ、<偽>として評価される。パーシングスイッチノードの属性は、代表的な評価基準であるが、他の属性が評価基準として使用されることができる。第一に、評価対象ノードがメモリ構成器420に成功的にロードされたか否かが評価基準に含まれることもできる。第二に、評価対象ノードの属性及び特性が評価基準に含まれることもできる。第三に、評価対象ノードがメモリ構成器420に成功的にロードされたか否か及び評価対象ノードの属性及び特性のすべてが評価基準に含まれることもできる。
例えば、受信機は、パーシングスイッチ(parsingSwitch)ノードの一番目の子ノード(要素)だけをメモリ構成器420にロードし、一番目の子ノードが必要な<目標(goal)>であるか、または実行可能なノードであるかについて評価する。
この時、パーシングスイッチ(parsingSwitch)ノードのすべての子ノード(要素)は、パーシングスイッチ(parsingSwitch)ノードとして判断されることができる。
530段階で、受信機は、当該パーシングスイッチノードのモード(mode)フィールドが<デクリメンタル>または<インクリメンタル>に設定されたか否かを判断する。パーシングスイッチノードのモードフィールドが<デクリメンタル>(decremental)に設定された場合、過程は、535段階に進行し、パーシングスイッチノードのモードフィールドが<インクリメンタル>(incremental)に設定された場合、過程は、540段階に進行する。これは、530段階でモードを確認するものではなく、モードによって処理方法を選択することを意味する。
スイッチングノードの属性のうち1つを収納するモード(mode)フィールドの値がデクリメンタル(decremental)フィールドの場合、受信機は、535段階で、評価結果が<真>であるか否かを判断する。
評価の結果が<真>なら、550段階で、受信機は、メモリ構成器420が<真>として評価されたノードを構成器440に出力するように制御し、ノードが表示されるようにする。すなわち、構成器440は、<真>として評価されたノードをユーザが可視可能な形態で出力する。例えば、円を具現するノードの場合、構成器440は、ディスプレイ装置に円を描くことができるように、R、G、Bを含むアナログ信号及び位置情報を出力する。
一方、段階535で、評価結果が<偽>の場合、あるいは当該サービスの実行時間中に実行されないように設定されている場合、過程は、520段階に進行し、受信機は、<偽>として評価されたノードの次のノードをメモリ構成器420にロードする。例えば、一番目の子ノードが<偽>として評価されるか、あるいは当該サービスの実行時間中に実行されないように設定されている場合、受信機は、二番目の子ノードをメモリ構成器420にロードする。
パーシングスイッチ(parsingSwitch)ノードを構成する各フィールドの情報の解釈結果によって、<真>として評価されたノードが1つでも現われれば、残りの子ノードに対する評価は実行されなくてもよい。
パーシングスイッチ(parsingSwitch)ノードのモード(mode)フィールドの値がデクリメンタル(decremental)フィールドの場合、受信機は、535段階で、評価結果が<真>であるか否かを判断する。評価の結果が<真>なら、受信機は、メモリ構成器420が550段階で当該ノードを構成器440に出力するように制御し、当該ノードに該当するデータを出力するようにする。この時、当該パーシングスイッチノードの残り評価対象ノードは、処理されない。すなわち残りの評価対象ノードは、ロードされず、評価されない。
パーシングスイッチ(parsingSwitch)ノードのモード(mode)フィールドの値が<インクリメンタル>(incremental)フィールドの場合、受信機は、540段階で、評価結果が<偽>であるか否かを判断する。
この時、評価の結果が<真>なら、過程は、520段階に進行し、受信機は、次のノードを確認する。一方、評価の結果が<偽>であるか、または当該サービスの実行時間中に実行されないように設定されている場合、すなわち、評価結果が<真>ではない場合、受信機は、メモリ構成器420が以前に評価されたノード、すなわち現在評価されるノードのすぐ前に評価されたノードを出力するように制御し、構成器440を通じて表示されるようにする。
特に、ノードが<偽>として評価されるか、または当該サービスの実行時間中に実行されないように設定された場合、パーシングスイッチ(parsingSwitch)ノードを通じて伝送されるリムーバブル(removable)フィールドの値によって削除されることもできる。
<偽>として評価された現在の評価ノード及びディスプレイされる以前ノード以外の他の評価ノードは、パーシングスイッチ(parsingSwitch)ノードを通じて伝送されるリムーバブル(removable)フィールドによってメモリ構成器420から削除されることができる。例えば、1、2、3、4、5のノードのうち4番ノードが<偽>として評価されたら、3番ノードだけがメモリ構成器420にロードされ、構成器440を通じて出力される。この時、4番ノードとともに1、2番ノードも一度に削除されることもできる。インクリメンタルモードで、<偽>として評価されたノードがあれば、受信機は、当該ノードをメモリにロードし、パーシングスイッチノード内のコンディショナルプロセッシングを中断する。このような理由で、ノード5は、評価されない。
または、1番ノード及び2番ノードが<真>として評価される時、1番ノードを削除する方式で、評価が進行されるたびに削除対象ノードを削除し、メモリ構成器420をリリース(release)することもできる。
コンディショナルプロセッシングの評価対象ノード、すなわちパーシングスイッチ(parsingSwitch)ノードの子ノードのうち1つが選択されても、<真>として評価されたノードをメモリ構成器420に残すように設定された他のシステムで、4番ノードが<偽>として評価されたら、3番ノードが構成器440を通じて出力される間、1、2、3、4番ノードは、メモリ構成器420にロードされたまま残っている。
次に、本発明の他の実施例によるコンディショナルプロセッシング方法を説明する。
図6は、本発明の他の実施例によるコンディショナルプロセッシング方法を示す流れ図である。
図6の実施例で、パーシングスイッチ(parsingSwitch)ノードのコンディショナルプロセッシング過程の評価モード(evalMode)が事前評価(preEval)に設定されているか、またはパーシングスイッチ(parsingSwitch)ノードのコンディショナルプロセッシングがメモリロードの前に行われること、すなわち評価基準として評価対象ノードの属性及び特性に対する情報だけが使用され、コンディショナルプロセッシングが実行されることを仮定する。
図6を参照すれば、受信機は、600段階で、宣言的記述言語基盤で構成された複数のノード(要素)を有するデータストリームを受信する。受信されたデータは、デコーディングバッファー400に入力され、順次に復号器410に出力される。605段階で、受信機は、復号器410を通じてデコーディングバッファー400から出力されたデータを復号化する。610段階で、受信機は、復号器410によって復号化されたデータを順次にメモリ構成器420にロードする。この時、復号化されたデータの構成成分は、意味あるトークンに分解される。受信機は、構成成分間の位階関係を分析し、位階関係によってパースツリー(parsetree)を構成する。
受信機は、復号化されたデータをロードしてパースツリーを生成し、パースツリー(parsetree)を構成しながら、615段階で、受信機は、パーシングスイッチノードが感知されるか否かを判断する。
パーシングスイッチ(parsingSwitch)ノードが感知されれば、受信機は、620段階で、パーシングスイッチ(parsingSwitch)ノードのすべての属性を解釈し、評価対象となる下向きノード(パーシングスイッチノードの子ノード)を構成するデータをすべてロードする前に、評価対象ノードの属性だけをメモリ構成器420にロードする。
625段階で、受信機は、メモリ構成器にロードされた属性によって順に当該ノード(パーシングスイッチノードの子ノード)を評価する。
630段階で、受信機は、パーシングスイッチノードのモード(mode)フィールドが<デクリメンタル>または<インクリメンタル>に設定されたか否かを判断する。パーシングスイッチノードのモードフィールドがデクリメンタル(decremental)に設定された場合、過程は、635段階に進行する。一方、パーシングスイッチノードのモードフィールドがインクリメンタル(incremental)に設定された場合、過程は、640段階に進行する。これは、630段階で、モードを確認するものではなく、モードフィールドの値によって処理方法が変わることを意味する。
パーシングスイッチ(parsingSwitch)ノードのモード(mode)フィールドの値がデクリメンタル(decremental)に設定された場合、受信機は、635段階で、評価結果が<真>であるか否かを判断する。すなわち、受信機は、ノードがパーシングスイッチノードの属性を満足させるか否かを判断する。評価結果が<真>なら、受信機は、<真>として評価されたノードをメモリ構成器420にロードする。これは、<真>として評価されたノードの実体がメモリ構成器420にロードされることを意味する。
一方、評価結果が、<偽>であるか、または当該サービスの実行時間中に実行されないように設定されている場合、すなわち、評価結果が<真>ではない場合、過程は、620段階に進行し、受信機は、<真>ではないものとして評価されたノードの次のノードの属性をメモリ構成器420にロードする。
例えば、パーシングスイッチノードの一番目の子ノードが<偽>として評価されるか、または当該サービスの実行時間中に実行されないように設定されている場合、二番目の子ノードの属性がメモリ構成器420にロードされる。
特に、<偽>として評価されるか、または当該サービスの実行時間中に実行されないように設定されたノードは、パーシングスイッチ(parsingSwitch)ノードを通じて伝送されるリムーバブル(removable)フィールドの値によって削除されることもできる。また、パーシングスイッチ(parsingSwitch)ノードを通じて伝送されるパーシングスイッチ(parsingSwitch)を構成する各フィールドの情報の解釈結果によって、<真>として評価されたノードが1つでも現われれば、パーシングスイッチ(parsingSwitch)ノードの残りの下向きノード、すなわち残りの子ノードは評価されなくてもよい。
パーシングスイッチ(parsingSwitch)ノードのモード(mode)フィールドの値がインクリメンタル(incremental)に設定された場合、受信機は、640段階で、評価結果<偽>であるか否かを判断する。
評価の結果が<真>なら、過程は、620段階に進行し、受信機は、次のノードを確認する。一方、評価の結果が<偽>の場合、または当該サービスの実行時間中に実行されないように設定されている場合、すなわち評価結果が<真>ではない場合、受信機は、645段階で、当該ノードの以前に評価ノードを確認し、以前ノード、すなわち現在ノードのすぐ前に評価されたノードをメモリ構成器420にロードする。すなわち受信機は、属性値によって<真>として評価されたノードの実体をメモリ構成器420にロードする。
次に、655段階で、受信機は、<真>として評価され、メモリ構成器420にロードされたノードを構成器440を通じて表示するように出力する。
<真>として評価されたノードをメモリ構成器にロードするように構成されているシステムの場合、受信機は、<偽>として評価されたノードの実体をロードせず、<真>として評価され、メモリ構成器に最後にロードされたノードを構成器440を通じて表示するように出力する。
この時、<偽>として評価された現在の評価ノード及び現在ディスプレイされる以前ノード以外の他の評価ノードは、パーシングスイッチ(parsingSwitch)ノードを通じて伝送されるリムーバブル(removable)フィールドの値によってメモリ構成器420から削除されることができる。例えば、1、2、3、4、5のノードのうち4番ノードが<偽>として評価されたら、3番ノードだけがメモリ構成器420にロードされ、構成器440を通じて出力される。この時、4番ノードとともに1、2番ノードもメモリ構成器420から削除されることもできる。インクリメンタルモードで<偽>として評価されたノードがあれば、受信機は、当該ノードをメモリにロードし、パーシングスイッチノードに対するコンディショナルプロセッシングを中断する。このような理由で、ノード5は、評価されない。また、1番ノードと2番ノードが<真>として評価された場合、1番ノードを削除する方式で、評価が進行されるたびに削除対象ノードを削除し、メモリ構成器420をリリース(release)することもできる。
コンディショナルプロセッシングの評価対象ノード、すなわちパーシングスイッチ(parsingSwitch)ノードの子ノードのうち1つが選択されても、<真>として評価されたノードをメモリ構成器420に残すように設定された他のシステムで、4番ノードが<偽>として評価されたら、3番ノードが構成器440を通じて出力される間、1、2、3、4番ノードは、メモリ構成器420にロードされたまま残っている。
以上、本発明の実施例によるパーシングスイッチノードの他のコンディショナルプロセッシング過程を説明した。本発明のパーシングスイッチノードのフィールドの値及びコンディショナルプロセッシング過程の評価条件は、本発明の他の実施例で変更されることができる。また、コンディショナルプロセッシング過程の処理段階の順序は変更されてもよく、他の処理段階がコンディショナルプロセッシング過程に追加されることができる。
命令ノードのすべての子ノード(出力されないノードをも含む)がメモリ構成器にロード(load)され、メモリ空間を占有する従来の宣言的記述言語を基盤で構成されたデータのコンディショナルプロセッシングのための方法とは異なって、本発明の実施例によるコンディショナルプロセッシング方法は、データパーシング(parsing)過程でコンディショナルプロセッシング機能を実行し、サービスに必要なノード(データ)をメモリ構成器にロードし、サービス提供に不要なノードは、メモリ構成器にロードしないか、除去することによって、不要なメモリの占有を低減することができる。資源無駄使いを減少させて、受信機のメモリ資源の回転率を高め、制限されたメモリを有する受信機の負担を低減することができ、効率的なメモリ管理を得ることができる。
上記説明で使用されたノード、フィールド、要素、属性及び属性値のような用語は、同一の意味として知られるかまたは定義された同義語及びその派生語に代替されることができる。また、本発明で定義したパーシングスイッチ(parseSwitch)ノードの各フィールドに収納される情報は、別途のフィールドに分離される代わりに、パーシングスイッチ(parsingSwitch)ノード自体の意味ある情報として使用されるように設定されることもできる。
また、本発明において新たに紹介されたノード、フィールド、要素、属性及び属性値として使用される情報は、前記宣言的記述言語基盤のプログラム実行エンジン及びLASeRの内部/外部のデータ、ファイル、アプリケーションプログラム、サービスなどを参照することもできる。ここで、属性は、このような属性の値を参照するようにプログラム実行エンジン及びLASeR内部に定義されることができ、属性自体は、参照の機能を有する要素及び属性を利用して参照するように、他のデータ、ファイル、アプリケーションプログラム、サービスなどに定義されることもできる。
前述したように、本発明のコンディショナルプロセッシング方法及び装置は、データパーシング(parsing)過程でコンディショナルプロセッシング機能を実行し、サービスに必要なデータをメモリにロード(load)し、サービス提供のために不要なノードをアンロードするか、または除去することによって、受信機のメモリ資源のリサイクル率を高め、制限されたメモリサイズを有する装置の処理負担を低減することができ、メモリを効率的に管理することができる。
前述したように、属性及び属性値は、多様な方式で定義されることができ、したがって、属性及び値を定義する他の方法は、参照機能を有する要素及び属性を利用して属性及び属性値を参照する時にも同一の機能及び目的のために使用されれば、本発明の実施例によって具現されることができる。
以上、本発明をいくつかの好ましい実施例を使用して説明したが、これらの実施例は、例示的なものであって、限定的なものではない。このように、本発明の属する技術分野における通常の知識を有する者なら本発明の思想と添付の特許請求範囲に提示された権利範囲から脱することなく、均等論によって多様な変化と修正を加えることができることを理解することができる。
200 パーシングスイッチ
210 ID
220 モード
225 デクリメンタル
230 インクリメンタル
240 キーワードパース
245 キーワード
250 評価モード
255 事前評価
260 事後評価
270 リムーバブル
280 セレクションモード
285 単数
290 複数

Claims (13)

  1. コンディショナルプロセッシング方法において、
    宣言的記述言語基盤で構成された複数のノードを有するデータストリームを受信する段階と;
    前記受信したデータストリームを復号化する段階と;
    前記復号化されたデータをロードし、パースツリーを生成する段階と;
    前記パースツリーを生成する途中に、パーシングスイッチノードが感知されるか否かを判断する段階と;
    前記感知されたパーシングスイッチノードの1つ以上の属性に基づいて前記パーシングスイッチノードの1つ以上の子ノードをメモリにロードするローディング段階と;を含むコンディショナルプロセッシング方法。
  2. 前記ローディング段階は、前記パーシングスイッチノードが複数の子ノードを有する場合、前記パーシングスイッチノードの一連の子ノードを前記メモリにローディングする段階を含むことを特徴とする請求項1に記載のコンディショナルプロセッシング方法。
  3. 前記メモリに残っているノードを出力する段階をさらに含むことを特徴とする請求項1に記載のコンディショナルプロセッシング方法。
  4. 前記ローディング段階は、前記感知されたパーシングスイッチノードの属性がデクリメントル(decremental)であれば、そのメモリ要求量が減少する順に子ノードを列挙する段階を含むことを特徴とする請求項1に記載のコンディショナルプロセッシング方法。
  5. 真として評価されるノードがあれば、前記メモリに前記子ノードをローディングする段階と;
    子ノードをメモリにローディングすることを中止する段階と;をさらに含むことを特徴とする請求項4に記載のコンディショナルプロセッシング方法。
  6. 前記ローディング段階は、前記感知されたパーシングスイッチノードの属性がインクリメントル(incremental)であれば、そのメモリ要求量が増加する順に前記子ノードを列挙する段階をさらに含むことを特徴とする請求項1に記載のコンディショナルプロセッシング方法。
  7. 前記子ノードを前記メモリにローディングする段階と;
    前記メモリ状態に適していない子ノードが発見されれば、前記メモリに前記子ノードをローディングすることを中断する段階と;をさらに含むことを特徴とする請求項6に記載のコンディショナルプロセッシング方法。
  8. コンディショナルプロセッシング装置において、
    宣言的記述言語に基づいて構成された複数のノードを有するデータを復号化する復号器と;
    前記復号化されたデータをローディングしてパースツリーを生成し、パーシングスイッチノードが感知されるか否かを判断し、前記感知されたパーシングスイッチノードの1つ以上の属性に基づいて前記パーシングスイッチノードの1つ以上の子ノードをローディングするメモリ構成器と;
    前記ローディングされた子ノードを出力する構成器と;を含むコンディショナルプロセッシング装置。
  9. 前記メモリ構成器は、前記パーシングスイッチノードが複数の子ノードを有すれば、前記パーシングスイッチノードの一連の子ノードを前記メモリにローディングすることを特徴とする請求項8に記載のコンディショナルプロセッシング装置。
  10. 前記メモリ構成器は、前記感知されたパーシングスイッチノードの属性がデクリメントル(decremental)であれば、そのメモリ要求量が減少する順に前記子ノードを列挙することを特徴とする請求項8に記載のコンディショナルプロセッシング装置。
  11. 前記メモリ構成器は、真として評価されるノードがあれば、前記子ノードを前記メモリにロードし、前記メモリに前記子ノードをローディングすることを中断することを特徴とする請求項10に記載のコンディショナルプロセッシング装置。
  12. 前記メモリ構成器は、前記感知されたパーシングスイッチノードの属性がインクリメントル(incremental)であれば、そのメモリ要求量が増加する順に前記子ノードを列挙することを特徴とする請求項8に記載のコンディショナルプロセッシング装置。
  13. 前記メモリ構成器は、
    前記メモリに前記子ノードをロードし、
    前記メモリの状態に適していない子ノードが発見されれば、前記メモリに子ノードをローディングすることを中断することを特徴とする請求項12に記載のコンディショナルプロセッシング装置。
JP2011534398A 2008-10-31 2009-10-30 コンディショナルプロセッシング方法及び装置 Expired - Fee Related JP5536790B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2008-0107630 2008-10-31
KR1020080107630A KR101574603B1 (ko) 2008-10-31 2008-10-31 컨디셔널 프로세싱 방법 및 장치
PCT/KR2009/006363 WO2010050786A2 (en) 2008-10-31 2009-10-30 Conditional processing method and apparatus

Publications (2)

Publication Number Publication Date
JP2012507776A true JP2012507776A (ja) 2012-03-29
JP5536790B2 JP5536790B2 (ja) 2014-07-02

Family

ID=42129493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011534398A Expired - Fee Related JP5536790B2 (ja) 2008-10-31 2009-10-30 コンディショナルプロセッシング方法及び装置

Country Status (8)

Country Link
US (2) US9058181B2 (ja)
EP (1) EP2344951B1 (ja)
JP (1) JP5536790B2 (ja)
KR (1) KR101574603B1 (ja)
CN (1) CN102203734B (ja)
AU (1) AU2009310547B2 (ja)
CA (1) CA2741082C (ja)
WO (1) WO2010050786A2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10158649B2 (en) * 2013-08-20 2018-12-18 Nokia Technologies Oy Method and apparatus for privacy-enhanced evidence evaluation
US9588975B2 (en) 2014-06-11 2017-03-07 International Business Machines Corporation Processing large XML files by splitting and hierarchical ordering
CN106293653B (zh) * 2015-05-19 2020-11-06 深圳市腾讯计算机系统有限公司 代码处理方法及装置、计算机可读介质
CN104965794B (zh) * 2015-05-26 2017-12-22 努比亚技术有限公司 内存管理方法及装置
US10620950B2 (en) 2016-09-07 2020-04-14 International Business Machines Corporation Message parsing in a distributed stream processing system
CN109165014B (zh) * 2018-07-17 2022-03-29 北京新唐思创教育科技有限公司 用于编辑控件的方法、装置、设备以及计算机存储介质
US11106681B2 (en) * 2018-09-28 2021-08-31 Splunk Inc. Conditional processing based on inferred sourcetypes

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003018580A (ja) * 2001-06-29 2003-01-17 Matsushita Electric Ind Co Ltd コンテンツ配信システムおよび配信方法
JP2006195675A (ja) * 2005-01-12 2006-07-27 Osaka Univ ブラウジングシステム
JP2007012074A (ja) * 2005-06-30 2007-01-18 Ricoh Co Ltd 文書画像のコンテント適応スケーリング用ホワイトスペースグラフ及びツリー
JP2009543507A (ja) * 2006-07-11 2009-12-03 韓國電子通信研究院 LASeRコンテンツ表示装置及び方法

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4200927A (en) * 1978-01-03 1980-04-29 International Business Machines Corporation Multi-instruction stream branch processing mechanism
US5339421A (en) * 1991-03-22 1994-08-16 International Business Machines Corporation General data stream parser for encoding and decoding data and program interface for same
US6230173B1 (en) * 1995-07-17 2001-05-08 Microsoft Corporation Method for creating structured documents in a publishing system
US5701490A (en) * 1996-01-16 1997-12-23 Sun Microsystems, Inc. Method and apparatus for compiler symbol table organization with no lookup in semantic analysis
US6314558B1 (en) * 1996-08-27 2001-11-06 Compuware Corporation Byte code instrumentation
US6085186A (en) * 1996-09-20 2000-07-04 Netbot, Inc. Method and system using information written in a wrapper description language to execute query on a network
EP1078323A4 (en) * 1997-04-22 2007-04-25 Greg Hetherington METHOD AND APPARATUS FOR PROCESSING UNSTRUCTURED DATA
JP3202968B2 (ja) * 1998-06-30 2001-08-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 表示制御情報生成方法及びコンピュータ
US6697359B1 (en) * 1999-07-02 2004-02-24 Ancor Communications, Inc. High performance switch fabric element and switch systems
US6996770B1 (en) * 1999-07-26 2006-02-07 Microsoft Corporation Methods and systems for preparing extensible markup language (XML) documents and for responding to XML requests
US6772413B2 (en) * 1999-12-21 2004-08-03 Datapower Technology, Inc. Method and apparatus of data exchange using runtime code generator and translator
US7047033B2 (en) * 2000-02-01 2006-05-16 Infogin Ltd Methods and apparatus for analyzing, processing and formatting network information such as web-pages
US6826726B2 (en) * 2000-08-18 2004-11-30 Vaultus Mobile Technologies, Inc. Remote document updating system using XML and DOM
GB0107882D0 (en) * 2001-03-29 2001-05-23 Ibm Parsing messages with multiple data formats
US7703009B2 (en) * 2001-04-09 2010-04-20 Huang Evan S Extensible stylesheet designs using meta-tag information
US7581170B2 (en) * 2001-05-31 2009-08-25 Lixto Software Gmbh Visual and interactive wrapper generation, automated information extraction from Web pages, and translation into XML
US7373597B2 (en) * 2001-10-31 2008-05-13 University Of Medicine & Dentistry Of New Jersey Conversion of text data into a hypertext markup language
WO2003065240A1 (en) * 2002-02-01 2003-08-07 John Fairweather System and method for managing collections of data on a network
AU2003216329A1 (en) * 2002-02-15 2003-09-09 Mathsoft Engineering And Education, Inc. Linguistic support for a regognizer of mathematical expressions
AU2003231305B2 (en) * 2002-05-02 2009-01-08 Intel Corporation System and method for transformation of XML documents using stylesheets
US7302383B2 (en) * 2002-09-12 2007-11-27 Luis Calixto Valles Apparatus and methods for developing conversational applications
US7080094B2 (en) * 2002-10-29 2006-07-18 Lockheed Martin Corporation Hardware accelerated validating parser
US20040221319A1 (en) * 2002-12-06 2004-11-04 Ian Zenoni Application streamer
DE10339537A1 (de) * 2003-08-26 2005-03-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Radio
US7302678B2 (en) * 2003-09-10 2007-11-27 Sap Aktiengesellschaft Symmetric transformation processing system
US20050102652A1 (en) * 2003-11-07 2005-05-12 Sony Corporation System and method for building software suite
US7165216B2 (en) * 2004-01-14 2007-01-16 Xerox Corporation Systems and methods for converting legacy and proprietary documents into extended mark-up language format
US20050188350A1 (en) * 2004-02-20 2005-08-25 Microsoft Corporation Data binding
US20060031555A1 (en) * 2004-08-05 2006-02-09 Somsubhra Sikdar Data context switching in a semantic processor
WO2006081428A2 (en) * 2005-01-27 2006-08-03 Symyx Technologies, Inc. Parser for generating structure data
US7548926B2 (en) * 2005-10-05 2009-06-16 Microsoft Corporation High performance navigator for parsing inputs of a message
US7933928B2 (en) * 2005-12-22 2011-04-26 Oracle International Corporation Method and mechanism for loading XML documents into memory
US7496667B2 (en) * 2006-01-31 2009-02-24 International Business Machines Corporation Decentralized application placement for web application middleware
US7720835B2 (en) * 2006-05-05 2010-05-18 Visible Technologies Llc Systems and methods for consumer-generated media reputation management
US8209605B2 (en) * 2006-12-13 2012-06-26 Pado Metaware Ab Method and system for facilitating the examination of documents
JP2008310685A (ja) * 2007-06-15 2008-12-25 Hitachi Ltd 冗長性を維持した性能最適化を行うストレージシステム
US8347039B2 (en) * 2010-01-08 2013-01-01 International Business Machines Corporation Programmable stream prefetch with resource optimization

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003018580A (ja) * 2001-06-29 2003-01-17 Matsushita Electric Ind Co Ltd コンテンツ配信システムおよび配信方法
JP2006195675A (ja) * 2005-01-12 2006-07-27 Osaka Univ ブラウジングシステム
JP2007012074A (ja) * 2005-06-30 2007-01-18 Ricoh Co Ltd 文書画像のコンテント適応スケーリング用ホワイトスペースグラフ及びツリー
JP2009543507A (ja) * 2006-07-11 2009-12-03 韓國電子通信研究院 LASeRコンテンツ表示装置及び方法

Also Published As

Publication number Publication date
AU2009310547A1 (en) 2010-05-06
AU2009310547A2 (en) 2011-05-26
AU2009310547B2 (en) 2015-11-19
US9298601B2 (en) 2016-03-29
EP2344951B1 (en) 2018-12-05
CA2741082C (en) 2016-02-02
WO2010050786A3 (en) 2010-08-12
KR20100048460A (ko) 2010-05-11
US20150278083A1 (en) 2015-10-01
KR101574603B1 (ko) 2015-12-04
EP2344951A4 (en) 2012-05-16
US9058181B2 (en) 2015-06-16
US20100115129A1 (en) 2010-05-06
EP2344951A2 (en) 2011-07-20
CN102203734A (zh) 2011-09-28
CA2741082A1 (en) 2010-05-06
WO2010050786A2 (en) 2010-05-06
JP5536790B2 (ja) 2014-07-02
CN102203734B (zh) 2015-05-20

Similar Documents

Publication Publication Date Title
JP5536790B2 (ja) コンディショナルプロセッシング方法及び装置
US7966408B2 (en) Adaptive multimedia integration language (AMIL) for adaptive multimedia applications and presentations
US8954457B2 (en) Method for processing a structured document to render, and corresponding processor
JP4481001B2 (ja) データ文書のインクリメンタルボトムアップ構築
US20020170070A1 (en) Multiple updates to content descriptions using a single command
JP5414792B2 (ja) リッチメディアサービスを提供する方法及び装置
US7512955B2 (en) Method and system for accessing and implementing declarative applications used within digital multi-media broadcast
KR20110074853A (ko) 리치미디어 서비스를 제공하는 방법 및 장치
US10095801B2 (en) Providing interaction between a first content set and a second content set in a computer system
JP5026407B2 (ja) ツリーデータ構造を処理する方法
JP2004180258A (ja) 構造化データの送信装置
JP2004320074A (ja) 構造化データの受信プログラム
JP2004320703A (ja) 構造化データの受信方法
JP2004178545A (ja) 構造化データの送信方法
JP2004320069A (ja) 構造化データの受信プログラム
JP2004318801A (ja) 構造化データの受信方法
JP2004320704A (ja) 構造化データの受信方法
JP2004320070A (ja) 構造化データの受信プログラム
JP2004318800A (ja) 構造化データの受信方法
JP2004318798A (ja) 構造化データの受信方法
JP2004320068A (ja) 構造化データの受信プログラム
JP2004318797A (ja) 構造化データの受信方法
JP2004318796A (ja) 構造化データの受信方法
JP2004318804A (ja) 構造化データの受信方法
JP2004318808A (ja) 構造化データの受信方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120910

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130917

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131001

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20131225

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140116

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140401

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140424

R150 Certificate of patent or registration of utility model

Ref document number: 5536790

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees