$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

메시지 다이제스트를 이용한 구조화된 문서의 변화 탐지
Detecting Changes in Structured Documents using Message Digest 원문보기

한국정보과학회 02 가을 학술발표논문집(1), 2002 Oct., 2002년, pp.151 - 153  

김동아 (단국대학교 정보컴퓨터학부) ,  이석균 (단국대학교 정보컴퓨터학부)

초록
AI-Helper 아이콘AI-Helper

XML/HTML 문서와 같이 트리 구조로 표현되는 데이터의 변화 탐지는 NP-hard의 문제로 이에 대한 효율적인 구현은 매우 중요하다. 본 논문에서는 효율적인 변화 탐지를 위해 트리 구조의 데이터를 X-tree로 표현하고 이에 기초한 휴리스틱 알고리즘을 제안한다. X-tree에서는 모든 서브트리의 루트 노드에 서브트리의 구조와 소속 노드들의 데이터들을 128비트의 해시값으로 표현하여 저장함으로 신ㆍ구 버전의 X-tree들에 속한 서브트리들의 비교가 매우 효율적이다. 제시한 변화 탐지 알고리즘에서는 구 버전의 X-tree의 모든 서브트리들에 대해 신 버전의 X-tree에서 동등한 서브트리들을 찾고, 이들에 기초하여 이동 연산이 발생한 서브트리들과 갱신 연산이 발생한 서브트리들을 순차적으로 찾는다. 이때 이동 연산과 갱신 연산으로 대응되는 서브트리는 동등 서브트리로부터 루트 노드로 대응 관계를 확장하는 가운데 발견된다. 이후 깊이 우선으로 검색하면서 나머지 노드들을 대응시킨다. X-tree의 구조적 특징에 기인하여 노드들 간의 비교를 통해 대응 여부를 검사하는 대부분의 기존 연구와는 달리 서브트리의 비교를 통해 대부분의 대응 관계를 결정하므로 효율적인 변화 탐지가 가능하다. 본 알고리즘은 최악의 경우에서도 N을 신ㆍ구 버전 문서의 전체 노드 수라 할 때 O(N)의 시간 복잡도를 갖는다.

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 따라서, 본 논문에서는 XML 문서의 신.구 버전들 간에 변화가 발생했는지 여부를 확인하고, 변화 발생 시 어느 노드에서 발생했는지룰 빠르게 찾고자 함 올 목적으로 한다.
  • XML7HTML 문서로 표현되는 대부분의 웹 문서는 구조화된 문서 (hierarchical structured document) 로 이에 대한 변화의 탐지는 NP-hani에 속하는 문제이다[1, 2]. 따라서 본 논문에서는 순서 트리로 표현된 XML 문서간의 변화롤 효을적으로 탐지할 수 있는 휴리스틱 알고리즘올 제시한다. 단, HTML 문서의 경우 XML 문서로 변환하여 본 알고리즘을 적용한다.
  • 본 논문에서는 트리로 표현된 XML 문서간의 변화를 탐지할 수 있는 효율적인 알고리즘과 문서의 변화를 효율적으로 표현할 수 있는 편집 연산과 편집 스크립트를 보였다. 한편, 본 논문에서는 구체적으로 비용을 명시하지 않았으나 적철한 자료구조의 활용으로 신 .
  • 본 논문은 계층적 데이터에 대한 변화 탐지 알고리즘으로 최근 발표된 BULD Diff 알고리즘을 개선하였다.
  • 우선 X-tree룰 통한 XML 문서의 표현 방법을 살펴보자. X-tree의 노드는 XML 문서의 엘리먼트(Element)나 문자 데이터(PCData)를 나타내며 Type 필드는 X-tree의 노드가 나타내는 데이터가 엘리먼트인지 문자 데이터인지룰 구별한다.

가설 설정

  • 우선 1단계에서 발견된 동등 서브트리 쌍의 각 루트 노드의 부모 노드들의 대옹 여부를 고려한다. 두 루트 노드풀을 각각 A, B라하고 이들의 부모 노드들을 각각 pA, pB라 할 때, a) 두 부모 노드들(pA, pB)의 nMD 값(Label과 Value 값)이 같으면 그 부모 노드둘(pA, pB)을 NOP로, b) 두 부모 노드돌의 nMD 값은 서로 다르지만 Label 값이 갈은 경우는 그 부모 노드들(pA, pB)을 UFD로 대웅시킨다. 한편, c) 두 부모 노드들(pA, pB)의 nMD 값과 Label 값이 다른 경우에는 A를 루트로 하는 서브트리가 pB로 MOV됨을 의미한다.
  • 3333px;">p).i): 트리 T에 속한 노드 Np의 Value(Np)을 v1에서 v2로 바꾼다.
  • 3 단계(배웅 관계의 하향식 확장) : 대옹이 확정된 노드의 자식 노드들의 다옹 여부률 결정하는 단계로 루트로부터 하향식으로 진행된다. r心에서 대옹이 확정된 임의 노드를 A, A의 Tnew의 대옹 노드를 B, 그리고 A에는 대웅이 결정되지 않은 차식 노드들(cA[l..s])이 있다고 가정하자. B의 대옹이 결정되지 않은 자식노드들올 cB[l.
  • 을 삭제한다. 단, XML 문서의 특성을 고려하여 X-tree의 루트 노드는 삭제할 수 없다고 가정한다.
  • 그림 4의 알고리즘은 7泅의 루트 노 드로부터 갚이 우선 탐색하면서 적용된다. 이때 Told와Tnew의 루트 노드는 XML 문서의 특성에 의해 항상 대옹되는 것으로 가정한다. 따라서 본 단계는 끄泅의 루트 노드로부터 점진적으로 대응 관계를 확장해 나간다고 볼 수 있다.
본문요약 정보가 도움이 되었나요?

관련 콘텐츠

섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로