KR100754540B1 - 콘텐트-기반 문서의 보안, 라우팅 및 액션 실행에 관한방법 및 시스템 - Google Patents

콘텐트-기반 문서의 보안, 라우팅 및 액션 실행에 관한방법 및 시스템 Download PDF

Info

Publication number
KR100754540B1
KR100754540B1 KR1020027008176A KR20027008176A KR100754540B1 KR 100754540 B1 KR100754540 B1 KR 100754540B1 KR 1020027008176 A KR1020027008176 A KR 1020027008176A KR 20027008176 A KR20027008176 A KR 20027008176A KR 100754540 B1 KR100754540 B1 KR 100754540B1
Authority
KR
South Korea
Prior art keywords
rule
document
content
action
actions
Prior art date
Application number
KR1020027008176A
Other languages
English (en)
Other versions
KR20030004311A (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 세쿼이아 소프트웨어 코포레이션
Publication of KR20030004311A publication Critical patent/KR20030004311A/ko
Application granted granted Critical
Publication of KR100754540B1 publication Critical patent/KR100754540B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Human Resources & Organizations (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Document Processing Apparatus (AREA)

Abstract

문서 콘텐트 기반 액션을 결정하기 위한 방법 및 시스템이 제공된다. 규칙 엔진(101)에, 바람직하게는 XLM 포맷의 액션대상 문서(103)가 제공된다. 또한, 규칙 엔진(101)에 규칙 집합(105)과 이에 연관되어 특정 조건 하에서 수행될 액션(107)이 제공된다. 문서(103)는 규칙(105) 및 문서 콘텐트에 따라 평가되며, 각각의 규칙은 파스 트리로 파싱된다. 문서는 문서 콘텐트의 적어도 일부로써 파스 트리를 포퓰레이팅하기 위해 한층 더 평가된다. 초기화될 액션의 일부는 문서-포퓰레이티드 파스 트리에 기반하여 선택된다. 예를 들어, 액션은 문서의 보안 제어 또는 라우팅을 포함한다.
문서 콘텐트 기반 액션, 규칙 엔진

Description

콘텐트-기반 문서의 보안, 라우팅 및 액션 실행에 관한 방법 및 시스템{Method and System for Conte-Based Document Security, Routing, and Action Execution}
본 발명은 컴퓨터-구현 규칙 엔진에 관한 것이다. 더욱 구체적으로는, 최종사용자가 규칙에 따라, 문서의 콘텐트에 기반하여, 문서를 처리하고 규칙이 평가하는 방법에 따라 액션을 실행시킬 수 있도록 허용하는 방법 및 시스템에 관한 것이다.
여러종류의 규칙 엔진들이 있었지만, 이들 모두 메타 데이터에 의존한다. 규칙 엔진에 기반한 메타 데이터는 문서들이 메타 데이터를 얻기 위해 선처리되거나 메타 데이터가 최종사용자에 의해 수동적으로 지정될 것을 요한다. 이러한 메타 데이터는 그 다음에 평가를 위해 규칙 엔진에 공급된다.
따라서, 종래의 시스템에 따라 라우팅되는 문서는, 예를 들면, 라우팅에 관련된 데이터를 포함하는 헤더를 포함한다. 또한, 특정 보안 규칙에 따라 처리되어야 하는 문서는 보안-관련 데이터를 갖는 헤더를 포함한다. 종래의 헤더는 문서상에서 행하여질 (또는 행하여지지 않을) 그밖의 액션들에 관련된 데이터를 포함할 것이다.
문서의 선처리는 문서와느 연관되어 있으나 문서 헤더에 위치하거나 그렇지 않으면 문서 콘텐츠의 외부에 저장될 데이터 또는 메터 데이터를 결정하는데 이용된다. 따라서, 문서에 대한 라우팅 또는 기타 액션에 있어서, 선처리된 메터데이터가 중요하게 이용된다.
<발명의요약>
본 발명에 따르면, 컴퓨터 시스템에서 문서 콘텐트 기반 액션을 결정하기 위한 방법 및 시스템에 제공된다. 규칙 엔진에 액션대상 문서가 제공되는데, 문서는 문서 콘텐트로 되어 있으며, 문서 콘텐트는 적어도 하나의 딜리미트된(delimited) 콘텐트 필드를 포함하도록 정의되며, 문서는 XML 포맷으로 정의된다. 적어도 하나의 규칙 연산자, 적어도 하나의 상수 및 적어도 하나의 콘텐트 필드를 포함하는 규칙 문법이 제공된다. 규칙 엔진에 규칙과 이에 연관되어 특정조건에 따라 수행될 액션 집합이 제공되며, 이러한 규칙 집합내의 적어도 하나의 규칙은 적어도 지정된 규칙 연산자, 지정된 상수, 지정된 콘텐트 필드 및 다수의 규칙 오브젝트를 포함한다. 규칙 오브젝트는 규칙 집합의 규칙을 포함하고, 규칙에 대한 문서 평가에 기초하여 실행되는 하나 이상의 다음 규칙을 참조하고, 평가에 기초하여 초기화될 하나 이상의 액션을 참조한다. 문서는 규칙 및 문서 콘텐트에 따라 평가된다. 각각의 규칙은 파스 트리(parse tree)로 파싱되고(parse), 제공된 문서에 대해, 문서 콘텐트의 적어도 일부로써 파스트리를 포퓰레이팅(populating)하여 콘텐트-포퓰레이티드(populated) 파스 트리를 생성하기 위해, 문서는 한층더 평가된다. 콘텐트-포퓰레이티드 파스 트리는 결정요소(determinant)로 평가된다. 규칙에 연관된 액 션의 적어도 일부, 초기화될 액션 일부가 결정요소에 따라 선택된다.
본발명의 이러한 목적, 특징 및 장점들 및 기타 특징 및 장점들은 첨부된 도면 및 이하의 상세한 설명에 의해 용이하게 이해될 것이다.
도 1은 콘텐트-기반 문서 보안, 라우팅 및 액션 실행을 위한 방법 및 시스템에 도시된 흐름도이다.
도 2는 규칙 오브젝트를 예시한 블록도이다.
도 3은 문서를 규칙에 따라 파싱한 결과인 파스 트리의 예를 도시한 도면이다.
도 4는 문서 콘텐트로써 포퓰레이팅된 도 3의 파스 트리를 도시한 도면이다.
도 5a 내지 5c는 도 4의 파스트리의 순차적 횡단(inorder traversal)을 예시한 도면이다.
콘텐트-기반 규칙 엔진은 문서로부터 추출된 선처리된 데이터에 의존하지 않고 문서 내에 포함된 콘텐트에 기반하여 규칙을 평가할 수 있다. 예를 들어, 규칙 엔진을 이용하여, 사용자는 "문서의 첫 번째 성명 필드값이 "존"이고 마지막 성명 필드값이 "도우"이면, 문서를 검토 큐에 넣는다" 라는 규칙을 작성할 수 있다.
도 1은 일반적인 규칙엔진의 연산을 예시한다. 규칙엔진(101)에 애션대상 문서(103)가 공급된다. 또한, 규칙엔진(101)에 특정조건에 따라 수행될 액션을 나타내는 규칙 집합(105)이 제공된다. 다음에 하나 이상의 액션(107)이 규칙엔진(101)에 의해 초기화된다.
규칙엔진(101)은 규칙 집합(105)을 사전제공받고, 처리된 각각의 문서(103)에 대해, 액션(107) 집합을 수행한다. 문서(103)는 바람직하게는 XML(extended markup language) 포맷으로 제공된다.
규칙엔진(101)은 선결정된 규칙 문법에 따라 작동하여야 한다. 규칙 엔진을 구현하고 작동시키는 것은 다음 단계들로 이루어진다.
1) 규칙 문법을 결정한다. 불린 연산자, 상수 및 딜리미트 콘텐트 필드들이 서로 구별된다면, 선택되는 특정 문법이 중요한 것은 아니다. 다음의 규칙 문법을 이용하는 것이 바람직하다.
(토큰$연산자$토큰)[$연산자$토큰$연산자$토큰]
여기서, 토큰은 "상수-값" 형태의 인용된 상수 또는 %상수-값% 형태의 딜리미트 콘텐트 필드이며,
연산자는 다음중 하나이다.
$eq$ 같다
$lt$ -보다 작다
$gt$0 -보다 크다
$le$ -보다 작거나 같다
$ge$ -보다 크거나 같다
$and$ -논리곱 연산
$or$ - 논리합 연산
$not$- 논리 부정 연산.
토큰 및 연산자들은 전술한 형태와 다른 형태일 수도 있다.
표 1은 설명목적으로 최소로 간단화된 단순한 문서 및 유효한 규칙을 나타낸다.
<표 1>
Document:
<xml>
<fname>john</fname>
<lname>doe</lname>
</xml>
Rule:
%fname%$eq$"john"$and$%lname%$eq$"doe"
상기 예는 설명을 위한 것이다. 동일한 원칙이 임의의 크기의 문서 및 임의의 크기의 규칙 집합에 적용될 것이다. 여기서, 문서는 전형적인 XML 포맷으로 되어 있으며, 따라서 문서내의 필드는 딜리미트된다.
규칙 조건들은 공집합 이거나 널(null) 연산자 등일 수 있다. 규칙들은 조건을 검사한다.
2) 규칙 오브젝트(rule object)를 정의한다. 규칙 오브젝트(201)는 지정된 규칙을 포함하며, 규칙이 참 또는 거짓으로 평가한다면 실행될 다음의 참 규칙(207) 및 거짓 규칙(209)을 참조하며, 그가 참으로 평가하면 수행할 참 액션(203) 리스트를 포함하고, 그가 거짓으로 평가하면 수행할 거짓 액션(205) 리스트를 포함하는데 이용된다.
도 2는 규칙 오브젝트를 예시한다. 여기서, 규칙 오브젝트(201)는 표 1의 예와 관련되어 있다. 규칙 오브젝트(201)는 규칙 %fname%$eq$"john"을 포함한다. 이 규칙은 바람직하게는 사용자에 의해 미리 결정되었던 것이다. 규칙 오브젝트(201)은 211에 대한 포인트를 포함하고, 규칙이 문서에 대해 적용될 때 그것을 참으로 평가한 경우에 초기화될 하나 이상의 참 액션(203)을 리스트하거나 가리킨다. 규칙 오브젝트에 213과 하나 이상의 거직 액션(205)이 연관되어 있다. 적절한 액션은 널 또는 "아무것도 행하지 않음"이다. 이 예에서, 규칙이 참으로 평가한다면, 액션은 "john@company.com으로 이메일 전송"이다.
또한, 규칙 오브젝트(201)은 실행되어질 다음 규칙(2) 또는 규칙 오브젝트를 참조한다. 이 예에서, 참 규칙(207)은 %name%$eq$ "doe"이고, 거짓 오브젝트(209)는 %fname"$eq$"jane"이다.
3) 규칙 엔진을 초기화한다. 규칙 엔진(도 1에 도시된 101)에 규칙 오브젝트 집합이 제공된다.
4) 규칙을 파싱한다(parse). 평가대상 문서(103)가 주어지면, 규칙 엔진(101)은 규칙들을 파스 트리로 파싱할 것이다. 파스 트리를 생성하는 것은 상업적으로 이용가능한 문법 파서(예, "비쥬얼 파서(Visual Parser)")와 같은 적절한 방식으로 수행될 수 있다.
도 3에 도시된 파스트리는 표1의 규칙을 파싱한 결과이다. 트리는 연산자(301), 콘텐트 필드(303), 및 상수값(305)를 포함한다. 규칙이 클수록 좀더 복잡한 파스 트리 결과를 가져온다.
각각의 규칙 오브젝트 내에 이러한 하나의 파스 트리가 포함될 것이다. 따라서, 규칙 집합은 파스 트리 집합을 생성하고, 각각은 규칙 오브젝트에 대응한다. 매번 문서가 제공될 때마다 규칙 집합을 파싱하는 것의 대안으로서, 규칙 엔진은 규칙을 처리할 수 있으며 추가 문서를 위해 파스 트리를 재사용할 수 있다.
5) 규칙을 평가한다. 제공된 문서에 대해, 제1 규칙 오브젝트에서 시작하여, 파스 트리를 평가하여 문서 콘텐트값을 포퓰레이트한다. 이는 바람직하게는 파스트리의 깊이-우선 순차적 횡단(depth-first inorder traversal)을 수행함으로써 수행되며, 콘텐트 필드를 포함하는 각각의 마주치는 노들들에 대해, 문서(307)로부터의 지정된 값을 트리에 대체시킨다.
제공된 문서는 식별가능한 타입에 속하는 값들을 포함하는 콘텐트를 갖는다. 바람직하게, 문서는 XML 포맷으로 되어 있다. 따라서, 이러한 타입에 대한 구체적인 값은 종래의 방식에 따라 문서 콘텐트 내에서 용이하게 찾아질 수 있다.
규칙 및 문서에 대한 전술한 동작을 수행한 후에, 콘텐트-포퓰레이티드 파스 트리는 도 4에 도시된 바와 같을 것이다.
일단 파스 트리내의 모든 콘텐트 필드들이 문서값(307)로 대체되면, 바람직하게는 파스트리의 깊이-우선 순차 횡단을 수행함으로써, 규칙의 불린 논리(boolean logic)가 평가된다. 연산자(301)을 포함하는 각각의 마주치는 노드(301, 305, 307)에 대해, 연산자 노드는 바람직하게는 지정된 불린 연산을 적 용하는 규칙으로 교체된다. 이는 이하의 도 5a 내지 5c를 참조하며 상세히 설명될 것이다. 규칙을 평가한 최종 결과(콘텐트-포퓰레이티드 파스 트리)는 결정요소, 바람직하게는 불린 값이다. 본 기술분야의 당업자라면 파스 트리가 평가되는 다른 방법들에 대해서도 이해할 것 이다.
6) 액션을 실행한다. 이 시점에서, 바람직한 실시예에 따르면, 파스 트리는 중요한 단일 노드, 즉, 결정요소로만 되어 있을 것이다. 결정요소는 규칙이 어떻게 평가되었는지를 나타낸다. 결정요소의 값은 실행될 액션을 결정한다. 바람직한 실시예에서, 이는 규칙이 참으로 또는 거짓으로 평가되었는지를 가리킨다. 규칙이 참이라면, 규칙 엔진은 참 액션 구성 집합의 실행을 초기화한다. 규칙이 거짓이라면, 규칙 엔진은 거짓 액션 구성 집합의 실행을 초기화한다.
7) 다음 규칙으로 간다. 현재 규칙에 대한 액션이 실행된 이후에, 규칙 엔진은 결정요소와 연관된 다음 규칙이 있다면, 그것으로 진행하여 단계 5)를 반복한다. (액션들은 이하에서 더 설명된다). 이러한 프로세스는 처리되어야할 더 이상의 규칙이 없을 때까지 계속된다.
도 5a-5c는 표 1의 예를 참조하여 콘텐트-포퓰레이티드 파스 트리 (도 4에 도시된 콘텐트-포퓰레이티드 파스 트리)의 규칙 평가를 수행한 결과를 도시한다. 이 예의 깊이-우선 순차 횡단에서, John 문서값(307) 및 $eq$ 연산자(301)가 John 상수값 (305)에 적용되고, 연산 결과(309)가 참이 된다. 바람직하게, 연산 결과(309)는 파스 트리의 연산자(301) 노드를 교체시킨다(도 5a). 다음에, Doe 문서값(307) 및 $eq$ 연산자(301)가 Doe 상수값에 적용되고, 연산 결과(309)가 참이 된다(도 5b). 다음에, 참의 연산결과(309)가 피연산자(301) $and$에 의해 연산되고, 연산결과(309)는 참이 된다(도 5c).
액션들은 임의의 계산 연산들일 수 있다. 본원 발명의 바람직한 실시예에서, 규칙 엔진은 보안 또는 문서 루틴을 초기화시킨다.
규칙 엔진은 문서에 대해 어떠한 연산이 어떠한 사용자에 의해 수행될 수 있을지를 제어함으로써 콘텐트-기반 문서 보안을 수행하는데 이용될 수 있다. 콘텐트-기반 보안에 대해, 액션 집합은 바람직하게는, 판독액세스승인(Grant Read Access), 기록액세스승인(Grant Write Access), 갱신액세스승인(Grant Update Access), 삭제 액세스승인(Grant Delete Access), 검색액세스승인(Grant Search Access), 판독액세스거절(Deny Read Access), 기록액세스거절(Deny Write Access), 갱신액세스거절(Deny Update Access), 삭제 액세스거절(Deny Delete Access), 검색액세스거절(Deny Search Access)을 포함한다. 그밖의 보안 액션들도 또한 가능하다. 이들 액션들은 임의의 전형적인 방법들로 구현될 수 있으며, 이러한 액션들을 초기화시키는 일반적인 방법중 하나를 통해 규칙엔진에 의해 초기화될 수 있다. 사용자가 문서에 대해 연산(예, 판독, 기록, 갱신, 삭제 또는 검색)을 수행하고자 하는 경우에, 규칙엔진은 사용자가 그러한 연산을 수행하도록 허용되는지를 판단하기 위해 구성된 보안규칙 집합을 실행시킨다.
상기 액션들 각각의 실제 구현은 관련 기술분야의 기술자들에 의해 용이하게 이해될 수 있을 것이다. 바람직한 실시예에서, 각각의 액션들은 승인 또는 거절을 가리키는 참 또는 거짓으로 불린 변수를 설정해둔다.
엔진은 또한 콘텐트기반 문서 라우팅(routing)에도 이용된다. 본 발명의 바람직한 실시예에서, "이메일을 전송하고 문서를 큐로 이동시킨다"라는 동작들이 제공된다. 기타 다른 문서루틴 액션들도 가능하다. 규칙엔진은, 예를 들어, 문서가 생성되거나 갱신될때 불려져서 문서가 특정큐에 위치되어야 할 것인지 또는 사용자에게 이메일전송될 것인지를 판단하기 위해 해당 문서에 대한 문서루틴규칙을 평가할 수 있다. 기타 다른 문서 라우팅 액션들도 가능하며, 전술한 리스트가 모두는 아니다.
전술한 액션 그 자체들에 대한 구현은 본 기술분야의 기술자들에 의해 이해될 수 있는 바와 같이 전형적이다. 바람직한 실시예에서는 이들 액션을 구현하기 위해 상업적으로 이용가능한 제품들이 이용된다. 이메일 전송은 던다스 소프트웨어사의 (DunDas Software) "Ultimate TCP/IP"를 이용하여 구형되고, 문서를 큐로 이동시키는 것은 마이크로소프트사의 "메시지큐(Message Queue)"를 이용하여 구현된다.
다른 액션 집합들 및 이에 연관된 규칙 집합들이 제공된다. 본원 발명의 원칙은 다른 액션들 및 규칙들에 대해서도 적용가능하다. 규칙엔진은 다양한 범위의 포맷으로 이루어진 문서들, 기타 다른 규칙집합, 및 액션집합들에 대해 충분히 적용될 수 있다. 이러한 것들들 예측되며, 전술한 설명에 의해 이해되고 본 발명의 범주 내에 있다. 본원 발명을 수행하기 위한 바람직한 실시예 및 최상의 실시예들이 설명되어 있지만, 본 발명이 관련된 기술분야에 친숙한 자들은 본원 발명을 실시하기 위한 다양한 대체 실시예들이 가능하며 이들은 이하의 청구범위 내에 속한다는 것을 이해할 것이다.

Claims (37)

  1. 컴퓨터 시스템에서 문서 콘텐트 기반 액션들을 판단하는 방법에 있어서,
    (a) 액션 대상 문서 - 상기 문서는 문서 콘텐트를 가짐 -를 규칙 엔진에 제공하는 단계와,
    (b) 규칙 집합과 이에 연관되어 특정 조건하에서 수행될 액션집합을 상기 규칙 엔진에 제공하는 단계와,
    (c) 상기 규칙 및 상기 문서 콘텐트에 따라 상기 문서를 평가하는 단계와,
    (d) 상기 규칙과 연관된 액션의 적어도 일부를 초기화하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서, 상기 문서 콘텐트는 적어도 하나의 딜리미트된 콘텐트 필드(delimited content field)를 포함하는 방법.
  3. 제1항에 있어서, 상기 문서는 XML 포맷으로 정의되는 방법.
  4. 제1항에 있어서, 규칙 문법을 제공하는 단계를 더 포함하는 방법.
  5. 제4항에 있어서, 상기 규칙 문법은, 적어도 하나의 연산자와, 적어도 하나의 상수와, 적어도 하나의 콘텐트 필드를 포함하는 방법.
  6. 제5항에 있어서, 상기 콘텐트 필드는 딜리미트된(delimited) 방법.
  7. 제4항에 있어서, 상기 규칙 집합의 적어도 하나의 규칙은 규칙 문법 형태로 된 방법.
  8. 제5항에 있어서, 상기 규칙 집합의 적어도 하나의 규칙은, 적어도 하나의 지정된 규칙 연산자와, 지정된 상수와, 지정된 콘텐트 필드를 포함하는 방법.
  9. 제1항에 있어서, 적어도 하나의 규칙은 비어있는(empty) 방법.
  10. 제1항에 있어서, 다수의 규칙 오브젝트를 더 포함하되, 하나의 규칙 오브젝트는 규칙 집합의 규칙을 포함하고, 상기 규칙에 대해 상기 문서를 평가한 결과에 따라 실행될 하나 이상의 다음 규칙들을 참조하며, 상기 평가 결과에 따라 초기화될 하나 이상의 액션들을 참조하는 방법.
  11. 제1항에 있어서, 상기 규칙 각각을 파스트리로 파싱하는 단계를 더 포함하는 방법.
  12. 제11항에 있어서, 상기 문서를 평가하는 단계는, 상기 제공된 문서에 대해, 상기 문서 콘텐트의 적어도 일부로써 상기 파스 트리를 포퓰레이팅하여 콘텐트-포퓰레이티드(content-populated) 파스 트리를 생성하는 단계를 더 포함하는 방법.
  13. 제12항에 있어서, 상기 문서를 평가하는 단계는 상기 콘텐트-포퓰레이티드 파스 트리를 결정요소(determinant)로 평가하는 단계를 더 포함하는 방법.
  14. 제13항에 있어서, 상기 초기화될 액션의 일부는 상기 결정요소에 근거하여 선택되는 방법.
  15. 제1항에 있어서,상기 초기화될 액션의 일부는 상기 규칙에 평가에 따라 선택되는 방법.
  16. 제1항에 있어서, 상기 규칙 집합의 다음 규칙을 처리하는 단계를 더 포함하는 방법.
  17. 제1항에 있어서, 상기 액션집합은 상기 제공된 문서에 대한 보안을 제어하는 방법.
  18. 제1항에 있어서, 상기 액션 집합은 상기 제공된 문서의 라우팅(routing)을 제어하는 방법.
  19. 컴퓨터 시스템에서 문서 콘텐트 기반 액션을 결정하는 방법에 있어서,
    (a) 액션대상문서 -상기 문서는 문서 콘텐트를 갖으며, 상기 문서 콘텐트는 적어도 하나의 딜리미트된 콘텐트 필드를 포함하도록 정의되고 상기 문서는 XML 포맷으로 되도록 정의됨 -를 규칙 엔진에 제공하는 단계와,
    (b) 적어도 하나의 규칙 연산자와, 적어도 하나의 상수와, 적어도 하나의 콘텐트 필드를 포함하는 규칙 문법을 제공하는 단계와,
    (c) 상기 규칙엔진에 규칙 집합과 이에 연관되어 특정 조건 하에서 수행되어야 되는 액션들을 제공하는 단계 - 상기 규칙 집합의 적어도 하나의 규칙은, 적어도 하나의 지정된 규칙 연산자와, 지정된 상수와, 지정된 문서 필드를 포함하고, 상기 규칙에 대해 상기 문서를 평가한 결과에 따라 실행될 하나 이상의 다음 규칙들을 참조하고 상기 평가 결과에 따라 초기화될 하나 이상의 액션들을 참조함-와,
    (d) 상기 규칙 및 상기 문서 콘텐트에 따라 상기 문서를 평가하고, 상기 규칙 각각을 파스 트리로 파싱하는 단계 - 상기 문서를 평가하는 단계는, 상기 제공된 문서에 대해, 상기 문서 콘텐트의 적어도 일부로써 상기 파스 트리를 포퓰레이팅하여 콘텐트-포퓰레이티드 파스 트리를 생성하는 단계와, 상기 콘텐트-포퓰레이티드 트리를 결정요소로 평가하는 단계를 더 포함함-와,
    (e) 상기 규칙에 연관된 액션의 적어도 일부를 초기화하는 단계- 상기 초기화될 액션의 일부는 상기 결정요소에 따라 선택됨-
    를 포함하는 방법.
  20. 문서 콘텐트 기반 액션을 결정하기 위한 컴퓨터 시스템에 있어서,
    액션대상문서-상기 문서는 문서 콘텐트를 갖도록 정의됨- 및 규칙 집합 및 이에 연관하여 특정 조건하에서 수행될 액션들에 응하여, 상기 규칙 및 상기 문서 콘텐트에 따라 상기 문서를 평가하기 위한 규칙 엔진과,
    상기 규칙에 연관된 액션의 적어도 일부에 대한 초기화 전송부
    을 포함하는 시스템.
  21. 제20항에 있어서, 상기 문서 콘텐트는 적어도 하나의 딜리미트된 콘텐트 필드를 포함하도록 정의되는 시스템.
  22. 제20항에 있어서, 상기 문서는 XML 포맷으로 되도록 정의되는 시스템.
  23. 제20항에 있어서, 상기 규칙에 대한 규칙 문법을 더 포함하는 시스템.
  24. 제23항에 있어서, 상기 규칙 문법은, 적어도 하나의 규칙 연산자와, 적어도 하나의 상수와, 적어도 하나의 콘텐트 필드를 포함하는 시스템.
  25. 제24항에 있어서, 상기 콘텐트 필드는 딜리미트된 시스템.
  26. 제23항에 있어서, 상기 규칙 집합의 적어도 하나는 규칙 문법 형태로 된 시스템.
  27. 제24항에 있어서, 상기 규칙 집합의 적어도 하나의 규칙은, 적어도 하나의 지정된 규칙 연산자와, 지정된 상수와, 지정된 콘텐트 필드를 포함하는 시스템.
  28. 제20항에 있어서, 적어도 하나의 규칙은 비어있는 시스템.
  29. 제20항에 있어서, 다수의 규칙 오브젝트를 더 포함하되, 하나의 규칙 오브젝트는 규칙 집합의 규칙을 포함하고, 상기 규칙에 대해 상기 문서를 평가한 결과에 따라 실행될 하나 이상의 다음 규칙들을 참조하며, 상기 평가 결과에 따라 초기화될 하나 이상의 액션들을 참조하는 시스템.
  30. 제20항에 있어서, 상기 규칙의 각각에 대응하는 파스 트리를 더 포함하는 시스템.
  31. 제30항에 있어서, 상기 평가 중에 상기 파스 트리는 상기 문서 콘텐트의 적어도 일부로써 포퓰레이팅되어 콘텐트-포퓰레이티드 파스 트리를 생성하는 시스템.
  32. 제31항에 있어서, 상기 평가 이후에, 상기 콘텐트-포퓰레이티드 파스 트리는 결정요소로 평가하는 시스템.
  33. 제32항에 있어서, 상기 초기화될 액션의 일부는 상기 결정요소에 따라 결정되는 시스템.
  34. 제20항에 있어서, 상기 초기화될 액션의 일부는 상기 규칙의 평가결과에 따라 결정되는 시스템.
  35. 제20항에 있어서, 상기 액션 집합은 상기 제공된 문서에 대한 보안을 제어하는 시스템.
  36. 제20항에 있어서, 상기 액션 집합은 상기 제공된 문서에 대한 라우팅을 제어하는 시스템.
  37. 컴퓨터 시스템에서 문서 콘텐트 기반 액션을 결정하기 위한 시스템에 있어서,
    (a) 액션대상문서 -상기 문서는 문서 콘텐트를 갖도록 정의되며, 상기 문서 콘텐트는 적어도 하나의 딜리미트된 콘텐트 필드를 포함하도록 정의되고 상기 문서는 XML 포맷으로 되도록 정의됨 -에 응하는 규칙 엔진과,
    (b) 적어도 하나의 규칙 연산자와, 적어도 하나의 상수와, 적어도 하나의 콘 텐트 필드를 포함하는 규칙 문법과,
    (c) 규칙 집합과 이에 연관되어 특정 조건 하에서 수행되어야 되는 액션들 - 상기 규칙 집합의 적어도 하나의 규칙은, 적어도 하나의 지정된 규칙 연산자와, 지정된 상수와, 지정된 콘텐트 필드를 포함함 -과, 다수의 규칙 오브젝트 - 하나의 규칙 오브젝트는 규칙 집합의 규칙을 포함하고, 상기 규칙에 대해 상기 문서를 평가한 결과에 따라 실행될 하나 이상의 다음 규칙들을 참조하고 상기 평가 결과에 따라 초기화될 하나 이상의 액션들을 참조함-와,
    (d) 상기 문서 콘텐트의 적어도 일부로써 포퓰레이티드된 파스 트리와, 상기 평가된 콘텐트-포퓰레이티드된 파스 트리에 대응하는 결정요소를 포함하고,
    상기 초기화될 액션의 일부는 상기 결정요소에 따라 선택되는
    시스템.
KR1020027008176A 1999-12-22 2000-12-22 콘텐트-기반 문서의 보안, 라우팅 및 액션 실행에 관한방법 및 시스템 KR100754540B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/469,753 US6532455B1 (en) 1999-12-22 1999-12-22 Method and system for content-based document security, routing, and action execution
US09/469,753 1999-12-22
PCT/US2000/034854 WO2001046839A1 (en) 1999-12-22 2000-12-22 Method and system for content-based document security, routing, and action execution

Publications (2)

Publication Number Publication Date
KR20030004311A KR20030004311A (ko) 2003-01-14
KR100754540B1 true KR100754540B1 (ko) 2007-09-04

Family

ID=23864937

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027008176A KR100754540B1 (ko) 1999-12-22 2000-12-22 콘텐트-기반 문서의 보안, 라우팅 및 액션 실행에 관한방법 및 시스템

Country Status (9)

Country Link
US (1) US6532455B1 (ko)
EP (1) EP1242909A4 (ko)
JP (1) JP2003518292A (ko)
KR (1) KR100754540B1 (ko)
AU (1) AU780937B2 (ko)
CA (1) CA2393545C (ko)
HK (1) HK1046317A1 (ko)
IL (2) IL150106A0 (ko)
WO (1) WO2001046839A1 (ko)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11026768B2 (en) 1998-10-08 2021-06-08 Align Technology, Inc. Dental appliance reinforcement
US20020035638A1 (en) * 2000-07-25 2002-03-21 Gendron David Pierre Routing and storage within a computer network
US7676540B2 (en) * 2001-10-16 2010-03-09 Microsoft Corporation Scoped referral statements
EP1303097A3 (en) * 2001-10-16 2005-11-30 Microsoft Corporation Virtual distributed security system
US20030074579A1 (en) * 2001-10-16 2003-04-17 Microsoft Corporation Virtual distributed security system
US8015204B2 (en) * 2001-10-16 2011-09-06 Microsoft Corporation Scoped access control metadata element
US7194553B2 (en) 2001-10-16 2007-03-20 Microsoft Corporation Resolving virtual network names
US7536712B2 (en) * 2001-10-16 2009-05-19 Microsoft Corporation Flexible electronic message security mechanism
US7293283B2 (en) * 2001-10-16 2007-11-06 Microsoft Corporation Flexible electronic message security mechanism
US7899047B2 (en) 2001-11-27 2011-03-01 Microsoft Corporation Virtual network with adaptive dispatcher
US7662094B2 (en) * 2002-05-14 2010-02-16 Given Imaging Ltd. Optical head assembly with dome, and device for use thereof
US7236973B2 (en) * 2002-11-27 2007-06-26 Sap Aktiengesellschaft Collaborative master data management system for identifying similar objects including identical and non-identical attributes
US7515717B2 (en) * 2003-07-31 2009-04-07 International Business Machines Corporation Security containers for document components
US8874452B2 (en) 2004-02-27 2014-10-28 Align Technology, Inc. Method and system for providing dynamic orthodontic assessment and treatment profiles
US7987099B2 (en) * 2004-02-27 2011-07-26 Align Technology, Inc. Dental data mining
US7904308B2 (en) 2006-04-18 2011-03-08 Align Technology, Inc. Method and system for providing indexing and cataloguing of orthodontic related treatment profiles and options
US11298209B2 (en) 2004-02-27 2022-04-12 Align Technology, Inc. Method and system for providing dynamic orthodontic assessment and treatment profiles
US9492245B2 (en) 2004-02-27 2016-11-15 Align Technology, Inc. Method and system for providing dynamic orthodontic assessment and treatment profiles
US20060074909A1 (en) * 2004-09-28 2006-04-06 Bradley Fredericks Automated resume evaluation system
US7818304B2 (en) * 2005-02-24 2010-10-19 Business Integrity Limited Conditional text manipulation
US20070084638A1 (en) * 2005-10-19 2007-04-19 Clyde Bohnsack Drilling fluid flow facilitation
US20070260976A1 (en) * 2006-05-02 2007-11-08 Slein Judith A Rule Engines and Methods of Using Same
US20080101367A1 (en) * 2006-10-31 2008-05-01 Weinman Joseph B Method and apparatus for providing security policy based route selection
US7878805B2 (en) 2007-05-25 2011-02-01 Align Technology, Inc. Tabbed dental appliance
US7792780B2 (en) * 2007-08-28 2010-09-07 Microsoft Corporation Updating an engine using a description language
US8738394B2 (en) 2007-11-08 2014-05-27 Eric E. Kuo Clinical data file
US8108189B2 (en) 2008-03-25 2012-01-31 Align Technologies, Inc. Reconstruction of non-visible part of tooth
US8092215B2 (en) 2008-05-23 2012-01-10 Align Technology, Inc. Smile designer
US9492243B2 (en) 2008-05-23 2016-11-15 Align Technology, Inc. Dental implant positioning
US8172569B2 (en) 2008-06-12 2012-05-08 Align Technology, Inc. Dental appliance
WO2010011180A1 (en) 2008-07-25 2010-01-28 Resolvo Systems Pte Ltd Method and system for securing against leakage of source code
US8152518B2 (en) 2008-10-08 2012-04-10 Align Technology, Inc. Dental positioning appliance having metallic portion
US8292617B2 (en) 2009-03-19 2012-10-23 Align Technology, Inc. Dental wire attachment
US8765031B2 (en) 2009-08-13 2014-07-01 Align Technology, Inc. Method of forming a dental appliance
US9241774B2 (en) 2010-04-30 2016-01-26 Align Technology, Inc. Patterned dental positioning appliance
US9211166B2 (en) 2010-04-30 2015-12-15 Align Technology, Inc. Individualized orthodontic treatment index
US9403238B2 (en) 2011-09-21 2016-08-02 Align Technology, Inc. Laser cutting
US9375300B2 (en) 2012-02-02 2016-06-28 Align Technology, Inc. Identifying forces on a tooth
US9220580B2 (en) 2012-03-01 2015-12-29 Align Technology, Inc. Determining a dental treatment difficulty
US9414897B2 (en) 2012-05-22 2016-08-16 Align Technology, Inc. Adjustment of tooth position in a virtual dental model
US9610141B2 (en) 2014-09-19 2017-04-04 Align Technology, Inc. Arch expanding appliance
US10449016B2 (en) 2014-09-19 2019-10-22 Align Technology, Inc. Arch adjustment appliance
US9744001B2 (en) 2014-11-13 2017-08-29 Align Technology, Inc. Dental appliance with cavity for an unerupted or erupting tooth
US10504386B2 (en) 2015-01-27 2019-12-10 Align Technology, Inc. Training method and system for oral-cavity-imaging-and-modeling equipment
US11554000B2 (en) 2015-11-12 2023-01-17 Align Technology, Inc. Dental attachment formation structure
US11931222B2 (en) 2015-11-12 2024-03-19 Align Technology, Inc. Dental attachment formation structures
US11103330B2 (en) 2015-12-09 2021-08-31 Align Technology, Inc. Dental attachment placement structure
US11596502B2 (en) 2015-12-09 2023-03-07 Align Technology, Inc. Dental attachment placement structure
EP3471599A4 (en) 2016-06-17 2020-01-08 Align Technology, Inc. INTRAORAL DEVICES WITH SENSOR
US10383705B2 (en) 2016-06-17 2019-08-20 Align Technology, Inc. Orthodontic appliance performance monitor
CN115869098A (zh) 2016-07-27 2023-03-31 阿莱恩技术有限公司 具有牙科诊断能力的口内扫描仪
WO2018085718A2 (en) 2016-11-04 2018-05-11 Align Technology, Inc. Methods and apparatuses for dental images
US11376101B2 (en) 2016-12-02 2022-07-05 Align Technology, Inc. Force control, stop mechanism, regulating structure of removable arch adjustment appliance
WO2018102702A1 (en) 2016-12-02 2018-06-07 Align Technology, Inc. Dental appliance features for speech enhancement
US10993783B2 (en) 2016-12-02 2021-05-04 Align Technology, Inc. Methods and apparatuses for customizing a rapid palatal expander
EP3547952B1 (en) 2016-12-02 2020-11-04 Align Technology, Inc. Palatal expander
US10548700B2 (en) 2016-12-16 2020-02-04 Align Technology, Inc. Dental appliance etch template
US10779718B2 (en) 2017-02-13 2020-09-22 Align Technology, Inc. Cheek retractor and mobile device holder
US10613515B2 (en) 2017-03-31 2020-04-07 Align Technology, Inc. Orthodontic appliances including at least partially un-erupted teeth and method of forming them
US11045283B2 (en) 2017-06-09 2021-06-29 Align Technology, Inc. Palatal expander with skeletal anchorage devices
CN110769777B (zh) 2017-06-16 2023-08-11 阿莱恩技术有限公司 牙齿类型和萌出状态的自动检测
US10639134B2 (en) 2017-06-26 2020-05-05 Align Technology, Inc. Biosensor performance indicator for intraoral appliances
US10885521B2 (en) 2017-07-17 2021-01-05 Align Technology, Inc. Method and apparatuses for interactive ordering of dental aligners
WO2019018784A1 (en) 2017-07-21 2019-01-24 Align Technology, Inc. ANCHOR OF CONTOUR PALATIN
EP4278957A3 (en) 2017-07-27 2024-01-24 Align Technology, Inc. System and methods for processing an orthodontic aligner by means of an optical coherence tomography
US11633268B2 (en) 2017-07-27 2023-04-25 Align Technology, Inc. Tooth shading, transparency and glazing
US11116605B2 (en) 2017-08-15 2021-09-14 Align Technology, Inc. Buccal corridor assessment and computation
WO2019036677A1 (en) 2017-08-17 2019-02-21 Align Technology, Inc. SURVEILLANCE OF CONFORMITY OF DENTAL DEVICE
US10813720B2 (en) 2017-10-05 2020-10-27 Align Technology, Inc. Interproximal reduction templates
WO2019084326A1 (en) 2017-10-27 2019-05-02 Align Technology, Inc. OTHER BORE ADJUSTMENT STRUCTURES
EP3703608B1 (en) 2017-10-31 2023-08-30 Align Technology, Inc. Determination of a dental appliance having selective occlusal loading and controlled intercuspation
CN115252177A (zh) 2017-11-01 2022-11-01 阿莱恩技术有限公司 自动治疗规划
WO2019100022A1 (en) 2017-11-17 2019-05-23 Align Technology, Inc. Orthodontic retainers
CN114948315A (zh) 2017-11-30 2022-08-30 阿莱恩技术有限公司 用于监测口腔矫治器的传感器
WO2019118876A1 (en) 2017-12-15 2019-06-20 Align Technology, Inc. Closed loop adaptive orthodontic treatment methods and apparatuses
US10980613B2 (en) 2017-12-29 2021-04-20 Align Technology, Inc. Augmented reality enhancements for dental practitioners
CN111655191B (zh) 2018-01-26 2022-04-08 阿莱恩技术有限公司 诊断性口内扫描和追踪
US11937991B2 (en) 2018-03-27 2024-03-26 Align Technology, Inc. Dental attachment placement structure
AU2019251474A1 (en) 2018-04-11 2020-10-29 Align Technology, Inc. Releasable palatal expanders

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5355474A (en) * 1991-09-27 1994-10-11 Thuraisngham Bhavani M System for multilevel secure database management using a knowledge base with release-based and other security constraints for query, response and update modification

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63158663A (ja) * 1986-12-23 1988-07-01 Toshiba Corp 文書機密保護装置
CA2041992A1 (en) 1990-05-18 1991-11-19 Yeshayahu Artsy Routing objects on action paths in a distributed computing system
JPH0744535A (ja) 1993-07-27 1995-02-14 Matsushita Electric Ind Co Ltd 文書処理装置
EP0692891A1 (fr) 1994-07-12 1996-01-17 T.R.T. Telecommunications Radioelectriques Et Telephoniques Système d'interconnexion de réseaux locaux utilisant un protocole de routage de type "routage depuis la source" et équipement d'interconnexion destiné à être utilisé dans un tel système
AUPM813394A0 (en) 1994-09-14 1994-10-06 Dolphin Software Pty Ltd A method and apparatus for preparation of a database document in a local processing apparatus and loading of the database document with data from remote sources
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
US6026183A (en) * 1995-10-27 2000-02-15 Texas Instruments Incorporated Content-based video compression
US5799297A (en) * 1995-12-15 1998-08-25 Ncr Corporation Task workflow management system and method including an external program execution feature
US6006242A (en) * 1996-04-05 1999-12-21 Bankers Systems, Inc. Apparatus and method for dynamically creating a document
US5881241A (en) 1996-06-19 1999-03-09 Sun Microsystems, Inc. System for transmitting data packet after matching data packet's routing pattern with predetermined data routes stored in a route table
US6029182A (en) * 1996-10-04 2000-02-22 Canon Information Systems, Inc. System for generating a custom formatted hypertext document by using a personal profile to retrieve hierarchical documents
US5884046A (en) 1996-10-23 1999-03-16 Pluris, Inc. Apparatus and method for sharing data and routing messages between a plurality of workstations in a local area network
US5790977A (en) 1997-02-06 1998-08-04 Hewlett-Packard Company Data acquisition from a remote instrument via the internet
JPH11196184A (ja) * 1997-12-30 1999-07-21 Sony Corp 通信端末装置及び通信制御方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5355474A (en) * 1991-09-27 1994-10-11 Thuraisngham Bhavani M System for multilevel secure database management using a knowledge base with release-based and other security constraints for query, response and update modification

Also Published As

Publication number Publication date
CA2393545C (en) 2010-09-07
US6532455B1 (en) 2003-03-11
JP2003518292A (ja) 2003-06-03
IL150106A (en) 2007-06-17
EP1242909A1 (en) 2002-09-25
KR20030004311A (ko) 2003-01-14
IL150106A0 (en) 2002-12-01
AU780937B2 (en) 2005-04-28
AU3436101A (en) 2001-07-03
HK1046317A1 (zh) 2003-01-03
EP1242909A4 (en) 2006-09-13
CA2393545A1 (en) 2001-06-28
WO2001046839A1 (en) 2001-06-28

Similar Documents

Publication Publication Date Title
KR100754540B1 (ko) 콘텐트-기반 문서의 보안, 라우팅 및 액션 실행에 관한방법 및 시스템
CN107704265B (zh) 一种面向业务流可配置的规则生成方法
CN107644323B (zh) 一种面向业务流的智能审核系统
Efraimidis Weighted random sampling over data streams
US7917548B2 (en) Universal parsing agent system and method
US20060167873A1 (en) Editor for deriving regular expressions by example
US6834382B2 (en) Message parser and formatter
US20140156282A1 (en) Method and system for controlling target applications based upon a natural language command string
US20040154009A1 (en) Structuring program code
CN112351076B (zh) 推荐系统api的生成方法、装置、电子设备及存储介质
JP2008299723A (ja) プログラム検証方法、プログラム検証装置
US9223992B2 (en) System and method for evaluating a reverse query
US20030233640A1 (en) Structuring program code
EP0358618B1 (en) Caching argument values in pattern-matching networks
JPH11249903A (ja) 抽象構文木処理方法、抽象構文木処理プログラムを記録したコンピュータ読み取り可能な記録媒体、抽象構文木データを記録したコンピュータ読み取り可能な記録媒体、及び、抽象構文木処理装置
Sasak-Okoń Modifying queries strategy for graph-based speculative query execution for RDBMS
US9177252B2 (en) Incremental DFA compilation with single rule granularity
US7558819B1 (en) Distributed dialoguing with an agent-oriented software architecture
CN112306470B (zh) 一种复杂同步语言程序的化简转化和自动验证方法
Merelo et al. Grammars: One of the Features That Makes Perl 6 Unique, and One of the Most Powerful Ways of Processing Text
Black Jr AI assistance for requirements management
AU750555B2 (en) Generic knowledge management system
de Souza et al. Cognitive conversation language-ccl
Asai Extracting a call-by-name partial evaluator from a proof of termination
Aversano et al. Linking Business Process and Software System

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
FPAY Annual fee payment

Payment date: 20120802

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130801

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150729

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160727

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170811

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180810

Year of fee payment: 12