In a system comprising a local processing device, a transmission link to a
remote processing device, and a remote processing device, a method for
updating a remote document in accordance with mutations made to a portion
of the remote document maintained on the local processing device
comprising the steps of loading at least a portion of the remote document
into the local processing device as a local XML document, creating a
logical document object model (DOM) having a plurality of nodes arranged
in a logical hierarchical structure such that each node corresponds to an
XML tag and data element in the XML document, mutating the XML document by
adding, deleting, or modifying one or more of its data elements, updating
the DOM to conform to the mutations to the XML document, creating a first
event table that contains events corresponding to each mutation to the XML
document where each entry comprises a path to a node in the DOM affected
by the mutation and an event type, processing the first event table to
create a second event table that contains the smallest number of events
necessary to update the remote document to conform to the local XML
document, transmitting the second event table and related data from the
local device to the remote device, and mutating the remote document in
accordance with events in said second event table and related data such
that said remote document will have corresponding data elements of the
same value as mutated data elements in the modified local XML document.
Σε ένα σύστημα που περιλαμβάνει μια τοπική συσκευή επεξεργασίας, μια σύνδεση μετάδοσης με μια μακρινή συσκευή επεξεργασίας, και μια μακρινή συσκευή επεξεργασίας, μια μέθοδος για ένα μακρινό έγγραφο σύμφωνα με τις μεταλλαγές έκανε σε μια μερίδα του μακρινού εγγράφου που διατηρήθηκε στην τοπική συσκευή επεξεργασίας περιλαμβάνοντας τα βήματα της φόρτωσης τουλάχιστον μιας μερίδας του μακρινού εγγράφου στην τοπική συσκευή επεξεργασίας ως τοπικό έγγραφο XML, που δημιουργεί ένα λογικό πρότυπο αντικειμένου εγγράφων (DOM) που έχει μια πολλαπλότητα των κόμβων που τακτοποιήθηκαν σε μια λογική ιεραρχική δομή έτσι ώστε κάθε κόμβος αντιστοιχεί σε ένα στοιχείο ετικεττών XML και στοιχείων στο έγγραφο XML, που αλλοιώνει το έγγραφο XML με την προσθήκη, που διαγράφει, ή που τροποποιεί δοθuμεντ ην αθθορδανθε ωητχ μuτατηονς μαδε το α πορτηον οφ τχε ρεμοτε δοθuμεντ μαηνταηνεδ ον τχε λοθαλ προθεσσηνγ δεβηθε θομπρησηνγ τχε στεπς οφ λοαδηνγ ατ λεαστ α πορτηον οφ τχε ρεμοτε δοθuμεντ ηντο τχε λοθαλ προθεσσηνγ δεβηθε ας α λοθαλ ΞΜΛ δοθuμεντ, θρεατηνγ α λογηθαλ δοθuμεντ οψιεθτ μοδελ (ΔΟΜ) χαβηνγ α πλuραλητυ οφ νοδες αρρανγεδ ην α λογηθαλ χηεραρθχηθαλ στρuθτuρε σuθχ τχατ εαθχ νοδε θορρεσπονδς το αν ΞΜΛ ταγ ανδ δατα ελεμεντ ην τχε ΞΜΛ δοθuμεντ, μuτατηνγ τχε ΞΜΛ δοθuμεντ ψυ αδδηνγ, δελετηνγ, ορ μοδηφυηνγ ονε ορ μορε οφ ητς δατα ελεμεντς, ενημερώνοντας τα DOM για να προσαρμοστεί στις μεταλλαγές στο XML τεκμηριώστε, δημιουργώντας έναν πρώτο πίνακα γεγονότος που περιέχει τα γεγονότα που αντιστοιχούν σε κάθε μεταλλαγή στο έγγραφο XML όπου κάθε είσοδος περιλαμβάνει μια πορεία σε έναν κόμβο στα DOM που επηρεάζονται από τη μεταλλαγή και έναν τύπο γεγονότος, που επεξεργάζονται τον πρώτο πίνακα γεγονότος για να δημιουργήσει έναν δεύτερο πίνακα γεγονότος που περιέχει το μικρότερο αριθμό γεγονότων απαραίτητων να ενημερώσουν το μακρινό έγγραφο για να προσαρμοστεί στο τοπικό έγγραφο XML, που διαβιβάζει ο δεύτερος πίνακας γεγονότος και τα σχετικά στοιχεία από την τοπική συσκευή στη μακρινή συσκευή, και να αλλοιώσει το μακρινό έγγραφο σύμφωνα με τα γεγονότα στον εν λόγω δεύτερο πίνακα γεγονότος και τα σχετικά στοιχεία έτσι ώστε εν λόγω μακρινό έγγραφο δοθuμεντ ωχερε εαθχ εντρυ θομπρησες α πατχ το α νοδε ην τχε ΔΟΜ αφφεθτεδ ψυ τχε μuτατηον ανδ αν εβεντ τυπε, προθεσσηνγ τχε φηρστ εβεντ ταψλε το θρεατε α σεθονδ εβεντ ταψλε τχατ θονταηνς τχε σμαλλεστ νuμψερ οφ εβεντς νεθεσσαρυ το uπδατε τχε ρεμοτε δοθuμεντ το θονφορμ το τχε λοθαλ ΞΜΛ δοθuμεντ, τρανσμηττηνγ τχε σεθονδ εβεντ ταψλε ανδ ρελατεδ δατα φρομ τχε λοθαλ δεβηθε το τχε ρεμοτε δεβηθε, ανδ μuτατηνγ τχε ρεμοτε δοθuμεντ ην αθθορδανθε ωητχ εβεντς ην σαηδ σεθονδ εβεντ ταψλε ανδ ρελατεδ δατα σuθχ τχατ σαηδ ρεμοτε δοθuμεντ ωηλλ χαβε θορρεσπονδηνγ στοιχεία στοιχείων της ίδιας αξίας με τα αλλοιωμένα στοιχεία στοιχείων στο τροποποιημένο τοπικό έγγραφο XML.