What is the scenario for plain text, imported from a file or new text someone will type in from scratch? Your scenario implies that we open a XML file, F. On Wed, Oct 3, 2012 at 9:29 PM, John J. Boyer <john.boyer@xxxxxxxxxxxxxxxxx> wrote: > Here is how I see an xml file being processed according to the revised > framework. This should be considered a block diagram. > > First, some remarks on the files that will be used. I am assuming that > they will be Java properties files, because the information is key-value > pairs. I do not see any advantage to using something more complicated. > Human readability and writeability is important for developers, because > we will have to write some of them and we will have to check that the > GUI dialogues are operating properly. Creating and changing properties > files with these dialogues will also be much simpler than with xml. > > Immediately upon opening an xml document is parsed by xom to produce a > parse tree. > > The configuration files indicated in the user's settings are then read > and used to begin the construction of a semantic table. This table is > used to specify how markup in the document is to be rendered on the > screen and how styles are to be associated with markup for editing. > > Semantic-action files are then read. A file is chosen by looking for a > file with the name of the root element and the extension .sem or > according to an indication in the configuration files. > > If the semantic-action files contain XPath expressions as keys these are > applied to the parse tree, and the selected nodes are modified by adding > an attribute indicating the entry in the semantic table to be used. The > value of each key will already have been entered into this table. > > The keys containing markup in the semantic files are then applied to the > parse tree, and a similar attribute is added to the matching nodes, > unnless it is already present because it has been added by an XPath > expression. > > This forms the DOM of the document. > > This DOM is then used to display the document on the screen. > > Editing can then take place. If the contents of a text node are altered > the new contents replace the old. If an element node is deleted its > entire subtree is deleted. If a new block of characters is created the > user is prompted to asign it a style and a node with the appropriate > markup is added to the document at the place where the new block was > created. > > The file will already have been rendered by liblouisutdml and the > Braille displayed in the Braille window. If the user is authorized to > edit Braille, any editing is highlighted in both the Braille and print > windows. > > When the file is saved the parse tree is massaged to move any > edited Braille into the print document with proper markup, to > remove all UTDML and to remove the attribute which is used for > the DOM> Editing in the print window is handled > automatically as part of the conversion of the parse tree to a file. > > -- > John J. Boyer; President, Chief Software Developer > Abilitiessoft, Inc. > http://www.abilitiessoft.com > Madison, Wisconsin USA > Developing software for people with disabilities > >