KR101949154B1 - Json을 이용하여 데이터셋의 구조를 변환하는 전자 장치 및 그의 동작 방법 - Google Patents

Json을 이용하여 데이터셋의 구조를 변환하는 전자 장치 및 그의 동작 방법 Download PDF

Info

Publication number
KR101949154B1
KR101949154B1 KR1020180110659A KR20180110659A KR101949154B1 KR 101949154 B1 KR101949154 B1 KR 101949154B1 KR 1020180110659 A KR1020180110659 A KR 1020180110659A KR 20180110659 A KR20180110659 A KR 20180110659A KR 101949154 B1 KR101949154 B1 KR 101949154B1
Authority
KR
South Korea
Prior art keywords
data
spreadsheet
detected
character
determining
Prior art date
Application number
KR1020180110659A
Other languages
English (en)
Inventor
하성원
Original Assignee
(주)투비소프트
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 (주)투비소프트 filed Critical (주)투비소프트
Priority to KR1020180110659A priority Critical patent/KR101949154B1/ko
Application granted granted Critical
Publication of KR101949154B1 publication Critical patent/KR101949154B1/ko
Priority to JP2019112721A priority patent/JP6653850B1/ja

Links

Images

Classifications

    • G06F17/2264
    • G06F17/246

Abstract

본 발명은 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치 및 그의 동작 방법에 대한 것이다. 본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치는, 전자 장치에서 실행 중인 프로그램과 대응되는 윈도우를 표시하도록 설정된 표시부, 상기 프로그램을 통한 데이터 구조의 변환에 이용되는 복수의 식별자들 및 상기 복수의 식별자들 각각에 대응하는 인스트럭션들이 매칭된 룩업테이블을 저장하는 저장부, 상기 표시부를 통해 표시되고 있는 상기 윈도우 내에 제 1 데이터를 삽입하는데 이용되는 제 1 입력, 및 상기 삽입된 제 1 데이터 및 상기 룩업테이블에 기초하여 제 2 데이터의 생성을 지시하는데 이용되는 제 2 입력을 인가하는 입력부, 상기 제 1 입력에 따라 삽입된 제 1 데이터에서 상기 복수의 식별자들 중 적어도 하나의 식별자를 검출하는 문자 식별부, 상기 룩업테이블을 이용하여 상기 검출된 적어도 하나의 식별자와 대응되는 인스트럭션을 확인한 후, 상기 제 1 데이터와 대응되는 스프레드시트의 구조를 결정하는 구조 설계부, 및 상기 구조가 결정된 스프레드시트를 생성하고, 상기 확인된 인스트럭션에 따라 상기 제 1 데이터에 포함된 하나 이상의 객체들 및 하나 이상의 배열들 중 적어도 하나를 상기 생성된 스프레드시트에 삽입하는 데이터셋 생성부를 포함할 수 있다.

Description

JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치 및 그의 동작 방법{ELECTRONIC DEVICE FOR TRANSFORMING STRUCTURE OF DATASET USING JAVASCRIPT OBJECT NOTATION AND OPERATING METHOD THEREOF}
본 발명은 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치 및 그의 동작 방법에 대한 것이다.
최근, 컴퓨터, 스마트폰 또는 태블릿 PC 등과 같은 전자 장치가 널리 보급됨에 따라 이러한 전자 장치를 이용하여 데이터를 처리하는 다양한 방식들이 소개되고 있다. 예컨대, 다양한 센서들이 구비된 전자 장치는 센서들을 통해 전자 장치의 주변 환경에 대한 정보 또는 전자 장치를 이용하는 사용자에 대한 정보 등을 획득할 수 있고, 획득된 정보에 기초하여 데이터를 처리할 수 있다. 특히, 초고속 인터넷을 기초로 한 네트워크 망이 구축되고 언제 어디서든 인터넷에 접속할 수 있는 환경이 조성됨에 따라, 사용자는 원격지의 서버에 접속하여 전자 문서를 열람, 작성 또는 편집할 수 있게 되었다. 이처럼, 최근에는 전자 장치에 소정의 전자 문서 관련 프로그램이 설치되어 있지 않더라도 인터넷에 접속만 할 수 있다면, 언제 어디서든 전자 문서를 열람, 작성 또는 편집할 수 있는 웹 기반의 문서 편집 서비스가 등장하고 있다.
웹 기반의 문서 편집 서비스는 다양한 전자 장치들이 관리 서버에 접속한 후 브라우저를 통해 마크업 언어(Markup Language) 기반의 전자 문서를 열람한 후 해당 전자 문서를 작성 및 편집할 수 있는 기능을 지원하고 있다. 여기서, 마크업 언어(Markup Language)는 XML(eXtensible Markup Language), HTML(HyperText Markup Language) 등과 같이 전자 문서에 포함되어있는 콘텐트의 서식, 구조 등에 대한 부가 정보를 태그를 통해 나타내는 언어를 의미한다.
한편, JSON(JavaScript Object Notation)(이하, '제이슨'이라 함)은 사람이 읽고 쓰기에 용이하며, 기계가 분석하고 생성하기에도 용이한 경량의 데이터 교환 형식으로써, 특정 프로그래밍 언어나 플랫폼에 구속되지 않는 독립적인 특성을 가지고 있기 때문에, C, C++, C#, Java, JavaScript, Perl 및 Python 등 다양한 프로그래밍 언어를 통해 쉽게 이용 가능하다는 장점이 있다.
전자 장치는 서버와의 통신 시 XML에 따라 작성된 데이터셋(data set)을 전송한다. 이 때, 데이터셋은 행과 열로 구성된 2차원 형태의 정보를 의미할 수 있다. 한편, 서버는 제이슨에 따라 작성된 제이슨 데이터를 이용하여 정보를 처리하며, 제이슨 데이터는 2차원을 포함한 다차원 형태로 정의될 수 있다는데 그 특징이 있다. 이에 따라, 전자 장치 및 서버 간에 데이터를 주고 받기 위해서는 데이터셋과 제이슨 데이터를 상호 변환할 수 있는 알고리즘이 필요하다.
본 문서에 개시된 다양한 실시 예들은 전자 장치 및 서버 간의 통신 시 데이터셋과 제이슨 데이터 간의 변환을 용이하게 수행하는 방법을 제안하기 위해 안출된 것이다. 예컨대, 일 실시 예에 따른 전자 장치는 2차원 형태의 정보인 데이터셋을 생성한 후, 생성된 데이터셋이 서버에 전송되어 처리될 수 있도록 하기 위하여, 상기 생성된 데이터셋을 다차원 형태의 정보인 제이슨 데이터로 변환할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치는, 전자 장치에서 실행 중인 프로그램과 대응되는 윈도우를 표시하도록 설정된 표시부, 상기 프로그램을 통한 데이터 구조의 변환에 이용되는 복수의 식별자들 및 상기 복수의 식별자들 각각에 대응하는 인스트럭션들이 매칭된 룩업테이블을 저장하는 저장부, 상기 표시부를 통해 표시되고 있는 상기 윈도우 내에 제 1 데이터를 삽입하는데 이용되는 제 1 입력, 및 상기 삽입된 제 1 데이터 및 상기 룩업테이블에 기초하여 제 2 데이터의 생성을 지시하는데 이용되는 제 2 입력을 인가하는 입력부, 상기 제 1 입력에 따라 삽입된 제 1 데이터에서 상기 복수의 식별자들 중 적어도 하나의 식별자를 검출하는 문자 식별부, 상기 룩업테이블을 이용하여 상기 검출된 적어도 하나의 식별자와 대응되는 인스트럭션을 확인한 후, 상기 제 1 데이터와 대응되는 스프레드시트의 구조를 결정하는 구조 설계부, 및 상기 구조가 결정된 스프레드시트를 생성하고, 상기 확인된 인스트럭션에 따라 상기 제 1 데이터에 포함된 하나 이상의 객체들 및 하나 이상의 배열들 중 적어도 하나를 상기 생성된 스프레드시트에 삽입하는 데이터셋 생성부를 포함할 수 있다.
또한, 본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법은, 전자 장치에서 실행 중인 프로그램과 대응되는 윈도우를 표시하는 단계, 상기 프로그램을 통한 데이터 구조의 변환에 이용되는 복수의 식별자들 및 상기 복수의 식별자들 각각에 대응하는 인스트럭션들이 매칭된 룩업테이블을 저장하는 단계, 상기 윈도우 내에 제 1 데이터를 삽입하는데 이용되는 제 1 입력, 및 상기 삽입된 제 1 데이터 및 상기 룩업테이블에 기초하여 제 2 데이터의 생성을 지시하는데 이용되는 제 2 입력을 인가하는 단계, 상기 제 1 입력에 따라 삽입된 제 1 데이터에서 상기 복수의 식별자들 중 적어도 하나의 식별자를 검출하는 단계, 상기 룩업테이블을 이용하여 상기 검출된 적어도 하나의 식별자와 대응되는 인스트럭션을 확인한 후, 상기 제 1 데이터와 대응되는 스프레드시트의 구조를 결정하는 단계, 및 상기 구조가 결정된 스프레드시트를 생성하고, 상기 확인된 인스트럭션에 따라 상기 제 1 데이터에 포함된 하나 이상의 객체들 및 하나 이상의 배열들 중 적어도 하나를 상기 생성된 스프레드시트에 삽입하는 단계를 포함할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따르면, 전자 장치는 2차원 형태로 정의된 데이터셋을 다차원 형태로 정의된 제이슨 데이터로 변환할 수 있다. 이를 통해, JAVA를 기반으로 하는 서버 사이드 어플리케이션에 데이터셋에 기반한 정보를 제공하는 것이 가능하게 되어, 서비스의 범용성이 확대될 수 있다.
뿐만 아니라, 최근 기업의 서버 사이드에서 처리되는 데이터들은 제이슨 형식에 따라 정의되는 경우가 대부분이므로, 본 발명의 일 실시 예에 따른 전자 장치를 활용하여 2차원 형태의 정보 및 다차원 형태의 정보 간에 변환을 용이하게 수행할 수 있게 된다면, 데이터 공유를 효율적으로 수행할 수 있고 데이터 변환을 위해 별도의 인력을 충원할 필요가 없게 되어 비용이 감소되는 효과를 기대할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 전자 장치의 구성을 도시한 도면이다.
도 2a 내지 도 2e는 본 발명의 일 실시 예에 따른 전자 장치에서 데이터셋과 제이슨 데이터를 상호 변환하는 과정을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시 예에 따른 전자 장치에서 데이터셋과 제이슨 데이터를 상호 변환하는 방법을 도시한 순서도이다.
본 문서에 개시된 다양한 실시 예들은 본 발명을 특정한 실시 형태로 한정하기 위해 제시된 것이 아니며, 다양한 실시 예들을 통해 소개된 구성요소들은 본 발명의 사상 및 기술 범위에 포함되는 모든 변경 가능한 균등물 내지 대체물을 포함하는 의미로서 제시된 것임을 당업자는 용이하게 이해할 것이다. 또한, 각 도면을 설명함에 있어, 다르게 정의되지 않는 한 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있는 것으로 해석될 수 있다. 또한, 본 발명의 목적 및 효과, 그리고 그것들을 달성하기 위한 기술적 구성들은 첨부되는 도면과 함께 상세하게 설명되는 실시 예들을 통해 명확해질 것이다. 본 발명을 설명함에 있어 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우, 그와 관련된 상세한 설명은 생략될 수 있으며, 뒤에 설명되는 용어들은 본 발명에서의 구조, 역할 및 기능 등을 고려하여 정의된 용어들로서 이는 사용자 및 운용자의 의도 또는 관례 등에 따라 기존에 사용되던 의미와 달리 해석될 수 있다.
본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있음을 밝혀둔다. 본 문서에 개시된 다양한 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 오로지 특허청구범위에 기재된 청구항의 범주에 의하여 정의될 뿐이다.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시 예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, 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 규칙에 따라 작성된 제이슨 데이터를 의미할 수 있다. 또한, 복수의 식별자들은 콜론, 쉼표, 대괄호 및 중괄호 중 적어도 하나를 포함할 수 있다. 예컨대, 문자 식별부(140)는 입력부(130)를 통해 제이슨 데이터가 입력되는 경우, 입력된 제이슨 데이터로부터 미리 설정된 식별자를 검출할 수 있다.
일 실시 예에 따르면, 문자 식별부(140)는 식별자로서 ": (콜론)" 또는 "{} (중괄호)"가 검출되는 경우, 상기 제이슨 데이터에 하나 이상의 제이슨 객체들이 포함되어 있는 것으로 판단할 수 있다. 또한, 문자 식별부(140)는 검출된 콜론의 좌측에 기재된 제이슨 객체의 키와 검출된 콜론의 우측에 기재된 제이슨 객체의 밸류를 식별할 수 있다.
일 실시 예에 따르면, 문자 식별부(140)는 식별자로서 "[] (대괄호)"가 검출되는 경우, 상기 제이슨 데이터에 하나 이상의 제이슨 배열들이 포함되어 있는 것으로 판단할 수 있다. 또한, 문자 식별부(140)는 검출된 대괄호 내 쉼표의 개수에 기초하여, 제이슨 배열 내에 포함된 밸류들의 개수를 식별할 수 있다.
전자 장치(100)의 구조 설계부(150)는 저장부(120)에 미리 저장된 룩업테이블을 이용하여 상기 검출된 적어도 하나의 식별자와 대응되는 인스트럭션을 확인할 수 있다. 또한, 구조 설계부(150)는 룩업테이블을 확인한 결과에 기초하여, 제이슨 데이터와 대응되는 스프레드시트의 구조를 결정할 수 있다. 예컨대, 콜론과 대응되는 인스트럭션은 첫째, 콜론의 좌측에 기재된 키들과 우측에 기재된 밸류들을 식별하고, 둘째, 식별된 키들 중 중복되지 않는 서로 다른 키들의 개수를 확인하고, 셋째, 확인된 키들의 개수만큼 스프레드시트의 열을 추가하고, 넷째, 상기 키들이 식별된 순서에 따라 스프레드시트의 제 1 행에 상기 식별된 키들을 삽입하고, 다섯째, 상기 식별된 밸류들을 대응되는 키들이 기재된 열에 속하는 행들에 삽입하는 동작들을 포함할 수 있다. 만약, 식별자로서 콜론이 검출되는 경우, 구조 설계부(150)는 상기 인스트럭션에 따라 스프레드시트의 구조를 결정할 수 있다.
전자 장치(100)의 데이터셋 생성부(160)는 구조 설계부(150)에 의해 스프레드시트의 구조가 결정되는 경우, 상기 구조가 결정된 스프레드시트를 생성할 수 있다. 또한, 데이터셋 생성부(160)는 룩업테이블을 통해 확인된 인스트럭션에 따라 제이슨 데이터에 포함된 하나 이상의 객체들 및 하나 이상의 배열들 중 적어도 하나를 상기 생성된 스프레드시트에 삽입할 수 있다.
일 실시 예에 따르면, 데이터셋 생성부(160)는 적어도 하나의 식별자로서 하나 이상의 콜론들 또는 중괄호가 검출되는 경우, 상기 검출된 하나 이상의 콜론들의 개수 또는 상기 검출된 중괄호의 개수에 따라 상기 제 1 데이터에 포함된 상기 하나 이상의 객체들의 개수를 확인할 수 있다.
또한, 데이터셋 생성부(160)는 생성된 스프레드시트의 미리 지정된 영역 중 첫 번째 열에 제 1 문자 및 상기 제 1 문자와 대응되는 색인값을 행을 바꿔가며 삽입할 수 있다. 예컨대, 제 1 문자는 "parentIdx"이고, 상기 제 1 문자와 대응되는 색인값은 0 또는 1 이상의 자연수일 수 있다. 여기서, 제 1 문자와 대응되는 색인값은 제 1 데이터에 포함된 하위 객체들 간의 순서를 식별하는데 이용될 수 있다.
한편, 데이터셋 생성부(160)는 미리 지정된 영역 중 두 번째 열에 상기 검출된 하나 이상의 콜론들의 좌측에 기재된 제 2 문자 및 상기 검출된 하나 이상의 콜론들의 우측에 기재된 문자들 중 상기 제 2 문자와 대응되는 제 3 문자를 행을 바꿔가며 삽입할 수 있다. 예컨대, 검출된 콜론의 좌측에 "key1"이 기재되어 있고, 우측에 "tobesoft"가 기재되어 있을 수 있다. 데이터셋 생성부(160)는 제 2 문자로서 "key1"을 생성된 스프레드시트의 미리 지정된 영역 중 두 번째 열의 첫 번째 행에 삽입할 수 있다. 또한, 데이터셋 생성부(160)는 제 3 문자로서 "tobesoft"를 생성된 스프레드시트의 미리 지정된 영역 중 두 번째 열의 두 번째 행에 삽입할 수 있다.
이하, 도 2a 내지 도 2e를 참고하여, 스프레드시트에 적어도 하나의 데이터를 삽입하는 방법을 구체적으로 설명한다.
도 2a 내지 도 2e는 본 발명의 일 실시 예에 따른 전자 장치에서 데이터셋과 제이슨 데이터를 상호 변환하는 과정을 설명하기 위한 도면이다.
전자 장치(100)는 제이슨 데이터 및 데이터셋을 상호 변환할 수 있다. 여기서, 제이슨 데이터는 "키(key)":"밸류(value)"의 형태로 정의되는 제이슨 객체를 포함할 수 있다. 이 때, 제이슨 객체에 있어서, ": (콜론)"의 좌측에 기입된 데이터는 제이슨 객체의 "키"를 의미하고, ": (콜론)"의 우측에 기입된 데이터는 제이슨 객체의 "밸류"를 의미하는 것으로 정의될 수 있다. 다양한 실시 예들에 따르면, 제이슨 데이터는 상기 제이슨 객체 또는 밸류가 둘 이상 나열된 제이슨 배열을 포함할 수도 있다. 한편, 하나 이상의 제이슨 객체들은 중괄호({}) 내에 기재될 수 있고, 제이슨 배열은 대괄호([]) 내에 기재될 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 다음과 같이 미리 설정된 규칙에 따라, 제이슨 데이터 및 데이터셋을 일대일 대응 관계에 따라 상호 변환할 수 있다. 예컨대, 전자 장치(100)는 제이슨 데이터에 기초하여 데이터셋을 생성할 때, 생성된 데이터셋의 최상위 엘리먼트의 이름을 "dsMaster"로 명명할 수 있다. 또한, 전자 장치(100)는 제이슨 데이터가 키(key)를 포함하지 않은 채 밸류(value)만을 포함하거나 제이슨 배열만을 포함하는 경우, 데이터셋을 구성하는 적어도 하나의 열의 이름을 "Column"으로 명명할 수 있고, 상기 "Column"으로 명명된 열에 상기 밸류 또는 제이슨 배열에 기재된 데이터가 삽입될 수 있다. 또한, 전자 장치(100)는 제이슨 데이터 내에 하위 제이슨 객체가 존재할 경우, 상기 하위 제이슨 객체의 이름을 "데이터셋 이름_키 이름"으로 명명할 수 있다. 예컨대, "dsMaster"로 명명된 데이터셋에 "key2"로 명명된 키를 갖는 하위 제이슨 객체가 포함되어 있는 경우, 전자 장치(100)는 상기 하위 제이슨 객체와 대응되는 데이터셋의 이름을 "dsMaster_key2"로 명명할 수 있다.
한편, 제이슨 데이터 및 데이터셋에 포함된 모든 데이터의 타입은 스트링(string)으로 정의될 수 있다. 또한, 생성된 모든 데이터셋은 parentIdx 열을 포함하도록 설정될 수 있으며, 전자 장치(100)는 상기 parentIdx 열에 기재된 값을 이용하여 하위 제이슨 객체들 간의 순서를 식별할 수 있다. 또한, 제이슨 데이터 내 제이슨 객체의 밸류가 제이슨 객체의 형태를 가지면서 1개만 존재할 경우, 상기 밸류는 제이슨 배열로 정의되지 않을 수 있다.
이상의 규칙들을 도 2a 내지 도 2e에 도시된 실시 예들을 통해 보다 자세히 설명하도록 한다.
도 2a에는, 제 1 제이슨 데이터(200) 및 제 1 데이터셋(201)이 도시된다. 일 실시 예에 따르면, 전자 장치(100)는 제 1 제이슨 데이터(200)에 기초하여 제 1 데이터셋(201)을 생성하거나, 제 1 데이터셋(201)에 기초하여 제 1 제이슨 데이터(200)를 생성할 수 있다.
예컨대, 전자 장치(100)는 제 1 제이슨 데이터(200)로부터 총 3개의 ": (콜론)"을 식별할 수 있고, 이를 통해 제 1 제이슨 데이터(200)에 총 3개의 제이슨 객체들이 포함되어 있는 것으로 판단할 수 있다. 이 때, 제 1 제이슨 객체는 "key1":"tobesoft"이고, 제 2 제이슨 객체는 "key2":"nexacro platform"이고, 제 3 제이슨 객체는 "key3":"200"일 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 하위 제이슨 객체들 간의 순서를 식별하는데 이용되는 parentIdx 열을 제 1 데이터셋(201)의 제 1 열로 결정할 수 있다. 이어서, 전자 장치(100)는 제 1 내지 제 3 제이슨 객체들이 기재된 순서에 따라 제 1 데이터셋(201)의 제 2 열 내지 제 4 열을 결정할 수 있다. 보다 구체적으로, 전자 장치(100)는 제 1 제이슨 객체의 키인 "key1"을 제 1 데이터셋(201)의 제 1 행 및 제 2 열에 삽입할 수 있고, 제 2 제이슨 객체의 키인 "key2"를 제 1 데이터셋(201)의 제 1 행 및 제 3 열에 삽입할 수 있고, 제 3 제이슨 객체의 키인 "key3"을 제 1 데이터셋(201)의 제 1 행 및 제 4 열에 삽입할 수 있다. 이어서, 전자 장치(100)는 제 1 제이슨 객체의 밸류인 "tobesoft"를 제 1 데이터셋(201)의 제 2 행 및 제 2 열에 삽입할 수 있고, 제 2 제이슨 객체의 밸류인 "nexacro platform"을 제 1 데이터셋(201)의 제 2 행 및 제 3 열에 삽입할 수 있고, 제 3 제이슨 객체의 밸류인 "200"을 제 1 데이터셋(201)의 제 2 행 및 제 4 열에 삽입할 수 있다. 즉, 전자 장치(100)는 제 1 제이슨 데이터(200) 내 제이슨 객체들의 키들을 제 1 행에 삽입할 수 있고, 밸류들을 대응하는 키들이 기재된 열의 제 2 행 이하 행들에 삽입할 수 있다. 한편, 제 1 데이터셋(201)의 이름은 미리 설정된 바에 따라 "dsMaster"로 명명될 수 있다.
도 2b에는, 제 2 제이슨 데이터(210) 및 제 2 데이터셋(211)이 도시된다. 일 실시 예에 따르면, 전자 장치(100)는 제 2 제이슨 데이터(210)에 기초하여 제 2 데이터셋(211)을 생성하거나, 제 2 데이터셋(211)에 기초하여 제 2 제이슨 데이터(210)를 생성할 수 있다.
예컨대, 전자 장치(100)는 제 2 제이슨 데이터(210)로부터 대괄호를 식별할 수 있고, 이를 통해 제 2 제이슨 데이터(210)는 제이슨 배열을 포함하고 있는 것으로 판단할 수 있다. 전자 장치(100)는 제이슨 배열에 포함된 쉼표(,)로부터 제이슨 배열에 포함된 밸류의 개수를 식별할 수 있다. 일 실시 예에 따르면, 전자 장치(100)는 제 2 제이슨 데이터(210)로부터 5개의 밸류들을 식별할 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 제 2 제이슨 데이터(210)가 키(key)를 포함하지 않은 채 밸류(value) 또는 제이슨 배열로만 구성된 것으로 판단할 수 있고, 이에 따라 제 2 데이터셋(211)을 구성하는 적어도 하나의 열의 이름을 "Column"으로 명명할 수 있다. 한편, 상기 "Column"으로 명명된 열에는 상기 밸류 또는 제이슨 배열에 기재된 데이터가 삽입될 수 있다. 전자 장치(100)는 하위 제이슨 객체들 간의 순서를 식별하는데 이용되는 parentIdx 열을 제 2 데이터셋(211)의 제 1 열로 결정할 수 있다. 이어서, 전자 장치(100)는 제 2 데이터셋(211)의 제 2 열의 제 1 행에 "Column"을 삽입할 수 있다. 또한, 전자 장치(100)는 제 2 제이슨 데이터(210)로부터 식별된 제이슨 배열 내 밸류들을, 식별된 순서에 따라 제 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)는 제 2 제이슨 데이터(210) 내에 키가 포함되어 있지 않으므로, 제 1 행에 "Column"을 삽입할 수 있다. 또한, 전자 장치(100)는 제이슨 배열 내 밸류들을 "Column"이 기재된 열의 제 2 행 이하 행들에 삽입할 수 있다. 한편, 제 2 데이터셋(211)의 이름은 미리 설정된 바에 따라 "dsMaster"로 명명될 수 있다.
도 2c에는, 제 3 제이슨 데이터(220)와 제 3-1 데이터셋(221) 및 제 3-2 데이터셋(222)이 도시된다. 일 실시 예에 따르면, 전자 장치(100)는 제 3 제이슨 데이터(220)에 기초하여 제 3-1 데이터셋(221) 및 제 3-2 데이터셋(222)을 생성하거나, 제 3-1 데이터셋(221) 및 제 3-2 데이터셋(222)에 기초하여 제 3 제이슨 데이터(220)를 생성할 수 있다.
예컨대, 전자 장치(100)는 제 3 제이슨 데이터(220)로부터 총 3개의 ": (콜론)"을 식별할 수 있고, 이를 통해 제 3 제이슨 데이터(220)에 총 3개의 제이슨 객체들이 포함되어 있는 것으로 판단할 수 있다. 제 1 제이슨 객체는 "key1":"tobesoft"이고, 제 2 제이슨 객체는 "key2":["key2_0","key2_1","3000"]이고, 제 3 제이슨 객체는 "key3":"200"일 수 있다. 이와 함께, 전자 장치(100)는 제 2 제이슨 객체의 밸류에 포함된 대괄호로부터 제이슨 배열을 식별할 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 도 2a에서 설명한 방식에 따라, 제 1 내지 제 3 제이슨 객체들을 이용하여 제 3-1 데이터셋(221)을 생성할 수 있다. 이 경우, 제 3-1 데이터셋(221)의 이름은 미리 설정된 바에 따라 "dsMaster"로 명명될 수 있다.
일 실시 예에 따르면, 제이슨 객체의 밸류가 제 2 제이슨 객체와 같이 제이슨 배열의 형태로 정의되어 있는 경우, 전자 장치(100)는 제 2 제이슨 객체의 밸류를 제 3-1 데이터셋(221)의 제 2 행 및 제 3 열에 삽입하지 않고 새로운 데이터셋인 제 3-2 데이터셋(222)에 삽입할 수 있다. 이처럼 제이슨 배열의 형태로 정의된 데이터를 데이터셋으로 만들 때는, 도 2b에서 설명한 방식이 이용될 수 있다. 즉, 전자 장치(100)는 도 2b에서 설명한 방식에 따라, 제 2 제이슨 객체의 밸류와 대응되는 제 3-2 데이터셋(222)을 생성할 수 있다. 이 때, 제 3-2 데이터셋(222)의 이름은 상위 데이터셋의 이름과 제 2 제이슨 객체의 키를 참고하여, "dsMaster_key2"로 명명될 수 있다.
도 2d에는, 제 4 제이슨 데이터(230)와 제 4 데이터셋(231)이 도시된다. 일 실시 예에 따르면, 전자 장치(100)는 제 4 제이슨 데이터(230)에 기초하여 제 4 데이터셋(231)을 생성하거나, 제 4 데이터셋(231)에 기초하여 제 4 제이슨 데이터(230)를 생성할 수 있다.
예컨대, 전자 장치(100)는 제 4 제이슨 데이터(230)로부터 대괄호를 식별할 수 있고, 이를 통해 제 4 제이슨 데이터(230)는 제이슨 배열을 포함하고 있는 것으로 판단할 수 있다. 전자 장치(100)는 제이슨 배열에 포함된 쉼표(,)로부터 제이슨 배열에 포함된 밸류의 개수를 식별할 수 있다. 일 실시 예에 따르면, 전자 장치(100)는 제 4 제이슨 데이터(230)로부터 7개의 밸류들을 식별할 수 있다.
또한, 전자 장치(100)는 식별된 7개의 밸류들이 "{}(중괄호)"로 구성되어 있음을 식별할 수 있고, 이를 통해 제 4 제이슨 데이터(230)에 포함된 7개의 밸류들은 7개의 하위 제이슨 데이터들(제 4-1 내지 제 4-7 제이슨 데이터들)의 형태로 정의되어 있음을 식별할 수 있다. 제 4-1 제이슨 데이터는 {"color": "red", "value": "2000"}이고, 제 4-2 제이슨 데이터는 {"color": "green", "value": "#0f0"}이고, 제 4-3 제이슨 데이터는 {"color": "blue", "value": "#00f"}이고, 제 4-4 제이슨 데이터는 {"color": "cyan", "value": "#0ff"}이고, 제 4-5 제이슨 데이터는 {"color": "magenta", "value": "#f0f"}이고, 제 4-6 제이슨 데이터는 {"color": "yellow", "value": "#ff0"}이고, 제 4-7 제이슨 데이터는 {"color": "black", "value": "5000"}일 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 제 4-1 내지 제 4-7 제이슨 데이터들 각각이 키와 밸류를 포함하는 것으로 판단되는 경우, 제 4 데이터셋(231)을 구성하는 적어도 하나의 열의 이름을 제 4-1 내지 제 4-7 제이슨 데이터들 각각의 키로 명명할 수 있고, 상기 명명된 열에 상기 제 4-1 내지 제 4-7 제이슨 데이터들 각각에 포함된 밸류들을 삽입할 수 있다. 전자 장치(100)는 하위 제이슨 객체들 간의 순서를 식별하는데 이용되는 parentIdx 열을 제 4 데이터셋(231)의 제 1 열로 결정할 수 있다. 이어서, 전자 장치(100)는 제 4 데이터셋(231)의 제 1 행 및 제 2 열에 제 4-1 내지 제 4-7 제이슨 데이터들의 첫 번째 키인 "color"를 삽입할 수 있고, 제 4 데이터셋(231)의 제 1 행 및 제 3 열에 제 4-1 내지 제 4-7 제이슨 데이터들의 두 번째 키인 "value"를 삽입할 수 있다. 이어서, 전자 장치(100)는 제 4-1 내지 제 4-7 제이슨 데이터들의 밸류들을 대응하는 키가 삽입된 열에 순차적으로 삽입할 수 있다. 예컨대, "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에는, 제 5 제이슨 데이터(240), 그리고 제 5-1 데이터셋(241), 제 5-2 데이터셋(242) 및 제 5-3 데이터셋(243)이 도시된다. 일 실시 예에 따르면, 전자 장치(100)는 제 5 제이슨 데이터(240)에 기초하여 제 5-1 데이터셋(241), 제 5-2 데이터셋(242) 및 제 5-3 데이터셋(243)을 생성하거나, 제 5-1 데이터셋(241), 제 5-2 데이터셋(242) 및 제 5-3 데이터셋(243)에 기초하여 제 5 제이슨 데이터(240)를 생성할 수 있다.
예컨대, 전자 장치(100)는 제 5 제이슨 데이터(240)로부터 제 1 레벨에 속하는 3개의 ": (콜론)"과 제 2 레벨에 속하는 3개의 ": (콜론)"을 식별할 수 있고, 이를 통해 제 5 제이슨 데이터(240)에 총 6개의 제이슨 객체들이 포함되어 있는 것으로 판단할 수 있다. 보다 구체적으로, 전자 장치(100)는 제 5 제이슨 데이터(240)에 상위 레벨인 제 1 레벨에 속하는 3개의 제이슨 객체들과 하위 레벨인 제 2 레벨에 속하는 3개의 제이슨 객체들이 포함되어 있는 것으로 판단할 수 있다.
일 실시 예에 따르면, 제 1 레벨에 속하는 제 1 제이슨 객체는 "key1":"tobesoft"이고, 제 2 제이슨 객체는 "key2":{"key2_0": "key2_0_0", "key2_1": "key2_1_0", "key2_2": "2000"}이고, 제 3 제이슨 객체는 "key3":["key3_1", "5000", "key3_3"]일 수 있다. 또한, 제 2 레벨에 속하는 제 4 제이슨 객체는 "key2_0": "key2_0_0"이고, 제 5 제이슨 객체는 "key2_1": "key2_1_0"이고, 제 6 제이슨 객체는 "key2_2": "2000"일 수 있다. 이와 함께, 전자 장치(100)는 제 3 제이슨 객체의 밸류에 포함된 대괄호로부터 제이슨 배열을 식별할 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 도 2a에서 설명한 방식에 따라, 제 1 내지 제 3 제이슨 객체들을 이용하여 제 5-1 데이터셋(241)을 생성할 수 있다. 이 경우, 제 5-1 데이터셋(241)의 이름은 미리 설정된 바에 따라 "dsMaster"로 명명될 수 있다.
일 실시 예에 따르면, 제이슨 객체의 밸류가 제 2 제이슨 객체와 같이 제 4 내지 제 6 제이슨 객체들을 포함하는 하위 제이슨 객체의 형태로 정의되어 있는 경우, 전자 장치(100)는 제 2 제이슨 객체의 밸류를 제 5-1 데이터셋(241)의 제 2 행 및 제 3 열에 삽입하지 않고 새로운 데이터셋인 제 5-2 데이터셋(242)에 삽입할 수 있다. 이 때, 제 5-2 데이터셋(242)의 이름은 상위 데이터셋의 이름과 제 2 제이슨 객체의 키를 참고하여, "dsMaster_key2"로 명명될 수 있다.
일 실시 예에 따르면, 제이슨 객체의 밸류가 제 3 제이슨 객체와 같이 제이슨 배열의 형태로 정의되어 있는 경우, 전자 장치(100)는 제 3 제이슨 객체의 밸류를 제 5-1 데이터셋(241)의 제 2 행 및 제 4 열에 삽입하지 않고 새로운 데이터셋인 제 5-3 데이터셋(243)에 삽입할 수 있다. 이처럼 제이슨 배열의 형태로 정의된 데이터를 데이터셋으로 만들 때는, 도 2b에서 설명한 방식이 이용될 수 있다. 즉, 전자 장치(100)는 도 2b에서 설명한 방식에 따라, 제 3 제이슨 객체의 밸류와 대응되는 제 5-3 데이터셋(243)을 생성할 수 있다. 이 때, 제 5-3 데이터셋(243)의 이름은 상위 데이터셋의 이름과 제 3 제이슨 객체의 키를 참고하여, "dsMaster_key3"으로 명명될 수 있다.
도 3은 본 발명의 일 실시 예에 따른 전자 장치에서 데이터셋과 제이슨 데이터를 상호 변환하는 방법을 도시한 순서도이다.
단계(300)에서는, 전자 장치에서 실행 중인 프로그램과 대응되는 윈도우를 표시할 수 있다.
단계(310)에서는, 상기 프로그램을 통한 데이터 구조의 변환에 이용되는 복수의 식별자들 및 상기 복수의 식별자들 각각에 대응하는 인스트럭션들이 매칭된 룩업테이블을 저장할 수 있다. 이 경우, 상기 복수의 식별자들은 콜론, 쉼표, 대괄호 및 중괄호 중 적어도 하나를 포함할 수 있다.
단계(320)에서는, 상기 윈도우 내에 제 1 데이터를 삽입하는데 이용되는 제 1 입력, 및 상기 삽입된 제 1 데이터 및 상기 룩업테이블에 기초하여 제 2 데이터의 생성을 지시하는데 이용되는 제 2 입력을 인가할 수 있다.
단계(330)에서는, 상기 제 1 입력에 따라 삽입된 제 1 데이터에서 상기 복수의 식별자들 중 적어도 하나의 식별자를 검출할 수 있다.
단계(340)에서는, 상기 룩업테이블을 이용하여 상기 검출된 적어도 하나의 식별자와 대응되는 인스트럭션을 확인한 후, 상기 제 1 데이터와 대응되는 스프레드시트의 구조를 결정할 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 적어도 하나의 식별자로서 하나 이상의 콜론들이 검출되는 경우, 상기 하나 이상의 콜론들의 좌측에 기재된 문자들을 식별할 수 있다. 또한, 전자 장치(100)는 상기 식별된 문자들 중 중복되지 않으면서 서로 다른 문자들의 개수를 확인할 수 있다. 또한, 전자 장치(100)는 상기 확인된 개수에 기초하여 상기 스프레드시트의 열의 개수를 결정할 수 있다. 또한, 전자 장치(100)는 상기 결정된 열의 개수에 따라 상기 스프레드시트의 구조를 결정할 수 있다.
또 다른 실시 예에 따르면, 전자 장치(100)는 상기 적어도 하나의 식별자로서 하나 이상의 콜론들이 검출되는 경우, 상기 하나 이상의 콜론들의 우측에 기재된 문자들을 식별할 수 있다. 또한, 전자 장치(100)는 상기 식별된 문자들 중 중복되지 않으면서 서로 다른 문자들의 개수를 확인할 수 있다. 또한, 전자 장치(100)는 상기 확인된 개수에 기초하여 상기 스프레드시트의 행의 개수를 결정할 수 있다. 또한, 전자 장치(100)는 상기 결정된 행의 개수에 따라 상기 스프레드시트의 구조를 결정할 수 있다.
또 다른 실시 예에 따르면, 전자 장치(100)는 상기 적어도 하나의 식별자로서 콜론이 검출되지 않으면서 하나 이상의 쉼표들 및 한 쌍 이상의 대괄호가 검출되는 경우, 상기 검출된 한 쌍 이상의 대괄호의 개수에 따라 상기 제 1 데이터에 포함된 상기 하나 이상의 배열들의 개수를 확인할 수 있다. 또한, 전자 장치(100)는 상기 검출된 하나 이상의 쉼표들의 개수에 따라 상기 하나 이상의 배열들에 포함된 색인값들의 개수를 확인할 수 있다.
또 다른 실시 예에 따르면, 전자 장치(100)는 상기 확인된 하나 이상의 배열들의 개수에 기초하여 상기 스프레드시트의 열의 개수를 결정할 수 있고, 상기 결정된 열의 개수에 따라 상기 스프레드시트의 구조를 결정할 수 있다. 또한, 전자 장치(100)는 상기 확인된 색인값들의 개수에 기초하여 상기 스프레드시트의 행의 개수를 결정할 수 있고, 상기 결정된 행의 개수에 따라 상기 스프레드시트의 구조를 결정할 수 있다.
단계(350)에서는, 상기 구조가 결정된 스프레드시트를 생성하고, 상기 확인된 인스트럭션에 따라 상기 제 1 데이터에 포함된 하나 이상의 객체들 및 하나 이상의 배열들 중 적어도 하나를 상기 생성된 스프레드시트에 삽입할 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 상기 적어도 하나의 식별자로서 하나 이상의 콜론들 또는 상기 중괄호가 검출되는 경우, 상기 검출된 하나 이상의 콜론들의 개수 또는 상기 검출된 중괄호의 개수에 따라 상기 제 1 데이터에 포함된 상기 하나 이상의 객체들의 개수를 확인할 수 있다. 또한, 전자 장치(100)는 상기 생성된 스프레드시트의 미리 지정된 영역 중 첫 번째 열에 제 1 문자 및 상기 제 1 문자와 대응되는 색인값을 행을 바꿔가며 삽입할 수 있다. 또한, 전자 장치(100)는 상기 미리 지정된 영역 중 두 번째 열에 상기 검출된 하나 이상의 콜론들의 좌측에 기재된 제 2 문자 및 상기 검출된 하나 이상의 콜론들의 우측에 기재된 문자들 중 상기 제 2 문자와 대응되는 제 3 문자를 행을 바꿔가며 삽입할 수 있다.
도 다른 실시 예에 따르면, 전자 장치(100)는 상기 생성된 스프레드시트의 미리 지정된 영역 중 첫 번째 열에 제 1 문자 및 상기 제 1 문자와 대응되는 색인값을 행을 바꿔가며 삽입할 수 있다. 또한, 전자 장치(100)는 상기 미리 지정된 영역 중 두 번째 열에 제 2 문자 및 상기 하나 이상의 배열들에 포함된 색인값들을 행을 바꿔가며 삽입할 수 있다.
다양한 실시 예들에 따르면, 도 3에 개시된 동작들 중 일부는 생략되거나 복수 회 반복될 수 있다. 또한, 도 3에 개시된 동작들 각각은 일 실시 예로 보는 것이 타당하며, 어느 하나의 동작이 다른 하나의 동작에 종속되는 것으로 제한 해석될 수 없다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치는, 전자 장치에서 실행 중인 프로그램과 대응되는 윈도우를 표시하도록 설정된 표시부, 상기 프로그램을 통한 데이터 구조의 변환에 이용되는 복수의 식별자들 및 상기 복수의 식별자들 각각에 대응하는 인스트럭션들이 매칭된 룩업테이블을 저장하는 저장부, 상기 표시부를 통해 표시되고 있는 상기 윈도우 내에 제 1 데이터를 삽입하는데 이용되는 제 1 입력, 및 상기 삽입된 제 1 데이터 및 상기 룩업테이블에 기초하여 제 2 데이터의 생성을 지시하는데 이용되는 제 2 입력을 인가하는 입력부, 상기 제 1 입력에 따라 삽입된 제 1 데이터에서 상기 복수의 식별자들 중 적어도 하나의 식별자를 검출하는 문자 식별부, 상기 룩업테이블을 이용하여 상기 검출된 적어도 하나의 식별자와 대응되는 인스트럭션을 확인한 후, 상기 제 1 데이터와 대응되는 스프레드시트의 구조를 결정하는 구조 설계부, 및 상기 구조가 결정된 스프레드시트를 생성하고, 상기 확인된 인스트럭션에 따라 상기 제 1 데이터에 포함된 하나 이상의 객체들 및 하나 이상의 배열들 중 적어도 하나를 상기 생성된 스프레드시트에 삽입하는 데이터셋 생성부를 포함할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치에 있어서, 상기 복수의 식별자들은 콜론, 쉼표, 대괄호 및 중괄호 중 적어도 하나를 포함하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치에 있어서, 상기 구조 설계부는, 상기 적어도 하나의 식별자로서 하나 이상의 콜론들이 검출되는 경우, 상기 하나 이상의 콜론들의 좌측에 기재된 문자들을 식별하고, 상기 식별된 문자들 중 중복되지 않으면서 서로 다른 문자들의 개수를 확인하고, 상기 확인된 개수에 기초하여 상기 스프레드시트의 열의 개수를 결정하고, 상기 결정된 열의 개수에 따라 상기 스프레드시트의 구조를 결정하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치에 있어서, 상기 구조 설계부는, 상기 적어도 하나의 식별자로서 하나 이상의 콜론들이 검출되는 경우, 상기 하나 이상의 콜론들의 우측에 기재된 문자들을 식별하고, 상기 식별된 문자들 중 중복되지 않으면서 서로 다른 문자들의 개수를 확인하고, 상기 확인된 개수에 기초하여 상기 스프레드시트의 행의 개수를 결정하고, 상기 결정된 행의 개수에 따라 상기 스프레드시트의 구조를 결정하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치에 있어서, 상기 데이터셋 생성부는, 상기 적어도 하나의 식별자로서 하나 이상의 콜론들 또는 상기 중괄호가 검출되는 경우, 상기 검출된 하나 이상의 콜론들의 개수 또는 상기 검출된 중괄호의 개수에 따라 상기 제 1 데이터에 포함된 상기 하나 이상의 객체들의 개수를 확인하고, 상기 생성된 스프레드시트의 미리 지정된 영역 중 첫 번째 열에 제 1 문자 및 상기 제 1 문자와 대응되는 색인값을 행을 바꿔가며 삽입하고, 상기 미리 지정된 영역 중 두 번째 열에 상기 검출된 하나 이상의 콜론들의 좌측에 기재된 제 2 문자 및 상기 검출된 하나 이상의 콜론들의 우측에 기재된 문자들 중 상기 제 2 문자와 대응되는 제 3 문자를 행을 바꿔가며 삽입하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치에 있어서, 상기 구조 설계부는, 상기 적어도 하나의 식별자로서 콜론이 검출되지 않으면서 하나 이상의 쉼표들 및 한 쌍 이상의 대괄호가 검출되는 경우, 상기 검출된 한 쌍 이상의 대괄호의 개수에 따라 상기 제 1 데이터에 포함된 상기 하나 이상의 배열들의 개수를 확인하고, 상기 검출된 하나 이상의 쉼표들의 개수에 따라 상기 하나 이상의 배열들에 포함된 색인값들의 개수를 확인하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치에 있어서, 상기 구조 설계부는, 상기 확인된 하나 이상의 배열들의 개수에 기초하여 상기 스프레드시트의 열의 개수를 결정하고, 상기 결정된 열의 개수에 따라 상기 스프레드시트의 구조를 결정하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치에 있어서, 상기 구조 설계부는, 상기 확인된 색인값들의 개수에 기초하여 상기 스프레드시트의 행의 개수를 결정하고, 상기 결정된 행의 개수에 따라 상기 스프레드시트의 구조를 결정하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치에 있어서, 상기 데이터셋 생성부는, 상기 생성된 스프레드시트의 미리 지정된 영역 중 첫 번째 열에 제 1 문자 및 상기 제 1 문자와 대응되는 색인값을 행을 바꿔가며 삽입하고, 상기 미리 지정된 영역 중 두 번째 열에 제 2 문자 및 상기 하나 이상의 배열들에 포함된 색인값들을 행을 바꿔가며 삽입하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법은, 전자 장치에서 실행 중인 프로그램과 대응되는 윈도우를 표시하는 단계, 상기 프로그램을 통한 데이터 구조의 변환에 이용되는 복수의 식별자들 및 상기 복수의 식별자들 각각에 대응하는 인스트럭션들이 매칭된 룩업테이블을 저장하는 단계, 상기 윈도우 내에 제 1 데이터를 삽입하는데 이용되는 제 1 입력, 및 상기 삽입된 제 1 데이터 및 상기 룩업테이블에 기초하여 제 2 데이터의 생성을 지시하는데 이용되는 제 2 입력을 인가하는 단계, 상기 제 1 입력에 따라 삽입된 제 1 데이터에서 상기 복수의 식별자들 중 적어도 하나의 식별자를 검출하는 단계, 상기 룩업테이블을 이용하여 상기 검출된 적어도 하나의 식별자와 대응되는 인스트럭션을 확인한 후, 상기 제 1 데이터와 대응되는 스프레드시트의 구조를 결정하는 단계, 및 상기 구조가 결정된 스프레드시트를 생성하고, 상기 확인된 인스트럭션에 따라 상기 제 1 데이터에 포함된 하나 이상의 객체들 및 하나 이상의 배열들 중 적어도 하나를 상기 생성된 스프레드시트에 삽입하는 단계를 포함할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법에 있어서, 상기 복수의 식별자들은 콜론, 쉼표, 대괄호 및 중괄호 중 적어도 하나를 포함하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법에 있어서, 상기 스프레드시트의 구조를 결정하는 단계는, 상기 적어도 하나의 식별자로서 하나 이상의 콜론들이 검출되는 경우, 상기 하나 이상의 콜론들의 좌측에 기재된 문자들을 식별하는 단계, 상기 식별된 문자들 중 중복되지 않으면서 서로 다른 문자들의 개수를 확인하는 단계, 상기 확인된 개수에 기초하여 상기 스프레드시트의 열의 개수를 결정하는 단계, 및 상기 결정된 열의 개수에 따라 상기 스프레드시트의 구조를 결정하는 단계를 더 포함하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법에 있어서, 상기 스프레드시트의 구조를 결정하는 단계는, 상기 적어도 하나의 식별자로서 하나 이상의 콜론들이 검출되는 경우, 상기 하나 이상의 콜론들의 우측에 기재된 문자들을 식별하는 단계, 상기 식별된 문자들 중 중복되지 않으면서 서로 다른 문자들의 개수를 확인하는 단계, 상기 확인된 개수에 기초하여 상기 스프레드시트의 행의 개수를 결정하는 단계, 및 상기 결정된 행의 개수에 따라 상기 스프레드시트의 구조를 결정하는 단계를 더 포함하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법에 있어서, 상기 생성된 스프레드시트에 삽입하는 단계는, 상기 적어도 하나의 식별자로서 하나 이상의 콜론들 또는 상기 중괄호가 검출되는 경우, 상기 검출된 하나 이상의 콜론들의 개수 또는 상기 검출된 중괄호의 개수에 따라 상기 제 1 데이터에 포함된 상기 하나 이상의 객체들의 개수를 확인하는 단계, 상기 생성된 스프레드시트의 미리 지정된 영역 중 첫 번째 열에 제 1 문자 및 상기 제 1 문자와 대응되는 색인값을 행을 바꿔가며 삽입하는 단계, 및 상기 미리 지정된 영역 중 두 번째 열에 상기 검출된 하나 이상의 콜론들의 좌측에 기재된 제 2 문자 및 상기 검출된 하나 이상의 콜론들의 우측에 기재된 문자들 중 상기 제 2 문자와 대응되는 제 3 문자를 행을 바꿔가며 삽입하는 단계를 더 포함하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법에 있어서, 상기 스프레드시트의 구조를 결정하는 단계는, 상기 적어도 하나의 식별자로서 콜론이 검출되지 않으면서 하나 이상의 쉼표들 및 한 쌍 이상의 대괄호가 검출되는 경우, 상기 검출된 한 쌍 이상의 대괄호의 개수에 따라 상기 제 1 데이터에 포함된 상기 하나 이상의 배열들의 개수를 확인하는 단계, 및 상기 검출된 하나 이상의 쉼표들의 개수에 따라 상기 하나 이상의 배열들에 포함된 색인값들의 개수를 확인하는 단계를 더 포함하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법에 있어서, 상기 스프레드시트의 구조를 결정하는 단계는, 상기 확인된 하나 이상의 배열들의 개수에 기초하여 상기 스프레드시트의 열의 개수를 결정하는 단계, 및 상기 결정된 열의 개수에 따라 상기 스프레드시트의 구조를 결정하는 단계를 더 포함하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법에 있어서, 상기 스프레드시트의 구조를 결정하는 단계는, 상기 확인된 색인값들의 개수에 기초하여 상기 스프레드시트의 행의 개수를 결정하는 단계, 및 상기 결정된 행의 개수에 따라 상기 스프레드시트의 구조를 결정하는 단계를 더 포함하는 것을 특징으로 할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법에 있어서, 상기 생성된 스프레드시트에 삽입하는 단계는, 상기 생성된 스프레드시트의 미리 지정된 영역 중 첫 번째 열에 제 1 문자 및 상기 제 1 문자와 대응되는 색인값을 행을 바꿔가며 삽입하는 단계, 및 상기 미리 지정된 영역 중 두 번째 열에 제 2 문자 및 상기 하나 이상의 배열들에 포함된 색인값들을 행을 바꿔가며 삽입하는 단계를 더 포함하는 할 수 있다.
본 발명의 일 실시 예에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.
또한, 본 발명의 일 실시 예에 따라 JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시 예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시 예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시 예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.

Claims (20)

  1. 전자 장치에서 실행 중인 프로그램과 대응되는 윈도우를 표시하도록 설정된 표시부;
    상기 프로그램을 통한 데이터 구조의 변환에 이용되는 복수의 식별자들 및 상기 복수의 식별자들 각각에 대응하는 인스트럭션들이 매칭된 룩업테이블을 저장하는 저장부;
    상기 표시부를 통해 표시되고 있는 상기 윈도우 내에 제 1 데이터를 삽입하는데 이용되는 제 1 입력, 및 상기 삽입된 제 1 데이터 및 상기 룩업테이블에 기초하여 제 2 데이터의 생성을 지시하는데 이용되는 제 2 입력을 인가하는 입력부;
    상기 제 1 입력에 따라 삽입된 제 1 데이터에서 상기 복수의 식별자들 중 적어도 하나의 식별자를 검출하는 문자 식별부;
    상기 룩업테이블을 이용하여 상기 검출된 적어도 하나의 식별자와 대응되는 인스트럭션을 확인한 후, 상기 제 1 데이터와 대응되는 스프레드시트의 구조를 결정하는 구조 설계부; 및
    상기 구조가 결정된 스프레드시트를 생성하고, 상기 확인된 인스트럭션에 따라 상기 제 1 데이터에 포함된 하나 이상의 객체들 및 하나 이상의 배열들 중 적어도 하나를 상기 생성된 스프레드시트에 삽입하는 데이터셋 생성부를 포함하고,
    상기 복수의 식별자들은 콜론, 쉼표, 대괄호 및 중괄호 중 적어도 하나를 포함하며,
    상기 구조 설계부는, 상기 적어도 하나의 식별자로서 하나 이상의 콜론들이 검출되는 경우, 상기 하나 이상의 콜론들의 좌측에 기재된 문자들을 식별하고, 상기 식별된 문자들 중 중복되지 않으면서 서로 다른 문자들의 개수를 확인하고, 상기 확인된 개수에 기초하여 상기 스프레드시트의 열의 개수를 결정하고, 상기 결정된 열의 개수에 따라 상기 스프레드시트의 구조를 결정하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치.
  2. 삭제
  3. 삭제
  4. 제 1 항에 있어서,
    상기 구조 설계부는,
    상기 적어도 하나의 식별자로서 하나 이상의 콜론들이 검출되는 경우, 상기 하나 이상의 콜론들의 우측에 기재된 문자들을 식별하고, 상기 식별된 문자들 중 중복되지 않으면서 서로 다른 문자들의 개수를 확인하고, 상기 확인된 개수에 기초하여 상기 스프레드시트의 행의 개수를 결정하고, 상기 결정된 행의 개수에 따라 상기 스프레드시트의 구조를 결정하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치.
  5. 제 1 항에 있어서,
    상기 데이터셋 생성부는,
    상기 적어도 하나의 식별자로서 하나 이상의 콜론들 또는 상기 중괄호가 검출되는 경우, 상기 검출된 하나 이상의 콜론들의 개수 또는 상기 검출된 중괄호의 개수에 따라 상기 제 1 데이터에 포함된 상기 하나 이상의 객체들의 개수를 확인하고,
    상기 생성된 스프레드시트의 미리 지정된 영역 중 첫 번째 열에 제 1 문자 및 상기 제 1 문자와 대응되는 색인값을 행을 바꿔가며 삽입하고,
    상기 미리 지정된 영역 중 두 번째 열에 상기 검출된 하나 이상의 콜론들의 좌측에 기재된 제 2 문자 및 상기 검출된 하나 이상의 콜론들의 우측에 기재된 문자들 중 상기 제 2 문자와 대응되는 제 3 문자를 행을 바꿔가며 삽입하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치.
  6. 제 1 항에 있어서,
    상기 구조 설계부는,
    상기 적어도 하나의 식별자로서 콜론이 검출되지 않으면서 하나 이상의 쉼표들 및 한 쌍 이상의 대괄호가 검출되는 경우, 상기 검출된 한 쌍 이상의 대괄호의 개수에 따라 상기 제 1 데이터에 포함된 상기 하나 이상의 배열들의 개수를 확인하고, 상기 검출된 하나 이상의 쉼표들의 개수에 따라 상기 하나 이상의 배열들에 포함된 색인값들의 개수를 확인하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치.
  7. 제 6 항에 있어서,
    상기 구조 설계부는,
    상기 확인된 하나 이상의 배열들의 개수에 기초하여 상기 스프레드시트의 열의 개수를 결정하고, 상기 결정된 열의 개수에 따라 상기 스프레드시트의 구조를 결정하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치.
  8. 제 6 항에 있어서,
    상기 구조 설계부는,
    상기 확인된 색인값들의 개수에 기초하여 상기 스프레드시트의 행의 개수를 결정하고, 상기 결정된 행의 개수에 따라 상기 스프레드시트의 구조를 결정하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치.
  9. 제 6 항에 있어서,
    상기 데이터셋 생성부는,
    상기 생성된 스프레드시트의 미리 지정된 영역 중 첫 번째 열에 제 1 문자 및 상기 제 1 문자와 대응되는 색인값을 행을 바꿔가며 삽입하고,
    상기 미리 지정된 영역 중 두 번째 열에 제 2 문자 및 상기 하나 이상의 배열들에 포함된 색인값들을 행을 바꿔가며 삽입하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치.
  10. 전자 장치에서 실행 중인 프로그램과 대응되는 윈도우를 표시하는 단계;
    상기 프로그램을 통한 데이터 구조의 변환에 이용되는 복수의 식별자들 및 상기 복수의 식별자들 각각에 대응하는 인스트럭션들이 매칭된 룩업테이블을 저장하는 단계;
    상기 윈도우 내에 제 1 데이터를 삽입하는데 이용되는 제 1 입력, 및 상기 삽입된 제 1 데이터 및 상기 룩업테이블에 기초하여 제 2 데이터의 생성을 지시하는데 이용되는 제 2 입력을 인가하는 단계;
    상기 제 1 입력에 따라 삽입된 제 1 데이터에서 상기 복수의 식별자들 중 적어도 하나의 식별자를 검출하는 단계;
    상기 룩업테이블을 이용하여 상기 검출된 적어도 하나의 식별자와 대응되는 인스트럭션을 확인한 후, 상기 제 1 데이터와 대응되는 스프레드시트의 구조를 결정하는 단계; 및
    상기 구조가 결정된 스프레드시트를 생성하고, 상기 확인된 인스트럭션에 따라 상기 제 1 데이터에 포함된 하나 이상의 객체들 및 하나 이상의 배열들 중 적어도 하나를 상기 생성된 스프레드시트에 삽입하는 단계를 포함하고,
    상기 복수의 식별자들은 콜론, 쉼표, 대괄호 및 중괄호 중 적어도 하나를 포함하며,
    상기 스프레드시트의 구조를 결정하는 단계는,
    상기 적어도 하나의 식별자로서 하나 이상의 콜론들이 검출되는 경우, 상기 하나 이상의 콜론들의 좌측에 기재된 문자들을 식별하는 단계;
    상기 식별된 문자들 중 중복되지 않으면서 서로 다른 문자들의 개수를 확인하는 단계;
    상기 확인된 개수에 기초하여 상기 스프레드시트의 열의 개수를 결정하는 단계; 및
    상기 결정된 열의 개수에 따라 상기 스프레드시트의 구조에 대한 결정을 수행하는 단계를 포함하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법.
  11. 삭제
  12. 삭제
  13. 제 10 항에 있어서,
    상기 스프레드시트의 구조를 결정하는 단계는,
    상기 적어도 하나의 식별자로서 하나 이상의 콜론들이 검출되는 경우, 상기 하나 이상의 콜론들의 우측에 기재된 문자들을 식별하는 단계;
    상기 식별된 문자들 중 중복되지 않으면서 서로 다른 문자들의 개수를 확인하는 단계;
    상기 확인된 개수에 기초하여 상기 스프레드시트의 행의 개수를 결정하는 단계; 및
    상기 결정된 행의 개수에 따라 상기 스프레드시트의 구조를 결정하는 단계를 더 포함하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법.
  14. 제 10 항에 있어서,
    상기 생성된 스프레드시트에 삽입하는 단계는,
    상기 적어도 하나의 식별자로서 하나 이상의 콜론들 또는 상기 중괄호가 검출되는 경우, 상기 검출된 하나 이상의 콜론들의 개수 또는 상기 검출된 중괄호의 개수에 따라 상기 제 1 데이터에 포함된 상기 하나 이상의 객체들의 개수를 확인하는 단계;
    상기 생성된 스프레드시트의 미리 지정된 영역 중 첫 번째 열에 제 1 문자 및 상기 제 1 문자와 대응되는 색인값을 행을 바꿔가며 삽입하는 단계; 및
    상기 미리 지정된 영역 중 두 번째 열에 상기 검출된 하나 이상의 콜론들의 좌측에 기재된 제 2 문자 및 상기 검출된 하나 이상의 콜론들의 우측에 기재된 문자들 중 상기 제 2 문자와 대응되는 제 3 문자를 행을 바꿔가며 삽입하는 단계를 더 포함하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법.
  15. 제 10 항에 있어서,
    상기 스프레드시트의 구조를 결정하는 단계는,
    상기 적어도 하나의 식별자로서 콜론이 검출되지 않으면서 하나 이상의 쉼표들 및 한 쌍 이상의 대괄호가 검출되는 경우, 상기 검출된 한 쌍 이상의 대괄호의 개수에 따라 상기 제 1 데이터에 포함된 상기 하나 이상의 배열들의 개수를 확인하는 단계; 및
    상기 검출된 하나 이상의 쉼표들의 개수에 따라 상기 하나 이상의 배열들에 포함된 색인값들의 개수를 확인하는 단계를 더 포함하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법.
  16. 제 15 항에 있어서,
    상기 스프레드시트의 구조를 결정하는 단계는,
    상기 확인된 하나 이상의 배열들의 개수에 기초하여 상기 스프레드시트의 열의 개수를 결정하는 단계; 및
    상기 결정된 열의 개수에 따라 상기 스프레드시트의 구조를 결정하는 단계를 더 포함하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법.
  17. 제 15 항에 있어서,
    상기 스프레드시트의 구조를 결정하는 단계는,
    상기 확인된 색인값들의 개수에 기초하여 상기 스프레드시트의 행의 개수를 결정하는 단계; 및
    상기 결정된 행의 개수에 따라 상기 스프레드시트의 구조를 결정하는 단계를 더 포함하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법.
  18. 제 15 항에 있어서,
    상기 생성된 스프레드시트에 삽입하는 단계는,
    상기 생성된 스프레드시트의 미리 지정된 영역 중 첫 번째 열에 제 1 문자 및 상기 제 1 문자와 대응되는 색인값을 행을 바꿔가며 삽입하는 단계; 및
    상기 미리 지정된 영역 중 두 번째 열에 제 2 문자 및 상기 하나 이상의 배열들에 포함된 색인값들을 행을 바꿔가며 삽입하는 단계를 더 포함하는 것을 특징으로 하는, JSON을 이용하여 데이터셋의 구조를 변환하는 전자 장치의 동작 방법.
  19. 제 10 항, 제 13 항, 제 14 항, 제 15 항, 제 16 항, 제 17 항 또는 제 18 항 중 어느 한 항의 방법을 컴퓨터로 하여금 수행하도록 하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
  20. 제 10 항, 제 13 항, 제 14 항, 제 15 항, 제 16 항, 제 17 항 또는 제 18 항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.
KR1020180110659A 2018-09-17 2018-09-17 Json을 이용하여 데이터셋의 구조를 변환하는 전자 장치 및 그의 동작 방법 KR101949154B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180110659A KR101949154B1 (ko) 2018-09-17 2018-09-17 Json을 이용하여 데이터셋의 구조를 변환하는 전자 장치 및 그의 동작 방법
JP2019112721A JP6653850B1 (ja) 2018-09-17 2019-06-18 Jsonを用いてデータセットの構造を変換する電子装置およびその動作方法

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
KR101949154B1 true KR101949154B1 (ko) 2019-02-18

Family

ID=65561501

Family Applications (1)

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

Country Status (2)

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

Cited By (4)

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

Families Citing this family (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

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160043132A (ko) * 2011-12-28 2016-04-20 인텔 코포레이션 데이터 스트림들의 실시간 자연어 처리
US20160124722A1 (en) * 2014-10-31 2016-05-05 Oracle International Corporation Json stylesheet language transformation
US20180157468A1 (en) * 2016-12-03 2018-06-07 Thomas STACHURA Spreadsheet-Based Software Application Development

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160043132A (ko) * 2011-12-28 2016-04-20 인텔 코포레이션 데이터 스트림들의 실시간 자연어 처리
US20160124722A1 (en) * 2014-10-31 2016-05-05 Oracle International Corporation Json stylesheet language transformation
US20180157468A1 (en) * 2016-12-03 2018-06-07 Thomas STACHURA Spreadsheet-Based Software Application Development

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Introducing JSON, www.json.org *

Cited By (7)

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

Also Published As

Publication number Publication date
JP6653850B1 (ja) 2020-02-26
JP2020047254A (ja) 2020-03-26

Similar Documents

Publication Publication Date Title
KR101949154B1 (ko) Json을 이용하여 데이터셋의 구조를 변환하는 전자 장치 및 그의 동작 방법
US20210303561A1 (en) System for providing dynamic linked panels in user interface
CN107844299B (zh) 一种Web应用开发工具的实现方法
US11210456B2 (en) Method relating to preparation of a report
US10324828B2 (en) Generating annotated screenshots based on automated tests
Walker et al. Timenotes: a study on effective chart visualization and interaction techniques for time-series data
US20170220548A1 (en) System and method for creation of templates
EP2084597B1 (en) Creating data in a data store using a dynamic ontology
CN107807954B (zh) 可视化建模多维分析系统及其方法
US8893081B2 (en) Selectively enabling runtime editing of an application
JPWO2006001268A1 (ja) 文書処理装置、文書閲覧装置および文書処理方法
CN102893275A (zh) 自动社交网络图挖掘和可视化
CN103246951A (zh) 基于bim的机电设备智能管理系统和方法
JP2009509271A (ja) 抽出、変換、及び読み込みタスクの構成に基づくデータプロファイルのための装置及び方法
CN107544808A (zh) 一种网页表单的生成方法和装置
CA2684822A1 (en) Data transformation based on a technical design document
CN106649457A (zh) 基于对象关系映射技术的数据处理框架
CN105144147A (zh) 检测并重构固定格式文档中的从右到左文本方向、连字和变音符号
CN105556533A (zh) 自动生成证书文档
CN103294340A (zh) 文本和格式化数据呈现方法和系统
KR101797573B1 (ko) 웹 기반의 스프레드시트 서비스 제공 장치 및 방법
KR101746477B1 (ko) 개체에 대한 스타일 동시 편집을 지원하는 문서 협업 장치 및 그 동작 방법
Wills Visualization toolkit software
JP2014002565A (ja) アプリケーションプログラムの影響範囲抽出方法および影響範囲抽出プログラム
JP6388756B2 (ja) 電子マニュアル出力システム及び電子マニュアル出力方法並びに電子マニュアル出力プログラム

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant