KR20190033733A - Apparatus for ensuring editing reliability to unsupported editing command from remote place and operation method thereof - Google Patents
Apparatus for ensuring editing reliability to unsupported editing command from remote place and operation method thereof Download PDFInfo
- Publication number
- KR20190033733A KR20190033733A KR1020170122254A KR20170122254A KR20190033733A KR 20190033733 A KR20190033733 A KR 20190033733A KR 1020170122254 A KR1020170122254 A KR 1020170122254A KR 20170122254 A KR20170122254 A KR 20170122254A KR 20190033733 A KR20190033733 A KR 20190033733A
- Authority
- KR
- South Korea
- Prior art keywords
- command
- editing
- edit
- buffer
- instruction
- Prior art date
Links
Images
Classifications
-
- G06F17/24—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Abstract
Description
본 발명은 다른 사용자로부터 입력되는 편집 명령을 지원 편집 명령과 미지원 편집 명령으로 나누어 처리함으로써 웹 문서의 편집 신뢰성을 보장하는 기법에 대한 것이다.The present invention relates to a technique for ensuring the editing reliability of a web document by dividing the editing command inputted from another user into a supporting editing command and a non-supporting editing command.
최근, 컴퓨터나 스마트폰 또는 태블릿 PC 등과 같은 전자 단말 장치가 널리 보급됨에 따라 이러한 전자 단말 장치를 이용하여 전자 문서를 열람, 작성, 편집할 수 있도록 하는 다양한 종류의 전자 문서 관련 프로그램들이 출시되고 있다.2. Description of the Related Art [0002] Recently, various electronic document-related programs have been released to enable electronic documents to be viewed, created, and edited using electronic terminal devices such as computers, smart phones, tablet PCs, and the like.
이러한 전자 문서 관련 프로그램들로는 기본적인 문서의 작성, 편집 등을 지원하는 워드프로세서, 데이터의 입력, 산술연산, 데이터 관리를 보조하는 스프레드시트, 발표자의 발표를 보조하기 위한 프레젠테이션 프로그램들이 있다.Examples of such electronic document related programs include a word processor for basic document creation and editing, a data input, an arithmetic operation, a spreadsheet for supporting data management, and presentation programs for assisting presenters.
기존에는 사용자가 전자 단말 장치를 활용해서 전자 문서를 열람, 작성, 편집하기 위해서는 전자 단말 장치에 직접 앞서 언급한 전자 문서 관련 프로그램들을 설치한 후 전자 문서 관련 프로그램들을 구동시켜 전자 문서를 열람하거나 작성 및 편집해야 했었다.Conventionally, in order to view, create and edit an electronic document by using an electronic terminal device, a user has to install the above-mentioned electronic document related programs directly in the electronic terminal device, and then operate the electronic document related programs to browse, I had to edit.
하지만, 최근에는 초고속 인터넷 환경이 구축되고, 언제 어디에서든지 인터넷에 접속할 수 있도록 하는 무선 인터넷 환경이 구축됨에 따라, 원격지의 서버를 통해서, 클라이언트 단말인 전자 단말 장치에 전자 문서 관련 서비스를 제공함으로써, 사용자가 전자 단말 장치에 소정의 전자 문서 관련 프로그램을 설치하지 않더라도 언제 어디에서든지 전자 문서를 열람, 작성, 편집할 수 있도록 하는 웹 기반의 전자 문서 서비스가 등장하고 있다.However, in recent years, a wireless Internet environment has been established in which a broadband Internet environment is established and a user can access the Internet anytime and anywhere. Thus, by providing an electronic document related service to an electronic terminal device serving as a client terminal through a remote server, A web-based electronic document service that allows an electronic document to be viewed, created, and edited anytime and anywhere without installing a predetermined electronic document-related program in the electronic terminal apparatus is emerging.
이러한 웹 기반의 전자 문서 서비스는 다양한 클라이언트 단말들이 전자 문서 서비스 제공 서버에 접속한 후 브라우저를 통해 마크업 언어(Markup Language) 기반의 전자 문서를 열람한 후 해당 전자 문서를 작성 및 편집할 수 있도록 지원하며, 다양한 클라이언트 단말들이 상기 전자 문서에 대해서 실시간으로 동시 협업을 수행할 수 있도록 지원한다는 점에서 기업이나 단체 등에서 주로 활용되고 있다.Such a web-based electronic document service enables various client terminals to access an electronic document service providing server, browse an electronic document based on a markup language through a browser, and then create and edit the corresponding electronic document And it is mainly utilized in companies and organizations in that various client terminals support simultaneous collaboration on the electronic document in real time.
그리고, 웹 기반의 전자 문서 서비스는 클라이언트 단말에 소정의 전자 문서 작성 프로그램을 설치할 필요 없이, 인터넷에 접속만 할 수 있으면, 클라이언트 단말에 탑재되어 있는 브라우저를 통해서 전자 문서를 열람하고, 작성 및 편집할 수 있도록 지원하기 때문에 사용자의 이동성을 보장할 수 있어, 개인 사용자들도 점차 증가하고 있는 추세이다.If a web-based electronic document service can be connected to the Internet without installing a predetermined electronic document creating program on the client terminal, the electronic document service can be browsed, created and edited through a browser installed in the client terminal And thus the mobility of users can be guaranteed, and the number of individual users is also increasing.
보통, 웹 기반의 전자 문서 서비스는 네트워크로 연결된 클라이언트 단말이 브라우저를 통해 전자 문서에 대한 편집을 수행할 수 있도록 지원하기 위해, 원본 전자 문서를 마크업 언어(Markup Language) 기반 문서로 변환하여 클라이언트 단말로 제공하면, 클라이언트 단말이 브라우저를 통해 상기 마크업 언어 기반 문서에 대한 편집을 수행하는 방식으로 운영된다.Generally, a web-based electronic document service converts an original electronic document into a markup language-based document in order to support a network-connected client terminal to edit an electronic document through a browser, The client terminal operates in a manner that performs editing of the markup language-based document through the browser.
관련해서, 사용자 1과 사용자 2가 마크업 언어 기반 문서에 대하여 동시에 편집을 진행하는 경우, 사용자 2의 클라이언트 단말이 브라우저를 통해 상기 마크업 언어 기반 문서에 대한 편집을 수행하는 중에는 소정의 시점 마다 원격지의 서버에 대하여 편집 명령을 전송함으로써 원격지의 서버의 마크업 언어 기반 문서와 사용자 2의 클라이언트 단말의 마크업 언어 기반 문서 간에 동기화가 이루어지며, 동시에 사용자 1의 클라이언트 단말에도 편집 명령이 전달되어, 원격지의 서버의 마크업 언어 기반 문서와 사용자 1의 클라이언트 단말의 마크업 언어 기반 문서 간에도 동기화가 이루어진다.In the case where the user 1 and the user 2 simultaneously edit the markup language-based document, while the client terminal of the user 2 is editing the markup language-based document through the browser, An editing command is transmitted to the server of the user 1 and the markup language based document of the remote server is synchronized with the markup language based document of the client terminal of the user 2. At the same time, Synchronization between the markup language based document of the server of the user 1 and the markup language based document of the client terminal of the user 1 is performed.
이때, 브라우저에서 구동되는 오피스의 버전 또는 오피스에 대한 권한 등에 따라 사용자 2의 클라이언트 단말로부터 상기 마크업 언어 기반 문서에 대한 편집 명령 중 일부 편집 명령이 사용자 1의 클라이언트 단말에서 지원되지 않을 수 있다. 지원되지 않는 일부 편집 명령을 수신한 경우, 사용자 1의 클라이언트 단말의 마크업 언어 기반 문서에는 상기 일부 편집 명령이 반영될 수는 있지만 사용자 1의 클라이언트 단말에는 제대로 표현되지 않을 수 있다. 이러한 경우, 사용자 1이 다시 실행 명령 또는 되돌리기 명령을 입력하면, 상기 마크업 언어 기반 문서의 객체에 대한 데이터가 일부 손상될 수 있다. 이에 따라, 사용자 1의 의도와는 다른 ‘되돌리기’ 기능 또는 ‘다시 실행’ 기능 등의 실행 결과가 출력될 수 있다.At this time, some editing commands for the markup language-based document may not be supported by the client terminal of the user 1 from the client terminal of the user 2 in accordance with the version of the office or the authority of the office running on the browser. If some unsupported editing commands are received, the editing instruction may be reflected in the markup language based document of the client terminal of the user 1, but may not be properly displayed on the client terminal of the user 1. In this case, if the user 1 inputs a command to execute again or a command to revert, some data on the object of the markup language-based document may be damaged. Accordingly, execution results such as a "return" function or a "redo" function different from the intention of the user 1 can be output.
따라서, 다른 사용자로부터 수신된 편집 명령의 지원 여부에 따라 변환 동작을 달리 수행함으로써 사용자가 의도한대로 ‘되돌리기’ 기능 및 ‘다시 실행’ 기능 등이 실행되는 편집 신뢰성을 보장하는 알고리즘이 도입될 필요가 있다.Therefore, it is necessary to introduce an algorithm for ensuring editing reliability in which a 'return' function and a 'redo' function are performed as the user intends by performing a conversion operation differently depending on whether or not an editing command received from another user is supported .
본 발명에 따른 원격지로부터의 미지원 편집 명령에 대한 편집 신뢰성을 보장하는 장치 및 이의 동작 방법은 제2 편집 명령 수신부가 새롭게 수신한 편집 명령의 지원 여부에 기초하여 되돌리기 버퍼 및 다시 실행 버퍼에 저장되어 있는 되돌리기 명령 및 다시 실행 명령에 대한 변환 동작을 수행함으로써, 다른 사용자로부터의 편집 명령이 미지원 편집 명령인 경우에도 사용자가 의도한대로 ‘되돌리기’ 기능 및 ‘다시 실행’ 기능 등이 실행되는 편집 신뢰성을 보장하고자 한다.The device for assuring the editing reliability of the unsupported editing command from the remote location according to the present invention and the method of operating the same are stored in the reverting buffer and the re-executing buffer based on whether the second editing command receiving section supports the newly received editing command By performing the conversion operation for the rewrite instruction and the rewrite instruction, even if the editing command from the other user is a non-editing instruction, it is possible to perform the 'revert' function and the 're- do.
본 발명의 일실시예에 따른 원격지로부터의 미지원 편집 명령에 대한 편집 신뢰성을 보장하는 장치는 전자 문서 저장 서버로부터 원본 전자 문서에 대한 마크업 언어 기반 문서를 수신하는 마크업 언어 기반 문서 수신부, 입력 장치로부터 사용자가 입력한 상기 마크업 언어 기반 문서에 대한 편집 명령을 수신하는 제1 편집 명령 수신부, 상기 전자 문서 저장 서버로부터 상기 마크업 언어 기반 문서에 대한 편집 명령을 수신하는 제2 편집 명령 수신부, 상기 제1 편집 명령 수신부가 수신한 상기 편집 명령에 대응하는 되돌리기 명령을 순차적으로 저장하고 있는 되돌리기 버퍼, 상기 제1 편집 명령 수신부가 수신한 상기 편집 명령에 대응하는 다시 실행 명령을 순차적으로 저장하고 있는 다시 실행 버퍼 및 상기 제2 편집 명령 수신부가 새롭게 수신한 편집 명령의 지원 여부에 기초하여 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령에 대한 변환 동작을 수행하는 운영 변환부를 포함한다.An apparatus for assuring the editing reliability of a non-supported editing command from a remote location according to an embodiment of the present invention includes a markup language-based document receiving unit for receiving a markup language-based document for an original electronic document from an electronic document storage server, A second edit command receiving unit for receiving an edit command for the markup language based document from the electronic document save server, a second edit command receiving unit for receiving an edit command for the markup language based document, A rewrite buffer for sequentially storing a rewrite command corresponding to the edit command received by the first edit command receiver, a rewrite buffer for sequentially storing a rewrite command corresponding to the edit command received by the first edit command receiver, The execution buffer and the newly received edit command Includes on the basis of the support of the command return the buffer and the buffer is re-stored in the execution command and return parts of the operating transform to perform a conversion operation on the re-execution instruction.
또한, 본 발명의 일실시예에 따른 원격지로부터의 미지원 편집 명령에 대한 편집 신뢰성을 보장하는 장치의 동작 방법은 전자 문서 저장 서버로부터 원본 전자 문서에 대한 마크업 언어 기반 문서를 수신하는 단계, 제1 편집 명령 수신부가 입력 장치로부터 사용자가 입력한 상기 마크업 언어 기반 문서에 대한 편집 명령을 수신하는 단계, 제2 편집 명령 수신부가 상기 전자 문서 저장 서버로부터 상기 마크업 언어 기반 문서에 대한 편집 명령을 수신하는 단계, 상기 제1 편집 명령 수신부가 수신한 상기 편집 명령에 대응하는 되돌리기 명령을 순차적으로 저장하고 있는 되돌리기 버퍼를 유지하는 단계, 상기 제1 편집 명령 수신부가 수신한 상기 편집 명령에 대응하는 다시 실행 명령을 순차적으로 저장하고 있는 다시 실행 버퍼를 유지하는 단계 및 상기 제2 편집 명령 수신부가 새롭게 수신한 편집 명령의 지원 여부에 기초하여 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령에 대한 변환 동작을 수행하는 단계를 포함한다.According to another aspect of the present invention, there is provided an apparatus for assuring the editing reliability of a non-supported editing command from a remote location, comprising: receiving a markup language-based document for an original electronic document from an electronic document storage server; Receiving an edit command for the markup language-based document input by the user from an input device, receiving an edit command for the markup language-based document from the electronic document storage server, The method comprising the steps of: holding a reverting buffer storing a reverting command corresponding to the editing command received by the first editing command receiver in order; Maintaining a re-execution buffer that sequentially stores instructions; and And performing a conversion operation on the revertive command and the re-execution command stored in the revertive buffer and the re-execution buffer based on whether the second edit command reception unit supports the newly received edit command.
본 발명에 따른 원격지로부터의 미지원 편집 명령에 대한 편집 신뢰성을 보장하는 장치 및 이의 동작 방법은 제2 편집 명령 수신부가 새롭게 수신한 편집 명령의 지원 여부에 기초하여 되돌리기 버퍼 및 다시 실행 버퍼에 저장되어 있는 되돌리기 명령 및 다시 실행 명령에 대한 변환 동작을 수행함으로써, 다른 사용자로부터의 편집 명령이 미지원 편집 명령인 경우에도 사용자가 의도한대로 ‘되돌리기’ 기능 및 ‘다시 실행’ 기능 등이 실행되는 편집 신뢰성을 보장하고자 한다.The device for assuring the editing reliability of the unsupported editing command from the remote location according to the present invention and the method of operating the same are stored in the reverting buffer and the re-executing buffer based on whether the second editing command receiving section supports the newly received editing command By performing the conversion operation for the rewrite instruction and the rewrite instruction, even if the editing command from the other user is a non-editing instruction, it is possible to perform the 'revert' function and the 're- do.
도 1은 본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치를 포함하는 마크업 언어 기반 문서 편집 시스템의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 구조를 상세하게 도시한 도면이다.
도 3은 마크업 언어 기반 문서를 예시한 도면이다.
도 4는 본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법을 도시한 순서도이다.1 is a diagram illustrating a structure of a markup language-based document editing system including an apparatus for assuring editing reliability of a web document according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating a detailed structure of an apparatus for assuring editing reliability of a web document according to an exemplary embodiment of the present invention. Referring to FIG.
3 is a diagram illustrating a markup language based document.
4 is a flowchart illustrating an operation method of an apparatus for assuring editing reliability of a web document according to an exemplary embodiment of the present invention.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings. It is to be understood that the description is not intended to limit the invention to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals in the drawings are used for similar elements and, unless otherwise defined, all terms used in the specification, including technical and scientific terms, are to be construed in a manner that is familiar to those skilled in the art. It has the same meaning as commonly understood by those who have it.
이하에서, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치(30 및 40, 이하, ‘편집 신뢰성 보장 장치’라고 함)를 포함하는 마크업 언어 기반 문서 편집 시스템(100)의 구조를 도시한 도면이다.1 is a block diagram of a markup language-based
도 1에 도시된 바와 같이, 마크업 언어 기반 문서 편집 시스템(100)은 편집 신뢰성 보장 장치(30), 편집 신뢰성 보장 장치(40) 및 전자 문서 저장 서버(50)를 포함한다.As shown in FIG. 1, the markup language-based
전자 문서 저장 서버(50)에 "hwp"나 "docx" 등의 확장자를 갖는 원본 전자 문서(55)가 저장되어 있는 상태에서 사용자 1(10)의 편집 신뢰성 보장 장치(30) 및/또는 사용자 2(20)의 편집 신뢰성 보장 장치(40)로부터 상기 원본 전자 문서(55)에 대한 액세스 요청이 수신되면, 전자 문서 저장 서버(50)는 상기 원본 전자 문서(55)를 마크업 언어 기반 문서로 변환한 후 상기 마크업 언어 기반 문서를 사용자 1(10)의 편집 신뢰성 보장 장치(30) 및/또는 사용자 2(2)의 편집 신뢰성 보장 장치(40)로 전송할 수 있다. 여기서, 마크업 언어 기반 문서는 HTML(Hypertext Markup Language)이나 XML(eXtensible Markup Language)과 같은 마크업 언어 기반 문서의 편집 신뢰성 보장 장치들(30 및 40)에 설치되어 있는 브라우저를 통해서 열람이 가능한 마크업 언어로 구성된 문서를 의미한다.The editing
즉, 도 1을 참조하면, 사용자들(10 및 20)은 편집 신뢰성 보장 장치들(30 및 40)을 이용하여 전자 문서 저장 서버(50)에 저장된 상기 원본 전자 문서(55)에 대한 마크업 언어 기반 문서를 수신하고, 수신된 마크업 언어 기반 문서들(35 및 45)을 편집 신뢰성 보장 장치들(30 및 40)에 설치되어 있는 브라우저를 통해서 열람 및 편집할 수 있다.1, the
이하에서는 도 2에 도시된 도면을 참조하여 본 발명의 일실시예에 따른 편집 신뢰성 보장 장치들(30 및 40)의 구조에 대해 상세히 설명하기로 한다.Hereinafter, the structure of the editing
도 2는 편집 신뢰성 보장 장치(200)의 구조를 상세하게 도시한 도면이다.2 is a diagram showing the structure of the editing
도 2에 도시된 바와 같이, 편집 신뢰성 보장 장치(200)는 마크업 언어 기반 문서 수신부(210), 마크업 언어 기반 문서 저장부(220), 제1 편집 명령 수신부(230), 제2 편집 명령 수신부(240), 운영 변환부(250), 다시 실행 버퍼(260), 되돌리기 버퍼(270) 및 편집 명령 송신부(280)를 포함한다.2, the editing
마크업 언어 기반 문서 수신부(210)는 네트워크로 연결된 전자 문서 저장 서버(50)로부터 상기 전자 문서 저장 서버(50)가 원본 전자 문서에 기초하여 생성한 마크업 언어 기반 문서를 수신하고, 수신된 마크업 언어 기반 문서를 마크업 언어 기반 문서 저장부(220)에 저장한다. 여기에서, 마크업 언어 기반 문서 저장부(220)는 DRAM(Dynamic Random Access Memory), SRAM(Static RAM) 등과 같은 메모리 장치로 구현될 수 있다.The markup language-based
제1 편집 명령 수신부(230)는 입력 장치를 통해 사용자가 입력한 입력 신호에 대응하는 편집 명령을 수신한다. 여기서, 입력 장치는 편집 신뢰성 보장 장치(200)에 유/무선으로 연결된 키보드, 마우스, 터치스크린, 전자 펜 등의 입력 장치이며, 사용자가 입력한 입력 신호에 기초하여 편집 명령을 생성할 수 있다. 예를 들어, 사용자가 입력 장치(예: 키보드)를 이용하여 “12”를 입력한 경우, 입력 장치는 마크업 언어 기반 문서에 “12”를 삽입하라는 편집 명령을 생성하고 제1 편집 명령 수신부(230)는 입력 장치로부터 “12”를 삽입하라는 편집 명령을 수신할 수 있다. 또한, 사용자가 입력 장치(예: 키보드)를 이용하여 “3”을 입력한 경우, 입력 장치는 마크업 언어 기반 문서에 “3”을 삽입하라는 편집 명령을 생성하고 제1 편집 명령 수신부(230)는 입력 장치로부터 “3”을 삽입하라는 편집 명령을 수신할 수 있다. 이에 따라, 마크업 언어 기반 문서에는 “123”이 삽입될 수 있다. 또한, 편집 명령 송신부(280)는 제1 편집 명령 수신부(230)가 수신한 편집 명령을 전자 문서 저장 서버(50)에 송신할 수 있다.The first edit
제2 편집 명령 수신부(240)는 전자 문서 저장 서버(50)를 통해 다른 사용자의 편집 신뢰성 보장 장치가 생성한 편집 명령을 수신할 수 있다. 예를 들어, 제2 편집 명령 수신부(240)는 전자 문서 저장 서버(50)를 통해 마크업 언어 기반 문서에 “4”를 삽입하라는 편집 명령을 수신할 수 있다. 이에 따라, 마크업 언어 기반 문서는 “123”에서 "1234"로 편집될 수 있다.The second edit
운영 변환부(250)는 편집 명령에 기초하여 마크업 언어 기반 문서를 편집한다. 예를 들어, 운영 변환부(250)는 제1 편집 명령 수신부(230)로부터의 “12”를 삽입하라는 편집 명령에 기초하여 마크업 언어 기반 문서에 “12”를 삽입함으로써 마크업 언어 기반 문서를 편집하며, “3”을 삽입하라는 편집 명령에 기초하여 마크업 언어 기반 문서에 “3”을 삽입함으로써 마크업 언어 기반 문서를 편집할 수 있다. 또한, 운영 변환부(250)는 제2 편집 명령 수신부(240)로부터의 “4”를 삽입하라는 편집 명령에 기초하여 마크업 언어 기반 문서에 “4”를 삽입함으로써 마크업 언어 기반 문서를 편집할 수도 있다.The
또한, 운영 변환부(250)는 제1 편집 명령 수신부(230)로부터 입력된 편집 명령에 대응하는 다시 실행 명령 및 되돌리기 명령을 생성하고, 생성된 다시 실행 명령 및 되돌리기 명령을 다시 실행 버퍼(260) 및 되돌리기 버퍼(270)에 각각 저장한다.Also, the
구체적으로, 운영 변환부(250)는 제1 편집 명령 수신부(230)로부터 입력된 편집 명령에 대응하는 다시 실행 명령을 다시 실행 버퍼(260)에 저장한다. 그리고, 운영 변환부(250)는 제1 편집 명령 수신부(230)로부터 입력된 편집 명령에 대응하는 되돌리기 명령을 되돌리기 버퍼(270)에 저장한다. 이에 따라, 다시 실행 버퍼(260)에는 전자 문서 저장 서버(50)로부터의 마크업 언어 기반 문서에 대한 편집 명령에 대응하는 다시 실행 명령이 순차적으로 저장되며, 되돌리기 버퍼(270)에는 전자 문서 저장 서버(50)로부터의 마크업 언어 기반 문서에 대한 편집 명령에 대응하는 되돌리기 명령이 순차적으로 저장될 수 있다. 여기에서, 다시 실행 버퍼(260) 및 되돌리기 버퍼(270)는 DRAM, SRAM 등과 같은 메모리 장치로 구현될 수 있다.Specifically, the
예를 들어, 제1 편집 명령 수신부(230)로부터 마크업 언어 기반 문서의 1번째 위치에 “1”을 삽입하라는 편집 명령, 2번째 위치에 “2”를 삽입하라는 편집 명령, 3번째 위치에 “3”을 삽입하라는 편집 명령 및 4번째 위치에 “4”를 삽입하라는 편집 명령이 순차적으로 입력된 경우, 운영 변환부(250)는 상기 편집 명령들에 기초하여 마크업 언어 기반 문서에 1번째 위치에 “1”이라는 글자(즉, 텍스트 객체)를 삽입하고, 2번째 위치에 “2”라는 글자를 삽입하며, 3번째 위치에 “3”이라는 글자를 삽입하고, 4번째 위치에 “4”라는 글자를 삽입한다. 동시에 운영 변환부(250)는 상기 편집 명령들에 대응하는 다시 실행 명령 및 되돌리기 명령을 하기 표 1과 같이 생성하여 다시 실행 버퍼(260) 및 되돌리기 버퍼(270)에 각각 저장할 수 있다. 여기에서, 객체는 마크업 언어 기반 문서에 삽입될 수 있는 도형, 이미지, 표, 텍스트 등과 같은 다양한 콘텐츠들을 의미한다.For example, an editing command to insert "1" at the first position of the markup language-based document from the first editing
표 1을 참조하면, “1”, “2”, “3” 및 “4”를 위치 1번째 위치(o[1]), 2번째 위치(o[2]), 3번째 위치(o[3]) 및 4번째 위치(o[4])에 각각 삽입하라는 편집 명령들에 의해 다시 실행 버퍼(260)에는 이들에 각각 대응하는 INS o[1] ‘1’, INS o[2] ‘2’, INS o[3] ‘3’ 및 INS o[4] ‘4’라는 다시 실행 명령들이 순차적으로 저장되며, 되돌리기 버퍼(270)에는 이들에 각각 대응하는 DEL o[1], DEL o[2], DEL o[3] 및 DEL o[4]이라는 다시 실행 명령들이 순차적으로 저장된다. 여기에서, INS o[1] ‘1’이라는 다시 실행 명령은 “1”이라는 글자를 1번째 위치에 삽입하라는 편집 명령이고, INS o[2] ‘2’라는 다시 실행 명령은 “2”라는 글자를 2번째 위치에 삽입하라는 편집 명령이다. 마찬가지로, DEL o[1]이라는 다시 실행 명령은 1번째 위치의 객체를 삭제하라는 편집 명령이고, DEL o[2]이라는 다시 실행 명령은 2번째 위치의 객체를 삭제하라는 편집 명령이다.Referring to Table 1, "1", "2", "3" and "4" are stored in the first position o [1], the second position o [ 1] ', INS o [2]' 2 ', respectively corresponding to these in the
또한, 운영 변환부(250)는 “1234”라는 글자가 입력된 마크업 언어 기반 문서(301)에 대하여 제1 편집 명령 수신부(230) 및/또는 제2 편집 명령 수신부(240)로부터 새롭게 입력된 편집 명령에 의해 기존에 입력된 편집 명령의 대상 객체(즉, “1”, “2”, “3” 및 “4”)의 위치가 변경되면, 상기 다시 실행 버퍼(260) 및 상기 되돌리기 버퍼(270)에 각각 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령 중 상기 마크업 언어 기반 문서상에서의 위치가 변경되는 객체에 대한 되돌리기 명령과 다시 실행 명령에 포함된 위치 정보를 상기 새로운 편집 명령에 의해 변경되는 위치에 상응하도록 변경할 수 있다. 이때, 운영 변환부(250)는 새롭게 입력된 편집 명령이 제1 편집 명령 수신부(230)로부터 입력된 경우, 상기 새로운 편집 명령에 대응하는 되돌리기 명령 및 다시 실행 명령을 생성하여 상기 다시 실행 버퍼(260) 및 상기 되돌리기 버퍼(270)에 각각 저장한다.Also, the
예를 들어, 표 1과 같은 상황에서, 제1 편집 명령 수신부(230)로부터 마크업 언어 기반 문서(301)의 1번째 및 2번째 위치의 객체를 삭제하라는 편집 명령이 입력되면, 운영 변환부(250)는 마크업 언어 기반 문서(301)의 “1234”에서 “12”를 삭제하여 “34”로 편집한 후 객체의 위치가 변경된 “3” 및 “4”에 대한 편집 명령에 대응하는 되돌리기 명령과 다시 실행 명령에 포함된 위치 정보(즉, o[3] 및 o[4])를 상기 새로운 편집 명령에 의해 변경되는 위치(즉, 1번째 및 2번째 위치)에 상응하도록 변경한다. 또한, 운영 변환부(250)는 1번째 및 2번째 위치의 객체를 삭제하라는 편집 명령에 의해 위치 정보가 o[1] 및 o[2]인 되돌리기 명령과 다시 실행 명령을 노옵(NO-OP) 처리할 수 있다. 이에 따라, 다시 실행 버퍼(260) 및 되돌리기 버퍼(270)는 하기 표 2와 같이 갱신될 수 있다.For example, if an editing command to delete the objects at the first and second positions of the markup language-based
표 2를 참조하면, 1 내지 2번째 위치(o[1:2])의 객체를 삭제하라는 편집 명령에 의해 다시 실행 버퍼(260)에는 이들에 각각 대응하는 DEL o[1:2]이라는 다시 실행 명령이 저장되며, 되돌리기 버퍼(270)에는 이들에 각각 대응하는 INS o[1] ‘12’라는 다시 실행 명령이 저장된다. 또한, 객체의 위치가 변경된 “3” 및 “4”에 대한 편집 명령에 대응하는 되돌리기 명령과 다시 실행 명령이 INS o[3] ‘3’, INS o[4] ‘4’, DEL o[3] 및 DEL o[4]에서 INS o[1] ‘3’, INS o[2] ‘4’, DEL o[1] 및 DEL o[2]로 변경되며, 1 내지 2번째 위치(o[1:2])의 객체를 삭제하라는 편집 명령과 위치 정보가 겹치는 다시 실행 명령들(즉, (INS o[1] ‘1’ 및 INS o[2] ‘2’)과 되돌리기 명령들(즉, DEL o[1] 및 DEL o[2])이 노옵(NO-OP) 처리된다. 여기에서, DEL o[1:2]이라는 다시 실행 명령은 1 내지 2번째 위치(o[1:2])의 객체를 삭제하라는 편집 명령이고, INS o[1] ‘12’라는 다시 실행 명령은 1번째 위치(o[1])에 “12”를 삽입하라는 편집 명령이다. 한편, INS o[1] ‘12’라는 다시 실행 명령이 실행되면, 마크업 언어 기반 문서는 1번째 위치에 “1”이 삽입되고, 2번째 위치에 “2”가 삽입된 상태가 된다.Referring to Table 2, an edit command to delete objects in the first and second positions o [1: 2] causes the
이하에서는 편집 명령에 따른 본 발명의 일실시예에 따른 편집 신뢰성 보장 장치(200)의 특징적인 동작 방법을 상세히 설명하되, 객체에 밑줄을 그으라는 편집 명령(이하에서는, 밑줄 명령)이 편집 신뢰성 보장 장치(200)에서 지원하지 않는 편집 명령(즉, 미지원 편집 명령)인 것으로 가정한다.Hereinafter, a specific operation method of the
운영 변환부(250)는 제2 편집 명령 수신부(240)로부터 새롭게 수신된 편집 명령의 지원 여부를 판단함으로써 상기 새롭게 수신된 편집 명령의 지원 여부에 기초하여 상기 되돌리기 버퍼(270) 및 상기 다시 실행 버퍼(260)에 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령에 대한 변환 동작을 수행한다. 여기에서, 변환 동작은 새롭게 입력된 편집 명령에 의해 기존에 입력된 편집 명령의 대상 객체의 위치가 변경되면, 상기 다시 실행 버퍼(260) 및 상기 되돌리기 버퍼(270)에 각각 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령 중 상기 마크업 언어 기반 문서상에서의 위치가 변경되는 객체에 대한 되돌리기 명령과 다시 실행 명령에 포함된 위치 정보를 상기 새로운 편집 명령에 의해 변경되는 위치에 상응하도록 변경하는 동작이다.The
구체적으로, 운영 변환부(250)는 상기 제2 편집 명령 수신부(240)로부터의 새로운 편집 명령이 지원 편집 명령인 경우, 상기 지원 편집 명령에 의해 상기 제1 편집 명령 수신부(230) 또는 상기 제2 편집 명령 수신부(240)로부터 기존에 입력된 편집 명령의 대상 객체의 위치가 변경되면, 상기 되돌리기 버퍼(270) 및 상기 다시 실행 버퍼(260)에 각각 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령 중 상기 위치가 변경된 객체에 대한 되돌리기 명령과 다시 실행 명령에 포함된 위치 정보를 상기 새로운 편집 명령에 의해 변경된 위치에 상응하도록 변경한다. 여기에서, 지원 편집 명령은 마크업 언어 기반 문서에 대한 편집 동작을 수행하고, 그 결과를 디스플레이할 수 있는 명령을 지칭한다. 한편, 미지원 편집 명령은 마크업 언어 기반 문서에 대한 편집 동작을 수행할 수 없거나, 마크업 언어 기반 문서에 대한 편집 동작을 수행하더라도 그 결과를 디스플레이할 수 없는 명령을 지칭한다. 아울러, 마크업 언어 기반 문서에 대한 편집 동작을 수행할 수 없는 미지원 편집 명령은 다시 실행 명령 또는 되돌리기 명령에 대한 운영 변환 동작이 정의되지 않아 다시 실행 동작 또는 되돌리기 동작을 수행할 수 없는(또는, 다시 실행 동작 또는 되돌리기 동작을 수행하는 경우에 편집 오류가 발생하는) 편집 명령을 포함한다.Specifically, when the new edit command from the second edit
예를 들어, 표 2와 같은 상황에서, 제2 편집 명령 수신부(240)로부터 마크업 언어 기반 문서(302)의 2번째 위치에 “a”를 삽입하라는 편집 명령이 입력되면, 운영 변환부(250)는 “a”를 삽입하라는 편집 명령이 지원 편집 명령이므로, 마크업 언어 기반 문서(302)의 “34”에서 “a”를 2번째 위치에 삽입하여 “3a4”로 편집한 후 객체의 위치가 변경된 “4”에 대한 편집 명령에 대응하는 되돌리기 명령과 다시 실행 명령에 포함된 위치 정보(즉, o[2])를 상기 새로운 편집 명령에 의해 변경되는 위치(즉, 3번째 위치)에 상응하도록 변경한다. 이에 따라, 다시 실행 버퍼(260) 및 되돌리기 버퍼(270)는 하기 표 3과 같이 갱신될 수 있다.For example, if an edit command to insert "a" at the second position of the markup language-based
표 3을 참조하면, 2번째 위치(o[2])의 “a”를 삽입하라는 편집 명령에 의해 객체의 위치가 변경된 “4”에 대한 편집 명령에 대응하는 되돌리기 명령과 다시 실행 명령이 INS o[2] ‘4’ 및 DEL o[2]에서 INS o[3] ‘4’ 및 DEL o[3]로 변경된다. 도 3에 예시된 바와 같이, 마크업 언어 기반 문서(303)는 “34”에서 “3a4”로 편집된다.Referring to Table 3, the rewrite command corresponding to the edit command for " 4 " in which the position of the object is changed by the edit command to insert "a" of the second position o [2] 2] is changed from '4' and DEL o [2] to INS o [3] '4' and DEL o [3]. As illustrated in FIG. 3, the markup language based
또한, 운영 변환부(250)는 상기 제2 편집 명령 수신부(240)로부터의 새로운 편집 명령이 미지원 편집 명령인 경우, 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼를 클리어(Clear)한다.If the new editing command from the second editing
예를 들어, 표 3과 같은 상황에서, 제2 편집 명령 수신부(240)로부터 마크업 언어 기반 문서(302)의 1번째 내지 3번째 위치의 객체에 밑줄을 그으라는 편집 명령이 입력되면, 앞에서 가정한 바와 같이 객체에 밑줄을 그으라는 편집 명령은 미지원 편집 명령이므로, 운영 변환부(250)는 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼를 클리어(Clear)한다. 이에 따라, 다시 실행 버퍼(260) 및 되돌리기 버퍼(270)는 하기 표 4와 같이 갱신될 수 있다. 이때, 도 3에 도시된 바와 같이, 1번째 내지 3번째 위치의 객체에 밑줄을 그으라는 편집 명령에 의해 마크업 언어 기반 문서(304)는 “3a4”에서 “3a4”로 편집되지만, 사용자의 권한에 따라, 편집 신뢰성 보장 장치(200)에 구비된 디스플레이 장치에는 “3a4”로 디스플레이될 수도 있다.For example, in the situation shown in Table 3, if an editing command to underline an object at the first to third positions of the markup language-based
표 4를 참조하면, 다시 실행 버퍼(260) 및 되돌리기 버퍼(270)가 클리어됨으로써, 이전에 저장되어 있던 5개씩의 되돌리기 명령과 다시 실행 명령이 삭제된다.Referring to Table 4, the
상술한 바와 같은 본 발명의 일실시예에 따른 편집 신뢰성 보장 장치(200)는 제2 편집 명령 수신부(240)로부터 새롭게 수신된 편집 명령의 지원 여부에 기초하여 되돌리기 버퍼(270) 및 다시 실행 버퍼(260)에 저장되어 있는 되돌리기 명령 및 다시 실행 명령에 대한 변환 동작을 수행함으로써, 다른 사용자로부터의 편집 명령이 미지원 편집 명령인 경우에도 사용자가 의도한대로 ‘되돌리기’ 기능 및 ‘다시 실행’ 기능 등이 실행되는 편집 신뢰성을 보장하고자 한다.The editing
도 4는 본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법을 도시한 순서도이다.4 is a flowchart illustrating an operation method of an apparatus for assuring editing reliability of a web document according to an exemplary embodiment of the present invention.
도 4를 참조하면, 단계(S410)에서는 전자 문서 저장 서버로부터 원본 전자 문서에 대한 마크업 언어 기반 문서를 수신할 수 있다.Referring to FIG. 4, in step S410, a markup language-based document for the original electronic document can be received from the electronic document storage server.
단계(S420)에서는 제1 편집 명령 수신부가 입력 장치로부터 사용자가 입력한 상기 마크업 언어 기반 문서에 대한 편집 명령을 수신할 수 있다.In step S420, the first edit command receiving unit may receive an edit command for the markup language-based document input by the user from the input device.
단계(S430)에서는 제2 편집 명령 수신부가 상기 전자 문서 저장 서버로부터 상기 마크업 언어 기반 문서에 대한 편집 명령을 수신할 수 있다.In step S430, the second edit command receiving unit may receive an edit command for the markup language-based document from the electronic document storage server.
단계(S440)에서는 상기 제1 편집 명령 수신부가 수신한 상기 편집 명령에 대응하는 되돌리기 명령을 순차적으로 저장하고 있는 되돌리기 버퍼를 유지할 수 있다.In step S440, the first edit command receiver may hold a revertive buffer that sequentially stores a revert command corresponding to the edit command received by the first edit command receiver.
단계(S450)에서는 상기 제1 편집 명령 수신부가 수신한 상기 편집 명령에 대응하는 다시 실행 명령을 순차적으로 저장하고 있는 다시 실행 버퍼를 유지할 수 있다.In step S450, the first edit command receiving unit may hold a re-execution buffer that sequentially stores the re-execution command corresponding to the edit command received.
단계(S460)에서는 상기 제2 편집 명령 수신부가 새롭게 수신한 편집 명령의 지원 여부에 기초하여 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령에 대한 변환 동작을 수행할 수 있다.In step S460, the second edit command receiving unit performs a conversion operation on the revertive command and the re-executed command stored in the revert buffer and the re-execution buffer based on whether or not the newly received edit command is supported .
단계(S460)에서는 상기 제2 편집 명령 수신부가 새롭게 수신한 편집 명령이 미지원 편집 명령인 경우, 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼를 클리어(Clear)할 수 있다.In step S460, if the edit command newly received by the second edit command receiver is a non-edit command, the revert buffer and the re-execute buffer may be cleared.
단계(S460)에서는 상기 제2 편집 명령 수신부가 새롭게 수신한 편집 명령이 지원 편집 명령인 경우, 상기 지원 편집 명령에 의해 상기 제1 편집 명령 수신부 또는 상기 제2 편집 명령 수신부가 기존에 수신한 편집 명령의 대상 객체의 위치가 변경되면, 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 각각 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령 중 상기 위치가 변경된 객체에 대한 되돌리기 명령과 다시 실행 명령에 포함된 위치 정보를 상기 새로운 편집 명령에 의해 변경된 위치에 상응하도록 변경할 수 있다.If it is determined in step S460 that the edit command newly received by the second edit command receiving unit is a support edit command, the first edit command receiving unit or the second edit command receiving unit, When the position of the target object of the rewrite buffer and the re-execution buffer is changed, the rewriting instruction stored in the rewriting buffer and the rewriting buffer and the position information included in the rewrite instruction It can be changed to correspond to the changed position by the new edit command.
본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법은 상기 제1 편집 명령 수신부가 새롭게 수신한 편집 명령에 의해 상기 제1 편집 명령 수신부 또는 상기 제2 편집 명령 수신부가 기존에 수신한 편집 명령의 대상 객체의 위치가 변경되면, 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 각각 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령 중 상기 위치가 변경된 객체에 대한 되돌리기 명령과 다시 실행 명령에 포함된 위치 정보를 상기 새로운 편집 명령에 의해 변경된 위치에 상응하도록 변경하는 단계를 더 수행할 수 있다.The operation method of the apparatus for assuring the editing reliability of the web document according to the embodiment of the present invention is characterized in that the first edit command receiving unit or the second edit command receiving unit A reversion instruction and a re-execution instruction for an object whose position is changed among the re-execution command and the re-execution command stored in the reverting buffer and the re-execution buffer, respectively, when the position of the target object of the previously received edit command is changed, And changing the position information included in the new editing command so as to correspond to the position changed by the new editing command.
본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법은 상기 제1 편집 명령 수신부가 새롭게 수신한 편집 명령에 상응하는 되돌리기 명령 및 다시 실행 명령을 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 각각 저장하는 단계를 더 수행할 수 있다.The method of operating an apparatus for assuring editing reliability of a web document according to an exemplary embodiment of the present invention is characterized in that the first editing command receiving unit transmits a revertive command and a re-execution command corresponding to the newly received editing command to the reverting buffer and the re- And storing them in an execution buffer, respectively.
이상, 도 4를 참조하여 본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법은 도 1 내지 도 3을 이용하여 설명한 본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.The operation of the apparatus for assuring the editing reliability of the web document according to the embodiment of the present invention has been described above with reference to FIG. Here, the operation method of the apparatus for assuring the editing reliability of the web document according to the embodiment of the present invention is a method for assuring the editing reliability of the web document according to the embodiment of the present invention described with reference to FIG. 1 to FIG. And therefore, a detailed description thereof will be omitted.
본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.The operation method of the apparatus for assuring the editing reliability of a web document according to an exemplary embodiment of the present invention can be implemented by a computer program stored in a storage medium for execution through a combination with a computer.
또한, 본 발명의 일실시예에 따른 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. In addition, the method of operating the apparatus for assuring the editing reliability of a web document according to an exemplary embodiment of the present invention may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described with reference to particular embodiments, such as specific elements, and specific embodiments and drawings. However, it should be understood that the present invention is not limited to the above- And various modifications and changes may be made thereto by those skilled in the art to which the present invention pertains.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .
Claims (12)
입력 장치로부터 사용자가 입력한 상기 마크업 언어 기반 문서에 대한 편집 명령을 수신하는 제1 편집 명령 수신부;
상기 전자 문서 저장 서버로부터 상기 마크업 언어 기반 문서에 대한 편집 명령을 수신하는 제2 편집 명령 수신부;
상기 제1 편집 명령 수신부가 수신한 상기 편집 명령에 대응하는 되돌리기 명령을 순차적으로 저장하고 있는 되돌리기 버퍼;
상기 제1 편집 명령 수신부가 수신한 상기 편집 명령에 대응하는 다시 실행 명령을 순차적으로 저장하고 있는 다시 실행 버퍼; 및
상기 제2 편집 명령 수신부가 새롭게 수신한 편집 명령의 지원 여부에 기초하여 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령에 대한 변환 동작을 수행하는 운영 변환부
를 포함하는 웹 문서에 대한 편집 신뢰성을 보장하는 장치.A markup language-based document receiving unit for receiving a markup language-based document for an original electronic document from an electronic document storage server;
A first editing command receiving unit for receiving an editing command for the markup language-based document input by the user from the input device;
A second edit command receiving unit for receiving an edit command for the markup language based document from the electronic document storage server;
A reverting buffer sequentially storing a reverting command corresponding to the editing command received by the first editing command receiver;
A re-execution buffer for sequentially storing re-execution commands corresponding to the editing command received by the first editing command receiver; And
An operation conversion unit for performing a conversion operation on the revertive command and the re-execution command stored in the revertive buffer and the re-execution buffer based on whether the second edit command reception unit supports the newly received edit command,
Wherein the web page includes a plurality of web pages.
상기 운영 변환부는 상기 제2 편집 명령 수신부가 새롭게 수신한 편집 명령이 미지원 편집 명령인 경우, 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼를 클리어(Clear)하는
웹 문서에 대한 편집 신뢰성을 보장하는 장치.The method according to claim 1,
The operation conversion unit clears the revertive buffer and the re-execution buffer when the edit command newly received by the second edit command receiver is a non-supported edit command
A device that assures editing reliability for web documents.
상기 운영 변환부는 상기 제2 편집 명령 수신부가 새롭게 수신한 편집 명령이 지원 편집 명령인 경우, 상기 지원 편집 명령에 의해 상기 제1 편집 명령 수신부 또는 상기 제2 편집 명령 수신부가 기존에 수신한 편집 명령의 대상 객체의 위치가 변경되면, 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 각각 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령 중 상기 위치가 변경된 객체에 대한 되돌리기 명령과 다시 실행 명령에 포함된 위치 정보를 상기 새로운 편집 명령에 의해 변경된 위치에 상응하도록 변경하는
웹 문서에 대한 편집 신뢰성을 보장하는 장치.3. The method of claim 2,
Wherein if the edit command newly received by the second edit command receiving unit is a support edit command, the operation conversion unit converts the edit instruction received by the first edit instruction receiving unit or the second edit instruction receiving unit And a return instruction for the object whose position has been changed and the position information included in the execution command are stored in the return buffer and the execution buffer, respectively, when the position of the target object is changed, Change to correspond to the position changed by the new edit command
A device that assures editing reliability for web documents.
상기 운영 변환부는 상기 제1 편집 명령 수신부가 새롭게 수신한 편집 명령에 의해 상기 제1 편집 명령 수신부 또는 상기 제2 편집 명령 수신부가 기존에 수신한 편집 명령의 대상 객체의 위치가 변경되면, 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 각각 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령 중 상기 위치가 변경된 객체에 대한 되돌리기 명령과 다시 실행 명령에 포함된 위치 정보를 상기 새로운 편집 명령에 의해 변경된 위치에 상응하도록 변경하는
웹 문서에 대한 편집 신뢰성을 보장하는 장치.The method of claim 3,
When the position of the target object of the editing command received by the first editing command receiving unit or the second editing command receiving unit is changed by the editing command newly received by the first editing command receiving unit, And a rewriting instruction for rewriting the object in the rewriting instruction and the rewriting instruction stored in the rewriting buffer and the position information included in the rewriting instruction in the rewriting instruction, doing
A device that assures editing reliability for web documents.
상기 운영 변환부는 상기 제1 편집 명령 수신부가 새롭게 수신한 편집 명령에 상응하는 되돌리기 명령 및 다시 실행 명령을 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 각각 저장하는
웹 문서에 대한 편집 신뢰성을 보장하는 장치.5. The method of claim 4,
The operation conversion unit stores the revert instruction and the re-execution instruction corresponding to the edit instruction newly received by the first edit instruction receiver in the revertive buffer and the re-execution buffer, respectively
A device that assures editing reliability for web documents.
제1 편집 명령 수신부가 입력 장치로부터 사용자가 입력한 상기 마크업 언어 기반 문서에 대한 편집 명령을 수신하는 단계;
제2 편집 명령 수신부가 상기 전자 문서 저장 서버로부터 상기 마크업 언어 기반 문서에 대한 편집 명령을 수신하는 단계;
상기 제1 편집 명령 수신부가 수신한 상기 편집 명령에 대응하는 되돌리기 명령을 순차적으로 저장하고 있는 되돌리기 버퍼를 유지하는 단계;
상기 제1 편집 명령 수신부가 수신한 상기 편집 명령에 대응하는 다시 실행 명령을 순차적으로 저장하고 있는 다시 실행 버퍼를 유지하는 단계; 및
상기 제2 편집 명령 수신부가 새롭게 수신한 편집 명령의 지원 여부에 기초하여 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령에 대한 변환 동작을 수행하는 단계
를 포함하는 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법.Receiving a markup language based document for an original electronic document from an electronic document storage server;
Receiving an edit command for the markup language-based document input by a user from an input device;
Receiving a edit command for the markup language-based document from the electronic document storage server;
Maintaining a revert buffer that sequentially stores a revert instruction corresponding to the edit command received by the first edit command receiver;
Holding a re-execution buffer that sequentially stores re-execution commands corresponding to the editing command received by the first editing command receiver; And
Performing a conversion operation on the revertive command and the re-execution command stored in the revertive buffer and the re-execution buffer based on whether the second edit command reception unit supports the newly received edit command
The method comprising the steps of: (a) receiving a web document from a user;
상기 변환 동작을 수행하는 단계는 상기 제2 편집 명령 수신부가 새롭게 수신한 편집 명령이 미지원 편집 명령인 경우, 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼를 클리어(Clear)하는
웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법.The method according to claim 6,
Wherein the step of performing the converting operation includes a step of clearing the revert buffer and the re-execution buffer when the edit command newly received by the second edit command receiver is a non-
A method of operating a device that assures editing reliability for a web document.
상기 변환 동작을 수행하는 단계는 상기 제2 편집 명령 수신부가 새롭게 수신한 편집 명령이 지원 편집 명령인 경우, 상기 지원 편집 명령에 의해 상기 제1 편집 명령 수신부 또는 상기 제2 편집 명령 수신부가 기존에 수신한 편집 명령의 대상 객체의 위치가 변경되면, 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 각각 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령 중 상기 위치가 변경된 객체에 대한 되돌리기 명령과 다시 실행 명령에 포함된 위치 정보를 상기 새로운 편집 명령에 의해 변경된 위치에 상응하도록 변경하는
웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법.8. The method of claim 7,
Wherein the step of performing the converting operation includes the steps of: when the edit command newly received by the second edit command receiving unit is a support edit command, the first edit instruction receiving unit or the second edit instruction receiving unit And a rewriting instruction for rewriting the rewriting instruction stored in the rewriting buffer and the rewriting buffer if the position of the target object of the editing command is changed, The position information is changed so as to correspond to the position changed by the new edit command
A method of operating a device that assures editing reliability for a web document.
상기 제1 편집 명령 수신부가 새롭게 수신한 편집 명령에 의해 상기 제1 편집 명령 수신부 또는 상기 제2 편집 명령 수신부가 기존에 수신한 편집 명령의 대상 객체의 위치가 변경되면, 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 각각 저장되어 있는 상기 되돌리기 명령 및 상기 다시 실행 명령 중 상기 위치가 변경된 객체에 대한 되돌리기 명령과 다시 실행 명령에 포함된 위치 정보를 상기 새로운 편집 명령에 의해 변경된 위치에 상응하도록 변경하는 단계
를 더 포함하는 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법.9. The method of claim 8,
When the position of the target object of the editing command received by the first editing command receiving unit or the second editing command receiving unit is changed by the editing command newly received by the first editing command receiving unit, Changing the position information included in the rewrite command and the rewrite command for the object whose position is changed among the rewrite command and the rewrite command respectively stored in the buffer so as to correspond to the position changed by the new edit command
Further comprising the steps of: (a) providing a web document to the web server;
상기 제1 편집 명령 수신부가 새롭게 수신한 편집 명령에 상응하는 되돌리기 명령 및 다시 실행 명령을 상기 되돌리기 버퍼 및 상기 다시 실행 버퍼에 각각 저장하는 단계
를 더 포함하는 웹 문서에 대한 편집 신뢰성을 보장하는 장치의 동작 방법.10. The method of claim 9,
Storing a revert instruction and a re-execute instruction corresponding to an edit instruction newly received by the first edit instruction receiver in the revertive buffer and the re-execution buffer, respectively
Further comprising the steps of: (a) providing a web document to the web server;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170122254A KR101999580B1 (en) | 2017-09-22 | 2017-09-22 | Apparatus for ensuring editing reliability to unsupported editing command from remote place and operation method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170122254A KR101999580B1 (en) | 2017-09-22 | 2017-09-22 | Apparatus for ensuring editing reliability to unsupported editing command from remote place and operation method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190033733A true KR20190033733A (en) | 2019-04-01 |
KR101999580B1 KR101999580B1 (en) | 2019-10-01 |
Family
ID=66104499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170122254A KR101999580B1 (en) | 2017-09-22 | 2017-09-22 | Apparatus for ensuring editing reliability to unsupported editing command from remote place and operation method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101999580B1 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6185591B1 (en) * | 1997-07-29 | 2001-02-06 | International Business Machines Corp. | Text edit system with enhanced undo user interface |
WO2001033362A1 (en) * | 1999-11-05 | 2001-05-10 | Attivo Software, Inc. | Action communication and synchronization for documents accessed by multiple users |
KR20130023736A (en) * | 2011-08-29 | 2013-03-08 | (주)이스트소프트 | The system of cooperative editing of mind-map and the method thereof |
JP2013527505A (en) * | 2009-12-03 | 2013-06-27 | マイクロソフト コーポレーション | Remote batch editing of formatted text with HTML editor |
KR101774267B1 (en) * | 2016-06-27 | 2017-09-04 | 주식회사 한글과컴퓨터 | Collaborative support apparatus for collaborative editing of electronic documents and operating method thereof |
-
2017
- 2017-09-22 KR KR1020170122254A patent/KR101999580B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6185591B1 (en) * | 1997-07-29 | 2001-02-06 | International Business Machines Corp. | Text edit system with enhanced undo user interface |
WO2001033362A1 (en) * | 1999-11-05 | 2001-05-10 | Attivo Software, Inc. | Action communication and synchronization for documents accessed by multiple users |
JP2013527505A (en) * | 2009-12-03 | 2013-06-27 | マイクロソフト コーポレーション | Remote batch editing of formatted text with HTML editor |
KR20130023736A (en) * | 2011-08-29 | 2013-03-08 | (주)이스트소프트 | The system of cooperative editing of mind-map and the method thereof |
KR101774267B1 (en) * | 2016-06-27 | 2017-09-04 | 주식회사 한글과컴퓨터 | Collaborative support apparatus for collaborative editing of electronic documents and operating method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR101999580B1 (en) | 2019-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3686748B1 (en) | Synchronizing content blocks between multiple electronic documents | |
US11126671B2 (en) | Serializing plug-in data in a web page | |
KR101774257B1 (en) | Document editing apparatus for maintaining style of object and operating method thereof | |
US8015482B2 (en) | Dynamic anchoring of annotations to editable content | |
US8074167B2 (en) | Cross domain presence of web user interface and logic | |
KR101826625B1 (en) | Document collaborative support apparatus supporting simultaneous editing of document and operating method thereof | |
US20110138268A1 (en) | Remote batch editing of formatted text via an html editor | |
US20150066977A1 (en) | Method and system for managing digital resources | |
KR101754258B1 (en) | Apparatus and method for verifying simultaneous edit configuration for markup language based document | |
KR101774267B1 (en) | Collaborative support apparatus for collaborative editing of electronic documents and operating method thereof | |
KR101746477B1 (en) | Document collaboration apparatus for supporting simultaneous style editing of objects and operating method thereof | |
KR102013620B1 (en) | Web based document editing server for changing template of web based document and operating method thereof | |
KR101797573B1 (en) | Web based spreadsheets service providing apparatus and method | |
WO2005098660A9 (en) | Document processing device and document processing method | |
JPWO2005098658A1 (en) | Document processing apparatus and document processing method | |
KR102087280B1 (en) | Server for editing electronic document based on message including edit command and operating method thereof | |
KR101965722B1 (en) | Apparatus for ensuring editing reliability in respect of web document according to whether to edit single or edit simultaneously and operation method thereof | |
KR101781844B1 (en) | Apparatus for synchronizing combination letter of markup language based document and operating method thereof | |
KR101999580B1 (en) | Apparatus for ensuring editing reliability to unsupported editing command from remote place and operation method thereof | |
KR101965718B1 (en) | Apparatus for ensuring editing reliability in respect of web document and operation method thereof | |
KR101999584B1 (en) | Apparatus for ensuring editing reliability to unsupported editing command from user and operation method thereof | |
US9135225B2 (en) | Data description injection | |
KR102000542B1 (en) | Web based document editing apparatus for editing dom objects based on editing command of changing page and operating method thereof | |
US10261980B2 (en) | Method and system for persisting add-in data in documents | |
US9002810B1 (en) | Method and system for managing versioned structured documents in a database |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |