KR101999409B1 - 예시에 의한 데이터 포매팅 기법 - Google Patents
예시에 의한 데이터 포매팅 기법 Download PDFInfo
- Publication number
- KR101999409B1 KR101999409B1 KR1020137019749A KR20137019749A KR101999409B1 KR 101999409 B1 KR101999409 B1 KR 101999409B1 KR 1020137019749 A KR1020137019749 A KR 1020137019749A KR 20137019749 A KR20137019749 A KR 20137019749A KR 101999409 B1 KR101999409 B1 KR 101999409B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- formatting
- data formatting
- items
- range
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/26—Visual data mining; Browsing structured data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
Abstract
데이터를 하나의 형식에서 다른 형식으로 변환하는 데이터 포매팅 규칙은 사용자의 편집에 기초하여 자동으로 결정된다. 기계 학습 휴리스틱이 사용자의 ?집에 적용되어 데이터에 적용될 수 있는 데이터 포매팅 규칙을 결정한다. 예를 들어, 사용자는 데이터, 연쇄 데이터, 추출 데이터, 재명명 데이터 등으로부터 캐릭터를 부가/제거하는 편집을 할 수 있다. 기계 학습 휴리스틱은 이벤트에 응답하여(예를 들면, 사전 지정된 수의 편집이 동일한 유형의 데이터에 적용된 후에) 자동으로 시작될 수 있고 또는 수동으로 시작될 수 있다(예를 들면, 사용자 인터페이스 옵션을 선택하는 것). 데이터 포매팅 규칙은 다른 데이터 및 사용자에 의해 검토가능한 포매팅의 결과에 적용될 수 있다. 추가 편집/검토에 기초하여, 데이터 포매팅 규칙이 업데이트될 수 있다. 데이터 포매팅 규칙은 이후 사용을 위해 저장될 수 있다.
Description
동일한 유형의 데이터가 다수의 상이한 형식으로 입력되고 저장되는 것은 흔히 있는 일이다. 예를 들어, 특정 날짜는 CCYYMMDD(19990101)의 형식이고, 다른 날짜는 MM/DD/CCYY(01/01/1999)의 형식이며, 또 다른 날짜는 M/D/YY(1/1/99)의 형식이다. 이러한 데이터에 대한 분석을 수행하기 위해서 데이터가 동일한 형식으로 변환된다. 예를 들어, 일부 분석에서 전화 번호는 555-1212의 형식(206)을 따라 포맷된 것으로 구체화할 수 있으나, 다른 분석은 그 전화 번호로부터 형식이 제거되는 것(즉, 2075551212)으로 구체화할 수 있다. 데이터를 변환하는데 상이한 방법이 사용될 수 있다. 예를 들어, 상이한 변환 함수가 사용될 수 있고 및/또는 그 데이터를 변환하기 위해 코드가 개발될 수 있다.
본 요약은 상세한 설명에서 이하에 추가로 설명되는 개념에 대한 선택사항을 간략화된 형식으로 소개하기 위한 것이다. 본 요약은 청구된 발명의 대상에 대한 핵심 특징이나 주요 특징을 나타내기 위한 것이 아니며, 또한 청구된 발명의 대상의 범위를 정하는 데 보조적으로 사용하기 위한 것이 아니다.
데이터 아이템을 하나의 형식에서 다른 형식으로 변환하기 위한 데이터 포매팅 규칙이 출력의 예시 세트(example set)(예, 사용자 편집)에 기초하여 자동으로 결정된다. 기계 학습 휴리스틱(machine learnign heuristic)이 예시 출력(예, 사용자 편집)과 함께 소스 데이터에 적용되어 추가 데이터 아이템에 적용될 수 있는 데이터 포매팅 규칙을 결정한다. 예를 들어, 사용자가 데이터, 연결된 데이터, 추출 데이터, 재명명 데이터(rename data) 등으로부터 문자(characters)를 추가/제거하는 편집을 할 수 있다. 편집된 값과 함께 원본 값을 진단함으로써, 이러한 유형의 변형을 캡슐화하는 규칙이 유추될 수 있고, 이어서 바람직한 편집된 값 또는 출력을 자동으로 생성하도록 추가적인 원본 값에 대해 그 규칙을 실행할 수 있다. 기계 학습 휴리스틱은 이벤트에 응답하여 자동으로 시동될 수 있으며(예를 들면, 사전 지정된 수의 편집이 동일한 유형의 데이터에 대해 이루어진 후에) 또는 수동으로 시동될 수 있다(예를 들면 사용자 인터페이스 옵션을 선택하는 것). 데이터 포매팅 규칙은 다른 데이터 및 사용자에 의해 검토가능한 포매팅(formatting)의 결과에 적용될 수 있다. 추가적인 편집/검토에 기초하여, 데이터 포매팅 규칙이 업데이트될 수 있다. 데이터 포매팅 규칙은 이후의 사용 및/또는 변경을 위해 저장될 수 있다. 또한, 신뢰 레벨(confidence level)이 아이템(들)이 정확히 재 포매팅(reformatting)되었는지를 판정할 시에 사용자를 보조하기 위해 제시될 수 있다.
도 1은 예시적인 컴퓨팅 환경을 나타낸다.
도 2는 문서에 이루어진 편집에 기초하여 데이터를 포매팅하기 위한 시스템을 도시한다.
도 3은 컬럼에 대한 사용자의 편집 규칙을 결정하는 것 및 컬럼 내의 다른 셀들에 데이터 포매팅 규칙을 더하는 것을 나타낸다.
도 4는 사용자가 사회 보장 번호 컬럼의 아이템을 편집하는 예를 도시한다.
도 5는 사용자가 날짜의 포매팅을 변경하는 편집을 하는 예를 나타낸다.
도 6은 아이템의 포매팅과 상호작용하는데 사용될 수 있는 사용자 인터페이스 요소를 도시한다.
도 7은 예로써 작성(fill)을 활성화/비활성화하기 위한 사용자 인터페이스를 도시한다.
도 8은 예로써 데이터를 포맷하기 위한 예시적인 프로세스를 도시한다.
도 2는 문서에 이루어진 편집에 기초하여 데이터를 포매팅하기 위한 시스템을 도시한다.
도 3은 컬럼에 대한 사용자의 편집 규칙을 결정하는 것 및 컬럼 내의 다른 셀들에 데이터 포매팅 규칙을 더하는 것을 나타낸다.
도 4는 사용자가 사회 보장 번호 컬럼의 아이템을 편집하는 예를 도시한다.
도 5는 사용자가 날짜의 포매팅을 변경하는 편집을 하는 예를 나타낸다.
도 6은 아이템의 포매팅과 상호작용하는데 사용될 수 있는 사용자 인터페이스 요소를 도시한다.
도 7은 예로써 작성(fill)을 활성화/비활성화하기 위한 사용자 인터페이스를 도시한다.
도 8은 예로써 데이터를 포맷하기 위한 예시적인 프로세스를 도시한다.
이제, 동일한 번호가 동일한 구성요소를 나타내는 도면을 참조하여 다양한 실시예가 설명될 것이다. 구체적으로, 도 1 및 이에 대응하는 설명은 실시예가 구현될 수 있는 적합한 컴퓨팅 환경에 대한 간략하고, 일반적인 설명을 제공하기 위한 것이다.
일반적으로, 프로그램 모듈은 루틴, 프로그램, 컴포넌트, 데이터 구조물 및 특정한 태스크를 수행하거나 특정한 추상 데이터 유형을 구현하는 기타 유형의 구조물을 포함한다. 핸드-헬드 장치, 다중 프로세서 시스템, 마이크로프로세서-기반 또는 프로그램 가능한 가정용 전자기기, 미니 컴퓨터, 메인프레임 컴퓨터 등을 포함하는 다른 컴퓨터 시스템 구성이 사용될 수 있다. 또한 통신 네트워크를 통해 연결된 원격 프로세싱 장치에 의해 태스크가 수행되는 분산형 컴퓨터 환경이 사용될 수 있다. 분산형 컴퓨팅 환경에서 프로그램 모듈은 로컬 및 원격 메모리 저장 장치 모두에 배치될 수 있다.
이제 도 1을 참조하여, 다양한 구현예에서 사용되는 컴퓨터(100)를 위한 예시적인 컴퓨터 환경이 설명될 것이다. 도 1에 도시된 컴퓨터 환경은 서버, 데스크탑 또는 모바일 컴퓨터, 또는 일부 다른 유형의 컴퓨팅 장치로서 각각 구성될 수 있는 컴퓨팅 장치를 포함하며, 중앙 처리 유닛(5, "CPU"), 시스템 메모리(7)(랜덤 액세스 메모리(9, "RAM") 및 리드-온리 메모리(10, "ROM")를 포함함), 및 중앙 처리 유닛(5, "CPU")에 메모리를 연결하는 시스템 버스(12)를 포함한다.
컴퓨터 내의 구성요소 사이의 정보 전달을 돕는 기본 루틴(가령, 스타트 업 중)을 포함하는 기본 입출력 시스템이 롬(10)에 저장된다. 컴퓨터(100)는 추가로, 운영 체제(16), 스프레드시트(11), 스프레드시트 애플리케이션(24), 기타 프로그램 모듈(25) 및 이하에서 더 상세히 설명될 포매팅 매니저(26)를 저장하기 위한 대용량 저장 장치(14)를 포함한다.
대용량 저장 장치(14)는 버스(12)에 연결된 대용량 저장 장치 컨트롤러(도시되지 않음)를 통해 CPU(5)에 연결된다. 대용량 저장 장치(14) 및 이와 연관된 컴퓨터-판독가능 매체는 컴퓨터(100)를 위한 비휘발성 저장 장치를 제공한다. 본 명세서에 포함되는 컴퓨터-판독가능 매체에 대한 설명은 대용량 저장 장치(가령, CD-ROM)를 나타내나, 컴퓨터-판독가능 매체는 컴퓨터(100)에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수 있다.
비제한적인 예로써, 컴퓨터-판독가능 매체는 컴퓨터 저장 장치 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는, 컴퓨터-판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 제거가능 및 비제거가능 매체를 포함한다. 컴퓨터 저장 매체는, 램, 롬, 이피롬(EPROM: Erasable Programmable Read Only Memory), 이이피롬(EEPROM: Electrically, Erasable Programmable Read Only Memory), 플래시 메모리 또는 기타 고체 상태 메모리 기술, CD-ROM, DVD 또는 기타 광학 저장장치, 자기 카세트, 자기 테이프, 자기 디스크 저장장치 또는 기타 자기 저장 장치, 또는 원하는 정보를 저장하는데 사용될 수 있고 컴퓨터(100)에 의해 액세스 가능한 임의의 다른 매체를 포함하나, 이에 한정되는 것은 아니다.
컴퓨터(100)는 인터넷과 같은 네트워크(18)를 통해 원격 컴퓨터로의 논리적 연결을 이용하는 네트워킹된 환경에서 동작한다. 컴퓨터(100)는 버스(12)에 연결된 네트워크 인터페이스 유닛(20)을 통해 네트워크(18)로 연결될 수 있다. 네트워크 연결은 무선 및/또는 유선일 수 있다. 또한, 네트워크 인터페이스 유닛(20)은 네트워크 서비스(들)(27)와 같은 다른 유형의 네트워크 및 원격 컴퓨터 시스템에 연결하는데 사용될 수 있다. 또한, 컴퓨터(100)는 키보드, 마우스 또는 전자 스타일러스(도 1에 도시되지 않음)를 포함하는 많은 다른 장치로부터의 입력을 수신 및 처리하기 위한 입출력 컨트롤러(22)를 포함할 수 있다. 마찬가지로, 입출력 컨트롤러(22)는 IP 폰, 디스플레이 스크린(23), 프린터, 또는 다른 유형의 출력 장치로 입력/출력을 제공할 수 있다.
위에서 간단히 언급한 바와 같이, 복수의 프로그램 모듈 및 데이터 파일(워싱턴, 레드몬드에 소재한 마이크로소프트 사의 WINDOWS 7 ® 운영 체제와 같은, 컴퓨터의 동작을 제어하는데 적합한 운영 체제(16)를 포함함)이 컴퓨터(100)의 대용량 저장 장치(14) 및 램(9)에 저장될 수 있다. 대용량 저장 장치(14) 및 램(9)은 또한 하나 이상의 프로그램 모듈을 포함할 수 있다. 특히, 대용량 저장 장치(14) 및 램(9)은 하나 이상의 애플리케이션 프로그램(스프레드시트 애플리케이션(24) 및 프로그램 모듈(25)을 포함함)을 저장할 수 있다. 일 실시예에 따르면, 스프레드시트 애플리케이션(24)은 마이크로소프트 엑셀 스프레드시트 애플리케이션이다. 또한, 다른 스프레드시트 애플리케이션이 사용될 수 있다. 사용자 인터페이스(가령, UI(28))는 사용자로 하여금 스프레드시트 애플리케이션(24)과 같은 애플리케이션과 상호작용하는 것을 가능하게 한다.
포매팅 매니저(26)는 도시된 스프레드시트 애플리케이션(24)의 외부에 배치될 수 있으며 또는 스프레드시트 애플리케이션(24)의 일부일 수 있다. 나아가, 포매팅 매니저(26)에 의해 제공되는 기능의 전부/일부가 스프레드시트 애플리케이션(24)의 내부/외부에 배치될 수 있다.
포매팅 매니저(26)는 원본 데이터 및 예시 출력(예를 들면, 사용자의 편집)에 기초하여 하나의 형태에서 다른 형태로 데이터를 변환하는 하나 이상의 데이터 포매팅 규칙을 생성하도록 구성된다. 일 실시예에 따르면, 포매팅 매니저(26)는 기계 학습 휴리스틱을 원본 데이터에 적용하고 또한 데이터에 적용될 수 있는 데이터 포매팅 규칙(들)을 결정하도록 예시 출력을 사용자의 편집에 적용한다. 예를 들어, 사용자는 데이터, 연결 데이터, 추출 데이터, 재명명 데이터 등으로부터 캐릭터를 부가/제거하는 편집을 할 수 있다. 이러한 편집에 응답하여, 문서(예, 스프레드 시트) 내의 다른 데이터에 부가되는 데이터 포매팅 규칙(들)이 생성된다. 데이터에 적용되는 포매팅은 사용자가 변경을 승인/거절할 수 있도록 사용자에 의해 검토될 수 있다. 데이터에 적용되는 포매팅은 또한 메타데이터 포매팅을 포함할 수 있다. 일 실시예에 따르면, 포매팅 규칙으로부터 결정된 신뢰 레벨이 데이터에 적용되는 포매팅과 연관되어, 데이터가 적절히 재포매팅되는 경우에 사용자가 보다 쉽게 식별할 수 있다. 예를 들어, 고 신뢰 레벨은 데이터가 적절히 포매팅 되었을 것이라는 것을 나타내나, 반면에 저 신뢰 레벨은 사용자가 결과를 검토하기를 원할 수 있다는 것을 나타낼 수 있다. 기계 학습 휴리스틱은 이벤트에 응답하여 (예를 들면, 사전 지정된 수의 편집이 동일한 유형의 데이터에 이루어진 후에) 자동으로 시동될 수 있고 또는 수동으로 시동될 수 있다(예를 들면, 사용자 인터페이스 옵션을 선택하는 것). 추가적인 편집/검토에 기초하여, 데이터 포매팅 규칙이 업데이트될 수 있다. 또한 데이터 포매팅 규칙은 이후의 사용 및/또는 변경을 위해 저장될 수 있다. 예를 들어, 사용자는 데이터 포매팅 규칙의 적용이 변경된 규칙을 따르도록 규칙(예, 스크립트)을 변경할 수 있다.
도 2는 문서에 대해 이루어진 편집에 기초하여 데이터를 포매팅하기 위한 시스템을 도시한다. 도시된 바와 같이, 시스템(200)은 포매팅 매니저(26), 애플리케이션 프로그램(210), 콜백 코드(212) 및 디스플레이(215)를 포함한다. 사용되는 컴퓨팅 장치(들)은 문서에 대한 사용자의 편집에 기초하여 자동으로 데이터를 포매팅하는 것에 관한 동작을 수행하도록 구성되는 임의의 유형의 컴퓨팅 장치일 수 있다. 예를 들면, 일부 컴퓨팅 장치는 모바일 컴퓨팅 장치(예, 셀룰러 폰, 타블릿, 스마트 폰, 랩탑 등), 데스크탑 컴퓨팅 장치 및 서버일 수 있다.
포매팅 매니저(26)와의 통신을 용이하게 하기 위하여, 하나 이상의 콜백 루틴(도 2에 콜백 코드(212)로 도시됨)이 구현될 수 있다. 일 실시예에 따르면, 애플리케이션 프로그램(210)은 스프레드시트 애플리케이션이다.
디스플레이(215)는 스프레드시트 문서(220)와 같은 문서 및 문서와 상호작용하는데 사용되는 사용자 인터페이스 요소를 디스플레이하도록 구성된다. 도시된 바와 같이, 스프레드시트(220)는 성 컬럼(A), 이름 컬럼(B) 및 편집 컬럼(C)을 포함하는 세 개의 컬럼을 도시한다. 현재의 예에서, 사용자는 편집 컬럼에 대한 편집을 한다. 셀(C2)에서, 사용자가 그 로우(row, 로우 2)에 대해 성(이는 또한 셀(A2)에 포함됨), 다음에 쉼표, 다음에 이름의 첫글자(또한 이는 셀(B2)에도 포함됨)를 입력한다. 셀(C3)에서, 사용자는 로우(로우(3))에 대해, 성(이는 또한 셀(A3)에도 포함됨), 다음에 쉼표, 다음에 이름의 첫글자(이는 또한 셀(B3)에도 포함됨)를 입력한다.
일반적으로, 포매팅 매니저(26)는 사용자가 하부방향으로 채워질 수 있고 스프레드시트의 추가 데이터에 적용될 수 있는 패턴에 맞는 데이터를 편집/수정하고 있는 경우를 검출하고 데이터 포매팅 규칙을 적용하는 것으로부터 획득된 결과로 컬럼을 하부방향으로 자동으로 채운다. 편집에 응답하여, 포매팅 매니저(26)는 그 편집과 연관된 정보를 사용하여 스프레드시트 내의 다른 데이터에 적용되는 데이터 포매팅 규칙을 획득한다. 일 실시예에 따르면, 이러한 정보는 편집된 셀(예, 셀 C2 및 C3) 내에 디스플레이되는 텍스트에 대한 편집으로 인한 결과적인 출력 예시 및 그 편집과 연관된 입력 예시를 포함한다. 이러한 경우에, 컬럼 A 및 컬럼 B는 편집된 컬럼과 관련된 입력 예시(예, 셀 A2 및 B3는 출력 예시 C2에 대한 입력 예시이고, 셀 A3 및 B3는 출력 예시 C3에 대한 입력 예시임)를 포함한다. 이러한 입력/출력 예시는 포매팅 매니저(26)에 의해 결정되고, 다른 유사하게 포매팅 된 셀(예, 셀 C4:C7(222))에 대한 데이터 포매팅 규칙을 생성하는 프로세스에 제공된다. 기계 학습 휴리스틱은 입력/출력 예시를 획득하고, 패턴을 결정하고, 데이터 포매팅 규칙을 생성하며, 이후에 데이터 포매팅 규칙을 출력 범위(output range)에 적용하여 새롭게 포매팅 된 값을 생성한다. 일 실시예에 따르면, 예시적인 기계 학습 휴리스틱은 스미트 굴와니(Sumit Gulwani)의 "Automating String Processing in Spreadsheets Using Input-Output Examples"(PoPL'11, 2011년 1월 26-28, 텍사스, 오스틴)에 설명되어 있다. 다른 기계학습 휴리스틱이 사용될 수 있다. 일반적으로, 원본 데이터와 데이터 편집을 입력으로 받아들이고 다른 데이터에 적용하여 유사하게 포매팅된 데이터를 생성할 수 있는 데이터 포매팅 규칙을 생성하는 임의의 휴리스틱이 사용될 수 있다. 일 실시예에 따르면, 기계 학습 휴리스틱의 기능이 포매팅 매니저(26)에 포함된다. 이 기능은 또한 다른 곳에 배치될 수도 있다.
포매팅 매니저(26)는 유사하게 포매팅된 스프레드시트 내의 다른 셀에 데이터 포매팅 규칙을 자동으로 적용한다. 일 실시예에 따르면, 데이터 포매팅 규칙은 편집된 컬럼의 컬럼을 하부방향으로 채우는 셀의 출력 범위에 자동으로 적용된다. 현재 실시예에서, 출력 범위는 셀 C4:C7을 포함한다. 박스(222)는 셀 C4:C7에 대한 데이터 포매팅 규칙의 적용이 결과적으로 셀 C5 및 C6 내에 위치한 값을 생성한다는 것을 나타낸다. 일 실시예에 따르면, 출력 범위에 적용되는 데이터 포매팅 규칙은 동적이다. 다르게 설명하면, 값이 출력 범위 내에서 편집되는 경우에, 데이터 포매팅 규칙은 추가적인 입력/출력 예시(들)을 사용하여 업데이트된다.
데이터 포매팅 규칙은 각각의 셀에 대해 제로(0) 이상의 값을 생성할 수 있다. 예를 들어, B 컬럼의 대응하는 셀 내에 이름(first name)이 존재하지 않기 때문에, 값이 셀 C4 및 C7로 리턴되지 않는다. 데이터 포매팅 규칙이 그 결과를 보증하지는 않으나, 하나 이상의 잠재적인 결과가 데이터 포매팅 규칙에 의해 생성될 수 있다. 일 실시예에 따르면, 데이터 포매팅 규칙이 출력 범위의 셀에 적용되고 하나의 응답을 가지는 셀의 퍼센트가 결정된다. 일 실시예에 따르면, 제로의 응답을 가지는 셀의 퍼센트는 계산에서 배제된다. 퍼센트가 사전 지정된 임계값(예, 70%)을 초과하는 경우에, 출력 범위 내의 셀은 그 데이터 포매팅 규칙에 의해 제공되는 결과를 사용하여 자동으로 하부방향으로 채워진다. 임계값을 만족하지 않는 경우에, 결과가 셀에 적용되지 않을 수 있고, 새로운 데이터 포매팅 규칙을 생성하기 전에 보다 많은 편집이 얻어진다. 또는, 그 결과가 적용되고 셀 및 표시자(예, 하이라이팅, 포매팅)가 신뢰 레벨이 임계값 이하인 것을 나타내는 셀에 적용될 수 있다. 데이터 포매팅 규칙을 셀에 적용함으로써 생성된 고유한 결과는 데이터 포매팅 규칙이 정확한 결과를 생성하고 있다는 것에 대한 좋은 표시자이다. 데이터 포매팅 규칙이 정확한 결과를 생성하고 있는지 여부를 한정하는데에 다른 임계값 및/또는 규칙이 사용될 수 있다.
사용자의 편집에 기초하여 많은 유형의 데이터 포매팅 규칙이 생성될 수 있다. 예를 들어, 두 개의 컬럼의 연결(concatenation), 컬럼으로부터의 정보의 추출(예, 어드레스로부터 탑 레벨 도메인 네임 추출, 이메일 어드레스 추출) 등을 포함한다. 일반적으로, 데이터 포매팅 규칙은 임의의 편집 활동에 기초하여 계산될 수 있다. 일부의 경우에, 둘 이상의 입력/출력 예시가 정확한 결과를 생성하는 데 사용될 수 있다. 예를 들면, 기계 학습 휴리스틱은 두 개의 예시를 이용하면 50%만 정확할 수 있고, 세 개의 예시를 사용하는 경우에 95% 정확할 수 있다.
또한, 데이터 포매팅 규칙은 사용자 인터페이스 내의 선택부(예, 아이콘(224))에 기초하여 획득될 수 있고 또는 기타 다른 메뉴 옵션이 선택될 수 있다. 예시 편집은 사용자에 의해 수동으로 선택될 수 있고(예, 사용자가 예시 셀을 선택) 및/또는 예시가 포매팅 매니저(26)에 의해 자동으로 결정될 수 있다. 예를 들어, 포매팅 매니저(26)는 데이터를 찾을 수 있고 데이터로부터 입력/출력 예시를 결정할 수 있다(예, 가장 작은 값을 가진 컬럼이 출력 컬럼으로 간주될 수 있고, 나머지 컬럼이 입력 컬럼으로 간주될 수 있다).
도 3 내지 도 6은 사용자의 편집에 기초하여 셀을 포매팅하는 예를 보여준다.
도 3은 사용자의 편집에 기초하여 데이터 포매팅 규칙을 결정하고 컬럼 내의 다른 셀들에 데이터 포매팅 규칙을 적용하는 것을 도시한다. 도시된 바와 같이, 사용자는 스프레드시트(310)의 Full Name 컬럼(C)에 대해 편집을 하고 있다. 현재 예에서, 사용자는 이름의 첫글자, 다음에 마침표 및 공란, 다음에 성을 타이핑했다. 성은 스프레드시트(310)의 컬럼 A에 포함되고, 이름의 첫글자는 스프레드시트의 컬럼 B에 포함된다. 사용자가 셀(C2 및 C3)에 대한 편집을 하는 것에 응답하여, 데이터 포매팅 규칙이 문서 내의 다른 셀들에 적용될 수 있는 기계 학습 휴리스틱에 의해 생성된다.
현재 예에서, 입력/출력 예시는 C 컬럼의 텍스트 및 편집된 각각의 로우(row)에 대한 A 및 B 컬럼의 텍스트를 포함한다. 입력 데이터는 바람직한 결과를 생성하기 위해 데이터 포매팅 규칙을 적용하는데 사용될 수 있는 데이터를 배치하도록 문서를 스캐닝함으로써 생성될 수 있다. 이러한 경우에, 데이터 포매팅 규칙은 이름의 첫글자를 컬럼 B로부터 그리고 성을 컬럼 A로부터 획득하고, 이와 함께 이름의 첫글자 뒤에 마침표와 공란을 삽입하는 규칙을 생성한다. 출력 범위(312)는 데이터 포매팅 규칙이 적용될 셀을 나타낸다.
스프레드시트(320)를 참조하면, 데이터 포매팅 규칙의 자동 적용이 결과적으로 셀(C3:C6)이 성명(이름의 첫글자, 다음에 마침표 및 공란, 다음에 성을 포함함)으로 채워지도록 한다는 것을 알 수 있다. 셀(C7)은 채워지지 않았는데 왜냐하면 이름 컬럼이 비어 있기 때문에 데이터 포매팅 규칙의 적용이 정확한 결과로 이어지지 않았기 때문이다.
스프레드시트(320)는 또한 데이터 포매팅 규칙의 적용에 의해 이루어진 변경을 수용/거절하는 데 사용될 수 있는 검토 사용자 인터페이스 요소(reviewing user interface element, 322)를 도시한다. 오류 사용자 인터페이스 요소(error user interface element, 324)는 또한 데이터 포매팅 규칙이 적용되지 않은 곳(이 경우에 First 컬럼으로부터 데이터가 손실됨) 또는 데이터 포매팅 규칙의 적용이 정확한 것으로 판정되지 않을 수 있는 곳의 위치 가까이에 배치될 수 있다(도 6 및 검토 사용자 인터페이스와 오류 정정 사용자 인터페이스 요소에 관한 추가적인 논의를 위해 관련 설명을 참조하라).
도 4는 사용자가 사회 보장 번호 컬럼의 아이템에 대한 편집을 하는 것의 예를 도시한다. 사용자는 형식 "XXXXXXXXXX"으로부터 "XXX-XX-XXXXX"으로(여기서, X는 임의의 숫자, 즉 0-9 임) 사회 보장 번호의 포매팅을 변경한다. 다른 예에서, 문자는 비-숫자 문자이다. 일 실시예에 따르면, 사용자가 둘 이상을 편집을 한 후에, 포매팅 매니저에 의해 입력/출력 예시가 사용되어 컬럼의 다른 데이터에 적용되는 데이터 포매팅 규칙을 생성한다. 현재 예시에서, 입력 예시는 셀(A2 및 A3)에 포함되었던 원본 텍스트이고, 출력 예시는 셀(A2 및 A3)에 도시된 편집된 텍스트이다. 입력/출력 예시를 제출하기 전에 더 많거나 더 적은 편집이 수집될 수 있다. 예를 들면, 본 실시예와 일부의 경우에, 정확한 데이터 포매팅 규칙을 생성하는데 하나의 입력/출력 예시로도 충분할 수 있다. 보다 복잡한 편집 시나리오에서는, 보다 많은 입력/출력 예시가 사용될 수 있다. 나아가, 사용자에 의해 이루어진 임의의 추가적인 편집이 데이터 포매팅 규칙을 업데이트하도록 포매팅 매니저에 의해 사용될 수 있다. 셀 A4:A7에 대한 데이터 포매팅 규칙의 적용은 결과적으로 디스플레이(420)에 의해 표현된 스프레드시트를 생성한다. 일 실시예에 따르면, 이미 데이터를 포함하는 셀은 자동으로 변경되지 않는다. 대신에, 사용자는 제안된 변경이 데이터를 포함하는 셀에 대해 이루어지기 전에 그 제안된 변경을 확정적으로 받아들일 것을 요청할 수 있다. 또한 그 셀이 자동으로 변경될 수 있고, 사용자는 변경을 취소할 기회를 제공받을 수 있다.
도 5는 사용자가 날짜의 포매팅을 변경하는 편집을 하는 것을 나타낸다. 사용자는 포맷 "MM/DD/CCYY"에서 "MM/DD/YY"로 스프레드시트(510)의 두 개의 날짜의 포매팅을 변경한다.
현재 예에서, 사용자는 셀 A4 및 A3의 날짜의 포매팅을 변경한다. 입력 예시는 셀 A3 및 A4의 원본 텍스트를 포함하고, 출력 예시는 디스플레이(520)의 셀 A3 및 A4에 도시된 편집된 텍스트를 포함한다. 생성된 데이터 포매팅 규칙의 적용은 결과적으로 디스플레이(520)를 생성한다. 도시된 바와 같이, 편집은 유사하게 포매팅된 데이터 내의 어느 곳에서나 이루어질 수 있고, 데이터 포매팅 규칙의 적용은 도 2 내지 도 4에 도시된 것과 같이 하부방향으로 채우기를 할 수 있을 뿐 아니라 다른 셀(예, 셀 A2)에 적용될 수도 있다.
삭제
도 6은 아이템의 포매팅과 상호작용하는데 사용될 수 있는 사용자 인터페이스 요소를 도시한다. 도시된 바와 같이, 스프레드시트(610)는 검토 사용자 인터페이스 요소(612 및 618) 및 오류 수정 사용자 인터페이스 요소(614 및 616)를 나타낸다.
셀이 일치하지 않는 것 및/또는 정확한 것으로 판정되지 않은 값을 가지는 것으로 플래깅되는 경우에 셀은 오류 수정 사용자 인터페이스 요소로 마킹될 수 있다. 일 실시예에 따르면, 불일치 데이터를 가진 셀은 셀의 값이 데이터 포매팅 값이 생성한 것과 일치하지 않거나 또는 셀 내의 값이 데이터 포매팅 규칙에 의해 생성되었으나 하나 이상의 가능한 결과가 존재한다는 것을 의미한다. 데이터 포매팅 규칙이 결정된 출력 범위에 적용되자마자 일치하지 않는 임의의 결과는 플래깅된다. 일 실시예에 따르면, 가능한 결과의 수가 하나를 초과하거나 그 미만인 경우에(예를 들면, 결과가 없거나 데이터 포매팅 규칙에 의해 제공된 둘 이상의 결과) 또는 사전-존재하는 값이 데이터 포매팅 규칙에 의해 제공된 결과와 일치하지 않는 경우에 불일치 하는 것으로 간주된다. 또한 다른 휴리스틱이 사용될 수 있다. 예를 들어, 결과는 결과의 수가 사전 지정된 결과의 수 및/또는 일부 다른 조건을 초과하는 경우에 불일치 하는 것으로 간주될 수 있다.
오류 수정 사용자 인터페이스 요소가 선택될 수 있다. 선택되는 경우에, 오류 수정 사용자 인터페이스 요소는 다양한 선택가능한 옵션(630)을 디스플레이한다. 일 실시예에 따르면, 선택은 다음 옵션, 이전 옵션, 헬프 옵션, 무시 옵션(ignore option), 수용 옵션, 셀의 편집 옵션, 오류 확인 옵션, 가능한 값 옵션을 포함한다. 다소간의 옵션이 메뉴(630) 내에 포함될 수 있다. 다음 옵션은 오류로 표기된 다음 셀로 이동한다. 이전 옵션은 이전 오류로 이동한다. 헬프 옵션은 헬프 디스플레이를 제공한다. 무시 옵션은 현재 오류를 무시하고 오류 수정 사용자 인터페이스 요소를 디스플레이로부터 제거한다. 수용 옵션은 오류 조건을 제거하고 그 셀이 새로운 데이터 포매팅 규칙을 생성하도록 연관된 입력/출력 예시를 부가한다. 셀의 편집 옵션은 사용자가 셀에 대한 편집 모드로 들어가게 한다. 사용자가 이러한 오류 셀 중 하나 이상을 편집하고 편집이 입력/출력 예시로 취급되는 경우에, 새로운/업데이트 된 데이터 포매팅 규칙이 계산된다. 일 실시예에 따르면, 업데이드된 데이터 포매팅 규칙은 데이터 포매팅 규칙과 관련된 잔여 오류 셀에 적용된다. 오류 확인 옵션은 사용자에게 오류 확인과 관련된 다양한 옵션을 제공한다. 선택되는 경우에 가능한 값 옵션은 재 포매팅 시의 셀에 대한 다른 가능한 값의 목록을 디스플레이한다. 예를 들어, 데이터 포매팅 규칙에 의해 생성되는 각각의 결과가 디스플레이될 수 있다.
검토 사용자 인터페이스 요소(612)는 데이터 포매팅 규칙을 사용하여 포매팅된 셀과 상호작용하기 위한 다양한 옵션을 제시한다. 일 실시예에 따르면, 검토 메뉴(620)는 취소 옵션, 다시 하기 옵션(redo option), 중지 옵션, 검토 옵션, 모두 무시 옵션(ignore all option), 저장 옵션 및 기타 옵션을 포함한다. 더 많거나 더 적은 옵션이 메뉴(620)에 포함될 수 있다. 취소 동작은 문서(예, 데이터 포매팅 규칙이 적용되는 문서의 컬럼)를 데이터 포매팅 규칙을 셀에 적용하기 바로 전의 상태로 되돌린다. 다시 하기 옵션은 사용자에 의해 이전에 취소되었던 셀의 데이터를 복구한다. 정지 옵션은 데이터 포매팅 규칙 적용의 하부방향 자동 채우기의 자동 동작을 비활성화시킨다. 검토 옵션은 활성 셀을 오류 태그를 가진 현재 변환 범위(예, 출력 범위)의 제1 셀이 되도록 설정한다. 모두 무시 옵션은 현재 하부방향으로의 채움 범위 내의 셀로부터 오류 태그와 임의의 관련 오류 포매팅을 제거한다. 저장 옵션은 사용자로 하여금 현재 데이터 포매팅 규칙을 저장하는 것을 가능하게 한다. 저장 옵션은 임의의 입력/출력 예시와 함께, 입력일 수 있는 컬럼(들)과 같은 규칙 관련 정보를 저장한다. 나머지 옵션은 기타 옵션을 제공한다.
도 7은 예시에 의한 채우기를 활성화/비활성화하기 위한 사용자 인터페이스를 도시한다. 디스플레이(700)는 사용자로 하여금 예시에 의한 데이터의 자동 채우기를 켜기/끄기 하는 것을 가능하게 하는 옵션(702)을 포함한다. 또한, 다른 옵션(가령 데이터 포매팅 규칙을 획득하기 전의 바람직한 횟수의 편집/선택, 현재 데이터를 확인하고/확인없이 겹쳐쓰기 할 것인지 등)이 사용자 인터페이스에 포함될 수 있다.
이제 도 8을 참조하면, 예시에 의한 데이터의 포매팅에 대한 실례가 되는 프로세스가 설명될 것이다. 본 명세서에 제시된 루틴에 대한 논의에 의해, 다양한 실시예의 논리적 동작이 (1) 컴퓨터로 구현되는 단계의 시퀀스 또는 컴퓨팅 시스템에서 동작하는 프로그램 모듈로서 및/또는 상호 연결된 기계적 논리 회로 또는 컴퓨팅 시스템 내의 회로 모듈로서 구현된다. 이러한 구현은 본 발명을 구현하는 컴퓨팅 시스템의 성능 요건에 의존하는 선택의 문제이다. 따라서, 도시된 논리적 동작 및 본 명세서에 설명된 실시예를 완성하는 것은 동작, 구조적 장치, 단계 또는 모듈로서 다양하게 지칭된다. 이러한 동작, 구조적 장치, 단계 및 모듈은 소프트웨어, 펌웨어, 전용 디지털 로직 및 이들의 임의의 조합으로 구현될 수 있다.
시작 블록 이후에, 프로세스(800)는 동작(810)으로 이동하고, 여기서 문서 내의 데이터에 대해 이루어진 편집이 검출된다. 이러한 편집은 문서에 대한 임의의 편집일 수 있다. 일 실시예에 따르면, 편집은 동일한 유형의 데이터 및 유사하게 포매팅되는 문서(즉, 스프레드시트, 테이블, 리스트)의 셀 내에 포함되는 데이터에 대한 것이다. 일반적으로, 컬럼 내의 각각의 셀은 동일한 유형의 데이터(즉, 날짜, 주소, 성명, 번호 등)를 포함할 수 있다. 각각의 아이템에 적용되는 편집은 동일한 유형의 아이템을 가진 다른 셀에 적용될 수 있는 패턴에 맞는다.
판정 동작(820)으로 이동하면, 편집의 횟수가 사전 지정된 편집의 수를 초과했는지 그리고 다른 유사하게 포매팅된 셀에 적용될 데이터 포매팅 규칙을 획득하기 위한 프로세스가 시작되었는지 여부에 대한 판정이 이루어진다. 일 실시예에 따르면, 데이터 포매팅 규칙의 획득을 시작하기 위한 편집의 수는 2이다. 시작 포인트(trigger point)는 수동/자동으로 다른 값으로 설정될 수 있다. 예를 들어, 시작 포인트는 문서 내의 다른 유사한 데이터 아이템에 데이터 포매팅 규칙을 적용하는 예측된 정확도에 기초할 수 있다. 일부의 경우에, 시작 포인트가 하나일 수 있으나, 반면에 다른 경우에는 셋 이상일 수 있다.
시작 포인트에 도달하지 않은 경우에, 프로세스는 추가적인 편집이 행해진 것을 검출하기 위한 동작(810)으로 복귀된다.
시작 포인트에 도달한 경우에, 프로세스는 동작(830)으로 이어지고, 여기서 입력/출력 예시가 획득되며 기계 휴리스틱에 제공되어 데이터 포매팅 규칙을 획득한다. 입력/출력 예시는 데이터의 편집에 관련된 이전 상태 및 이후 상태의 데이터에 대한 예시를 제공한다. 예를 들어, 편집이 현재 데이터에 대한 것인 경우에, 입력 예시는 편집 전의 데이터이고 출력 예시는 편집 후의 데이터이다. 편집이 새로운 셀에 대한 것인 경우에, 출력 예시는 그 셀의 편집된 데이터이고, 입력은 출력의 생성에 관련된 데이터(예, 하나 이상의 다른 컬럼의 데이터)이다.
동작(840)으로 이행하여, 데이터 포매팅 규칙이 획득된다. 일 실시예에 따르면, 데이터 포매팅 규칙은 텍스트 입력(예를 들면 하나 이상의 셀로부터)을 수신하고 0 이상의 결과를 생성하는 함수(function)이다. 데이터 포매팅 규칙은 문서 내의 다른 유사한 아이템(예, 컬럼 내의 다른 셀)을 사용자에 의한 편집과 일치하도록 포매팅하기 위한 것이다.
동작(850)으로 이행하여, 출력 범위가 결정된다. 출력 범위는 데이터 포매팅 규칙이 적용될 아이템을 식별한다. 예를 들어, 다른 아이템이 컬럼의 셀 - 여기서 아이템이 사용자에 의해 편집되고, 이 아이템은 데이터 포매팅 규칙의 기초가 됨 -의 전부 또는 일부일 수 있다. 일부의 경우에, 출력 범위는 동일한 아이템 유형(예, 날짜, 숫자, 주소 등)인 컬럼 내의 셀들이다. 다른 예에서, 출력 범위는 서로 인접한 값을 가지며 편집된 셀에 인접한 모든 셀이다.
동작(860)으로 진행하여, 데이터 포매팅 규칙이 결정된 출력 범위의 각각의 아이템에 적용된다. 데이터 포매팅 규칙을 적용함으로써 생성된 임의의 규칙이 문서에 대한 임의의 변경을 행하기 전에 일시적으로 저장될 수 있다.
판정 동작(870)으로 이행하여, 데이터 포매팅 규칙의 적용이 정확한 결과를 생성했는지 여부에 대한 판정이 이루어진다. 일 실시예에 따르면, 아이템에 적용되는 경우에 데이터 포매팅 규칙에 의해 반환되는 결과의 수에 의해 정확도가 추정된다. 아이템에 대한 결과의 수가 제로(0)이면, 데이터 포매팅 규칙은 결과를 생성하기에 충분한 데이터를 가지지 않은 것이다. 결과의 수가 1보다 크면, 결과의 정확도가 의심스러울 수 있다. 결과의 수가 1이면, 결과는 정확한 것이다. 정확한 결과를 가지는 것으로 추정되는 셀의 수/퍼센트가 신뢰 임계값이 초과(예, >70%, 80%, 90%)되는 경우를 결정하는데 사용될 수 있다. 신뢰 레벨이 초과되지 않으면, 프로세스는 보다 많은 편집을 검출하기 위한 동작(810)으로 복귀한다. 일반적으로, 보다 많은 예시가 얻어지면, 결과가 보다 정확하다. 신뢰 레벨이 초과되는 경우에, 프로세스는 동작(880)으로 진행한다.
동작(880)에서, 문서는 각각의 아이템에 데이터 포매팅 규칙을 적용함으로써 생성되는 결과를 이용하여 업데이트된다. 예를 들어, 단일 결과를 가진 셀이 그 결과로 업데이트된다. 상이한 수의 결과를 가진 셀은 전술한 오류 표시자로 마킹될 수 있다. 또한, 사용자로 하여금 데이터 포매팅 규칙의 적용에 관련된 다양한 동작을 수행하는 것을 가능하게 하는 검토 사용자 인터페이스 요소가 디스플레이될 수 있다.
이후에 프로세스가 종료 블록으로 진행하고, 다른 동작을 처리하는 것으로 복귀한다.
전술한 상세한 설명, 예시 및 데이터는 본 발명의 구성의 제조 및 사용에 대한 완전한 설명을 제공한다. 본 발명의 사상 및 범주를 벗어나지 않는 한, 본 발명의 많은 실시예가 만들어질 수 있기 때문에, 본 발명은 이하에 첨부된 청구범위에 의한다.
Claims (11)
- 편집에 기초하여 데이터를 포매팅하기 위한 방법으로서,
문서의 제 1 범위 내의 복수의 아이템들에 대해 편집이 행해졌는지 여부를 판정하는 단계 - 상기 제 1 범위 내의 상기 복수의 아이템들은 유사 포매팅에 의해 연관되고, 상기 편집은 데이터 포매팅의 적용의 입력 예시를 제공하고, 상기 제 1 범위는 제 1 컬럼에 위치함 - 와,
상기 문서 내의 상기 복수의 아이템들에 대해 편집이 행해졌고 상기 편집이 데이터 포매팅의 적용의 입력 예시를 제공한다고 판정한 것에 응답하여,
상기 문서의 제 2 범위 내의 유사 데이터 포매팅을 갖는 다른 아이템에 대하여 적용하기 위한 데이터 포매팅 규칙을 상기 입력 예시에 기초하여 생성하는 단계와,
상기 데이터 포매팅 규칙을, 상기 문서의 상기 제 2 범위 내의 상기 유사 데이터 포매팅을 갖는 다른 아이템에 자동으로 적용하는 단계 - 상기 제 1 범위가 상기 제 1 컬럼에 위치할 경우, 상기 제 2 범위는 상기 제 1 컬럼으로부터 적어도 하나의 컬럼만큼 오프셋된 제 2 컬럼 내에 위치함 - 와,
상기 데이터 포매팅 규칙의 적용을 반영해서 상기 다른 아이템을 디스플레이하는 단계를 포함하는
데이터 포매팅 방법.
- 제1항에 있어서,
상기 데이터 포매팅 규칙을 생성하는 단계는, 상기 편집 각각과 관련된 정보를 상기 데이터 포매팅 규칙을 생성하는 기계 학습 휴리스틱으로 제출하는 단계를 포함하는
데이터 포매팅 방법.
- 제1항에 있어서,
상기 문서는 스프레드시트 문서이고, 상기 편집은 상기 스프레드 시트의 동일한 컬럼(column) 내의 상이한 셀에 대해 행해지는
데이터 포매팅 방법.
- 제1항에 있어서,
상기 데이터 포매팅 규칙에 의해 포매팅되는 상기 다른 아이템 중 적어도 하나에 이웃해서 그래픽 사용자 인터페이스를 디스플레이하는 단계를 더 포함하고,
상기 그래픽 사용자 인터페이스는, 선택되면 상기 포매팅된 아이템과 관련된 동작을 수행하는 옵션을 제공하는
데이터 포매팅 방법.
- 제4항에 있어서,
상기 그래픽 사용자 인터페이스를 디스플레이하는 단계는 상기 포매팅의 취소, 상기 포매팅의 다시 하기, 상기 포매팅의 중지, 잠재적 에러 검토 및 에러 무시를 행하는 옵션들을 포함하는 메뉴를 디스플레이하는 것을 포함하는
데이터 포매팅 방법.
- 제1항에 있어서,
신뢰 레벨(confidence level)이 사전 지정된 임계값보다 낮은 경우에는, 상기 포매팅된 아이템과 함께 표시자를 디스플레이하는 단계를 더 포함하는
데이터 포매팅 방법.
- 제1항에 있어서,
상기 복수의 아이템들에 대해 상기 편집이 행해졌는지 여부를 판정하는 단계는, 상기 제 1 컬럼이 상기 제 2 컬럼에도 포함되는 값을 갖는 데이터를 포함하는지 여부를 판정하는 것을 포함하는
데이터 포매팅 방법.
- 제1항에 있어서,
상기 데이터 포매팅 규칙을 나중에 사용하기 위해 저장하도록 허용하는 사용자 인터페이스 요소를 디스플레이하는 단계
를 더 포함하는 데이터 포매팅 방법.
- 예시(examples)에 기초하여 데이터를 포매팅하기 위한 컴퓨터-실행가능 명령어가 저장된 컴퓨터-판독가능 저장 매체로서,
상기 명령어는,
스프레드시트 문서의 출력 범위 내의 제 1 복수의 아이템들로부터 출력 예시를 판정하는 명령어 - 상기 출력 범위는 컬럼이고, 상기 제 1 복수의 아이템들 중 각각의 아이템은 출력 데이터를 포함함 - 와,
상기 스프레드시트 문서의 입력 범위 내의 제 2 복수의 아이템들로부터 입력 예시를 판정하는 명령어 - 상기 입력 범위는 상기 출력 범위를 포함하지 않고, 상기 제 2 복수의 아이템들 중 각각의 아이템은 입력 데이터를 포함하고, 상기 입력 예시는 데이터 포매팅의 적용에 관한 관련성(relationship)을 공유하는 상기 출력 데이터와 상기 입력 데이터에 기초하여 결정됨 - 와,
상기 출력 예시와 상기 입력 예시 사이의 상기 관련성에 기초하여 데이터 포매팅 규칙을 자동으로 생성하는 명령어와,
상기 스프레드시트 문서의 상기 출력 범위 내의 다른 아이템으로서 상기 데이터 포매팅 규칙을 적용하기 이전의 데이터를 포함하지 않는 다른 아이템에 대해 상기 데이터 포매팅 규칙을 자동으로 적용하는 명령어 - 상기 데이터 포매팅 규칙은 입력 범위로부터 상기 입력 데이터를 선택하고 상기 입력 데이터를 상기 관련성에 따라 포매팅하여 상기 다른 아이템에 포함되는 포매팅된 데이터를 생성함 - 와,
상기 데이터 포매팅 규칙의 적용을 반영해서 상기 다른 아이템을 디스플레이하는 명령어
를 포함하는
컴퓨터-판독가능 저장 매체.
- 편집에 기초하여 데이터를 포매팅하는 시스템으로서,
네트워크에 연결하도록 구성되는 네트워크 연결(netwerok connection)과,
프로세서, 메모리 및 컴퓨터-판독가능 저장 매체와,
상기 컴퓨터-판독가능 저장 매체에 저장되고 상기 프로세서에서 실행되는 운영 환경(operating environment)과,
디스플레이와,
스프레드시트 애플리케이션과,
상기 스프레드시트 애플리케이션에 의해 제공되는 스프레드시트 - 상기 스프레드시트는 로우 및 컬럼에 배열되는 아이템을 포함함 - 와,
동작을 수행하도록 구성되며 상기 스프레드시트 애플리케이션과 함께 작동하는 포매팅 매니저를 포함하고,
상기 동작은,
제 1 컬럼 또는 제 1 로우 중 하나를 포함하는 상기 스프레드시트의 제 1 범위 내의 제 1 복수의 아이템들에 대해 편집이 행해졌는지 여부를 판정하는 동작 - 상기 제 1 복수의 아이템들 중 각각의 아이템은 데이터를 포함하고, 상기 편집은 상기 제 1 복수의 아이템들의 데이터에 적용되는 데이터 포매팅 규칙의 입력 예시를 제공함 - 과,
상기 제 1 복수의 아이템들과 동일한 데이터 타입을 갖는 다른 데이터를 포함하는 상기 스프레드시트의 제 2 범위 내의 제 2 복수의 아이템들에 대해 상기 데이터 포매팅 규칙을 자동으로 적용하는 동작 - 상기 제 1 범위가 상기 제 1 컬럼을 포함할 경우 상기 제 2 범위는 적어도 하나의 컬럼만큼 상기 제 1 컬럼으로부터 오프셋된 하나 이상의 컬럼을 포함하고, 상기 제 1 범위가 상기 제 1 로우를 포함할 경우 상기 제 2 범위는 적어도 하나의 로우만큼 상기 제 1 로우로부터 오프셋된 하나 이상의 로우를 포함하고, 상기 데이터 포매팅 규칙의 적용은 상기 제 2 복수의 아이템 내에 포함된 상기 다른 데이터를 상기 제 1 복수의 아이템들에 대해 행해진 상기 편집에 의해 정의되는 포맷으로 포매팅하는 것임 - 과,
상기 데이터 포매팅 규칙의 적용을 반영해서 상기 제 2 복수의 아이템들을 상기 디스플레이 상에 디스플레이하는 동작
을 포함하는,
데이터 포매팅 시스템.
- 제10항에 있어서,
상기 동작은, 신뢰 레벨이 사전 지정된 임계값보다 작은 경우에는, 사용자 인터페이스 요소를 상기 제 1 범위에 디스플레이하는 동작을 더 포함하는
데이터 포매팅 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/014,520 | 2011-01-26 | ||
US13/014,520 US10409892B2 (en) | 2011-01-26 | 2011-01-26 | Formatting data by example |
PCT/US2012/022454 WO2012103159A2 (en) | 2011-01-26 | 2012-01-24 | Formatting data by example |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140009297A KR20140009297A (ko) | 2014-01-22 |
KR101999409B1 true KR101999409B1 (ko) | 2019-07-11 |
Family
ID=46526787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137019749A KR101999409B1 (ko) | 2011-01-26 | 2012-01-24 | 예시에 의한 데이터 포매팅 기법 |
Country Status (20)
Country | Link |
---|---|
US (1) | US10409892B2 (ko) |
EP (1) | EP2668594B1 (ko) |
JP (1) | JP6033235B2 (ko) |
KR (1) | KR101999409B1 (ko) |
CN (1) | CN102609403B (ko) |
AR (1) | AR085036A1 (ko) |
AU (1) | AU2012209157B2 (ko) |
BR (1) | BR112013018693A2 (ko) |
CA (1) | CA2824922C (ko) |
CL (1) | CL2013002093A1 (ko) |
CO (1) | CO6731131A2 (ko) |
HK (1) | HK1173816A1 (ko) |
IL (1) | IL227218A (ko) |
MX (1) | MX346269B (ko) |
MY (1) | MY165937A (ko) |
RU (1) | RU2602786C2 (ko) |
SG (2) | SG191850A1 (ko) |
TW (1) | TWI582616B (ko) |
WO (1) | WO2012103159A2 (ko) |
ZA (1) | ZA201304847B (ko) |
Families Citing this family (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9213682B1 (en) * | 2011-03-31 | 2015-12-15 | Bank Of America Corporation | Method and apparatus for auditing a business document |
US20140046923A1 (en) | 2012-08-10 | 2014-02-13 | Microsoft Corporation | Generating queries based upon data points in a spreadsheet application |
US10366335B2 (en) | 2012-08-31 | 2019-07-30 | DataRobot, Inc. | Systems and methods for symbolic analysis |
US11361246B2 (en) * | 2012-08-31 | 2022-06-14 | DataRobot, Inc. | Methods for automating aspects of machine learning, and related systems and apparatus |
US9524473B2 (en) | 2012-08-31 | 2016-12-20 | Nutonian, Inc. | System and method for auto-query generation |
US9002758B2 (en) * | 2012-10-17 | 2015-04-07 | Microsoft Technology Licensing, Llc | Ranking for inductive synthesis of string transformations |
US10140269B2 (en) * | 2013-03-12 | 2018-11-27 | Microsoft Technology Licensing, Llc | Viewing effects of proposed change in document before committing change |
CN104239283A (zh) * | 2013-06-13 | 2014-12-24 | 富泰华工业(深圳)有限公司 | 文字编辑系统及方法 |
US10229101B2 (en) | 2013-06-14 | 2019-03-12 | Microsoft Technology Licensing, Llc | Smart fill |
US10019432B2 (en) | 2013-06-15 | 2018-07-10 | Microsoft Technology Licensing, Llc | Conversion of data ranges to table objects |
US10496927B2 (en) | 2014-05-23 | 2019-12-03 | DataRobot, Inc. | Systems for time-series predictive data analytics, and related methods and apparatus |
US10366346B2 (en) | 2014-05-23 | 2019-07-30 | DataRobot, Inc. | Systems and techniques for determining the predictive value of a feature |
US10558924B2 (en) | 2014-05-23 | 2020-02-11 | DataRobot, Inc. | Systems for second-order predictive data analytics, and related methods and apparatus |
DE112015002433T5 (de) | 2014-05-23 | 2017-03-23 | Datarobot | Systeme und Techniken zur prädikativen Datenanalytik |
US10824799B2 (en) | 2014-06-30 | 2020-11-03 | Microsoft Technology Licensing, Llc | Summary data autofill |
US10191895B2 (en) * | 2014-11-03 | 2019-01-29 | Adobe Systems Incorporated | Adaptive modification of content presented in electronic forms |
US10685173B2 (en) | 2015-08-17 | 2020-06-16 | International Business Machines Corporation | Formatting tables with complex patterns |
US20170139893A1 (en) * | 2015-11-12 | 2017-05-18 | SmartSheet.com, Inc. | Automatically adjusting spreadsheet formulas and/or formatting |
CN113536731A (zh) * | 2015-12-29 | 2021-10-22 | 微软技术许可有限责任公司 | 用于格式化文档对象的方法、设备和介质 |
US9864732B2 (en) * | 2016-05-02 | 2018-01-09 | Google Inc. | User interfaces that facilitate management of formatting of digital content |
US10621195B2 (en) * | 2016-09-20 | 2020-04-14 | Microsoft Technology Licensing, Llc | Facilitating data transformations |
US10706066B2 (en) | 2016-10-17 | 2020-07-07 | Microsoft Technology Licensing, Llc | Extensible data transformations |
US11892987B2 (en) | 2016-10-20 | 2024-02-06 | Microsoft Technology Licensing, Llc | Automatic splitting of a column into multiple columns |
US11256710B2 (en) | 2016-10-20 | 2022-02-22 | Microsoft Technology Licensing, Llc | String transformation sub-program suggestion |
US11620304B2 (en) * | 2016-10-20 | 2023-04-04 | Microsoft Technology Licensing, Llc | Example management for string transformation |
US10776380B2 (en) | 2016-10-21 | 2020-09-15 | Microsoft Technology Licensing, Llc | Efficient transformation program generation |
US10846298B2 (en) | 2016-10-28 | 2020-11-24 | Microsoft Technology Licensing, Llc | Record profiling for dataset sampling |
US11170020B2 (en) | 2016-11-04 | 2021-11-09 | Microsoft Technology Licensing, Llc | Collecting and annotating transformation tools for use in generating transformation programs |
US11163788B2 (en) | 2016-11-04 | 2021-11-02 | Microsoft Technology Licensing, Llc | Generating and ranking transformation programs |
US20180143957A1 (en) * | 2016-11-18 | 2018-05-24 | Business Objects Software Limited | Using format patterns for numeric formatting |
US10387900B2 (en) | 2017-04-17 | 2019-08-20 | DataRobot, Inc. | Methods and apparatus for self-adaptive time series forecasting engine |
US11354494B2 (en) | 2017-07-10 | 2022-06-07 | Adaptam Inc. | Methods and systems for connecting a spreadsheet to external data sources with formulaic specification of data retrieval |
US11080462B2 (en) * | 2017-11-13 | 2021-08-03 | Workshare Ltd. | Method of comparing two data tables and displaying the results without source formatting |
US10241992B1 (en) * | 2018-04-27 | 2019-03-26 | Open Text Sa Ulc | Table item information extraction with continuous machine learning through local and global models |
US10977433B2 (en) * | 2018-10-09 | 2021-04-13 | Oracle International Corporation | System and method for input data validation and conversion |
US20200160303A1 (en) * | 2018-11-19 | 2020-05-21 | Rylti, LLC | Method and system for audit, verification, and settlement of royalty and license fees in the music industry |
US20220198126A1 (en) * | 2019-04-17 | 2022-06-23 | Kyocera Document Solutions Inc. | Display device and display control method |
WO2021051047A1 (en) | 2019-09-14 | 2021-03-18 | Bytedance Inc. | Chroma quantization parameter in video coding |
CN114651442A (zh) | 2019-10-09 | 2022-06-21 | 字节跳动有限公司 | 视频编解码中的跨分量适应性回路滤波 |
KR20220073746A (ko) * | 2019-10-14 | 2022-06-03 | 바이트댄스 아이엔씨 | 비디오 처리에서 크로마 양자화 파라미터 사용 |
CN114788279A (zh) | 2019-12-09 | 2022-07-22 | 字节跳动有限公司 | 视频编解码中使用的量化组 |
WO2021138293A1 (en) | 2019-12-31 | 2021-07-08 | Bytedance Inc. | Adaptive color transform in video coding |
US11074048B1 (en) | 2020-04-28 | 2021-07-27 | Microsoft Technology Licensing, Llc | Autosynthesized sublanguage snippet presentation |
US11327728B2 (en) | 2020-05-07 | 2022-05-10 | Microsoft Technology Licensing, Llc | Source code text replacement by example |
CN112784560A (zh) * | 2020-05-26 | 2021-05-11 | 珠海金山办公软件有限公司 | 一种数据显示方法及装置 |
US11481195B2 (en) | 2020-06-09 | 2022-10-25 | Google Llc | Synthesizing programs in a spreadsheet programming language |
US11836444B2 (en) | 2020-06-26 | 2023-12-05 | Adaptam Inc. | Methods and systems for constructing a complex formula in a spreadsheet cell |
US11900080B2 (en) | 2020-07-09 | 2024-02-13 | Microsoft Technology Licensing, Llc | Software development autocreated suggestion provenance |
CN112908392B (zh) * | 2021-02-09 | 2023-09-15 | 东芯半导体股份有限公司 | 控制非易失性存储器参数的控制方法 |
US11941372B2 (en) | 2021-04-01 | 2024-03-26 | Microsoft Technology Licensing, Llc | Edit automation using an anchor target list |
US11875136B2 (en) | 2021-04-01 | 2024-01-16 | Microsoft Technology Licensing, Llc | Edit automation using a temporal edit pattern |
US11977835B2 (en) | 2021-05-24 | 2024-05-07 | Adaptam Inc. | Method and system for spreadsheet error identification and avoidance |
US11900054B1 (en) | 2022-08-29 | 2024-02-13 | Bank Of America Corporation | Platform for generating published reports using report and worksheet building with position mapping identification |
US11663399B1 (en) | 2022-08-29 | 2023-05-30 | Bank Of America Corporation | Platform for generating published reports with position mapping identification and template carryover reporting |
Family Cites Families (71)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2439683A (en) * | 1946-09-14 | 1948-04-13 | Ernest N Broderick | Sanitary receptacle and supporter |
US5231577A (en) * | 1990-04-06 | 1993-07-27 | Microsoft Corporation | Method and system for processing formatting information in a spreadsheet |
US5701499A (en) | 1992-03-25 | 1997-12-23 | Microsoft Corporation | Method and system for automatically entering a data series into contiguous cells of an electronic spreadsheet program or the like |
US5613131A (en) * | 1993-01-29 | 1997-03-18 | Microsoft Corporation | Auto-formatting of tables in a spreadsheet program |
US5621875A (en) * | 1993-10-26 | 1997-04-15 | Microsoft Corp. | Method and system for automatic formatting of user selected text |
US5598519A (en) * | 1994-11-08 | 1997-01-28 | Microsoft Corporation | Method and system for direct cell formatting in a spreadsheet |
US5778402A (en) * | 1995-06-07 | 1998-07-07 | Microsoft Corporation | Method and system for auto-formatting a document using an event-based rule engine to format a document as the user types |
US5805158A (en) | 1996-08-22 | 1998-09-08 | International Business Machines Corporation | Copying predicted input between computer systems |
US6038567A (en) * | 1998-02-19 | 2000-03-14 | Microsoft Corporation | Method and system for propagating object properties in a desktop publishing program |
US6731309B1 (en) | 1998-08-28 | 2004-05-04 | Corel Corporation | Real time preview |
US6640234B1 (en) | 1998-12-31 | 2003-10-28 | Microsoft Corporation | Extension of formulas and formatting in an electronic spreadsheet |
US7069508B1 (en) * | 2000-07-13 | 2006-06-27 | Language Technologies, Inc. | System and method for formatting text according to linguistic, visual and psychological variables |
TW498221B (en) | 1999-08-20 | 2002-08-11 | Ibm | Method and system in an electronic spreadsheet for introducing new elements in a cell named range according to different modes |
EP1094402A1 (en) | 1999-10-20 | 2001-04-25 | Sun Microsystems, Inc. | Automatic document formatting method |
JP4091726B2 (ja) | 2000-02-23 | 2008-05-28 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 構造化文書の表示規則の生成方法、システムおよびプログラムが記録された媒体ならびに構造化文書およびその文書型定義の変更方法、システムおよびプログラムが記録された媒体 |
US6981028B1 (en) | 2000-04-28 | 2005-12-27 | Obongo, Inc. | Method and system of implementing recorded data for automating internet interactions |
EP1202206A3 (en) * | 2000-10-24 | 2004-01-21 | International Business Machines Corporation | Method and system in an electronic spreadsheet for persistently self-replicating multiple ranges of cells through a copy-paste operation |
TW518509B (en) | 2000-11-28 | 2003-01-21 | Ibm | Method and system in an electronic spreadsheet for persistently filling by samples a range of cells |
US20020156816A1 (en) | 2001-02-13 | 2002-10-24 | Mark Kantrowitz | Method and apparatus for learning from user self-corrections, revisions and modifications |
US6968504B2 (en) * | 2001-06-29 | 2005-11-22 | Microsoft Corporation | Automated document formatting tool |
US7089298B2 (en) | 2001-08-20 | 2006-08-08 | Nokia Corporation | Naming distribution method for ad hoc networks |
US7343551B1 (en) | 2002-11-27 | 2008-03-11 | Adobe Systems Incorporated | Autocompleting form fields based on previously entered values |
US7305129B2 (en) | 2003-01-29 | 2007-12-04 | Microsoft Corporation | Methods and apparatus for populating electronic forms from scanned documents |
US7426496B2 (en) | 2004-03-03 | 2008-09-16 | Microsoft Corporation | Assisted form filling |
US7350187B1 (en) | 2003-04-30 | 2008-03-25 | Google Inc. | System and methods for automatically creating lists |
US7660779B2 (en) | 2004-05-12 | 2010-02-09 | Microsoft Corporation | Intelligent autofill |
US7584422B2 (en) | 2004-07-12 | 2009-09-01 | Informatica Corporation | System and method for data format transformation |
US7707486B2 (en) | 2004-08-06 | 2010-04-27 | The Board Of Trustees Of The Leland Stanford Junior University | Logical spreadsheets |
US7933862B2 (en) | 2004-09-27 | 2011-04-26 | Microsoft Corporation | One click conditional formatting method and system for software programs |
US8745483B2 (en) | 2004-10-07 | 2014-06-03 | International Business Machines Corporation | Methods, systems and computer program products for facilitating visualization of interrelationships in a spreadsheet |
US7451397B2 (en) | 2004-12-15 | 2008-11-11 | Microsoft Corporation | System and method for automatically completing spreadsheet formulas |
US8621340B2 (en) * | 2004-12-20 | 2013-12-31 | Microsoft Corporation | Block properties and calculated columns in a spreadsheet application |
KR20070024771A (ko) | 2005-08-30 | 2007-03-08 | 엔에이치엔(주) | 질의어 자동변환을 이용한 자동완성 질의어 제공 시스템 및방법 |
US7792814B2 (en) | 2005-09-30 | 2010-09-07 | Sap, Ag | Apparatus and method for parsing unstructured data |
US7627812B2 (en) * | 2005-10-27 | 2009-12-01 | Microsoft Corporation | Variable formatting of cells |
US7640158B2 (en) | 2005-11-08 | 2009-12-29 | Multimodal Technologies, Inc. | Automatic detection and application of editing patterns in draft documents |
US7590608B2 (en) | 2005-12-02 | 2009-09-15 | Microsoft Corporation | Electronic mail data cleaning |
US7634717B2 (en) | 2006-01-23 | 2009-12-15 | Microsoft Corporation | Multiple conditional formatting |
US7770100B2 (en) | 2006-02-27 | 2010-08-03 | Microsoft Corporation | Dynamic thresholds for conditional formats |
US7689904B2 (en) | 2006-03-06 | 2010-03-30 | Sap Ag | Template-based creation of electronic document |
US20070220415A1 (en) | 2006-03-16 | 2007-09-20 | Morgan Mao Cheng | Excel spreadsheet parsing to share cells, formulas, tables or entire spreadsheets across an enterprise with other users |
US10345922B2 (en) | 2006-04-21 | 2019-07-09 | International Business Machines Corporation | Office system prediction configuration sharing |
US8600916B2 (en) | 2006-04-21 | 2013-12-03 | International Business Machines Corporation | Office system content prediction based on regular expression pattern analysis |
US8005806B2 (en) | 2006-11-15 | 2011-08-23 | Yahoo! Inc. | System and method for information retrieval using context information |
CN101105814A (zh) | 2007-09-11 | 2008-01-16 | 金蝶软件(中国)有限公司 | 一种将Script语言转换成SQL语言的方法及装置 |
US20090089653A1 (en) | 2007-09-28 | 2009-04-02 | Microsoft Corporation | Auto-generation and syndication of tables as forms |
US8640024B2 (en) * | 2007-10-30 | 2014-01-28 | Adobe Systems Incorporated | Visually distinct text formatting |
CN101158900B (zh) | 2007-11-19 | 2010-09-08 | 北京大学 | 一种基于模板系列的报表生成系统及方法 |
US20090228776A1 (en) | 2008-03-05 | 2009-09-10 | Microsoft Corporation | Dynamic formulas for spreadsheet cells |
US20090319542A1 (en) | 2008-06-19 | 2009-12-24 | Pierre Jean Le Brazidec | Systems and methods to automatically replace content in a range of spreadsheet cells with information from a database |
US9032283B2 (en) * | 2008-09-29 | 2015-05-12 | Apple Inc. | Rendering common cell formatting for adjacent cells |
US8255789B2 (en) * | 2008-09-30 | 2012-08-28 | Apple Inc. | Providing spreadsheet features |
US8150814B2 (en) | 2009-04-07 | 2012-04-03 | Business Objects Software Ltd. | System and method of data cleansing using rule based formatting |
US20100325173A1 (en) | 2009-06-23 | 2010-12-23 | The Board Of Regents Of The The University Of Texas System | Rapid development of informatics systems for collaborative data management |
US8386406B2 (en) | 2009-07-08 | 2013-02-26 | Ebay Inc. | Systems and methods for making contextual recommendations |
US20110066933A1 (en) | 2009-09-02 | 2011-03-17 | Ludwig Lester F | Value-driven visualization primitives for spreadsheets, tabular data, and advanced spreadsheet visualization |
CN101661512B (zh) | 2009-09-25 | 2012-01-11 | 万斌 | 一种识别传统表单信息并创建对应Web表单的系统及方法 |
US8140533B1 (en) | 2010-01-26 | 2012-03-20 | Google Inc. | Harvesting relational tables from lists on the web |
US9489366B2 (en) | 2010-02-19 | 2016-11-08 | Microsoft Technology Licensing, Llc | Interactive synchronization of web data and spreadsheets |
US20110320231A1 (en) | 2010-06-23 | 2011-12-29 | Canadian National Railway Company | Method and system for enabling a user to bid on a work assignment |
US8510373B2 (en) | 2010-08-30 | 2013-08-13 | Sap Ag | Data synchronization and disablement of dependent data fields |
EP2506155A1 (en) | 2011-03-30 | 2012-10-03 | Siemens Aktiengesellschaft | Auto-fill functionality within engineering software for automation systems |
US8645825B1 (en) | 2011-08-31 | 2014-02-04 | Google Inc. | Providing autocomplete suggestions |
US20130124957A1 (en) | 2011-11-11 | 2013-05-16 | Microsoft Corporation | Structured modeling of data in a spreadsheet |
US8799760B2 (en) | 2011-12-08 | 2014-08-05 | Xerox Corporation | Smart macros using zone selection information and pattern discovery |
US20130191714A1 (en) | 2012-01-25 | 2013-07-25 | Microsoft Corporation | Fill by example animation and visuals |
US20130227031A1 (en) | 2012-02-24 | 2013-08-29 | Research In Motion Limited | Retrieval and presentation of contact data at an electronic device |
US8819574B2 (en) | 2012-10-22 | 2014-08-26 | Google Inc. | Space prediction for text input |
US9244977B2 (en) | 2012-12-31 | 2016-01-26 | Google Inc. | Using content identification as context for search |
US10229101B2 (en) | 2013-06-14 | 2019-03-12 | Microsoft Technology Licensing, Llc | Smart fill |
US9652446B2 (en) * | 2014-08-22 | 2017-05-16 | Smartsheet Inc. | Automatically adjusting spreadsheet formulas and/or formatting |
-
2011
- 2011-01-26 US US13/014,520 patent/US10409892B2/en active Active
- 2011-12-29 TW TW100149580A patent/TWI582616B/zh not_active IP Right Cessation
-
2012
- 2012-01-20 CN CN201210019215.9A patent/CN102609403B/zh active Active
- 2012-01-24 SG SG2013051768A patent/SG191850A1/en unknown
- 2012-01-24 BR BR112013018693A patent/BR112013018693A2/pt not_active IP Right Cessation
- 2012-01-24 CA CA2824922A patent/CA2824922C/en not_active Expired - Fee Related
- 2012-01-24 RU RU2013135003/08A patent/RU2602786C2/ru not_active IP Right Cessation
- 2012-01-24 WO PCT/US2012/022454 patent/WO2012103159A2/en active Application Filing
- 2012-01-24 MY MYPI2013701301A patent/MY165937A/en unknown
- 2012-01-24 KR KR1020137019749A patent/KR101999409B1/ko active IP Right Grant
- 2012-01-24 JP JP2013551298A patent/JP6033235B2/ja active Active
- 2012-01-24 SG SG10201510611UA patent/SG10201510611UA/en unknown
- 2012-01-24 EP EP12739249.6A patent/EP2668594B1/en active Active
- 2012-01-24 MX MX2013008441A patent/MX346269B/es active IP Right Grant
- 2012-01-24 AU AU2012209157A patent/AU2012209157B2/en not_active Ceased
- 2012-01-25 AR ARP120100249A patent/AR085036A1/es not_active Application Discontinuation
-
2013
- 2013-01-23 HK HK13101016.3A patent/HK1173816A1/xx not_active IP Right Cessation
- 2013-06-27 IL IL227218A patent/IL227218A/en active IP Right Grant
- 2013-06-28 ZA ZA2013/04847A patent/ZA201304847B/en unknown
- 2013-07-22 CL CL2013002093A patent/CL2013002093A1/es unknown
- 2013-07-25 CO CO13176231A patent/CO6731131A2/es active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
EP2668594A2 (en) | 2013-12-04 |
US10409892B2 (en) | 2019-09-10 |
TW201232294A (en) | 2012-08-01 |
JP6033235B2 (ja) | 2016-11-30 |
US20120192051A1 (en) | 2012-07-26 |
TWI582616B (zh) | 2017-05-11 |
AR085036A1 (es) | 2013-08-07 |
MY165937A (en) | 2018-05-18 |
CN102609403A (zh) | 2012-07-25 |
CO6731131A2 (es) | 2013-08-15 |
HK1173816A1 (en) | 2013-05-24 |
MX346269B (es) | 2017-03-13 |
SG191850A1 (en) | 2013-08-30 |
BR112013018693A2 (pt) | 2016-10-18 |
CL2013002093A1 (es) | 2013-12-13 |
RU2602786C2 (ru) | 2016-11-20 |
EP2668594B1 (en) | 2021-07-07 |
WO2012103159A2 (en) | 2012-08-02 |
ZA201304847B (en) | 2014-09-25 |
EP2668594A4 (en) | 2018-01-24 |
SG10201510611UA (en) | 2016-01-28 |
AU2012209157A1 (en) | 2013-07-25 |
CN102609403B (zh) | 2015-05-20 |
AU2012209157B2 (en) | 2016-07-21 |
WO2012103159A3 (en) | 2012-09-20 |
JP2014507029A (ja) | 2014-03-20 |
MX2013008441A (es) | 2013-08-12 |
IL227218A (en) | 2016-07-31 |
KR20140009297A (ko) | 2014-01-22 |
CA2824922C (en) | 2019-02-19 |
CA2824922A1 (en) | 2012-08-02 |
RU2013135003A (ru) | 2015-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101999409B1 (ko) | 예시에 의한 데이터 포매팅 기법 | |
US7904418B2 (en) | On-demand incremental update of data structures using edit list | |
CN108762743B (zh) | 一种数据表操作代码生成方法及装置 | |
CN111581920A (zh) | 文档转换方法、装置、设备及计算机存储介质 | |
CN113448862B (zh) | 软件版本测试方法、装置及计算机设备 | |
CN107357588B (zh) | 目标代码生成方法及装置 | |
CN111818175A (zh) | 企业服务总线配置文件生成方法、装置、设备和存储介质 | |
JP2016143134A (ja) | 関連情報提供方法、関連情報提供装置及び関連情報提供プログラム | |
CN114072787A (zh) | 用于促进文档审核的快速数据输入的系统和方法 | |
CN111104382A (zh) | 文件默认命名方法、装置和电子设备 | |
CN107506474B (zh) | 基于对象映射的数据库操作方法及装置 | |
CN110058849A (zh) | 流程图的生成方法、装置、计算机设备以及存储介质 | |
CN115269548A (zh) | 一种数据仓库开发模型的生成方法、系统及相关设备 | |
CN113626409B (zh) | 一种测试资料处理方法、装置、设备及存储介质 | |
NZ711979B2 (en) | Formatting data by example | |
NZ711979A (en) | Formatting data by example | |
WO2021084763A1 (ja) | 管理装置、管理方法及び管理プログラム | |
CN117493718A (zh) | 一种页面生成方法、装置、电子设备及介质 | |
CN115774546A (zh) | 接口代码生成方法和装置 | |
US20200265189A1 (en) | Method, apparatus and computer program product for document change management in original and tailored documents | |
CN115686479A (zh) | 一种文件的创建方法和相关装置 | |
CN116560646A (zh) | 基础软件搭建方法、装置、电子设备及存储介质 | |
CN117217198A (zh) | 流程图处理方法、装置、设备、存储介质及程序产品 | |
CN116070716A (zh) | 模型校验的实现方法、装置及服务器 | |
CN116108781A (zh) | 一种co-lay零件检查方法、装置、设备、介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right |