KR102381539B1 - Method for managing privileges on resources contained in a structured document and apparatus using the same - Google Patents

Method for managing privileges on resources contained in a structured document and apparatus using the same Download PDF

Info

Publication number
KR102381539B1
KR102381539B1 KR1020220018238A KR20220018238A KR102381539B1 KR 102381539 B1 KR102381539 B1 KR 102381539B1 KR 1020220018238 A KR1020220018238 A KR 1020220018238A KR 20220018238 A KR20220018238 A KR 20220018238A KR 102381539 B1 KR102381539 B1 KR 102381539B1
Authority
KR
South Korea
Prior art keywords
resource
specific
structured document
tag
user
Prior art date
Application number
KR1020220018238A
Other languages
Korean (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 KR1020220018238A priority Critical patent/KR102381539B1/en
Application granted granted Critical
Publication of KR102381539B1 publication Critical patent/KR102381539B1/en
Priority to PCT/KR2022/005338 priority patent/WO2023153558A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/117Tagging; Marking up; Designating a block; Setting of attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/137Hierarchical processing, e.g. outlines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)
  • Document Processing Apparatus (AREA)

Abstract

Disclosed are a method for managing a user's authorities on resources included in a structured document to maintain integrity and recyclability of each part of a document and an apparatus using the same. More specifically, the method comprises: a step of generating an owner tag corresponding to a top-level element document when generate a structured document and the top-level element document included in the structured document according to a request; a step of generating a new resource according to a request; a step of generating a policy tag or permission tag corresponding to a first predetermined resource according to the request; a step of returning a predetermined user's authority for a first predetermined action on a second predetermined resource according to a request; and a step of executing or not executing the user's second predetermined action according to the user's authority for a second predetermined action on a third predetermined resource acquired according to a request.

Description

구조화 문서에 포함된 자원들에 관한 권한을 관리하는 방법 및 이를 이용한 장치{METHOD FOR MANAGING PRIVILEGES ON RESOURCES CONTAINED IN A STRUCTURED DOCUMENT AND APPARATUS USING THE SAME}A method for managing authority on resources included in a structured document and an apparatus using the same

본 개시서에는 구조화 문서(structured document)에 포함된 항목들인 자원들에 관한 사용자들의 권한을 관리하는 방법 및 이를 이용한 컴퓨팅 장치가 개시된다. 구체적으로, 본 개시서에 따르면, 요청에 따라 구조화 문서 및 그 구조화 문서에 포함된 최상위 요소문서를 생성하면서 상기 최상위 요소문서에 대응하는 소유자 꼬리표를 생성하고, 요청에 따라 상기 신규 자원을 생성하며, 요청에 따라 제1 특정 자원에 대응하는 정책 꼬리표 또는 상기 허가 꼬리표를 생성하고, 요청에 따라 제2 특정 자원에 대한 제1 특정 액션에 관한 특정 사용자의 권한을 되돌려주며, 요청에 따라 획득된 제3 특정 자원에 대한 사용자의 제2 특정 액션에 관한 권한에 따라 그 사용자의 상기 제2 특정 액션을 실행하거나 실행하지 않을 수 있는 방법 및 이를 이용한 컴퓨팅 장치가 제공된다.Disclosed in the present disclosure are a method for managing users' rights with respect to resources, which are items included in a structured document, and a computing device using the same. Specifically, according to the present disclosure, a structured document and a top-level element document included in the structured document are generated according to a request, an owner tag corresponding to the top-level element document is generated, and the new resource is created according to a request; Generates a policy tag or the permission tag corresponding to a first specific resource according to a request, returns the permission of a specific user with respect to a first specific action on a second specific resource according to the request, and a third obtained according to the request Provided are a method capable of executing or not executing the second specific action of the user according to the user's right regarding the second specific action for a specific resource, and a computing device using the same.

문서에 관한 하드웨어 및 소프트웨어 기술의 발달에 힘입어, 다양한 문서들의 수정, 배포 및 그 추적을 다루는 기술들이 발전하고 있다. 예를 들어, 미국 등록특허공보 제9,323,850호에는 어느 게시자의 콘텐츠 항목의 전파전염성 점수(viral score)를 추산하는 방법 및 시스템이 개시되어 있다.BACKGROUND ART With the development of hardware and software technologies for documents, technologies for dealing with the correction, distribution and tracking of various documents have been developed. For example, US Patent No. 9,323,850 discloses a method and system for estimating the viral score of a content item of a publisher.

어느 사용자에 의해 작성된 문서 각각을 타인이 열람, 복제 및 이용할 수 있는지 없는지를 설정할 수 있게 하는 기능인 권한 설정 기능은 컴퓨팅 장치에서 실행되는 운영체제(operating system; OS)의 파일 시스템(file system)에 관하여 일반화된 기술에 속하는 반면, 그러한 기술들에 의할 때 문서 중 일부에 관하여는 열람, 복제 및 이용에 관한 권한의 설정이 가능하지 않은 한계가 있다.The permission setting function, which is a function that allows others to set whether or not others can view, duplicate, and use each document created by a user, is generalized with respect to the file system of an operating system (OS) running on a computing device On the other hand, there is a limit in that it is not possible to set the right for reading, reproduction and use with respect to some of the documents according to such technologies.

하나의 문서를 통하여 다뤄지는 다양한 액션(작용; action)들은 적어도 작성자가 원하는 방식으로 제어되어야 할 필요가 있는바, 이를 위해, 해당 문서를 구성하는 다수의 부분들마다, 그리고 사용자들마다 서로 다른 권한의 설정을 가능하게 함으로써, 의도에 맞게 문서가 이용될 수 있게 할 수 있는 권한 관리의 방안 제시가 필요하다.Various actions (actions) handled through one document need to be controlled at least in a way desired by the author. It is necessary to propose a method of managing the rights that enables the setting of the document so that the document can be used according to the intention.

US 9,323,850 BUS 9,323,850 B

따라서 본 개시서의 발명은 다음과 같이 종래 기술의 한계점을 극복하는 것을 목적으로 한다. Accordingly, an object of the present disclosure is to overcome the limitations of the prior art as follows.

구체적으로, 본 발명은 단일 문서의 크기가 커지면 커질수록 그 전체를 읽거나 쓰는 데 발생하는 부하를 줄여 단일 문서를 여러 부분으로 분리하여 구조화한 문서인 구조화 문서를 다루되, 그 일부에 해당하는 자원들에 관한 유연하고 효율적인 권한 관리의 방안을 제공하는 것을 목적으로 한다. Specifically, the present invention deals with a structured document, which is a document structured by dividing a single document into several parts by reducing the load generated for reading or writing the entire document as the size of a single document increases, but a resource corresponding to a part of the document The purpose of this is to provide a flexible and efficient way of managing rights.

또한, 본 발명은 운영체제의 파일 시스템에서 전형적으로 다뤄지지 않는 액션들로서, 공유(즉, 재배포) 및 기여와 같은 액션들에 관한 권한 설정을 가능하게 함으로써 다수 사용자들의 읽기/쓰기 접근, 이용 등에 대항하여 문서의 각 부분별 무결성(integrity), 재활용성(recyclability) 등을 유지해낼 수 있게 하는 것을 목적으로 한다.In addition, the present invention is an action that is not typically handled in the file system of the operating system, and enables the setting of permissions for actions such as sharing (ie, redistribution) and contributing to document against read/write access, use, etc. of multiple users. It aims to maintain the integrity and recyclability of each part of the

상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한 본 발명의 특징적인 구성은 하기와 같다.The characteristic configuration of the present invention for achieving the object of the present invention as described above and for realizing the characteristic effects of the present invention to be described later is as follows.

본 개시서의 일 태양에 따르면, 구조화 문서에 포함된 자원(resource)들에 관한 권한을 꼬리표(tag)들로써 관리하는 방법이 제공되는바, 상기 구조화 문서는, 0의 깊이(depth)를 가지는 적어도 하나의 최상위의 요소문서를 포함하고, 1 이상의 깊이를 가지는 적어도 하나의 요소문서를 선택적으로(optionally) 더 포함하며, 상기 구조화 문서에 포함된 모든 요소문서 각각은 내용으로서 적어도 하나의 기록을 포함하고, 상기 자원들은, 상기 구조화 문서, 및 상기 구조화 문서에 포함된 상기 모든 요소문서, 및 모든 상기 기록을 포함하고, 상기 자원들 각각은 수정된 횟수로서 정정 회차를 포함하되, 상기 1 이상의 깊이를 가지는 상기 적어도 하나의 요소문서가 상기 구조화 문서 내에 포함되는 경우, 상기 구조화 문서는, 상기 구조화 문서 내에서 1 이상의 깊이 n을 가지는 모든 요소문서 각각이 n-1의 깊이를 가지는 하나의 요소문서에 종속됨을 표시하는 각각의 종속 관계를 더 포함하며, 상기 자원들에 속한 개별 자원의 사용자는, 일반 사용자, 상기 개별 자원의 적어도 하나의 소유자, 및 상기 개별 자원에 대한 적어도 하나의 특정 사용자를 포함하고, 상기 꼬리표들 각각은, 상기 개별 자원의 상기 적어도 하나의 소유자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하기 위한 소유자 꼬리표, 상기 일반 사용자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하거나 금지하기 위한 정책 꼬리표, 및 상기 적어도 하나의 특정 사용자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하거나 금지하기 위한 허가 꼬리표 중의 하나이고, 상기 방법은, 상기 구조화 문서를 생성하기 위한, 사용자로부터의 요청인 구조화 문서 생성 요청에 응하여, 컴퓨팅 장치가, 상기 구조화 문서 및 상기 구조화 문서에 포함된 상기 최상위 요소문서를 생성하는 프로세스, 및 상기 최상위 요소문서에 대응하는 상기 소유자 꼬리표를 생성하는 프로세스를 수행함; 상기 구조화 문서 내에 신규 자원을 생성하기 위한, 사용자로부터의 요청인 자원 생성 요청에 응하여, 상기 컴퓨팅 장치가, 상기 신규 자원을 생성함; 상기 구조화 문서 내 제1 특정 자원에 대한 권한을 추가하기 위한, 사용자로부터의 요청인 권한 추가 요청에 응하여, 상기 컴퓨팅 장치가, 상기 제1 특정 자원에 대응하는 상기 정책 꼬리표 또는 상기 허가 꼬리표를 생성함; 상기 구조화 문서 내 제2 특정 자원에 대한 제1 특정 액션에 관한 특정 사용자의 권한을 확인하기 위한 요청인 권한 확인 요청에 대한 응답으로서, 상기 컴퓨팅 장치가, 상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 되돌려줌(returning); 및 상기 구조화 문서 내 제3 특정 자원에 대하여 제2 특정 액션을 실행하기 위한, 사용자로부터의 요청인 액션 실행 요청에 응하여, 상기 컴퓨팅 장치가, 상기 사용자의 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 권한 확인 요청을 통하여 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 상기 사용자의 권한을 획득하고, 획득된 상기 권한에 따라 상기 제2 특정 액션을 실행하거나 실행하지 않음을 포함한다.According to one aspect of the present disclosure, there is provided a method for managing rights with respect to resources included in a structured document using tags, wherein the structured document has at least a depth of 0 It includes one top-level element document, and optionally further includes at least one element document having a depth of one or more, and each element document included in the structured document includes at least one record as content, , the resources include the structured document, and all the element documents included in the structured document, and all the records, wherein each of the resources includes a revision number as a number of times it has been modified, wherein each of the resources has a depth of at least one When the at least one element document is included in the structured document, the structured document indicates that all element documents having a depth n of 1 or more in the structured document are subordinate to one element document having a depth of n-1. Each dependency relationship further includes indicating, wherein the user of the individual resource belonging to the resources includes a general user, at least one owner of the individual resource, and at least one specific user for the individual resource, Each of the tags includes an owner tag for authorizing actions on the individual resource for the at least one owner of the individual resource, an owner tag for authorizing or prohibiting actions on the individual resource for the general user a policy tag, and a permission tag for authorizing or forbidding actions on the individual resource for the at least one specific user, the method comprising: a request from a user to generate the structured document in response to the document creation request, the computing device performs a process of generating the structured document and the top-level element document included in the structured document, and a process of generating the owner tag corresponding to the top-level element document; in response to a resource creation request, which is a request from a user, for creating a new resource in the structured document, the computing device creates the new resource; In response to a request for adding a right, which is a request from a user, for adding a right for a first specific resource in the structured document, the computing device generates the policy tag or the permission tag corresponding to the first specific resource ; In response to a permission check request that is a request for confirming a specific user's permission regarding a first specific action on a second specific resource in the structured document, the computing device is configured to: returning the specific user's rights to an action; and in response to an action execution request, which is a request from a user, to execute a second specific action on the third specific resource in the structured document, the computing device is configured to: acquiring the user's authority regarding the second specific action with respect to the third specific resource through a permission check request regarding the action, and executing or not executing the second specific action according to the acquired authority .

유리하게, (i) 상기 구조화 문서 및 상기 자원들과 (ii) 상기 꼬리표들은 상이한 정보 단위로서 저장소에서 보유 및 관리된다.Advantageously, (i) said structured document and said resources and (ii) said tags are held and managed in a repository as different units of information.

일 실시 예에서, 상기 개별 자원에 관한 상기 액션들은, 상기 개별 자원에 대한 기여의 요청 및 기여의 반영을 포함하고, 상기 기여의 요청은, 상기 컴퓨팅 장치가, 상기 개별 자원으로부터 수정된 내용, 및 상기 개별 자원의 정정 회차보다 1만큼 증가된 정정 회차를 포함하는 신규 자원을 생성하고, 상기 개별 자원에 대한 상기 기여의 반영이 허가된 사용자인 기여 반영자에 의해 접근 가능한 제1 사용자 인터페이스를 제공함으로써, 상기 제1 사용자 인터페이스를 통하여 상기 신규 자원에 의한 상기 개별 자원의 대체 여부를 결정하게 하는 액션이고, 상기 기여의 반영은, 상기 컴퓨팅 장치가, 상기 신규 자원에 의한 상기 개별 자원의 대체 여부에 따라, 상기 구조화 문서 내에서 상기 신규 자원이 상기 개별 자원을 대체하거나 상기 개별 자원을 유지하게 하는 액션이다.In an embodiment, the actions related to the individual resource include a request for contribution to the individual resource and reflection of the contribution, wherein the request for contribution includes: content modified by the computing device from the individual resource; and By creating a new resource comprising a correction frequency increased by one than that of the individual resource, and providing a first user interface accessible by a contribution reflector, a user authorized to reflect the contribution to the individual resource, , an action that determines whether to replace the individual resource by the new resource through the first user interface, and the reflection of the contribution is, by the computing device, according to whether the individual resource is replaced by the new resource , the action of causing the new resource to replace the individual resource or to maintain the individual resource in the structured document.

다른 실시 예에서, 상기 개별 자원에 관한 상기 액션들은 상기 개별 자원에 대한 읽기를 포함하고, 상기 제2 특정 액션은, 상기 구조화 문서의 복제이며, 상기 구조화 문서의 복제는, 상기 컴퓨팅 장치가, 상기 구조화 문서이거나 상기 구조화 문서에 포함되는 모든 자원들 중에서 상기 사용자에게 읽기 권한이 부여된 자원들인 복제 대상 자원들을 복제하여 신규 구조화 문서를 생성하는 문서 복제 단계, 및 상기 컴퓨팅 장치가, 상기 복제 대상 자원들에 대응하는 모든 꼬리표들을 복제하여 상기 신규 구조화 문서에 적용하는 꼬리표 상속 단계를 포함하는 액션이다.In another embodiment, the actions related to the individual resource include reading the individual resource, the second specific action is duplication of the structured document, and the duplication of the structured document is performed by the computing device, A document duplication step of creating a new structured document by duplicating duplication target resources that are structured documents or resources to which the user is granted read permission among all resources included in the structured document, and the computing device includes the duplication target resources This is an action including a tag inheritance step of duplicating all tags corresponding to and applying to the new structured document.

바람직하게, 상기 개별 자원에 관한 상기 액션들은, 상기 개별 자원에 대한 읽기, 및 상기 개별 자원에 대한 공유를 포함하고, 상기 개별 자원에 대한 공유는, 상기 컴퓨팅 장치가, 상기 공유의 대상으로 지정된 사용자인 수용자(receiver)에 의해 접근 가능한 제2 사용자 인터페이스를 제공하되, 상기 제2 사용자 인터페이스를 통하여 결정된 상기 개별 자원에 대한 상기 수용자의 수락 여부가 참이면, 상기 구조화 문서이거나 상기 구조화 문서에 포함되는 모든 자원들 중에서 상기 수용자에게 읽기 권한이 부여된 자원들인 복제 대상 자원들을 복제하여 신규 구조화 문서를 생성하고, 상기 신규 구조화 문서의 최상위 요소문서의 적어도 하나의 소유자에 상기 수용자가 포함되도록 상기 신규 구조화 문서의 상기 최상위 요소 문서의 소유자 꼬리표를 생성 또는 수정하는 액션이다.Preferably, the actions on the individual resource include reading of the individual resource and sharing of the individual resource, wherein the sharing of the individual resource includes: the computing device, a user designated as a target for sharing A second user interface accessible by a receiver is provided, and if it is true whether the receiver accepts the individual resource determined through the second user interface, the structured document or all of the structured documents included in the structured document A new structured document is created by duplicating replication target resources that are resources to which the recipient is granted read permission among the resources, and the recipient is included in at least one owner of the top-level element document of the new structured document. This action creates or modifies the owner tag of the top-level element document.

유리하게, 상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 되돌려줌(returning)은, 상기 제2 특정 자원, 및 상기 제2 특정 자원의 조상 자원 중에서 상기 제1 특정 액션에 관하여 상기 특정 사용자에 적용되는 꼬리표로서, 상기 제2 특정 자원에 최근접인 자원의 꼬리표인, 특정 꼬리표를 탐색하는 단계; 및 상기 탐색에 따라 획득된 상기 특정 꼬리표에 따라 상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 결정 및 되돌려주는 단계를 포함한다.Advantageously, returning said specific user's right to said first specific action on said second specific resource comprises: said second specific resource and said first specific one of an ancestor resource of said second specific resource searching for a specific tag, which is a tag of a resource closest to the second specific resource, as a tag applied to the specific user with respect to an action; and determining and returning the authority of the specific user with respect to the first specific action on the second specific resource according to the specific tag obtained according to the search.

더 유리하게, 상기 특정 꼬리표를 탐색하는 단계에서, 상기 탐색은, 상기 특정 꼬리표가 소유자 꼬리표이고, 상기 특정 사용자가 상기 특정 꼬리표에 대응하는 상기 적어도 하나의 소유자에 속하는 제1 조건, 상기 특정 꼬리표가 정책 꼬리표이고, 상기 특정 꼬리표에 의하여 상기 제1 특정 액션에 관한 권한이 부여 또는 금지된 제2 조건, 상기 특정 꼬리표가 허가 꼬리표이고, 상기 특정 꼬리표에 의하여 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한이 부여 또는 금지된 제3 조건, 또는 상기 제1 조건, 상기 제2 조건 및 상기 제3 조건을 만족하는 상기 최근접인 자원의 꼬리표가 존재하지 않는 제4 조건을 종료 조건으로 하되, 상기 제4 조건에 대해 상기 제3 조건이 우선 적용되고, 상기 제3 조건에 대해 상기 제2 조건이 우선 적용되며, 상기 제2 조건에 대해 상기 제1 조건이 우선 적용된다.More advantageously, in the step of searching for the specific tag, the searching includes: a first condition that the specific tag is an owner tag, and the specific user belongs to the at least one owner corresponding to the specific tag, the specific tag is a second condition in which a policy tag is a policy tag, and the permission is granted or prohibited with respect to the first specific action by the specific tag, the specific tag is a permission tag, and the specific user's A third condition to which permission is granted or prohibited, or a fourth condition in which there is no tag of the nearest resource that satisfies the first condition, the second condition, and the third condition as the termination condition, For the fourth condition, the third condition is applied first, the second condition is applied first to the third condition, and the first condition is applied first to the second condition.

본 발명의 다른 태양에 따르면, 본 발명에 따른 방법들을 수행하도록 구현된 명령어들(instructions)을 포함하는 컴퓨터 프로그램도 제공된다. 예를 들어, 그러한 컴퓨터 프로그램은 기계 판독 가능한 비일시적 기록 매체에 저장될 수 있다.According to another aspect of the present invention, there is also provided a computer program comprising instructions embodied for performing the methods according to the present invention. For example, such a computer program may be stored in a machine-readable non-transitory recording medium.

본 발명의 또 다른 태양에 따르면, 구조화 문서에 포함된 자원(resource)들에 관한 권한을 꼬리표(tag)들로써 관리하는 컴퓨팅 장치가 제공되는바, 상기 구조화 문서는, 0의 깊이(depth)를 가지는 적어도 하나의 최상위의 요소문서를 포함하고, 1 이상의 깊이를 가지는 적어도 하나의 요소문서를 선택적으로(optionally) 더 포함하며, 상기 구조화 문서에 포함된 모든 요소문서 각각은 내용으로서 적어도 하나의 기록을 포함하고, 상기 자원들은, 상기 구조화 문서, 및 상기 구조화 문서에 포함된 상기 모든 요소문서, 및 모든 상기 기록을 포함하고, 상기 자원들 각각은 수정된 횟수로서 정정 회차를 포함하되, 상기 1 이상의 깊이를 가지는 상기 적어도 하나의 요소문서가 상기 구조화 문서 내에 포함되는 경우, 상기 구조화 문서는, 상기 구조화 문서 내에서 1 이상의 깊이 n을 가지는 모든 요소문서 각각이 n-1의 깊이를 가지는 하나의 요소문서에 종속됨을 표시하는 각각의 종속 관계를 더 포함하며, 상기 자원들에 속한 개별 자원의 사용자는, 일반 사용자, 상기 개별 자원의 적어도 하나의 소유자, 및 상기 개별 자원에 대한 적어도 하나의 특정 사용자를 포함하고, 상기 꼬리표들 각각은, 상기 개별 자원의 상기 적어도 하나의 소유자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하기 위한 소유자 꼬리표, 상기 일반 사용자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하거나 금지하기 위한 정책 꼬리표, 및 상기 적어도 하나의 특정 사용자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하거나 금지하기 위한 허가 꼬리표 중의 하나이고, 상기 컴퓨팅 장치는, (i) 상기 구조화 문서를 생성하기 위한, 사용자로부터의 요청인 구조화 문서 생성 요청, (ii) 상기 구조화 문서 내에 신규 자원을 생성하기 위한, 사용자로부터의 요청인 자원 생성 요청, (iii) 상기 구조화 문서 내 제1 특정 자원에 대한 권한을 추가하기 위한, 사용자로부터의 요청인 권한 추가 요청, (iv) 상기 구조화 문서 내 제2 특정 자원에 대한 제1 특정 액션에 관한 특정 사용자의 권한을 확인하기 위한 요청인 권한 확인 요청, 및 (v) 상기 구조화 문서 내 제3 특정 자원에 대하여 제2 특정 액션을 실행하기 위한, 사용자로부터의 요청인 액션 실행 요청을 획득하는 통신부; 및 상기 구조화 문서 생성 요청에 응하여, 상기 구조화 문서 및 상기 구조화 문서에 포함된 상기 최상위 요소문서를 생성하는 부프로세스, 및 상기 최상위 요소문서에 대응하는 상기 소유자 꼬리표를 생성하는 부프로세스를 수행하는 프로세스, 상기 자원 생성 요청에 응하여, 상기 신규 자원을 생성하는 프로세스, 상기 권한 추가 요청에 응하여, 상기 제1 특정 자원에 대응하는 상기 정책 꼬리표 또는 상기 허가 꼬리표를 생성하는 프로세스, 상기 권한 확인 요청에 대한 응답으로서, 상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 되돌려주는 프로세스, 및 상기 액션 실행 요청에 응하여, 상기 사용자의 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 권한 확인 요청을 통하여 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 상기 사용자의 권한을 획득하고, 획득된 상기 권한에 따라 상기 제2 특정 액션을 실행하거나 실행하지 않는 프로세스를 수행하는 프로세서를 포함한다.According to another aspect of the present invention, there is provided a computing device for managing rights regarding resources included in a structured document as tags, wherein the structured document has a depth of 0 At least one element document of the highest level, and optionally further comprising at least one element document having a depth of one or more, each of the element documents included in the structured document includes at least one record as content and the resources include the structured document, and all the element documents included in the structured document, and all the records, wherein each of the resources includes a revision number as a number of revisions, wherein the one or more depths are included. When the at least one element document having the at least one element document is included in the structured document, the structured document is subordinate to one element document having a depth of n-1 in which all element documents having one or more depth n in the structured document each have a depth of n-1. Further comprising each dependency relationship indicating Each of the tags includes: an owner tag for authorizing actions on the individual resource for the at least one owner of the individual resource, authorizing or prohibiting actions on the individual resource for the general user a policy tag for: (i) a user for generating the structured document, and a request to create a structured document that is a request from, (ii) a request to create a resource, which is a request from a user, to create a new resource in the structured document, (iii) a request to create a first specific resource in the structured document , request to add permission, which is a request from the user , (iv) a permission check request, which is a request for confirming a specific user's permission with respect to a first specific action on a second specific resource in the structured document, and (v) a second specific resource in the structured document a communication unit for obtaining an action execution request, which is a request from a user, for executing a specific action; and a process of performing, in response to the structured document creation request, a subprocess for generating the structured document and the top-level element document included in the structured document, and a sub-process for generating the owner tag corresponding to the top-level element document; a process of creating the new resource in response to the resource creation request; a process of generating the policy tag or the permission tag corresponding to the first specific resource in response to the permission addition request; in response to the permission check request , a process for returning the authority of the specific user with respect to the first specific action on the second specific resource, and in response to the action execution request, regarding the second specific action of the user on the third specific resource A processor that acquires the user's right with respect to the second specific action on the third specific resource through a permission check request, and performs a process that executes or does not execute the second specific action according to the acquired right include

본 발명에 의하면 문서에 속한 부분마다 그 내용의 작성, 읽기, 수정, 삭제, 공유, 기여 등의 관리, 특히 권한 설정이 용이해지며, 특히, 다수 사용자들의 읽기/쓰기 접근, 이용 등에 대항하여 해당 문서의 각 부분별 무결성(integrity), 재활용성(recyclability) 등이 효과적으로 유지될 수 있게 할 수 있는 장점이 있다.According to the present invention, it is easy to create, read, modify, delete, share, contribute, etc., manage the contents of each part belonging to a document, in particular, set permissions, and, in particular, against the read/write access and use of multiple users. There is an advantage in that the integrity and recyclability of each part of the document can be effectively maintained.

본 발명의 실시 예의 설명에 이용되기 위하여 첨부된 아래 도면들은 본 발명의 실시 예들 중 단지 일부일 뿐이며, 본 발명이 속한 기술분야에서 통상의 지식을 가진 사람(이하 "통상의 기술자"라 함)은 별개의 발명에 이를 정도의 노력 없이 이 도면들에 기초하여 다른 도면들을 얻을 수 있다.
도 1은 본 개시서에 따라 구조화 문서에 포함된 자원들에 관한 권한을 관리하는 방법 (이하 "구조화 문서 권한 관리 방법"이라 함)을 수행하는 컴퓨팅 장치의 예시적 구성을 개략적으로 도시한 개념도이다.
도 2는 본 개시서에서 다뤄지는 구조화 문서를 예시적으로 도시한 블록도이다.
도 3은 본 개시서에서 다뤄지는 구조화 문서, 그러한 구조화 문서에 포함되는 요소문서, 그러한 요소문서에 포함되는 기록을 비롯한 자원들 각각에 대응하는 꼬리표들을 예시적으로 도시한 블록도이다.
도 4는 본 개시서에 따른 구조화 문서 권한 관리 방법을 수행하는 컴퓨팅 장치의 하드웨어 또는 소프트웨어 구성요소를 도시한 예시적 블록도이다.
도 5는 본 개시서에 따른 구조화 문서 권한 관리 방법의 일 실시 예를 도시한 흐름도이다.
도 6는 본 개시서의 구조화 문서 권한 관리 방법에 따라 구조화 문서를 생성하고 그 구조화 문서에 대응하는 소유자 꼬리표를 생성하는 과정을 나타낸 시퀀스 다이어그램이다.
도 7은 본 개시서의 구조화 문서 관리 방법에 따라 특정 자원에 대응하는 정책 꼬리표 또는 허가 꼬리표를 생성하는 과정을 나타낸 시퀀스 다이어그램이다.
도 8은 본 개시서의 구조화 문서 관리 방법에 따라 꼬리표를 탐색하는 과정을 나타낸 흐름도이다.
도 9는 본 개시서의 구조화 문서 관리 방법에 따라 꼬리표를 탐색한 결과의 예시를 보인 블록도이다.
도 10은 본 개시서의 구조화 문서 관리 방법에 따라 사용자의 권한을 획득하고 획득된 그 권한에 따라 상기 제2 특정 액션을 실행하거나 실행하지 않는 과정을 나타낸 시퀀스 다이어그램이다.
The accompanying drawings for use in the description of the embodiments of the present invention are only a part of the embodiments of the present invention, and a person of ordinary skill in the art to which the present invention belongs (hereinafter referred to as "a person skilled in the art") is separate Other drawings may be obtained on the basis of these drawings without effort reaching the invention of
1 is a conceptual diagram schematically illustrating an exemplary configuration of a computing device performing a method for managing rights on resources included in a structured document (hereinafter referred to as a “structured document rights management method”) according to the present disclosure. .
2 is a block diagram exemplarily illustrating a structured document dealt with in the present disclosure.
3 is a block diagram exemplarily showing tags corresponding to each of the resources including a structured document, an element document included in the structured document, and a record included in the structured document, which are dealt with in the present disclosure.
4 is an exemplary block diagram illustrating hardware or software components of a computing device that performs a structured document rights management method according to the present disclosure.
5 is a flowchart illustrating an embodiment of a method for managing structured document rights according to the present disclosure.
6 is a sequence diagram illustrating a process of generating a structured document and generating an owner tag corresponding to the structured document according to the structured document rights management method of the present disclosure.
7 is a sequence diagram illustrating a process of generating a policy tag or a permission tag corresponding to a specific resource according to the structured document management method of the present disclosure.
8 is a flowchart illustrating a process of searching for a tag according to the structured document management method of the present disclosure.
9 is a block diagram illustrating an example of a tag search result according to the structured document management method of the present disclosure.
10 is a sequence diagram illustrating a process of obtaining a user's authority according to the structured document management method of the present disclosure and executing or not executing the second specific action according to the obtained authority.

후술하는 본 발명에 대한 상세한 설명은, 본 발명의 목적들, 기술적 해법들 및 장점들을 분명하게 하기 위하여 본 발명이 실시될 수 있는 특정 실시 예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시 예는 통상의 기술자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The following detailed description of the present invention refers to the accompanying drawings, which show by way of illustration a specific embodiment in which the present invention may be practiced, in order to clarify the objects, technical solutions and advantages of the present invention. These embodiments are described in sufficient detail to enable those skilled in the art to practice the present invention. In the description with reference to the accompanying drawings, the same components are assigned the same reference numerals regardless of the reference numerals, and the overlapping description thereof will be omitted. Like reference numerals in the drawings refer to the same or similar functions throughout the various aspects.

"제1" 또는 "제2" 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 하는바, 어떠한 순서도 시사하고 있지 않기 때문이다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Although terms such as “first” or “second” may be used to describe various elements, these terms should be interpreted only for the purpose of distinguishing one element from another, and no order is implied. because it doesn't For example, a first component may be termed a second component, and similarly, a second component may also be termed a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.When a component is referred to as being “connected to” another component, it may be directly connected or connected to the other component, but it should be understood that another component may exist in between.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 개시서에서, "포함하다" 또는 "가지다" 등의 용어는 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present disclosure, terms such as “comprise” or “have” are intended to designate that the described feature, number, step, operation, component, part, or combination thereof exists, and includes one or more other features or numbers, It should be understood that the possibility of the presence or addition of steps, operations, components, parts or combinations thereof is not precluded in advance.

본 개시서에서 "구조화 문서"는 일대일 또는 일대다(1:多)의 종속 관계(또는 이와 동치인 포함 관계 등)로 서로 이어지는 하나 이상의 개별의 요소문서들을 포함하는 문서 묶음을 지칭하는 개념이다. 구조화 문서, 요소문서, 요소문서의 내용인 기록은 각각 '자원(resource)'이라는 상위 개념으로 포괄될 수 있으며, 요소문서들 간의 종속 관계 또는 포함 관계는 자원들 간의 종속 관계로 일반화될 수 있다.In the present disclosure, a "structured document" is a concept that refers to a document bundle including one or more individual element documents connected to each other in a one-to-one or one-to-many (1:many) dependency relationship (or an equivalent inclusion relationship, etc.). Structured documents, element documents, and records, which are the contents of element documents, can each be encompassed as a higher-level concept called 'resource', and the dependency relationship or inclusion relationship between element documents can be generalized as a dependency relationship between resources.

그런데 자원들 간의 이러한 종속 관계 또는 포함 관계는 개념적으로 상하위 관계와 동치의 것이다. 편의 상, 본 개시서에서 어느 자원 A에 다른 자원 B가 종속될 때, 자원 A를 자원 B의 "부모 자원"이라고 지칭할 수 있고, 자원 B를 자원 A의 "자식 자원"이라고 지칭할 수 있다. 이를 확장하여, 부모 자원, 부모 자원의 부모 자원, 부모 자원의 부모 자원의 부모 자원 등을 "조상 자원"이라고 지칭하고, 자식 자원, 자식 자원의 자식 자원, 자식 자원의 자식 자원의 자식 자원 등을 "자손 자원"이라고 지칭할 수 있다.However, such a dependency or containment relationship between resources is conceptually equivalent to a subordinate relationship. For convenience, in this disclosure, when a resource A depends on another resource B, resource A may be referred to as a "parent resource" of resource B, and resource B may be referred to as a "child resource" of resource A. . By extending this, the parent resource, the parent resource of the parent resource, the parent resource of the parent resource of the parent resource, etc. are referred to as "ancestral resources", and the child resource, the child resource of the child resource, the child resource of the child resource of the child resource, etc. It may be referred to as a “progeny resource”.

본 개시서에서 "권한" 또는 "권한 정보"는 어느 사용자가 어느 자원에 관하여 어느 액션(action; 작용)을 취할 수 있는지, 혹은 없는지를 설정한 값을 지칭하는바, 불 값(Boolean value), 열거형 값(enumeration value), 정수형 값(integer value) 등의 형태를 가질 수 있다. 본 개시서에서 "권한이 부여"되었다는 표현은 그 권한이 참(true) 값을 가짐을 의미할 수 있으며, "권한이 금지"되었다는 표현은 그 권한이 거짓(false) 값을 가짐을 의미할 수 있다.In the present disclosure, "authority" or "right information" refers to a value that sets whether a user can or cannot take an action with respect to which resource. A Boolean value, It may have the form of an enumeration value, an integer value, or the like. In this disclosure, the expression "authorization is granted" may mean that the authority has a true value, and the expression "authorization is prohibited" may mean that the authority has a false value. there is.

한편, 정수형 값으로 된 권한 정보는 어느 사용자의 어느 자원에 관한 여러 가지 액션들에 대한 권한을 비트 표현에 의하여 하나의 값으로 표현할 수 있을 뿐만 아니라, 컴퓨팅 장치의 비트 연산은 논리 연산에 의한 분기보다 월등히 빠르므로, 권한을 정수형으로 표현하는 방식의 유용함은 통상의 기술자에게 잘 알려져 있다.On the other hand, the permission information in the form of an integer value not only can express the permission of a certain user for various actions on a certain resource as a single value by bit expression, but also the bit operation of the computing device is more efficient than branching by logical operation. Since it is very fast, the usefulness of expressing privileges as integers is well known to those skilled in the art.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 개시서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and unless explicitly defined in the present disclosure, it should be interpreted in an ideal or excessively formal meaning doesn't happen

더욱이 본 발명은 본 개시서에 표시된 실시 예들의 모든 가능한 조합들을 망라한다. 본 발명의 다양한 실시 예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시 예에 관련하여 본 발명의 사상 및 범위를 벗어나지 않으면서 다른 실시 예로 구현될 수 있다. 또한, 각각의 개시된 실시 예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 사상 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니다. Moreover, the present invention encompasses all possible combinations of the embodiments indicated in the present disclosure. It should be understood that various embodiments of the present invention are different but need not be mutually exclusive. For example, specific shapes, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the present invention in relation to one embodiment. In addition, it should be understood that the position or arrangement of individual components in each disclosed embodiment may be changed without departing from the spirit and scope of the present invention. Accordingly, the detailed description given below is not intended to be taken in a limiting sense.

본 개시서에서 달리 표시되거나 분명히 문맥에 모순되지 않는 한, 단수로 지칭된 항목은, 그 문맥에서 달리 요구되지 않는 한, 복수의 것을 아우른다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.In this disclosure, unless otherwise indicated or clearly contradicted by context, items referred to in the singular encompass the plural unless the context requires otherwise. In addition, in describing the present invention, if it is determined that a detailed description of a related known configuration or function may obscure the gist of the present invention, the detailed description thereof will be omitted.

이하, 통상의 기술자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시 예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.Hereinafter, in order to enable those skilled in the art to easily practice the present invention, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 개시서에 따른 구조화 문서 권한 관리 방법을 수행하는 컴퓨팅 장치의 예시적 구성을 개략적으로 도시한 개념도이다.1 is a conceptual diagram schematically illustrating an exemplary configuration of a computing device that performs a structured document rights management method according to the present disclosure.

도 1을 참조하면, 본 개시서의 일 실시 예에 따른 컴퓨팅 장치(100)는, 통신부(110) 및 프로세서(120)를 포함하며, 상기 통신부(110)를 통하여 외부 컴퓨팅 장치(미도시)와 직간접적으로 통신할 수 있다.Referring to FIG. 1 , a computing device 100 according to an embodiment of the present disclosure includes a communication unit 110 and a processor 120 , and communicates with an external computing device (not shown) through the communication unit 110 . Can communicate directly or indirectly.

구체적으로, 상기 컴퓨팅 장치(100)는, 전형적인 컴퓨터 하드웨어(예컨대, 컴퓨터, 프로세서, 메모리, 스토리지(storage), 입력 장치 및 출력 장치, 기타 기존의 컴퓨팅 장치의 구성요소들을 포함할 수 있는 장치; 라우터, 스위치 등과 같은 전자 통신 장치; 네트워크 부착 스토리지(NAS; network-attached storage) 및 스토리지 영역 네트워크(SAN; storage area network)와 같은 전자 정보 스토리지 시스템)와 컴퓨터 소프트웨어(즉, 컴퓨팅 장치로 하여금 특정의 방식으로 기능하게 하는 명령어들)의 조합을 이용하여 원하는 시스템 성능을 달성하는 것일 수 있다. 상기 스토리지는 하드 디스크, USB(Universal Serial Bus) 메모리와 같은 기억 장치뿐만 아니라 클라우드 서버와 같은 네트워크 연결 기반의 저장 장치의 형태를 포함할 수 있다.Specifically, the computing device 100 may include typical computer hardware (eg, a computer, a processor, a memory, storage, an input device and an output device, a device that may include other components of a conventional computing device; a router; , electronic communication devices such as switches, etc.; electronic information storage systems such as network-attached storage (NAS) and storage area networks (SANs)) and computer software (ie, enabling the computing device to operate in a specific way). to achieve the desired system performance by using a combination of instructions that make it function as The storage may include a storage device such as a hard disk and a Universal Serial Bus (USB) memory, as well as a storage device based on a network connection such as a cloud server.

이와 같은 컴퓨팅 장치의 통신부(110)는 연동되는 타 컴퓨팅 장치, 예컨대 전용의 저장소, 예컨대, 데이터베이스 서버 등과의 사이에서 요청과 응답을 송수신할 수 있는바, 일 예시로서 그러한 요청과 응답은 동일한 TCP(Transmission Control Protocol) 세션(session)에 의하여 이루어질 수 있지만, 이에 한정되지는 않는 바, 예컨대 UDP(User Datagram Protocol) 데이터그램(datagram)으로서 송수신될 수도 있을 것이다.The communication unit 110 of such a computing device may transmit/receive a request and a response between an interworking other computing device, for example, a dedicated storage, for example, a database server, etc. As an example, such a request and a response are the same TCP ( Transmission Control Protocol) may be performed by a session, but is not limited thereto, and may be transmitted and received as, for example, User Datagram Protocol (UDP) datagrams.

구체적으로, 통신부(110)는 통신 인터페이스를 포함하는 통신 모듈의 형태로 구현될 수 있다. 이를테면, 통신 인터페이스는 WLAN(Wireless LAN), WiFi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMax(World interoperability for Microwave access), HSDPA(High Speed Downlink Packet Access) 등의 무선 인터넷 인터페이스와 블루투스(Bluetooth™), RFID(Radio Frequency IDentification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra-WideBand), ZigBee, NFC(Near Field Communication) 등의 근거리 통신 인터페이스를 포함할 수 있다. 뿐만 아니라, 통신 인터페이스는 프로세서가 외부와 통신을 수행할 수 있는 모든 인터페이스{예를 들어, 데이터 버스(data bus)와 같은 여러 버스, 유무선 인터페이스}를 나타낼 수 있다.Specifically, the communication unit 110 may be implemented in the form of a communication module including a communication interface. For example, the communication interface is WLAN (Wireless LAN), WiFi (Wireless Fidelity) Direct, DLNA (Digital Living Network Alliance), WiBro (Wireless Broadband), WiMax (World interoperability for Microwave access), HSDPA (High Speed Downlink Packet Access), etc. Including wireless Internet interface of wireless internet interface and short-distance communication interface such as Bluetooth™, RFID (Radio Frequency IDentification), Infrared Data Association (IrDA), UWB (Ultra-WideBand), ZigBee, NFC (Near Field Communication) can do. In addition, the communication interface may represent all interfaces through which the processor can communicate with the outside (eg, multiple buses such as a data bus, wired/wireless interfaces).

예를 들어, 통신부(110)는 이와 같이 적합한 통신 인터페이스를 통해 타 컴퓨팅 장치로부터 데이터를 송수신할 수 있다. 덧붙여, 넓은 의미에서 상기 통신부(110)는 명령어 또는 지시 등을 전달받기 위한 키보드, 마우스, 기타 외부 입력 장치, 인쇄 장치, 디스플레이, 기타 외부 출력 장치를 포함하거나 이들과 연동될 수 있다. 컴퓨팅 장치, 예컨대, 휴대 단말 또는 개인용 컴퓨터(personal computer; PC)와 같은 사용자 단말이나 서버의 사용자에게 적합한 사용자 인터페이스를 표시하여 제공함으로써 사용자와의 상호작용을 가능하게 하기 위하여, 컴퓨팅 장치(100)는 디스플레이부를 내장하거나 상기 통신부(110)를 통하여 외부의 디스플레이 장치와 연동될 수 있음이 알려져 있다. 예컨대, 그러한 디스플레이부 또는 디스플레이 장치는 터치 입력이 가능한 터치스크린일 수 있다.For example, the communication unit 110 may transmit/receive data to and from other computing devices through the appropriate communication interface as described above. In addition, in a broad sense, the communication unit 110 may include or interwork with a keyboard, a mouse, other external input devices, printing devices, displays, and other external output devices for receiving commands or instructions. In order to enable interaction with a user by displaying and providing a user interface suitable for a user of a computing device, for example, a user terminal or a server such as a portable terminal or a personal computer (PC), the computing device 100 is It is known that a display unit can be built in or can be linked with an external display device through the communication unit 110 . For example, such a display unit or display device may be a touch screen capable of a touch input.

또한, 컴퓨팅 장치의 프로세서(120)는 캐시 메모리(cache memory)와 같은 내부 메모리 및/또는 외부 메모리를 가지는 하나 이상의, MPU(micro processing unit), CPU(central processing unit), GPU(graphics processing unit), NPU(neural processing unit) 또는 TPU(tensor processing unit)와 같은 마이크로프로세서, 컨트롤러, 예컨대, 마이크로컨트롤러, 임베디드 마이크로컨트롤러, 마이크로컴퓨터, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 예컨대, 프로그래머블 디지털 신호 프로세서 또는 기타 프로그래머블 장치 등의 하드웨어 구성을 포함할 수 있다. 또한, 운영체제, 특정 목적을 수행하는 애플리케이션의 소프트웨어 구성을 더 포함할 수도 있다.In addition, the processor 120 of the computing device may include one or more micro processing units (MPUs), central processing units (CPUs), graphics processing units (GPUs) having internal memory and/or external memory such as cache memory. , a microprocessor, such as a neural processing unit (NPU) or tensor processing unit (TPU), a controller such as a microcontroller, an embedded microcontroller, a microcomputer, an arithmetic logic unit (ALU), a digital signal processor, such as , a programmable digital signal processor or other programmable device. In addition, the operating system may further include a software configuration of an application for performing a specific purpose.

이제 도 2 내지 도 9를 참조하여 본 개시서에 따른 구조화 문서 권한 관리 방법을 상세히 후술하기로 한다. Now, a structured document rights management method according to the present disclosure will be described in detail below with reference to FIGS. 2 to 9 .

도 2는 본 개시서에서 다뤄지는 구조화 문서를 예시적으로 도시한 블록도이다.2 is a block diagram exemplarily illustrating a structured document dealt with in the present disclosure.

도 2를 참조하면, 구조화 문서(200)는 0의 깊이(depth)를 가지는 적어도 하나의 최상위의 요소문서(210)를 포함한다. 여기에서 요소문서의 깊이는 0 이상인 정수, 즉, 음이 아닌 정수(non-negative integer)의 값을 가진다.Referring to FIG. 2 , the structured document 200 includes at least one uppermost element document 210 having a depth of zero. Here, the depth of the element document has a value of an integer greater than or equal to 0, that is, a non-negative integer.

구조화 문서(200)가 1 이상의 깊이를 가지는 어떠한 요소문서도 포함하지 않을 때 그 구조화 문서를 자명한(trivial) 구조화 문서라고 지칭할 수 있고, 1 이상의 깊이를 가지는 적어도 하나의 요소문서(예컨대, 220 내지 270)를 포함할 때 비자명한(non-trivial) 구조화 문서라고 지칭할 수 있다. When the structured document 200 does not include any element documents having a depth of one or more, the structured document may be referred to as a trivial structured document, and at least one element document having a depth of one or more (eg, 220 to 270) may be referred to as a non-trivial structured document.

도 2의 예시에서는, 깊이 1의 요소문서들(220 및 230)이 깊이 0의 요소문서(210)에 종속되어 있고, 깊이 2의 요소문서들(240 및 250)이 깊이 1의 요소문서(220)에 종속되어 있으며, 깊이 3의 요소문서들(260 및 270)이 깊이 2의 요소문서(240)에 종속되어 있다.In the example of FIG. 2 , element documents 220 and 230 of depth 1 are subordinate to element document 210 of depth 0, and element documents 240 and 250 of depth 2 are element document 220 of depth 1. ), and the element documents 260 and 270 of depth 3 depend on the element document 240 of depth 2.

구조화 문서(200)는 1 이상의 깊이를 가지는 요소문서를 선택적(optionally)으로 더 포함할 수 있으며, 구조화 문서(200) 내에서 1 이상의 깊이 n을 가지는 모든 요소문서 각각은 n-1의 깊이를 가지는 하나의 요소문서에 종속되어야 한다. 구조화 문서 내 개별 요소문서들 간의 종속 관계는 '종속 관계'라는 데이터로 구조화 문서(200)에 포함된다. The structured document 200 may optionally further include an element document having a depth of one or more, and each of all element documents having a depth n of one or more in the structured document 200 has a depth of n-1. It should depend on one element document. The dependent relationship between individual element documents in the structured document is included in the structured document 200 as data called 'dependent relationship'.

도 2의 예시를 참조하면, 구조화 문서(200)에 포함된 모든 요소 문서 각각은 그 요소 문서의 내용으로서 적어도 하나의 기록(record; 212 내지 276)을 포함한다. 기록은 텍스트, 수치 또는 그림을 포함할 수 있으나 이에 한정되지 않고 다양한 포맷의 데이터를 포함할 수 있음은 물론이다. 어느 요소 문서의 내용에 해당하는 기록들 각각은, 그 요소 문서의 자식 자원들 각각을 사용할 것인지 그렇지 않을 것인지에 관하여 그 사용(또는 표시) 여부 및/또는 활성화(또는 강조) 여부를 나타내는 값들, 예컨대, 불 값(Boolean value)들, 및 상기 자식 자원들을 표시하는 때 그 표시하는 순서를 나타내는 값인 표시 순서값, 예컨대, 정수 값(integer value)들을 포함할 수 있다.Referring to the example of FIG. 2 , each of all element documents included in the structured document 200 includes at least one record 212 to 276 as contents of the element document. The record may include text, figures, or pictures, but is not limited thereto and may include data in various formats. Each of the records corresponding to the content of an element document includes values indicating whether to use (or display) and/or activate (or highlight) each of the child resources of the element document whether to use or not, for example, It may include Boolean values, and display order values, eg, integer values, which are values indicating an order of displaying the child resources when displaying the child resources.

전술한 바와 같이, '자원'은 구조화 문서(200), 그 구조화 문서에 포함된 모든 요소문서(210 내지 270)뿐만 아니라 그 요소문서(210 내지 270)의 기록들(212 내지 276)을 망라한다. 자원 각각은 그 자원이 수정된 횟수인 정정 회차(revision count)의 정보를 포함한다.As described above, the 'resource' includes the structured document 200, all element documents 210 to 270 included in the structured document, as well as records 212 to 276 of the element document 210 to 270. . Each resource includes information of a revision count, which is the number of times the resource has been modified.

도 3은 본 개시서에서 다뤄지는 구조화 문서, 그러한 구조화 문서에 포함되는 요소문서, 그러한 요소문서에 포함되는 기록을 비롯한 자원들 각각에 대응하는 꼬리표들을 예시적으로 도시한 블록도이다. 3 is a block diagram exemplarily showing tags corresponding to each of the resources including a structured document, an element document included in the structured document, and a record included in the structured document, which are dealt with in the present disclosure.

도 3에 예시된 꼬리표들을 설명하기에 앞서, 어느 자원에 관한 권한이 부여 또는 금지되는 주체인 사용자(user)부터 설명하면, 개별 자원의 사용자는, 일반 사용자(everybody), 상기 개별 자원의 적어도 하나의 소유자(owner), 및 상기 개별 자원에 대한 적어도 하나의 특정 사용자(specific user)를 포함한다.Before describing the tags illustrated in FIG. 3 , the user, who is the subject to which authority on a certain resource is granted or prohibited, will be described. A user of an individual resource is a general user (everybody), at least one of the individual resources. an owner of , and at least one specific user for the individual resource.

그렇다면, 꼬리표의 종류에는 개별 자원(310a)의 상기 적어도 소유자(322)에 대하여 그 개별 자원(310a)에 관한 액션들의 권한을 부여하기 위한 소유자 꼬리표(320), 상기 일반 사용자에 대하여 개별 자원(310b)에 관한 액션들의 권한을 부여하거나 금지하기 위한 정책 꼬리표(340), 상기 적어도 하나의 특정 사용자(362)에 대하여 개별 자원(310c)에 관한 액션들의 권한을 부여하거나 금지하기 위한 허가 꼬리표(360)가 포함된다. 상기 일반 사용자는 붙특정 사용자를 지칭하는 것이므로 개별 자원(310b)과 정책 꼬리표(340) 사이에는 일대일 대응 관계가 있으며, 개별 자원(310a)과 소유자 꼬리표(320) 사이에는 일대일 대응 관계 또는 일대다 대응 관계가 있다. 개별 자원(310a)이 소유자가 유일하다면, 개별 자원과 소유자 꼬리표 간에는 일대일 대응 관계가 성립할 것이나 개별 자원(310a)의 소유자가 여럿이라면, 일대다 대응 관계(하나의 소유자 꼬리표에 하나의 소유자만이 대응되는 경우)가 성립될 수도 있고 일대일 대응 관계(하나의 소유자 꼬리표에 여러 소유자가 대응되는 경우)가 성립될 수도 있다.If so, the type of tag includes an owner tag 320 for authorizing actions on the individual resource 310a for at least the owner 322 of the individual resource 310a, and an individual resource 310b for the general user. ) policy tag 340 for authorizing or prohibiting actions on is included Since the general user refers to a specific user, there is a one-to-one correspondence between the individual resource 310b and the policy tag 340, and there is a one-to-one correspondence or a one-to-many correspondence between the individual resource 310a and the owner tag 320. There is a relationship. If the individual resource 310a has only one owner, a one-to-one correspondence between the individual resource and the owner tag will be established. Correspondence) may be established or a one-to-one correspondence relationship (when multiple owners correspond to one owner tag) may be established.

마찬가지로, 개별 자원(310c)과 허가 꼬리표(360) 사이에도 일대일 대응 관계 또는 일대다 대응 관계가 성립할 수 있는바, 통상의 기술자는 필요에 따라 그 중 하나를 설계안으로서 취사선택할 수 있을 것이다.Similarly, a one-to-one correspondence or a one-to-many correspondence may be established between the individual resource 310c and the permission tag 360 , and a person skilled in the art will be able to select one of them as a design proposal, if necessary.

여기에서 소유자 꼬리표(320)가 어떠한 소유자(322)에 대하여 어떠한 액션의 권한도 금지하기 위한 것이 아님은 물론이다.It goes without saying that the owner tag 320 is not intended to prohibit the authority of any action for any owner 322 .

도 4는 본 개시서에 따른 구조화 문서 권한 관리 방법을 수행하는 컴퓨팅 장치의 하드웨어 또는 소프트웨어 구성요소를 도시한 예시적 블록도이고, 도 5는 본 개시서에 따른 구조화 문서 권한 관리 방법의 일 실시 예를 도시한 흐름도이다.4 is an exemplary block diagram illustrating hardware or software components of a computing device performing a structured document rights management method according to the present disclosure, and FIG. 5 is an embodiment of a structured document rights management method according to the present disclosure is a flowchart showing

도 4 및 도 5를 참조하면, 본 개시서의 구조화 문서 권한 관리 방법은, 구조화 문서를 생성하기 위한, 사용자로부터의 요청인 구조화 문서 생성 요청에 응하여, 컴퓨팅 장치, 예컨대 서버(100)에 의하여 구현되는 구조화 문서 생성 모듈(410)이, 구조화 문서(200) 및 그 구조화 문서(200)에 포함되는 최상위 요소문서(210)를 생성하고, 서버(100)에 의하여 구현되거나 서버(100)에 연동되는 소정의 저장소(420)에 보유하는 프로세스(S100a; 미도시), 및 최상위 요소문서(210)에 대응하는 소유자 꼬리표로서 상기 사용자를 소유자로 지정하는 소유자 꼬리표를 생성하고 소정의 저장소(420)에 보유하는 프로세스(S100b; 미도시)를 수행함(S100)을 포함한다. 4 and 5 , the structured document rights management method of the present disclosure is implemented by a computing device, for example, the server 100 in response to a structured document generation request, which is a request from a user, for generating a structured document. The structured document generation module 410 that is to be implemented generates the structured document 200 and the top element document 210 included in the structured document 200, and is implemented by the server 100 or linked to the server 100 A process (S100a; not shown) for holding in a predetermined storage 420, and an owner tag corresponding to the uppermost element document 210, generating an owner tag designating the user as an owner and holding it in the predetermined storage 420 and performing a process (S100b; not shown) to (S100).

본 개시서에서 설명되는 구조화 문서 생성 요청, 자원 생성 요청, 권한 추가 요청, 권한 확인 요청, 액션 실행 요청 등은 사용자가 이용하는 타 컴퓨팅 장치, 예컨대, 클라이언트(100')로부터 획득될 수 있음은 물론이다.Of course, the structured document creation request, resource creation request, permission addition request, permission check request, action execution request, etc. described in this disclosure may be obtained from another computing device used by the user, for example, the client 100 ′. .

즉, 도 4에 예시된 구성요소들 중 저장소(420)는 다른 모듈들과 동일한 컴퓨팅 장치인 서버(100)에서 구현될 수 있으나, 별도의 컴퓨팅 장치인 저장소 서버(미도시)에서 구현되어도 무방하다.That is, among the components illustrated in FIG. 4 , the storage 420 may be implemented in the server 100 , which is the same computing device as other modules, but may be implemented in a storage server (not shown) as a separate computing device. .

도 6는 본 개시서의 구조화 문서 권한 관리 방법에 따라 구조화 문서를 생성하고 그 구조화 문서에 대응하는 소유자 꼬리표를 생성하는 과정을 나타낸 시퀀스 다이어그램이다.6 is a sequence diagram illustrating a process of generating a structured document and generating an owner tag corresponding to the structured document according to the structured document rights management method of the present disclosure.

도 4 및 도 6에 예시된 바와 같이, 구조화 문서(200) 및 이를 비롯한 자원들과 상기 꼬리표들은 동일한 저장소(420)에서 보유 및 관리될 수도 있으나, 상이한 정보 단위로서 상이한 저장소들, 예컨대, 구조화 문서 및 자원들은 문서 저장소(422)에서, 꼬리표들은 꼬리표 저장소(424)에서 보유 및 관리될 수 있음은 물론이다. 그러한 정보 단위는 예컨대 SQL 기반 데이터베이스의 테이블(table)일 수 있으나 이에 한정되지 않는다.As illustrated in FIGS. 4 and 6 , the structured document 200 and its resources and the tags may be held and managed in the same repository 420 , but in different repositories as different units of information, such as structured documents. and resources may be held and managed in document repository 422 and tags in tag repository 424 . Such an information unit may be, for example, a table of an SQL-based database, but is not limited thereto.

프로세스(S100a)에서 최상위 요소문서(210)의 생성은 구조화 문서 생성 모듈(410)에 의하여 호출된 자원 생성 모듈(430)에 의하여 수행될 수도 있다. 프로세스(S100a)에서의 최상위 요소문서(210)의 생성은 구조화 문서(200)의 생성을 요청한 상기 사용자가 그 생성된 구조화 문서(200)의 소유자가 되므로, 자원 생성 모듈(430)이 후술하는 바와 같은 상기 사용자의 권한 확인을 요청할 필요가 없는바, 후술하는 권한 확인이 생략될 수 있다.The generation of the uppermost element document 210 in the process S100a may be performed by the resource generating module 430 called by the structured document generating module 410 . The generation of the top-level element document 210 in the process S100a means that the user who requested the generation of the structured document 200 becomes the owner of the generated structured document 200, so that the resource creation module 430 is described later. Since there is no need to request the permission check of the same user, the permission check, which will be described later, may be omitted.

프로세스(S100b)에서 상기 소유자 꼬리표의 생성은 구조화 문서 생성 모듈(410)에 의하여 호출된 꼬리표 생성 모듈(440)에 의하여 수행될 수도 있다. 프로세스(S100a)에서와 마찬가지로, 프로세스(S100b)에서의 상기 소유자 꼬리표의 생성은 상기 구조화 문서의 생성을 요청한 상기 사용자가 그 생성된 구조화 문서(200)의 소유자가 되므로 꼬리표 생성 모듈(440)이 후술하는 바와 같은 상기 사용자의 권한 확인을 요청할 필요가 없다.The generation of the owner tag in the process S100b may be performed by the tag generating module 440 called by the structured document generating module 410 . As in the process S100a, the generation of the owner tag in the process S100b means that the user who requested the creation of the structured document becomes the owner of the generated structured document 200, so that the tag generation module 440 is described later. There is no need to request confirmation of the user's authority as described above.

상기 소유자 꼬리표는 이에 의하여 지정된 소유자가 구조화 문서(200)에 대한 모든 권한을 가짐을 나타내는 데이터인바, 앞서 언급된 바와 같이 상기 소유자 꼬리표에 대응하는 소유자는 단수에 한정되지 않고 다수가 될 수도 있다.The owner tag is data indicating that the owner designated thereby has all rights to the structured document 200, and as mentioned above, the number of owners corresponding to the owner tag is not limited to singular, but may be plural.

한편, 상기 구조화 문서에 대응하는 소유자 꼬리표는 곧 상기 최상위 요소문서에 대응하는 상기 소유자 꼬리표인 것으로 정의되는바, 이는 후술하는 꼬리표에 의한 권한 탐색 시 데이터 취급의 일관성을 기하기 위함이다.On the other hand, the owner tag corresponding to the structured document is defined as the owner tag corresponding to the uppermost element document. This is to ensure consistency in data handling when searching for rights by a tag, which will be described later.

계속해서 도 4 및 도 5를 참조하면, 본 개시서의 구조화 문서 권한 관리 방법은, 서버(100)에 의하여 구현되는 자원 생성 모듈(410)이, 구조화 문서(200) 내에 신규 자원을 생성하기 위한, 사용자로부터의 요청인 자원 생성 요청에 응하여 상기 신규 자원을 생성함(S200)을 더 포함한다. 상기 신규 자원은 구조화 문서(200)에 포함되는 신규의 요소문서일 수도 있으나 이에 한정되지 않고, 예를 들어, 구조화 문서(200)의 어느 요소문서에 포함되는 신규의 기록일 수도 있음은 물론이다.Continuing to refer to FIGS. 4 and 5 , in the structured document rights management method of the present disclosure, the resource generating module 410 implemented by the server 100 is configured to generate a new resource in the structured document 200 . , and generating the new resource in response to a resource creation request, which is a request from a user (S200). The new resource may be a new element document included in the structured document 200 , but is not limited thereto, and for example, may be a new record included in any element document of the structured document 200 .

또한, 본 개시서의 구조화 문서 권한 관리 방법은, 서버(100)에 의하여 구현되는 꼬리표 생성 모듈(440)이, 구조화 문서(200) 내의 제1 특정 자원에 대한 권한을 추가하기 위한, 사용자로부터의 요청인 권한 추가 요청에 응하여, 상기 제1 특정 자원에 대응하는 정책 꼬리표 또는 허가 꼬리표를 생성함(S300)을 더 포함하는바, 정책 꼬리표 및 허가 꼬리표는 앞서 설명된 바와 같다.In addition, in the structured document authority management method of the present disclosure, the tag generation module 440 implemented by the server 100 adds authority to the first specific resource in the structured document 200, from a user The method further includes generating ( S300 ) a policy tag or a permission tag corresponding to the first specific resource in response to the request for adding permission, which is the same as the policy tag and permission tag described above.

도 7은 본 개시서의 구조화 문서 관리 방법에 따라 특정 자원에 대응하는 정책 꼬리표 또는 허가 꼬리표를 생성하는 과정을 나타낸 시퀀스 다이어그램이다.7 is a sequence diagram illustrating a process of generating a policy tag or a permission tag corresponding to a specific resource according to the structured document management method of the present disclosure.

도 7을 참조하여 구체적으로 설명하면, 꼬리표 생성 모듈(440)은, 상기 제1 특정 자원을 상기 사용자로 하여금 선택하게 하고(S340), 상기 제1 특정 자원에 대한 꼬리표의 종류(정책 꼬리표, 허가 꼬리표 등) 및 그 내용(대상자 및 그 대상자의 권한)을 상기 사용자로 하여금 선택하게 하며(S360), 그 제1 특정 자원에 대응한 정책 꼬리표 또는 허가 꼬리표를 생성하여 소정의 저장소(420)에 보유(S380)할 수 있다. 사용자가 상기 제1 특정 자원을 선택할 수 있도록 상기 제1 특정 자원의 선택(S340) 전에 상기 구조화 문서 전체를, 예컨대, 클라이언트(100')를 통하여 제공하여 보여주는 단계(S320)가 더 포함될 수도 있다.Specifically with reference to FIG. 7 , the tag generation module 440 allows the user to select the first specific resource (S340), and the type of tag (policy tag, permission) for the first specific resource. tag, etc.) and its contents (the subject and the subject's authority) are selected by the user (S360), and a policy tag or permission tag corresponding to the first specific resource is generated and held in a predetermined storage 420 (S380) can be done. The step (S320) of providing and showing the entire structured document, for example, through the client 100', before the selection (S340) of the first specific resource so that the user can select the first specific resource may be further included.

한편, 앞서 설명된 상기 신규 자원의 생성(S200) 시에, 상기 구조화 문서의 소유자에 의하여 미리 설정된 일반 사용자에 대한 정책 꼬리표 또는 특정 사용자에 대한 허가 꼬리표가 기본값(default value)으로서 상기 자원에 대응하도록 함께 생성될 수 있는바, 이를 위하여 자원 생성 모듈(410)이 꼬리표 생성 모듈(440)을 호출할 수 있다.On the other hand, when the above-described new resource is created (S200), a policy tag for a general user or a permission tag for a specific user preset by the owner of the structured document corresponds to the resource as a default value. Since they may be generated together, the resource generation module 410 may call the tag generation module 440 for this purpose.

다음으로, 본 개시서의 구조화 문서 권한 관리 방법은, 서버(100)에 의하여 구현되는 권한 확인 모듈(450)이, 구조화 문서(200) 내 제2 특정 자원에 대한 제1 특정 액션에 관한 특정 사용자의 권한을 확인하기 위한 요청인 권한 확인 요청에 대한 응답으로서, 상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 되돌려줌(S400; returning 혹은 반환)을 더 포함한다. 더 나아가, 본 개시서의 구조화 문서 권한 관리 방법은, 서버(100)에 의하여 구현되는 액션 실행 모듈(460)이, 구조화 문서(200) 내 제3 특정 자원에 대하여 제2 특정 액션을 실행하기 위한, 사용자로부터의 요청인 액션 실행 요청에 응하여, 상기 사용자의 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 권한 확인 요청을 통하여 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 상기 사용자의 권한을 획득(S400)하고, 획득된 상기 권한에 따라 상기 제2 특정 액션을 실행하거나 실행하지 않음(S500)을 더 포함한다.Next, in the structured document authority management method of the present disclosure, the authority checking module 450 implemented by the server 100 , a specific user related to a first specific action on a second specific resource in the structured document 200 . As a response to the permission check request, which is a request for confirming the permission of , it further includes returning the permission of the specific user with respect to the first specific action on the second specific resource (S400; returning or returning). Furthermore, in the structured document rights management method of the present disclosure, the action execution module 460 implemented by the server 100 executes a second specific action on a third specific resource in the structured document 200 . , in response to an action execution request that is a request from a user, the user regarding the second specific action on the third specific resource through a permission confirmation request regarding the second specific action on the third specific resource of the user Acquiring the authority of (S400), and further comprising executing or not executing the second specific action according to the obtained authority (S500).

액션들actions

특정 자원에 대한 특정 액션에 관하여 어느 사용자가 가지는 권한의 탐색(S400) 및 그 특정 액션의 실행(S500)에 관한 구체적인 설명에 앞서, 본 개시서에서 권한 확인의 대상이 되는, 개별 자원에 관한 액션들부터 먼저 설명하면, 그러한 액션들에는 상기 자원의 사용들 및 접근이 포함될 수 있다. 상기 사용들은, 상기 자원의 수정(편집), 열람, 삭제 등을 포함할 수 있으며, 이러한 사용들 각각의 권한은 부여되거나 금지될 수 있다. 또한, 상기 접근은, 상기 자원이 검색 결과로 표시됨을 지칭하는바, 이러한 접근의 권한도 부여되거나 금지될 수 있다.Prior to the detailed description of the search (S400) and execution of the specific action (S500) of a user's authority with respect to a specific action on a specific resource, in this disclosure, an action on an individual resource, which is the subject of authority check First of all, such actions may include uses and access to the resource. The uses may include modifying (editing), viewing, and deleting the resource, and each of these uses may be granted or prohibited. In addition, since the access refers to the resource being displayed as a search result, the right of such access may also be granted or prohibited.

예를 들어, 액션들에는 최상위 요소문서의 삭제가 포함될 수 있으며, 이는 해당 구조화 문서의 삭제와 동일한 액션일 수 있다. For example, the actions may include deletion of a top-level element document, which may be the same action as deletion of a corresponding structured document.

한편, 액션들에는 최상위 요소문서가 아닌 자원의 삭제가 포함될 수 있으며, 그러한 삭제 시에는, 최상위 요소문서가 아니면서 자식 자원을 가지지 않는 모든 개별 자원들이 최상위 요소문서들로부터 종속 관계의 연쇄가 이어짐을 보장하기 위하여, 즉, 어느 개별 자원의 삭제로 인하여 구조화 문서 내 다른 어느 개별 자원이 파편화(fragmented)되지 않도록, 그 삭제의 대상인 개별 자원이 포함한 자식 자원들과 그 자식 자원들에 대한 종속 관계도 재귀적(recursive)으로 삭제되어야 함은 물론이다.On the other hand, actions may include deletion of a resource other than the top-level element document. In order to ensure that any other individual resource in the structured document is not fragmented due to deletion of an individual resource, the child resources included in the individual resource to be deleted and the dependencies on the child resources are also recursive. Of course, it should be deleted as recursive.

액션 - 기여의 요청 및 기여의 반영Action - Request for Contribution and Reflect Contribution

또한, 상기 액션들에는, 상기 개별 자원에 대한 '기여의 요청' 및 '기여의 반영'도 포함될 수 있다. 여기에서 '기여'는 그 기여를 요청하는 사용자(즉, 기여자)가 기 생성된 구조화 문서의 자원을 수정하는 행위를 지칭하는바, '기여의 요청'은 기여자에 의하여 만들어진 수정 내용을 그 구조화 문서의 작성자에게 전달하는 액션에 해당하고, '기여의 반영'은 그 수정 내용에 대한 가부를 결정하는 사용자(즉, 기여 반영자)가 내린 결정에 따라 구조화 문서의 자원을 변경 또는 유지하는 액션에 해당한다.In addition, the actions may include 'contribution request' and 'contribution reflection' for the individual resource. Here, 'contribution' refers to the act of a user requesting the contribution (ie, a contributor) modifying the resources of a structured document that has been created. corresponds to an action to deliver to the author of do.

더 구체적으로, 상기 기여의 요청은, 서버(100)에 의하여 구현되는 액션 실행 모듈(460)이, 상기 개별 자원으로부터 수정된 내용, 및 상기 개별 자원의 정정 회차보다 1만큼 증가된 정정 회차를 포함하는 신규 자원을 생성하고, 그 개별 자원에 대한 상기 기여의 반영이 허가된 사용자인 기여 반영자에 의하여 접근 가능한 소정의 제1 사용자 인터페이스를 서버(100) 또는 클라이언트(100')를 통하여 제공함으로써, 상기 제1 사용자 인터페이스를 통하여 상기 신규 자원에 의한 상기 개별 자원의 대체 여부를 결정하게 하는 액션이다. 상기 제1 사용자 인터페이스의 제공을 위해 서버(100)에 의하여 구현되는 사용자 인터페이스 제공 모듈(미도시)이 이용될 수 있는바, 이 경우 액션 실행 모듈(460)은 그러한 사용자 인터페이스 제공 모듈을 호출하여 이용할 수 있다.More specifically, the request for contribution includes the content modified by the action execution module 460 implemented by the server 100 from the individual resource, and the correction frequency increased by 1 from the correction frequency of the individual resource. By providing a predetermined first user interface accessible by a contribution reflector who is a user authorized to reflect the contribution to the individual resource through the server 100 or the client 100', It is an action to determine whether to replace the individual resource with the new resource through the first user interface. A user interface providing module (not shown) implemented by the server 100 may be used to provide the first user interface. In this case, the action execution module 460 calls and uses such a user interface providing module. can

또한, 상기 기여의 반영은, 상기 신규 자원에 의한 상기 개별 자원의 대체 여부에 따라, 서버(100)에 의하여 구현되는 액션 실행 모듈(460)이, 상기 구조화 문서 내에서 상기 신규 자원이 상기 개별 자원을 대체하거나 상기 개별 자원을 유지하게 하는 액션이다. 상기 기여 반영자의 선택에 따라, 상기 신규 자원이 상기 개별 자원을 대체하면, 그 신규 자원은 상기 개별 자원에 비해 1만큼 증가된 정정 회차를 가지는바, 예컨대, 통상의 기술자는 그러한 정정 회차별로 해당 자원의 이력, 즉, 반영 기록(contribution record)을 남기는 방식으로 액션 실행 모듈(460)을 구성할 수도 있을 것이다.In addition, in the reflection of the contribution, the action execution module 460 implemented by the server 100 according to whether the individual resource is replaced by the new resource, the new resource in the structured document is the individual resource It is an action to replace or maintain the individual resource. According to the selection of the contribution reflector, if the new resource replaces the individual resource, the new resource has a correction frequency increased by 1 compared to the individual resource. The action execution module 460 may be configured in such a way that it leaves a history of , that is, a contribution record.

액션 - 공유Action - Share

한편, 상기 액션들에는, 상기 개별 자원에 대한 공유도 포함될 수 있는바, 여기에서 공유의 액션 실행 요청을 하는 사용자를 전달자(sender), 그 공유의 대상으로 지정된 사용자를 수용자(receiver)라고 할 수 있다. 상기 개별 자원에 대한 공유는, 서버(100)에 의하여 구현되는 액션 실행 모듈(460)이, 상기 수용자(receiver)에 의해 접근 가능한 소정의 제2 사용자 인터페이스를 제공하되, 상기 제2 사용자 인터페이스를 통하여 결정된 상기 개별 자원에 대한 상기 수용자의 수락 여부가 참이면, 상기 구조화 문서(200; 원본 구조화 문서)의 복제를 수행하여 신규 구조화 문서(200'; 미도시)를 생성하고, 상기 신규 구조화 문서에 대응하는 상기 개별 자원 및 상기 개별 자원의 자손 자원 중에서 상기 수용자의 읽기 권한이 부여된 자원들인 공유 자원들의 적어도 하나의 소유자에 상기 수용자가 포함되도록 상기 신규 구조화 문서 내 상기 공유 자원들의 소유자 꼬리표를 생성 또는 수정하는 액션이다.On the other hand, the actions may also include sharing of the individual resources. Here, a user who requests execution of an action of sharing is called a sender, and a user designated as the target of sharing is called a receiver. there is. In the sharing of the individual resources, the action execution module 460 implemented by the server 100 provides a predetermined second user interface accessible by the receiver, but through the second user interface If the determined acceptance of the individual resource is true, the structured document 200 (original structured document) is copied to generate a new structured document 200' (not shown), and corresponding to the new structured document Create or modify the owner tag of the shared resources in the new structured document so that the recipient is included in at least one owner of the shared resources that are the resources to which the recipient's read right is granted among the individual resources and descendants of the individual resources it is an action

즉, 상기 수용자가 소유자들 중 하나가 되는 상기 신규 구조화 문서는 원본 구조화 문서 중에서 상기 수용자의 읽기 권한이 부여되었던 자원들만을 포함하도록 상기 복제가 수행되므로 그 신규 구조화 문서는 상기 원본 구조화 문서와 동일하지 않을 수 있다. 이와 같은 공유는 그 전달자 및 수용자가 서로 동일할 수도 있는바, 자기 자신에게 하는 공유는 수집(collect)이라고 지칭할 수 있다.That is, the new structured document is not the same as the original structured document because the duplication is performed to include only the resources to which the recipient's read permission has been granted among the original structured documents. it may not be In such a sharing, the sender and the receiver may be identical to each other, and sharing to oneself may be referred to as a collection.

앞서 상기 제1 사용자 인터페이스의 제공에 관하여 설명된 바와 같이, 상기 제2 사용자 인터페이스의 제공을 위하여도, 상기 사용자 인터페이스 제공 모듈이 이용될 수 있다.As described above with respect to the provision of the first user interface, the user interface providing module may also be used to provide the second user interface.

액션 - 구조화 문서의 복제Action - Duplicate structured document

추가로, 상기 액션들에는, 상기 구조화 문서의 복제가 포함될 수 있는바, 여기에서 상기 구조화 문서의 복제는, 서버(100)에 의하여 구현되는 액션 실행 모듈(460)이 구조화 문서(200) 자체 및 구조화 문서(200)에 포함되는 자원들, 즉, 구조화 문서(200)의 모든 자원들 중에서 상기 사용자에게 읽기 권한이 부여된 자원들인 복제 대상 자원들을 복제하여 신규 구조화 문서를 생성하는 문서 복제 단계, 및 액션 실행 모듈(460)이 상기 복제 대상 자원들에 대응하는 모든 꼬리표들을 복제하여 상기 신규 구조화 문서에 적용하는 꼬리표 상속 단계를 포함하는 액션일 수 있다. 즉, 구조화 문서의 복제는, 그 전달자 와 수용자가 서로 동일한, 구조화 문서의 공유와 실질적으로 동일한 액션이되, 전달자가 수용자의 수락 여부를 묻기 위한 상기 제2 사용자 인터페이스가 제공되지 않는다는 점에서 차이가 있다.Additionally, the actions may include duplication of the structured document, wherein the duplication of the structured document includes the structured document 200 itself and the action execution module 460 implemented by the server 100 . A document duplication step of creating a new structured document by duplicating the resources included in the structured document 200, that is, the duplication target resources, which are resources to which the user is granted read permission among all the resources of the structured document 200, and The action execution module 460 may be an action including a tag inheritance step of duplicating all the tags corresponding to the replication target resources and applying them to the new structured document. That is, duplication of the structured document has substantially the same action as sharing of the structured document, in which the sender and the recipient are identical to each other, except that the second user interface is not provided for the sender to ask whether the recipient accepts or not. there is.

본 개시서의 구조화 문서 권한 관리 방법과 관련하여 어느 구조화 문서 자체 또는 이에 속한 자원들에 관한 기타 액션들은 통상의 기술자가 쉽게 도출할 수 있을 것인바, 이에 관하여 더 상세한 설명은 생략하기로 한다.In relation to the structured document rights management method of the present disclosure, other actions related to a structured document itself or resources belonging thereto can be easily derived by a person skilled in the art, and a more detailed description thereof will be omitted.

자원에 대한 액션에 관한 사용자의 권한의 탐색Exploring a user's permissions for an action on a resource

이제, 참조부호 S400에 관한 구체적인 설명을 위하여, 본 개시서의 구조화 문서 관리 방법에 따라 꼬리표를 탐색하는 과정이 예시적으로 나타난 도 8을 참조한다.Now, for a detailed description of reference numeral S400, reference is made to FIG. 8 exemplarily showing a process of searching for a tag according to the structured document management method of the present disclosure.

도 8을 참조하면, 상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 되돌려줌(returning; S400)은, 상기 제2 특정 자원(R), 및 상기 제2 특정 자원의 조상 자원(집합으로 표현하면, {Rp | Rp 는 R의 조상 자원}) 중에서, 즉 R∪{Rp} 중에서 상기 제1 특정 액션(A)에 관하여 상기 특정 사용자(U)에게 적용되는 꼬리표를 탐색하는 단계(S420)를 포함할 수 있는바, 구체적인 탐색의 목표는 상기 특정 사용자에게 적용되는 꼬리표들 중에서 상기 제2 특정 자원에 최근접인, 즉, 가장 가까운 자원(R')에 대응하는 특정 꼬리표(T)를 찾는 것이다.Referring to FIG. 8 , returning the specific user's right to the first specific action for the second specific resource (returning S400) includes the second specific resource R, and the second specific resource. Applied to the specific user U with respect to the first specific action A among the ancestor resources of (expressed as a set, { R p | R p is the ancestor resource of R}), that is, among R It may include a step (S420) of searching for a tag to be used, where the specific search target is closest to the second specific resource among the tags applied to the specific user, that is, to the closest resource (R'). It is to find the corresponding specific tag (T).

상기 최근접인 자원의 특정 꼬리표(T)를 획득하기 위한, 상기 제2 특정 자원 및 상기 제2 특정 자원의 조상 자원에 대한 탐색은, 상기 제2 특정 자원(R)으로부터 상기 조상 자원({Rp})으로 거슬러 올라가며 R∪{Rp} 중에서 특정 조건, 즉, 종료 조건을 만족하는 자원(r)의 꼬리표(t)를 찾는 상향 탐색으로서, 예컨대, 너비 우선 탐색(Breadth-First Search; BFS)에 의할 수 있으나 이에 한정되지는 않는다. 종료 조건을 만족하는, 자원(r)의 꼬리표(t)가 상기 탐색의 결과인 특정 꼬리표(T)이다.The search for the second specific resource and the ancestor resource of the second specific resource to obtain the specific tag (T) of the nearest resource is, from the second specific resource (R), the ancestor resource ({R p }) and is an upward search for finding the tag t of a resource r that satisfies a specific condition, that is, an end condition, among R∪{R p }, for example, Breadth-First Search (BFS). ), but is not limited thereto. A tag t of a resource r that satisfies the termination condition is a specific tag T that is the result of the search.

만족하여야 할 상기 종료 조건은, (i) 꼬리표(t)가 소유자 꼬리표에 해당하고, 특정 사용자(U)가 꼬리표(t)에 대응하는 상기 적어도 하나의 소유자에 속하는 제1 조건, (ii) 꼬리표(t)가 정책 꼬리표이고, 꼬리표(t)에 의하여 제1 특정 액션(A)에 관한 권한이 부여 또는 금지된 제2 조건, (iii) 꼬리표(t)가 허가 꼬리표이고, 꼬리표(t)에 의하여 제1 특정 액션(A)에 관한 특정 사용자(U)의 권한이 부여 또는 금지된 제3 조건 중 하나를 만족하는 조건이다. The termination condition to be satisfied is: (i) a first condition that a tag (t) corresponds to an owner tag and a specific user (U) belongs to the at least one owner corresponding to a tag (t), (ii) a tag a second condition in which (t) is a policy tag, and the authorization or prohibition with respect to a first specific action (A) by tag (t) is a second condition, (iii) tag (t) is a permission tag, and in tag (t) It is a condition that satisfies one of the third conditions in which the authority of the specific user U is granted or prohibited by the first specific action A.

상기 제1 조건, 상기 제2 조건 및 상기 제3 조건을 만족하는 꼬리표(t)가 존재하지 않는 제4 조건도 종료 조건이나, 이 제4 조건을 만족한다면, 상기 탐색의 결과인 특정 꼬리표(T)는 존재하지 않는바, 특정 사용자(U)의 제2 특정 자원(R)에 대한 제1 특정 액션(A)에 관한 권한은 금지된 것으로 간주될 수도 있다.The fourth condition in which there is no tag (t) satisfying the first, second, and third conditions is also an end condition, but if the fourth condition is satisfied, the specific tag (T) that is the result of the search ) does not exist, the right of the specific user U regarding the first specific action A on the second specific resource R may be considered to be prohibited.

상기 제1 조건 내지 상기 제4 조건 간에는 먼저 판단하여야 할 순서가 있을 수 있는바, 예를 들어, 상기 제4 조건에 대해 상기 제3 조건이 우선 적용될 수 있고, 상기 제3 조건에 대해 상기 제2 조건이 우선 적용될 수 있으며, 상기 제2 조건에 대해 상기 제1 조건이 우선 적용될 수 있다.There may be an order to be determined first between the first condition and the fourth condition. For example, the third condition may be applied first to the fourth condition, and the second condition may be applied to the third condition. The condition may be applied first, and the first condition may be applied preferentially to the second condition.

도 9는 본 개시서의 구조화 문서 관리 방법에 따라 꼬리표를 탐색한 결과의 예시를 보인 블록도이다. 도 9를 참조하면 구조화 문서(900)에 속한 자원들(910 내지 919)의 개략적인 종속 관계가 도시되어 있는바, 구조화 문서(900)의 최상위 요소문서는 자원(910)이며, 개개의 자원을 나타낸 노드 내에 표시된 부호는 그 자원에 대응하면서 상기 제1 특정 액션에 관하여 특정 사용자(U)에 설정된 꼬리표의 종류를 나타낸다. 그 부호 중 "O"는 소유자 꼬리표를, "A"는 허가 꼬리표를, "P"는 정책 꼬리표를 의미한다. 노드 내에 표시된 부호가 없는 자원들(914, 916, 918, 919)은 상기 제1 특정 액션 및 특정 사용자(U)에 관하여 그 자원들 각각에 대응하도록 설정된 꼬리표가 없음을 의미한다.9 is a block diagram illustrating an example of a tag search result according to the structured document management method of the present disclosure. Referring to FIG. 9 , a schematic dependency relationship of the resources 910 to 919 belonging to the structured document 900 is shown. The uppermost element document of the structured document 900 is the resource 910 , and each resource is A symbol displayed in the indicated node indicates the type of tag set for the specific user U with respect to the first specific action while corresponding to the resource. Among those codes, "O" stands for owner tag, "A" stands for permission tag, and "P" stands for policy tag. Unsigned resources 914, 916, 918, 919 indicated in the node mean that there is no tag set to correspond to each of those resources with respect to the first specific action and specific user U.

앞서 설명된 권한 탐색의 방식에 따르면, 예를 들어, 상기 제1 특정 액션에 관하여 특정 사용자(U)에게 설정된 꼬리표가 대응되지 않은 자원(914)의 종료 조건을 만족하는 최근접 자원은 자원(911)이며, 그 종료 조건은 상기 제3 조건인바, 자원(911), 상기 제1 특정 액션 및 특정 사용자(U)에 적용되는 꼬리표가 자원(914) 및 자원(918)에도 적용된다.According to the method of the permission search described above, for example, the nearest resource that satisfies the termination condition of the resource 914 to which the tag set to the specific user U is not associated with respect to the first specific action is the resource 911 ), and the termination condition is the third condition, the resource 911, the first specific action, and the tag applied to the specific user U are also applied to the resource 914 and the resource 918 .

또한, 도 9의 예시에서 꼬리표가 상기 대응되지 않은 자원(919)의 조상 자원들 가운데 종료 조건을 만족하는 자원에는 제1 조건을 만족하는 자원(910)과 제2 조건을 만족하는 자원(915)이 있는데, 그 중 자원(919)에 최근접한 자원은 자원(915)이므로, 자원(919)에 대하여 자원(915)의 꼬리표가 적용된다. 반면, 자원(912)의 조상 자원 중에서 종료 조건을 만족하는 자원에는 제1 조건을 만족하는 자원(910)만이 있으므로, 자원(912)에 대하여 자원(910)의 꼬리표가 적용된다.In addition, in the example of FIG. 9 , among the ancestor resources of the resource 919 to which the tag does not correspond, the resource satisfying the termination condition includes a resource 910 that satisfies the first condition and a resource 915 that satisfies the second condition. Among them, since the resource 915 is the closest to the resource 919 , the tag of the resource 915 is applied to the resource 919 . On the other hand, among the ancestor resources of the resource 912 , there is only the resource 910 that satisfies the first condition among the resources that satisfy the termination condition, so the tag of the resource 910 is applied to the resource 912 .

요컨대, 도 9에서 동일한 꼬리표가 적용되는 자원들은 동일한 패턴으로 칠해져 있는바, 통상의 기술자에게 도 8을 참조하여 설명된 권한 탐색의 방식이 이해될 것이다.In short, since resources to which the same tag is applied in FIG. 9 are painted in the same pattern, a person skilled in the art will understand the method of right search described with reference to FIG. 8 .

상기 특정 사용자의 권한을 되돌려줌(S400)은, 단계(S420) 다음으로 상기 탐색에 따라 획득된 상기 특정 꼬리표를 참조로 하여 상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관하여 상기 특정 사용자의 권한을 결정하여 이를 되돌려주는 단계(S480)를 더 포함할 수 있다.Returning the authority of the specific user (S400) is performed after step S420 of the specific user with respect to the first specific action on the second specific resource with reference to the specific tag obtained according to the search. It may further include a step (S480) of determining the authority and returning it.

이제, 참조부호 S500에 관한 구체적인 설명을 위하여, 본 개시서의 구조화 문서 관리 방법에 따라 사용자의 권한을 획득하고 획득된 그 권한에 따라 상기 제2 특정 액션을 실행하거나 실행하지 않는 과정을 나타낸 도 10을 참조한다.Now, for a detailed description of reference numeral S500, FIG. 10 showing a process of obtaining a user's authority according to the structured document management method of the present disclosure and executing or not executing the second specific action according to the obtained authority see

도 10을 참조하여 일 실시 예를 설명하면, 클라이언트(100')로부터 상기 사용자가 상기 제2 특정 액션, 및 그 제2 특정 액션의 대상으로서 선택(S530)된 상기 제3 특정 자원을 포함한 상기 액션 실행 요청이 획득(S540)되면, 액션 실행 모듈(460)은, 상기 사용자의 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 권한 확인 요청(S550)을 통하여 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 상기 사용자의 권한을 반환(S480)받아 획득하고, 획득된 상기 권한에 따라 상기 제2 특정 액션을 실행하거나 실행하지 않은(S580) 후, 그 결과를 반환(S580)할 수 있다.An embodiment will be described with reference to FIG. 10 , the second specific action by the user from the client 100 ′, and the action including the third specific resource selected ( S530 ) as a target of the second specific action When the execution request is obtained (S540), the action execution module 460 is configured to, through the user's request for permission confirmation regarding the second specific action with respect to the third specific resource (S550), the third specific resource The user's authority regarding the second specific action may be returned (S480) and obtained, and the result may be returned (S580) after executing or not executing the second specific action according to the obtained authority (S580) there is.

사용자가 상기 제3 특정 자원 및 상기 제2 특정 액션을 선택할 수 있도록 그 선택(S530) 전에 상기 구조화 문서 전체를, 예컨대, 클라이언트(100')를 통하여 제공하여 보여주는 단계(S520)가 더 포함될 수도 있다.A step (S520) of providing and showing the entire structured document, for example, through the client 100', before the selection (S530) may be further included so that the user can select the third specific resource and the second specific action. .

한편, 참조부호 S500에서 사용자의 권한을 획득하고 획득된 그 권한에 따라 상기 제2 특정 액션을 실행하거나 실행하지 않는 바와 같이, 앞서 설명된 신규 자원의 생성(S200)도, 권한 확인의 요청 및 획득(S400) 후 상기 사용자에게 권한이 있는 경우에만 상기 사용자로 하여금 이(S200)를 수행 가능하게 할 수 있음은 물론이다. 구조화 문서의 생성 및 자원의 생성도 각각 액션의 일종으로 볼 수 있으므로, 그 각각을 수행하는 구조화 문서 생성 모듈(410) 및 자원 생성 모듈(430)도 액션 실행 모듈(460)에 일체화될 수 있는바, 도 4에 나타난 예시는 보다 범용인 액션 실행 모듈(460)에 의하여 수행되는 액션들 중 필수적인 액션인 구조화 문서의 생성 및 자원의 생성 각각에 대응하는 모듈들을 별도의 구조화 문서 생성 모듈(410) 및 자원 생성 모듈(430)로 나타낸 것이 지나지 않는다고 해석할 수도 있다.On the other hand, as the user's authority is obtained at reference numeral S500 and the second specific action is executed or not executed according to the obtained authority, the above-described creation of a new resource (S200) also requests and obtains authority check Of course, only when the user has authority after (S400), it is possible to enable the user to perform this (S200). Since the generation of the structured document and the generation of resources can be viewed as a type of action, respectively, the structured document generation module 410 and the resource generation module 430 that perform each can also be integrated into the action execution module 460 . , the example shown in FIG. 4 is a separate structured document creation module 410 and It may be interpreted that what is indicated by the resource creation module 430 is nothing more than that.

지금까지 설명된 바에 비추어, 본 개시서의 구조화 문서 권한 관리 방법의 각 단계들(S100 내지 S500) 간에 필연적 선후 관계는 없다는 점이 통상의 기술자에게 이해될 것이다. 물론, 어느 구조화 문서에서 신규 자원을 생성(S200)하거나 특정 자원에 대한 꼬리표를 생성(S300)하거나 사용자의 자원에 대한 권한을 요청 및 획득(S400)하거나 자원에 관한 기타 액션을 수행(S500)하기 위해서는 그 구조화 문서 자체가 먼저 생성(S100)되어 존재하여야 할 것이므로 단계들(S200 내지 S500)에 비해 단계(S100)가 논리적으로 선행된다고 볼 수 있으나 이는 어느 하나의 구조화 문서에 대한 관계에서 그렇다는 것일 뿐, 서로 다른 구조화 문서들에 관하여는 어느 하나의 구조화 문서에 속한 자원의 수정이라는 액션을 수행(S500)한 후에 또 다른 구조화 문서의 신규 생성(S100)이 바로 이루어질 수 있는 바와 같이 본 발명 방법의 어느 단계도 반드시 선행하거나 후행한다고 볼 수 없으므로 본 개시서에서는 '단계(step)'라는 용어의 이용을 의도적으로 회피하였는바, 반드시 필요한 경우에서만 시계열적인 논리적 선후 관계가 존재한다고 할 것이다. 그러므로 통상의 기술자는 그렇지 않아야 할 당위성이 뒤따르지 않는 이상 전술된 모든 단계들이 그 표현된 숫자의 대소에 관계없이 서로 바뀔 수 있음을 이해할 것이다.It will be understood by those of ordinary skill in the art that, in light of the above description, there is no inevitable precedence relationship between the respective steps ( S100 to S500 ) of the structured document rights management method of the present disclosure. Of course, to create a new resource in any structured document (S200), create a tag for a specific resource (S300), request and obtain a user's authority for a resource (S400), or perform other actions on the resource (S500) In order to do so, the structured document itself must first be created (S100) and exist, so it can be seen that step S100 is logically preceded compared to steps S200 to S500, but this is only so in relation to any one structured document. , with respect to different structured documents, after performing an action of modifying resources belonging to one structured document (S500), new generation of another structured document (S100) can be made immediately in any of the methods of the present invention Since a step cannot necessarily precede or follow, the use of the term 'step' is intentionally avoided in this disclosure, and it will be said that a time series logical precedence relationship exists only when absolutely necessary. Therefore, a person skilled in the art will understand that all the above-described steps may be interchanged with each other regardless of the magnitude of the expressed numbers, unless there is a justification to do otherwise.

본 발명에 의하면, 여러 부분들로 구성된 구조화 문서의 다수의 사용자에 의한 취급이 효율적이고 체계적으로 수행될 수 있으면서 그 구조에 충분한 가변성 혹은 유연성이 제공되며, 특히, 본 발명은 전형적이지 않은 액션들인 공유 및 기여 등에 관한 권한 설정을 가능하게 함으로써 다수 사용자들의 읽기/쓰기 접근, 이용 등에 대항하여 문서의 각 부분별 무결성(integrity), 재활용성(recyclability) 등을 유지해낼 수 있는 유리한 효과가 있다. According to the present invention, handling by multiple users of a structured document composed of several parts can be efficiently and systematically performed while providing sufficient variability or flexibility in its structure. And by enabling the setting of permission for contribution, etc., there is an advantageous effect of maintaining the integrity and recyclability of each part of the document against read/write access and use of multiple users.

본 개시서에 개시된 방법은 1회 수행될 수 있을 뿐만 아니라 사용자의 요구 또는 필요에 따라서 반복적으로, 간헐적 또는 지속적으로 수행될 수도 있음은 물론이다.Of course, the method disclosed in the present disclosure may be performed not only once, but may also be performed repeatedly, intermittently, or continuously according to a user's request or need.

이상, 본 개시서의 다양한 실시 예들에 관한 설명에 기초하여 해당 기술분야의 통상의 기술자는, 본 발명의 방법 및/또는 프로세스들, 그리고 그 단계들이 하드웨어, 소프트웨어 또는 특정 용례에 적합한 하드웨어 및 소프트웨어의 임의의 조합으로 실현될 수 있다는 점을 명확하게 이해할 수 있다. Above, based on the description of various embodiments of the present disclosure, those of ordinary skill in the art will recognize that the method and/or processes of the present invention, and the steps thereof, are hardware, software, or hardware and software suitable for a specific application. It can be clearly understood that they can be realized in any combination.

또한, 본 개시서를 읽은 오늘날의 통상의 기술자는 컴퓨팅 장치, 예를 들어, 워크스테이션, 개인용 컴퓨터, 휴대 단말 등을 통하여 제공될 수 있는 다양한 사용자 인터페이스에 익숙한바, 본 개시서에서 설명된 방법들을 이루는 개별 단계들(S100 내지 S500)에 대하여 통상의 기술자는 본 개시서의 방법에서 필요한, 사용자의 여러 조작을 가능하게 하는, 특히 본 개시서에서 설명된 구조화 문서를 이루는 개별 자원들의 내용, 예컨대, 텍스트, 사진, 날짜, 시간 등 다양한 형식의 데이터를 사용자로부터 입력받고 사용자에 대한 제공을 위하여 출력하는 등의 액션들의 수행에 필요한 다양한 사용자 인터페이스를 쉽게 상정할 수 있을 것이다.In addition, those skilled in the art after reading the present disclosure are familiar with various user interfaces that may be provided through a computing device, for example, a workstation, a personal computer, a portable terminal, and the like. With respect to the individual steps S100 to S500, a person skilled in the art needs in the method of the present disclosure, in particular the content of individual resources that enable various manipulations of the user, in particular the structured document described in the present disclosure, eg, text It will be possible to easily imagine various user interfaces required to perform actions such as receiving data in various formats, such as , photos, date, time, etc. from the user and outputting the data to provide to the user.

상기 하드웨어 장치는 범용 컴퓨터 및/또는 전용 컴퓨팅 장치 또는 특정 컴퓨팅 장치 또는 특정 컴퓨팅 장치의 특별한 모습 또는 구성요소를 포함할 수 있다. 상기 프로세스들은 프로그램 명령어를 저장하기 위한 ROM/RAM 등과 같은 메모리와 결합되고 상기 메모리에 저장된 명령어들을 실행하도록 구성되는 전술된 바와 같은 프로세서에 의하여 실현될 수 있다. 게다가, 혹은 대안으로서, 상기 프로세스들은 주문형 집적회로(application specific integrated circuit; ASIC), 프로그래머블 게이트 어레이(programmable gate array), 예컨대, FPGA(field programmable gate array), PLU(programmable logic unit) 혹은 프로그래머블 어레이 로직(Programmable Array Logic; PAL) 또는 기타 명령어(instruction)를 실행하고 응답할 수 있는 임의의 다른 장치, 전자 신호들을 처리하기 위해 구성될 수 있는 임의의 다른 장치 또는 장치들의 조합으로 실시될 수 있다. 처리 장치는 운영 체제 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다. 상기 하드웨어 장치는 외부 장치와 신호를 주고받을 수 있는 전술된 바와 같은 통신부도 포함할 수 있다.The hardware devices may include general purpose computers and/or dedicated computing devices or specific computing devices or special features or components of specific computing devices. The processes may be realized by a processor as described above coupled with a memory such as ROM/RAM or the like for storing program instructions and configured to execute instructions stored in the memory. Additionally, or alternatively, the processes may be implemented using an application specific integrated circuit (ASIC), a programmable gate array, such as a field programmable gate array (FPGA), a programmable logic unit (PLU) or programmable array logic. (Programmable Array Logic; PAL) or any other device capable of executing and responding to instructions, any other device or combination of devices that can be configured to process electronic signals. The processing device may run an operating system and one or more software applications running on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, although one processing device is sometimes described as being used, one of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that can include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors. The hardware device may also include a communication unit as described above capable of sending and receiving a signal to and from an external device.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령어(instruction; 인스트럭션), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치에 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령어 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 기계 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of these, and either independently or collectively configure the processing device to operate as desired. ) to the processing unit. The software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or apparatus, to be interpreted by or provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in one or more machine-readable recording media.

더욱이 본 발명의 기술적 해법의 대상물 또는 선행 기술들에 기여하는 부분들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 기계 판독 가능 매체에 기록될 수 있다. 기계 판독 가능 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기계 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 실시 예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 통상의 기술자에게 공지되어 사용 가능한 것일 수도 있다. 기계 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD, Blu-ray와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 전술한 장치들 중 어느 하나뿐만 아니라 프로세서, 프로세서 아키텍처 또는 상이한 하드웨어 및 소프트웨어의 조합들의 이종 조합, 또는 다른 어떤 프로그램 명령어들을 실행할 수 있는 기계 상에서 실행되기 위하여 저장 및 컴파일(compile) 또는 인터프리트(interpret)될 수 있는, C와 같은 구조적 프로그래밍 언어, C++ 같은 객체지향적 프로그래밍 언어 또는 고급 또는 저급 프로그래밍 언어(어셈블리어, 하드웨어 기술 언어들 및 데이터베이스 프로그래밍 언어 및 기술들)를 사용하여 만들어질 수 있는 바, 기계어 코드, 바이트코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 이에 포함된다. Moreover, the objects of the technical solution of the present invention or parts contributing to the prior arts may be implemented in the form of program instructions that can be executed through various computer components and recorded in a machine-readable medium. The machine-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the machine-readable recording medium may be specially designed and configured for the embodiment, or may be known and used by those skilled in the art of computer software. Examples of the machine-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs, DVDs, and Blu-rays, and floppy disks. ), and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include storing and compiling for execution on a machine capable of executing any of the devices described above, as well as a processor, processor architecture, or heterogeneous combination of different hardware and software combinations, or any other program instructions. or it can be built using a structured programming language such as C, an object-oriented programming language such as C++, or a high-level or low-level programming language (assembler, hardware description languages and database programming languages and techniques) that can be interpreted This includes not only machine code and byte code, but also high-level language code that can be executed by a computer using an interpreter or the like.

따라서 본 발명에 따른 일 태양에서는, 앞서 설명된 방법 및 그 조합들이 하나 이상의 컴퓨팅 장치들에 의하여 수행될 때, 그 방법 및 방법의 조합들이 각 단계들을 수행하는 실행 가능한 코드로서 실시될 수 있다. 다른 일 태양에서는, 상기 방법은 상기 단계들을 수행하는 시스템들로서 실시될 수 있고, 방법들은 장치들에 걸쳐 여러 가지 방법으로 분산되거나 모든 기능들이 하나의 전용, 독립형 장치 또는 다른 하드웨어에 통합될 수 있다. 또 다른 일 태양에서는, 위에서 설명한 프로세스들과 연관된 단계들을 수행하는 수단들은 앞서 설명한 임의의 하드웨어 및/또는 소프트웨어를 포함할 수 있다. 그러한 모든 순차 결합 및 조합들은 본 개시서의 범위 내에 속하도록 의도된 것이다.Accordingly, in one aspect according to the present invention, when the above-described method and combinations thereof are performed by one or more computing devices, the methods and combinations of methods may be implemented as executable code for performing respective steps. In another aspect, the method may be implemented as systems performing the steps, the methods may be distributed in various ways across devices or all functions may be integrated into one dedicated, standalone device or other hardware. In another aspect, the means for performing the steps associated with the processes described above may include any of the hardware and/or software described above. All such sequential combinations and combinations are intended to fall within the scope of this disclosure.

이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시 예들 및 도면에 의해 설명되었으나, 그 실시 예들의 특정한 구조적 또는 기능적 설명은 예시를 위한 목적으로 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 개시된 실시 예들에 본 발명이 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 사람이라면 이러한 기재로부터 다양한 형태의 수정 및 변형을 꾀할 수 있다.In the above, the present invention has been described with specific matters such as specific components and limited embodiments and drawings, but specific structural or functional descriptions of the embodiments are provided for the purpose of illustration and to help a more general understanding of the present invention. However, the present invention is not limited to the disclosed embodiments, and those skilled in the art to which the present invention pertains may devise various modifications and variations from these descriptions.

따라서, 본 발명의 기술적 사상은 상기 설명된 실시 예에 국한되어 정해져서는 아니되며, 그 기술적 사상에 포함되는 변경 또는 대체물을 비롯하여 본 개시서에 첨부된 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들이 본 발명의 사상의 범주에 속한다고 할 것이다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Therefore, the technical spirit of the present invention should not be limited to the above-described embodiments, and the claims appended to the present disclosure, including changes or substitutes included in the technical spirit, as well as the claims equivalent to these claims Or it will be said that all equivalent modifications fall within the scope of the spirit of the present invention. For example, the described techniques are performed in an order different from the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.

그와 같이 균등하게 또는 등가적으로 변형된 것에는, 예컨대 본 발명에 따른 방법을 실시한 것과 동일한 결과를 낼 수 있는, 논리적으로 동치(logically equivalent)인 방법이 포함될 것인 바, 본 발명의 진의 및 범위는 전술한 예시들에 의하여 제한되어서는 아니되며, 법률에 의하여 허용 가능한 가장 넓은 의미로 이해되어야 한다.Such equivalent or equivalent modifications will include, for example, logically equivalent methods capable of producing the same results as practiced by the methods according to the present invention, the spirit and spirit of the present invention. The scope should not be limited by the above-described examples, and should be understood in the broadest sense permitted by law.

Claims (15)

구조화 문서(structured document)에 포함된 자원들에 관한 권한을 꼬리표(tag)들로써 관리하는 방법에 있어서,
상기 구조화 문서는, 0의 깊이(depth)를 가지는 적어도 하나의 최상위의 요소문서를 포함하고, 1 이상의 깊이를 가지는 적어도 하나의 요소문서를 선택적으로(optionally) 더 포함하며, 상기 구조화 문서에 포함된 모든 요소문서 각각은 내용으로서 적어도 하나의 기록을 포함하고,
상기 자원들은, 상기 구조화 문서, 및 상기 구조화 문서에 포함된 상기 모든 요소문서, 및 모든 상기 기록을 포함하고, 상기 자원들 각각은 수정된 횟수로서 정정 회차를 포함하되,
상기 1 이상의 깊이를 가지는 상기 적어도 하나의 요소문서가 상기 구조화 문서 내에 포함되는 경우, 상기 구조화 문서는, 상기 구조화 문서 내에서 1 이상의 깊이 n을 가지는 모든 요소문서 각각이 n-1의 깊이를 가지는 하나의 요소문서에 종속됨을 표시하는 각각의 종속 관계를 더 포함하며,
상기 자원들에 속한 개별 자원의 사용자는, 일반 사용자, 상기 개별 자원의 적어도 하나의 소유자, 및 상기 개별 자원에 대한 적어도 하나의 특정 사용자를 포함하고,
상기 꼬리표들 각각은, 상기 개별 자원의 상기 적어도 하나의 소유자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하기 위한 소유자 꼬리표, 상기 일반 사용자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하거나 금지하기 위한 정책 꼬리표, 및 상기 적어도 하나의 특정 사용자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하거나 금지하기 위한 허가 꼬리표 중의 하나이고,
상기 방법은,
상기 구조화 문서를 생성하기 위한, 사용자로부터의 요청인 구조화 문서 생성 요청에 응하여, 컴퓨팅 장치가, 상기 구조화 문서 및 상기 구조화 문서에 포함된 상기 최상위 요소문서를 생성하는 프로세스, 및 상기 최상위 요소문서에 대응하는 상기 소유자 꼬리표를 생성하는 프로세스를 수행함;
상기 구조화 문서 내에 신규 자원을 생성하기 위한, 사용자로부터의 요청인 자원 생성 요청에 응하여, 상기 컴퓨팅 장치가, 상기 신규 자원을 생성함;
상기 구조화 문서 내 제1 특정 자원에 대한 권한을 추가하기 위한, 사용자로부터의 요청인 권한 추가 요청에 응하여, 상기 컴퓨팅 장치가, 상기 제1 특정 자원에 대응하는 상기 정책 꼬리표 또는 상기 허가 꼬리표를 생성함;
상기 구조화 문서 내 제2 특정 자원에 대한 제1 특정 액션에 관한 특정 사용자의 권한을 확인하기 위한 요청인 권한 확인 요청에 대한 응답으로서, 상기 컴퓨팅 장치가, 상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 되돌려줌(returning); 및
상기 구조화 문서 내 제3 특정 자원에 대하여 제2 특정 액션을 실행하기 위한, 사용자로부터의 요청인 액션 실행 요청에 응하여, 상기 컴퓨팅 장치가, 상기 사용자의 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 권한 확인 요청을 통하여 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 상기 사용자의 권한을 획득하고, 획득된 상기 권한에 따라 상기 제2 특정 액션을 실행하거나 실행하지 않음
을 포함하는, 구조화 문서 권한 관리 방법.
A method for managing rights with respect to resources included in a structured document as tags, the method comprising:
The structured document includes at least one uppermost element document having a depth of 0, and optionally further includes at least one element document having a depth of 1 or more, Each element document contains at least one record as its content;
wherein the resources include the structured document, and all of the element documents included in the structured document, and all of the records, each of the resources comprising a revision number as a number of times it has been modified;
When the at least one element document having a depth of one or more is included in the structured document, the structured document is one in which all element documents having a depth of one or more in the structured document each have a depth of n-1. It further includes each dependency relationship indicating that it is dependent on the element document of
A user of an individual resource belonging to the resources includes a general user, at least one owner of the individual resource, and at least one specific user for the individual resource,
Each of the tags includes: an owner tag for authorizing actions on the individual resource for the at least one owner of the individual resource, authorizing or prohibiting actions on the individual resource for the general user one of a policy tag for, and a permission tag for authorizing or prohibiting actions on the individual resource for the at least one specific user;
The method is
A process of generating, by a computing device, the structured document and the top-level element document included in the structured document, in response to a structured document generation request, which is a request from a user, for generating the structured document, and corresponding to the top-level element document performing a process for generating the owner tag;
in response to a resource creation request, which is a request from a user, for creating a new resource in the structured document, the computing device creates the new resource;
In response to a request for adding a right, which is a request from a user, for adding a right for a first specific resource in the structured document, the computing device generates the policy tag or the permission tag corresponding to the first specific resource ;
In response to a permission check request that is a request for confirming a specific user's permission regarding a first specific action on a second specific resource in the structured document, the computing device is configured to: returning the specific user's permission to an action; and
In response to an action execution request, which is a request from a user, for executing a second specific action on the third specific resource in the structured document, the computing device is configured to: Acquires the user's authority with respect to the second specific action on the third specific resource through a permission check request on
Including, structured document rights management method.
제1항에 있어서,
(i) 상기 구조화 문서 및 상기 자원들과 (ii) 상기 꼬리표들은 상이한 정보 단위로서 저장소에서 보유 및 관리되는, 구조화 문서 권한 관리 방법.
According to claim 1,
(i) the structured document and the resources and (ii) the tags are held and managed in a repository as different units of information.
제1항에 있어서,
상기 개별 자원에 관한 상기 액션들은, 상기 개별 자원에 대한 기여의 요청 및 기여의 반영을 포함하고,
상기 기여의 요청은,
상기 컴퓨팅 장치가, 상기 개별 자원으로부터 수정된 내용, 및 상기 개별 자원의 정정 회차보다 1만큼 증가된 정정 회차를 포함하는 신규 자원을 생성하고, 상기 개별 자원에 대한 상기 기여의 반영이 허가된 사용자인 기여 반영자에 의해 접근 가능한 제1 사용자 인터페이스를 제공함으로써, 상기 제1 사용자 인터페이스를 통하여 상기 신규 자원에 의한 상기 개별 자원의 대체 여부를 결정하게 하는 액션이고,
상기 기여의 반영은,
상기 컴퓨팅 장치가, 상기 신규 자원에 의한 상기 개별 자원의 대체 여부에 따라, 상기 구조화 문서 내에서 상기 신규 자원이 상기 개별 자원을 대체하거나 상기 개별 자원을 유지하게 하는 액션인, 구조화 문서 권한 관리 방법.
According to claim 1,
the actions on the individual resource include requesting a contribution to the individual resource and reflecting the contribution;
The above request for contribution is:
The computing device is a user who is permitted to create a new resource including content modified from the individual resource, and a correction frequency increased by one than the correction frequency of the individual resource, and to reflect the contribution to the individual resource By providing a first user interface accessible by a contribution reflector, the action of determining whether to replace the individual resource by the new resource through the first user interface,
A reflection of this contribution is
The method of claim 1, wherein the computing device causes the new resource to replace the individual resource or maintain the individual resource in the structured document according to whether the individual resource is replaced by the new resource.
제1항에 있어서,
상기 개별 자원에 관한 상기 액션들은 상기 개별 자원에 대한 읽기를 포함하고,
상기 제2 특정 액션은, 상기 구조화 문서의 복제이며,
상기 구조화 문서의 복제는,
상기 컴퓨팅 장치가, 상기 구조화 문서이거나 상기 구조화 문서에 포함되는 모든 자원들 중에서 상기 사용자에게 읽기 권한이 부여된 자원들인 복제 대상 자원들을 복제하여 신규 구조화 문서를 생성하는 문서 복제 단계, 및
상기 컴퓨팅 장치가, 상기 복제 대상 자원들에 대응하는 모든 꼬리표들을 복제하여 상기 신규 구조화 문서에 적용하는 꼬리표 상속 단계
를 포함하는 액션인, 구조화 문서 권한 관리 방법.
According to claim 1,
The actions on the individual resource include reading the individual resource,
The second specific action is duplication of the structured document,
Reproduction of the structured document,
A document duplication step in which the computing device creates a new structured document by duplicating, by the computing device, resources to be copied, which are resources to which the user is granted read permission, among all resources included in the structured document or the structured document; and
A tag inheritance step in which the computing device duplicates all tags corresponding to the copy target resources and applies them to the new structured document
A method for managing structured document rights, which is an action comprising:
제4항에 있어서,
상기 개별 자원에 관한 상기 액션들은, 상기 개별 자원에 대한 읽기, 및 상기 개별 자원에 대한 공유를 포함하고,
상기 개별 자원에 대한 공유는,
상기 컴퓨팅 장치가, 상기 공유의 대상으로 지정된 사용자인 수용자(receiver)에 의해 접근 가능한 제2 사용자 인터페이스를 제공하되, 상기 제2 사용자 인터페이스를 통하여 결정된 상기 개별 자원에 대한 상기 수용자의 수락 여부가 참이면, 상기 구조화 문서이거나 상기 구조화 문서에 포함되는 모든 자원들 중에서 상기 수용자에게 읽기 권한이 부여된 자원들인 복제 대상 자원들을 복제하여 신규 구조화 문서를 생성하고, 상기 신규 구조화 문서의 최상위 요소문서의 적어도 하나의 소유자에 상기 수용자가 포함되도록 상기 신규 구조화 문서의 상기 최상위 요소 문서의 소유자 꼬리표를 생성 또는 수정하는 액션인, 구조화 문서 권한 관리 방법.
5. The method of claim 4,
The actions on the individual resource include reading the individual resource and sharing the individual resource,
The sharing of the individual resources is
If the computing device provides a second user interface accessible by a receiver, who is a user designated as the target of sharing, whether the receiver accepts the individual resource determined through the second user interface is true , to create a new structured document by duplicating replication target resources that are resources to which the recipient is granted read permission among all the resources included in the structured document or the structured document, and at least one of the top element documents of the new structured document and creating or modifying an owner tag of the top-level element document of the new structured document so that the owner includes the recipient.
제1항에 있어서,
상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 되돌려줌(returning)은,
상기 제2 특정 자원, 및 상기 제2 특정 자원의 조상 자원 중에서 상기 제1 특정 액션에 관하여 상기 특정 사용자에 적용되는 꼬리표로서, 상기 제2 특정 자원에 최근접인 자원의 꼬리표인, 특정 꼬리표를 탐색하는 단계; 및
상기 탐색에 따라 획득된 상기 특정 꼬리표에 따라 상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 결정 및 되돌려주는 단계
를 포함하는, 구조화 문서 권한 관리 방법.
According to claim 1,
Returning (returning) the right of the specific user with respect to the first specific action on the second specific resource,
Search for a specific tag, which is a tag of a resource closest to the second specific resource, as a tag applied to the specific user with respect to the first specific action from among the second specific resource and the ancestor resources of the second specific resource to do; and
determining and returning the authority of the specific user with respect to the first specific action on the second specific resource according to the specific tag obtained according to the search;
Including, structured document rights management method.
제6항에 있어서,
상기 특정 꼬리표를 탐색하는 단계에서, 상기 탐색은,
상기 특정 꼬리표가 소유자 꼬리표이고, 상기 특정 사용자가 상기 특정 꼬리표에 대응하는 상기 적어도 하나의 소유자에 속하는 제1 조건,
상기 특정 꼬리표가 정책 꼬리표이고, 상기 특정 꼬리표에 의하여 상기 제1 특정 액션에 관한 권한이 부여 또는 금지된 제2 조건,
상기 특정 꼬리표가 허가 꼬리표이고, 상기 특정 꼬리표에 의하여 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한이 부여 또는 금지된 제3 조건, 또는
상기 제1 조건, 상기 제2 조건 및 상기 제3 조건을 만족하는 상기 최근접인 자원의 꼬리표가 존재하지 않는 제4 조건
을 종료 조건으로 하되, 상기 제4 조건에 대해 상기 제3 조건이 우선 적용되고, 상기 제3 조건에 대해 상기 제2 조건이 우선 적용되며, 상기 제2 조건에 대해 상기 제1 조건이 우선 적용되는, 구조화 문서 권한 관리 방법.
7. The method of claim 6,
In the step of searching for the specific tag, the search comprises:
a first condition that the specific tag is an owner tag, and the specific user belongs to the at least one owner corresponding to the specific tag;
a second condition in which the specific tag is a policy tag, and permission for the first specific action is granted or prohibited by the specific tag;
a third condition that the specific tag is a permission tag, and that the specific user is authorized or prohibited with respect to the first specific action by the specific tag; or
A fourth condition in which there is no tag of the nearest resource that satisfies the first condition, the second condition, and the third condition
is an end condition, wherein the third condition is applied first to the fourth condition, the second condition is applied first to the third condition, and the first condition is applied first to the second condition , structured document rights management methods.
컴퓨팅 장치로 하여금, 제1항 내지 제7항 중 어느 한 항의 방법을 수행하도록 구현된 명령어(instructions)를 포함하는, 기계 판독 가능한 기록 매체에 저장된, 컴퓨터 프로그램.A computer program, stored in a machine-readable recording medium, comprising instructions implemented to cause a computing device to perform the method of any one of claims 1 to 7. 구조화 문서(structured document)에 포함된 자원들에 관한 권한을 꼬리표(tag)들로써 관리하는 컴퓨팅 장치에 있어서,
상기 구조화 문서는, 0의 깊이(depth)를 가지는 적어도 하나의 최상위의 요소문서를 포함하고, 1 이상의 깊이를 가지는 적어도 하나의 요소문서를 선택적으로(optionally) 더 포함하며, 상기 구조화 문서에 포함된 모든 요소문서 각각은 내용으로서 적어도 하나의 기록을 포함하고,
상기 자원들은, 상기 구조화 문서, 및 상기 구조화 문서에 포함된 상기 모든 요소문서, 및 모든 상기 기록을 포함하고, 상기 자원들 각각은 수정된 횟수로서 정정 회차를 포함하되,
상기 1 이상의 깊이를 가지는 상기 적어도 하나의 요소문서가 상기 구조화 문서 내에 포함되는 경우, 상기 구조화 문서는, 상기 구조화 문서 내에서 1 이상의 깊이 n을 가지는 모든 요소문서 각각이 n-1의 깊이를 가지는 하나의 요소문서에 종속됨을 표시하는 각각의 종속 관계를 더 포함하며,
상기 자원들에 속한 개별 자원의 사용자는, 일반 사용자, 상기 개별 자원의 적어도 하나의 소유자, 및 상기 개별 자원에 대한 적어도 하나의 특정 사용자를 포함하고,
상기 꼬리표들 각각은, 상기 개별 자원의 상기 적어도 하나의 소유자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하기 위한 소유자 꼬리표, 상기 일반 사용자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하거나 금지하기 위한 정책 꼬리표, 및 상기 적어도 하나의 특정 사용자에 대하여 상기 개별 자원에 관한 액션들의 권한을 부여하거나 금지하기 위한 허가 꼬리표 중의 하나이고,
상기 컴퓨팅 장치는,
(i) 상기 구조화 문서를 생성하기 위한, 사용자로부터의 요청인 구조화 문서 생성 요청, (ii) 상기 구조화 문서 내에 신규 자원을 생성하기 위한, 사용자로부터의 요청인 자원 생성 요청, (iii) 상기 구조화 문서 내 제1 특정 자원에 대한 권한을 추가하기 위한, 사용자로부터의 요청인 권한 추가 요청, (iv) 상기 구조화 문서 내 제2 특정 자원에 대한 제1 특정 액션에 관한 특정 사용자의 권한을 확인하기 위한 요청인 권한 확인 요청, 및 (v) 상기 구조화 문서 내 제3 특정 자원에 대하여 제2 특정 액션을 실행하기 위한, 사용자로부터의 요청인 액션 실행 요청을 획득하는 통신부; 및
상기 구조화 문서 생성 요청에 응하여, 상기 구조화 문서 및 상기 구조화 문서에 포함된 상기 최상위 요소문서를 생성하는 부프로세스, 및 상기 최상위 요소문서에 대응하는 상기 소유자 꼬리표를 생성하는 부프로세스를 수행하는 프로세스, 상기 자원 생성 요청에 응하여, 상기 신규 자원을 생성하는 프로세스, 상기 권한 추가 요청에 응하여, 상기 제1 특정 자원에 대응하는 상기 정책 꼬리표 또는 상기 허가 꼬리표를 생성하는 프로세스, 상기 권한 확인 요청에 대한 응답으로서, 상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 되돌려주는 프로세스, 및 상기 액션 실행 요청에 응하여, 상기 사용자의 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 권한 확인 요청을 통하여 상기 제3 특정 자원에 대한 상기 제2 특정 액션에 관한 상기 사용자의 권한을 획득하고, 획득된 상기 권한에 따라 상기 제2 특정 액션을 실행하거나 실행하지 않는 프로세스를 수행하는 프로세서
를 포함하는, 구조화 문서 권한 관리 장치.
A computing device for managing rights with respect to resources included in a structured document as tags, the computing device comprising:
The structured document includes at least one uppermost element document having a depth of 0, and optionally further includes at least one element document having a depth of 1 or more, Each element document contains at least one record as its content;
wherein the resources include the structured document, and all of the element documents included in the structured document, and all of the records, each of the resources comprising a revision number as a number of times it has been modified;
When the at least one element document having a depth of one or more is included in the structured document, the structured document is one in which all element documents having a depth of one or more in the structured document each have a depth of n-1. It further includes each dependency relationship indicating that it is dependent on the element document of
A user of an individual resource belonging to the resources includes a general user, at least one owner of the individual resource, and at least one specific user for the individual resource,
Each of the tags includes: an owner tag for authorizing actions on the individual resource for the at least one owner of the individual resource, authorizing or prohibiting actions on the individual resource for the general user one of a policy tag for, and a permission tag for authorizing or prohibiting actions on the individual resource for the at least one specific user;
The computing device,
(i) a request to create a structured document that is a request from a user to create the structured document, (ii) a request to create a resource that is a request from a user to create a new resource in the structured document, (iii) the structured document a request to add a permission, which is a request from a user, to add a permission to my first specific resource, (iv) a request to confirm the permission of the specific user with respect to a first specific action on a second specific resource in the structured document a communication unit for obtaining an authorization confirmation request, and (v) an action execution request, which is a request from a user, for executing a second specific action on a third specific resource in the structured document; and
a process of performing, in response to the structured document creation request, a subprocess for generating the structured document and the top-level element document included in the structured document, and a sub-process for generating the owner tag corresponding to the top-level element document; In response to a resource creation request, the process of creating the new resource, in response to the permission addition request, a process of generating the policy tag or the permission tag corresponding to the first specific resource, in response to the permission check request, a process for returning the right of the specific user with respect to the first specific action on the second specific resource, and, in response to the action execution request, the right of the user about the second specific action on the third specific resource A processor that acquires the user's authority with respect to the second specific action on the third specific resource through a confirmation request, and performs a process of executing or not executing the second specific action according to the acquired authority
Including, structured document rights management device.
제9항에 있어서,
(i) 상기 구조화 문서 및 상기 자원들과 (ii) 상기 꼬리표들은 상이한 정보 단위로서 저장소에서 보유 및 관리되는, 구조화 문서 권한 관리 장치.
10. The method of claim 9,
(i) the structured document and the resources and (ii) the tags are held and managed in a repository as different units of information.
제9항에 있어서,
상기 개별 자원에 관한 상기 액션들은, 상기 개별 자원에 대한 기여의 요청 및 기여의 반영을 포함하고,
상기 기여의 요청은,
상기 프로세서가, 상기 개별 자원으로부터 수정된 내용, 및 상기 개별 자원의 정정 회차보다 1만큼 증가된 정정 회차를 포함하는 신규 자원을 생성하고, 상기 개별 자원에 대한 상기 기여의 반영이 허가된 사용자인 기여 반영자에 의해 접근 가능한 제1 사용자 인터페이스를 제공함으로써, 상기 기여 반영자로 하여금 상기 제1 사용자 인터페이스를 통하여 상기 신규 자원에 의한 상기 개별 자원의 대체 여부를 결정하게 하는 액션이고,
상기 기여의 반영은,
상기 프로세서가, 상기 신규 자원에 의한 상기 개별 자원의 대체 여부에 따라, 상기 구조화 문서 내에서 상기 신규 자원이 상기 개별 자원을 대체하거나 상기 개별 자원을 유지하게 하는 액션인, 구조화 문서 권한 관리 장치.
10. The method of claim 9,
the actions on the individual resource include requesting a contribution to the individual resource and reflecting the contribution;
The above request for contribution is:
The processor creates a new resource including the modified content from the individual resource, and a correction frequency increased by one than the correction frequency of the individual resource, and a user who is permitted to reflect the contribution to the individual resource. an action that causes the contributing reflector to determine whether to replace the individual resource by the new resource via the first user interface by providing a first user interface accessible by the reflector,
A reflection of this contribution is
The apparatus for managing structured document rights, wherein the processor causes the new resource to replace the individual resource or maintain the individual resource in the structured document according to whether the individual resource is replaced by the new resource.
제9항에 있어서,
상기 개별 자원에 관한 상기 액션들은 상기 개별 자원에 대한 읽기를 포함하고,
상기 제2 특정 액션은, 상기 구조화 문서의 복제이며,
상기 구조화 문서의 복제는,
상기 프로세서가, 상기 구조화 문서이거나 상기 구조화 문서에 포함되는 모든 자원들 중에서 상기 사용자에게 읽기 권한이 부여된 자원들인 복제 대상 자원들을 복제하여 신규 구조화 문서를 생성하는 문서 복제 부프로세스, 및
상기 프로세서가, 상기 복제 대상 자원들에 대응하는 모든 꼬리표들을 복제하여 상기 신규 구조화 문서에 적용하는 꼬리표 상속 부프로세스
를 포함하는 부프로세스들을 수행하는 액션인, 구조화 문서 권한 관리 장치.
10. The method of claim 9,
The actions on the individual resource include reading the individual resource,
The second specific action is duplication of the structured document,
Reproduction of the structured document,
A document duplication sub-process in which the processor duplicates the structured document or resources to which the user is granted the read right among all the resources included in the structured document to create a new structured document, and
A tag inheritance sub-process in which the processor duplicates all tags corresponding to the replication target resources and applies them to the new structured document
An action for performing sub-processes comprising a, structured document rights management device.
제12항에 있어서,
상기 개별 자원에 관한 상기 액션들은, 상기 개별 자원에 대한 읽기, 및 상기 개별 자원에 대한 공유를 포함하고,
상기 개별 자원에 대한 공유는,
상기 프로세서가, 상기 공유의 대상으로 지정된 사용자인 수용자(receiver)에 의해 접근 가능한 제2 사용자 인터페이스를 제공하되, 상기 제2 사용자 인터페이스를 통하여 결정된 상기 개별 자원에 대한 상기 수용자의 수락 여부가 참이면, 상기 구조화 문서이거나 상기 구조화 문서에 포함되는 모든 자원들 중에서 상기 수용자에게 읽기 권한이 부여된 자원들인 복제 대상 자원들을 복제하여 신규 구조화 문서를 생성하고, 상기 신규 구조화 문서의 최상위 요소문서의 적어도 하나의 소유자에 상기 수용자가 포함되도록 상기 신규 구조화 문서의 상기 최상위 요소 문서의 소유자 꼬리표를 생성 또는 수정하는 액션인, 구조화 문서 권한 관리 장치.
13. The method of claim 12,
The actions on the individual resource include reading the individual resource and sharing the individual resource,
The sharing of the individual resources is
If the processor provides a second user interface accessible by a receiver who is a user designated as the target of sharing, and whether the receiver accepts the individual resource determined through the second user interface is true, A new structured document is created by duplicating replication target resources, which are resources to which read permission is granted to the recipient, among all the resources included in the structured document or the structured document, and at least one owner of the uppermost element document of the new structured document and creating or modifying an owner tag of the top-level element document of the new structured document so that the recipient is included in the structured document rights management apparatus.
제9항에 있어서,
상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 되돌려주는 프로세스는,
상기 제2 특정 자원, 및 상기 제2 특정 자원의 조상 자원 중에서 상기 제1 특정 액션에 관하여 상기 특정 사용자에 적용되는 꼬리표로서, 상기 제2 특정 자원에 최근접인 자원의 꼬리표인, 특정 꼬리표를 탐색하는 부프로세스; 및
상기 탐색에 따라 획득된 상기 특정 꼬리표에 따라 상기 제2 특정 자원에 대한 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한을 결정 및 되돌려주는 부프로세스
를 포함하는, 구조화 문서 권한 관리 장치.
10. The method of claim 9,
The process of returning the authority of the specific user with respect to the first specific action on the second specific resource includes:
Search for a specific tag, which is a tag of a resource closest to the second specific resource, as a tag applied to the specific user with respect to the first specific action from among the second specific resource and the ancestor resources of the second specific resource subprocess; and
A sub-process for determining and returning the authority of the specific user with respect to the first specific action on the second specific resource according to the specific tag obtained according to the search
Including, structured document rights management device.
제14항에 있어서,
상기 특정 꼬리표를 탐색하는 프로세스에서,
상기 탐색은,
상기 특정 꼬리표가 소유자 꼬리표이고, 상기 특정 사용자가 상기 특정 꼬리표에 대응하는 상기 적어도 하나의 소유자에 속하는 제1 조건,
상기 특정 꼬리표가 정책 꼬리표이고, 상기 특정 꼬리표에 의하여 상기 제1 특정 액션에 관한 권한이 부여 또는 금지된 제2 조건,
상기 특정 꼬리표가 허가 꼬리표이고, 상기 특정 꼬리표에 의하여 상기 제1 특정 액션에 관한 상기 특정 사용자의 권한이 부여 또는 금지된 제3 조건, 또는
상기 제1 조건, 상기 제2 조건 및 상기 제3 조건을 만족하는 상기 최근접인 자원의 꼬리표가 존재하지 않는 제4 조건
을 종료 조건으로 하되, 상기 제4 조건에 대해 상기 제3 조건이 우선 적용되고, 상기 제3 조건에 대해 상기 제2 조건이 우선 적용되며, 상기 제2 조건에 대해 상기 제1 조건이 우선 적용되는, 구조화 문서 권한 관리 장치.
15. The method of claim 14,
In the process of searching for the specific tag,
The search is
a first condition that the specific tag is an owner tag, and the specific user belongs to the at least one owner corresponding to the specific tag;
a second condition in which the specific tag is a policy tag, and permission for the first specific action is granted or prohibited by the specific tag;
a third condition that the specific tag is a permission tag, and that the specific user is authorized or prohibited with respect to the first specific action by the specific tag; or
A fourth condition in which there is no tag of the nearest resource that satisfies the first condition, the second condition, and the third condition
is an end condition, wherein the third condition is applied first to the fourth condition, the second condition is applied first to the third condition, and the first condition is applied first to the second condition , structured document rights management unit.
KR1020220018238A 2022-02-11 2022-02-11 Method for managing privileges on resources contained in a structured document and apparatus using the same KR102381539B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220018238A KR102381539B1 (en) 2022-02-11 2022-02-11 Method for managing privileges on resources contained in a structured document and apparatus using the same
PCT/KR2022/005338 WO2023153558A1 (en) 2022-02-11 2022-04-13 Method for managing authority over resources included in structured document, and apparatus using same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220018238A KR102381539B1 (en) 2022-02-11 2022-02-11 Method for managing privileges on resources contained in a structured document and apparatus using the same

Publications (1)

Publication Number Publication Date
KR102381539B1 true KR102381539B1 (en) 2022-04-01

Family

ID=81183834

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220018238A KR102381539B1 (en) 2022-02-11 2022-02-11 Method for managing privileges on resources contained in a structured document and apparatus using the same

Country Status (2)

Country Link
KR (1) KR102381539B1 (en)
WO (1) WO2023153558A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023153558A1 (en) * 2022-02-11 2023-08-17 (주) 바우디움 Method for managing authority over resources included in structured document, and apparatus using same
CN117807619A (en) * 2024-03-01 2024-04-02 中国人民解放军国防科技大学 Uniform authority control method for unstructured data and structured data

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000155756A (en) * 1998-06-30 2000-06-06 Toshiba Corp Structured document saving method, data repeating device, and data transmitting and receiving device
JP2002091947A (en) * 2000-09-14 2002-03-29 Hitachi Ltd Device for dynamically preparing structured document
US7043487B2 (en) * 2002-12-28 2006-05-09 International Business Machines Corporation Method for storing XML documents in a relational database system while exploiting XML schema
US7921072B2 (en) * 2005-05-31 2011-04-05 Alcatel-Lucent Usa Inc. Methods and apparatus for mapping source schemas to a target schema using schema embedding
US9323850B1 (en) 2012-05-30 2016-04-26 Google Inc. Potential social recipient ranking for maximal viral content distribution
US20170124258A1 (en) * 2015-11-04 2017-05-04 Mmodal Ip Llc Dynamic De-Identification of Healthcare Data

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102381539B1 (en) * 2022-02-11 2022-04-01 (주) 바우디움 Method for managing privileges on resources contained in a structured document and apparatus using the same

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000155756A (en) * 1998-06-30 2000-06-06 Toshiba Corp Structured document saving method, data repeating device, and data transmitting and receiving device
JP2002091947A (en) * 2000-09-14 2002-03-29 Hitachi Ltd Device for dynamically preparing structured document
US7043487B2 (en) * 2002-12-28 2006-05-09 International Business Machines Corporation Method for storing XML documents in a relational database system while exploiting XML schema
US7921072B2 (en) * 2005-05-31 2011-04-05 Alcatel-Lucent Usa Inc. Methods and apparatus for mapping source schemas to a target schema using schema embedding
US9323850B1 (en) 2012-05-30 2016-04-26 Google Inc. Potential social recipient ranking for maximal viral content distribution
US20170124258A1 (en) * 2015-11-04 2017-05-04 Mmodal Ip Llc Dynamic De-Identification of Healthcare Data

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023153558A1 (en) * 2022-02-11 2023-08-17 (주) 바우디움 Method for managing authority over resources included in structured document, and apparatus using same
CN117807619A (en) * 2024-03-01 2024-04-02 中国人民解放军国防科技大学 Uniform authority control method for unstructured data and structured data
CN117807619B (en) * 2024-03-01 2024-05-14 中国人民解放军国防科技大学 Uniform authority control method for unstructured data and structured data

Also Published As

Publication number Publication date
WO2023153558A1 (en) 2023-08-17

Similar Documents

Publication Publication Date Title
US11886806B2 (en) Templating process for a multi-page formatted document
JP7417677B2 (en) Technology for file sharing
CN102938039B (en) For the selectivity file access of application
KR102381539B1 (en) Method for managing privileges on resources contained in a structured document and apparatus using the same
US8965925B2 (en) Access controls
EP3133507A1 (en) Context-based data classification
Rajpoot et al. Attributes enhanced role-based access control model
US11770450B2 (en) Dynamic routing of file system objects
US10452328B2 (en) Extensible token-based authorization
US20090157737A1 (en) Database Trigger Modification System and Method
US11811839B2 (en) Managed distribution of data stream contents
US20190227985A1 (en) Method and system for using dynamic content types
US8856260B2 (en) Providing access to shared state data
US11113339B2 (en) System and method for federated content management using a federated library and federated metadata propagation
Shtern et al. Toward an ecosystem for precision sharing of segmented Big Data
KR102662399B1 (en) Information notarization server, method and computer program for converting and managing safety management contents into distributed blocks
WO2016167249A1 (en) Access control device, and access control method
JP7119448B2 (en) Information processing device and information processing program
US11625365B2 (en) Method for managing virtual file, apparatus for the same, computer program for the same, and recording medium storing computer program thereof
US11966489B2 (en) Data certification process for cloud database platform
US11727358B1 (en) Linking functionality between distinct document and workflow management systems
US20240135028A1 (en) System and method of dynamic search result permission checking
US20240054133A1 (en) Data Certification Process for Updates to Data in Cloud Database Platform
US20220398331A1 (en) Property-level visibilities for knowledge-graph objects
CN116685972A (en) Access determination device, access determination method, and access determination program

Legal Events

Date Code Title Description
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant