KR20100059825A - 분석용 디스플레이 문서 준비 장치 - Google Patents
분석용 디스플레이 문서 준비 장치 Download PDFInfo
- Publication number
- KR20100059825A KR20100059825A KR1020107004550A KR20107004550A KR20100059825A KR 20100059825 A KR20100059825 A KR 20100059825A KR 1020107004550 A KR1020107004550 A KR 1020107004550A KR 20107004550 A KR20107004550 A KR 20107004550A KR 20100059825 A KR20100059825 A KR 20100059825A
- Authority
- KR
- South Korea
- Prior art keywords
- order
- text
- analysis
- character data
- logical order
- 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/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
- G06F40/129—Handling non-Latin characters, e.g. kana-to-kanji conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/53—Processing of non-Latin text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/263—Language identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/454—Multi-language systems; Localisation; Internationalisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
Abstract
본 발명은 분석용 디스플레이 문서를 준비하는 장치에 관한 것으로, 이 장치는 디스플레이 문서로부터 문자 데이터를 추출하는 추출기와, 문자 데이터의 프로세싱과 관련된 제 1 순서 및 문자 데이터의 논리적 순서와 관련된 제 2 순서를 결정하고, 제 1 순서가 제 2 순서와 상이한지 여부를 결정하는 순서 식별자와, 제 1 순서가 제 2 순서와 상이하다는 순서 식별자의 결정에 응답하여 문자 데이터를 반전시키는 반전 구성요소를 포함한다.
Description
본 발명은 분석용 디스플레이 문서를 준비하는 장치에 관한 것이다.
문서(예로서, PDF 파일)와 관련된 텍스트가 텍스트 분석 수행에 앞서 문서로부터 추출된다.
텍스트 분석이 수행되기 전에 추출된 텍스트가 논리적(즉, 판독) 순서인 것이 바람직하다.
일부 문서 포맷은, 특히 디스플레이를 목적으로 하는(예컨대, PDF) 문서 포맷은, 해당 텍스트와 관련된 언어가 LtR 논리적 순서를 갖는지(예로서, 영어) 또는 RtL(right-to-left) 논리적 순서를 갖는지(예로서, 아랍어)의 여부와 무관하게 텍스트를 LtR(left-to-right) 순서로 디스플레이한다.
만약 텍스트가 RtL 논리적 순서와 관련되고 해당 문서가 LtR 순서로 디스플레이된다면, 현재의 텍스트 추출 툴은 텍스트를 디스플레이된 순서로 추출한다(예컨대, LtR 순서). 따라서, 추출된 텍스트는 텍스트가 (반전된) LtR 순서이기 때문에 텍스트 분석에 적합하지 않다.
제 1 측면에 따르면, 분석용 디스플레이 문서를 준비하는 장치가 제공되며, 이 장치는 디스플레이 문서로부터 문자 데이터를 추출하는 추출기와, 문자 데이터의 프로세싱과 관련된 제 1 순서 및 문자 데이터의 논리적 순서(logical order)와 관련된 제 2 순서를 결정하고, 제 1 순서가 제 2 순서와 상이한지 여부를 결정하는 순서 식별자와, 제 1 순서가 제 2 순서와 상이하다는 순서 식별자의 결정에 응답하여 문자 데이터를 반전시키는 반전 구성요소를 포함한다.
제 2 측면에 따르면, 분석용 디스플레이 문서를 준비하는 방법이 제공되며, 이 방법은 디스플레이 문서로부터 문자 데이터를 추출하는 단계와, 문자 데이터의 프로세싱과 관련된 제 1 순서 및 문자 데이터의 논리적 순서와 관련된 제 2 순서를 결정하는 단계와, 제 1 순서가 제 2 순서와 상이한지 여부를 결정하는 단계와, 제 1 순서가 제 2 순서와 상이하다는 결정에 응답하여 문자 데이터를 반전시키는 단계를 포함한다.
제 3 측면에 따르면, 컴퓨터에서 실행되었을 때, 전술된 방법의 모든 단계들을 수행하도록 하는 컴퓨터 프로그램 코드 수단을 포함하는 컴퓨터 프로그램 제품이 제공된다.
도 1은 바람직한 실시예의 장치의 블록도,
도 2는 분석용 디스플레이 문서를 준비하는 프로세스에 포함된 동작 단계를 도시한 순서도,
도 3은 적어도 하나의 언어를 결정하는 프로세스에 포함되는 동작 단계를 도시한 순서도,
도 4는 논리적 순서가 추출된 텍스트에서 반전되었는지를 결정하는 프로세스에 포함된 동작 단계를 도시한 순서도,
도 5는 논리적 순서가 추출된 텍스트에서 반전되었다는 결정에 응답하여, 텍스트를 수정하는 프로세스에 포함되는 동작 단계를 도시한 순서도.
도 2는 분석용 디스플레이 문서를 준비하는 프로세스에 포함된 동작 단계를 도시한 순서도,
도 3은 적어도 하나의 언어를 결정하는 프로세스에 포함되는 동작 단계를 도시한 순서도,
도 4는 논리적 순서가 추출된 텍스트에서 반전되었는지를 결정하는 프로세스에 포함된 동작 단계를 도시한 순서도,
도 5는 논리적 순서가 추출된 텍스트에서 반전되었다는 결정에 응답하여, 텍스트를 수정하는 프로세스에 포함되는 동작 단계를 도시한 순서도.
본 발명은 도면에 도시된 바와 같은 본 발명의 바람직한 실시예를 참조로 하여 예시적으로 기술될 것이다.
바람직한 실시예의 장치(100)가 도 1에 도시되었다.
바람직하게는, 사전-프로세싱 단계에서, 추출기(102)가 문서와 관련된 텍스트를 추출한다(예를 들어, 이 문서는 PDF 파일로 저장됨).
본 발명의 일 예시에서, 추출된 텍스트가 저장된다.
이 장치(100)는 하나 이상의 문서(130)에 액세스하도록 동작할 수 있는 언어 식별자(105)를 포함한다.
본 발명의 일 예시에서, 프로세싱 순서는 텍스트의 시작으로부터 텍스트의 끝까지이다(실질적으로, LtR 순서).
바람직하게는, 프로세싱 순서가 순서 식별자(110)로 전달된다.
순서 식별자(110)는 제 1 저장 구성요소(120) 및 반전(reverse) 구성요소(115)에 액세스하도록 동작할 수 있다.
바람직한 실시예의 프로세스는 도면을 참고로 하여 기술될 것이다.
도 2를 참조하면, 단계(200)에서, 추출된 텍스트가 적어도 하나의 언어를 결정하도록 분석된다.
단계(200)는 도 3에 도시된 다수의 단계를 포함한다. 단계(300)에서, 바람직하게는, 언어 식별자(105)가 분석 툴(tool)을 적용한다(예를 들어, LanguageWare(LanguageWare는 IBM 사의 등록된 상표임)).
일 예시에서, 분석 툴은 문서와 관련된 추출된 텍스트를 분석하고(예로서 LtR 순서 같은 프로세싱 순서로), 추출된 텍스트를 사전들의 세트(a set of dictionaries)에 비교하는데, 이때 하나의 사전은 하나의 언어와 관련된다. 비교에 응답하여, 분석 툴은 추출된 텍스트와 관련된 적어도 하나의 언어를 나타내는 결과를 결정한다. 바람직하게는, 만약 분석 툴이 언어를 결정할 수 없다면, 추출된 텍스트가 반전되어 분석 툴에 입력된다. 전형적으로, 이에 응답하여 분석 툴은 언어를 결정할 가능성이 높아진다(예컨대, 아랍어).
바람직하게는, 분석 툴은 언어 식별자(105)에 상기 결과와 관련된 신뢰도 값을 제공한다(예컨대, 통계적 데이터를 사용).
단계(305)에서, 언어 식별자(105)는 제공된 신뢰도 값이 사전-구성가능한 신뢰도 문턱값을 만족하는지 판단한다. 만약 제공된 신뢰도 값이 사전-구성가능한 신뢰도 문턱값을 만족하면, 이 결과는 저장된다.
언어 식별자(105)는 이 결과를 순서 식별자(110)에 전달한다.
도 3의 프로세스가 종료하고 도 2의 단계(205)가 실행된다.
만약 제공된 신뢰도 값이 사전-구성가능한 신뢰도 문턱값을 만족하지 않으면, 바람직하게는, 언어 식별자(105)가 하나 이상의 함수를 적용시킨다(단계(310)).
문자(character)는 예컨대 ISO 8859 또는 UTF-16(유니코드)와 같은 몇몇 인코딩 방안 중 하나를 사용하여 저장될 수 있다. 인코딩 방안을 사용하여, 표현된 각 언어의 각 문자는 인코딩 방안에서 할당된 고유한 "코드", 즉 고유한 "넘버"를 갖는다.
인코딩 방안은 자신과 명백하게 관련된 언어를 가질 수 있으며, 예를 들어, ISO 8859-6은 아랍어와 관련된다. 다른 인코딩 방안(예로서, 유니코드)은 복수의 언어를 지원할 수 있다.
일 예시에서, 언어 식별자(105)는 추출된 텍스트와 관련된 문자 세트의 인코딩을 획득하는 제 1 함수를 적용한다(단계(310)). 제 1 함수는 상기 문자 세트의 인코딩을, 문자 인코딩과 언어를 맵핑(mapping)하는 지식 기반에 비교한다. 이러한 비교에 응답하여, 제 1 함수는 추출된 텍스트와 관련된 적어도 하나의 언어를 나타내는 결과를 결정한다.
바람직하게는, 제 1 함수는 언어 식별자(105)에 상기 결과와 관련된 신뢰도 값을 제공한다.
바람직하게는, 만약 제 1 함수가 결정된 언어가 적어도 두 가지 언어 중 하나라고 결정하면, 바람직하게는 언어 식별자(105)가 제 2 함수를 적용한다(단계(310)).
일 예시에서, 제 2 함수는 문자 인코딩과 스크립트(script)를 맵핑하는 지식 기반에 문자 세트의 인코딩을 비교한다. 예를 들어, 두 언어는 서로 다른 스크립트를 가질 수 있고, 따라서 제 2 함수는 적어도 두 가지 언어 중 어느 언어가 추출된 텍스트와 관련되는지를 결정하는 데에 사용될 수 있다. 이러한 비교에 응답하여, 제 2 함수는 추출된 텍스트와 관련된 적어도 하나의 언어를 나타내는 결과를 결정한다.
바람직하게는, 제 2 함수는 상기 결과와 관련된 신뢰도 값을 언어 식별자(105)에 제공한다.
바람직한 실시예에서, 분석 툴 및 하나 이상의 함수로부터 결정된 하나 이상의 언어를 포함하는 결과들이 병합된다(merged).
선택적으로, 단계(315)에서, 언어 식별자(105)는 분석 툴 및 하나 이상의 함수로부터 결정된 하나 이상의 언어를 포함하는 결과들이 병합되어야 하는지를 결정한다.
일 예시에서, 만약 분석 툴 및 하나 이상의 함수로부터 각각 수신된 신뢰도 값이 사전-구성가능한 신뢰도 문턱값을 만족하지 않으면, 언어 식별자(105)는 그 결과들이 병합되어야 한다고 결정한다.
결과들이 병합되어야 한다는 결정에 응답하여, 언어 식별자(105)는 이 결과들을 병합한다(단계(320)).
언어 식별자(105)는 병합된 결과를 순서 식별자(110)로 전달한다.
도 3의 프로세스가 종료되고 도 2의 단계(205)가 실행된다.
결과들이 병합되어서는 안된다는 결정에 응답하여, 하나 이상의 함수들에 의해 결정된 결과가 저장된다.
언어 식별자(105)는 이 결과를 순서 식별자(110)로 전달한다.
도 3의 프로세스는 종료되며 도 2의 단계(205)가 실행된다.
제 1 예시에서, 이 결과는 다음을 포함한다: 영어 및 아랍어.
도 2를 참조하면, 단계(205)에서, 순서 식별자(110)는 추출된 텍스트의 논리적 순서가 반전되었는지, 즉 논리적 순서가 프로세싱 순서에 대해 반전되었는지 여부를 결정한다.
일 예시에서, 분석 툴과 하나 이상의 함수들 중 적어도 하나는 추출된 텍스트 내의 논리적 순서가 반전되었는지 여부를 결정할 수 있다. 예를 들어, 만약 반전된(예컨대, LtR) 논리적 순서(예컨대, RtL)를 갖는 추출된 텍스트가 분석 툴에 입력되면, 분석 툴은 언어를 결정할 수 없을 것이다. 그러나, 만약 추출된 텍스트(예컨대, 추출된 텍스트의 서브세트)가 반전되어 분석 툴에 입력되면, 분석 툴이 언어(예로서, 아랍어)를 결정할 가능성이 높아진다.
그러나, 논리적 순서가 추출된 텍스트에서 반전되었는지에 대한 결정이 이루어질 수 없으면, 바람직하게는 도 4의 프로세스가 실행된다.
도 4를 참조하면, 단계(400)에서, 순서 식별자(110)는 추출된 텍스트와 관련된 문장부호(punctuation)을 분석한다.
예를 들어, 추출된 텍스트는 아래의 서브셋을 포함한다. 추출된 텍스트가 LtR 논리적 순서를 갖는 텍스트(예컨대, "cows drink water.")와 RtL 논리적 순서를 갖는 텍스트(예컨대, ".doof emos tae stac eht")를 포함한다는 것을 이해해야 한다. RtL 논리적 순서를 갖는 텍스트는 본 발명의 예시에서 아랍어 텍스트를 나타낸다는 것을 이해해야 한다. 아래의 예시에서는 대문자가 사용되지 않았음을 이해해야 한다:
cows
drink
water
. .
doof
emos
tae
stac
eht
먼저, 순서 식별자(110)는 LtR 순서로 추출된 텍스트를 프로세싱한다. 이에 응답하여, 순서 식별자(110)는 문장부호와 관련된 문자를 식별한다(예컨대, 문자의 위치에 의존하여 식별).
위의 텍스트를 참조하면, 순서 식별자(110)는 첫번째 마침표(".")를 식별한다. 문장부호 문자를 식별한 것에 응답하여, 순서 식별자(110)는 문장부호 문자의 양 옆에 있는 문자를 식별한다. 위의 텍스트를 참조하면, 순서 식별자(110)는 마침표의 왼쪽 옆에서 알파벳 문자(예컨대, "r")를 식별하고 마침표의 오른쪽 옆에서는 스페이스 문자를 식별한다. 따라서, 순서 식별자(110)는 LtR 순서로 아래의 유형의 문자들을 포함하는 세트를 식별한다:
[알파벳 문자] [문장부호 문자] [스페이스 문자]
위의 텍스트를 참조하면, 순서 식별자(110)는 두번째 마침표(".")와, 이 마침표의 왼쪽 옆에 있는 스페이스 문자 및 이 마침표의 오른쪽 옆에 있는 알파벳 문자(예컨대, "d")를 식별한다. 따라서, 순서 식별자(110)는 LtR 순서로 아래의 유형의 문자들을 포함하는 세트를 식별한다:
[스페이스 문자] [문장부호 문자] [알파벳 문자]
바람직하게는, 순서 식별자(110)는 이 세트를 제 1 저장 구성요소(120) 내에 저장된 제 1 룰 세트와 비교한다. 바람직하게는, 룰(rule)은 문장부호 문자의 사용과 관련된 데이터를, 논리적 순서 및 상기 논리적 순서가 추출된 텍스트에서 반전되었는지에 대한 표시에 맵핑한다.
룰의 예시가 아래에 도시되었다. 이 룰은 텍스트가 LtR 논리적 순서를 갖는지 또는 RtL 논리적 순서를 갖는지 여부와는 무관하게, 전형적으로 문장부호 문자가 단어(word)의 논리적 말미에 위치하는 포맷과 관련된다:
if
:
[스페이스 문자] [문장부호 문자] [알파벳 문자]
then
:
논리적 순서 =
RtL
; 순서 = 반전
if
:
[알파벳 문자] [문장부호 문자] [스페이스 문자]
then
:
논리적 순서 =
LtR
룰과의 비교에 응답하여, 순서 식별자(110)는 텍스트가 논리적 순서 RtL 및 LtR을 포함함을 나타내는 결과를 생성한다. 이 결과는 또한 RtL 논리적 순서가 추출된 텍스트에서 반전된 것임을 나타낸다.
바람직하게는, 순서 식별자(110)는 또한 결과 내에 LtR 논리적 순서를 갖는 텍스트 및 RtL 논리적 순서를 갖는 텍스트 존재의 개수 표시를 결과 내에 제공한다. 제 1 예시에서, 순서 식별자(110)는 LtR 논리적 순서를 갖는 텍스트가 한 개(예컨대, 제 1 문장부호 문자)이고, RtL 논리적 순서를 갖는 텍스트가 하나(예컨대, 제 2 문장부호 문자)임을 나타낸다.
바람직하게는, 순서 식별자(110)는 이 결과와 관련된 관련 신뢰도 값을 결정하고, 신뢰도 값이 사전-구성가능한 신뢰도 문턱값을 만족시키는지 여부를 결정한다(단계(405)). 만약 제공된 신뢰도 값이 사전-구성가능한 신뢰도 문턱값을 만족시키면, 이 결과는 저장된다.
도 4의 프로세스는 종료된다.
만약 적어도 추출된 텍스트의 서브세트의 논리적 순서가 반전되었으면, 순서 식별자(110)는 이 결과를 반전 구성요소(115)로 전달하고 도 2의 단계(210)가 실행된다.
만약 적어도 추출된 텍스트의 서브세트의 논리적 순서가 반전되지 않았으면, 도 2의 프로세스는 종료된다.
바람직하게는, 룰은 언어와 관련될 수 있다. 바람직하게는, 순서 식별자(110)는 추출된 텍스트를 비교할 룰(예컨대, 영어와 관련된 룰)을 선택하기 위해, 단계(200)에 따라 획득된 결과(들)(예컨대, 적어도 하나의 결정된 언어를 나타내는 결과)를 사용할 수 있다. 따라서, 바람직하게는, 특정한 언어의 특징과 관련된 룰이 선택될 수 있다(그에 따라 순서 식별자(110)에 의해 결정된 결과의 정확도를 향상시킬 수 있다).
위치 의존적 문자 분석의 다른 예에서, 단어와 관련된 프레젠테이션 데이터의 분석이 사용될 수 있다. 예를 들어, 아랍어와 같은 일부 언어의 문자는 문자 인코딩뿐 아니라 프레젠테이션 형태와 관련된 인코딩을 갖는다.
이것은 이 문자가 단어 내에서 어디에 존재하는지에 따라서 서로 다르게 디스플레이되기 때문이다(예컨대, 단어의 중간("medial"), 단어의 시작("initial"), 단어의 말미("final") 또는 분리("isolated")).
예를 들어, 순서 식별자(110)는 추출된 텍스트를 프로세싱하고 제 1 문자와 관련된 프레젠테이션 데이터를 결정한다. 예시에서, 프레젠테이션 데이터는 "initial"을 포함한다. 순서 식별자(110)는 제 1 문자의 양 옆의 문자를 결정한다. 예시에서, 왼쪽 옆에 있는 문자는 알파벳 문자이고 오른쪽 옆에 있는 문자는 스페이스 문자이다. 순서 식별자(110)는 발견된 문자의 유형(예컨대, [알파벳 문자] [initial] [스페이스 문자])을 룰에 비교한다.
바람직하게는, 룰은 프레젠테이션 데이터와 관련된 데이터를, 논리적 순서 및 상기 논리적 순서가 추출된 텍스트에서 반전되었는지에 대한 표시와 맵핑한다.
룰의 예시가 아래에 기술되었다. 이 룰은 텍스트가 LtR 논리적 순서를 갖는지 또는 RtL 논리적 순서를 갖는지와 무관하게, "initial" 문자가 전형적으로 왼쪽 옆에 스페이스 문자를 가지고 오른쪽 옆에는 알파벳 문자를 갖는 포맷과 관련된다:
if
:
[알파벳 문자] [
initial
] [스페이스 문자]
then
:
논리적 순서=
RtL
; 순서=반전
이 룰에 기초한 비교에 응답하여, 순서 식별자(110)는 텍스트가 논리적 순서 RtL를 포함하고 RtL 논리적 순서가 추출된 텍스트에서 반전되었음을 나타내는 결과를 생성한다.
바람직하게는, 이러한 메커니즘은 특정한 언어(예로서, 아랍어)가 자신이 단어 내에서 어디에 존재하는가에 따라서 서로 다르게 표현될 수 있는 문자를 가질 수 있다는 사실을 이용한다.
만약 제공된 신뢰도 값이 사전-구성가능한 신뢰도 문턱값을 만족하지 않으면, 순서 식별자(110)는 추출된 텍스트 내의 공통 단어(commonly occurring word)를 분석한다(단계(420)).
예를 들어, 순서 식별자(110)는 제 1 저장 구성요소(120) 내에 저장된 공통 단어들의 세트(예를 들어, 바람직하게는 다수의 언어에서 공통 단어들)에 액세스한다.
바람직하게는, "the"와 같은 공통 단어가 LtR 논리적 순서(예컨대, "the") 및 반전된 논리적 순서(예컨대, "eht")로 저장된다. 바람직하게는, 논리적 순서와 관련된 식별자가 공통 단어와 연관된다. 바람직하게는, 추출된 텍스트에서 논리적 순서가 반전되었는지 여부와 관련된 표시 또한 공통 단어와 연관된다. 이 예는 아래와 같다:
"
the
"; 논리적 순서=
LtR
"
eht
"; 순서=반전된 논리적 순서
바람직하게는, 공통 단어는 경계 문자 양측의 스페이스 문자와 함께 저장된다. 예를 들어, "the"는 " the "로 저장된다. 이것은 순서 식별자(110)가 다른 단어 내에서 공통 단어의 존재를 찾지 않는다는 것을 보장한다. 예를 들어, 순서 식별자(110)는 "other" 내에서 "the"를 찾지 않을 것이다.
바람직하게는, 반전된 제 1 단어가 또 다른 제 2 단어가 되는 경우, 이러한 제 1 단어는 사용되지 않는다(예를 들어, "room"은 반전되었을 때 "moor"가 된다). 이는 순서 식별자(110)가 반전된 제 1 단어의 존재와 이와 상이한 제 2 단어의 존재를 구별할 수 없을 것이기 때문이다. 그러나, 만약 이러한 단어가 사용된다면, 바람직하게는, 순서 식별자(110)가 반전된 제 1 단어의 존재와 이와 상이한 제 2 단어의 존재를 구별할 수 있도록 문법적인 분석을 적용한다.
순서 식별자(110)는 추출된 텍스트를 LtR 논리적 순서로 프로세싱하고 이것을 LtR 논리적 순서 및 반전된 논리적 순서로 저장된 하나 이상의 공통 단어에 대해 검사한다.
상기 텍스트를 참조로 하여, 순서 식별자(110)는 "eht"를 식별한다.
이에 응답하여, 순서 식별자(110)는 논리적 순서가 추출된 텍스트에서 반전되었다는 것을 나타내는 결과를 결정하기 위해 공통 단어와 함께 저장된 데이터를 사용한다.
바람직하게는, 순서 식별자(110)는 또한 결과에서 LtR 논리적 순서를 갖는 텍스트와 반전된 논리적 순서를 갖는 텍스트의 존재의 개수 표시를 제공한다.
제 1 예시에서, 순서 식별자(110)는 반전된 논리적 순서를 갖는 텍스트가 하나 존재함을 표시한다(예컨대, 공통 단어 "eht").
바람직하게는, 순서 식별자(110)는 결과와 관련된 관련 신뢰도 값을 결정하고, 신뢰도 값이 사전-구성가능한 신뢰도 문턱값에 만족하는지 여부를 결정한다(단계(425)). 만약 제공된 신뢰도 값이 사전-구성가능한 신뢰도 문턱값을 만족시키면, 그 결과는 저장된다.
도 4의 프로세스는 종료된다.
만약 적어도 추출된 텍스트의 서브세트의 논리적 순서가 추출된 텍스트에서 반전되었다면, 순서 식별자(110)는 반전 구성요소(115)로 결과를 전달하고 도 2의 단계(210)가 실행된다.
만약 추출된 텍스트의 서브세트의 논리적 순서가 추출된 텍스트에서 반전되지 않았다면, 도 2의 프로세스는 종료된다.
만약 제공된 신뢰도 값이 사전-구성가능한 신뢰도 문턱값을 만족시키지 않으면, 순서 식별자(110)는 하나 이상의 사전(dictionary) 검색을 적용한다(단계(430)).
예를 들어, 추출된 텍스트가 특정 도메인과 관련되기 때문에(예컨대, 특허 명세서, 컴퓨터 기술 관련 문서), 이전의 단계들은 신뢰도 문턱값을 만족시키는 결과를 생성하지 않았을 수 있다.
바람직하게는, 사전은 LtR 논리적 순서 및 반전된 논리적 순서로 저장된 단어, 논리적 순서와 관련된 식별자 및 논리적 순서가 추출된 텍스트에서 반전되었는지 여부와 관련된 표시를 포함한다.
이와 달리, LtR 논리적 순서와 관련된 단어가 사전에 입력되고, 만약 사전이 결과를 결정할 수 없으면 이 단어가 반전되어 사전에 입력될 수 있다. 이에 응답하여, 전형적으로 사전이 결과를 결정할 가능성이 높아진다. 바람직하게는, 이것은 사전이 더 적은 데이터를 저장하도록 한다.
바람직하게는, 단계(430)에 응답하여, 순서 식별자(110)가 LtR 논리적 순서를 갖는 텍스트, RtL 논리적 순서를 갖는 텍스트가 존재하는지의 여부, 논리적 순서가 추출된 텍스트에서 반전되었는지의 여부 및 LtR 논리적 순서 및 RtL 논리적 순서의 존재의 개수 표시를 나타내는 결과를 결정한다.
바람직하게는, 이 결과는 저장된다.
도 4의 프로세스는 종료된다.
만약 적어도 추출된 텍스트의 서브세트의 논리적 순서가 추출된 텍스트에서 반전되었다면, 순서 식별자(110)는 이 결과를 반전 구성요소(115)로 전달하고 도 2의 단계(210)가 실행된다.
만약 적어도 추출된 텍스트의 서브세트의 논리적 순서가 추출된 텍스트에서 반전되지 않았다면, 도 2의 프로세스는 종료된다.
바람직하게는, 하나 이상의 사전의 검색은 전술된 하나 이상의 메커니즘 이후에 사용되며, 이는 검색을 위해서는 증가된 프로세싱과 시간이 요구되기 때문이다.
바람직하게는, 하나 이상의 사전의 검색은 이전의 메커니즘과 관련된 신뢰도 값에 따라 사용된다.
임의의 다른 수의 메커니즘이 LtR 논리적 순서를 갖는 텍스트, RtL 논리적 순서를 갖는 텍스트가 존재하는지의 여부, 논리적 순서가 추출된 텍스트에서 반전되었는지의 여부 및 LtR 논리적 순서 및 RtL 논리적 순서의 존재의 개수 표시를 나타내는 결과를 결정하기 위해 실행될 수 있음을 이해해야 한다.
이러한 메커니즘은 바람직하게는 이어지는 단계(200)에서 획득된 결과(들)에 따라 선택된다(즉, 적어도 하나의 결정된 언어를 나타내는 결과). 따라서, 바람직하게는, 특정 언어의 특징과 관련된 메커니즘이 선택될 수 있다.
일 예시에서, 문법적인 분석이 사용될 수 있다.
도 2를 참조하면, 만약 논리적 순서가 추출된 텍스트에서 반전되었다면, 도 2의 단계(210)가 실행되고, 그에 따라 반전 구성요소(115)는 추출된 텍스트와 관련된 하나 이상의 텍스트 부분을 반전시킨다.
단계(210)는 도 5에 도시된 다수의 단계를 포함한다.
반전 구성요소(115)는 순서 식별자(110)로부터 수신된 결과를 사용한다.
본 발명의 예시에서, 반전 구성요소(115)는 LtR 논리적 순서를 갖는 텍스트, RtL 논리적 순서를 갖는 텍스트가 존재하는지의 여부, 논리적 순서가 추출된 텍스트에서 반전되었는지의 여부 및 LtR 논리적 순서를 갖는 텍스트 및 RtL 논리적 순서를 갖는 텍스트의 존재의 개수 표시를 나타내는 하나 이상의 결과를 사용한다.
단계(500)에서, 반전 구성요소(115)는 논리적 순서가 주로 RtL인지를 결정하도록 하나 이상의 결과들을 사용한다(예를 들어, RtL 논리적 순서를 갖는 텍스트가 존재하는지에 대한 표시 및 LtR 논리적 순서를 갖는 텍스트 및 RtL 논리적 순서를 갖는 텍스트의 존재의 개수 표시를 사용).
제 1 예시에서, 반전 구성요소(115)는 RtL 논리적 순서를 갖는 텍스트가 존재한다는 것과, LtR 논리적 순서를 갖는 텍스트가 한 개 존재하며(예로서, 제 1 문장부호 문자) RtL 논리적 순서를 갖는 텍스트가 두 개 존재(예로서, 제 2 문장부호 문자 및 공통 단어 "eht")한다고 판단한다.
제 1 예시에서, 반전 구성요소(115)는 논리적 순서가 주로 RtL이라고 결정하고, 바람직하게는, 추출된 텍스트의 하나 이상의 텍스트 부분을 반전시킨다(단계(505)).
바람직하게는, 반전 구성요소(115)는 텍스트 부분을 결정하기 위해 추출된 텍스트와 관련된 위치 데이터를 사용한다. 예를 들어, 만약 위치 데이터가 라인들이 올바른 논리적 순서로 존재한다는 것을 명시하면, 반전 구성요소(115)는 텍스트 부분이 하나의 라인이라는 것을 결정하고, 그에 응답하여 하나의 라인을 한번에 반전시킨다. 따라서, 이러한 반전 후에 그 텍스트는 올바른 순서로 판독될 것이다.
임의의 개수의 다른 텍스트 부분에 대한 결정이 이루어질 수 있음을 이해해야 한다(예컨대, 문장들).
일 예시에서, 반전의 결과는 다음과 같이 나타내어진다:
the
cats
eat
some
food
. .
retaw
knird
swoc
단계(510)에서, 반전 구성요소(115)는 LtR 논리적 순서를 갖는 임의의 텍스트가 존재하는지 여부를 결정하도록 하나 이상의 결론을 사용한다.
만약 반전 구성요소(115)가 LtR 논리적 순서를 갖는 텍스트가 없다고 결정하면, 도 5의 프로세스가 종료된다(그리고 도 2의 프로세스가 종료된다). 프로세싱된 텍스트는 예컨대 분석을 위해서 하나 이상의 툴로 전달된다.
만약 반전 구성요소(115)가 LtR 논리적 순서를 갖는 텍스트가 존재한다고 결정하면, 반전 구성요소(115)는 LtR 논리적 순서를 갖는 하나 이상의 텍스트 부분을 결정한다.
전형적으로, 문자는 문자 인코딩뿐 아니라, 방향(즉, 논리적 순서)과 관련된 특성을 갖는다. 전형적으로, 스페이스 문자는 이것이 RtL 논리적 순서 또는 LtR 논리적 순서를 갖지 않는다는 것을 나타내는 "중성(neutral)"의 특성을 갖는다.
바람직하게는, 반전 구성요소(115)는 추출된 텍스트를 프로세싱하고 관련된 논리적 순서를 결정하기 위해 각 문자의 특성을 검색한다.
제 1 예시에서, 추출된 텍스트의 문자 및 관련된 특성들은 아래에 나타내어졌으며, 이때 "r"은 RtL 논리적 순서를 나타내고, "l"은 LtR 논리적 순서를 나타내며, "n"은 중성을 나타낸다:
the
cats
eat
some
food
. .
retaw
knird
swoc
rrrnrrrrnrrrnrrrrnrrrrrnllllllnlllllnllll
제 1 예시에서, 반전 구성요소(115)는 LtR 논리적 순서를 갖는 세 개의 텍스트 부분이 있음을 결정한다.
이에 응답하여, 반전 구성요소(115)는 LtR 논리적 순서를 갖는 텍스트 부분들을 반전시킨다(단계(515)). 바람직하게는, 세 개의 텍스트 부분을 포함하는 전체 부분이 반전된다(세 개의 텍스트 부분 내에 중성 특성을 갖는 문자를 포함). 그러나, 전체 부분의 경계(예컨대, 시작 또는 종료)에서 중성 특성을 갖는 문자는 반전되지 않는다. 예를 들어, 아래에서 밑줄로 표시된 스페이스 문자는 반전되지 않는다:
food
.
.
retaw
제 1 예시에서, 반전의 결과는 아래와 같이 도시된다:
the
cats
eat
some
food
.
cows
drink
water
.
도 5의 프로세스는 종료된다(그리고 도 2의 프로세스가 종료된다). 프로세싱된 텍스트는 예를 들어 분석을 위해 하나 이상의 툴로 전달될 수 있다.
바람직하게는, 만약 추출된 텍스트 내에 주로 RtL 논리적 순서를 갖는 텍스트가 존재하면, 단계(505)에서 텍스트의 벌크 반전을 실행하는 것이 단일 실행으로 대부분의 텍스트의 반전을 정정한다. 이러한 벌크 반전 후에 LtR 논리적 순서를 갖는 일부(즉, 소수의) 텍스트 부분의 반전을 정정함으로써, 효율성이 향상된다.
만약 반전 구성요소(115)가 논리적 순서가 주로 RtL이 아니라고 결정하면, 바람직하게는, 단계(520)에서 반전 구성요소(115)는 RtL 논리적 순서를 갖는 텍스트가 존재하는지 여부를 결정하도록 하나 이상의 결론을 사용한다.
만약 반전 구성요소(115)가 RtL 논리적 순서를 갖는 텍스트가 존재하지 않는다는 결정하면, 도 5의 프로세스가 종료된다(그리고 도 2의 프로세스가 종료된다). 프로세싱된 텍스트는 예컨대 분석을 위해 하나 이상의 툴로 전달될 수 있다.
만약 반전 구성요소(115)가 RtL 논리적 순서를 갖는 텍스트가 존재한다고 결정하면, 반전 구성요소(115)는 RtL 논리적 순서를 갖는 하나 이상의 텍스트 부분을 결정할 수 있다(예컨대, 문자의 방향과 관련된 특성을 분석).
이에 응답하여, 반전 구성요소(115)는 RtL 논리적 순서를 갖는 텍스트 부분들을 반전시킨다(단계(525)).
도 5의 프로세스는 종료된다(그리고 도 2의 프로세스가 종료된다). 프로세싱된 텍스트는 예컨대 분석을 위해 하나 이상의 툴로 전달될 수 있다.
바람직하게는, RtL 논리적 순서를 갖는 텍스트가 추출된 텍스트에서 대부분이 아니라면, RtL 논리적 순서를 갖는 일부 (즉, 소수) 텍스트 부분의 반전이 실행되며, 그에 따라 효율성을 향상시킨다.
만약 추출된 텍스트가 RtL 순서로 프로세싱된다면, 한번 이상의 수정이 이루어질 수 있음을 이해해야 한다.
예를 들어, 제 2 룰 세트가 논리적 순서로서 사용되면 전술된 룰 세트에 명시된 논리적 순서는 올바르지 않을 것이다. 예를 들어, 만약 아래의 유형의 문자들이 결정되면, 관련된 논리적 순서는 RtL이 아닌 LtR이다:
[스페이스 문자] [문장부호 문자] [알파벳 문자]
추가적인 수정이 이루어질 수 있으며, 예컨대 단어가 사전에 RtL 논리적 순서 및 반전된 논리적 순서로 저장된다.
바람직하게는, 본 발명은 관련된 제 1 순서를 갖는 텍스트를 포함하는 입력 문서를 수신하고 이 텍스트가 효율적으로 분석되도록 제 2 논리적 순서를 갖는 텍스트를 프로세싱한다.
바람직하게는 발견법과 관련된 복수의 메커니즘과 신뢰도 문턱값을 사용함으로써, 본 발명의 장치에 의해 생성된 결과의 강건성이 향상될 수 있다.
바람직하게는, 본 발명은 임의의 개수의 디스플레이 문서와 함께 사용될 수 있다. 예를 들어, 디스플레이를 위해 LtR 순서로 텍스트를 저장하는 PDF 파일이 사용될 수 있다. 다른 예시에서, OCR(optical character recognition)을 이용해서 스캐닝되고 프로세싱된 문서를 포함하는 파일이 사용될 수 있다. 다른 예시에서, 텍스트의 논리적 순서가 올바르지 않게 명시되었거나 명시되지 않은 마크업(예컨대, HTML)을 포함하는 파일이 사용될 수 있다.
바람직하게는, 본 발명은 다수의 애플리케이션에서 사용될 수 있다. 예를 들어, 텍스트 분석을 위한 텍스트 준비시에, 단어 프로세싱 시스템과 같은 텍스트 프로세싱 시스템에 의해 사용되기 위한 텍스트의 준비시에, 그리고 데이터베이스 또는 콘텐트 관리 시스템과 같은 텍스트 검색 시스템 내의 저장을 위한 텍스트의 준비시에 사용될 수 있다.
바람직하게는, 본 발명은 양방향 텍스트를 포함하는 문서를 다루도록 운영가능하다(즉, LtR 논리적 순서를 갖는 텍스트 및 RtL 논리적 순서를 갖는 텍스트).
본 발명의 바람직한 실시예의 모든 방법 또는 방법의 일부가, 방법의 단계들을 수행하도록 구성된 논리 요소들을 포함하는 하나의 또는 복수의 논리 장치에서 적절하고 유용하게 구현될 수 있음이 당업자에게 명백할 것이며, 이러한 논리 요소들은 하드웨어 구성요소, 펌웨어 구성요소 또는 이들의 조합을 포함할 수 있다.
또한 본 발명의 바람직한 실시예에 따른 논리 구성의 전체 또는 일부가 방법의 단계들을 수행하기 위한 논리 요소들을 포함하는 논리 장치에서 적절하게 구현될 수 있음이 당업자에게는 명백할 것이며, 이러한 논리 요소들은 예를 들어 프로그램가능한 논리 어레이 또는 애플리케이션-특정 집적 회로 내의 논리 게이트와 같은 구성요소를 포함할 수 있다. 이러한 논리 구성은 예를 들어 고정된 또는 전송가능한 캐리어 미디어를 사용하여 저장 및 전송될 수 있는 가상 하드웨어 디스크립터 언어를 사용하는 어레이 또는 회로에서 임시로 또는 영구적으로 논리 구성을 확립하기 위해 인에이블링 요소 내에서 추가로 구현될 수 있다.
전술된 방법 및 구성은 전체가 또는 부분적으로 하나 이상의 프로세서(도면에는 도시되지 않음) 상에서 실행되는 소프트웨어에서 적절하게 실행될 수 있으며, 소프트웨어는 자기 디스크 또는 광학 디스크 등과 같은 임의의 적절한 데이터-캐리어(도면에는 도시되지 않았음) 상에서 수행되는 하나 이상의 컴퓨터 프로그램 소자의 형태로 제공될 수 있음을 이해할 것이다. 데이터 전송을 위해 채널은 유선 또는 무선 시그널-전달 미디어와 같은 시그널-전달 미디어뿐 아니라, 모든 디스크립션의 저장 미디어를 포함할 수도 있다.
본 발명은 추가로 컴퓨터 시스템과 사용될 수 있는 컴퓨터 프로그램 제품으로서 적절하게 구현될 수도 있다. 이러한 구현물은, 광학적 또는 음성 통신 라인을 포함하지만 이것으로 제한된 것은 아닌 실재하는 매체 상에서, 또는 마이크로파, 적외선 또는 다른 전송 기술을 포함하지만 이것으로 제한되는 것은 아닌 무선 기술을 사용하는 무형의 매체 상에서, 예로서 디스켓, CD-ROM, ROM, 또는 하드 디스크 등의 컴퓨터 판독가능 매체와 같은 실재하는 매체 상에 고정되거나 모뎀 또는 그외의 인터페이스 디바이스를 통해 컴퓨터 시스템으로 전송가능한 일련의 컴퓨터-판독가능한 명령어를 포함할 수 있다. 일련의 컴퓨터 판독가능한 명령어는 전술된 기능들의 전부 또는 일부를 구현한다.
당업자는 이러한 컴퓨터 판독가능한 명령어가 다수의 컴퓨터 아키텍처 또는 운영 시스템과 사용되도록 다수의 프로그래밍 언어에서 기록될 수 있다. 또한, 이러한 명령어는 반도체, 자기 메모리, 또는 광학적 메모리를 포함하지만 이것으로 제한되는 것은 아닌 현재의 또는 미래의 임의의 메모리 기술을 사용하여 저장될 수 있거나, 또는 광학적 신호, 적외선 신호, 또는 마이크로파를 포함하지만 이것으로 제한되는 것은 아닌 현재의 또는 미래의 임의의 통신 기술을 사용하여 전송될 수 있다. 이러한 컴퓨터 프로그램 제품은 예를 들어 수축포장된 소프트웨어, 컴퓨터 시스템을 이용한 사전설치 같은 인쇄 또는 전자 문서화와 함께 제거가능한 매체로서 시스템 ROM 또는 고정 디스크 상에 배포될 수 있거나, 또는 예를 들어 인터넷 또는 월드 와이드 웹(WWW)과 같은 네트워크 상에서 서버 또는 전자 공고로부터 배포될 수 있다.
대안에서, 본 발명의 바람직한 실시예는, 컴퓨터 인프라구조로 배치되어 실행될 때, 컴퓨터 시스템이 기술된 방법의 모든 단계들을 수행하게 하도록 동작할 수 있는 컴퓨터 프로그램 코드를 사용하는 단계들을 포함하는 서비스를 사용하는 컴퓨터 구현된 방법의 형태로 구현될 수도 있다.
당업자에게는 다수의 개선 및 수정이 본 발명의 범주로부터 벗어나지 않는 한 전술된 예시적인 실시예에 대해 이루어질 수 있음이 명백할 것이다.
Claims (10)
- 분석용 디스플레이 문서를 준비하는 장치로서,
상기 디스플레이 문서로부터 문자 데이터(character data)를 추출하는 추출기와,
상기 문자 데이터의 프로세싱과 관련된 제 1 순서 및 상기 문자 데이터의 논리적 순서(logical order)와 관련된 제 2 순서를 결정하고, 상기 제 1 순서가 상기 제 2 순서와 상이한지 여부를 결정하는 순서 식별자와,
상기 제 1 순서가 상기 제 2 순서와 상이하다는 상기 순서 식별자의 결정에 응답하여 상기 문자 데이터를 반전(reverse)시키는 반전 구성요소를 포함하는
분석용 디스플레이 문서 준비 장치.
- 제 1 항에 있어서,
상기 순서 식별자는,
위치 종속적인 문자 데이터를 결정하고,
상기 위치 종속적인 문자 데이터를 룰(rule)에 대해 비교하고,
상기 비교에 응답하여, 상기 제 2 순서를 결정하도록 동작할 수 있는
분석용 디스플레이 문서 준비 장치.
- 제 1 항에 있어서,
상기 순서 식별자는,
상기 문자 데이터 내의 공통 단어(commonly-occurring word)를 결정하고,
상기 공통 단어를 룰에 대해 비교하고,
상기 비교에 응답하여, 상기 제 2 순서를 결정하도록 동작할 수 있는
분석용 디스플레이 문서 준비 장치.
- 제 1 항에 있어서,
상기 순서 식별자는,
상기 문자 데이터를 사전들의 세트(a set of dictionaries)에 대해 비교하고,
상기 비교에 응답하여, 상기 제 2 순서를 결정하도록 동작할 수 있는
분석용 디스플레이 문서 준비 장치.
- 제 1 항에 있어서,
상기 문서 내의 상기 문자 데이터와 관련된 적어도 하나의 언어를 식별하는 언어 식별자를 더 포함하는
분석용 디스플레이 문서 준비 장치.
- 제 5 항에 있어서,
상기 언어 식별자는, 상기 문자 데이터와 관련된 문법, 상기 문자 데이터와 관련된 적어도 하나의 문자 인코딩 및 상기 문자 데이터의 스트립트와 관련된 스크립트 데이터 중 적어도 하나를 분석하도록 동작할 수 있는
분석용 디스플레이 문서 준비 장치.
- 제 1 항에 있어서,
상기 반전 구성요소는 상기 문서 내의 상기 문자 데이터가 주로 제 1 순서를 갖는지 여부를 결정하도록 구성되는
분석용 디스플레이 문서 준비 장치.
- 제 1 항에 있어서,
상기 반전 구성요소가 상기 문서 내의 상기 문자 데이터를 반전시킨 것에 응답하여, 텍스트 검색 시스템, 텍스트 분석 시스템 및 텍스트 프로세싱 시스템 중 적어도 하나가 상기 문자 데이터를 수신하도록 동작할 수 있는
분석용 디스플레이 문서 준비 장치.
- 분석용 디스플레이 문서를 준비하는 방법으로서,
상기 디스플레이 문서로부터 문자 데이터를 추출하는 단계와,
상기 문자 데이터의 프로세싱과 관련된 제 1 순서 및 상기 문자 데이터의 논리적 순서(logical order)와 관련된 제 2 순서를 결정하는 단계와,
상기 제 1 순서가 상기 제 2 순서와 상이한지 여부를 결정하는 단계와,
상기 제 1 순서가 상기 제 2 순서와 상이하다는 결정에 응답하여 상기 문자 데이터를 반전시키는 단계를 포함하는
분석용 디스플레이 문서 준비 방법.
- 컴퓨터에서 실행되었을 때, 제 9 항에 따른 단계를 수행하도록 하는 컴퓨터 프로그램 코드 수단을 포함하는 컴퓨터 프로그램 제품.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB0717067.3A GB0717067D0 (en) | 2007-09-03 | 2007-09-03 | An Apparatus for preparing a display document for analysis |
GB0717067.3 | 2007-09-03 | ||
PCT/EP2008/060359 WO2009030577A2 (en) | 2007-09-03 | 2008-08-06 | An apparatus for preparing a display document for analysis |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100059825A true KR20100059825A (ko) | 2010-06-04 |
KR101143650B1 KR101143650B1 (ko) | 2012-05-14 |
Family
ID=38617154
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020107004550A KR101143650B1 (ko) | 2007-09-03 | 2008-08-06 | 분석용 디스플레이 문서 준비 장치 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9658989B2 (ko) |
EP (1) | EP2191396B1 (ko) |
JP (1) | JP5390522B2 (ko) |
KR (1) | KR101143650B1 (ko) |
CN (1) | CN101796509A (ko) |
GB (1) | GB0717067D0 (ko) |
WO (1) | WO2009030577A2 (ko) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9928225B2 (en) | 2012-01-23 | 2018-03-27 | Microsoft Technology Licensing, Llc | Formula detection engine |
US20140258852A1 (en) * | 2013-03-11 | 2014-09-11 | Microsoft Corporation | Detection and Reconstruction of Right-to-Left Text Direction, Ligatures and Diacritics in a Fixed Format Document |
US9330070B2 (en) | 2013-03-11 | 2016-05-03 | Microsoft Technology Licensing, Llc | Detection and reconstruction of east asian layout features in a fixed format document |
US9934432B2 (en) | 2015-03-31 | 2018-04-03 | International Business Machines Corporation | Field verification of documents |
US10380207B2 (en) | 2015-11-10 | 2019-08-13 | International Business Machines Corporation | Ordering search results based on a knowledge level of a user performing the search |
US9817793B1 (en) * | 2016-04-21 | 2017-11-14 | International Business Machines Corporation | Formatting electronic mail subject line with bidirectional text |
US10204083B2 (en) | 2016-10-20 | 2019-02-12 | Microsoft Technology Licensing, Llc | Computer systems and methods using multiple neutral type characters as delimiters between segments in structured, multi-segment data values |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1563165A (en) * | 1977-11-16 | 1980-03-19 | Ibm | Character display system |
US5454046A (en) * | 1993-09-17 | 1995-09-26 | Penkey Corporation | Universal symbolic handwriting recognition system |
US5784069A (en) * | 1995-09-13 | 1998-07-21 | Apple Computer, Inc. | Bidirectional code converter |
US5812122A (en) * | 1995-12-13 | 1998-09-22 | Sun Microsystems, Inc. | Testing layout services for supporting complex text languages |
US6216102B1 (en) * | 1996-08-19 | 2001-04-10 | International Business Machines Corporation | Natural language determination using partial words |
US6047251A (en) * | 1997-09-15 | 2000-04-04 | Caere Corporation | Automatic language identification system for multilingual optical character recognition |
US6513002B1 (en) * | 1998-02-11 | 2003-01-28 | International Business Machines Corporation | Rule-based number formatter |
US6204782B1 (en) * | 1998-09-25 | 2001-03-20 | Apple Computer, Inc. | Unicode conversion into multiple encodings |
US6493735B1 (en) * | 1998-12-15 | 2002-12-10 | International Business Machines Corporation | Method system and computer program product for storing bi-directional language data in a text string object for display on non-bidirectional operating systems |
IL130688A0 (en) * | 1999-02-26 | 2000-06-01 | Ibm | Bidirectional network language support |
US6910185B1 (en) * | 2000-04-25 | 2005-06-21 | Openwave Systems Inc. | Bi-directional text support in legacy applications |
US6668085B1 (en) * | 2000-08-01 | 2003-12-23 | Xerox Corporation | Character matching process for text converted from images |
US7073137B2 (en) * | 2000-10-30 | 2006-07-04 | Microsoft Corporation | System and method for user interface mirroring utilizing a layout manager |
US6944820B2 (en) * | 2001-03-27 | 2005-09-13 | Microsoft Corporation | Ensuring proper rendering order of bidirectionally rendered text |
FI20010644A (fi) * | 2001-03-28 | 2002-09-29 | Nokia Corp | Merkkisekvenssin kielen määrittäminen |
US6993716B2 (en) * | 2002-09-20 | 2006-01-31 | International Business Machines Corporation | Frame rearrangement to support bidirectional languages in a Web application |
FR2848688A1 (fr) * | 2002-12-17 | 2004-06-18 | France Telecom | Identification de langue d'un texte |
US7283949B2 (en) * | 2003-04-04 | 2007-10-16 | International Business Machines Corporation | System, method and program product for bidirectional text translation |
US7073138B2 (en) * | 2003-06-06 | 2006-07-04 | Eugene Mirkin | Method and apparatus for cursor positioning in bi-directional text |
KR100634496B1 (ko) * | 2003-06-16 | 2006-10-13 | 삼성전자주식회사 | 입력언어모드 인식방법 및 장치와 이를 이용한 입력언어모드 자동전환방법 및 장치 |
US7508984B2 (en) * | 2003-07-31 | 2009-03-24 | Ricoh Company, Ltd. | Language recognition method, system and software |
US7506255B1 (en) * | 2004-02-17 | 2009-03-17 | Microsoft Corporation | Display of text in a multi-lingual environment |
US20050183033A1 (en) * | 2004-02-18 | 2005-08-18 | Yaniv Feinberg | Apparatus and methods for displaying dialog box text messages including languages having different reading orders |
US9122655B2 (en) * | 2004-11-15 | 2015-09-01 | International Business Machines Corporation | Pre-translation testing of bi-directional language display |
US8027832B2 (en) * | 2005-02-11 | 2011-09-27 | Microsoft Corporation | Efficient language identification |
US7831908B2 (en) * | 2005-05-20 | 2010-11-09 | Alexander Vincent Danilo | Method and apparatus for layout of text and image documents |
US8185376B2 (en) * | 2006-03-20 | 2012-05-22 | Microsoft Corporation | Identifying language origin of words |
US8111922B2 (en) * | 2007-06-08 | 2012-02-07 | Microsoft Corporation | Bi-directional handwriting insertion and correction |
-
2007
- 2007-09-03 GB GBGB0717067.3A patent/GB0717067D0/en not_active Ceased
-
2008
- 2008-08-06 KR KR1020107004550A patent/KR101143650B1/ko not_active IP Right Cessation
- 2008-08-06 WO PCT/EP2008/060359 patent/WO2009030577A2/en active Application Filing
- 2008-08-06 CN CN200880105360A patent/CN101796509A/zh active Pending
- 2008-08-06 JP JP2010522289A patent/JP5390522B2/ja not_active Expired - Fee Related
- 2008-08-06 EP EP08786964.0A patent/EP2191396B1/en active Active
- 2008-08-25 US US12/197,860 patent/US9658989B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2009030577A3 (en) | 2009-06-18 |
US20090063965A1 (en) | 2009-03-05 |
CN101796509A (zh) | 2010-08-04 |
EP2191396B1 (en) | 2013-05-29 |
KR101143650B1 (ko) | 2012-05-14 |
WO2009030577A2 (en) | 2009-03-12 |
GB0717067D0 (en) | 2007-10-10 |
EP2191396A2 (en) | 2010-06-02 |
JP2010538342A (ja) | 2010-12-09 |
US9658989B2 (en) | 2017-05-23 |
JP5390522B2 (ja) | 2014-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101143650B1 (ko) | 분석용 디스플레이 문서 준비 장치 | |
US9032285B2 (en) | Selective content extraction | |
US9268749B2 (en) | Incremental computation of repeats | |
US20120290288A1 (en) | Parsing of text using linguistic and non-linguistic list properties | |
US20120095748A1 (en) | Language Identification in Multilingual Text | |
US9158742B2 (en) | Automatically detecting layout of bidirectional (BIDI) text | |
US7586628B2 (en) | Method and system for rendering Unicode complex text data in a printer | |
KR101086550B1 (ko) | 로마자 변환을 이용한 일본어 자동 추천 시스템 및 방법 | |
CN113610068B (zh) | 基于试卷图像的试题拆解方法、系统、存储介质及设备 | |
US8271263B2 (en) | Multi-language text fragment transcoding and featurization | |
JP7040155B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
US11239858B2 (en) | Detection of unknown code page indexing tokens | |
JP2011039576A (ja) | 特定情報検出装置、特定情報検出方法および特定情報検出プログラム | |
US8666987B2 (en) | Apparatus and method for processing documents to extract expressions and descriptions | |
JPWO2007114181A1 (ja) | データ入力装置、方法、及びプログラム | |
KR20220113075A (ko) | 한국어 명사 추출 토크나이저 기반의 워드클라우드 시스템 | |
JPWO2007114182A1 (ja) | データ入力装置、方法、及びプログラム | |
EP1072986A2 (en) | System and method for extracting data from semi-structured text | |
CN111160042B (zh) | 一种文本语义解析方法和装置 | |
US11423208B1 (en) | Text encoding issue detection | |
CN115169344A (zh) | 中文文本纠错方法、装置、设备与介质 | |
De Bruijn et al. | Contrastive Multivariate Analyses of the Middle Low German" Flos unde Blankeflos" Tradition | |
CN111753095A (zh) | 用于生成知识库的方法和装置 | |
JPH0614375B2 (ja) | 文字入力装置 | |
JPH0581314A (ja) | 係り受け関係判定方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |