MX2007013358A - Metodos, sistemas y medios legibles por computadora para sincronizar documentos modificables con clientes multiples. - Google Patents

Metodos, sistemas y medios legibles por computadora para sincronizar documentos modificables con clientes multiples.

Info

Publication number
MX2007013358A
MX2007013358A MX2007013358A MX2007013358A MX2007013358A MX 2007013358 A MX2007013358 A MX 2007013358A MX 2007013358 A MX2007013358 A MX 2007013358A MX 2007013358 A MX2007013358 A MX 2007013358A MX 2007013358 A MX2007013358 A MX 2007013358A
Authority
MX
Mexico
Prior art keywords
subsection
clients
subsections
original document
instructions
Prior art date
Application number
MX2007013358A
Other languages
English (en)
Inventor
Mathias Razvan
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of MX2007013358A publication Critical patent/MX2007013358A/es

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • G06F16/1794Details of file format conversion
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Abstract

Se proporcionan metodos, sistemas, y medios legibles por computadora para sincronizar y compartir documentos modificables relativamente grandes con clientes multiples que utilizan una variedad de dispositivos. El metodo recibe instrucciones de uno o mas clientes con respecto a un formato preferible para uso con un dispositivo de cliente respectivo. El metodo ademas define subsecciones del documento compartido basandose en intervalos semanticos dentro del documento original y genera una ID para cada subseccion. Las IDs de subseccion se envian a los clientes que pueden revisar las IDs y la solicitud para recibir una o mas subsecciones en su dispositivo respectivo. Las subsecciones solicitadas se trascodifican para usarse en los dispositivos de cliente respectivos y se envian al cliente de acuerdo con sus solicitudes. El cliente despues puede modificar la una o mas subsecciones y estas modificaciones se aplican a las subsecciones correspondientes en otros dispositivos de cliente.

Description

ETOD S, SISTEMAS, Y MEDIOS LEGIBLES POR COMPUTADO! PARA SINCRONIZAR DOCUMENTOS MODIFICABLES COM CLIENTES MÚLTIPLES CAMPO TÉCNICO Las modalidades de la presente invención se refieren al campo de sincronizar y actualizar documentos accesibles y modificables por múltiples, clientes en una variedad de dispositivos a través de una red. En ¡particular, las modalidades de esta invención se refieren a i métodos! medios legibles por computadora, y estructuras de datos capaces! de sincronizar documentos relativamente grandes entre múltiples clientes en una base a demanda, en fragmentos, con lo cual sólo porciones de documentos de interés para cada cliente particular se proporcionan para acelerar comunicación y minimizar requerimientos de almacenamiento de archivo.
ANTECEDENTES DE LA INVENCIÓN Mujchas Organizaciones hacen uso de documentos | relativar ente grandes, compartidos almacenados en varios formatos, i tal como HTML (Lenguaje de Marcación de Hipertexto), Microsoft Word, PDF (Formato de Documento Portátil), y texto, entre otros. Por ejemplo,! tales documentos grandes pueden incluir documentos legales ¡ compartidos mantenidos por firmas de abogados o documentos de ingeniería compartidos mantenidos por firmas de ingenieros o corporaciones. Tres importantes cualidades de tales documentos desalientan su uso en dispositivos convencionales: (1) i los documentos pueden hacerse un poco grandes, (2) los documentos se modifican frecuentemente, y (3) los formatos pueden no estar en un formjato que puede leerse y presentarse por el dispositivo I particular (que incluye dispositivos móviles) utilizados por cada cliente. ¡En particular, muchos dispositivos móviles hoy en día se quedan atrás de dispositivos de escritorio en al menos tres áreas: i conectivjdad, almacenamiento, y funcionalidad. Por ejemplo, la comunicación GPRS (Servicio de Radio de Paquete General) exhibe una bajá banda ancha, conexión de latencia alta. Además, un dispositivo móvil, convencional, de extremo ¡nferior puede tener I aproximadamente 32 MB de memoria, lo que limita severamente el tamaño de documentos que pueden almacenarse. También el código o progralmas para acceder y ver documentos en muchos dispositivos son inexistentes. Además, algunos formatos pueden presentarse mejor que otros debido a interfase de usuario que clasifica asuntos. Además,! algunos formatos de documentos pueden utilizar menos memoria! para expansión que otros. Todos estos asuntos cooperan para desalentar el uso extendido de documentos relativamente grandes ; colaborativamente en diferentes dispositivos, particulalrmente móviles. Incluso otro asunto con la descarga, observación, edición, y carga dé documentos relativamente grandes en dispositivos es el tiempo rfquerido para descargar tal documento. Como un ejemplo, si un documento relativamente grande está listo para descargarse en un dispolsitivo y sólo se requiere una pequeña modificación en el documento, descargar el documento completo puede desperdiciar recursos! escasos de banda ancha, memoria, tiempo, y dinero (por ejemplo,' en donde una red se carga por la cantidad de datos transferidos). Los sistemas convencionales intentan dirigir estos problemas con sisteimas y métodos de sincronización de archivo. Las soluciones de sincronización de archivo convencionales requieren que se duplique el documento completo a un dispositivo. Aunque algunas aplicaciones a base de PC van un paso mas allá de trascodificar el documenito en un formato que el dispositivo puede leer, los problemas con ambas de estas soluciones convencionales aún son numerosas. Por ejemplo, la sincronización al mayoreo de documentos completcjs requiere que todos los dispositivos sean capaces de almacenar los contenidos completos del documento en cantidades limitadas! de memoria, como se discutió anteriormente. Además, modifical una pequeña porción del documento causará que el documehto completo se descargue al dispositivo. Debido a las i características de banda ancha inferior y latencia superior convencionales de redes inalámbricas (por ejemplo. GPRS) y la estructura de costo convencional de pago por byte de datos transferidos, se vuelve costoso (tanto monetaria como temporaíjmente) descargar un documento completo a un dispositivo.
En otro ejemplo convencional, las paginas individuales de un documento largo pueden descargarse una por una para reducir la cant?dad¡de datos transferida en un momento Sin embargo, sólo es aplicable para archivos de corriente (por ejemplo, archivos html) y no se presta demasiado a edición por el cliente que recibe las páginas, frecuentemente debido a las diferencias entre dispositivos y programas de cliente Ademas, este procedimiento sólo permite descargar información, y no proporciona edición y carga de modificaciones de cliente Otro sistema convencional sincroniza datos fuera de línea, para evitar los problemas asociados con una conexión no confiable Sin embargo, esta solución, falla al dirigir los asuntos de almacenamiento inadecuado y tiempo de transferencia, que incluso pueden ser un problema con sincronización fuera de línea debido a los grandes tamaños de documento Desafortunadamente, estos asuntos no se atienden por cualquier sistema convencional Por consiguiente, es deseable una solución! que mejora la sincronización de grandes documentos entre múltiples; clientes BREVE DESCRIPCIÓN DE LA INVENCIÓN Por consiguiente, un método (o un medio legible por computadora o una estructura de datos) para sincronizar documentos relativamente grandes entre múltiples clientes en una base a demanda, por mayoreo con ello sólo porciones de documentos de interés s¡e envían a cada cliente particular si se desea dirigir una o más de !estas y otras desventajas. Ventajosamente, al menos una modalidajd de la presente invención individualmente trascodifica cada porción del documento en un formato entendido por un dispositivo móvil particular. Además, más que descargar una subsección modificada completa cada vez que se hace un cambio, al menos una modalidad de la invención descarga instrucciones para modificar sólo aquellas; porciones del documento al cual el cliente se suscribe.
Generalmente, los aspectos de la invención permiten sincronización de documentos con múltiples cliente al recibir instrucciones de uno o más chelntes con respecto a formato de datos preferido, que define subseccilones de un documento original, que genera una ID de subseccüón que identifica cada una de las subsecciones, enviar una lista de las IDs de subsección a uno o más clientes, recibir una solicitud! de al menos uno de uno o más clientes para suscribirse a una o rrfiás de las subsecciones, trascodificar, en respuesta a la solicitud!, una o más de las subsecciones en el formato preferido de cada cliente, y enviar las subsecciones trascodificadas, suscritas de acuerdo1 con solicitudes de suscripción de cliente respectivas, por ejemplo, modalidades de la invención pueden adecuarse para colaboración por un grupo de clientes, cada uno que utiliza dispositivos separados, en un documento compartido, grande. Enj un aspecto de la invención, se describe un método para sincronizar documentos con múltiples clientes. El método comprende recibir instrucciones de uno o más clientes con respecto a un formato con el ciµal cada uno de uno o mas clientes desea recibir datos El método ademas define subsecciones de un documento original de interés potencial a uno o más de los clientes Las subsecciones corresponden a intervalos semánticos dentro del documento original El método ademas comprende generar una ID de subsección que identifica cada una de las subsecciones y que envía una lista de las IDs de stubseccion a uno o mas clientes El método además recibe una solicitud de al menos uno de uno o más clientes para suscribirse a una o más de las subsecciones del documento original al cual uno o más clientes desean suscribirse en el formato en el cual los respectivos uno o mas clientes desean recibir datos El método también ¡envía las subsecciones suscritas, trascodificadas a uno o más clientes de acuerdo con sus solicitudes de suscripción respecti jas En otro aspecto de la invención, un sistema para sincronizar documentos con múltiples clientes adaptado para conexión con el sistema a través de una red comprende un servidor y una base de datos Ejl sistema ademas se adapta para conexión con la red y se I adapta para recibir instrucciones de uno o más de los clientes con respecto! al formato en el cual cada uno de uno o más clientes desea ! recibir datos del servidor a través de la red El sistema además comprende una base de datos adaptada para conexión con el servidor para almacenar un documento original de interés potencial a uno o rr)as de los clientes El servidor ademas se configura para i definir siubsecciones del documento original almacenado en la base de datos. Las subsecciones definidas corresponden a intervalos semánticos dentro del documento original. El sistema además genera una ID de subsección que identifica cada una de las subsecciones y envía una lista de las IDs a cada uno de uno o más clientes a través de la red.. El sistema además recibe una solicitud de al menos uno de uno o más clientes para suscribirse a una o más de las subsecciones a través ¡de la red. El sistema también trascodifica, en respuesta a la solicitud i recibida, una o más de las subsecciones del documento original al cual uno o más clientes desean suscribirse y envía las subsecci?nes suscritas trascodificadas a uno o más clientes de acuerdo con sus solicitudes de suscripción respectivas. Incluso en otro aspecto de la invención, se describe un medio legible por computadora con instrucciones ejecutables por computadora para recibir, definir, generar, enviar, recibir, trascodiflcar, y enviar generalmente se mencionan anteriormente con respecto al método y sistema de la presente invención Alternativamente, la invención comprende varios otros métodos, medios legibles por computadora, sistemas, y estructuras de datos. Otras características en parte serán evidentes y en parte se señalarán aquí más adelante.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La Figura 1 es un diagrama de un sistema de la presente invención.
La Figura 2 es un diagrama de un documento con múltiples subsecciones de acuerdo con la presente invención; Las' Figuras 3-3D son cuadros de flujo de métodos de la presente; invención; La Figura 4 es un diagrama de un medio legible por computadora (CRM) de la presente invención; y i La ¡Figura 5 es un diagrama de bloque que ilustra un ejemplo de un ambiente de sistema de cómputo adecuado en el cual puede implemeijitarse la invención. Los caracteres de referencia correspondientes indican partes correspoindientes a través de los dibujos.
DESCRIPCIÓN DETALLADA DE LA INVENCIÓN Haciendo referencia ahora a la Figura 1, se muestra un diagrama que ilustra un sistema, generalmente indicado 21, de la presente; invención para sincronizar documentos con múltiples clientes 25 adaptado para conexión con el sistema a través de una red 29. l os detalles de este sistema 21 se discuten en detalle aquí, y se denominarán a través de la siguiente discusión. El sistema 21 generalmente comprende un servidor 33 y una base de datos 37. El servidor!33 en la modalidad ilustrada se adapta para conexión con la red 29 piara enviar instrucciones en 41 a los clientes 25 a través de la red y para recibir instrucciones en 45 de uno o más clientes a través dé la red. La base de datos 37 se adapta para conexión con el servidor 33 para almacenar un documento original de interés potencial a uno o mas clientes 25 Además, el servidor 33 puede enviar instrucciones en 49 a la base de datos 37 y recibir instrucciones en 51 de la base de datos Cada uno de los clientes 25 se configura para comunicarse directamente en 55 con la red 29, que incluye enviar comunicaciones a la red y recibir comunicaciones de I la red El servidor 33 y la base de datos 37 del sistema 21 también se configuran para proporcionar la funcionalidad discutida posteriorjmente en asociación con los múltiples métodos de la presentei invención Método para Sincronizar Documentos con Múltiples Clientes I Haciendo referencia a las Figuras 1 y 3-3D, se describe un método para sincronizar documentos con múltiples clientes 25 y se describirá con referencia al sistema 21 descrito inmediatamente antes y ¡los cuadros de flujo de las Figuras 3-3D Como se utiliza aquí, un cliente o usuario 21, que se comunica a través de un dispositivo puede ser cualquier numero de entidades, que represenjtan individuos, grupos de individuos, o dispositivos automatilzados que funcionan bajo el control de uno o más individuos, entre otros El termino dispositivo, computadora, o dispositivo de computo como se utiliza aquí pueden comprender una vapedadi de diferentes dispositivos, que incluyen pero no se limitan a una computadora personal, una computadora laptop, una computadora portátil, asi como telefonos celulares, asistentes digitales) personales, y otros dispositivos de medios portátiles, entre otros. Otros dispositivos o medios para acceder a documentos no específicjamente mencionados también se contemplan aquí como dentro del alcance de la presente invención. De ¡ acuerdo con el presente método, el servidor 33 puede recibir instrucciones, en 45, de uno o más clientes 25 con respecto a un formalto en el cual cada uno de uno o más clientes desea recibir datos (vpr Figura 3). En un ejemplo, esta selección de formateo puede ocurrir primero en el procedimiento para asegurar que todas las comjunicaciones con el dispositivo están en un formato entendible, aunque se contempla que tal selección puede ocurrir en un momento posterior en el procedimiento. Cada cliente puede solicitar cualquier número de diferentes formatos, que incluyen formateoj de html, documentos de texto formateados (por ejemplo documentos de Microsoft Word, documentos de formato de texto rico, Formato de Documento Portátil (PDF), etc.), formateo de texto ASCII, entre otros. El sistema 21 y método de la presente invención pueden utilizar éstas instrucciones de formateo cuando se trascodifican i datos para enviar en 41 de cada cliente 25 para asegurar que los datos enriados estarán accesibles por cada uno de los clientes. Hacjiendo referencia ahora a la Figura 2, un diagrama de un documenljo de interés potencial para uno o más clientes 25 generalmente se indica en 61. Múltiples clientes 25 que comparten y colaboran con un documento común se beneficiarán de los sistemas y métodois de la presente invención. En particular, los clientes 25 que comparten documentos particularmente grandes estarán dispuestos a obtener funcionalidad substancial al utilizar el sistema y método ís de la presente invención Al asumir el documento 61 en la Figura 2 es un documento relativamente grande, el método de la presente invención ademas define, en 75, subsecciones A-F, cada una indicada 65, del documento original (ver Figura 3) Estas subseccibnes 65 corresponden a intervalos semánticos o lógicos dentro je I documento original 61 En un ejemplo, las subsecciones I 65 pueden establecerse de acuerdo con una tabla de contenidos asociada con el documento original 61 Al utilizar una tabla de contenidos u otro esquema de organización lógica del documento 61 para establecer las subsecciones que harán sentido para los clientes 25 Adenhás, las subsecciones 65 más probablemente comenzarán y I terminarán en ubicaciones lógicas dentro del documento Este i esquema] particular en mucho más intuitivo y útil que métodos i convencionales, que pueden dividir documentos basándose en un final de, una página de texto, el número de palabras en cada subsecci'on, la distribución de memoria de cada subsección, u otra medida arbitraria I En¡ un ejemplo, definir, en 75, las subsecciones 65 del documento original 61 comprende separar el documento, también en 75, en ¡las subsecciones basadas en una tabla de contenidos asociada! con el documento que identifica intervalos lógicos dentro del docujriento (ver Figura 3) Utilizar tal tabla de contenidos ayuda a i asegurar! que las subsecciones apropiadas 65 se definen debido a que la tapia de contenidos ya se creó lógicamente por el borrador del documento 61 de acuerdo con los contenidos del documento. En un ejemplo,; tal tabla de contenidos puede definirse por cliente. En donde nd está presente una tabla de contenidos, las subsecciones 65 del documento original 61 puede definirse al generar una tabla de contenidos basándose en la estructura inherente del mismo documento. Por ejemplo, la generación automática de una tabla de contenidos puede ocurrir en cualquier número de formas, que incluyen ¡apalancar una vista de perfil de un documento de Microsoft I Word, qu¡e utiliza los encabezados y subencabezados incluidos en un documento, y que utilizan reconocimiento de espacio en blanco en el documento. Otros métodos para establecer automáticamente una tabla de ¡ contenidos también se contempla como dentro del alcance de la invención reclamada. El presente método también contempla generar una ID de subsecci n, en 79, identificar cada una de las subsecciones 65 (ver la Figur^ 3). Estas IDs de subsección pueden estructurarse en cualquier, número de formas lógicas para fácil revisión y consideración por clientes. En un ejemplo, generar una ID de subsección puede comprender enlazar, también en 79, el nombre de la subsección 65 y la ubicación de la subsección dentro del documento juntos. De esa forma, tanto los contenidos generales de la subse^ción 65 como su ubicación relativa con respecto a otras subsecciones se conoce fácilmente al revisar simplemente la ID de subsección. Para las subsecciones 65 de la Figura 2, por ejemplo, las IDs de subseccion pueden ser tan simples como 1A, 2B, 2C, 4D, 5E, y 6 F j en donde la porción numérica de la ID de subseccion indica la ubicacjión de la subsección dentro del documento 61 y las letras A- F indican el tema discutido en la subsección En la modalidad ilustrativa de la Figura 2, las letras A-F pueden sustituirse fácilmente con encabezados tópicos indicativos de los contenidos de la subsección (por ejemplo, IManzanas, 2Platanos, etc ) Como se contempljará fácilmente por un experto en la técnica, también pueden utilizarse otros métodos para identificar tales IDs de subsección sin i apartarse del alcance de la invención reclamada Una vez que se determinan las IDs de subsección, el servidor 33 envía una lista de las IDs de subsección, en 41, a uno o más clientes 25 a través de la red 29 para que los clientes puedan revisar las IDs !de subseccion y determinar a qué subsecciones desean suscpbir?e (ver Figuras 1 y 3) De esta manera, los clientes 25 pueden e,xam?nar rápidamente las IDs de subsección del documento 61, y de esa forma un resumen de su contenido, para determinar si les gustaría suscribirse a cualquiera de las subsecciones 65 sin tener que descargar el documento completo, o incluso una porción del documento antes de revisar las IDs de subsección Cada cliente 25 tiene la opción de enviar una solicitud en 55 a través de¡ la red 29 para suscribirse a una o más subsecciones 65 El servidor 33 recibe tal solicitud, en 83, de al menos uno de uno o más clientes 25 para suscribirse a una o mas subsecciones 65 (ver Figura 3) El servidor 33 puede recibir una solicitud de suscripción diferente de cada ¡cliente 25, que permite a cada cliente adaptar su vista del documento 61 en su dispositivo Por ejemplo, como se muestra en las F?gur|as 1 y 2, el servidor 33 puede recibir una solicitud en 45 del Cliente 1 para recibir la subseccion A, mientras el Cliente 2 elige recibir siubsecciones A, C, y F, mientras el Cliente 3 selecciona recibir sólo subsección F En este ejemplo, más que tener que enviar el docur?ento completo a cada cliente 25, el sistema 21 simplemente puede enviar la subseccion o subsecciones 65 al cliente respectivo que hace, la solicitud I Antes de enviar datos a uno o más de los clientes en 41, el servidor 33 ademas trascodifica, en 87, en respuesta a la solicitudes) de cliente una o más subsecciones 65 del documento original 61 al cual uno o más clientes 25 desea suscribirse en el formato en el cual uno o mas clientes desean recibir datos (ver Figura 3) En el ejemplo discutido anteriormente, cada una de las subseccjones suscritas 65 puede trascodificarse para acceso y modificalción de acuerdo con los requerimientos de formateo particulares de cada uno de los clientes 25 Como se utiliza aquí, un articulo trascodificado es como un articulo que se formatea o configura para que pueda accederse, verso, modificarse, y/o de otra I forma utilizarse en diferentes plataformas, sin importar la aplicación utilizada, el lenguaje utilizado, el dispositivo de observación empleado, o el protocolo de comunicación requerido Al utilizar los documentos trascodificados, o proporcionar vistas trascodificadas, ! varios clientes 25 son capaces de ver el mismo documento 61 o archivo én diferentes dispositivos, al utilizar diferentes programas, pantallas, protocolos, etc Esto permite la colaboración por un grupo de chenties 25, cada uno que utiliza dispositivos separados, en un gran dolcumento compartido 61 Se debe notar aquí que la trascodificacion puede ocurrir alternativamente en el cliente 25 Und vez trascodificada, el servidor 33 puede enviar, en 91, las I subseccijones suscritas trascodificadas 65 a uno o más clientes 25 de acuerdo con sus solicitudes de suscripción respectivas (ver Figura 3) Los ¡ clientes 25 después pueden ver los contenidos de las subseccilones 65 para las que se suscribieron En un ejemplo, el servidor 33 sólo envía las subsecciones suscritas por un cliente particulaír 25 En este ejemplo, el servidor 33 no enviará a un cliente i a una sijibsección a la cual el cliente no se suscribe Cada cliente puede alterar individualmente sus suscripciones en cualquier momento, al agregar subsecciones, remover subsecciones, o modificar subsecciones, como se discutirá en mayor detalle posteriormente Muestre© de Subseccion En otro ejemplo, un método que representa aspectos de la presente invención además puede proporcionar, en 95, una porción de muestra 71 de una subsección 65 a un cliente de no suscripción 25 para1 revisar la porción de muestra de los contenidos de la subsección (ver Figura 3A) En algunos casos, la ID de subsección sola puede no proporcionar información adecuada a cada cliente de no suscripción 25 que considera suscribirse a una subsección 65 de un docurnento 61. El sistema 21 adicionalmente puede ofrecer una porción de muestra 71 de una o más subsecciones 65 para revisión al cliente. En un ejemplo, el sistema 21 adicionalmente proporciona, en 97, un elemento de selección al cliente de no suscripción 25 para solicitar Ha porción de muestra 71 de una o más de las subsecciones I 65 (ver Figura 3A). En otro ejemplo, el sistema 21 automáticamente proporciona la porción de muestra 71 con una, alguna, o todas las subseccibnes 65. En donde una porción de muestra 71 se incluye con la ID del'sistema 21 también puede proporcionar, en 99, un elemento de selección al cliente de no suscripción para elegir suscribirse o no suscribirse a la subsección muestreada 65. Otras características ayudan conservar la relativa facilidad de uso del presente método al minimizar la cantidad de datos descargados a o cargados desde cualquier cliente particular 25. En particular, proporcionar una porción ¡de muestra 71 de una subsección 65 además puede comprender proporcionar, también en 95, una porción de muestra ajustada! para descarga y almacenamiento razonable al dispositivo del cliente de no suscripción 25 basándose en las capacidades de al menos uria red y el dispositivo. Un experto en la técnica entenderá fácilmente cómo seleccionar una porción de muestra correctamente ajustada! 71 que no ¡mpactará negativamente los beneficios de normalización de la presente invención, principalmente, juiciosamente al utilizar la banda ancha y memoria de dispositivos de cliente y redes para casi la cantidad mínima requerida para satisfacer las demandas de un cliente particular 25. I Los elementos de selección se proporcionan generalmente aquí I para per¡mit¡r a los clientes 25 interactuar con el servidor 33 del sistema 21 de acuerdo con los presentes métodos. En un ejemplo, el servidor 33 proporciona tal funcionalidad al proporcionar, en 103, una intérfase de usuario para interacción con el cliente 25 incorporado en el dispositivo del cliente (ver Figura 3). Tal interfase de usuario, por ejemplo, puede incluirse en al menos un elemento de selección que permite al cliente suscribirse o no suscribirse a subseccfnes 65 del documento 61 Como se utiliza aquí. Toros i elementois de selección también pueden proporcionarse a cada cliente 65 a través de la interfase de usuario.
Modificación de Cliente de las Subsecciones Con la revisión de una subsección particular 65, un cliente 25 puede utjlizar una aplicación en su dispositivo para hacer una o más modificaciones a la subsección Estas modificaciones pueden hacer cualquier número de cosas, que incluyen agregar texto, eliminar texto, modificar texto, reordenar texto, por nombrar algunos. En particular^ el servidor 33 recibe, en 105, al menos una operación en 45 de uno de los clientes de suscripción 25 que comprenden ¡ instrucciones para modificar los contenidos de la subsección 65 de interés, agregar contenidos a la subsección de interés, o remover contenidos de la subsección de interés (ver Figura 3). Una combina ión de una o más de estas operaciones también puede recibirse' por el servidor 33 de acuerdo con el presente método. Tales r?odificaciones pueden enviarse al servidor 33 ya sea automáticamente o como se dirigió específicamente por un cliente 25. Es importante notar aquí que la subsección modificada completa 65 no necesita enviarse al servidor 33, sino sólo las operaciones iniciadas' por uno de los clientes de suscripción 25 en la subsección.
Por ejemplo, si el cliente 25 removiera todas las referencias a una primera serie de caracteres de texto (por ejemplo, "La Gran Red Mundial y las reemplaza con una segunda fila de texto (por ejemplo "WWW"), sólo la operación relativamente simple de reemplazar la serie de caracteres con la segunda serie de caracteres se necesitaría para dirigir al servidor 33 por la aplicación a la subseccijón 65 para cada uno de los suscriptores. Al enviar y recibir sólo operaciones, más que la subsección modificada completa, se transfieren mucho menos datos, con ello se reducen los requerir?ientos de memoria y aumenta la velocidad en la cual se reciben lias actualizaciones por el servidor 33 y se regresan a los clientes, de suscripción 25. Hajciendo referencia ahora a la Figura 3D, los aspectos de la invenciójn además permiten revisar la sincronización.
Periódicamente, o en respuesta a información recibida por el servidor! 33 que indica que una subsección particular 65 se modificó por el cljiente 25, el servidor del presente sistema 21 puede comparar la subsécción almacenada en la base de datos 37 con una, algunas, o todas ¡las subsecciones almacenadas en los dispositivos de cliente.
En un ejemplo, el sistema 21 verifica, en 107, la subseccion(es) 65 de ?nteré¡s del documento original 61 para el cual uno o más clientes 25 se suscriben en un valor numérico indicativo de los contenidos de la subsección del documento original (ver Figura 3D) El sistema 21 después ¡verifica, en 109, la subsección modificada 65 del documento original $1 en un valor numérico indicativo del contenido de al menos una subsección modificada Con estos dos valores de verificación, el sistema 2 después puede comparar, en 111, el valor numérico de la subseccijón 65 del documento original 61 al valor numérico de la subseccijón modificada para determinar si la subsección del documenito original se modificó (ver Figura 3D) Una vez una modificabión, que también puede ser simplemente una adición o una eliminación de datos, se detecta, el sistema 21 proporciona, en 113, la operac?ón(es) asociada con la subsección modificada 65 a clientes 25 que suscriben a la subsección para uso al modificar la subsección para caqa cliente Después de tal modificación, cada cliente 25 tiene una copía idéntica de la subsección modificada, con ello permite la fácil revisión y acceso a los últimos cambios en el documento 61. En un ejemplo, el servidor 33 envía, en 115, una lista actualizada de las IDs de subsección a todos los clientes cuando la operac?ón(es) agrega Contenido a una subsección 65 (ver Figura 3C). Esta acción proporciona a los suscpptores información que se relaciona con una I suscripción 65 a la cual demostró particular interés y los no suscpptbres tienen una oportunidad de suscribirse a la subsección si el contenido agregado puede ser de particular interés.
En ! otro ejemplo en donde la operac?ón(es) sólo modifica o elimina qontenido de la subsección 65, el servidor 33 envía, en 117, I la operac?ón(es) de uno o más clientes de suscripción 25 a todos los i clientes ¡de suscripción (ver Figura 3C) En este ejemplo, los suscpptdres demostraron un deseo de mantener una versión actualizada de la subsección 65 en su dispositivo El servidor no I envía estas operaciones de modificación o eliminación a clientes de no suscripción 25, sin embargo, debido a la remoción o modificación I de información dentro de la subsección 65 probablemente no será de I interés p|ara un no suscpptor En ¡ otro ejemplo, el sistema 21 puede remover, en 119, los atributos! de formateo de una o más subsecciones 65 antes de verificar ¡una o más subsecciones del documento original 61 y antes i I de la verificación de la subsección modificada del documento original (ver Figura 3D) Esto asegura que los cambios al formateo que i ocurpercjn a la subsección 65 en un dispositivo de cliente no crean un falso¡ positivo para una subsección de documento cambiada ¡ cuando se compara con la verificación de la subsección original y la subseccijón potencialmente modificada Además de enviar las modificaciones a los clientes de suscripción 25, el sistema también envía una notificación de la subseccijon modificada 65 a clientes de no suscripción a la subsección modificada En un ejemplo, enviar la notificación de la subsecciión modificada 65 a clientes 25 que no se suscriben a la subseccilón modificada comprende actualizar, en 115, la lista de las IDs de súbsección para indicar la subsección modificada (ver Figura 3C). De ¡esta manera, el cliente de no suscripción 25 simplemente puede revisar la lista actualizada de IDs de subsección para determinar si cualquier subsección cambió, de nuevo, sin descargar cada subsección. Incluso en otro ejemplo, dos o más clientes 25 pueden intentar i modificar! la misma subsección de documento 65, que requiere que el sistema ?1 emplee una metodología de resolución de conflicto. En tal caso, el servidor 33 puede recibir, 121 en al menos una operación de dos o m|ás clientes de suscripción 25 (por ejemplo, Cliente 1 y I Cliente 2) para modificar la misma subsección suscrita (ver Figura 3B). El servidor 33 resuelve, en 123, cualquier conflicto entre la operaciórj?(es) recibida de uno de los clientes de suscripción 25 y la operació?(es) recibidas de otro de los clientes de suscripción para modificar; la misma subsección suscrita 65 al emplear la metodología de resolución de conflicto. En un ejemplo, el servidor 33 amplia una jerarquía de autoridad de modificación para determinar si aplica al menos u a operación del Cliente 1 o Cliente 2 basándose en la posición ¡de cada cliente de suscripción 25 en la jerarquía. Por ejemplo, ¡cuando el Cliente 2 se clasifica sobre el Cliente 1 en la jerarquía de autoridad de modificación, las modificaciones del Cliente 2¡se utilizarán, den lugar de las modificaciones del Cliente 1.
En otro ejjemplo, el servidor 33 resuelve cualquier conflicto al utilizar la operación recibida que satisface un requerimiento temporal basándosle en el tiempo en el que cada una de las operaciones se inició pof- los clientes de suscripción 25. El servidor 33 puede utilizar la primeria de las dos operaciones de modificación, la última de dos operaciones de modificación, o la operación de modificación más cercana ¡a un tiempo particular, por nombrar algunos. El sistema 21 también o alternativamente puede notificar a un cliente 25 si sus notificaciones ya no se utilizan debido a una resolución de conflicto, I para quej el cliente esté consciente de tales cambios no se utilizarán.
En ¡otro ejemplo, el servidor 33 recibe al menos una operación de un Cimiente 1 y un cliente 2 y envía las operaciones de un cliente (por ejernplo, Cliente 1) a otro cliente (por ejemplo, Cliente 2). Con sus propias operaciones a la mano y la operaciones de Cliente 1 enviadas del servidor, el cliente 2 después puede recibir cada uno de los cambjios propuestos lado a lado para determinar qué operaciones, si hay allguna, de ambos grupos de operaciones deben adoptarse. De esta forma, uno de los clientes 25 realiza el papel de resolución de conf I ictoi. Como se entenderá fácilmente por un experto en la técnica, cualquier número de diferentes esquemas de resolución puede utilizarse sin apartarse del alcance de la invención reclamada.
Medio Legible por Computadora para Sincronizar Documentos con Clientes ; últi oles La ¡ Figura 4 es un diagrama de un medio legible por computadora (CRM) de la presente invención, generalmente indicado 125. El medio legible por computadora tiene instrucciones ejecutables por computadora para sincronizar documentos con múltiples clientes Las instrucciones ejecutables por computadora para rea|?zar los pasos comprenden recibir instrucciones para recibir instrucciones de uno o mas clientes con respecto a un formato en el cual cada uno de uno o mas clientes desea recibir datos Las instrucciones ejecutables por computadora ademas comprenden definir instrucciones para definir subsecciones de un documento original, el documento original que es de potencial ínteres para uno o mas de l,os clientes, las subsecciones que corresponden a intervalos semantiojos con el documento original Las instrucciones ejecutables I por com|putadora ademas comprenden generar instrucciones para i generar un ID de subseccion que identifica a cada una de las subsecciones y que envía instrucciones para enviar una lista de las IDs de subseccion a uno o más clientes Las instrucciones ejecutables por computadora ademas comprenden trascodificar instruccijOnes para trascodificar, en respuesta a la solicitud, una o más subsecciones del documento original al cual uno o más clientes desean suscribirse en el formato en el cual uno o más clientes respectivos desean recibir datos Las instrucciones ejecutables por computadora ademas comprenden enviar instrucciones para enviar las subsiecciones suscritas, trascodificadas a uno o más clientes de acuerdo con sus respectivas solicitudes de suscripción En otro ejemplo también ilustrado en la Figura 4, las instrucci'ones ejecutables por computadora además comprenden instrucciones de recepción para recibir al menos una operación de los clientes de suscripción para modificar una subsección suscrita del documento original. Las instrucciones ejecutables por computadora además comprenden instrucciones de verificación para verificar ¡una o más de las subsecciones del documento original al cual uno o más clientes se suscriben en un valor numérico indicativo de los ¡contenidos del documento original e instrucciones de verificación para verificar la subsección modificada del documento original un valor numérico indicativo del contenido de al menos una subsección modificada. Las instrucciones ejecutables por computadora además comprenden instrucciones de comparación para I comparar! el valor numérico de la subsección del documento original al valor humérico de la subsección modificada para determinar si la subsección del documento original se modificó. Las instrucciones ejecutablles por computadora además comprenden proporcionar instrucciones para proporcionar al menos una operación asociada con la subsección a clientes que se suscriben a la subsección para uso al modificar la subsección para el cliente.
Ejemplo ¡ El siguiente ejemplo demuestra un algoritmo de sincronización ilustrativp de la presente ¡nvención. Como se discutió generalmente en lo anterior, el cliente 25 comienza al especificar al servidor 33 el formato de los datos que desea recibir (por ejemplo, el documento de servidor 61 puede almacenarse en un formato de Documento de Microsoft Word, mientras el dispositivo solamente entiende HTML ! básico). Aquí está una solicitud de cliente ilustrativa: <Sinc> <Tipo de Contenido> HtmlBásico</Tipo de contenido> </S inc> Des ;ppuués de definir cinco subsecciones 65 del documento i original ¿1 en este ejemplo y generar IDs de subsección única (por ejemplo, Parte 1, Parte 2, etc.) identificar cada una de las subsecci Dnes, el servidor 33 responde al enviar en 41 la lista de IDs de subsección al cliente 25 después de lo cual el cliente puede I "suscribiese" a una subsección particular del documento. Una respuesta de servidor ilustrativa sería: < Sinc> !<SubSección> <ld> Parte1</ld> <Título> ! Este es el título de la sección de parte 1 trascodificado en formato HTML </Título> ¡ /SubSección> ?SubSección> ! <ld> Parte2< /ld> <Título> Este es el título de la sección de parte 2 trascodificado en formato HTML </Título> SubSección> <ld> Parte3< /ld> <Título> Este es el título de la sección de parte 3 ; trascodificado en formato HTML </Título> ¡</SubSección> <SubSección> j <ld> Parte4< /ld> <Título> Este es el título de la sección de parte 4 trascodificado en formato HTML </Título> !<SubSección> <ld> Parte5< /ld> ¡ <Título> Este es el título de la sección de parte 5 ¡ trascodificado en formato HTML </Título> ,</SubSección> </S'inc> Después de presentar las IDs de subsección al cliente 25, el cliente djespués envía una solicitud al servidor 33 que específica las subsecciones 65 a las cuales el cliente le gustaría suscribirse. La subsecci|ón 65 se identifica por la ID de subsección en el siguiente ejemplo de tal solicitud: < S|uscr?b?r> <SubSecc?on>Parte1</SubSecc?on> ¡<SubSecc?ón>Parte3</SubSecc?ón> </ uscr?b?r> El ¡servidor 33 determina el grupo de adiciones, cambios, y eliminaciones de subsección que envía al cliente respectivo 25 Para determ?n|ar eliminaciones, el servidor 33 notifica que desapareció una subsecc?¡ón particular 65 del documento 61 Para determinar cambios, el serví d(or 33 notifica que la verificación del contenido cambió para una subsección 65 a la cual el cliente 25 ya está suscrito Para determinar adiciones, el servidor 33 notifica que una nueva subsección 65 se introdujo en el documento 61 o el cliente 25 se suscribió a una subsección en la que ya estuvo suscrito antes La respuestla en 41 por el servidor 33 incluirá adiciones, cambios, y eliminaciones para subsecciones de cliente individual Los cambios enviados en 41 al cliente 25 sólo contendrán contenido de subsección 65 si el cliente ya estaba suscrito a esta subsección De otra forma, el cliente 25 será notificado del cambio, y en algunos i ejemplos, los cambios de ID de subseccion básica Lo siguiente es un ejemplo de una respuesta de servidor típica 33' <S?nc> <Camb?ar> <ld>Parte</ld> <Datos> Estos son los datos en la parte uno del documento. Se nota que la ID de subsección no se envió. El servidor envía estos datos debido a que el cliente se suscribió a la parte 1 del documento </Datos> </Camb?ar> <Camb?ar> <ld> Parte3</ld> <Datos> Se nota que el servidor no envió la parte 2 debido a que no hubo cambio </Datos> </Cam b?ar> <Camb?ar> <ld> Partee4</ld> <Título> El título de la Parte 4 cambió. Se nota que el servidor envió el título aún cuando que el cliente no se suscribe a la parte 4. Esto permite que el cliente decida inteligentemente comenzar a suscribirse a la parte 4 si es necesario < / T í t u I o > </Camb?ar> <El?m?nar> <ld>Parte5</ld> </El?m?nar> ! <Agregar> ' <ld>Parte6</ld> <Título> ' Una nueva subsección (parte 6) se introdujo al docunjiento. El cliente puede elegir suscribirse a esta en una sincroniz|ac?ón subsecuente. i </Título> , </Agregar> </S¡inc> Se , nota que cada subsección 65 contiene una vista trascodificada de la subsección, no la subsección original por sí misma, fsto permite al servidor 33 confeccionar el contenido de subsección proporcionado a las limitaciones particulares del dispositivo (por ejemplo, el dispositivo sólo soporta ver el HTML i básico y sólo puede almacenar una subsección individual a la vez).
Dispositivo de Cómputo de Propósito General La 'Figura 5 muestra un ejemplo de un dispositivo de cómputo i de propcjsito general en la forma de una computadora 130. En una I modalidad de la invención, la computadora tal como la computadora 130 es aldecuada para uso en las otras figuras ilustradas y descritas aquí. En un ejemplo, la computadora de cliente o dispositivo discutido anteriormente puede representarse por la computadora 130.
La computadora 130 adicionalmente tiene uno o más procesadores o unidades1 de procesamiento 132 y una memoria de sistema 134. En la modalidad ilustrada, el conductor común de sistema 136 acopla varios componentes de sistema que incluyen la memoria de sistema 134 a lo procesadores 132 El conductor común 136 representa uno o más de varios tipos de estructuras de conductor común, que incluyen un conductor común de memoria o controlador de memoria, un conductor común periférico un puerto de gráficos acelerado, y un i procesador o conductor común local que utiliza cualquiera de una variedad de arquitecturas de conductor común A manera de ejemplo, y no de ¡limitación, tales arquitecturas incluyen conductor común de i Arquitectura de Estándar de Industria (ISA), conductor común de Arquitectura de Micro Canal (MCA), conductor común de ISA aumentaldo (EISA), conductor común local de Asociación de Estándares Electrónicos de Video (VESA) y Conductor Común de Interconexión de Componente Periférico (PCI) también conocido como conductor común de Mézanme La, computadora 130 típicamente tiene alguna forma de medios legibles por computadora Los medios legibles por computadora que incluye tanto medios volátiles y no volátiles, medios removibles y no removibles, puede ser cualquier medio disponible que puede accederee por la computadora 130 A manera de ejemplo, y no de limitación, los medios legibles por computadora comprenden medios de almacenamiento por computadora y medios de comunicación Los medios de almacenamiento por computadora incluyen medios volátiles y no volátiles, removibles y no removibles implementados en cualquier método o tecnología para almacenamiento de información tal como instrucciones legibles por computadora, estructuras de datos módulos de programa u otros datos En un ejemplo,, los medios de almacenamiento de computadora incluyen, pero no se limitan a RAM ROM, EEPROM, memoria flash u otra tecnología de memoria, CD-ROM, discos versátiles digitales (DVD) u otro almacenamiento de disco óptico cassettes magnéticos, cinta i magnética, almacenamiento de disco magnético u otros dispositivos de almacenamiento magnético, o cualquier otro medio que puede utilizarse para almacenar la información deseada y que puede accederse por la computadora 130 Los medios de comunicación típicamente representan instrucciones legibles por computadora, estructurfas de datos, módulos de programa u otros datos en una señal d^ datos modulada tal como una onda portadora u otro mecanismo de transporte e incluye cualquier medio de entrega de información Aquellos expertos en la técnica están familiarizados con la señail de datos modulada que tiene una o más de sus características establecidas o cambiadas de tal forma para codificar información en la señal Los medios cableados, tal como red cableada o conexión cableada directa, y medios inalámbricos, tal como medios acústicos, RF, infrarrojos y otros inalámbricos, son ejemplos de medios de comunicación Combinaciones de cualquiera de los anteriores también se incluyen dentro del alcance de medios legibles 'por computadora La memoria de sistema 134 incluye medios de almacenamiento por computadora en la forma de memoria removible y/o no removible, volátil yjO no volátil En la modalidad ilustrada, la memoria de sistema ¡134 incluye tal como memoria sólo de lectura (ROM) 138 y memoria! de acceso aleatorio (RAM) 140 Un sistema de entrada/salida básico 142 (BIOS), que contiene las rutinas básicas i que ayudan a transferir información entre elementos dentro de la I computadora 130, tal como durante el arranque, típicamente se almacena en ROM 138 La RAM 140 típicamente contiene datos y/o I módulos¡ de programa que son inmediatamente accesibles a y/o actúa I me nte están siendo operados por la unidad de procesamiento 132 A manera de ejemplo, y no de limitación, la Figura 5 ilustra el sistema perativo 144, programas de aplicación 146, otros módulos I de programa 148, y datos de programa 150 I La ¡ computadora 130 puede incluir otros medios de I almacenamiento por computadora removibles/no removibles, volátiles/no volátiles En un ejemplo, la Figura 5 ilustra una unidad de disco duro 154 que lee de o escribe a medios magnéticos no i removiólas, no volátiles La Figura 5 también muestra una unidad de ! disco magnético 156 que lee de o escribe a un disco magnético removibl , no volátil 158, y una unidad de disco óptico 160 que lee de o escjpbe a un disco óptico removible, no volátil 162, tal como un i CD-ROM| u otro medio óptico Otros medios de almacenamiento por j computajdora removible/no removible, volátil/no volátil que pueden utilizarse en el ambiente operativo ilustrativo incluyen, pero no se limitan á, cassettes de cinta magnética, tarjetas de memoria flash, discos Versátiles digitales, cinta de video digital, RAM de estado sólido, ROM de estado sólido y similares. La unidad de disco duro 154, y unidad de disco magnético 156 y unidad de disco óptico 160 típicamente se conectan al conductor común de sistema 136 a través de una iititerfase de memoria no volátil, tal como interfase 166 i Las unidades u otros dispositivos de almacenamiento masivo y sus me,d?os de almacenamiento por computadora asociados discutidos anteriormente e ilustrados en la Figura 5, proporcionan almacenamiento de instrucciones legibles por computadora, estructuras de datos, módulos de programa y otros datos para la computadora 130 En la Figura 5, por ejemplo, la unidad de disco duro 154 se ilustra como almacenando el sistema operativo 170, programps de aplicación 172, otros módulos de programas 174, y datos de programa 176 Se debe notar que estos componentes pueden 'ser los mismos o diferentes al sistema operativo 144, programas de aplicación 146, otros módulos de programa 148, y datos de programa 150 El sistema operativo 170, programas de aplicación 172, otros módulos de programa 174, y datos de programa 176 aqují se les proporcionan números diferentes para ilustrar que, en un mínimo, son copias diferentes Un' usuario puede ingresar comandos e información en la computadora 130 a través de dispositivos de entrada tal como un teclado '180 y dispositivo de señalamiento 182 (por ejemplo, ratón, i seguibola o almohadilla sensible al tacto) Otros dispositivos de entrada, (no mostrados) pueden incluir un micrófono, palanca de i mandos, almohadilla de juegos, cámara, escáner, o similares. Estos y otros ¡dispositivos de entrada frecuentemente se conectan a la unidad de procesamiento 132 a través de una interfase de entrada 184 que'se acopla al conductor común de sistema 136, pero puede conectarse por otra interfase y estructuras de conductor común, tal como un'puerto paralelo, puerto de juegos o un Conductor Común en Serie Un'iversal (USB) Un monitor 188 u otro tipo de dispositivo de presentación también se conecta al conductor común de sistema 136 a travesj de una mterfase, tal como una interfase de video 190 Ademas ¡del monitor 188, las computadoras frecuentemente incluyen otros dispositivos de salida periféricos (no mostrado) tal como una i impresona y bocinas, que pueden conectarse a través de una I interfase, periférica de salida (no mostrado) La | computadora 130 puede operar en un ambiente en red que utiliza c'onexiones lógicas a una o mas computadoras remotas, tal como una computadora remota 194 La computadora remota 194 puede ser otra computadora personal, un servidor, un enrutador, una PC de ¡red, un dispositivo par, u otro nodo de red común, y típicamente incluye muchos o todos los elementos descritos I anteriormente relativos a la computadora 130 Las conexiones lógicas ilustradas en la Figura 5 incluyen una red de área local (LAN) 196 y una red de área ancha (WAN) 198, pero también pueden incluir otras redes LAN 136 y/o WAN 138 puede ser una red cableada, una red inalámbrica una combinación de las mismas, y así sucesivamente Tales ambientes en red comúnmente están ubicados en oficirjias, redes de computadora extendidas en empresa, mtranets, redes de¡ computadora globales (por ejemplo, Internet). Cudndo se utiliza en un ambiente en red de área local, la computadora personal 130 se conecta a la LAN 196 a través de una interfase¡ en red o adaptador 186. Cuando se utiliza en un ambiente en red e área ancha, la computadora 130 típicamente incluye un módem 1¡78 u otro medio para establecer comunicaciones en la WAN 198, t l| como Internet. El módem 178, que puede ser interno o externo, se conecta al conductor común de sistema 136 a través de la interfjase de usuario 184, u otro mecanismo apropiado. En un I ambienté en red, los módulos de programa ilustrados relativos a la computadora 130, o porciones de la misma, pueden almacenarse en el dispositivo de almacenamiento de memoria remota (no mostrado). A manejra de ejemplo, y no de limitación, la Figura 5 ilustra program s de aplicación remotos 192 como residentes en el dispositivo de memoria. Se apreciará que las conexiones en red mostradas son ilustrativas y pueden utilizarse otros medios para establecer el enlace de comunicaciones entre las computadoras. Generalmente, los procesadores de datos de la computadora 130 se | programan por medio de instrucciones almacenadas en diferentes momentos en los varios medios de almacenamientos legibles por computadora de la computadora. Los programar u sistemad operativos típicamente se distribuyen, en un ejemplo, en discos flexibles o CD-ROMs. A partir de aquí, se instalan y cargan en la memoria secundaria de una computadora. En ejecución, se cargan al menps parcialmente en la memoria electrónica primera de la computadora La invención aquí descrita incluye estos y otros varios tipos de medios de almacenamiento legibles por computadora cuando tales me|d?os contienen instrucciones o programas para implementar i las operaciones descritas posteriormente en conjunto con un microprocesador u otro procesador de datos Paría propósitos de ilustración, los programar y otros componejntes de programa ejecutables, tal como el sistema operativo, se ilustran aquí como bloques separados Sin embargo, se reconoce que tales programas y componentes residen en varios momentos en diferentes componentes de almacenamiento de la computadora, y se ejecutan por el procesador(es) de datos de la computadora Auhque se describió en conexión con un ambiente de sistema de cómputo ilustrativo, que incluye la computadora 130, la invención es operacional con numerosos otros ambientes o configuraciones de sistema de cómputo de propósito general o propósito especial El ambiente de sistema de computo no pretende sugerir ninguna limitación al alcance de uso o funcionalidad de la invención Además, el ambiente de sistema de cómputo no debe interpretarse como i teniendo ninguna dependencia o requerimiento que se relaciona con cualquiera o combinación de componentes ilustrados en el ambiente operativo ilustrativo Ejemplos de sistemas de cómputo, ambientes, y/o configuraciones que pueden ser adecuados para uso con la invención incluyen, pero no se limitan a, computadoras personales, computadoras de servidor, dispositivos móviles o laptop, sistemas de multiproqesador, sistemas a base de microprocesador, cajas de TV por cabl , electrónica de consumidor programable, telefonos móviles, PCs de red, minicomputadoras, macro computadoras, ambientes de cómputo distribuido que incluyen cualquiera de los anteriores s?stemas¡y dispositivos, y similares En operación, una computadora 130 que actúa como el servidor I 33 ejecijta un método tal como se describió anteriormente para sincronizar documentos con múltiples clientes La computadora 130 o sus componentes que reciben instrucciones de uno o más clientes con respecto a un formato en el cual cada uno de uno o más dispositivos desea recibir datos La computadora 130 o sus componentes que definen subsecciones de un documento original, el documento original que es de potencial interés a uno o más de los clientes, las subsecciones que corresponden a intervalos semánticos I dentro del documento original La computadora 130 o sus componentes que generan una ID de subsección que identifica cada una de las subsecciones La computadora 130 o sus componentes que envían una lista de IDs de subsección a uno o más clientes La computaidora 130 o sus componentes que reciben una solicitud de al menos uino de uno o más clientes para suscribirse a una o más de las subsecciones La computadora 130 o sus componentes que i trascodifican, en respuesta a la solicitud, una o más de las subsecciones del documento original al cual uno o más clientes desean ¡suscribirse en el formato en el cual uno o más clientes respectivos desean recibir datos La computadora 130 o sus componentes que envían las subsecciones suscritas, trascodificadas a uno o mas clientes de acuerdo con sus solicitudes de suscripción respectivas Aquellos expertos en la técnica notarán que el orden de ejecución o desempeño de los métodos ilustrados y descritos aquí no es esenclial, a menos que se especifique de otra forma Es decir, se contempla por los inventores que los elementos de los métodos pueden realizarse en cualquier orden, a menos que se especifique de otra form|a, y que los métodos pueden incluir más o menos elementos i que aquejllos aquí descritos Cuando se introducen elementos de la presente invención o la modal?dad(es) de la misma, los artículos "un", "uno", "el" y "dicho" pretenden significar que existen uno o más de los elementos Los términos "que comprende", "que incluye", y "que tiene" pretenden ser inclusivos y significa que pueden ser elementos adicionales diferentes a los elementos enlistados En vista de lo anterior, se observara que los varios objetos de la invencjon se logran y se obtienen otros resultados ventajosos Como pueden hacerse varios cambios en los productos y métodos lanteriores sin apartarse del alcance de la invención, se pretende que todo el asunto contenido en la descripción anterior y mostradoi en los dibujos acompañantes deba interpretarse como ilustrativo y no en un sentido limitante

Claims (5)

REIVINDICACIONES
1.-¡ Un método para sincronizar documentos con múltiples clientes, ,el método comprende recibir instrucciones de uno o más clientes con respecto a un formato ¡en el cual cada uno de uno o más clientes desea recibir datos; def'inir subsecciones de un documento original, el documento original Riendo de potencial interés a uno o más de dichos clientes, dichas s¡ubsecciones corresponden a intervalos semánticos dentro del documento original; gerjierar una ID de subsección que identifica cada una de dichas subsecci¡ones; enyiar una lista de las IDs de subsecciones a dicho uno o más clientes,. recibir una solicitud de al menos uno de dicho uno o más componentes para suscribirse a una o más de las subsecciones; trascodificar, en respuesta a dicha solicitud, dicha una o más I de las subsecciones del documento original al cual el uno o más clientes i desea suscribirse en el formato en el cual el uno o más clientes ¡respectivos desea recibir datos; y enviar las subsecciones suscritas, trascodificadas a dicho uno o más ¡clientes de acuerdo con sus respectivas solicitudes de suscripción.
2.- El método de acuerdo con la reivindicación 1, que además comprende recibir al menos una operación de uno de dichos clientes de suscripción para modificar una subsección suscrita del documento original. ;
3.-¡ El método de acuerdo con la reivindicación 2, que además comprende: verificar dicha una o más subsecciones del documento original al cual ¡uno o más clientes se suscriben en un valor numérico indicativo de los contenidos del documento original; verificar dicha subsección modificada del documento original en un valor numérico indicativo del contenido de al menos una subsección modificada; corhparar el valor numérico de la subsección del documento original con el valor numérico de la subsección modificada para determinar si la subsección del documento original se modificó; y proporcionar al menos una operación asociada con la subsección a clientes que se suscriben a la subsección para usarse para modificar la subsección para el cliente.
4.- El método de acuerdo con la reivindicación 3, que además comprende remover los atributos de formateo de una o más subseccitones antes de dicha verificación de dicha una o más de las subseccijones del documento original y dicha verificación de dicha subsección del documento original. I
5.-; El método de acuerdo con la reivindicación 2, en donde dicha recepción en al menos una operación de uno de dichos clientes suscriptdres comprende al menos uno de recibir al menos una operación para modificar contenidos de la subseccion de interés, I recibir a1! menos una operación para agregar contenidos a la subsección de interés, y recibir al menos una operación para remover contenidos de la subseccion de ínteres 6 -1 El método de acuerdo con la reivindicación 5, que además comprende enviar una lista actualizada de las IDs de subsección a todos lo^ clientes cuando dicha al menos una operación agrega contenidb a una subseccion, y enviar al menos una operación de uno de dichos clientes a los clientes i de suscripción cuando dicha al menos una operación modifícalo elimina contenido de dicha subseccion 7 - El método de acuerdo con la reivindicación 2, que además comprende recibir al menos una operación de otra de dicho cliente de suscripción para modificar dicha subseccion de suscripción, y resolver cualquier conflicto entre al menos una operación recibida de uno de dichos clientes de suscripción y al menos una operación recibida del otro de dichos clientes de suscripción para mod?f?ca|r la misma subseccion suscrita i 8 - El método de acuerdo con la reivindicación 7, en donde dicha resolución de cualquier conflicto comprende aplicar una I jerarquía de autoridad de modificación para determinar si aplica al i menos una operación de dicho uno de dichos clientes o el otro de dichos clientes de suscripción basándose en la posición de cada cliente de suscripción en la jerarquía 9 - El método de acuerdo con la reivindicación 7, en donde dicha resolución de cualquier conflicto comprende utilizar al menos una operación que satisface un requerimiento temporal basándose en el tiempo en el que dicha al menos una operación se inició por dichos cruentes de suscripción. 10.'- El método de acuerdo con la reivindicación 1, en donde dicha definición de las subsecciones del documento original comprende separar el documento en las subsecciones basándose en una tabla de contenidos asociada con el documento que identifica intervalojs lógicos dentro del documento. 11.- El método de acuerdo con la reivindicación 10, en donde definir las subsecciones del documento original además comprende generar ¡ dicha tabla de contenidos basándose en la estructura inherente del documento. 12J- El método de acuerdo con la reivindicación 10, en donde dicha definición de las subsecciones del documento original además comprenjde utilizar una tabla de contenidos definida por el cliente. 13:- El método de acuerdo con la reivindicación 1, en donde dicha generación de una ID de subsección que identifica cada una de las sub'secciones además comprende enlazar el nombre de la i subsección y la ubicación de la subsección dentro del documento junto para generar cada ID de subsección. 14 - El método de acuerdo con la reivindicación 1, que además compre?de una porción de muestra de una subsección a un cliente de no ¡suscripción para revisar la porción de muestra de los i contenidos de la subsección; y proporcionar un elemento de selección a dicho cliente de no suscppcilón para elegir suscribirse o no suscribirse a dicha subsecci n muestreada 15.!- El método de acuerdo con la reivindicación 14, que además comprende proporcionar un elemento de selección a dicho cliente dé no suscripción para solicitar dicha porción de muestra. 16 '- El método de acuerdo con la reivindicación 14, en donde dicha proporción de una porción de muestra de una subsección además , comprende proporcionar una porción de muestra ajustada para des¡carga y almacenamiento razonables al dispositivo del cliente de no suscripción basándose en las capacidades de al menos una red y el dispositivo. 17J- El método de acuerdo con la reivindicación 1, que además compren¡de proporcionar una interfase de usuario con al menos un elementó de selección que le permite al cliente suscribirse o no i suscribirse a subsecciones de dicho documento. i 18?- Un sistema para sincronizar documentos con múltiples clientes adaptados para conexión con dicho sistema a través de una red, dicljio sistema comprende. uní servidor adaptado para conexión con dicha red, dicho servidor adaptado para recibir instrucciones de uno o más de dichos clientesicon respecto al formato en el cual cada uno de dicho uno o más cliejntes desea recibir datos del servidor a través de la red; y una base de datos adaptada para conexión con el servidor para almacen'ar un documento original de interés potencial a uno o más de dichos clientes, en donde dicho servidor al menos se configura para: deflinir subsecciones de dicho documento original almacenado en dicha base de datos, dichas subsecciones corresponden a intervalo¡s semánticos dentro del documento original; generar una ID de subsección que identifica cada una de dichas subsecci|ones; en?¡ar una lista de las IDs de subsección a cada uno de dicho i uno o más clientes a través de dicha red; recibir una solicitud de al menos uno de dicho uno o más clientes para suscribirse a una o más subsecciones a través de dicha red; trascodificar, en respuesta a dicha solicitud recibida, dicha una o más dé las subsecciones del documento original al cual uno o más clientes ¡desea suscribir; y enviar las subsecciones suscritas trascodificadas a uno o más clientes de acuerdo con sus solicitudes de suscripción respectivas. 19.;- Un medio legible por computadora que tiene instrucciones ejecutabjles por computadora para sincronizar documentos a través I de múltiples clientes, dichas instrucciones ejecutables por computadora realizan pasos que comprenden: recibir instrucciones para recibir instrucciones de uno o más clientes con respecto a un formato en el cual dicho uno o más clientes ¡desean recibir datos; definir instrucciones para definir subsecciones de un documento original, dicho documento original siendo de potencial interés ¡a uno o más de dichos clientes, dichas subsecciones corresponden al mismo intervalo semántico dentro del documento original; ¡ generar instrucciones para generar una ID de subsección que identifica cada una de dichas subsecciones; enviar instrucciones para enviar una lista de las IDs de I subseccijón a uno o más clientes; recibir instrucciones para recibir una solicitud de al menos uno de dichos uno o más clientes para suscribir una o más de las subseccilones; trascodificar instrucciones para trascodificar, en respuesta a dicha solicitud, dicha una o más de las subsecciones del documento I original al cual uno o más clientes desea suscribirse en el formato en el cual eil uno o más clientes respectivos desean recibir datos; y enviar instrucciones para enviar las subsecciones suscritas, trascodificadas a dicho uno o más clientes de acuerdo con sus solicitudes de suscripción respectivas. 20J- El medio legible por computadora de acuerdo con la reivindicación 19, que además comprende instrucciones ejecutables por computadora para realizar los pasos que comprenden: reqibir instrucciones para recibir al menos una operación de uno de dichos clientes de suscripción para modificar un subsección suscrita¡del documento original; verificar instrucciones para verificar dicha una o más de las subsecciones del documento original al cual se suscribe uno o más clientes ¡en un valor numérico indicativo de los contenidos del documento original, verificar instrucciones para verificar dicha subsección modificada del documento original en un valor numérico indicativo del contenido de al menos una subsección modificada, i conjiparar instrucciones para comparar el valor numérico de la subseccipn del documento original al valor numérico de la subsección modificada para determinar si la subsección del documento original se modificó, y proporcionar instrucciones para proveer al menos una operación asociada con la subsección a clientes que se suscriben a la subse(cc?ón para usarse para modificar la subsección para el cliente lESUMEN Se proporcionan métodos, sistemas, y medios legibles por computadora para sincronizar y compartir documentos modificables relativamente grandes con clientes múltiples que utilizan una variedad' de dispositivos. El método recibe instrucciones de uno o más clientes con respecto a un formato preferible para uso con un dispositivo de cliente respectivo. El método además define subseccibnes del documento compartido basándose en intervalos i semántic'ps dentro del documento original y genera una ID para cada subsección. Las IDs de subsección se envían a los clientes que pueden ¡revisar las IDs y la solicitud para recibir una o más subseccibnes en su dispositivo respectivo. Las subsecciones solicitadas se trascodifican para usarse en los dispositivos de cliente respectiv ?S y se envían al cliente de acuerdo son sus solicitudes. El cliente después puede modificar la una o más subsecciones y estas modificaciones se aplican a las subsecciones correspondientes en otros dispositivos de cliente.
MX2007013358A 2005-05-25 2006-04-17 Metodos, sistemas y medios legibles por computadora para sincronizar documentos modificables con clientes multiples. MX2007013358A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/136,976 US7305420B2 (en) 2005-05-25 2005-05-25 Synchronizing modifiable documents with multiple clients using document subsections
PCT/US2006/014327 WO2006127178A2 (en) 2005-05-25 2006-04-17 Methods, systems, and computer-readable media for synchronizing modifiable documents with multiple clients

Publications (1)

Publication Number Publication Date
MX2007013358A true MX2007013358A (es) 2008-01-11

Family

ID=37452539

Family Applications (1)

Application Number Title Priority Date Filing Date
MX2007013358A MX2007013358A (es) 2005-05-25 2006-04-17 Metodos, sistemas y medios legibles por computadora para sincronizar documentos modificables con clientes multiples.

Country Status (10)

Country Link
US (1) US7305420B2 (es)
EP (1) EP1891549B1 (es)
JP (1) JP2008542875A (es)
KR (1) KR101238574B1 (es)
CN (1) CN101167071B (es)
BR (1) BRPI0609106B1 (es)
MX (1) MX2007013358A (es)
RU (1) RU2417425C2 (es)
TW (1) TW200703027A (es)
WO (1) WO2006127178A2 (es)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7698635B2 (en) * 2005-04-21 2010-04-13 Omegablue, Inc. Automatic authoring and publishing system
US7721200B2 (en) * 2005-04-21 2010-05-18 Omegablue, Inc. Automatic authoring and publishing system
US7721201B2 (en) * 2005-04-21 2010-05-18 Omegablue, Inc. Automatic authoring and publishing system
US20060259521A1 (en) * 2005-05-16 2006-11-16 Anthony Armenta Interface for synchronization of documents between a host computer and a portable device
US7783993B2 (en) * 2005-09-23 2010-08-24 Palm, Inc. Content-based navigation and launching on mobile devices
US20070220048A1 (en) * 2006-03-20 2007-09-20 Yahoo! Inc. Limited and combined podcast subscriptions
US20070300067A1 (en) * 2006-06-03 2007-12-27 Roselyn, Llc Notice of Revocation System for Revocable or Modifiable Documents
US8131670B2 (en) * 2007-02-22 2012-03-06 Microsoft Corporation Techniques to cross-synchronize data
CN101110822B (zh) 2007-07-06 2011-11-02 华为技术有限公司 基于网络配置协议的事件通知发送方法、系统及设备
US7930646B2 (en) * 2007-10-19 2011-04-19 Microsoft Corporation Dynamically updated virtual list view
US7941399B2 (en) 2007-11-09 2011-05-10 Microsoft Corporation Collaborative authoring
US8825758B2 (en) 2007-12-14 2014-09-02 Microsoft Corporation Collaborative authoring modes
US8352870B2 (en) 2008-04-28 2013-01-08 Microsoft Corporation Conflict resolution
US8639661B2 (en) * 2008-12-01 2014-01-28 Microsoft Corporation Supporting media content revert functionality across multiple devices
CN101753611B (zh) * 2008-12-16 2012-12-12 华为技术有限公司 一种取消同步的方法及装置
US20120317488A1 (en) * 2011-06-13 2012-12-13 Microsoft Corporation Techniques for adapting an interpretive run time application to multiple clients
US9983759B1 (en) * 2012-02-29 2018-05-29 Google Llc Method and system for sharing virtual collaboration objects
US8775682B1 (en) * 2012-05-08 2014-07-08 Google Inc. Data synchronization with eventual consistency
US10095672B2 (en) 2012-06-18 2018-10-09 Novaworks, LLC Method and apparatus for synchronizing financial reporting data
US10642928B2 (en) * 2013-06-03 2020-05-05 International Business Machines Corporation Annotation collision detection in a question and answer system
US9454348B2 (en) 2013-06-21 2016-09-27 Here Global B.V. Methods, apparatuses, and computer program products for facilitating a data interchange protocol modeling language
US9485306B2 (en) 2013-06-21 2016-11-01 Here Global B.V. Methods, apparatuses, and computer program products for facilitating a data interchange protocol
US20150142804A1 (en) * 2013-11-21 2015-05-21 Here Global B.V. Methods, apparatuses and computer program products for utilizing subtyping to support evolution of data types
US10091249B2 (en) * 2013-11-22 2018-10-02 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for synchronization of two databases in a lawful interception network by comparing checksum values
US9454620B2 (en) 2014-02-28 2016-09-27 Here Global B.V. Methods, apparatuses and computer program products for automated learning of data models
WO2016007144A1 (en) * 2014-07-08 2016-01-14 Hewlett-Packard Development Company, L.P. Composite document access
RU2609081C2 (ru) * 2015-06-29 2017-01-30 Общество С Ограниченной Ответственностью "Яндекс" Способ (варианты) и система (варианты) обработки документа в распределенной архитектуре
CN105227986A (zh) * 2015-09-24 2016-01-06 小米科技有限责任公司 同步处理方法及装置
CN107438084B (zh) * 2016-05-25 2020-12-22 北京京东尚科信息技术有限公司 多客户端数据同步方法和装置
KR101781844B1 (ko) * 2017-05-19 2017-09-27 주식회사 한글과컴퓨터 마크업 언어 기반 문서의 조합 글자 동기화 장치 및 그의 동작 방법
US10970457B2 (en) * 2017-11-22 2021-04-06 Citta LLC Collaboration mechanism
CN112889079A (zh) * 2018-08-10 2021-06-01 辉达公司 用于内容的协同生成的平台与方法
CN114556317A (zh) * 2019-10-10 2022-05-27 欧特克公司 通过版本散列链接图形的文档跟踪
CN111639482B (zh) * 2020-04-27 2022-11-22 平安普惠企业管理有限公司 文档修改方法、装置、电子设备及介质
KR102648501B1 (ko) * 2020-12-16 2024-03-19 한국전자통신연구원 네트워크 환경 동기화 장치 및 방법
CN113709250B (zh) * 2021-08-31 2023-09-15 中国电子科技集团公司第二十八研究所 一种基于订阅发送模式的跨域用户数据同步方法
CN114780504B (zh) * 2022-06-20 2022-09-02 中关村科学城城市大脑股份有限公司 web端交互管理方法、装置、存储介质及电子设备

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5261080A (en) * 1987-08-21 1993-11-09 Wang Laboratories, Inc. Matchmaker for assisting and executing the providing and conversion of data between objects in a data processing system storing data in typed objects having different data formats
JPH07160631A (ja) * 1993-12-09 1995-06-23 Fujitsu Ltd データ共同編集システム
JPH09209569A (ja) * 1996-02-02 1997-08-12 Fujitsu Ltd 作業調整システム
GB9604987D0 (en) * 1996-03-08 1996-05-08 Ibm Data management system and method for replicated data
US7047248B1 (en) * 1997-11-19 2006-05-16 International Business Machines Corporation Data processing system and method for archiving and accessing electronic messages
JP2000172602A (ja) * 1998-12-08 2000-06-23 Nec Corp クライアントサーバシステム、サーバ装置、データ名称変換方法及び記録媒体
JP4141556B2 (ja) * 1998-12-18 2008-08-27 株式会社日立製作所 構造化文書管理方法及びその実施装置並びにその処理プログラムを記録した媒体
US6993476B1 (en) * 1999-08-26 2006-01-31 International Business Machines Corporation System and method for incorporating semantic characteristics into the format-driven syntactic document transcoding framework
JP2001216230A (ja) * 2000-02-01 2001-08-10 Fuji Xerox Co Ltd ネットワークを利用した文書処理方法および装置
JP2002288153A (ja) * 2001-03-26 2002-10-04 Digital Communications:Kk アプリケーション非依存データ生成方法及び情報処理プログラム及びレイアウト情報処理システム。
AU2002360193A1 (en) * 2001-12-21 2003-07-09 American Airlines System and method for web to mainframe synchronization
US7200668B2 (en) * 2002-03-05 2007-04-03 Sun Microsystems, Inc. Document conversion with merging
US7340534B2 (en) * 2002-03-05 2008-03-04 Sun Microsystems, Inc. Synchronization of documents between a server and small devices
AU2003245506A1 (en) * 2002-06-13 2003-12-31 Mark Logic Corporation Parent-child query indexing for xml databases
JP2004030354A (ja) * 2002-06-27 2004-01-29 Inforware System Kk 情報提供システム
US7337239B2 (en) * 2002-11-19 2008-02-26 Microsoft Corporation Atomic message division
US7386590B2 (en) * 2003-01-03 2008-06-10 Microsoft Corporation System and method for improved synchronization between a server and a client
US20040243921A1 (en) * 2003-05-30 2004-12-02 Carr Steven Paul Methods and systems for synchronizing document elements
KR100491541B1 (ko) * 2003-08-01 2005-05-25 니트젠테크놀러지스 주식회사 네트웍 환경에서의 컨텐츠 동기화 시스템 및 동기화 방법

Also Published As

Publication number Publication date
JP2008542875A (ja) 2008-11-27
KR20080014747A (ko) 2008-02-14
RU2007143551A (ru) 2009-05-27
CN101167071B (zh) 2012-04-04
EP1891549A4 (en) 2011-06-22
KR101238574B1 (ko) 2013-02-28
TW200703027A (en) 2007-01-16
US7305420B2 (en) 2007-12-04
BRPI0609106B1 (pt) 2018-02-14
WO2006127178A3 (en) 2007-12-21
WO2006127178A2 (en) 2006-11-30
EP1891549B1 (en) 2017-12-27
US20060271603A1 (en) 2006-11-30
CN101167071A (zh) 2008-04-23
BRPI0609106A2 (pt) 2010-02-17
RU2417425C2 (ru) 2011-04-27
EP1891549A2 (en) 2008-02-27

Similar Documents

Publication Publication Date Title
MX2007013358A (es) Metodos, sistemas y medios legibles por computadora para sincronizar documentos modificables con clientes multiples.
US8745228B2 (en) Matching device capabilities and content characteristics
RU2471227C2 (ru) Содействуемая обслуживающим узлом и одноранговая синхронизация
US11921749B2 (en) Synchronization adapter for synchronizing application data
US7318193B2 (en) Method and apparatus for automatic document generation based on annotation
AU2010256703B2 (en) Synchronizing file partitions utilizing a server storage model
US20070005579A1 (en) Query based synchronization
KR20080065295A (ko) 멀티미디어 장면의 폰트를 관리하는 방법, 대응하는 컴퓨터프로그램 및 단말
JP2008542875A5 (es)
WO2010064116A1 (en) Method, apparatus and computer program product for sub-file level synchronization
US8392825B2 (en) Document processor and re-aggregator
CN110569488A (zh) 一种基于xml标记语言的模块化模板word生成方法
CN101226534B (zh) 一种查找关联文件的方法、终端和系统
US20090327369A1 (en) Method and apparatus for multi-format data exchange
US7860989B2 (en) Efficient transformation of interchange format messages
US11714858B2 (en) Methods and systems for providing file data from a file system
KR100341199B1 (ko) 데이터 기억 시스템 및 그 운영 방법
US20080270453A1 (en) Keyword-based content management
US20080046519A1 (en) System and method for messaging to edit a file
Ball et al. Briefing Paper: File Format and XML Schema Registries
WO2011074938A2 (en) A computer-implemented content and application management and delivery system
TH41380B (th) ระบบและวิธีการเพื่อการปรับปรุง การประสานจังหวะระหว่างเครื่องคอมพิวเตอร์หลักและเครื่องคอมพิวเตอร์ลูกข่ายให้ดีขึ้น

Legal Events

Date Code Title Description
FG Grant or registration