KR20100034868A - 구조계산서 텍스트 정보의 계층 구조 추출 방법 - Google Patents

구조계산서 텍스트 정보의 계층 구조 추출 방법 Download PDF

Info

Publication number
KR20100034868A
KR20100034868A KR1020080094076A KR20080094076A KR20100034868A KR 20100034868 A KR20100034868 A KR 20100034868A KR 1020080094076 A KR1020080094076 A KR 1020080094076A KR 20080094076 A KR20080094076 A KR 20080094076A KR 20100034868 A KR20100034868 A KR 20100034868A
Authority
KR
South Korea
Prior art keywords
equation
document
information
title
string
Prior art date
Application number
KR1020080094076A
Other languages
English (en)
Other versions
KR101104753B1 (ko
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 KR20080094076A priority Critical patent/KR101104753B1/ko
Publication of KR20100034868A publication Critical patent/KR20100034868A/ko
Application granted granted Critical
Publication of KR101104753B1 publication Critical patent/KR101104753B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/313Selection or weighting of terms for indexing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)

Abstract

본 발명은 텍스트 파일 형식의 구조계산서로부터, 각 행에 따라 문자열 정보를 머리기호, 제목, 내용, 참고문헌으로 구분하여 임시 테이블에 순차적으로 저장하는 단계; 저장된 임시 테이블의 머리기호에 대한 정보를 이용하여, 각 제목이 문서의 트리구조에서 위치하는 계층정보를 부여하는 계층정보 부여단계; 계층정보와 임시 테이블에 저장된 정보들을 이용하여 XML 파일을 생성하는 XML 파일 생성단계;를 포함하는 구조계산서 텍스트 정보의 계층 구조 추출 방법을 제시함으로써, 토목분야의 대표적인 엔지니어링 문서라 할 수 있는 구조계산서의 비 구조화된 텍스트 문서정보를 트리 형태의 준 구조화된 XML 문서로 쉽게 변환할 수 있도록 한다.
토목, 구조계산서, 트리, 변환

Description

구조계산서 텍스트 정보의 계층 구조 추출 방법{EXTRACTION METHOD FOR HIERARCHICAL STRUCTURE IN TEXT CONTENTS OF STRUCTURAL CALCULATION DOCUMENT}
본 발명은 건설 정보 분야에 관한 것으로서, 상세하게는 건설 분야의 구조계산서 텍스트 정보에서 계층 구조를 추출하는 방법에 관한 것이다.
정보통신기술의 발전에 힘입어 건설산업에서도 많은 정보가 전자적으로 기록되고 건설 프로젝트 참여자 사이에서 공유 및 교환되고 있다.
전자적으로 기록된 정보는 크게 구조화된 정보(structured information), 준 구조화된 데이터(semi-structured information) 및 비 구조화된 정보(unstructured information)의 3가지 타입으로 나뉠 수 있다.
구조화된 정보란 정형화된 정보모델에 따라 기록된 정보를 말하는 것으로서 데이터베이스에 저장된 데이터나 Lee and Jeong(2006)의 연구와 같이 어떠한 표준화된 정보모델에 따라 생성된 3-D 기반의 교량모델과 같은 것이 이에 해당된다.
준 구조화된 정보란 정형화된 스키마는 없지만 데이터의 내용과 더불어 형식이나 의미를 지니는 부가적인 정보가 포함된 정보로서 웹문서나 스키마가 없는 XML 문서가 이에 속한다.
그리고 비 구조화된 정보란 특정한 형식이 없이 저장된 정보를 의미한다. 구조 및 수리계산서, 지반조사 보고서, 공사시방서 등 현재 건설 실무에서 전자적으로 기록되는 대부분의 문서들은 비 구조화된 정보형식에 속하며, 이들이 건설 프로젝트 수행과정에서 생산되는 정보의 상당부분을 차지하고 있다(Zhu et al., 2001; Caldas and Soibelman, 2003).
이와 같이 준 구조화 또는 비 구조화된 문서의 지식 정보를 효과적으로 재활용하기 위해 많은 연구들이 수행되어 왔는데, 건설분야에서는 문서의 분류 및 저장을 지원하기 위한 기법 개발에 초점을 두고 있다.
이와 같은 연구 사례로서 Caldas et al.(2002)과 Caldas and Soibelman(2003)는 CSI MasterFormat의 건설정보분류체계에 따라 문서를 분류하는 기법을 제시하였으며, McKechnie et al.(2001) 건설분야 문서의 서지정보기록을 지원하기 위한 기법을 제시하였고, Meziane and Rezgui(2003), Rezgui(2006)은 문서에서 색인 정보를 추출하고 건설분야 온톨로지와 맵핑하여 문서를 관리하는 방안을 제시하였다.
이와 같은 방법들의 특징은 건설 분야의 지식구조에 맞추어 잘 정의된 일종의 메타데이터체계를 문서의 검색에 활용한다는 것이다.
이는 한 프로젝트에서 생산되는 대량의 문서를 건설 산업의 지식 구조에 따라 분류하여 저장하고 추후 비슷한 상황에서 사용자가 문서를 검색하는데 큰 도움을 줄 수 있다.
그러나 이와 같은 연구들에서는 검색된 문서 내에서 특정 정보를 추출하거나 사용자가 문서를 효과적으로 탐색하는 것까지 고려되지는 않았다.
특히 Fidel and Green(2004) 및 Liu et al.(2006)이 지적한 바와 같이 엔지니어링 분야의 경우 동일한 특징을 가지는 여러 문서의 내용을 제공받기 보다는 여러 비슷한 문서에서 일부분(fragments)에 대한 정보를 필요로 하는 경우가 많다.
문서의 구조 분석은 세부적인 내용들에 대한 문서의 논리적 구성을 구분해 주며, 이는 문서 요약, 분류, 색인, 검색 등 많은 문서 정보 처리의 자동화 분야에 유용하게 활용될 수 있다(Wang et al., 2005).
또한 비 구조화된 문서보다 구조화된 또는 준 구조화된 문서가 문서의 정보를 추출하거나 탐색하는데 있어서 보다 많은 장점을 가질 수 있다(Adelberg, 1998).
일 예로 Soderland(1999)의 연구에서 나타난 바와 같은 비 구조화된 텍스트 정보에서 특정한 의미를 지는 정보를 추출하는 것 보다 준 구조화된 문서에서 정보를 추출하는 사례에서 기계의 학습효과가 보다 효율적일 수 있다.
또한 최근 문서 내에서 의미 있는 정보 추출을 위한 연구들이 수행되고 있는데, 대상이 문서는 이미 마크업(mark-up)이 되어 있는 준 구조화된 문서의 특성을 지니고 있다(Kosala et al., 2006; Liu et al., 2006).
따라서 비 구조화된 엔지니어링 문서의 정보를 준 구조화된 형태로 변환하는 경우 보다 정확한 정보 추출을 지원할 뿐만 아니라 사용자가 엔지니어링 문서를 보다 직관적으로 탐색할 수 있는 인터페이스 구성을 보다 용이하게 할 수 있다.
본 발명은 토목분야의 대표적인 엔지니어링 문서라 할 수 있는 구조계산서의 비 구조화된 텍스트 문서정보를 트리 형태의 준 구조화된 XML 문서로 변환하기 위한 방법을 제시하는 것을 그 목적으로 한다.
본 발명은 상술한 바와 같은 목적을 달성하기 위하여, 텍스트 파일 형식의 구조계산서로부터, 각 행에 따라 문자열 정보를 머리기호, 제목, 내용, 참고문헌으로 구분하여 임시 테이블에 순차적으로 저장하는 단계; 상기 저장된 임시 테이블의 머리기호에 대한 정보를 이용하여, 상기 각 제목이 문서의 트리구조에서 위치하는 계층정보를 부여하는 계층정보 부여단계; 상기 계층정보와 상기 임시 테이블에 저장된 정보들을 이용하여 XML 파일을 생성하는 XML 파일 생성단계;를 포함하는 구조계산서 텍스트 정보의 계층 구조 추출 방법을 제시한다.
상기 계층정보 부여단계는 상기 제목에 대한 머리기호의 존재여부를 판별하는 단계; 상기 제목 중 순수 제목에 대한 문자열이 상기 제목에 부합하는지 여부를 판별하는 단계;를 포함하는 것이 바람직하다.
상기 구조계산서 텍스트 문서는 순서를 가진 유한한 문자열 집합으로서 문자열 집합은 유한한 행(line)으로 구분되어 있으며, i번째 행의 문자열 집합 Si는 수학식 1을 이용하여 정의되는 것이 바람직하다.
상기 제목 문자열 hi는 수학식 2,3a,3b에 의해 정의되는 것이 바람직하다.
상기 제목을 나타낼 때 사용되는 미리 정의된 문자열 그룹 ID의 집합을 HSID라 하고, ∀ID, HSID ⊂ ∑+일 때, hsi=ø의 조건은 수학식 4에 의해 정의되는 것이 바람직하다.
문자열 Si내에서 j번 이상 출현하지 말아야하는 금칙 문자들의 집합을 Xj라 하고, xj ∈ Xj일 때, hci=ø의 조건은 수학식 5에 의해 정의되는 것이 바람직하다.
B0는 왼쪽 괄호를 표현하는 문자들의 집합으로 B0⊂HSID, Bc는 오른쪽 괄호를 표현하는 문자들의 집합, <a,b>은 서로 쌍을 이루는 동일한 종류의 괄호에 대한 집합으로 a∈B0, b∈Bc이라 정의하며, 제목의 끝을 나타내는 구분자의 집합 De={Bc,Ce}, Ce는 제목과 내용의 구분을 위해 사용되는 문자들의 집합으로서 Bc∩Ce=ø으로 정의할 때 hsi≠ø ∧ hci≠ø인 경우 l은 수학식 6에 의해 정의되는 것이 바람직하다.
상기 참조 문자열 ri은 수학식 7,8에 의해 정의되는 것이 바람직하다.
미리 정의된 참고문헌 이름을 나타내는 문자열을 원소로 가지는 집합을 RN이라 하고 임의의 문자열 집합 trni= sasa +1...sb, trni⊂(Si)*, 2≤a≤b≤n일 때 rni는 수학식 9에 의해 정의되는 것이 바람직하다.
미리 정의된 참고문헌 시작 구분자의 집합을 RS라 하고, 상기 rni≠ø인 경우 trsi= sα-β, β= min(δ), sα-β≠λ, 1≤λ≤a일때 rsi는 수학식 10과 같으며, 이때 rsi=ø ∧ rni≠ø인 경우 상기 문자열에서 참고문헌의 시작 위치 m+1=a로 정의되는 것이 바람직하다.
상기 rni≠ø인 경우 rpi= sb +1sb +2...sc라 하고, 미리 정의된 참고문헌의 끝을 나타내는 구분자의 집합을 RE라 할 때, c는 수학식 11에 의해 정의되는 것이 바람직하다.
상기 XML 파일 생성단계는 트리의 깊이우선(depth-first) 순서에 의해 수행되는 것이 바람직하다.
기준 머리기호 집합 BS = bs1,bs2,...bsn,...으로 순서를 가지고 있고, bsn은 문서에서 한번만 출현하고, 문서에서 임의의 줄 i에서 나타나는 BS에 해당되는 목차의 머리기호를 bsn i라 할 때 n은 i가 증가함에 따라 항상 증가하는 것으로 정의되는 것이 바람직하다.
하나의 상기 BS는 정해진 하나의 깊이에 매칭되어야 하며, 여러 개의 상기 BS가 정의되는 경우에 각 깊이는 순차적으로 증가하는 것으로 정의되는 것이 바람직하다.
기준 머리기호 집합으로 정의된 그룹을 BSDc라하고, 이때 Dc는 문서에서 BS의 원소가 문서에서 차지하는 계층을 나타낼 때, i번째 목차가 트리에서 차지하는 계층 Di는 수학식 12,13에 의해 정의되는 것이 바람직하다.
본 발명은 토목분야의 대표적인 엔지니어링 문서라 할 수 있는 구조계산서의 비 구조화된 텍스트 문서정보를 트리 형태의 준 구조화된 XML 문서로 변환하기 위한 방법을 제시한다.
토목분야에서 구조계산서는 어떠한 시설물을 설계하는 과정이 기록된 문서로서 공용기간이 긴 교량의 경우 유지관리시 지속적으로 참조되는 중요한 자료이므로, 본 발명에 의한 추출 방법은 구조물의 설계 및 시공단계뿐만 아니라, 유지관리 단계에서도 큰 의미를 가질 수 있다.
문서의 구조는 다양한 측면에서 정의될 수 있는데, 크게 문서 자체가 드러내는 구조와 텍스트 단락이 의미하는 바에 따른 구조로 구분될 수 있다.
도 1은 이와 같은 문서 구조의 구분에 대한 개념도를 나타낸 것이다.
다시 문서 자체에 대한 구조는 물리적 구조(physical structure), 논리적 구조(logical structure)로 나뉠 수 있다(Summers, 1998; Worring and Smeulders, 1999).
물리적 구조란 문서에서 텍스트, 도면, 테이블 등의 배치와 페이지(page)의 구성, 문자의 굵기와 같이 기하적인 특징을 의미하며, 논리적 구조란 문서의 작성자, 문서제목, 요약, 본문, 참고문헌과 같은 구성체계와 문서 작성자가 구분해 놓은 본문 내에서의 세부 제목(headings)과 내용들(contents)의 구조를 의미한다.
Wang et al.(2005)의 경우 문서의 구성 체계만을 논리 구조로 정의하고 의미적 구조(semantic structure)를 별도로 정의하였으며, 이를 다시 명시적 의미 구조(apparent semantic structure)와 내적인 의미 구조(latent semantic structure)로 구분하였다.
명시적 의미구조는 위에서 설명한 본문 내에서의 세부 제목과 내용들의 구조를 지칭하고 내적 의미 구조는 문서의 단락들이 내포하는 의미의 구분으로 규정하였다.
본 발명에서는 명시적 의미 구조에 따른 준 구조화된 문서로 변환하는 것에 초점을 두었다.
이미지화된 문서를 대상으로 명시적 의미 구조를 추출하는 과정은 이미지 내에서 각 텍스트 단락을 블록화하여 구분해내면서 물리적 특성들을 저장하고, 저장된 물리적 특성들과 미리 정의된 지식베이스(knowledge-base)를 이용하여 본문에 있는 내용들의 계층 구조를 분류하는 과정으로 진행된다(Summers, 1998; Altamura et al., 2001; Klink and Kieninger, 2001; Anjewierden, 2001).
의미적 구조를 구축하는 연구의 경우 대부분 내적 의미 구조를 추출하는 것에 초점이 맞추어져 있으며, 크게 두 가지 접근방법이 사용된다.
하나는 Adelberg(1998) 사례와 같이 GUI를 통해 수작업으로 문서를 분해하고 특정한 지식적 의미를 담고 있는 마크업을 사용자에 의해 수행하는 방법이 있으며, 다른 하나는 Salton et al. (1997)의 사례와 같이 용어의 출현 빈도(term frequency)를 벡터화하여 사용하는 방법이다.
Wang et al.(2005)의 연구에서는 명시적 의미 구조의 추출에서 본문 내용 중 제목에 사용된 머리기호와 미리 정의된 지식베이스를 활용하여 계층을 분류하는 방법이 사용되었다.
그러나 이와 같은 명시적 의미 구조의 추출에 사용되는 방법들은 본 발명에서 대상으로 하는 강거더교 구조계산서에 바로 적용될 수 없는 몇 가지 문제점을 가지고 있다.
이러한 문제점은 강거더교 구조계산서가 가지는 문서의 특성과 함께 다음에서 설명한다.
일반적인 엔지니어링 문서와 같이 강거더교 구조계산서에는 텍스트 정보 이외에도 도면이나 표가 함께 포함되어 있다.
문서 내의 도면을 대상으로 하는 Worring and Smeulders(1999)의 연구와 표를 대상으로 한 Embley et al.(2006), Kawanaka et al.(2007)의 연구에서 나타낸 바와 같이 문서 내의 도면과 표 내의 정보 추출과 관련한 연구는 문서의 구조를 분석하는 연구와 다른 관점에서 부가적인 방법을 필요로 한다.
따라서 본 발명에서는 텍스트 내용만을 문서의 구조를 분석하는 대상으로 이용한다.
또한 본 발명은 앞서 언급한 물리적 구조의 특성을 이용한 문서구조 추출 방 법을 완전히 대체하는 방법을 제시하기보다는 기존의 기법들이 강거더교 구조계산서를 대상으로 할 때 발생할 수 있는 문제점을 극복하는 보완적인 방법을 제시하는 것에 의미를 둔다.
실무에서 작성된 구조계산서의 특성을 분석하기 위해 국내 엔지니어링 회사로부터 협조를 받아 강교 상부구조에 대한 구조계산서 파일을 수집하였다.
회사마다 사용하는 프로그램이나 문서 작성형태가 다를 수 있음을 감안하여 대표적인 6개 엔지니어링 회사로부터 기 설계되었던 자료 22개의 문서를 분석하였다.
분석된 내용을 바탕으로 강 거더교 구조계산서가 가지는 구조적 특성을 요약하여 정리하면 다음과 같다.
강거더교 구조계산서의 본문은 일반적인 문서와 같이 크게 제목과 내용으로 구분할 수 있다.
문서에서 제목은 독자에게 해당 제목 이하에 나타나는 내용이 어떠한 분류에 속하는지에 대한 의미를 전달하기 위해 사용된다.
문서 내에서 정의된 제목들의 논리적 구조는 트리형태로 표현이 가능하다.
트리는 그래프의 한 종류로서 진입 경로를 가지지 않는 루트(root)라 불리는 하나의 정점을 가지는 유향 그래프이며, 트리에서 계층(level)은 root로부터 해당 노드까지의 경로의 개수를 의미한다.
일반적으로 구조계산서와 같이 긴 문서에서 작성자는 제목에 어떠한 기호를 사용하여 그 제목이 문서의 트리 구조에서 위치하는 계층을 독자에게 전달한다.
따라서 논리적 구조를 추출하기 위해서는 목차의 제목에 해당되는 내용을 식별하기 위해 사용되는 기호들이 가장 중요한 단서로 활용될 수 있다.
그러나 앞서 설명한 기존의 방법들은 본 발명의 대상으로 하는 강거더 구조계산서에 적용하기에 세 가지의 큰 문제점을 지니고 있다.
첫 번째 문제점은 하나의 문서 내에서 동일한 머리기호는 명시적 의미 구조에서 동일한 계층을 나타내는 것으로 간주된다는 것이다(Wang et al., 2005).
이러한 가정은 대부분의 일반 문서의 경우 통용이 가능하나 구조계산서의 경우 동일한 문서 내에서 사용된 기호라도 다른 계층을 의미하는 경우가 많으며, 각 문서를 작성하는 회사마다 서로 다른 기호를 사용하기 때문에 특정한 기호가 특정한 계층을 의미하는 것으로 볼 수 없다.
두 번째 문제점은 이미지화된 문서를 처리하는 경우 사용되는 지식베이스나 기계학습을 활용하는 방법들은 대부분 문서 포맷에 대한 특성에 초점이 맞추어져 있다.
그러나 대부분의 엔지니어링 실무에서는 구조계산서 작성을 위한 정형화된 문서 포맷에 대한 기준이 없기 때문에 다양한 회사에서 작성된 문서의 포맷을 명시적 의미 구조를 추출하는데 사용하기에는 한계가 있다.
마지막으로 구조계산서에서는 명시적 논리 구조의 하나로 볼 수 있는 많은 항목들이 물리적 포맷에 대한 분별성 없이 내용과 함께 한 줄에 나타나는 경우가 많다.
이러한 경우 문서의 포맷에 의해 처리하기보다는 문자열을 구성하는 규칙을 기반으로 문서를 분석하는 것이 보다 강거더교 구조계산서를 대상으로 적용하기에 적합할 수 있다.
XML이 가지고 있는 사용자 정의에 의한 마크업을 지원하는 특징과 플랫폼에 독립적이라는 장점을 가지고 있어 문서 정보뿐만 아니라 다양한 분야에서 이기종간의 정보 교환을 위해 여전히 널리 사용되고 있다.
XML 문서에서 마크업에 사용되는 요소는 요소의 이름(name), 요소에 할당되는 속성(attribute) 및 속성 값(value)과 요소의 내용(content)로 구성되며, 내용은 다시 여러 요소를 포함한 텍스트로 구성될 수 있다(Bray et al., 2006).
이에 따라 하위에 나타나는 요소는 상위의 자식요소로 구분되며, 이에 따라 트리 형태로 문서의 내용이 표현될 수 있다.
한국의 경우 건설산업의 원활한 정보 공유 및 교환을 위한 건설 CALS/EC 사업(건설교통부, 2003)의 일환으로 건설CALS/EC 전자문서 Pool(한국건설기술연구원, 2004)이 단체표준으로 제정되었다.
여기에는 구조계산서를 포함한 220종의 문서 구조에 관한 XML 스키마가 제시되어 있다.
본 발명에서 대상으로 하는 구조계산서의 경우 발주기관명, 문서작성기관명, 제출일과 같은 문서관리를 위한 마크업이 존재하며, 문서의 트리 구조를 나타내기 위한 요소로는 편, 장, 절 및 항의 4단계에 대한 마크업이 존재한다.
그러나 주어진 장과 절 위주의 마크업 방식에서는 문서 트리의 깊이를 한정적으로밖에 표현할 수 없는 단점을 지니고 이다.
따라서 본 발명에서는 문서의 목차가 나타날 수 있는 모든 계층 구조를 그대로 표현하는 것에 중점을 두었다.
구조계산서는 같은 교량 형식에서 동일한 설계방법이 적용된 경우 문서 구조는 그 패턴이 거의 같게 나타난다.
도 2는 강거더교 구조계산서 제목의 일부분을 사례로 나타난 것이다.
도 2에 나타난 바와 같이 수집된 문서를 통해 살펴본 구조계산서에서 제목으로 서술되는 것들은 ‘행위 이름’, ‘부위 이름’ 그리고 ‘변수 이름’으로 크게 3가지의 종류로 나눌 수 있다.
‘행위 이름’은 구조계산을 수행하는데 수반되는 세부 행위를 나타낸 것으로서 ‘슬래브 설계’, ‘주형 설계’, ‘이음부 설계’, ‘단면 검토’와 같은 것들이 포함되며, 주로 ‘부위 이름’과 함께 사용되거나 ‘부위 이름’ 하위에서 반복적으로 나타난다.
‘부위 이름’은 해당 구조물을 물리적으로 이루는 요소들이나 공간 또는 타입을 지칭하는 것으로서 ‘켄틸레버부’, ‘제 1 지간 중앙부’, ‘splice - 1’과 같은 요소들을 나타내며, 이들은 적어도 한번 이상 반복적으로 나타난다.
마지막으로 ‘변수 이름’은 액티비티를 수행하는데 있어 주어진 조건을 설명하거나 수행이후 최종적인 결과를 설명할 때 주로 나타나며, ‘교량제원’, ‘사용재료’, ‘고정하중’, ‘활하중’ 등이 이에 포함되고, 이들은 동일한 타입의 부위에 해당되는 경우 ‘부위 이름’ 이하에 반복적으로 나타난다.
이와 같은 현상은 본 발명에서 대상으로 하고 있는 강교를 대상으로 한 경우 모두 공통적으로 나타났다.
따라서 강교 구조계산서에 사용된 목차는 세부 텍스트 정보에 의미를 부여하는데 활용될 수 있는 것으로 판단된다.
즉, 동일한 단어인 길이라 할지라도 이것이 교량의 길이를 의미하는 것인지 몇 번째 거더의 길이를 의미하는 지를 구분하는 등 구조계산서의 목차정보 자체는 세부적인 텍스트 내용들이 어떠한 행위나 특정 부위에 속하는지에 대한 탐색에 실마리를 제공할 수 있다.
도 3은 텍스트 문서를 대상으로 준 구조화된 XML 문서를 생성하는 과정을 나타낸 것이다.
본 발명에서는 이미지화된 문서로부터 문자를 인식하는데 발생하는 에러를 배제하기 위해 실무에서 사용되는 문서 작성 프로그램에서 텍스트 파일로 저장된 문서를 입력파일로 사용한다.
도 3에 나타난 바와 같이 입력된 텍스트 파일은 크게 3단계를 거쳐 준 구조화된 XML 문서로 변환된다.
첫 번째는 수집된 강거더교 구조계산서로부터 추출된 문서모델에 따라 텍스트 파일의 각 행에 따라 문자열 정보가 임시 테이블에 머리기호, 제목, 내용, 참고문헌으로 구분되어 순차적으로 저장된다.
저장된 임시 테이블의 머리기호에 대한 정보를 이용하여 각 제목이 문서의 트리구조에서 위치하는 계층에 대한 정보가 부여되고 마지막으로 계층 정보와 임시 테이블에 저장된 정보들을 이용하여 XML 파일을 생성하게 된다.
이와 같은 과정에 사용되는 문서의 모델과 계층 구조의 규칙에 대한 정의는 후술한다.
이하에서는 강교 구조계산서의 텍스트 문서정보를 파싱(parsing)하기 위해 정의한 문서 모델에 대하여 설명한다.
먼저 몇 가지 표현방법을 다음과 같이 정의한다(Lopresti, 2000; Linz, 2005).
1) 문자열 집합 S = s1s2...sn로 유한한 순서를 가진 문자들의 집합을 의미하며, 여기서 sk∈∑로 1≤k≤n이고 ∑는 주어진 문서에서 다루는 공백을 포함한 모든 문자의 집합이다.
2) 문자 집합 이름 뒤에 상첨자로 표기된 *는 문자 집합의 멱집합(powerset)을 의미한다.(예: ∑*는 ∑의 멱집합(powerset)이다.)
3) 문자 집합 이름 뒤에 상첨자로 표기된 +는 문자 집합의 멱집합에서 빈 문자 λ을 제외한 집합을 의미한다.
4) nsk(S)은 문자열 집합 S에 포함된 문자 sk의 개수를 의미한다.
5) A ::= B에서 기호 ‘::=’은 전자(A)는 후자(B)로 표현됨을 의미한다.
6) 기호 ‘|’은 ‘또는’을 의미한다.
7) 기호 ‘|S|’은 문자열 S에 포함된 문자의 개수를 의미한다.
수집된 강교 구조계산서 분석을 통해 구조계산서의 텍스트 문서정보의 특성을 정의하면 다음과 같다.
강거더교 구조계산서의 텍스트 정보의 구성요소는 다음의 정의 1과 같이 정의될 수 있다.
정의 1. (components of text information) 구조계산서 텍스트 문서는 순서를 가진 유한한 문자열 집합으로서 문자열 집합은 유한한 행(line)으로 구분되어 있으며, i번째 행의 문자열 집합 Si는 다음과 같이 구성된다.
Si:: = hi|ci|hiciri|hir|ciri
여기서 hi는 제목에 대한 문자열 집합으로 hi = s1s2...sl, ci는 내용에 대한 문자열 집합으로 ci = sl +1sl +2...sm, ri는 참조에 대한 문자열 집합으로서 ri = sm+1sm+2...sn이며, 0≤l≤m≤n.
정의 1에 나타낸 바와 같이 텍스트 정보는 크게 제목, 내용, 참조로 구성되며, 이들이 나타나는 경우의 수는 5가지로서 각 줄이 제목이나 내용만으로 구성된 경우, 제목과 내용 및 참조가 동시에 출현하는 경우, 제목과 참조로 구성되는 경우, 마지막으로 내용과 참조로 구성되는 경우로 나눌 수 있다.
문서의 내용의 경우 다양한 양식의 배열이 존재하며, 이들 배열에 대한 규칙을 찾는다는 것은 매우 어려운 작업이다.
따라서 이들 구성요소를 식별하기 위해 입력된 텍스트 라인에서 제목과 참조를 식별할 수 있는 규칙을 정의하고 해당 규칙을 만족하지 않는 문자열인 경우 내용으로 분류할 수 있다.
제목과 참조를 식별하기 위한 규칙은 다음과 같이 각각 정의 2 및 정의 3을 통해 설명한다.
정의 1에서 정의된 제목에 대한 문자열은 다시 다음의 정의 2와 같이 구성된다.
정의 2. (components of headings) 정의 1에서 정의한 제목 문자열 hi는 다음과 같이 구성된다.
hi:: = hsihcihdi|hsihci
여기서 hsi는 제목을 표기하기 위해 사용된 문자열의 집합으로 hsi = s1s2...so, hsi ⊂ ∑+, hci는 순수 제목에 대한 문자열 집합으로 hci= so +1so +2...sp, hdi는 hci가 끝남을 나타내는 구분자(delimiter) 기호로서 hdi = sl 각각 의미하고, o와 p및 l의 관계는 다음과 같다.
(hsi≠ø ∧ hci≠ø) → 1≤o≤p≤l
(hsi≠ø ∨ hci≠ø) → o=p=l=0
정의 2에서 정의한 바와 같이 제목 문자열 hi≠ø이기 위한 필요충분조건은 hsi≠ø ∧ hci≠ø로 설정하였다. 따라서 드모르간 법칙에 의해 주어진 문자열에서 hsi=ø이거나 hci=ø인 경우 hi=ø으로 볼 수 있으며, 이를 제목 문자열의 존재 여부 판별에 사용할 수 있다.
hsi=ø인 조건과 hci=ø인 조건은 다음의 각각 정의 2a와 정의 2b와 같이 정의하였다.
정의 2a. (heading symbols) 제목을 나타낼 때 사용되는 미리 정의된 문자열 그룹 ID의 집합을 HSID라 하고, ∀ID, HSID ⊂ ∑+일 때, hsi=ø인 조건은 다음과 같다.
∀ID, hsi∈ HSID → hsi=ø(ID = 1,2,...)
정의 2b. (heading contents) 문자열 Si내에서 j번 이상 출현하지 말아야하는 금칙 문자들의 집합을 Xj라 하고, xj ∈ Xj일 때, hci=ø인 조건은 다음과 같다.
∀xj, ∃xj(n(hci)>j) → hci
정의 2a 및 정의 2b는 각각 제목에 대한 머리기호의 존재 여부를 판별하기 위한 조건과 순수 제목에 대한 문자열이 제목에 부합하는 지의 여부를 판별하기 위해 정의한 것이다.
1.2 또는 2.3과 같이 머리기호의 패턴과 비슷한 문자열이 맨 앞에 위치하는 경우에는 머리기호의 존재 여부만으로는 제목의 여부를 판단할 수 없다.
정의 2b는 이러한 경우를 위한 조건으로서 구조계산서에서 소수가 문자열의 맨 앞에 위치하는 경우 해당 줄에는 산술식과 관련한 식들이 뒤따라 나오는 것이 일반적인 특성을 정의한 것이다.
표 1과 표 2는 각각 수집된 문서 분석을 통해 5장의 응용을 위해 미리 정의한 머리기호에 대한 집합과 금칙문자에 대한 집합을 나타낸 것이다.
Figure 112008067396845-PAT00001
Figure 112008067396845-PAT00002
정의 2a와 정의 2b에 따라 제목 문자열의 존재의 여부를 판별하기 위해서는 분석대상의 문자열을 추출하여야 한다.
정의 1에 구분해 놓은 바와 같이 제목 문자열과 내용 또는 참조와 관련한 문자열이 공존하는 경우 제목 문자열로 추정할 수 있는 임시의 문자열의 영역은 다음 정의는 다음의 정의 2c를 이용하여 찾을 수 있다.
정의 2c. (location of heading end) B0는 왼쪽 괄호를 표현하는 문자들의 집합으로 B0⊂HSID, Bc는 오른쪽 괄호를 표현하는 문자들의 집합, <a,b>은 서로 쌍을 이루는 동일한 종류의 괄호에 대한 집합으로 a∈B0, b∈Bc이라 정의하며, 제목의 끝을 나타내는 구분자의 집합 De={Bc,Ce}, Ce는 제목과 내용의 구분을 위해 사용되는 문자들의 집합으로서 Bc∩Ce=ø으로 정의할 때 hsi≠ø ∧ hci≠ø인 경우 정의 2에서 l은 다음과 같다.
Figure 112008067396845-PAT00003
강거더교 구조계산서에서 참고문헌은 구조물을 설계하는 과정과 관련한 근거를 나타낸다. 수집된 구조계산서에서 참고문헌이 기입된 경우 각 줄의 마지막 부분에 위치하고 있었으며, 참고문헌의 특정 페이지 번호나 절번호가 함께 표기된다.
정의 1에서 정의된 참조에 대한 문자열의 구성과 각 구성 요소의 추출을 위한 정의는 다음과 같다.
정의 3. (component of reference) 정의 1에서 정의한 참조 문자열 ri은 다음과 같이 구성된다.
ri:: = rni|rsirnirpi|rnirpi
여기서 rsi는 참고문헌의 문자열 구분을 위해 사용된 구분자이며, rni은 참고문헌의 이름을 나타내는 문자열의 집합, 그리고 rpi는 참고문헌의 쪽 번호와 같이 부가적인 설명을 나타내는 문자열 집합이며, ri=ø이기 위한 조건은 다음과 같다.
rni≠ø ∧ rsi≠ø → ri≠ø
정의 3a. (reference name) 미리 정의된 참고문헌 이름을 나타내는 문자열을 원소로 가지는 집합을 RN이라 하고 임의의 문자열 집합 trni= sasa +1...sb, trni⊂(Si)*, 2≤a≤b≤n일 때 rni는 다음과 같다.
Figure 112008067396845-PAT00004
문서 작성자에 따라 참고문헌의 이름은 약자로 표기되는 경우가 발생한다.
따라서 정의 3a에서 미리 정의된 참고문헌 이름을 원소로 가지는 문자열의 집합 RN에는 이와 같은 약자에 대한 문자열을 원소로 포함하고 있어야 한다.
정의 3a에서 trni은 주어진 문자열 Si에서 공백(λ)을 포함하는 문자열로 정의하였는데 이는 문서작성자에 의한 띄어쓰기의 오류로 인한 참고문헌의 식별의 오류를 방지하기 위해서이다.
이와 같은 문제는 한글을 대상으로 한 문서에서 발생가능하다.
따라서 trni∈RN을 검토하는 과정에서 trni에는 공백을 제외한 문자열로 치환하여 RN의 각 원소와 비교하는 것이 보다 일관성을 유지할 수 있으며, 이에 따라 에 미리 정의하는 참고문헌의 이름 또한 공백을 제외한 문자열이어야 한다.
단어별로 띄어쓰기가 이루어지는 영문의 경우 이와 같은 처리방법은 의미가 없다.
정의 3b. (start location of reference) 미리 정의된 참고문헌 시작 구분자 의 집합을 RS라 하고, 정의 3a에서 rni≠ø인 경우 trsi= sα-β, β= min(δ), sα-β≠λ, 1≤λ≤a일때 rsi는 다음과 같으며, 이때 rsi=ø ∧ rni≠ø인 경우 정의 1에서 문자열에서 참고문헌의 시작 위치 m+1=a이다.
Figure 112008067396845-PAT00005
정의 3b는 참고문헌을 표기하기 전에 사용되는 구분자를 식별하여 텍스트 내용(content)에 불필요한 문자가 편입되는 것을 막기 위해 정의된 것이다.
수집된 문서에서 참고문헌 시작에 대한 구분자는 주로 ‘[’, ‘(’, ‘-’ 가 많이 사용되었으므로, 5장의 응용에서도 RS={[,(,-}를 참고문헌 시작 구분자를 인식하는 집합으로 사용하였다.
정의 3c. (reference page) rni≠ø인 경우 rpi= sb +1sb +2...sc라 하고, 미리 정의된 참고문헌의 끝을 나타내는 구분자의 집합을 RE라 할 때, c는 다음과 같다.
Figure 112008067396845-PAT00006
정의 3c는 참고문헌의 특정 페이지 또는 절을 의미하는 문자열을 추출하기 위해 정의한 것이다.
정의 1에 의해 주어진 문자열 Si에서 ri≠ø인 경우 마지막 문자인 sn이 참고문헌 문자열 끝을 나타내는 구분자인 경우 reference page에 해당되는 문자열은 정의 3c에 정의된 바와 같으며, 본 발명에서는 RE={],),.}를 이용하였다.
도 4는 앞서 설명한 정의s를 이용하여 입력된 텍스트 파일을 파싱하는 과정을 나타낸 것이다.
도 4에 나타낸 바와 같이 텍스트 파일을 줄 단위로 읽어 들이면서 각 줄의 문자열에서 제목과 참고문헌을 각각 정의 2와 정의 3을 이용하여 식별한다.
식별된 결과는 정의 1에 의해 본문 내용을 추정하는데 이용되며, 최종적으로 식별된 결과들이 임시 테이블에 저장된다.
실제 텍스트 파일에서는 빈 문자열만으로 이루어진 줄이 존재하기도 한다.
따라서 실제 프로그램으로 구현하는 경우 빈 문자열만으로 이루어진 줄의 경우 아래의 처리과정을 생략하고 다음 줄을 다시 읽어서 유효한 문자열들이 존재하는 경우에만 처리함으로써 임시 테이블에 저장되는 정보는 유효한 문자열들이 저장되도록 하는 것이 이후 계층에 대한 레이블을 부여하는 과정에 효율적으로 활용될 수 있다.
앞서 언급한 바와 같이 문서는 각 목차의 계층을 추정할 수 있도록 목차 앞 에 머리기호가 사용된다.
그러나 작성자 또는 회사마다 목차의 계층적인 위치를 추정할 수 있는 머리기호의 사용 패턴이 다르기 때문에 머리기호의 그룹을 하나의 계층으로 정의하여 목차의 계층을 추정하는 방법은 각 문서에 사용된 머리기호의 패턴에 의존적이게 된다.
따라서 보다 일반화된 방법으로 목차의 계층을 추정하기 위해서 본 발명에서는 목차 사이의 상대적인 계층차이로 해당 목차의 계층을 부여하는 방법을 제시하였다.
이와 같은 방안에 따라 목차로 인식된 행에 레벨을 부여하기 위한 규칙을 다음과 같이 정의하였다.
정의 4. (order of subtitles) 텍스트 문서에서 목차가 나타나는 순서는 트리의 깊이우선(depth-first) 순서와 일치한다.
트리의 각 노드의 순서를 선형적인 순서로 정렬할 때 두 가지의 방식이 있는데 도 5에 나타낸 바와 같이 깊이우선 방식과 너비우선(breadth-first) 방식이 그것이다.
도 5는 깊이 우선 방식과 너비 우선 방식에서 정렬되는 순서에 대한 개념도를 나타낸 것이다.
일반적으로 문서 각 제목이 나타나는 순서는 깊이우선 방식과 같다.
따라서 정의 4에 따라서 문서의 내용이 올바른 순서에 따라 기술되었다면 텍스트 정보를 순차적으로 읽어 들이면서 목차의 구조를 트리 형태로 변환하는 문제는 트리 구조에서 해당 목차가 위치하는 깊이를 추정하는 문제로 결부된다.
제목 간의 상대적인 깊이의 차이를 식별하기 위해서는 먼저 기준이 되는 머리기호와 이들이 트리에서 차지하는 깊이에 대한 기준이 필요하다.
가장 간단하게는 문서에서 처음 인식된 머리기호 그룹을 기준으로 할 수 있으며, 문서에서 계층이 변화되지 않는 특정 머리기호와 해당 깊이를 사용자가 직접 정의할 수도 있다.
단, 기준이 되는 목차에 사용되는 머리기호는 다음과 같은 특성을 지니고 있어야 한다.
정의 5. (base-symbol group) 기준 머리기호 집합 BS = bs1,bs2,...bsn,...으로 순서를 가지고 있어야 하며, bsn은 문서에서 한번만 출현하고, 문서에서 임의의 줄 i에서 나타나는 BS에 해당되는 목차의 머리기호를 bsn i라 할 때 n은 i가 증가함에 따라 항상 증가한다.
정의 5a. (depth of base-symbol group) 하나의 BS는 정해진 하나의 깊이에 매칭되어야 하며, 여러 개의 BS가 정의되는 경우에 각 깊이는 순차적으로 증가되어야 한다.
위의 정의 5에 따라 기준 머리기호 집합으로 사용될 수 있는 머리기호 그룹을 표 1에서 찾는다면 ID가 1부터 44까지가 해당된다.
그러나 구조계산서를 포함한 보통의 문서에서는 ID가 1부터 8까지에 해당되는 머리기호들이 문서에서 단 한번만 출현하는 조건을 만족한다.
이와 같이 정의된 기준 머리기호 그룹이 정해지면 정의 4를 이용하여 문서에서 순차적으로 나타나는 제목들에 대한 계층을 이전에 정의되었던 계층과 비교하여 상대적으로 정의할 수 있다.
이에 대한 규칙은 다음과 같다.
정의 6. (depth of headings) 기준 머리기호 집합으로 정의된 그룹을 BSDc라하고, 이때 Dc는 문서에서 BS의 원소가 문서에서 차지하는 계층을 나타낼 때, i번째 목차가 트리에서 차지하는 계층 Di는 다음과 같다.
Figure 112008067396845-PAT00007
여기서 g(hsi)는 머리기호 hsi를 입력할 때 표 1에 따른 그룹 ID을 변환하는 함수이며, j=i-1로 이전 제목을 의미하고, k=max(K)로 K={y|1≤y≤j,g(hsy)=g(hsi)}이고 만약 K=ø이면 k=0이며, E(j,k)는 수학식 13과 같다.
Figure 112008067396845-PAT00008
여기서 lh는 기준 계층 그룹 중 계층이 가장 큰 것을 나타내는 기준 그룹의 식별번호를 의미하고, e=max(L)로서 L={z|1≤z≤j,g(hsz)∈BSdc}, begin은 순서를 가지는 머리기호 그룹들에서 제일 처음에 나타나는 머리기호의 집합을 의미한다.
도 6은 수학식 12를 이용해 각 제목이 문서의 트리 구조로 변환되는 하나의 예를 나타낸 것이다.
도 6에 나타낸 바와 같이 수학식 12에서 Dj+2이 되는 경우는 기준이 되는 계층들 사이에 다른 머리기호가 나타나는 경우를 나타낸다.
본 발명에서는 이러한 경우 해당 줄의 계층을 이전 계층의 +2만큼 증가시키고 실제 트리구조로 문서를 변환할 때에 가상의 노드를 ‘부모이름_add'로 하여 새로이 생성함으로써 주어진 기준 계층에 대한 일관성을 유지할 수 있도록 하였다.
상기한 방법에 따라 앞서 설명한 파싱된 텍스트 정보를 보관하는 임시 테이블의 제목들이 트리 구조의 어느 계층이 할당되는지에 대한 분류하는 과정은 도 7과 같다.
도 8 내지 10은 본 발명의 실시예에 관한 화면을 캡쳐한 것으로서, 도 8은 입력되는 구조계산서 텍스트 문서의 예(엑셀 프로그램에서 텍스트 문서로 저장된 상태), 도 9는 문서 변환 모듈 동작의 예, 도 10은 모듈을 통해 변환된 XML 문서의 예를 나타낸 것이다.
이상은 본 발명에 의해 구현될 수 있는 바람직한 실시예의 일부에 관하여 설명한 것에 불과하므로, 주지된 바와 같이 본 발명의 범위는 위의 실시예에 한정되어 해석되어서는 안 될 것이며, 위에서 설명된 본 발명의 기술적 사상과 그 근본을 함께 하는 기술적 사상은 모두 본 발명의 범위에 포함된다고 할 것이다.
도 1 내지 10은 본 발명에 의한 추출 방법의 실시예를 설명하기 위한 도면으로서,
도 1은 문서 구조의 구분에 대한 개념도.
도 2는 강거더교 구조계산서 제목의 일부분을 나타낸 도표.
도 3은 텍스트 문서를 대상으로 준 구조화된 XML 문서를 생성하는 과정을 나타낸 블록도.
도 4는 정의들을 이용하여 입력된 텍스트 파일을 파싱하는 과정을 나타낸 블록도.
도 5는 깊이 우선 방식과 너비 우선 방식에서 정렬되는 순서에 대한 개념도.
도 6은 수학식 12를 이용해 각 제목이 문서의 트리 구조로 변환되는 예를 나타낸 개념도.
도 7은 파싱된 텍스트 정보를 보관하는 임시 테이블의 제목들이 트리 구조의 어느 계층이 할당되는지에 대한 분류하는 과정의 블록도.
도 8 내지 10은 본 발명의 실시예에 관한 화면을 캡쳐한 것으로서,
도 8은 입력되는 구조계산서 텍스트 문서 화면(엑셀 프로그램에서 텍스트 문서로 저장된 상태).
도 9는 문서 변환 모듈 동작 화면.
도 10은 모듈을 통해 변환된 XML 문서 화면.

Claims (15)

  1. 텍스트 파일 형식의 구조계산서로부터, 각 행에 따라 문자열 정보를 머리기호, 제목, 내용, 참고문헌으로 구분하여 임시 테이블에 순차적으로 저장하는 단계;
    상기 저장된 임시 테이블의 머리기호에 대한 정보를 이용하여, 상기 각 제목이 문서의 트리구조에서 위치하는 계층정보를 부여하는 계층정보 부여단계;
    상기 계층정보와 상기 임시 테이블에 저장된 정보들을 이용하여 XML 파일을 생성하는 XML 파일 생성단계;를
    포함하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
  2. 제1항에 있어서,
    상기 계층정보 부여단계는
    상기 제목에 대한 머리기호의 존재여부를 판별하는 단계;
    상기 제목 중 순수 제목에 대한 문자열이 상기 제목에 부합하는지 여부를 판별하는 단계;를
    포함하는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
  3. 제2항에 있어서,
    상기 구조계산서 텍스트 문서는 순서를 가진 유한한 문자열 집합으로서 문자 열 집합은 유한한 행(line)으로 구분되어 있으며, i번째 행의 문자열 집합 Si는 수학식 1을 이용하여 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
    [수학식 1]
    Si:: = hi|ci|hiciri|hir|ciri
    (여기서, hi는 제목에 대한 문자열 집합으로 hi = s1s2...sl, ci는 내용에 대한 문자열 집합으로 ci = sl +1sl +2...sm, ri는 참조에 대한 문자열 집합으로서 ri = sm+1sm+2...sn이며, 0≤l≤m≤n.)
  4. 제3항에 있어서,
    상기 제목 문자열 hi는 수학식 2,3a,3b에 의해 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
    [수학식 2]
    hi:: = hsihcihdi|hsihci
    (여기서, hsi는 제목을 표기하기 위해 사용된 문자열의 집합으로 hsi = s1s2...so, hsi ⊂ ∑+, hci는 순수 제목에 대한 문자열 집합으로 hci= so+1so+2...sp, hdi는 hci가 끝남을 나타내는 구분자(delimiter) 기호로서 hdi = sl 각각 의미하고, o와 p및 l의 관계는 수학식 3a,3b와 같다.)
    [수학식 3a]
    (hsi≠ø ∧ hci≠ø) → 1≤o≤p≤l
    [수학식 3b]
    (hsi≠ø ∨ hci≠ø) → o=p=l=0
  5. 제4항에 있어서,
    상기 제목을 나타낼 때 사용되는 미리 정의된 문자열 그룹 ID의 집합을 HSID라 하고, ∀ID, HSID ⊂ ∑+일 때, hsi=ø의 조건은 수학식 4에 의해 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
    [수학식 4]
    ∀ID, hsi∈ HSID → hsi=ø(ID = 1,2,...)
  6. 제5항에 있어서,
    상기 문자열 Si내에서 j번 이상 출현하지 말아야하는 금칙 문자들의 집합을 Xj라 하고, xj ∈ Xj일 때, hci=ø의 조건은 수학식 5에 의해 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
    [수학식 5]
    ∀xj, ∃xj(n(hci)>j) → hci
  7. 제6항에 있어서,
    B0는 왼쪽 괄호를 표현하는 문자들의 집합으로 B0⊂HSID, Bc는 오른쪽 괄호를 표현하는 문자들의 집합, <a,b>은 서로 쌍을 이루는 동일한 종류의 괄호에 대한 집합으로 a∈B0, b∈Bc이라 정의하며, 제목의 끝을 나타내는 구분자의 집합 De={Bc,Ce}, Ce는 제목과 내용의 구분을 위해 사용되는 문자들의 집합으로서 Bc∩Ce=ø으로 정의할 때 hsi≠ø ∧ hci≠ø인 경우 l은 수학식 6에 의해 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
    [수학식 6]
    Figure 112008067396845-PAT00009
  8. 제7항에 있어서,
    상기 참조 문자열 ri은 수학식 7,8에 의해 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
    [수학식 7]
    ri:: = rni|rsirnirpi|rnirpi
    (여기서, rsi는 참고문헌의 문자열 구분을 위해 사용된 구분자이며, rni은 참고문헌의 이름을 나타내는 문자열의 집합, 그리고 rpi는 참고문헌의 쪽 번호와 같이 부가적인 설명을 나타내는 문자열 집합이며, ri=ø이기 위한 조건은 수학식 8과 같다.)
    [수학식 8]
    rni≠ø ∧ rsi≠ø → ri≠ø
  9. 제8항에 있어서,
    상기 미리 정의된 참고문헌 이름을 나타내는 문자열을 원소로 가지는 집합을 RN이라 하고 임의의 문자열 집합 trni= sasa+1...sb, trni⊂(Si)*, 2≤a≤b≤n일 때 rni는 수학식 9에 의해 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계 층 구조 추출 방법.
    [수학식 9]
    Figure 112008067396845-PAT00010
  10. 제9항에 있어서,
    상기 미리 정의된 참고문헌 시작 구분자의 집합을 RS라 하고, 상기 rni≠ø인 경우 trsi= sα-β, β= min(δ), sα-β≠λ, 1≤λ≤a일때 rsi는 수학식 10과 같으며, 이때 rsi=ø ∧ rni≠ø인 경우 상기 문자열에서 참고문헌의 시작 위치 m+1=a로 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
    [수학식 10]
    Figure 112008067396845-PAT00011
  11. 제10항에 있어서,
    상기 rni≠ø인 경우 rpi= sb+1sb+2...sc라 하고, 미리 정의된 참고문헌의 끝을 나타내는 구분자의 집합을 RE라 할 때, c는 수학식 11에 의해 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
    [수학식 11]
    Figure 112008067396845-PAT00012
  12. 제11항에 있어서,
    상기 XML 파일 생성단계는
    트리의 깊이우선(depth-first) 순서에 의해 수행되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
  13. 제12항에 있어서,
    기준 머리기호 집합 BS = bs1,bs2,...bsn,...으로 순서를 가지고 있고, bsn은 문서에서 한번만 출현하고, 문서에서 임의의 줄 i에서 나타나는 BS에 해당되는 목차의 머리기호를 bsn i라 할 때 n은 i가 증가함에 따라 항상 증가하는 것으로 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
  14. 제13항에 있어서,
    하나의 상기 BS는 정해진 하나의 깊이에 매칭되어야 하며, 여러 개의 상기 BS가 정의되는 경우에 각 깊이는 순차적으로 증가하는 것으로 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
  15. 제14항에 있어서,
    기준 머리기호 집합으로 정의된 그룹을 BSDc라하고, 이때 Dc는 문서에서 BS의 원소가 문서에서 차지하는 계층을 나타낼 때, i번째 목차가 트리에서 차지하는 계층 Di는 수학식 12,13에 의해 정의되는 것을 특징으로 하는 구조계산서 텍스트 정보의 계층 구조 추출 방법.
    [수학식 12]
    Figure 112008067396845-PAT00013
    (여기서, g(hsi)는 머리기호 hsi를 입력할 때 그룹 ID을 변환하는 함수이며, j=i-1로 이전 제목을 의미하고, k=max(K)로 K={y|1≤y≤j,g(hsy)=g(hsi)}이고 만약 K=ø이면 k=0이며, E(j,k)는 수학식 13과 같다.)
    [수학식 13]
    Figure 112008067396845-PAT00014
    (여기서, lh는 기준 계층 그룹 중 계층이 가장 큰 것을 나타내는 기준 그룹의 식별번호를 의미하고, e=max(L)로서 L={z|1≤z≤j,g(hsz)∈BSdc}, begin은 순서를 가지는 머리기호 그룹들에서 제일 처음에 나타나는 머리기호의 집합을 의미한다.)
KR20080094076A 2008-09-25 2008-09-25 구조계산서 텍스트 정보의 계층 구조 추출 방법 KR101104753B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20080094076A KR101104753B1 (ko) 2008-09-25 2008-09-25 구조계산서 텍스트 정보의 계층 구조 추출 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20080094076A KR101104753B1 (ko) 2008-09-25 2008-09-25 구조계산서 텍스트 정보의 계층 구조 추출 방법

Publications (2)

Publication Number Publication Date
KR20100034868A true KR20100034868A (ko) 2010-04-02
KR101104753B1 KR101104753B1 (ko) 2012-01-11

Family

ID=42212893

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20080094076A KR101104753B1 (ko) 2008-09-25 2008-09-25 구조계산서 텍스트 정보의 계층 구조 추출 방법

Country Status (1)

Country Link
KR (1) KR101104753B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101499571B1 (ko) * 2014-04-08 2015-03-10 숭실대학교산학협력단 일반문서의 자동계층 분류를 통한 의미적 문서로의 변환 방법, 이를 수행하기 위한 기록 매체 및 장치
KR101591324B1 (ko) * 2015-11-20 2016-02-03 (주)다봄소프트 데이터의 계층관계 추출시스템 및 그 방법
CN110781542A (zh) * 2019-10-10 2020-02-11 中冶京诚工程技术有限公司 Bim模型数据处理方法和装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101499571B1 (ko) * 2014-04-08 2015-03-10 숭실대학교산학협력단 일반문서의 자동계층 분류를 통한 의미적 문서로의 변환 방법, 이를 수행하기 위한 기록 매체 및 장치
KR101591324B1 (ko) * 2015-11-20 2016-02-03 (주)다봄소프트 데이터의 계층관계 추출시스템 및 그 방법
CN110781542A (zh) * 2019-10-10 2020-02-11 中冶京诚工程技术有限公司 Bim模型数据处理方法和装置
CN110781542B (zh) * 2019-10-10 2023-12-01 中冶京诚工程技术有限公司 Bim模型数据处理方法和装置

Also Published As

Publication number Publication date
KR101104753B1 (ko) 2012-01-11

Similar Documents

Publication Publication Date Title
US8356045B2 (en) Method to identify common structures in formatted text documents
Constantin et al. The document components ontology (DoCO)
WO2014169334A1 (en) Methods and systems for improved document comparison
CN106502991B (zh) 出版物处理方法和装置
CN112231494B (zh) 信息抽取方法、装置、电子设备及存储介质
Hong et al. Information extraction for search engines using fast heuristic techniques
CN114239588A (zh) 文章处理方法、装置、电子设备及介质
Betti et al. Expert concept-modeling ground truth construction for word embeddings evaluation in concept-focused domains
KR101104753B1 (ko) 구조계산서 텍스트 정보의 계층 구조 추출 방법
CN115658993B (zh) 一种网页的核心内容的智能化抽取方法及系统
CN117390329A (zh) 网页标注方法、装置及设备
JP2014102625A (ja) 情報検索システム、プログラム、および方法
Klampfl et al. Reconstructing the logical structure of a scientific publication using machine learning
JP5679400B2 (ja) カテゴリ主題語句抽出装置及び階層的タグ付与装置及び方法及びプログラム及びコンピュータ読み取り可能な記録媒体
CN115221868A (zh) 一种需求条目分割方法
KR101004141B1 (ko) 텍스트 파일의 xsd변환과 스키마 매칭을 통한 구조계산서 검사방법
Zhang et al. A tag recommendation system based on contents
Suriyachay et al. Thai named entity tagged corpus annotation scheme and self verification
Lim et al. Generalized and lightweight algorithms for automated web forum content extraction
Rastan Towards generic framework for tabular data extraction and management in documents
Zhou et al. Efficient web page main text extraction towards online news analysis
Yu et al. A category-driven approach to deriving domain specific subsets of Wikipedia
De Oliveira Santarosa Martins Metadata Extraction and Digital News Preservation
Zhang et al. A Semantic Tag Stock For Content-oriented Image Annotation
JP2005018811A (ja) 文字列検索装置

Legal Events

Date Code Title Description
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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20141223

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151224

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161227

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20171221

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190102

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 9