KR100544978B1 - 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보추출방법 - Google Patents
랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보추출방법 Download PDFInfo
- Publication number
- KR100544978B1 KR100544978B1 KR20030078055A KR20030078055A KR100544978B1 KR 100544978 B1 KR100544978 B1 KR 100544978B1 KR 20030078055 A KR20030078055 A KR 20030078055A KR 20030078055 A KR20030078055 A KR 20030078055A KR 100544978 B1 KR100544978 B1 KR 100544978B1
- Authority
- KR
- South Korea
- Prior art keywords
- wrapper
- biological information
- information
- attribute
- template
- Prior art date
Links
Images
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
Abstract
본 발명은 네트워크상의 생물정보에 접근하고 이의 분석/가공을 위한 기본 정보 생성을 위해, 다양한 형태와 방식으로 표현되는 생물정보 데이터베이스를 대상으로 보다 안정적이고 효과적으로 생물정보를 추출할 수 있도록 하는 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법에 관한 것이다.
본 발명은 대상 생물정보의 구조 및 그 내재된 시멘틱을 선언적으로 기술하여 랩퍼를 명세하는 단계와, 랩퍼 명세로부터 대상 생물정보에 대한 구조 및 연산을 파싱하여 실제 랩퍼를 생성하는 단계와, 생성된 랩퍼를 실행하여 네트워크상의 대상 생물정보를 추출하고 그 누적되는 생물정보를 변형하여 통합 메타 모델을 구축하는 단계를 포함하여 이루어진다.
바이오인포매틱스, 생물정보 데이터베이스, 랩퍼 명세언어, HTML/XML, 생물정보 통합시스템, 랩퍼 템플릿, 모델 템플릿
Description
도 1a는 본 발명에 따른 네트워크상의 생물정보 통합 시스템에 대한 전체적인 구성도.
도 1b는 본 발명에 따른 생물정보 통합 시스템의 내부모듈 관련도.
도 2는 본 발명에 따른 생물정보 DB의 랩퍼 명세 언어 예시도.
도 3은 본 발명에 따른 랩퍼 명세 언어의 처리 과정에 대한 흐름도.
도 4는 본 발명에 따른 명세 언어에서 영역노드 처리 과정에 대한 흐름도.
도 5는 본 발명에 따른 생물정보 속성 처리 과정에 대한 흐름도.
도 6은 본 발명에 따른 링크 명세 처리 과정에 대한 흐름도.
도 7은 본 발명에 따른 연산 명세 처리 과정에 대한 흐름도.
<도면의 주요부분에 대한 부호의 설명>
101: 사용자 단말 102: 생물정보 통합시스템
104: 통합 모델 105: 랩퍼
107: 생물정보 검색시스템 108: 생물정보 데이터베이스
109: 랩퍼 명세언어 110: 공용 라이브러리
111: 랩퍼 명세언어 파싱모듈 112: 스키마 연동모듈
113: 랩퍼정보 생성모듈 114: 랩퍼 카다로그
115: 랩퍼 모델 정보 DB
본 발명은 랩퍼 구조 기반의 데이터베이스 통합에 요구되는 랩퍼 생성에 관한 것이며, 보다 상세히는 네트워크상의 생물정보 데이터 소스와 검색 서비스들로부터 관련 정보를 시멘틱(Semantic)에 따라 선언적으로 정의하고 안정적으로 습득하기 위한 랩퍼 명세언어에 기반한 반구조화된 생물정보 추출 방법에 관한 것이다.
최근 인터넷이 일반화되고 이를 사용한 정보공유에 대한 인식의 변화로 인해, 매우 많은 생물정보 데이터베이스와 유틸리티들이 네트워크 상에 존재하게 되었고 현재의 거의 모든 유형의 정보가 네트워크를 통해 공개되고 있다.
하지만, 정보 네트워크상에는 개별 사용자가 파악하기에는 엄청난 수의 유효 정보소스가 존재하고 있으며, 또한 유효 정보의 증가에 따라 이러한 정보를 관리하고 액세스하며 정보를 제공하기 위한 소프트웨어 유틸리티 및 관련 방법들 역시 그만큼 증가하고 있다.
이로 인하여 대부분의 사용자들은 그들이 찾고자 하는 정보를 찾을 수 없고, 전문적인 사용자들조차도 적절한 정보 소스를 검색하는 데에 많은 시간과 노력을 들여야 한다. 즉, 사용자는 어떤 정보가 어떤 소스에 존재하며 어떠한 도구를 사용 하여 검색해야 할 것인가에 대한 문제에 직면하게 된다.
한편, 대부분의 생물정보는 플랫파일 형태와 TCP/IP를 통한 접근 유틸리티를 통해 서비스되고 있으며, 이들은 대부분 인터넷을 통한 HTML(hypertext markup language) 형식의 서비스로 제공되고 있다.
하지만, 이와 같이 HTML 형식으로 제공되는 생물정보는 단지 정보의 표현 형식일 뿐 생물정보의 구조나 의미를 표현하고 있지 못하고 있으며, 현 시점에서 구조나 의미를 자동으로 표현해주는 마크업 언어는 존재하지 않는다. 따라서, 생물정보의 의미적 변경과 무관한 정보표시 측면의 색, 위치 등의 변경, 파싱 트리의 구조 변경 등에 대하여 안정적으로 정보를 정의할 수 없게 되는 등 목적정보의 추출 및 평가에 있어 어려움이 있었다.
본 발명은 상술한 종래의 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 생물정보의 구조, 의미적인 연관성, 기능, 질의를 충분히 명세할 수 있고, 그 생물정보 명세를 시멘틱에 따라 선언적으로 기술하여 그 작성이 충분히 용이하고 유지보수의 편리성을 제공하며, 생물정보 서비스의 잦은 변경에도 안정적으로 데이터를 추출할 수 있도록 하는 랩퍼 명세언어에 기반한 반구조화된 생물정보 추출 방법을 제공하는데 있다.
또한, 본 발명의 목적은 미리 정의된 문법 및 규정된 표현식을 통해 다양한 생물정보 소스간의 참조를 수용하여 다양한 특징을 선언적으로 결합함으로써 생물정보들간의 통합 및 의미적인 해석을 용이하게 하며, 추출된 정보들을 다른 분석을 위한 1차 정보로 사용할 수 있도록 충분한 확장성을 지원하는 랩퍼 명세언어에 기반한 반구조화된 생물정보 추출 방법을 제공하는데 있다.
상기 본 발명의 목적을 달성하기 위한 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법은, 대상 생물정보의 구조 및 그 내재된 시멘틱을 선언적으로 기술하여 랩퍼를 명세하는 단계; 상기 랩퍼 명세로부터 대상 생물정보에 대한 구조 및 연산을 파싱하여 실제 랩퍼를 생성하는 단계; 및 상기 생성된 랩퍼를 실행하여 네트워크상의 대상 생물정보를 추출하고, 그 누적되는 생물정보를 변형하여 통합 메타 모델을 구축하는 단계;를 포함하는 것을 특징으로 한다.
이하, 본 발명에 따른 실시예를 첨부한 도면을 참조하여 상세히 설명하기로 한다.
도 1a는 본 발명에 따른 네트워크상의 생물정보 통합시스템에 대한 전체적인 구성도이고, 도 1b는 생물정보 통합 시스템의 내부모듈 관련도이다.
도 1a에서, 사용자가 단일 혹은 다수의 클라이언트 단말(101)을 통해 질의를 요청하면, 그 질의는 생물정보 통합 시스템(102)에 의해 파싱된다. 그리고, 파싱된 요구는 로컬 서버(103)내의 랩퍼(105)에 의해 수행될 연산들로 변환된 후, 이에 따라 네트워크를 통해 원격지 서버(106)의 대상 생물정보 검색 시스템(107) 및 생물정보 데이터베이스(108)에 접근하게 된다.
여기에서, 상기 랩퍼(105)는 랩퍼 명세 언어(이하, 도 2를 참조)를 사용하여 선언하며 이를 컴파일하여 얻어진다. 이러한 랩퍼(105)는 그 명세에 따라 대상 생 물정보 데이터베이스(108)에 대한 구조 및 타 생물정보와의 관련성 정보를 인식하고, 대상 생물정보검색 시스템(107)이 제공하는 모든 연산을 파악한다. 이를 기반으로, 상기 랩퍼(105)는 대상 생물정보에게 요구된 각종 정보 추출 및 이에 대한 각종 메타 정보들을 제공하는 역할을 수행한다.
한편, 도 1b를 참조하면, 각 랩퍼(105)는 그 명세 언어의 파싱 과정(111)을 거쳐 얻어진다. 이러한 랩퍼(105)의 실질적인 역할은 미리 정의된 공용 라이브러리(110)의 호출/파라미터 바인딩 등을 통해, 실제 생물정보에 접근하고 이를 해석한 후 정보를 제공하는 것이다.
랩퍼 명세 언어를 파싱하는 과정(111)에 있어서, 랩퍼 정보 생성모듈(113)은 명세 언어(109)로부터 대상 생물정보 데이터베이스(108)의 구조, 타 생물정보와의 관련성 정보, 각종 연산 정보 등을 추출하여 통합 모델(104)내의 랩퍼 모델 정보(115)에 누적한다. 그리고, 생성된 랩퍼(105)는 이 정보에 근거하여, 그 수집된 생물정보를 해석하고 통합 생물정보로 변환하게 된다.
또한, 스키마 연동 모듈(112)은 정의될 랩퍼에 대한 운용 정보들을 랩퍼 카타로그(114)에 저장한다. 이러한 랩퍼 카타로그(114)에는 개별 랩퍼를 구분하기 위한 논리적인 이름, 버전, 패키지 이름 등이 유지된다.
통합모델(104)에는 랩퍼 자신과 랩퍼를 통해 얻을 수 있는 정보에 대한 모든 시멘틱(semantic)이 포함된다. 이들은 랩퍼를 통해 추출된 정보에 대한 2차 가공 혹은 타 생물정보 데이터베이스와의 통합 분석에 사용된다.
한편, 도 2는 네트워크상의 생물정보를 인식하고 해석할 랩퍼 명세 언어에 대한 예시도이다.
랩퍼 명세 언어(201)는 현존하는 생물정보의 구조 및 내재된 시멘틱을 충분히 수용하고, 선언적으로 기술할 수 있도록 하는 것을 목적으로 한다.
도 2를 참조하면, 대상 생물정보는 생물정보 서비스를 제공하는 서버 명(210), 서비스하는 URL(211), 및 해당 생물정보의 별명(212)을 헤더로 갖는다. 이들은 HTML 형식과 플랫파일 형식이 혼재한 반 구조화된 형태로 서비스되고 있다. 1차적으로 모든 생물정보는 문서 객체 모델(DOM, Document Object Model)에 따라 파싱 트리로 인식되는데, 파싱 트리에서 정보를 효율적으로 추출하기 위해 특정 태그(혹은 데이터 자체)를 영역으로 지정할 수 있다. 예를 들면, 도 2에서 영역 'contents'(214)는 "LOCUS"로 시작하는 ASCII 텍스트 데이터를 포함하고 있는 태그를 영역으로 지칭하고 있다. 이때, WHERE 절(215)은 이러한 조건을 명시하기 위한 것으로, 대상 정보를 파싱 트리의 루트로부터 절대적인 경로로 지정하거나 혹은 개별 태그를 정규 표현식의 일부로 사용하여 지정하는 방식과 달리, 파싱 트리의 구조 혹은 표시 방법의 변경에 보다 안정적이다.
그리고, 각 생물정보 내 정보 필드(205)는 속성(attribute)절(216)로 명시되며, 속성명(예; 'locus')과 속성값으로 구성된다. 속성값은 대상 생물정보로부터 유도된 파싱 트리 혹은 정규식의 패턴(217)에 실제 데이터베이스를 적용하여 추출된 결과가 된다. 이때, 생물정보가 가진 시멘틱을 충분히 명세하고 추출하도록 하기 위해, 파싱 트리의 경로를 지정하는 .(dot), ->, -/> 연산자, 값 추출을 위한 src, txt, rtxt연산자, 배열을 지정하는 [ ] 연산자, 중첩 정보(206, 207)를 명시 하는 ( ) 연산자, 각종 정규식과 관련된 ^, $, ?, *, =~ 등의 연산자 등을 사용하여 정의할 수 있다.
또한, 타 생물정보로의 연관성을 명시하기 위한 참조(Link)절(202)을 기술할 수 있으며, 랩퍼는 이를 통해 타 생물정보로의 접근을 허용한다. 이때, 참조는 추가로 타 생물정보 접근에 사용할 유일한 키 값(203)과 함께 정의된다. 명세 언어에서 참조절(218)은 대상 생물정보의 별명과 접근시 사용할 기본 키의 명칭을 나타내는 TARGET 절(219), 그리고 실제 키 값을 추출하기 위해, 참조를 정의한 속성명과 추출 패턴을 정의하는 EXTRACT절(220)로 이루어진다. 이를 통해, 타 생물정보(204)의 특정 대상을 구분할 수 있으며, 대상 생물정보에 대해 정의한 랩퍼를 통해 요구된 정보를 추출할 수 있다. 따라서, 본 발명에 의하면, 생물정보들은 많은 부분이 참조를 통해 상호 연결되어 있으므로, 참조를 사용하여 이를 인식하고 나아가 타 생물정보에 정의된 연산을 사용할 수 있어 유용하게 된다.
생물정보 검색 서비스(208)는 대상 생물정보에 대한 분석 도구 및 검색 도구들에 대한 인터페이스이다. 명세 언어에서 검색 서비스 정의(221)는 이들을 기술하기 위한 것으로, 접근 질의(222)와, 제약(224)들을 포함하여 적용될 파라미터들(223), 그리고 결과의 대상 별명(225) 등으로 구성된다. 이와 같이 랩퍼 명세 언어에서는 생물정보의 구조뿐만 아니라 적용 가능한 각종 도구들을 함께 명세하고, 이의 수행 결과에 대한 인식/변환을 함께 제공할 수 있다.
도 3은 상기와 같은 랩퍼 명세 언어에 대한 처리 과정을 보여주는 흐름도이다.
도 3을 참조하면, 랩퍼 생성을 위해 먼저 랩퍼 템플릿(WT) 및 모델 템플릿(MT)을 생성한다.(S301) 여기에서, 랩퍼 템플릿은 통합 시스템(102)과 연동을 위해 미리 정의한 인터페이스 클래스이다. 기술된 랩퍼 명세 언어는 파싱되어 이 클래스의 메소드들로 추가됨으로써 실행 가능한 랩퍼가 된다. 또한, 모델 템플릿은 랩퍼가 인식하는 생물정보의 구조 및 적용될 연산들에 대한 제반 정의를 포함하고 있다. 여기에 누적된 정보는 JDBC와 같은 범용 데이터베이스 접근 방법을 통해 통합모델(104)에 적용된다.
이와 같이 템플릿이 생성된 상태에서, 입력 명세 언어로부터 대상 생물정보에 대한 일반 정보를 추출하여 각 템플릿에 설정한다.(S302) 일반정보에는 해당 생물정보를 서비스하는 기관, 서비스를 위한 인터넷상의 URL(Uniform Resource Locator), 기타 자신을 유일하게 구분하기 위한 별명 등이 포함된다. 이들은 랩퍼의 동작 중에 공통적으로 사용되거나 혹은 다른 랩퍼들과 구분하기 위한 내용이다.
이후, 랩퍼 명세내의 각 엔트리를 읽어 들이고,(S303) 엔트리의 종류에 따라 반복적으로 처리한다.(S304) 엔트리는 도 2를 통해 상기 언급된 바와 같이 네 가지 부류로 나누어진다. 즉, 대상 생물정보에서 임의의 특정 위치를 지정하는 영역인 경우에 대한 처리(S305), 대상 생물정보의 구조를 정의하는 속성(attribute)인 경우에 대한 처리(S306), 다른 생물정보로의 참조를 명시하는 링크(link)에 대한 처리(S307), 대상 생물정보에 적용 가능한 연산들을 정의하는 경우에 대한 처리(S308)로 이루어진다.
이러한 반복 처리 후, 상기 생성된 랩퍼 템플릿은 java 패키지 형태의 랩퍼 로 생성되어,(S309) 대상 생물정보에 대한 정보 해석/추출/변환의 기능을 담당하게 된다. 또한, 모델 템플릿은 누적된 정보를 생물정보 통합시스템(102)내 통합 메타모델(104)에 맞게 변환하여 적용하게 된다.(S310)
도 4는 생물정보의 특정 위치를 지정하기 위한 상기 영역노드의 처리 과정(S305)을 보여주는 흐름도이다.
본 발명에서, 랩퍼가 접근할 정보 위치는 주어진 평가식에 따라 지정된다. 그 결과, 파싱 트리의 루트로부터 목적 정보로의 경로 혹은 태그 변경으로 인한 정보 추출 실패를 최소화할 수 있다.
다른 측면으로, 복잡한 정보 구조에서 파싱 트리의 특정 부분으로 제한한 정보의 추출 등을 위해서도 특정 평가식을 사용한 영역의 정의가 가능하여야 한다.
도 4를 참조하면, 본 발명의 영역노드 처리과정은, 먼저 랩퍼 템플릿(WT)에 영역을 초기화한 후(즉, WT = {}),(S401) 명세로부터 영역의 위치명(t)과 정보 소스(s)를 추출한다.(S402)
이때, 정보 추출에 평가식(e)이 존재하는지 검사하여,(S403) 평가식이 존재하지 않는다면, 랩퍼 템플릿에 그 추출된 노드와 정보소스를 추가한다(즉, WT += (t,s) ).(S408)
상기 S403 단계에서, 정보 추출에 평가식이 존재한다면, 해당 정보소스가 파싱 트리의 루트로부터 추적되는지를 조사한다.(S404) 이때, 경로식이 존재할 경우, 문서 객체 모델(돔,DOM)에 따라 평가식을 추출한다.(S405) 반면에, 경로식이 존재하지 않을 경우는 해당 정보 소스로부터 오퍼랜드를 직접 정의하여 영역에 대한 평 가식(e)을 정의한다.(S406) 그리고, 정의된 평가식은 명세로부터 추출된 노드와 정보소스에 대한 조건으로 정의되어 랩퍼 템플릿에 추가된다. 즉, WT += (t,s)[e].(S407)
한편, 도 5 는 대상 생물정보의 구조를 명시하는 속성(attribute)절에 대한 처리 과정(S306)을 보이는 흐름도이다.
도 5를 참조하면, 먼저 대상 생물정보에서 추출할 정보 구조인 속성을 정의하기 위한 구조를 초기화한 후,(S501) 랩퍼 명세로부터 속성명(a)과 정보 소스(s)를 추출한다.(S502)
이때, 추출된 속성에 대한 메타 정보 생성을 위해, 추출된 속성명을 모델 템플릿에 추가하는 과정을 수행한다.(S503) 이후, 추출된 속성의 정보 소스(s)를 평가하여,(S504) 속성이 단일 문자열형, 숫자형 등과 같은 단순형(t)이라면, 모델 템플릿에 해당 속성형(t)을 설정한다.(S507) 즉, MT (a:t).
이러한 속성은 평가식과 함께 정의되어, 정보소스에서 특정 내용만을 지정할 수 있다. 즉, 정보소스에 이러한 평가절이 함께 정의되었는지 검사하여,(S508) 평가식이 존재하지 않는다면, 랩퍼 템플릿에 추출된 속성명과 정보소스를 추가한다. 즉, WT += (a,s).(S513)
반면에, 정보소스에 평가절이 있는지 검사한 결과(S508), 평가식이 존재한다면, 해당 정보소스가 경로식으로 명세 되었는지 조사한다.(S509) 이때, 경로식이 존재한다면, 파싱 트리에서 평가식을 추출하는 과정(S510)을 거친다. 그렇지 않다면, 해당 정보소스에서 오퍼랜드를 직접 추출하여 속성에 대한 평가식(e)를 생성하 고(S511), 이를 명세로부터 추출된 속성과 정보소스에 대한 조건식으로 정의하여 랩퍼 템플릿에 추가한다. 즉, WT += (a,s)[e].(S512)
상기 S504단계에서, 추출된 정보소스를 평가한 결과, 그 속성값이 기본형의 배열, 리스트, 혹은 중첩 형태의 복합형일 경우, 복합형내의 모든 요소 속성에 대해, 상기 속성에 대한 처리 과정(S501~S513)을 재귀적으로 반복 처리한다.(S505)
이와 같이 복합형내의 모든 내부 속성에 대한 처리 과정을 마친 후, 해당 속성(a)은 복합형(=C)임을 설정한다(S506). 이때. 복합형 C는 모든 내부 속성의 형을 구성 순서와 형태에 따라 조합한 새로운 형이 된다.
한편, 도 6은 타 생물정보로의 접근 경로인 링크 명세에 대한 처리 과정(S307)을 보여주는 흐름도이다.
참조 링크는 생물정보 구조를 명시하는 속성의 일부가 다른 생물정보로의 접근을 위한 구조 혹은 체계를 포함하고 있음을 정의한다.
도 6을 참조하면, 먼저 타 생물정보에 대한 접근을 정의하기 위한 구조인 링크를 초기화한 후,(S601) 명세로부터 참조 r을 추출한다.(S602)
그리고, 이를 파싱하여 타 생물정보로의 접근을 위해 정의한 필드(s)를 추출한 후,(S603) 그 추출된 필드를 검사하여,(S604) 필드가 속성절에서 정의되지 않았다면, 링크 정의 오류 처리 과정(S605)을 거쳐 종료한다.
만일, 필드가 속성절에서 정의되었다면, 참조의 파싱을 계속하여 목적 생물정보를 명시하는 별명과 접근 속성을 추출한다.(S606) 이 정보는 모델 템플릿에 저장되어,(S607) 이후 타 생물정보와의 참조 무결성 검사에 사용된다. 또한, 상기 추 출된 정보는 랩퍼 템플릿에 추가되어,(S608) 타 생물정보로의 접근을 위한 기본 정보를 제공하게 된다.
도 7은 생물정보에 적용될 분석도구들과 같은 연산을 등록하는 과정(S308)에 대한 흐름도이다.
이러한 연산은 대상 생물정보가 웹을 통해 제공하는 각종 도구들을 랩퍼 내에 명시하고, 이후 랩퍼를 통해 해당 도구들에 접근하고 그 결과를 해석하기 위해 정의된다.
도 7을 참조하면, 먼저 연산을 정의하기 위한 구조를 초기화한 후,(S701) 랩퍼 명세로부터 연산의 명칭(221)과 질의(222)를 추출하여,(S702) 모델 템플릿에 추가한다(S703).
본 발명에서, 연산 O는 기능에 따라 여러 파라미터와 함께 정의될 수 있다. 따라서, 연산과 관련된 모든 파라미터들에 대해, 다음의 과정(S705~S707)을 반복적으로 수행한다.(S704)
먼저, 명세를 파싱하여 파라미터 pi를 추출하고,(S705) 파라미터의 특성을 추출한다.(S706) 이때, 파라미터는 생략 가능하지 않고 반드시 입력되어야 한다는 의미의 NOT NULL 혹은 생략 가능할 경우 대체 가능한 값을 설정하는 DEFAULT와 같은 특성들을 가질 수 있으며, 또한, 복수개의 특성이 조합되어 정의될 수도 있다. 그리고, 추출된 정보를 모델 템플릿에 해당 연산 O의 파라미터 정보로 추가하는 과정을 거친다.(S707)
한편, 정의된 연산 O를 실제 생물정보에 적용한 후 얻은 결과 또한 특정 랩 퍼에 의해 인식되고 해석되게 되는데, 이를 위해서 연산 O의 결과를 인식하는 랩퍼의 별명 r을 추출한 후,(S708) 그 랩퍼 별명 r을 모델 템플릿 내 연산 O의 결과로서 설정한다.(S709)
상기와 같은 본 발명의 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법은 컴퓨터로 읽을 수 있는 기록매체에 저장될 수 있다. 이러한 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있도록 프로그램 및 데이터가 저장되는 모든 종류의 기록매체를 포함한다. 그 예로는, 롬(Read Only Memory), 램(Random Access Memory), CD(Compact Disk)-Rom, DVD(Digital Video Disk)-Rom, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한, 이러한 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
상술한 바와 같이 본 발명에 따른 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법은, 의약, 의료 등의 여러 분야로 분산되어 구축되어 있는 생물정보 데이터베이스들과 여기에 정의된 각종 분석 도구들을 용이하게 공유할 수 있다. 즉, 소스 표현과 도구들간의 이질성의 해소가 가능하며, 그 결과, 이들에 대한 다양한 통합 시나리오를 통해 유용한 시멘틱을 도출함으로써 보다 정확하고 가치있는 정보 분석 결과를 제시할 수 있는 효과적인 플랫폼 구축이 가능하다.
이상에서 설명한 것은 본 발명에 따른 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법을 실시하기 위한 하나의 실시예에 불과한 것으로 서, 본 발명은 상기한 실시예에 한정되지 않고, 이하의 특허청구의 범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변경 실시가 가능한 범위까지 본 발명의 기술적 정신이 있다고 할 것이다.
Claims (11)
- (a) 대상 생물정보의 구조 및 그 내재된 시멘틱을 선언적으로 기술하여 랩퍼를 명세하는 단계;(b) 상기 랩퍼 명세로부터 그 정의된 엔트리의 시멘틱에 따라 랩퍼 템플릿에 데이터 추출 및 정의 규칙을 추가하여 랩퍼 템플릿을 구축하고, 통합 관점에서 필요한 랩퍼 관련 메타정보를 포함하는 모델 템플릿을 구축하고, 대상 생물정보에 대한 구조 및 연산을 파싱하여 랩퍼를 생성하는 단계; 및(c) 상기 생성된 랩퍼를 실행하여 네트워크상의 대상 생물정보를 추출하고, 그 누적되는 생물정보를 변형하여 통합 메타 모델을 구축하는 단계;를 포함하는 것을 특징으로 하는 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법.
- 제 1항에 있어서, 상기 (a)단계는,DOM 트리 및 플랫파일의 특정 위치에 대한 대상 생물정보의 상대적인 접근 위치를 정의하는 단계;정규식과 DOM 트리 경로식의 제약조건을 포함하여 속성을 정의하는 단계;상기 정의된 속성으로부터 타 생물정보와의 참조 링크를 정의하는 단계;개별 생물정보가 제공하는 분석도구에 대한 접근 질의를 정의하는 단계;를 포함하는 것을 특징으로 하는 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법.
- 제 2항에 있어서, 상기 접근 위치 정의단계는,조건문을 사용하여 파싱 트리내의 특정 태그 또는 데이터 자체를 생물정보 추출 영역으로 지정함으로써 생물정보 접근위치를 정의하는 것을 특징으로 하는 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법.
- 제 2항에 있어서, 상기 속성 정의단계는,파싱트리 경로 지정 연산자, 값 추출 연산자, 배열 지정 연산자, 중첩정보 명시 연산자, 정규식 관련 연산자들을 사용하여 속성을 정의하는 것을 특징으로 하는 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법.
- 제 2항에 있어서, 상기 참조 링크 정의단계는,대상 타 생물정보의 별명과 접근시 사용할 기본 키의 명칭을 포함하는 TARGET 절과, 실제 키값 추출을 위한 참조 속성명과 추출 패턴을 포함하는 EXTRACT절을 정의하는 것을 특징으로 하는 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법.
- 삭제
- 제 1항에 있어서, 상기 (b)단계는, 상기 랩퍼 명세로부터 대상 생물정보의 위치를 지정하는 영역 엔트리를 파싱하는 경우,랩퍼 템플릿에서 영역을 초기화하고, 상기 랩퍼 명세로부터 영역의 위치명과 정보 소스를 추출한 후,정보 추출에 평가식의 존재여부를 검사하여, 평가식이 존재하지 않으면 상기 추출된 위치노드와 정보소스를 랩퍼 템플릿에 추가하고,평가식이 존재할 경우는, 파싱트리의 루트로부터 해당 정보소스의 추적여부에 따라, DOM 모델에 의해 영역에 대한 평가식을 추출하거나 해당 정보소스로부터 연산자를 직접 정의하여 평가식을 정의한 후, 그 평가식을 상기 추출된 위치노드와 정보소스에 대한 조건으로서 랩 템플릿에 추가하는 것을 특징으로 하는 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법.
- 제 1항에 있어서, 상기 (b)단계는, 상기 랩퍼 명세로부터 속성 엔트리를 파싱하는 경우,속성 구조를 초기화한 후, 상기 랩퍼 명세로부터 속성명과 정보소스를 추출하는 제 1단계;속성에 대한 메타정보 생성을 위해 상기 추출된 속성명을 모델 템플릿에 추가하고, 상기 추출된 정보소스를 평가하여 모델 템플릿에 해당 속성형을 설정하는 제 2단계; 및상기 정보소스에 평가절의 정의여부를 검사하여, 평가식이 존재하지 않을 경우 상기 추출된 속성명과 정보소스를 랩퍼 템플릿에 추가하고,평가식이 존재할 경우는, 해당 정보소스가 경로식으로 명세되었는지 여부에 따라, 파싱 트리에서 평가식을 추출하거나 해당 정보소스에서 연산자를 직접 추출하여 속성에 대한 평가식을 생성한 후, 그 평가식을 상기 추출된 속성명 및 정보소스에 대한 조건식으로 정의하여 랩퍼 템플릿에 추가하는 제 3단계;를 수행하는 것을 특징으로 하는 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법.
- 제 8항에 있어서, 상기 제 2단계에서 추출된 정보소스를 평가한 결과 그 속성값이 기본형의 배열, 리스트, 또는 중첩 형태인 복합형일 경우,각 기본형 단위로 복합형내의 모든 속성요소를 제 8항에 따라 처리한 후, 모델 템플릿에 해당 속성을 복합형인 것으로 설정하는 것을 특징으로 하는 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법.
- 제 1항에 있어서, 상기 (b)단계는, 상기 랩퍼 명세로부터 참조 링크 엔트리를 파싱하는 경우,링크를 초기화한 후, 상기 랩퍼 명세로부터 참조데이터를 추출하는 단계;상기 참조데이터를 파싱하여 타 생물정보로의 접근을 위해 정의한 필드를 추출하는 단계;상기 추출된 필드를 검사하여 그 필드가 속성절에 정의되었는지 여부를 판단하는 단계; 및필드가 속성절에 정의된 경우, 상기 참조데이터의 파싱을 통해 대상 생물정보를 명시하는 별명과 접근 속성을 추출한 후, 이를 모델 템플릿과 랩퍼 템플릿에 추가하는 단계;를 수행하는 것을 특징으로 하는 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법.
- 제 1항에 있어서, 상기 (b)단계는, 상기 랩퍼 명세로부터 분석도구인 연산 엔트리를 파싱하는 경우,연산의 정의 구조를 초기화한 후, 상기 랩퍼 명세로부터 연산이 명칭 및 질의를 추출하여 모델 템플릿에 추가하는 단계;상기 랩퍼 명세로부터 그 연산과 관련된 모든 파라미터를 추출하고, 각 파라미터의 특성을 추출하는 단계;상기 추출된 특성정보를 모델 템플릿에 해당 연산의 파라미터 정보로 추가하는 단계; 및그 연산의 결과를 인식할 랩퍼의 별명을 추출한 후, 그 랩퍼 별명을 모델 템플릿에 연산의 결과로서 설정하는 것을 특징으로 하는 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보 추출 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20030078055A KR100544978B1 (ko) | 2003-11-05 | 2003-11-05 | 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보추출방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20030078055A KR100544978B1 (ko) | 2003-11-05 | 2003-11-05 | 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보추출방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050043226A KR20050043226A (ko) | 2005-05-11 |
KR100544978B1 true KR100544978B1 (ko) | 2006-01-24 |
Family
ID=37243999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20030078055A KR100544978B1 (ko) | 2003-11-05 | 2003-11-05 | 랩퍼 명세 언어에 기반한 인터넷상의 반구조화된 생물정보추출방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100544978B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101223864B1 (ko) * | 2009-09-15 | 2013-01-18 | 에스케이플래닛 주식회사 | 인터넷 쇼핑몰 검색 시스템 및 방법 |
-
2003
- 2003-11-05 KR KR20030078055A patent/KR100544978B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR20050043226A (ko) | 2005-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7092936B1 (en) | System and method for search and recommendation based on usage mining | |
US6233578B1 (en) | Method and system for information retrieval | |
US7293018B2 (en) | Apparatus, method, and program for retrieving structured documents | |
US7702685B2 (en) | Querying social networks | |
US7231386B2 (en) | Apparatus, method, and program for retrieving structured documents | |
US7370061B2 (en) | Method for querying XML documents using a weighted navigational index | |
US6604099B1 (en) | Majority schema in semi-structured data | |
US6654734B1 (en) | System and method for query processing and optimization for XML repositories | |
US6766330B1 (en) | Universal output constructor for XML queries universal output constructor for XML queries | |
US7124358B2 (en) | Method for dynamically generating reference identifiers in structured information | |
US8484210B2 (en) | Representing markup language document data in a searchable format in a database system | |
CN102479252B (zh) | 查询语句转换装置及查询语句转换方法 | |
US8335779B2 (en) | Method and apparatus for gathering, categorizing and parameterizing data | |
Vellucci | Metadata and authority control | |
US20020065814A1 (en) | Method and apparatus for searching and displaying structured document | |
US20030088643A1 (en) | Method and computer system for isolating and interrelating components of an application | |
WO2003017141A9 (en) | Method for adding metadata to data | |
JP5048956B2 (ja) | データベースのクローリングによる情報検索 | |
Higgins et al. | Managing heterogeneous ecological data using Morpho | |
US20180239817A1 (en) | Method and platform for the elevation of source date into interconnected semantic data | |
Valentine et al. | EarthCube Data Discovery Studio: A gateway into geoscience data discovery and exploration with Jupyter notebooks | |
JP2002245089A (ja) | ウェブページ検索システム、二次情報収集装置、インターフェース装置 | |
JP3786233B2 (ja) | 情報検索方法および情報検索システム | |
Kiran et al. | An approach towards establishing reference linking in desktop reference manager | |
KR101476225B1 (ko) | 자연어 및 수식 색인화 방법과 그를 위한 장치 및 컴퓨터로 읽을 수 있는 기록매체 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20091228 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |