JP2020047254A - Jsonを用いてデータセットの構造を変換する電子装置およびその動作方法 - Google Patents

Jsonを用いてデータセットの構造を変換する電子装置およびその動作方法 Download PDF

Info

Publication number
JP2020047254A
JP2020047254A JP2019112721A JP2019112721A JP2020047254A JP 2020047254 A JP2020047254 A JP 2020047254A JP 2019112721 A JP2019112721 A JP 2019112721A JP 2019112721 A JP2019112721 A JP 2019112721A JP 2020047254 A JP2020047254 A JP 2020047254A
Authority
JP
Japan
Prior art keywords
data
spreadsheet
electronic device
detected
json
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
JP2019112721A
Other languages
English (en)
Other versions
JP6653850B1 (ja
Inventor
ウォン ハ、ソン
Sung Won Ha
ウォン ハ、ソン
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.)
TOBESOFT CO Ltd
Original Assignee
TOBESOFT 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 TOBESOFT CO Ltd filed Critical TOBESOFT CO Ltd
Application granted granted Critical
Publication of JP6653850B1 publication Critical patent/JP6653850B1/ja
Publication of JP2020047254A publication Critical patent/JP2020047254A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】JSONを用いてデータセットの構造を変換する電子装置及びその動作方法を提供する。【解決手段】電子装置100において、実行中のプログラムと対応するウィンドウを表示する表示部、プログラムを介したデータ構造の変換に用いられる複数の識別子及び対応するインストラクションがマッチングされたルックアップテーブルを格納する格納部、ウィンドウ内に第1データを挿入するのに用いられる第1入力および第1データおよび第2データの生成を指示するのに用いられる第2入力を印加する入力部、第1データから識別子を検出する文字識別部、ルックアップテーブルを用いて識別子と対応するインストラクションを確認した後、第1データと対応するスプレッドシートの構造を決定する構造設計部、および構造が決定されたスプレッドシートを生成し、第1データに含まれたオブジェクトおよび配列をスプレッドシートに挿入するデータセット生成部を含む。【選択図】図1

Description

本発明は、JSONを用いてデータセットの構造を変換する電子装置およびその動作方法に関する。
最近、コンピュータ、スマートフォンまたはタブレットPCなどのような電子装置が広く普及されるにつれて、このような電子装置を用いてデータを処理する様々な方式が紹介されている。例えば、様々なセンサが備えられた電子装置は、センサを介して電子装置の周辺環境に関する情報または電子装置を用いるユーザに関する情報などを取得し、取得された情報に基づいてデータを処理することができる。特に、超高速インターネットを基礎にしたネットワーク網が構築され、いつどこでもインターネットに接続できる環境が作られることによって、ユーザは遠隔地のサーバに接続して電子文書を閲覧、作成または編集することができるようになった。このように、最近では、電子装置に所定の電子文書関連のプログラムが設置されていなくても、インターネットに接続さえできれば、いつどこでも電子文書を閲覧、作成または編集できるウェブベースの文書編集サービスが登場している。
ウェブベースの文書編集サービスは、様々な電子装置が管理サーバに接続した後、ブラウザを介してマークアップ言語(Markup Language)ベースの電子文書を閲覧した後、該電子文書を作成および編集できる機能を支援している。ここで、マークアップ言語(Markup Language)は、XML(eXtensible Markup Language)、HTML(HyperText Markup Language)などのように電子文書に含まれているコンテンツの書式、構造などに関する付加情報をタグによって表す言語を意味する。
一方、JSON(JavaScript(登録商標) Object Notation)(以下、「JSON」と称する)は、人が読んだり書いたりするのに容易であり、機械が分析し生成するにも容易な軽量のデータ交換形式であって、特定のプログラミング言語やプラットフォームに拘らない独立的な特性を有しているため、C、C++、C#、Java(登録商標)、JavaScript(登録商標)、PerlおよびPythonなどのような様々なプログラミング言語を介して容易に利用可能であるという長所がある。
電子装置は、サーバとの通信時、XMLに従って作成されたデータセット(data set)を転送する。この時、データセットは、行と列からなる2次元形態の情報を意味する。一方、サーバはJSONに従って作成されたJSONデータを用いて情報を処理し、JSONデータは2次元を含む多次元形態に定義できることにその特徴がある。それにより、電子装置およびサーバ間にデータをやり取りするためには、データセットとJSONデータを相互変換できるアルゴリズムが必要である。
本文書に開示された様々な実施形態は、電子装置およびサーバ間の通信時にデータセットとJSONデータ間の変換を容易に実行する方法を提案するために導き出されたものである。例えば、一実施形態による電子装置は、2次元形態の情報であるデータセットを生成した後、生成されたデータセットがサーバに転送されて処理されるようにするために、前記生成されたデータセットを多次元形態の情報であるJSONデータに変換することができる。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置は、電子装置において実行中のプログラムと対応するウィンドウを表示するように設定された表示部、前記プログラムを介したデータ構造の変換に用いられる複数の識別子および前記複数の識別子の各々に対応するインストラクションがマッチングされたルックアップテーブルを格納する格納部、前記表示部を介して表示されている前記ウィンドウ内に第1データを挿入するのに用いられる第1入力および前記挿入された第1データおよび前記ルックアップテーブルに基づいて第2データの生成を指示するのに用いられる第2入力を印加する入力部、前記第1入力に応じて挿入された第1データから前記複数の識別子のうち少なくとも一つの識別子を検出する文字識別部、前記ルックアップテーブルを用いて前記検出された少なくとも一つの識別子と対応するインストラクションを確認した後、前記第1データと対応するスプレッドシートの構造を決定する構造設計部、および前記構造が決定されたスプレッドシートを生成し、前記確認されたインストラクションに応じて前記第1データに含まれた一つ以上のオブジェクトおよび一つ以上の配列のうち少なくとも一つを前記生成されたスプレッドシートに挿入するデータセット生成部を含む。
また、本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法は、電子装置において実行中のプログラムと対応するウィンドウを表示するステップ、前記プログラムを介したデータ構造の変換に用いられる複数の識別子および前記複数の識別子の各々に対応するインストラクションがマッチングされたルックアップテーブルを格納するステップ、前記ウィンドウ内に第1データを挿入するのに用いられる第1入力および前記挿入された第1データおよび前記ルックアップテーブルに基づいて第2データの生成を指示するのに用いられる第2入力を印加するステップ、前記第1入力に応じて挿入された第1データから前記複数の識別子のうち少なくとも一つの識別子を検出するステップ、前記ルックアップテーブルを用いて前記検出された少なくとも一つの識別子と対応するインストラクションを確認した後、前記第1データと対応するスプレッドシートの構造を決定するステップ、および前記構造が決定されたスプレッドシートを生成し、前記確認されたインストラクションに応じて前記第1データに含まれた一つ以上のオブジェクトおよび一つ以上の配列のうち少なくとも一つを前記生成されたスプレッドシートに挿入するステップを含む。
本文書に開示された様々な実施形態によれば、電子装置は、2次元形態に定義されたデータセットを多次元形態に定義されたJSONデータに変換することができる。それにより、JAVA(登録商標)ベースのサーバサイドのアプリケーションにデータセットに基づいた情報を提供することが可能となって、サービスの汎用性が拡大できる。
それのみならず、最近、企業のサーバサイドで処理されるデータはJSON形式に従って定義される場合が大半であるため、本発明の一実施形態による電子装置を活用して2次元形態の情報および多次元形態の情報間の変換を容易に行うことができるのであれば、データ共有を効率的に実行することができ、データ変換のために別途の人的資源を補充する必要がなくなって費用が減少するという効果が期待できる。
本発明の一実施形態による電子装置の構成を示す説明図 本発明の一実施形態による電子装置においてデータセットとJSONデータを相互変換する過程の説明図 本発明の一実施形態による電子装置においてデータセットとJSONデータを相互変換する過程の説明図 本発明の一実施形態による電子装置においてデータセットとJSONデータを相互変換する過程の説明図 本発明の一実施形態による電子装置においてデータセットとJSONデータを相互変換する過程の説明図 本発明の一実施形態による電子装置においてデータセットとJSONデータを相互変換する過程の説明図 本発明の一実施形態による電子装置においてデータセットとJSONデータを相互変換する方法を示すフローチャート
本文書に開示された様々な実施形態は本発明を特定の実施形態に限定するために提示されたものではなく、様々な実施形態を通じて紹介された構成要素は本発明の思想および技術範囲に含まれる全ての変更可能な均等物乃至代替物を含む意味として提示されたものであることを当業者であれば容易に理解することができる。また、各図面を説明するにおいて、特に定義されない限り、技術的または科学的な用語を含めて本明細書上で用いられる全ての用語は、本発明が属する技術分野で通常の知識を有した者が一般に理解しているのと同じ意味を有している。また、本発明の目的および効果、そしてそれらを達成するための技術的構成は、添付図面と共に詳細に説明される実施形態を参照すればより明らかになるものである。本発明を説明するにおいて、公知機能または構成に関する具体的な説明が本発明の要旨を不要に濁す恐れがあると判断される場合には、それと関連した詳細な説明は省略する。そして後ほど説明される用語は本発明における構造、役割および機能などを考慮して定義された用語であって、これは使用者および運用者の意図または慣例などに応じて既存に用いられていた意味とは異なって解釈されてもよい。
本発明は、以下にて開示される実施形態に限定されるものではなく互いに異なる様々な形態で実現できることを明らかにしておく。本文書に開示された様々な実施形態は、本発明の開示が完全になるようにし、本発明が属する技術分野で通常の知識を有する者に発明の範疇を完全に知らせるために提供されるものであって、本発明は、特許請求の範囲に記載された請求項の範疇によって定義されるのみである。
本文書において、ある部分がある構成要素を「含む」とする時、これは、特に反する記載がない限り、他の構成要素を除くものではなく、他の構成要素をさらに含んでもよいことを意味する。また、本発明の様々な実施形態において、各構成要素、機能ブロックまたは手段は一つまたはそれ以上の下部構成要素で構成されてもよく、各構成要素が実行する電気、電子、機械的な機能は電子回路、集積回路、ASIC(Application Specific Integrated Circuit)などのような公知の様々な素子または機械的要素で実現されてもよく、各々別個に実現されるかまたは2以上が一つに統合されて実現されてもよい。
一方、添付されたブロック図のブロックやフローチャートのステップは、汎用コンピュータ、特殊用コンピュータ、携帯用ノートブックコンピュータ、ネットワークコンピュータなどのようなデータ処理が可能な装置のプロセッサやメモリに搭載されて指定された機能を実行するコンピュータプログラムインストラクションを意味すると解釈できる。これらのコンピュータプログラムインストラクションはコンピュータ装置に備えられたメモリまたはコンピュータ読み取り可能なメモリに格納されることができるため、ブロック図のブロックまたはフローチャートのステップで説明された機能はそれを実行するインストラクション手段を含む製造物として生産されてもよい。さらに、各ブロックまたは各ステップは、特定された論理的機能を実行するための一つ以上の実行可能なインストラクションを含むモジュール、セグメントまたはコードの一部を示すことができる。また、幾つかの代替可能な実施形態においては、ブロックまたはステップで言及された機能が定められた順とは異なって実行されるのも可能であることを注目しなければならない。例えば、次いで図示されている二つのブロックまたはステップは、実質的に同時に実行されるか、または逆順に実行されてもよく、場合によっては一部のブロックまたはステップが省略された状態で実行されてもよい。
図1は、本発明の一実施形態による電子装置の構成を示す図である。様々な実施形態によれば、電子装置100は、表示部110、格納部120、入力部130、文字識別部140、構造設計部150およびデータセット生成部160のうち少なくとも一つを含むことができる。ここで、文字識別部140、構造設計部150およびデータセット生成部160は特定のインストラクションを実行するモジュールを意味するために用いられ、前記モジュールを介して実行されるインストラクションは電子装置のプロセッサ(図示せず)により実行されると理解できることを明らかにしておく。
電子装置100の表示部110は、電子装置100から生成された情報を視覚的な形態で電子装置100の外部(例えば、ユーザ)に提供する機能をすることができる。一つの実施形態によれば、表示部110は、タッチを検知するように設定されたタッチ回路または前記タッチにより発生する力の強さを測定するように設定されたセンサ回路を含むことができる。表示部110は、電子装置100のハウジングに含まれた形態のディスプレイを意味するか、または電子装置100と有線または無線で接続される独立的な形態のディスプレイを意味する。
電子装置100の格納部120は、電子装置100の少なくとも一つの構成要素により用いられる様々なデータを格納することができる。ここで、データは、ソフトウェアおよびそれと関連した命令に対する入力データまたは出力データを含むことができる。また、格納部120は、揮発性メモリまたは不揮発性メモリを含むことができる。
一つの実施形態によれば、格納部120は、プログラムおよび前記プログラムを介して提供可能な複数のユーザインターフェースを格納することができる。また、格納部120は、プログラムを介したデータ構造の変換に用いられる複数の識別子および前記複数の識別子の各々に対応するインストラクションがマッチングされたルックアップテーブルを格納することができる。
電子装置100の入力部130は、電子装置100の構成要素に用いられる命令またはデータを電子装置100の外部(例えば、ユーザ)から受信することができる。入力部130は、マウス、キーボードおよびタッチパッドを含むことができる。一つの実施形態によれば、入力部130(例えば、キーボード)を介してユーザから受信される第1入力は、表示部110を介して表示されているウィンドウ内に任意のデータを挿入するのに用いられることができる。また、入力部130(例えば、マウス)を介してユーザから受信される第2入力は、格納部120に格納されたデータのいずれか一つを選択するのに用いられるか、または前記挿入された任意のデータおよび前記ルックアップテーブルに基づいてまた他のデータの生成を指示するのに用いられることができる。
電子装置100の文字識別部140は、入力部130を介して受信される第1入力に応じて挿入された第1データから複数の識別子のうち少なくとも一つの識別子を検出することができる。ここで、第1データは、JSON規則に従って作成されたJSONデータを意味する。また、複数の識別子は、コロン、コンマ、大括弧および中括弧のうち少なくとも一つを含むことができる。例えば、文字識別部140は、入力部130を介してJSONデータが入力される場合、入力されたJSONデータから予め設定された識別子を検出することができる。
一つの実施形態によれば、文字識別部140は、識別子として「:(コロン)」または「{}(中括弧)」が検出される場合、前記JSONデータに一つ以上のJSONオブジェクトが含まれていると判断できる。また、文字識別部140は、検出されたコロンの左側に記載されたJSONオブジェクトのキーと検出されたコロンの右側に記載されたJSONオブジェクトのバリューを識別することができる。
一つの実施形態によれば、文字識別部140は、識別子として「[](大括弧)」が検出される場合、前記JSONデータに一つ以上のJSON配列が含まれていると判断できる。また、文字識別部140は、検出された大括弧内のコンマの個数に基づいて、JSON配列内に含まれたバリューの個数を識別することができる。
電子装置100の構造設計部150は、格納部120に予め格納されたルックアップテーブルを用いて前記検出された少なくとも一つの識別子と対応するインストラクションを確認することができる。また、構造設計部150は、ルックアップテーブルを確認した結果に基づいて、JSONデータと対応するスプレッドシートの構造を決定することができる。例えば、コロンと対応するインストラクションは、第1に、コロンの左側に記載されたキーと右側に記載されたバリューを識別し、第2に、識別されたキーのうち重複しない互いに異なるキーの個数を確認し、第3に、確認されたキーの個数だけスプレッドシートの列を追加し、第4に、前記キーが識別された順に応じてスプレッドシートの第1行に前記識別されたキーを挿入し、第5に、前記識別されたバリューを対応するキーが記載された列に属する行に挿入する動作を含むことができる。仮に識別子としてコロンが検出される場合、構造設計部150は、前記インストラクションに応じてスプレッドシートの構造を決定することができる。
電子装置100のデータセット生成部160は、構造設計部150によりスプレッドシートの構造が決定される場合、前記構造が決定されたスプレッドシートを生成することができる。また、データセット生成部160は、ルックアップテーブルを介して確認されたインストラクションに応じてJSONデータに含まれた一つ以上のオブジェクトおよび一つ以上の配列のうち少なくとも一つを前記生成されたスプレッドシートに挿入することができる。
一つの実施形態によれば、データセット生成部160は、少なくとも一つの識別子として一つ以上のコロンまたは中括弧が検出される場合、前記検出された一つ以上のコロンの個数または前記検出された中括弧の個数に応じて前記第1データに含まれた前記一つ以上のオブジェクトの個数を確認することができる。
また、データセット生成部160は、生成されたスプレッドシートの予め指定された領域中の1番目の列に第1文字および前記第1文字と対応する索引値を行を変えながら挿入することができる。例えば、第1文字は「parentIdx」であり、前記第1文字と対応する索引値は0または1以上の自然数である。ここで、第1文字と対応する索引値は、第1データに含まれた下位オブジェクト間の順を識別するのに用いられることができる。
一方、データセット生成部160は、予め指定された領域中の2番目の列に前記検出された一つ以上のコロンの左側に記載された第2文字および前記検出された一つ以上のコロンの右側に記載された文字のうち前記第2文字と対応する第3文字を行を変えながら挿入することができる。例えば、検出されたコロンの左側に「key1」が記載されており、右側に「tobesoft」が記載されている。データセット生成部160は、第2文字として「key1」を生成されたスプレッドシートの予め指定された領域中の2番目の列の1番目の行に挿入することができる。また、データセット生成部160は、第3文字として「tobesoft」を生成されたスプレッドシートの予め指定された領域中の2番目の列の2番目の行に挿入することができる。
以下では、図2a〜図2e参照して、スプレッドシートに少なくとも一つのデータを挿入する方法について具体的に説明する。
図2a〜図2eは、本発明の一実施形態による電子装置においてデータセットとJSONデータを相互変換する過程を説明するための図である。
電子装置100は、JSONデータおよびデータセットを相互変換することができる。ここで、JSONデータは、「キー(key)」:「バリュー(value)」の形態に定義されるJSONオブジェクトを含むことができる。この時、JSONオブジェクトにおいて、「:(コロン)」の左側に記入されたデータはJSONオブジェクトの「キー」を意味し、「:(コロン)」の右側に記入されたデータはJSONオブジェクトの「バリュー」を意味するものとして定義できる。様々な実施形態によれば、JSONデータは、前記JSONオブジェクトまたはバリューが2以上羅列されたJSON配列を含むこともできる。一方、一つ以上のJSONオブジェクトは中括弧({})内に記載されてもよく、JSON配列は大括弧([])内に記載されてもよい。
一つの実施形態によれば、電子装置100は次のように予め設定された規則に従い、JSONデータおよびデータセットを1対1の対応関係に応じて相互変換することができる。例えば、電子装置100は、JSONデータに基づいてデータセットを生成する時、生成されたデータセットの最上位エレメントの名前を「dsMaster」と命名できる。また、電子装置100は、JSONデータがキー(key)を含まずバリュー(value)だけを含むかまたはJSON配列だけを含む場合、データセットを構成する少なくとも一つの列の名前を「Column」と命名し、前記「Column」と命名された列に前記バリューまたはJSON配列に記載されたデータが挿入されることができる。また、電子装置100は、JSONデータ内に下位JSONオブジェクトが存在する場合、前記下位JSONオブジェクトの名前を「データセット名_キー名」と命名できる。例えば、「dsMaster」と命名されたデータセットに「key2」と命名されたキーを有する下位JSONオブジェクトが含まれている場合、電子装置100は、前記下位JSONオブジェクトと対応するデータセットの名前を「dsMaster_key2」と命名できる。
一方、JSONデータおよびデータセットに含まれた全てのデータのタイプはストリング(string)に定義できる。また、生成された全てのデータセットはparentIdx列を含むように設定することができ、電子装置100は前記parentIdx列に記載された値を用いて下位JSONオブジェクト間の順を識別することができる。また、JSONデータ内のJSONオブジェクトのバリューがJSONオブジェクトの形態を有しつつ1個のみ存在する場合、前記バリューはJSON配列に定義されなくてもよい。
以上の規則を図2a〜図2eに示された実施形態を通じてより詳しく説明する。
図2aには、第1JSONデータ200および第1データセット201が示されている。一つの実施形態によれば、電子装置100は、第1JSONデータ200に基づいて第1データセット201を生成するか、または第1データセット201に基づいて第1JSONデータ200を生成することができる。
例えば、電子装置100は第1JSONデータ200から総3個の「:(コロン)」を識別することができ、それにより、第1JSONデータ200に総3個のJSONオブジェクトが含まれていると判断できる。この時、第1JSONオブジェクトは「key1」:「tobesoft」であり、第2JSONオブジェクトは「key2」:「nexacro platform」であり、第3JSONオブジェクトは「key3」:「200」である。
一つの実施形態によれば、電子装置100は、下位JSONオブジェクト間の順を識別するのに用いられるparentIdx列を第1データセット201の第1列に決定することができる。次に、電子装置100は、第1〜第3JSONオブジェクトが記載された順に応じて第1データセット201の第2列〜第4列を決定することができる。より具体的には、電子装置100は、第1JSONオブジェクトのキーである「key1」を第1データセット201の第1行および第2列に挿入することができ、第2JSONオブジェクトのキーである「key2」を第1データセット201の第1行および第3列に挿入することができ、第3JSONオブジェクトのキーである「key3」を第1データセット201の第1行および第4列に挿入することができる。次に、電子装置100は、第1JSONオブジェクトのバリューである「tobesoft」を第1データセット201の第2行および第2列に挿入することができ、第2JSONオブジェクトのバリューである「nexacro platform」を第1データセット201の第2行および第3列に挿入することができ、第3JSONオブジェクトのバリューである「200」を第1データセット201の第2行および第4列に挿入することができる。すなわち、電子装置100は、第1JSONデータ200内のJSONオブジェクトのキーを第1行に挿入することができ、バリューを対応するキーが記載された列の第2行以下の行に挿入することができる。一方、第1データセット201の名前は、予め設定されたものに従って「dsMaster」と命名できる。
図2bには、第2JSONデータ210および第2データセット211が示されている。一つの実施形態によれば、電子装置100は、第2JSONデータ210に基づいて第2データセット211を生成するか、または第2データセット211に基づいて第2JSONデータ210を生成することができる。
例えば、電子装置100は第2JSONデータ210から大括弧を識別することができ、それにより、第2JSONデータ210はJSON配列を含んでいると判断できる。電子装置100は、JSON配列に含まれたコンマ(、)からJSON配列に含まれたバリューの個数を識別することができる。一つの実施形態によれば、電子装置100は、第2JSONデータ210から5個のバリューを識別することができる。
一つの実施形態によれば、電子装置100は、第2JSONデータ210がキー(key)を含まずバリュー(value)またはJSON配列だけで構成されたものであると判断することができ、それにより、第2データセット211を構成する少なくとも一つの列の名前を「Column」と命名できる。一方、前記「Column」と命名された列には、前記バリューまたはJSON配列に記載されたデータが挿入されることができる。電子装置100は、下位JSONオブジェクト間の順を識別するのに用いられるparentIdx列を第2データセット211の第1列に決定することができる。次に、電子装置100は、第2データセット211の第2列の第1行に「Column」を挿入することができる。また、電子装置100は、第2JSONデータ210から識別されたJSON配列内のバリューを、識別された順に応じて第2データセット211の第2行および第2列から行を変えながら挿入することができる。それにより、第2データセット211の第2行および第2列には「11100」が挿入され、第2データセット211の第3行および第2列には「500」が挿入され、第2データセット211の第4行および第2列には「300」が挿入され、第2データセット211の第5行および第2列には「11200」が挿入され、第2データセット211の第6行および第2列には「400」が挿入されることができる。すなわち、電子装置100は、第2JSONデータ210内にキーが含まれていないため、第1行に「Column」を挿入することができる。また、電子装置100は、JSON配列内のバリューを「Column」が記載された列の第2行以下の行に挿入することができる。一方、第2データセット211の名前は、予め設定されたものに従って「dsMaster」と命名できる。
図2cには、第3JSONデータ220と第3−1データセット221および第3−2データセット222が示されている。一つの実施形態によれば、電子装置100は、第3JSONデータ220に基づいて第3−1データセット221および第3−2データセット222を生成するか、または第3−1データセット221および第3−2データセット222に基づいて第3JSONデータ220を生成することができる。
例えば、電子装置100は第3JSONデータ220から総3個の「:(コロン)」を識別することができ、それにより、第3JSONデータ220に総3個のJSONオブジェクトが含まれていると判断できる。第1JSONオブジェクトは「key1」:「tobesoft」であり、第2JSONオブジェクトは「key2」:[「key2_0」、「key2_1」、「3000」]であり、第3JSONオブジェクトは「key3」:「200」である。これと共に、電子装置100は、第2JSONオブジェクトのバリューに含まれた大括弧からJSON配列を識別することができる。
一つの実施形態によれば、電子装置100は、図2aで説明した方式に応じて、第1〜第3JSONオブジェクトを用いて第3−1データセット221を生成することができる。この場合、第3−1データセット221の名前は、予め設定されたものに従って「dsMaster」と命名できる。
一つの実施形態によれば、JSONオブジェクトのバリューが第2JSONオブジェクトのようにJSON配列の形態に定義されている場合、電子装置100は、第2JSONオブジェクトのバリューを第3−1データセット221の第2行および第3列に挿入せず、新しいデータセットである第3−2データセット222に挿入することができる。このようにJSON配列の形態に定義されたデータをデータセットに作る時には、図2bで説明した方式が用いられることができる。すなわち、電子装置100は、図2bで説明した方式に応じて、第2JSONオブジェクトのバリューと対応する第3−2データセット222を生成することができる。この時、第3−2データセット222の名前は、上位データセットの名前と第2JSONオブジェクトのキーを参考にして、「dsMaster_key2」と命名できる。
図2dには、第4JSONデータ230と第4データセット231が示されている。一つの実施形態によれば、電子装置100は、第4JSONデータ230に基づいて第4データセット231を生成するか、または第4データセット231に基づいて第4JSONデータ230を生成することができる。
例えば、電子装置100は第4JSONデータ230から大括弧を識別することができ、それにより、第4JSONデータ230はJSON配列を含んでいると判断できる。電子装置100は、JSON配列に含まれたコンマ(、)からJSON配列に含まれたバリューの個数を識別することができる。一つの実施形態によれば、電子装置100は、第4JSONデータ230から7個のバリューを識別することができる。
また、電子装置100は識別された7個のバリューが「{}(中括弧)」で構成されていることを識別することができ、それにより、第4JSONデータ230に含まれた7個のバリューは7個の下位JSONデータ(第4−1〜第4−7JSONデータ)の形態に定義されていることを識別することができる。第4−1JSONデータは{「color」:「red」、「value」:「2000」}であり、第4−2JSONデータは{「color」:「green」、「value」:「#0f0」}であり、第4−3JSONデータは{「color」:「blue」、「value」:「#00f」}であり、第4−4JSONデータは{「color」:「cyan」、「value」:「#0ff」}であり、第4−5JSONデータは{「color」:「magenta」、「value」:「#f0f」}であり、第4−6JSONデータは{「color」:「yellow」、「value」:「#ff0」}であり、第4−7JSONデータは{「color」:「black」、「value」:「5000」}である。
一つの実施形態によれば、電子装置100は、第4−1〜第4−7JSONデータの各々がキーとバリューとを含むものと判断される場合、第4データセット231を構成する少なくとも一つの列の名前を第4−1〜第4−7JSONデータの各々のキーに命名することができ、前記命名された列に前記第4−1〜第4−7JSONデータの各々に含まれたバリューを挿入することができる。電子装置100は、下位JSONオブジェクト間の順を識別するのに用いられるparentIdx列を第4データセット231の第1列に決定することができる。次に、電子装置100は、第4データセット231の第1行および第2列に第4−1〜第4−7JSONデータの1番目のキーである「color」を挿入することができ、第4データセット231の第1行および第3列に第4−1〜第4−7JSONデータの2番目のキーである「value」を挿入することができる。次に、電子装置100は、第4−1〜第4−7JSONデータのバリューを対応するキーが挿入された列に順次挿入することができる。例えば、「color」と対応するバリューである「red」、「green」、「blue」、「cyan」、「magenta」、「yellow」、「black」は、第4データセット231の第2列に行を変えながら順次挿入されることができる。また、「value」と対応するバリューである「2000」、「#0f0」、「#00f」、「#0ff」、「#f0f」、「#ff0」、「5000」は、第4データセット231の第3列に行を変えながら順次挿入されることができる。一方、第4データセット231の名前は、予め設定されたものに従って「dsMaster」と命名できる。
図2eには、第5JSONデータ240、そして第5−1データセット241、第5−2データセット242および第5−3データセット243が示されている。一つの実施形態によれば、電子装置100は、第5JSONデータ240に基づいて第5−1データセット241、第5−2データセット242および第5−3データセット243を生成するか、または第5−1データセット241、第5−2データセット242および第5−3データセット243に基づいて第5JSONデータ240を生成することができる。
例えば、電子装置100は第5JSONデータ240から第1レベルに属する3個の「:(コロン)」と第2レベルに属する3個の「:(コロン)」を識別することができ、それにより、第5JSONデータ240に総6個のJSONオブジェクトが含まれていると判断できる。より具体的には、電子装置100は、第5JSONデータ240に上位レベルである第1レベルに属する3個のJSONオブジェクトと下位レベルである第2レベルに属する3個のJSONオブジェクトとが含まれていると判断できる。
一つの実施形態によれば、第1レベルに属する第1JSONオブジェクトは「key1」:「tobesoft」であり、第2JSONオブジェクトは「key2」:{「key2_0」:「key2_0_0」、「key2_1」:「key2_1_0」、「key2_2」:「2000」}であり、第3JSONオブジェクトは「key3」:[「key3_1」、「5000」、「key3_3」]である。また、第2レベルに属する第4JSONオブジェクトは「key2_0」:「key2_0_0」であり、第5JSONオブジェクトは「key2_1」:「key2_1_0」であり、第6JSONオブジェクトは「key2_2」:「2000」である。これと共に、電子装置100は、第3JSONオブジェクトのバリューに含まれた大括弧からJSON配列を識別することができる。
一つの実施形態によれば、電子装置100は、図2aで説明した方式に応じて、第1〜第3JSONオブジェクトを用いて第5−1データセット241を生成することができる。この場合、第5−1データセット241の名前は、予め設定されたものに従って「dsMaster」と命名できる。
一つの実施形態によれば、JSONオブジェクトのバリューが第2JSONオブジェクトのように第4〜第6JSONオブジェクトを含む下位JSONオブジェクトの形態に定義されている場合、電子装置100は、第2JSONオブジェクトのバリューを第5−1データセット241の第2行および第3列に挿入せず、新しいデータセットである第5−2データセット242に挿入することができる。この時、第5−2データセット242の名前は、上位データセットの名前と第2JSONオブジェクトのキーを参考にして、「dsMaster_key2」と命名できる。
一つの実施形態によれば、JSONオブジェクトのバリューが第3JSONオブジェクトのようにJSON配列の形態に定義されている場合、電子装置100は、第3JSONオブジェクトのバリューを第5−1データセット241の第2行および第4列に挿入せず、新しいデータセットである第5−3データセット243に挿入することができる。このようにJSON配列の形態に定義されたデータをデータセットに作る時には、図2bで説明した方式が用いられることができる。すなわち、電子装置100は、図2bで説明した方式に応じて、第3JSONオブジェクトのバリューと対応する第5−3データセット243を生成することができる。この時、第5−3データセット243の名前は、上位データセットの名前と第3JSONオブジェクトのキーを参考にして、「dsMaster_key3」と命名できる。
図3は、本発明の一実施形態による電子装置においてデータセットとJSONデータを相互変換する方法を示すフローチャートである。
ステップ300では、電子装置において実行中のプログラムと対応するウィンドウを表示することができる。
ステップ310では、前記プログラムを介したデータ構造の変換に用いられる複数の識別子および前記複数の識別子の各々に対応するインストラクションがマッチングされたルックアップテーブルを格納することができる。この場合、前記複数の識別子は、コロン、コンマ、大括弧および中括弧のうち少なくとも一つを含むことができる。
ステップ320では、前記ウィンドウ内に第1データを挿入するのに用いられる第1入力、および前記挿入された第1データおよび前記ルックアップテーブルに基づいて第2データの生成を指示するのに用いられる第2入力を印加することができる。
ステップ330では、前記第1入力に応じて挿入された第1データから前記複数の識別子のうち少なくとも一つの識別子を検出することができる。
ステップ340では、前記ルックアップテーブルを用いて前記検出された少なくとも一つの識別子と対応するインストラクションを確認した後、前記第1データと対応するスプレッドシートの構造を決定することができる。
一つの実施形態によれば、電子装置100は、少なくとも一つの識別子として一つ以上のコロンが検出される場合、前記一つ以上のコロンの左側に記載された文字を識別することができる。また、電子装置100は、前記識別された文字のうち重複せず且つ互いに異なる文字の個数を確認することができる。また、電子装置100は、前記確認された個数に基づいて前記スプレッドシートの列の個数を決定することができる。また、電子装置100は、前記決定された列の個数に応じて前記スプレッドシートの構造を決定することができる。
また他の実施形態によれば、電子装置100は、前記少なくとも一つの識別子として一つ以上のコロンが検出される場合、前記一つ以上のコロンの右側に記載された文字を識別することができる。また、電子装置100は、前記識別された文字のうち重複せず且つ互いに異なる文字の個数を確認することができる。また、電子装置100は、前記確認された個数に基づいて前記スプレッドシートの行の個数を決定することができる。また、電子装置100は、前記決定された行の個数に応じて前記スプレッドシートの構造を決定することができる。
また他の実施形態によれば、電子装置100は、前記少なくとも一つの識別子としてコロンが検出されず且つ一つ以上のコンマおよび1対以上の大括弧が検出される場合、前記検出された1対以上の大括弧の個数に応じて前記第1データに含まれた前記一つ以上の配列の個数を確認することができる。また、電子装置100は、前記検出された一つ以上のコンマの個数に応じて前記一つ以上の配列に含まれた索引値の個数を確認することができる。
また他の実施形態によれば、電子装置100は、前記確認された一つ以上の配列の個数に基づいて前記スプレッドシートの列の個数を決定することができ、前記決定された列の個数に応じて前記スプレッドシートの構造を決定することができる。また、電子装置100は、前記確認された索引値の個数に基づいて前記スプレッドシートの行の個数を決定することができ、前記決定された行の個数に応じて前記スプレッドシートの構造を決定することができる。
ステップ350では、前記構造が決定されたスプレッドシートを生成し、前記確認されたインストラクションに応じて前記第1データに含まれた一つ以上のオブジェクトおよび一つ以上の配列のうち少なくとも一つを前記生成されたスプレッドシートに挿入することができる。
一つの実施形態によれば、電子装置100は、前記少なくとも一つの識別子として一つ以上のコロンまたは前記中括弧が検出される場合、前記検出された一つ以上のコロンの個数または前記検出された中括弧の個数に応じて前記第1データに含まれた前記一つ以上のオブジェクトの個数を確認することができる。また、電子装置100は、前記生成されたスプレッドシートの予め指定された領域中の1番目の列に第1文字および前記第1文字と対応する索引値を行を変えながら挿入することができる。また、電子装置100は、前記予め指定された領域中の2番目の列に前記検出された一つ以上のコロンの左側に記載された第2文字および前記検出された一つ以上のコロンの右側に記載された文字のうち前記第2文字と対応する第3文字を行を変えながら挿入することができる。
また他の実施形態によれば、電子装置100は、前記生成されたスプレッドシートの予め指定された領域中の1番目の列に第1文字および前記第1文字と対応する索引値を行を変えながら挿入することができる。また、電子装置100は、前記予め指定された領域中の2番目の列に第2文字および前記一つ以上の配列に含まれた索引値を行を変えながら挿入することができる。
様々な実施形態によれば、図3に開示された動作のうちの一部は省略されるかまたは複数回繰り返し実行されてもよい。また、図3に開示された動作の各々は一つの実施形態に見るのが妥当であり、いずれか一つの動作が他の一つの動作に従属するものに制限して解釈してはならない。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置は、電子装置において実行中のプログラムと対応するウィンドウを表示するように設定された表示部、前記プログラムを介したデータ構造の変換に用いられる複数の識別子および前記複数の識別子の各々に対応するインストラクションがマッチングされたルックアップテーブルを格納する格納部、前記表示部を介して表示されている前記ウィンドウ内に第1データを挿入するのに用いられる第1入力および前記挿入された第1データおよび前記ルックアップテーブルに基づいて第2データの生成を指示するのに用いられる第2入力を印加する入力部、前記第1入力に応じて挿入された第1データから前記複数の識別子のうち少なくとも一つの識別子を検出する文字識別部、前記ルックアップテーブルを用いて前記検出された少なくとも一つの識別子と対応するインストラクションを確認した後、前記第1データと対応するスプレッドシートの構造を決定する構造設計部、および前記構造が決定されたスプレッドシートを生成し、前記確認されたインストラクションに応じて前記第1データに含まれた一つ以上のオブジェクトおよび一つ以上の配列のうち少なくとも一つを前記生成されたスプレッドシートに挿入するデータセット生成部を含むことができる。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置において、前記複数の識別子は、コロン、コンマ、大括弧および中括弧のうち少なくとも一つを含むことを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置において、前記構造設計部は、前記少なくとも一つの識別子として一つ以上のコロンが検出される場合、前記一つ以上のコロンの左側に記載された文字を識別し、前記識別された文字のうち重複せず且つ互いに異なる文字の個数を確認し、前記確認された個数に基づいて前記スプレッドシートの列の個数を決定し、前記決定された列の個数に応じて前記スプレッドシートの構造を決定することを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置において、前記構造設計部は、前記少なくとも一つの識別子として一つ以上のコロンが検出される場合、前記一つ以上のコロンの右側に記載された文字を識別し、前記識別された文字のうち重複せず且つ互いに異なる文字の個数を確認し、前記確認された個数に基づいて前記スプレッドシートの行の個数を決定し、前記決定された行の個数に応じて前記スプレッドシートの構造を決定することを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置において、前記データセット生成部は、前記少なくとも一つの識別子として一つ以上のコロンまたは前記中括弧が検出される場合、前記検出された一つ以上のコロンの個数または前記検出された中括弧の個数に応じて前記第1データに含まれた前記一つ以上のオブジェクトの個数を確認し、前記生成されたスプレッドシートの予め指定された領域中の1番目の列に第1文字および前記第1文字と対応する索引値を行を変えながら挿入し、前記予め指定された領域中の2番目の列に前記検出された一つ以上のコロンの左側に記載された第2文字および前記検出された一つ以上のコロンの右側に記載された文字のうち前記第2文字と対応する第3文字を行を変えながら挿入することを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置において、前記構造設計部は、前記少なくとも一つの識別子としてコロンが検出されず且つ一つ以上のコンマおよび1対以上の大括弧が検出される場合、前記検出された1対以上の大括弧の個数に応じて前記第1データに含まれた前記一つ以上の配列の個数を確認し、前記検出された一つ以上のコンマの個数に応じて前記一つ以上の配列に含まれた索引値の個数を確認することを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置において、前記構造設計部は、前記確認された一つ以上の配列の個数に基づいて前記スプレッドシートの列の個数を決定し、前記決定された列の個数に応じて前記スプレッドシートの構造を決定することを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置において、前記構造設計部は、前記確認された索引値の個数に基づいて前記スプレッドシートの行の個数を決定し、前記決定された行の個数に応じて前記スプレッドシートの構造を決定することを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置において、前記データセット生成部は、前記生成されたスプレッドシートの予め指定された領域中の1番目の列に第1文字および前記第1文字と対応する索引値を行を変えながら挿入し、前記予め指定された領域中の2番目の列に第2文字および前記一つ以上の配列に含まれた索引値を行を変えながら挿入することを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法は、電子装置において実行中のプログラムと対応するウィンドウを表示するステップ、前記プログラムを介したデータ構造の変換に用いられる複数の識別子および前記複数の識別子の各々に対応するインストラクションがマッチングされたルックアップテーブルを格納するステップ、前記ウィンドウ内に第1データを挿入するのに用いられる第1入力および前記挿入された第1データおよび前記ルックアップテーブルに基づいて第2データの生成を指示するのに用いられる第2入力を印加するステップ、前記第1入力に応じて挿入された第1データから前記複数の識別子のうち少なくとも一つの識別子を検出するステップ、前記ルックアップテーブルを用いて前記検出された少なくとも一つの識別子と対応するインストラクションを確認した後、前記第1データと対応するスプレッドシートの構造を決定するステップ、および前記構造が決定されたスプレッドシートを生成し、前記確認されたインストラクションに応じて前記第1データに含まれた一つ以上のオブジェクトおよび一つ以上の配列のうち少なくとも一つを前記生成されたスプレッドシートに挿入するステップを含むことができる。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法において、前記複数の識別子は、コロン、コンマ、大括弧および中括弧のうち少なくとも一つを含むことを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法において、前記スプレッドシートの構造を決定するステップは、前記少なくとも一つの識別子として一つ以上のコロンが検出される場合、前記一つ以上のコロンの左側に記載された文字を識別するステップ、前記識別された文字のうち重複せず且つ互いに異なる文字の個数を確認するステップ、前記確認された個数に基づいて前記スプレッドシートの列の個数を決定するステップ、および前記決定された列の個数に応じて前記スプレッドシートの構造を決定するステップをさらに含むことを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法において、前記スプレッドシートの構造を決定するステップは、前記少なくとも一つの識別子として一つ以上のコロンが検出される場合、前記一つ以上のコロンの右側に記載された文字を識別するステップ、前記識別された文字のうち重複せず且つ互いに異なる文字の個数を確認するステップ、前記確認された個数に基づいて前記スプレッドシートの行の個数を決定するステップ、および前記決定された行の個数に応じて前記スプレッドシートの構造を決定するステップをさらに含むことを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法において、前記生成されたスプレッドシートに挿入するステップは、前記少なくとも一つの識別子として一つ以上のコロンまたは前記中括弧が検出される場合、前記検出された一つ以上のコロンの個数または前記検出された中括弧の個数に応じて前記第1データに含まれた前記一つ以上のオブジェクトの個数を確認するステップ、前記生成されたスプレッドシートの予め指定された領域中の1番目の列に第1文字および前記第1文字と対応する索引値を行を変えながら挿入するステップ、および前記予め指定された領域中の2番目の列に前記検出された一つ以上のコロンの左側に記載された第2文字および前記検出された一つ以上のコロンの右側に記載された文字のうち前記第2文字と対応する第3文字を行を変えながら挿入するステップをさらに含むことを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法において、前記スプレッドシートの構造を決定するステップは、前記少なくとも一つの識別子としてコロンが検出されず且つ一つ以上のコンマおよび1対以上の大括弧が検出される場合、前記検出された1対以上の大括弧の個数に応じて前記第1データに含まれた前記一つ以上の配列の個数を確認するステップ、および前記検出された一つ以上のコンマの個数に応じて前記一つ以上の配列に含まれた索引値の個数を確認するステップをさらに含むことを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法において、前記スプレッドシートの構造を決定するステップは、前記確認された一つ以上の配列の個数に基づいて前記スプレッドシートの列の個数を決定するステップ、および前記決定された列の個数に応じて前記スプレッドシートの構造を決定するステップをさらに含むことを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法において、前記スプレッドシートの構造を決定するステップは、前記確認された索引値の個数に基づいて前記スプレッドシートの行の個数を決定するステップ、および前記決定された行の個数に応じて前記スプレッドシートの構造を決定するステップをさらに含むことを特徴とする。
本文書に開示された様々な実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法において、前記生成されたスプレッドシートに挿入するステップは、前記生成されたスプレッドシートの予め指定された領域中の1番目の列に第1文字および前記第1文字と対応する索引値を行を変えながら挿入するステップ、および前記予め指定された領域中の2番目の列に第2文字および前記一つ以上の配列に含まれた索引値を行を変えながら挿入するステップをさらに含むことができる。
本発明の一つの実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法は、コンピュータとの結合によって実行させるための格納媒体に格納されたコンピュータプログラムで実現されてもよい。
また、本発明の一つの実施形態により、JSONを用いてデータセットの構造を変換する電子装置の動作方法は、様々なコンピュータ手段を介して実行できるプログラム命令形態で実現されてコンピュータ読み取り可能な媒体に記録されてもよい。前記コンピュータ読み取り可能な媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせて含むことができる。前記媒体に記録されるプログラム命令は、本発明のために特別に設計されて構成されたものであるか、またはコンピュータソフトウェア当業者に公知されて使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例には、ハードディスク、フロッピーディスクおよび磁気テープのような磁気媒体(magnetic media)、CD−ROM、DVDのような光気録媒体(optical media)、フロプティカルディスク(floptical disk)のような磁気−光媒体(magneto−optical media)、およびROM、RAM、フラッシュメモリなどのようなプログラム命令を格納し実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例には、コンパイラによって作られるもののような機械語コードだけでなく、インタープリタなどを用いてコンピュータにより実行できる高級言語コードを含む。
以上のように、本発明を具体的な構成要素などのような特定事項と限定された実施形態および図面によって説明したが、これは本発明のより全般的な理解を助けるために提供されたものに過ぎず、本発明は前記実施形態に限定されるものではなく、本発明が属する分野で通常の知識を有した者であれば、このような記載から様々な修正および変形が可能である。
したがって、本発明の思想は説明された実施形態に限定して定められてはならず、後述する特許請求の範囲だけでなく、該特許請求の範囲と均等または等価的な変形がある全てのものは本発明思想の範疇に属する。

Claims (16)

  1. 電子装置において実行中のプログラムと対応するウィンドウを表示するように設定された表示部、
    前記プログラムを介したデータ構造の変換に用いられる複数の識別子および前記複数の識別子の各々に対応するインストラクションがマッチングされたルックアップテーブルを格納する格納部、
    前記表示部を介して表示されている前記ウィンドウ内に第1データを挿入するのに用いられる第1入力、および前記挿入された第1データおよび前記ルックアップテーブルに基づいて第2データの生成を指示するのに用いられる第2入力を印加する入力部、
    前記第1入力に応じて挿入された第1データから前記複数の識別子のうち少なくとも一つの識別子を検出する文字識別部、
    前記ルックアップテーブルを用いて前記検出された少なくとも一つの識別子と対応するインストラクションを確認した後、前記第1データと対応するスプレッドシートの構造を決定する構造設計部、および、
    前記構造が決定されたスプレッドシートを生成し、前記確認されたインストラクションに応じて前記第1データに含まれた一つ以上のオブジェクトおよび一つ以上の配列のうち少なくとも一つを前記生成されたスプレッドシートに挿入するデータセット生成部を含み、
    前記複数の識別子は、コロン、コンマ、大括弧および中括弧のうち少なくとも一つを含み、
    前記構造設計部は、前記少なくとも一つの識別子として一つ以上のコロンが検出される場合、前記一つ以上のコロンの左側に記載された文字を識別し、前記識別された文字のうち重複せず且つ互いに異なる文字の個数を確認し、前記確認された個数に基づいて前記スプレッドシートの列の個数を決定し、前記決定された列の個数に応じて前記スプレッドシートの構造を決定する
    ことを特徴とするJSONを用いてデータセットの構造を変換する電子装置。
  2. 前記構造設計部は、
    前記少なくとも一つの識別子として一つ以上のコロンが検出される場合、前記一つ以上のコロンの右側に記載された文字を識別し、前記識別された文字のうち重複せず且つ互いに異なる文字の個数を確認し、前記確認された個数に基づいて前記スプレッドシートの行の個数を決定し、前記決定された行の個数に応じて前記スプレッドシートの構造を決定する
    請求項1に記載のJSONを用いてデータセットの構造を変換する電子装置。
  3. 前記データセット生成部は、
    前記少なくとも一つの識別子として一つ以上のコロンまたは前記中括弧が検出される場合、前記検出された一つ以上のコロンの個数または前記検出された中括弧の個数に応じて前記第1データに含まれた前記一つ以上のオブジェクトの個数を確認し、
    前記生成されたスプレッドシートの予め指定された領域中の1番目の列に第1文字および前記第1文字と対応する索引値を行を変えながら挿入し、
    前記予め指定された領域中の2番目の列に前記検出された一つ以上のコロンの左側に記載された第2文字および前記検出された一つ以上のコロンの右側に記載された文字のうち前記第2文字と対応する第3文字を行を変えながら挿入する
    請求項1に記載のJSONを用いてデータセットの構造を変換する電子装置。
  4. 前記構造設計部は、
    前記少なくとも一つの識別子としてコロンが検出されず且つ一つ以上のコンマおよび1対以上の大括弧が検出される場合、前記検出された1対以上の大括弧の個数に応じて前記第1データに含まれた前記一つ以上の配列の個数を確認し、前記検出された一つ以上のコンマの個数に応じて前記一つ以上の配列に含まれた索引値の個数を確認する
    請求項1に記載のJSONを用いてデータセットの構造を変換する電子装置。
  5. 前記構造設計部は、
    前記確認された一つ以上の配列の個数に基づいて前記スプレッドシートの列の個数を決定し、前記決定された列の個数に応じて前記スプレッドシートの構造を決定する
    請求項4に記載のJSONを用いてデータセットの構造を変換する電子装置。
  6. 前記構造設計部は、
    前記確認された索引値の個数に基づいて前記スプレッドシートの行の個数を決定し、前記決定された行の個数に応じて前記スプレッドシートの構造を決定する
    請求項4に記載のJSONを用いてデータセットの構造を変換する電子装置。
  7. 前記データセット生成部は、
    前記生成されたスプレッドシートの予め指定された領域中の1番目の列に第1文字および前記第1文字と対応する索引値を行を変えながら挿入し、
    前記予め指定された領域中の2番目の列に第2文字および前記一つ以上の配列に含まれた索引値を行を変えながら挿入する
    請求項4に記載のJSONを用いてデータセットの構造を変換する電子装置。
  8. 電子装置において実行中のプログラムと対応するウィンドウを表示するステップ、
    前記プログラムを介したデータ構造の変換に用いられる複数の識別子および前記複数の識別子の各々に対応するインストラクションがマッチングされたルックアップテーブルを格納するステップ、
    前記ウィンドウ内に第1データを挿入するのに用いられる第1入力、および前記挿入された第1データおよび前記ルックアップテーブルに基づいて第2データの生成を指示するのに用いられる第2入力を印加するステップ、
    前記第1入力に応じて挿入された第1データから前記複数の識別子のうち少なくとも一つの識別子を検出するステップ、
    前記ルックアップテーブルを用いて前記検出された少なくとも一つの識別子と対応するインストラクションを確認した後、前記第1データと対応するスプレッドシートの構造を決定するステップ、および、
    前記構造が決定されたスプレッドシートを生成し、前記確認されたインストラクションに応じて前記第1データに含まれた一つ以上のオブジェクトおよび一つ以上の配列のうち少なくとも一つを前記生成されたスプレッドシートに挿入するステップを含み、
    前記複数の識別子は、コロン、コンマ、大括弧および中括弧のうち少なくとも一つを含み、
    前記スプレッドシートの構造を決定するステップは、
    前記少なくとも一つの識別子として一つ以上のコロンが検出される場合、前記一つ以上のコロンの左側に記載された文字を識別するステップ、
    前記識別された文字のうち重複せず且つ互いに異なる文字の個数を確認するステップ、
    前記確認された個数に基づいて前記スプレッドシートの列の個数を決定するステップ、および、
    前記決定された列の個数に応じて前記スプレッドシートの構造の決定を実行するステップを含む
    ことを特徴とするJSONを用いてデータセットの構造を変換する電子装置の動作方法。
  9. 前記スプレッドシートの構造を決定するステップは、
    前記少なくとも一つの識別子として一つ以上のコロンが検出される場合、前記一つ以上のコロンの右側に記載された文字を識別するステップ、
    前記識別された文字のうち重複せず且つ互いに異なる文字の個数を確認するステップ、
    前記確認された個数に基づいて前記スプレッドシートの行の個数を決定するステップ、および、
    前記決定された行の個数に応じて前記スプレッドシートの構造を決定するステップをさらに含むことを特徴とする、請求項8に記載のJSONを用いてデータセットの構造を変換する電子装置の動作方法。
  10. 前記生成されたスプレッドシートに挿入するステップは、
    前記少なくとも一つの識別子として一つ以上のコロンまたは前記中括弧が検出される場合、前記検出された一つ以上のコロンの個数または前記検出された中括弧の個数に応じて前記第1データに含まれた前記一つ以上のオブジェクトの個数を確認するステップ、
    前記生成されたスプレッドシートの予め指定された領域中の1番目の列に第1文字および前記第1文字と対応する索引値を行を変えながら挿入するステップ、および、
    前記予め指定された領域中の2番目の列に前記検出された一つ以上のコロンの左側に記載された第2文字および前記検出された一つ以上のコロンの右側に記載された文字のうち前記第2文字と対応する第3文字を行を変えながら挿入するステップをさらに含む
    請求項8に記載のJSONを用いてデータセットの構造を変換する電子装置の動作方法。
  11. 前記スプレッドシートの構造を決定するステップは、
    前記少なくとも一つの識別子としてコロンが検出されず且つ一つ以上のコンマおよび1対以上の大括弧が検出される場合、前記検出された1対以上の大括弧の個数に応じて前記第1データに含まれた前記一つ以上の配列の個数を確認するステップ、および、
    前記検出された一つ以上のコンマの個数に応じて前記一つ以上の配列に含まれた索引値の個数を確認するステップをさらに含む
    請求項8に記載のJSONを用いてデータセットの構造を変換する電子装置の動作方法。
  12. 前記スプレッドシートの構造を決定するステップは、
    前記確認された一つ以上の配列の個数に基づいて前記スプレッドシートの列の個数を決定するステップ、および、
    前記決定された列の個数に応じて前記スプレッドシートの構造を決定するステップをさらに含む
    請求項11に記載のJSONを用いてデータセットの構造を変換する電子装置の動作方法。
  13. 前記スプレッドシートの構造を決定するステップは、
    前記確認された索引値の個数に基づいて前記スプレッドシートの行の個数を決定するステップ、および、
    前記決定された行の個数に応じて前記スプレッドシートの構造を決定するステップをさらに含む
    請求項11に記載のJSONを用いてデータセットの構造を変換する電子装置の動作方法。
  14. 前記生成されたスプレッドシートに挿入するステップは、
    前記生成されたスプレッドシートの予め指定された領域中の1番目の列に第1文字および前記第1文字と対応する索引値を行を変えながら挿入するステップ、および、
    前記予め指定された領域中の2番目の列に第2文字および前記一つ以上の配列に含まれた索引値を行を変えながら挿入するステップをさらに含む
    請求項11に記載のJSONを用いてデータセットの構造を変換する電子装置の動作方法。
  15. 請求項8ないし14のいずれかに記載の方法をコンピュータが実行するようにするプログラムを記録した
    ことを特徴とするコンピュータ読み取り可能な記録媒体。
  16. 請求項8ないし14のいずれかに記載の方法をコンピュータとの結合によって実行させるための格納媒体に格納された
    ことを特徴とするコンピュータプログラム。
JP2019112721A 2018-09-17 2019-06-18 Jsonを用いてデータセットの構造を変換する電子装置およびその動作方法 Active JP6653850B1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180110659A KR101949154B1 (ko) 2018-09-17 2018-09-17 Json을 이용하여 데이터셋의 구조를 변환하는 전자 장치 및 그의 동작 방법
KR10-2018-0110659 2018-09-17

Publications (2)

Publication Number Publication Date
JP6653850B1 JP6653850B1 (ja) 2020-02-26
JP2020047254A true JP2020047254A (ja) 2020-03-26

Family

ID=65561501

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019112721A Active JP6653850B1 (ja) 2018-09-17 2019-06-18 Jsonを用いてデータセットの構造を変換する電子装置およびその動作方法

Country Status (2)

Country Link
JP (1) JP6653850B1 (ja)
KR (1) KR101949154B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11748560B2 (en) 2020-08-14 2023-09-05 Kyndryl, Inc. Converting between tabular and structured data formats

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112363699B (zh) * 2020-11-16 2022-08-02 佳都科技集团股份有限公司 一种应用于多语言开发平台的交互方法及装置
KR102513001B1 (ko) * 2021-02-05 2023-03-23 (주)씨앤텍시스템즈 제이슨 파일의 포맷 변환을 위한 사용자 인터페이스 제공장치 및 방법
KR102598292B1 (ko) * 2021-07-23 2023-11-06 주식회사 중앙첨단소재 Json 포맷 압축 및 복원방법
KR20240032288A (ko) 2022-09-02 2024-03-12 동국대학교 산학협력단 정량적 녹차학습데이터셋 생성모듈과 정성적 녹차학습데이터셋 생성모듈로 이루어진 하이브리드형 녹차학습데이터셋 구축장치 및 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102047200B1 (ko) * 2011-12-28 2019-11-20 인텔 코포레이션 데이터 스트림들의 실시간 자연어 처리
US9971574B2 (en) * 2014-10-31 2018-05-15 Oracle International Corporation JSON stylesheet language transformation
US10540153B2 (en) * 2016-12-03 2020-01-21 Thomas STACHURA Spreadsheet-based software application development

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11748560B2 (en) 2020-08-14 2023-09-05 Kyndryl, Inc. Converting between tabular and structured data formats

Also Published As

Publication number Publication date
JP6653850B1 (ja) 2020-02-26
KR101949154B1 (ko) 2019-02-18

Similar Documents

Publication Publication Date Title
JP6653850B1 (ja) Jsonを用いてデータセットの構造を変換する電子装置およびその動作方法
US11294968B2 (en) Combining website characteristics in an automatically generated website
US10324828B2 (en) Generating annotated screenshots based on automated tests
CN102597993B (zh) 利用统一资源标识符管理应用状态信息
Holten et al. Visual comparison of hierarchically organized data
CN106575290A (zh) 在基于表单的视图中呈现电子表格的数据集
CN103955358B (zh) 内嵌地提供在应用程序内的可修改的上下文帮助内容
US9959257B2 (en) Populating visual designs with web content
KR101760777B1 (ko) 반응형 웹사이트 빌더 시스템 및 그 방법
US10175954B2 (en) Method of processing big data, including arranging icons in a workflow GUI by a user, checking process availability and syntax, converting the workflow into execution code, monitoring the workflow, and displaying associated information
US20190272157A1 (en) System and method for embedding domain-specific language code within a visualization of cloud-based computing infrastructure
CN103597469A (zh) 集成开发环境中的实况浏览器工具
CN106575300A (zh) 用于识别文档中的对象的基于图像的搜索
CN104572067A (zh) 用于由源代码指定的用户界面的可视化的方法和系统
CN105074652B (zh) 用于向打印机远程提供应用功能的方法和计算机系统
US20130325907A1 (en) Xml file conversion to flat file
CN105718434A (zh) 一种自然语言公式编辑方法和系统
WO2016018682A1 (en) Processing image to identify object for insertion into document
CN102193907B (zh) 一种基于b/s结构的文稿对比方法及系统
KR102014500B1 (ko) 드릴-다운 슬라이드 프리젠테이션 콘텐츠 생성 방법 및 장치, 드릴-다운 슬라이드 프리젠테이션 콘텐츠 배포 방법 및 장치, 드릴-다운 슬라이드 프리젠테이션 콘텐츠 재생 방법 및 장치, 및 드릴-다운 프리젠테이션 콘텐츠 배포 및 재생 시스템
Schuler et al. Rule-based generation of mobile user interfaces
US20190266265A1 (en) Integrated computing environment for managing and presenting design iterations
JP2019020805A (ja) 反応型ウェブサイトビルダーシステム及びその方法
US11163946B2 (en) Method and system for displaying content for accessibility
CN115686506A (zh) 一种数据显示方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190618

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190618

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190717

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191008

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: 20191119

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191224

R150 Certificate of patent or registration of utility model

Ref document number: 6653850

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250