Version 2.9 candidate
Marc Liyanage [Tue, 2 Sep 2003 13:33:43 +0000 (13:33 +0000)]
git-svn-id: svn+ssh://www.entropy.ch/Users/liyanage/Documents/svnroot/trunk/TestXSLT@56 153f8dbc-cef0-0310-8e0e-ba1d6c9f8c6b

31 files changed:
Distribution/readme.xml
DragDestinationTextView.m
English.lproj/Credits.rtf
English.lproj/InfoPlist.strings
English.lproj/MainMenu.nib/classes.nib
English.lproj/MainMenu.nib/info.nib
English.lproj/MainMenu.nib/objects.nib
English.lproj/MyDocument.nib/classes.nib
English.lproj/MyDocument.nib/info.nib
English.lproj/MyDocument.nib/keyedobjects.nib
FOPWrapper.java
JAXPWrapper.java
MyDocument.h
MyDocument.m
TestXSLT.pbproj/liyanage.pbxuser
TestXSLT.pbproj/project.pbxproj
Workset.h
Workset.m
XMLParserLibxml.h
XMLParserLibxml.m
XMLTextView.h
XMLTextView.m
XSLTProcessor.h
XSLTProcessor.m
XSLTProcessorJAXPBase.h
XSLTProcessorJAXPBase.m
XSLTProcessorLibxslt.m
XSLTProcessorSablotron.m
XSL_FO_Renderer.h
XSL_FO_Renderer.m
todo.txt

index a44da34..3b51ece 100644 (file)
@@ -33,6 +33,14 @@ Mac OS X 10.2., Safari 1.0 must be installed on your system.
 <history>
 
 <entry>
+       <version>2.9</version>
+       <date>xx-SEP-2003</date>
+       <item>Added a tag scanner, resulting in much smarter tag completion, and a list of the currently open tags at the top of the editor.</item>
+       <item>Major internal cleanup regarding encodings. If a dropped/opened file has an XML declaration with encoding information, that will be used, both when reading and when saving out to the file again. Make sure you activate the corresponding option in BBEdit too. If no such declaration exists, the platform default will be used (i.e. Macintosh encoding). Also, the encoding of the result of the transformation is currently assumed to be what's declared in the declaration of the XSLT code. This means you cannot use a different encoding in the xsl:output element.</item>
+
+</entry>
+
+<entry>
        <version>2.8</version>
        <date>17-AUG-2003</date>
        <item>Embedded the FOP XSL-FO rendering engine from the Apache Project. This means that you can now view the result of a translation which produces XSL-FO instructions directly in the application. You can also save the output as a PDF file. With this addition, TestXSLT is now a useful learning tool for the XSL-FO language.</item>
index bb38510..da3a835 100644 (file)
@@ -45,7 +45,7 @@
 
        
        /* some code to handle the case where a user drags the mouse around an edge of the
-        * text field, triggering an autoscroll. If we don't do anything, our highlight rame
+        * text field, triggering an autoscroll. If we don't do anything, our highlight frame
         * would get scrolled along with the content and then redrawn immediately which
         * obviously looks messy.
         * Instead we check if the visible rectangle has moved since the last
index f15ed31..83a1a6d 100644 (file)
@@ -1,5 +1,6 @@
 {\rtf1\mac\ansicpg10000\cocoartf102
-{\fonttbl\f0\fswiss\fcharset77 Helvetica-Bold;\f1\fswiss\fcharset77 Helvetica;}
+{\fonttbl\f0\fswiss\fcharset77 Helvetica-Bold;\f1\fswiss\fcharset77 Helvetica;\f2\fswiss\fcharset77 ArialMT;
+}
 {\colortbl;\red255\green255\blue255;}
 \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
 
@@ -58,10 +59,29 @@ Engineering:
        http://xml.apache.org/fop/\
 \
 
-\f0\b With special thanks to:
+\f0\b Ragel State Machine Compiler:
 \f1\b0 \
-       Aaron Hillegass for the great Cocoa book\
+       
+\f2 (A great piece of software!)\
+       Adrian Thurston\
+       http://www.essemage.com/ragel/
+\f1 \
+\
+
+\f0\b With special thanks to:\
+\
+
+\f1\b0         All developers on the projects\
+       mentioned above.\
+       \
+       All Mac OS X engineers and designers\
+       for creating this great OS.\
+       \
+       Aaron Hillegass for the Cocoa book\
+       \
+       The readers of \
        macosx-dev@omnigroup.com\
+       \
        Everyone who sent feedback\
 \
 }
\ No newline at end of file
index 41ead18..2cc80a7 100644 (file)
Binary files a/English.lproj/InfoPlist.strings and b/English.lproj/InfoPlist.strings differ
index 5179bce..0b118aa 100644 (file)
@@ -16,6 +16,7 @@
                 showFindPanel = id; 
                 showJumpToLinePanel = id; 
                 showUnsavedChangesPanel = id; 
+                toggleContentAnalysis = id; 
                 useSelectionForFind = id; 
             }; 
             CLASS = FirstResponder; 
index 6f4c404..55cd777 100644 (file)
@@ -7,15 +7,15 @@
        <key>IBEditorPositions</key>
        <dict>
                <key>29</key>
-               <string>338 733 277 44 0 0 1280 832 </string>
+               <string>338 734 277 44 0 0 1280 832 </string>
        </dict>
        <key>IBFramework Version</key>
-       <string>291.0</string>
+       <string>347.0</string>
        <key>IBOpenObjects</key>
        <array>
                <integer>29</integer>
        </array>
        <key>IBSystem Version</key>
-       <string>6L14</string>
+       <string>7B49</string>
 </dict>
 </plist>
index becb865..bdaf29f 100644 (file)
Binary files a/English.lproj/MainMenu.nib/objects.nib and b/English.lproj/MainMenu.nib/objects.nib differ
index f908e4e..e8affbc 100644 (file)
                 saveXsltButton = NSButton; 
                 saveXsltFilenameField = NSTextField; 
                 tabView = NSTabView; 
+                xmlTagStackField = NSTextField; 
                 xmlView = XMLTextView; 
                 xmlWellFormedIcon = NSImageView; 
+                xsltTagStackField = NSTextField; 
                 xsltView = XMLTextView; 
                 xsltWellFormedIcon = NSImageView; 
             }; 
index 4c9d290..e003636 100644 (file)
                <string>439 467 401 208 0 0 1280 832 </string>
        </dict>
        <key>IBFramework Version</key>
-       <string>340.0</string>
+       <string>347.0</string>
        <key>IBOpenObjects</key>
        <array>
                <integer>154</integer>
                <integer>5</integer>
        </array>
        <key>IBSystem Version</key>
-       <string>7B39</string>
+       <string>7B49</string>
 </dict>
 </plist>
index 58c9032..32e6c22 100644 (file)
Binary files a/English.lproj/MyDocument.nib/keyedobjects.nib and b/English.lproj/MyDocument.nib/keyedobjects.nib differ
index 9a97769..ffe2e90 100644 (file)
@@ -23,7 +23,7 @@ public class FOPWrapper {
     String error;
     boolean errorOccurred = false;
        
-       public NSData convert(String foString) throws IOException, FOPException {
+       public NSData convert(NSData foData) throws IOException, FOPException {
         
                //Construct driver
                Driver driver = new Driver();
@@ -42,7 +42,7 @@ public class FOPWrapper {
                        driver.setOutputStream(out);
                        
                        //Setup input
-                       InputStream in = new java.io.ByteArrayInputStream(foString.getBytes("UTF-8"));
+                       InputStream in = new java.io.ByteArrayInputStream(foData.bytes(0, foData.length()));
                        try {
                                driver.setInputSource(new InputSource(in));
                                
index 2d46497..782a17f 100644 (file)
@@ -16,6 +16,7 @@ import javax.xml.transform.stream.*;
 import javax.xml.*;
 import javax.xml.parsers.*;
 import org.xml.sax.*;
+import com.apple.cocoa.foundation.*;
 
 /**
  * JAXPWrapper is a helper class to make it easier to access JAXP transformers
@@ -26,7 +27,7 @@ import org.xml.sax.*;
  */
 public class JAXPWrapper {
        
-       StringWriter resultWriter;
+       ByteArrayOutputStream bos;
        Exception transformException;
        String errorMessage = "(no errors)";
        int errorSource = 0;
@@ -35,13 +36,8 @@ public class JAXPWrapper {
        public static final int XSLT_ERROR_SOURCE_XML = 1;
        public static final int XSLT_ERROR_SOURCE_XSLT = 2;
 
-       
-       
-       
-       public String getResult() {
-
-               return resultWriter.toString();
-               
+       public NSData getResult() {
+               return new NSData(bos.toByteArray());
        }
        
        /** 
@@ -54,7 +50,7 @@ public class JAXPWrapper {
         * @return        <code>true</code> if something,  
         *                <code>false</code> otherwise.
         */
-       public boolean transform(String processorClassName, String xml, String xslt, String parameters, String baseUri) {
+       public boolean transform(String processorClassName, NSData xml, NSData xslt, String parameters, String baseUri) {
 
                java.lang.System.setProperty("javax.xml.transform.TransformerFactory", processorClassName);
                
@@ -63,7 +59,7 @@ public class JAXPWrapper {
                try {
                        
                        TransformerFactory tf = TransformerFactory.newInstance();
-                       Transformer t = tf.newTransformer(new StreamSource(new StringReader(xslt), baseUri));
+                       Transformer t = tf.newTransformer(new StreamSource(new ByteArrayInputStream(xslt.bytes(0, xslt.length())), baseUri));
 
                        
                        if (parameters.length() > 0) {
@@ -95,8 +91,8 @@ public class JAXPWrapper {
                                }
                        }
                        
-                       resultWriter = new StringWriter();
-                       t.transform(new StreamSource(new StringReader(xml)), new StreamResult(resultWriter));
+                       bos = new ByteArrayOutputStream();
+                       t.transform(new StreamSource(new ByteArrayInputStream(xml.bytes(0, xml.length()))), new StreamResult(bos));
 
                } catch (TransformerConfigurationException e) {
                        
@@ -191,7 +187,7 @@ public class JAXPWrapper {
                String xml = "<?xml version='1.0'?>\n\n\n\n<root/>";
                String xslt = "<?xml version='1.0' encoding='iso-8859-1'?>\n<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'><xsl:param name='param1' select=\"'wrong1'\"/><xsl:param name='param2' select=\"'wrong2'\"/><xsl:template match='/'>-<xsl:value-of select='$param1'/>--<xsl:value-of select='$param2'/>-</xsl:template></xsl:stylesheet>";
                String parameters = "param1==_=!=_==right1--_-!-_--param2==_=!=_==right2";
-               ref.transform(processorImpl, xml, xslt, parameters, null);
+               ref.transform(processorImpl, new NSData(xml.getBytes()), new NSData(xslt.getBytes()), parameters, null);
                System.out.println(ref.getResult());
                System.out.println("source: " + ref.getErrorSource() + " line: " + ref.getErrorLine() + " msg: " + ref.getErrorMessage());
 
@@ -199,39 +195,39 @@ public class JAXPWrapper {
                xml = "<?xml version='1.0'?>\n\n\n\n<root/>";
                xslt = "<?xml version='1.0' encoding='iso-8859-1'?>\n<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'><xsl:param name='param1' select=\"'wrong1'\"/><xsl:param name='param2' select=\"'wrong2'\"/><xsl:template match='/'>-<xsl:value-of select='$param1'/>--<xsl:value-of select='$param2'/>-</xsl:template></xsl:stylesheet>";
                parameters = "";
-               ref.transform(processorImpl, xml, xslt, parameters, null);
+               ref.transform(processorImpl, new NSData(xml.getBytes()), new NSData(xslt.getBytes()), parameters, null);
                System.out.println(ref.getResult());
                System.out.println("source: " + ref.getErrorSource() + " line: " + ref.getErrorLine() + " msg: " + ref.getErrorMessage());
                
                System.out.println("\nsystem-property() test\n");
                xml = "<?xml version='1.0'?>\n\n\n<root/>";
                xslt = "<?xml version='1.0' encoding='iso-8859-1'?>\n<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'><xsl:template match='/'>vendor: <xsl:value-of select=\"system-property('xsl:vendor')\"/></xsl:template></xsl:stylesheet>";
-               ref.transform(processorImpl, xml, xslt, parameters, null);
+               ref.transform(processorImpl, new NSData(xml.getBytes()), new NSData(xslt.getBytes()), parameters, null);
                System.out.println(ref.getResult());
                System.out.println("source: " + ref.getErrorSource() + " line: " + ref.getErrorLine() + " msg: " + ref.getErrorMessage());
                
                System.out.println("\nBroken XML Test\n");
                xml = "<?xml version='1.0'?>\n\n\n<root>\n\n\n</xyz>";
                xslt = "<?xml version='1.0' encoding='iso-8859-1'?>\n<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'><xsl:template match='/'>match!</xsl:template></xsl:stylesheet>";
-               ref.transform(processorImpl, xml, xslt, parameters, null);
+               ref.transform(processorImpl, new NSData(xml.getBytes()), new NSData(xslt.getBytes()), parameters, null);
                System.out.println("source: " + ref.getErrorSource() + " line: " + ref.getErrorLine() + " msg: " + ref.getErrorMessage());
                
                System.out.println("\nBroken XSLT Test\n");
                xml = "<?xml version='1.0'?>\n<root/>";
                xslt = "<?xml version='1.0' encoding='iso-8859-1'?>\n<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'><xsl:template match='/'>match!</xsl:template></xsl:xyz>";
-               ref.transform(processorImpl, xml, xslt, parameters, null);
+               ref.transform(processorImpl, new NSData(xml.getBytes()), new NSData(xslt.getBytes()), parameters, null);
                System.out.println("source: " + ref.getErrorSource() + " line: " + ref.getErrorLine() + " msg: " + ref.getErrorMessage());
                
                System.out.println("\nBroken XML and XSLT Test\n");
                xml = "<?xml version='1.0'?>\n<root></xyz>";
                xslt = "<?xml version='1.0' encoding='iso-8859-1'?>\n<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'><xsl:template match='/'>match!</xsl:template></xsl:xyz>";
-               ref.transform(processorImpl, xml, xslt, parameters, null);
+               ref.transform(processorImpl, new NSData(xml.getBytes()), new NSData(xslt.getBytes()), parameters, null);
                System.out.println("source: " + ref.getErrorSource() + " line: " + ref.getErrorLine() + " msg: " + ref.getErrorMessage());
                
                System.out.println("\nBroken XML and XSLT Test 2\n");
                xml = "<?xml version='1.0'?>\n<root></xyz>";
                xslt = "<?xml version='1.0' encoding='iso-8859-1'?>\n\n<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>\n\n\n<xsl:value-of select='1'/>\n\n\n<xsl:template match='/'>match!</xsl:template>\n\n\n</xsl:stylesheet>";
-               ref.transform(processorImpl, xml, xslt, parameters, null);
+               ref.transform(processorImpl, new NSData(xml.getBytes()), new NSData(xslt.getBytes()), parameters, null);
                System.out.println("source: " + ref.getErrorSource() + " line: " + ref.getErrorLine() + " msg: " + ref.getErrorMessage());
 
                
index e42728a..ec73dc5 100644 (file)
@@ -12,6 +12,7 @@
 #import <WebKit/WebKit.h>
 #include <sys/time.h>
 
+#import "XMLUtils.h"
 #import "Workset.h"
 #import "ParameterSet.h"
 #import "XSLTProcessorFactory.h"
@@ -83,6 +84,9 @@ enum {
        IBOutlet NSButton *pdfNextPageButton;
        IBOutlet NSButton *pdfSaveAsButton;
 
+       IBOutlet NSTextField *xmlTagStackField;
+       IBOutlet NSTextField *xsltTagStackField;
+
        IBOutlet NSTextField *drawerMessageField;
        NSData *pdfData;
 
@@ -106,7 +110,6 @@ enum {
 
 - (BOOL)showUnsavedChangesPanel;
 
-- (void)updateWellFormedIcons;
 - (void)updateCompleteUI;
 - (void)updateUI;
 - (void)doUpdateUI;
@@ -144,7 +147,6 @@ enum {
 // Drag and Drop for our custom NSTextView subclass
 - (BOOL)handleDroppedFile:(NSString *)filename forTextView:(NSTextView *)sender;
 
-
 - (IBAction)process:(id)sender;
 - (IBAction)loadXml:(id)sender;
 - (IBAction)loadXslt:(id)sender;
index 1009142..79493c5 100644 (file)
 
 }
 
+- (void)textViewDidChangeSelection:(NSNotification *)aNotification {
+       [self updateUI];
+}
+
 
 - (void)tabView:(NSTabView *)tabView didSelectTabViewItem:(NSTabViewItem *)tabViewItem {
 
-       NSLog(@"switch tab xyz x");
        [[self undoManager] removeAllActions];
 
-       if ([[tabViewItem identifier] isEqualToString:@"htmlResult"]) {
-               [self resizeWebView];
-               [self updateResultWebView];
-       } else if ([[tabViewItem identifier] isEqualToString:@"xslfoResult"]) {
-               [self updateResultImageView];
-       }
-       
+       [self doUpdateUI];
 }
 
 
        [uiUpdateTimer invalidate];
        [uiUpdateTimer release];
 
-       uiUpdateTimer = [NSTimer scheduledTimerWithTimeInterval:0.5 target:self selector:@selector(uiUpdateTimerTarget:) userInfo:nil repeats:NO];
+       uiUpdateTimer = [NSTimer scheduledTimerWithTimeInterval:0.2 target:self selector:@selector(uiUpdateTimerTarget:) userInfo:nil repeats:NO];
 
        [uiUpdateTimer retain];
 
 
 - (void)doUpdateUI {
 
-//     NSLog(@"doUpdateUI running...");
-//     NSLog(@"debug: %@", [[[NSApp mainWindow] document] tabView]);
-
-
-       [saveXmlAsButton setEnabled:[workset hasXmlCode]];
-       [saveXsltAsButton setEnabled:[workset hasXsltCode]];
-       [saveResultAsButton setEnabled:[workset hasResult]];
-
-       [saveResultButton setEnabled:[workset hasResultFilename] && resultDirty];
-       [autoSaveCheckbox setEnabled:[workset hasResultFilename]];
-
-       [openResultURLButton setEnabled:[workset hasResultFilename]];
-       [autoShowCheckbox setEnabled:[openResultURLButton isEnabled]];
-
-       [paramRemoveButton setEnabled:[parameterTable selectedRow] != -1];
-
-       [processButton setEnabled:[self canProcessNow]];
-
-       [saveResultFilenameField setObjectValue:[workset resultFilename]];
-       [saveResultFilenameField setToolTip:[workset resultFilename]];
-
-
-       [saveXmlFilenameField setObjectValue:[workset xmlFilename]];
-       [saveXmlFilenameField setToolTip:[workset xmlFilename]];
-       [saveXmlButton setEnabled:[workset hasXmlFilename] && xmlDirty];
+       NSString *activeTabIdentifier = [[tabView selectedTabViewItem] identifier];
+       NSString *activeResultTabIdentifier = [[resultTabView selectedTabViewItem] identifier];
 
+       BOOL xmlTabIsVisible = [activeTabIdentifier isEqualToString:@"xmlTab"];
+       BOOL xsltTabIsVisible = !xmlTabIsVisible && [activeTabIdentifier isEqualToString:@"xsltTab"];
+       BOOL paramTabIsVisible = !(xmlTabIsVisible || xsltTabIsVisible) && [activeTabIdentifier isEqualToString:@"parametersTab"];
+       BOOL resultTabIsVisible = !(xmlTabIsVisible || xsltTabIsVisible || paramTabIsVisible);
+       BOOL resultTabHtmlIsVisible = resultTabIsVisible && [activeResultTabIdentifier isEqualToString:@"htmlResult"];
+       BOOL resultTabXslfoIsVisible = resultTabIsVisible && !resultTabHtmlIsVisible && [activeResultTabIdentifier isEqualToString:@"xslfoResult"];
+       BOOL resultTabTextIsVisible = resultTabIsVisible && !(resultTabHtmlIsVisible || resultTabXslfoIsVisible);
        
-       [saveXsltFilenameField setObjectValue:[workset xsltFilename]];
-       [saveXsltFilenameField setToolTip:[workset xsltFilename]];
-       [saveXsltButton setEnabled:[workset hasXsltFilename] && xsltDirty];
-
-       [self updateWellFormedIcons];
+//     NSLog(@"xml: %d, xslt: %d, param: %d, result: %d, reshtml: %d, resxslfo: %d, restext: %d", xmlTabIsVisible, xsltTabIsVisible, paramTabIsVisible, resultTabIsVisible, resultTabHtmlIsVisible, resultTabXslfoIsVisible, resultTabTextIsVisible);
        
-       [parameterTable reloadData];
-
+       if (xmlTabIsVisible) {
+               [saveXmlFilenameField setObjectValue:[workset xmlFilename]];
+               [saveXmlFilenameField setToolTip:[workset xmlFilename]];
+               [saveXmlButton setEnabled:[workset hasXmlFilename] && xmlDirty];
+               [saveXmlAsButton setEnabled:[workset hasXmlCode]];
+               [xmlTagStackField setStringValue:[xmlView calculateTagStack]];
        
-       [resultView setString:[workset result]];
-
-       if ([[[resultTabView selectedTabViewItem] identifier] isEqualToString:@"htmlResult"]) {
-               [self updateResultWebView];
-       } else if ([[[resultTabView selectedTabViewItem] identifier] isEqualToString:@"xslfoResult"]) {
-               [self updateResultImageView];
+               [xmlView checkWellFormed];
+               if ([workset hasXmlCode] && [xmlView hasError]) {
+                       [xmlWellFormedIcon setImage:warningIcon];
+                       [xmlWellFormedIcon setToolTip:[xmlView valueForKey:@"errorString"]];
+               } else {
+                       [xmlWellFormedIcon setImage:nil];
+                       [xmlWellFormedIcon setToolTip:nil];
+               }
+       
+       } else if (xsltTabIsVisible) {
+               [saveXsltFilenameField setObjectValue:[workset xsltFilename]];
+               [saveXsltFilenameField setToolTip:[workset xsltFilename]];
+               [saveXsltButton setEnabled:[workset hasXsltFilename] && xsltDirty];
+               [saveXsltAsButton setEnabled:[workset hasXsltCode]];
+               [xsltTagStackField setStringValue:[xsltView calculateTagStack]];
+
+               [xsltView checkWellFormed];
+               if ([workset hasXsltCode] && [xsltView hasError]) {
+                       [xsltWellFormedIcon setImage:warningIcon];
+                       [xsltWellFormedIcon setToolTip:[xsltView valueForKey:@"errorString"]];
+               } else {
+                       [xsltWellFormedIcon setImage:nil];
+                       [xsltWellFormedIcon setToolTip:nil];
+               }
+
+       } else if (paramTabIsVisible) {
+               [paramRemoveButton setEnabled:[parameterTable selectedRow] != -1];
+               [parameterTable reloadData];
+       } else if (resultTabIsVisible) {
+               [saveResultAsButton setEnabled:[workset hasResult]];
+               [saveResultButton setEnabled:[workset hasResultFilename] && resultDirty];
+               [autoSaveCheckbox setEnabled:[workset hasResultFilename]];
+               [openResultURLButton setEnabled:[workset hasResultFilename]];
+               [autoShowCheckbox setEnabled:[openResultURLButton isEnabled]];
+               [saveResultFilenameField setObjectValue:[workset resultFilename]];
+               [saveResultFilenameField setToolTip:[workset resultFilename]];
+
+               if (resultTabHtmlIsVisible) {
+                       [self resizeWebView];
+                       [self updateResultWebView];
+               } else if (resultTabXslfoIsVisible) {
+                       [self updateResultImageView];
+                       [pdfCurrentPageField setIntValue: (pdfPageCount ? (pdfCurrentPage + 1) : 0)];
+                       [pdfPageCountField setIntValue:pdfPageCount];
+                       
+                       [pdfPreviousPageButton setEnabled:pdfCurrentPage > 0];
+                       [pdfNextPageButton setEnabled:pdfCurrentPage < (pdfPageCount - 1)];
+                       [pdfSaveAsButton setEnabled:(pdfPageCount > 0)];
+//             } else if (resultTabTextIsVisible) {
+                       
+               }
        }
        
-       [pdfCurrentPageField setIntValue: (pdfPageCount ? (pdfCurrentPage + 1) : 0)];
-       [pdfPageCountField setIntValue:pdfPageCount];
+
+       [processButton setEnabled:[self canProcessNow]];
        
-       [pdfPreviousPageButton setEnabled:pdfCurrentPage > 0];
-       [pdfNextPageButton setEnabled:pdfCurrentPage < (pdfPageCount - 1)];
-       [pdfSaveAsButton setEnabled:(pdfPageCount > 0)];
+       // move this to xmlview.
+//     [self updateWellFormedIcons];
+       
+
        
+       [resultView setString:[workset stringResult]];
        
 }
 
 - (void)updateResultWebView {
        if (!webViewUpToDate) {
                WebFrame *mainFrame = [resultWebView mainFrame];
-               [mainFrame loadHTMLString:[workset result] baseURL:nil];
+               [mainFrame loadHTMLString:[workset stringResult] baseURL:nil];
                webViewUpToDate = YES;
        }
 }
 }
 
 
-- (void)updateWellFormedIcons {
-
-       if (![workset hasXmlCode] || [wellFormedParser checkWellFormedString:[workset xmlCode]]) {
-               [xmlWellFormedIcon setImage:nil];
-               [xmlWellFormedIcon setToolTip:nil];
-       } else {
-               [xmlWellFormedIcon setImage:warningIcon];
-               [xmlWellFormedIcon setToolTip:[NSString stringWithFormat:@"The XML code is not well-formed, error at line %d:\n%@", [wellFormedParser errorLine], [wellFormedParser errorMessage]]];
-       }
-
-
-       if (![workset hasXsltCode] || [wellFormedParser checkWellFormedString:[workset xsltCode]]) {
-               [xsltWellFormedIcon setImage:nil];
-               [xsltWellFormedIcon setToolTip:nil];
-       } else {
-               [xsltWellFormedIcon setImage:warningIcon];
-               [xsltWellFormedIcon setToolTip:[NSString stringWithFormat:@"The XSLT code is not well-formed, error at line %d:\n%@", [wellFormedParser errorLine], [wellFormedParser errorMessage]]];
-       }
-
-       
-}
-
 
 - (BOOL)canProcessNow {
 
                case 16:        // Jump to Line
                        return [self canJumpToLineNow];
                        break;
-
+                       
+                       
                default:
                        return YES;
                        break;
        
 }
 
-
-
 - (void)textDidChange:(NSNotification *)aNotification {
 
        id sender = [aNotification object];
                [processor setBaseUri:[NSString stringWithFormat:@"file://%@", [workset xsltFilename]]];
        }
 
-       if (![processor processStrings:[workset xmlCode] withXslt:[workset xsltCode] andParameters:params]) {
+       if (![processor processStrings:[XMLUtils getDataWithEncodingFromString:[workset xmlCode]] withXslt:[XMLUtils getDataWithEncodingFromString:[workset xsltCode]] andParameters:params]) {
 
                [drawerMessageField setStringValue:[NSString stringWithFormat:@"Error on line %d of your %@ code:\n%@", [processor errorLine], ([processor errorSource] == XSLT_ERROR_SOURCE_XML ? @"XML" : @"XSLT"), [processor errorMessage]]];
 
                processingTime = ((tend.tv_sec * 1000000 + tend.tv_usec) - (tstart.tv_sec * 1000000 + tstart.tv_usec)) / 1000;
                
                [workset setResult:[processor result]];
+               [workset setResultEncoding:[processor resultEncoding]];
                resultDirty = YES;
                [self autoSave];
                [errorDrawer close];
 
                //      NSLog(@"choosen: %@", [[panel filenames] objectAtIndex:0]);
 
-               [workset setXmlCode:[NSString stringWithContentsOfFile:[[panel filenames] objectAtIndex:0]]];
+               [workset setXmlCode:[XMLUtils getStringWithEncodingFromFile:[[panel filenames] objectAtIndex:0]]];
                [workset setXmlFilename:[[panel filenames] objectAtIndex:0]];
                [self updateChangeCount:NSChangeDone];
                [self updateCompleteUI];
 
                //      NSLog(@"choosen: %@", [[panel filenames] objectAtIndex:0]);
 
-               [workset setXsltCode:[NSString stringWithContentsOfFile:[[panel filenames] objectAtIndex:0]]];
+               [workset setXsltCode:[XMLUtils getStringWithEncodingFromFile:[[panel filenames] objectAtIndex:0]]];
                [workset setXsltFilename:[[panel filenames] objectAtIndex:0]];
                [self updateChangeCount:NSChangeDone];
                [self updateCompleteUI];
@@ -739,8 +745,6 @@ objectValueForTableColumn:(NSTableColumn *)aTableColumn
 
        [self switchProcessorToType:newType updateUI:NO];
 
-       NSLog(@"change processor type menu: %d", [sender tag]);
-
 }
 
 
@@ -852,14 +856,9 @@ objectValueForTableColumn:(NSTableColumn *)aTableColumn
 
 - (BOOL)handleDroppedFile:(NSString *)filename forTextView:(NSTextView *)sender {
 
-       
-       NSString *fileContents = [NSString stringWithContentsOfFile:filename];
+       NSString *fileContents = [XMLUtils getStringWithEncodingFromFile:filename];
 
-       if (fileContents == nil) {
-               return NO;
-       }
-
-       if ([sender isEqual:xmlView]) {
+       if ([sender isEqual: xmlView]) {
 
                [self setXmlcode:fileContents];
                [workset setXmlFilename:filename];
@@ -881,6 +880,8 @@ objectValueForTableColumn:(NSTableColumn *)aTableColumn
 }
 
 
+
+
 - (NSString *)xmlcode {
        return [workset xmlCode];
 }
@@ -917,7 +918,7 @@ objectValueForTableColumn:(NSTableColumn *)aTableColumn
 
 
 - (NSString *)result {
-       return [workset result];
+       return [workset stringResult];
 }
 
 
@@ -997,8 +998,8 @@ objectValueForTableColumn:(NSTableColumn *)aTableColumn
        
        //[resultImageView setNeedsDisplay:YES];
 
-       NSLog(@"image reps: -%@-", [pdfImage representations]);
-       NSLog(@"count: -%d-", [[[pdfImage representations] objectAtIndex:0] pageCount]);
+       //NSLog(@"image reps: -%@-", [pdfImage representations]);
+       //NSLog(@"count: -%d-", [[[pdfImage representations] objectAtIndex:0] pageCount]);
        
        pdfPageCount = [[[pdfImage representations] objectAtIndex:0] pageCount];
        pdfCurrentPage = 0;
@@ -1078,45 +1079,33 @@ objectValueForTableColumn:(NSTableColumn *)aTableColumn
 
 - (void)windowControllerDidLoadNib:(NSWindowController *) aController
 {
-       NSFont *computerFont = [resultView font];
+
        
-       NSLog(@"resultview: ", resultView);
-       NSLog(@"font: ", computerFont);
                
        NSSize errorDrawerSize;
 
        [super windowControllerDidLoadNib:aController];
-
+               
        [resultImageView setImageAlignment:NSImageAlignTopLeft];
-//     [resultImageView setImageFrameStyle:NSImageFrameGroove];
+       //      [resultImageView setImageFrameStyle:NSImageFrameGroove];
        [resultImageView setImageScaling:NSScaleNone];
        [resultImageView setEditable:NO];
+               
+       
        
-
-       // Add any code here that need to be executed once the windowController has loaded the document's window.
-
-       // register our two input text views to receive file drags
-       //
-//     [xmlView registerForDraggedTypes:[NSArray arrayWithObjects:NSFilenamesPboardType, nil]];
-//     [xsltView registerForDraggedTypes:[NSArray arrayWithObjects:NSFilenamesPboardType, nil]];
-
-/*
-       [xmlView setFont:computerFont];
-       [xsltView setFont:computerFont];
-*/
-       [xmlView setAllowsUndo:YES];
-       [xsltView setAllowsUndo:YES];
-
        [resultWebView setTextSizeMultiplier:0.9];
        
        warningIcon = [xmlWellFormedIcon image];
        
        [self updateCompleteUI];
-
+       
        errorDrawerSize = [errorDrawer contentSize];
        errorDrawerSize.height = 130;
        [errorDrawer setContentSize:errorDrawerSize];
+       
 
+       
+       
        if (findPanelController == nil) {
                findPanelController = [[FindPanelController alloc] initWithWindowNibName:@"FindPanel"];
 //             NSLog(@"init find panel controller: %@", findPanelController);
@@ -1138,7 +1127,6 @@ objectValueForTableColumn:(NSTableColumn *)aTableColumn
 }
 
 
-
 - (IBAction)showErrorLocation:(id)sender {
 
        XMLTextView *textView;
index 50ed654..7de244d 100644 (file)
@@ -2,19 +2,92 @@
 {
        089C1660FE840EACC02AAC07 = {
                uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {824, 569}}";
-                       sepNavSelRange = "{162, 0}";
-                       sepNavVisRect = "{{0, 0}, {824, 569}}";
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 405}}";
+                       sepNavSelRange = "{248, 0}";
+                       sepNavVisRect = "{{0, 0}, {828, 405}}";
+               };
+       };
+       1B02A8AC04FFD5E400D27002 = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 448}}";
+                       sepNavSelRange = "{321, 0}";
+                       sepNavVisRect = "{{0, 0}, {828, 405}}";
+                       sepNavWindowFrame = "{{277, 132}, {750, 558}}";
+               };
+       };
+       1B02A8B304FFD5F700D27002 = {
+               activeExec = 0;
+               executables = (
+                       1B02A8B504FFD5F700D27002,
+               );
+       };
+       1B02A8B504FFD5F700D27002 = {
+               activeArgIndex = 2147483647;
+               activeArgIndices = (
+               );
+               argumentStrings = (
+               );
+               configStateDict = {
+               };
+               debuggerPlugin = GDBDebugging;
+               dylibVariantSuffix = "";
+               enableDebugStr = 1;
+               environmentEntries = (
+               );
+               isa = PBXExecutable;
+               name = "ragel-xmlscanner";
+               shlibInfoDictList = (
+               );
+               sourceDirectories = (
+               );
+       };
+       1B09090F042BE88C00A8A905 = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {871, 153538}}";
+                       sepNavSelRange = "{256694, 0}";
+                       sepNavVisRect = "{{0, 126282}, {871, 235}}";
+               };
+       };
+       1B0911E0042BE89100A8A905 = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 40306}}";
+                       sepNavSelRange = "{62950, 5}";
+                       sepNavVisRect = "{{0, 34287}, {828, 405}}";
                };
        };
        1B09FDE9042BE4B600A8A905 = {
                activeExec = 0;
        };
+       1B17499B04FEB2BE00E5CBC3 = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {709, 980}}";
+                       sepNavSelRange = "{886, 0}";
+                       sepNavVisRect = "{{0, 364}, {709, 443}}";
+                       sepNavWindowFrame = "{{193, 205}, {996, 596}}";
+               };
+       };
+       1B17499C04FEB2BE00E5CBC3 = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {871, 6496}}";
+                       sepNavSelRange = "{6569, 0}";
+                       sepNavVisRect = "{{0, 3407}, {871, 235}}";
+                       sepNavWindowFrame = "{{251, 69}, {750, 558}}";
+               };
+       };
+       1B1749C304FEB65B00E5CBC3 = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 12782}}";
+                       sepNavSelRange = "{5891, 34}";
+                       sepNavVisRect = "{{0, 2353}, {828, 405}}";
+                       sepNavWindowFrame = "{{102, 222}, {918, 595}}";
+               };
+       };
        1B23468404DEB06C0050A2ED = {
                uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {824, 3696}}";
-                       sepNavSelRange = "{0, 0}";
-                       sepNavVisRect = "{{0, 0}, {824, 569}}";
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 3668}}";
+                       sepNavSelRange = "{5123, 0}";
+                       sepNavVisRect = "{{0, 2549}, {828, 405}}";
+                       sepNavWindowFrame = "{{68, 165}, {1098, 572}}";
                };
        };
        1B2B18A3042DEBC500000103 = {
                sourceDirectories = (
                );
        };
-       1B2ED8FD04F36AD700F3CA80 = {
-               fRef = F7641DAF02FFB2FA01A8A905;
+       1B387DAE0503FD030064611D = {
+               fileReference = F786D09402FB227701000103;
+               isa = PBXFileBreakpoint;
+               lineNumber = 15;
+               state = 1;
+       };
+       1B387DB50503FDF50064611D = {
+               fileReference = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXFileBreakpoint;
+               lineNumber = 1084;
+               state = 1;
+       };
+       1B387DC60504118D0064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
                isa = PBXTextBookmark;
-               name = "readme.xml: 41";
+               name = "MyDocument.m: 211";
                rLen = 0;
-               rLoc = 2280;
+               rLoc = 5946;
                rType = 0;
-               vrLen = 1891;
-               vrLoc = 1117;
+               vrLen = 971;
+               vrLoc = 5373;
        };
-       1B2ED8FE04F36AD700F3CA80 = {
-               fRef = 089C1660FE840EACC02AAC07;
+       1B387DC70504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 22";
+               rLen = 86;
+               rLoc = 610;
+               rType = 0;
+               vrLen = 591;
+               vrLoc = 149;
+       };
+       1B387DC80504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 216";
+               rLen = 25;
+               rLoc = 2962;
+               rType = 0;
+               vrLen = 544;
+               vrLoc = 2818;
+       };
+       1B387DC90504118D0064611D = {
+               fRef = F786D09302FB227701000103;
                isa = PBXTextBookmark;
-               name = "English: 5";
+               name = "XMLTextView.h: 16";
                rLen = 0;
-               rLoc = 162;
+               rLoc = 354;
                rType = 0;
-               vrLen = 307;
-               vrLoc = 0;
+               vrLen = 610;
+               vrLoc = 149;
+       };
+       1B387DCA0504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 15";
+               rLen = 0;
+               rLoc = 209;
+               rType = 0;
+               vrLen = 369;
+               vrLoc = 149;
+       };
+       1B387DCB0504118D0064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 207";
+               rLen = 0;
+               rLoc = 5946;
+               rType = 0;
+               vrLen = 972;
+               vrLoc = 5373;
+       };
+       1B387DCC0504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 15";
+               rLen = 0;
+               rLoc = 209;
+               rType = 0;
+               vrLen = 366;
+               vrLoc = 152;
+       };
+       1B387DCD0504118D0064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 210";
+               rLen = 0;
+               rLoc = 5946;
+               rType = 0;
+               vrLen = 995;
+               vrLoc = 5378;
+       };
+       1B387DCE0504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 24";
+               rLen = 0;
+               rLoc = 209;
+               rType = 0;
+               vrLen = 431;
+               vrLoc = 152;
+       };
+       1B387DCF0504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 16";
+               rLen = 0;
+               rLoc = 354;
+               rType = 0;
+               vrLen = 610;
+               vrLoc = 149;
+       };
+       1B387DD00504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 24";
+               rLen = 0;
+               rLoc = 209;
+               rType = 0;
+               vrLen = 431;
+               vrLoc = 152;
+       };
+       1B387DD10504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 16";
+               rLen = 0;
+               rLoc = 354;
+               rType = 0;
+               vrLen = 610;
+               vrLoc = 149;
+       };
+       1B387DD20504118D0064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 1102";
+               rLen = 0;
+               rLoc = 23178;
+               rType = 0;
+               vrLen = 897;
+               vrLoc = 23895;
+       };
+       1B387DD40504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 23";
+               rLen = 0;
+               rLoc = 209;
+               rType = 0;
+               vrLen = 418;
+               vrLoc = 178;
+       };
+       1B387DD50504118D0064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 210";
+               rLen = 0;
+               rLoc = 5946;
+               rType = 0;
+               vrLen = 851;
+               vrLoc = 5256;
+       };
+       1B387DD60504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 211";
+               rLen = 23;
+               rLoc = 2939;
+               rType = 0;
+               vrLen = 774;
+               vrLoc = 3428;
+       };
+       1B387DD70504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 16";
+               rLen = 0;
+               rLoc = 354;
+               rType = 0;
+               vrLen = 610;
+               vrLoc = 149;
+       };
+       1B387DD80504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 224";
+               rLen = 0;
+               rLoc = 4447;
+               rType = 0;
+               vrLen = 713;
+               vrLoc = 3416;
+       };
+       1B387DD90504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 16";
+               rLen = 0;
+               rLoc = 354;
+               rType = 0;
+               vrLen = 610;
+               vrLoc = 149;
+       };
+       1B387DDA0504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 227";
+               rLen = 0;
+               rLoc = 4448;
+               rType = 0;
+               vrLen = 770;
+               vrLoc = 3419;
+       };
+       1B387DDB0504118D0064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 210";
+               rLen = 0;
+               rLoc = 5946;
+               rType = 0;
+               vrLen = 1021;
+               vrLoc = 5322;
+       };
+       1B387DDC0504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 227";
+               rLen = 0;
+               rLoc = 4445;
+               rType = 0;
+               vrLen = 742;
+               vrLoc = 3419;
+       };
+       1B387DDD0504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 24";
+               rLen = 0;
+               rLoc = 641;
+               rType = 0;
+               vrLen = 637;
+               vrLoc = 187;
+       };
+       1B387DDE0504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 23";
+               rLen = 0;
+               rLoc = 1271;
+               rType = 0;
+               vrLen = 415;
+               vrLoc = 3;
+       };
+       1B387DDF0504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 30";
+               rLen = 0;
+               rLoc = 717;
+               rType = 0;
+               vrLen = 654;
+               vrLoc = 187;
+       };
+       1B387DE00504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 26";
+               rLen = 0;
+               rLoc = 1271;
+               rType = 0;
+               vrLen = 339;
+               vrLoc = 178;
+       };
+       1B387DE10504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 30";
+               rLen = 0;
+               rLoc = 717;
+               rType = 0;
+               vrLen = 688;
+               vrLoc = 153;
+       };
+       1B387DE20504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 27";
+               rLen = 0;
+               rLoc = 1271;
+               rType = 0;
+               vrLen = 341;
+               vrLoc = 178;
+       };
+       1B387DE30504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 30";
+               rLen = 0;
+               rLoc = 717;
+               rType = 0;
+               vrLen = 687;
+               vrLoc = 153;
+       };
+       1B387DE40504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 240";
+               rLen = 0;
+               rLoc = 4357;
+               rType = 0;
+               vrLen = 565;
+               vrLoc = 4031;
+       };
+       1B387DE50504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 30";
+               rLen = 0;
+               rLoc = 717;
+               rType = 0;
+               vrLen = 585;
+               vrLoc = 263;
+       };
+       1B387DE60504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 41";
+               rLen = 0;
+               rLoc = 1271;
+               rType = 0;
+               vrLen = 492;
+               vrLoc = 371;
+       };
+       1B387DE70504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 38";
+               rLen = 0;
+               rLoc = 1117;
+               rType = 0;
+               vrLen = 661;
+               vrLoc = 263;
+       };
+       1B387DE80504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 32";
+               rLen = 0;
+               rLoc = 1271;
+               rType = 0;
+               vrLen = 415;
+               vrLoc = 283;
+       };
+       1B387DE90504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 39";
+               rLen = 0;
+               rLoc = 1136;
+               rType = 0;
+               vrLen = 679;
+               vrLoc = 263;
+       };
+       1B387DEA0504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 156";
+               rLen = 0;
+               rLoc = 2403;
+               rType = 0;
+               vrLen = 617;
+               vrLoc = 3290;
+       };
+       1B387DEB0504118D0064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 170";
+               rLen = 0;
+               rLoc = 4896;
+               rType = 0;
+               vrLen = 1173;
+               vrLoc = 3419;
        };
-       1B2ED8FF04F36AD700F3CA80 = {
-               fRef = F7BEF93602D6273601F46A01;
+       1B387DEC0504118D0064611D = {
+               fRef = F786D09402FB227701000103;
                isa = PBXTextBookmark;
-               name = "English: 150";
+               name = "XMLTextView.m: 205";
                rLen = 0;
-               rLoc = 4421;
+               rLoc = 4398;
+               rType = 0;
+               vrLen = 697;
+               vrLoc = 3093;
+       };
+       1B387DED0504118D0064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 202";
+               rLen = 0;
+               rLoc = 5946;
+               rType = 0;
+               vrLen = 1328;
+               vrLoc = 3648;
+       };
+       1B387DEE0504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 211";
+               rLen = 0;
+               rLoc = 4446;
+               rType = 0;
+               vrLen = 505;
+               vrLoc = 3650;
+       };
+       1B387DEF0504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 30";
+               rLen = 17;
+               rLoc = 701;
+               rType = 0;
+               vrLen = 696;
+               vrLoc = 263;
+       };
+       1B387DF00504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 41";
+               rLen = 0;
+               rLoc = 1271;
+               rType = 0;
+               vrLen = 437;
+               vrLoc = 370;
+       };
+       1B387DF10504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 30";
+               rLen = 17;
+               rLoc = 701;
+               rType = 0;
+               vrLen = 696;
+               vrLoc = 263;
+       };
+       1B387DF20504118D0064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 146";
+               rLen = 0;
+               rLoc = 3732;
+               rType = 0;
+               vrLen = 1312;
+               vrLoc = 2924;
+       };
+       1B387DF30504118D0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 200";
+               rLen = 0;
+               rLoc = 2987;
+               rType = 0;
+               vrLen = 738;
+               vrLoc = 3026;
+       };
+       1B387DF40504118D0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 30";
+               rLen = 17;
+               rLoc = 701;
                rType = 0;
-               vrLen = 1044;
-               vrLoc = 3919;
+               vrLen = 696;
+               vrLoc = 263;
        };
-       1B2ED90004F36AD700F3CA80 = {
+       1B387DFE050414590064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 178";
+               rLen = 1;
+               rLoc = 3188;
+               rType = 0;
+               vrLen = 685;
+               vrLoc = 2692;
+       };
+       1B387DFF050414590064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 1088";
+               rLen = 0;
+               rLoc = 23100;
+               rType = 0;
+               vrLen = 795;
+               vrLoc = 23132;
+       };
+       1B387E5D050415590064611D = {
+               fileReference = F786D09402FB227701000103;
+               isa = PBXFileBreakpoint;
+               lineNumber = 28;
+               state = 1;
+       };
+       1B387E68050416FA0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 29";
+               rLen = 0;
+               rLoc = 602;
+               rType = 0;
+               vrLen = 614;
+               vrLoc = 209;
+       };
+       1B387E69050416FA0064611D = {
+               fRef = 2A37F4AEFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.h: 113";
+               rLen = 0;
+               rLoc = 2912;
+               rType = 0;
+               vrLen = 816;
+               vrLoc = 2528;
+       };
+       1B387E6A050416FA0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 27";
+               rLen = 0;
+               rLoc = 597;
+               rType = 0;
+               vrLen = 615;
+               vrLoc = 209;
+       };
+       1B387E6B050416FA0064611D = {
                fRef = 2A37F4AEFDCFA73011CA2CEA;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: 40";
+               name = "MyDocument.h: 113";
                rLen = 0;
-               rLoc = 749;
+               rLoc = 2912;
                rType = 0;
-               vrLen = 1181;
-               vrLoc = 1725;
+               vrLen = 817;
+               vrLoc = 2527;
        };
-       1B2ED90104F36AD700F3CA80 = {
+       1B387E6C050416FA0064611D = {
                fRef = 2A37F4ACFDCFA73011CA2CEA;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 842";
+               name = "MyDocument.m: 136";
                rLen = 0;
-               rLoc = 17410;
+               rLoc = 2788;
                rType = 0;
-               vrLen = 1137;
-               vrLoc = 16457;
+               vrLen = 1732;
+               vrLoc = 1906;
        };
-       1B2ED90204F36AD700F3CA80 = {
-               fRef = F7641DAF02FFB2FA01A8A905;
+       1B387E6D050416FA0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 214";
+               rLen = 18;
+               rLoc = 3894;
+               rType = 0;
+               vrLen = 389;
+               vrLoc = 3788;
+       };
+       1B387E6E050416FA0064611D = {
+               fRef = F786D09302FB227701000103;
                isa = PBXTextBookmark;
-               name = "readme.xml: 41";
+               name = "XMLTextView.h: 35";
+               rLen = 17;
+               rLoc = 701;
+               rType = 0;
+               vrLen = 696;
+               vrLoc = 263;
+       };
+       1B387E6F050416FA0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 214";
+               rLen = 18;
+               rLoc = 3894;
+               rType = 0;
+               vrLen = 389;
+               vrLoc = 3788;
+       };
+       1B387E70050416FA0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 30";
+               rLen = 0;
+               rLoc = 549;
+               rType = 0;
+               vrLen = 696;
+               vrLoc = 263;
+       };
+       1B387E71050416FA0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 214";
+               rLen = 18;
+               rLoc = 3894;
+               rType = 0;
+               vrLen = 389;
+               vrLoc = 3788;
+       };
+       1B387E72050416FA0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 30";
+               rLen = 0;
+               rLoc = 549;
+               rType = 0;
+               vrLen = 696;
+               vrLoc = 263;
+       };
+       1B387E73050416FA0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 214";
+               rLen = 18;
+               rLoc = 3894;
+               rType = 0;
+               vrLen = 389;
+               vrLoc = 3788;
+       };
+       1B387E74050416FA0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 30";
+               rLen = 17;
+               rLoc = 543;
+               rType = 0;
+               vrLen = 696;
+               vrLoc = 263;
+       };
+       1B387E75050416FA0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 301";
+               rLen = 0;
+               rLoc = 5376;
+               rType = 0;
+               vrLen = 716;
+               vrLoc = 5288;
+       };
+       1B387E76050416FA0064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 37";
+               rLen = 0;
+               rLoc = 765;
+               rType = 0;
+               vrLen = 628;
+               vrLoc = 263;
+       };
+       1B387E77050416FA0064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 337";
+               rLen = 5;
+               rLoc = 6157;
+               rType = 0;
+               vrLen = 519;
+               vrLoc = 5676;
+       };
+       1B387E830504B7E80064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 37";
+               rLen = 0;
+               rLoc = 765;
+               rType = 0;
+               vrLen = 628;
+               vrLoc = 263;
+       };
+       1B387E840504B7E80064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 185";
+               rLen = 5;
+               rLoc = 3241;
+               rType = 0;
+               vrLen = 790;
+               vrLoc = 2963;
+       };
+       1B387E860504B7E80064611D = {
+               fRef = F739177802FCAAF401000103;
+               isa = PBXTextBookmark;
+               name = "todo.txt: 22";
+               rLen = 0;
+               rLoc = 404;
+               rType = 0;
+               vrLen = 1125;
+               vrLoc = 298;
+       };
+       1B387E880504B7E80064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 1002";
+               rLen = 5;
+               rLoc = 21719;
+               rType = 0;
+               vrLen = 780;
+               vrLoc = 21286;
+       };
+       1B387E890504B7E80064611D = {
+               fRef = F786D09302FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.h: 37";
+               rLen = 0;
+               rLoc = 765;
+               rType = 0;
+               vrLen = 628;
+               vrLoc = 263;
+       };
+       1B387E8A0504B7E80064611D = {
+               fRef = F786D09402FB227701000103;
+               isa = PBXTextBookmark;
+               name = "XMLTextView.m: 185";
+               rLen = 5;
+               rLoc = 3241;
+               rType = 0;
+               vrLen = 790;
+               vrLoc = 2963;
+       };
+       1B387E8B0504B7E80064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 292";
+               rLen = 0;
+               rLoc = 6863;
+               rType = 0;
+               vrLen = 480;
+               vrLoc = 6741;
+       };
+       1B387E8C0504B7E80064611D = {
+               fRef = 2A37F4AEFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.h: 106";
+               rLen = 0;
+               rLoc = 2760;
+               rType = 0;
+               vrLen = 813;
+               vrLoc = 2527;
+       };
+       1B387E8D0504B7E80064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 265";
+               rLen = 0;
+               rLoc = 6632;
+               rType = 0;
+               vrLen = 337;
+               vrLoc = 6391;
+       };
+       1B387E8E0504B7E80064611D = {
+               fRef = F739177802FCAAF401000103;
+               isa = PBXTextBookmark;
+               name = "todo.txt: 22";
+               rLen = 0;
+               rLoc = 404;
+               rType = 0;
+               vrLen = 1125;
+               vrLoc = 298;
+       };
+       1B387E940504B9E70064611D = {
+               expectedFileType = text.html;
+               isa = PBXFileReference;
+               name = index.html;
+               path = "/Users/liyanage/cvs/entropy/TestXSLT/TestXSLT Help/index.html";
+               refType = 0;
+               sourceTree = "<absolute>";
+       };
+       1B387E9A0504BA770064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 1166";
+               rLen = 5;
+               rLoc = 25673;
+               rType = 0;
+               vrLen = 752;
+               vrLoc = 24926;
+       };
+       1B387E9B0504BA770064611D = {
+               fRef = 2A37F4BAFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "English: 52";
+               rLen = 0;
+               rLoc = 801;
+               rType = 0;
+               vrLen = 487;
+               vrLoc = 0;
+       };
+       1B387E9C0504BA770064611D = {
+               fRef = 2A37F4AEFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.h: 106";
                rLen = 0;
-               rLoc = 2280;
+               rLoc = 2760;
                rType = 0;
-               vrLen = 1891;
-               vrLoc = 1117;
+               vrLen = 950;
+               vrLoc = 1577;
        };
-       1B2ED90304F36AD700F3CA80 = {
+       1B387E9D0504BA770064611D = {
                fRef = 089C1660FE840EACC02AAC07;
                isa = PBXTextBookmark;
-               name = "English: 5";
+               name = "English: 6";
                rLen = 0;
-               rLoc = 162;
+               rLoc = 248;
                rType = 0;
-               vrLen = 307;
+               vrLen = 312;
                vrLoc = 0;
        };
-       1B2ED90404F36AD700F3CA80 = {
-               fRef = F7BEF93602D6273601F46A01;
+       1B387E9E0504BA770064611D = {
+               fRef = 1B387E940504B9E70064611D;
+               isa = PBXBookmark;
+       };
+       1B387E9F0504BA770064611D = {
+               fRef = 2A37F4ACFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "MyDocument.m: 1166";
+               rLen = 5;
+               rLoc = 25673;
+               rType = 0;
+               vrLen = 752;
+               vrLoc = 24926;
+       };
+       1B387EA00504BA770064611D = {
+               fRef = 2A37F4BAFDCFA73011CA2CEA;
                isa = PBXTextBookmark;
-               name = "English: 150";
+               name = "English: 52";
                rLen = 0;
-               rLoc = 4421;
+               rLoc = 801;
                rType = 0;
-               vrLen = 1044;
-               vrLoc = 3919;
+               vrLen = 487;
+               vrLoc = 0;
        };
-       1B2ED90504F36AD700F3CA80 = {
+       1B387EA10504BA770064611D = {
                fRef = 2A37F4AEFDCFA73011CA2CEA;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: 40";
+               name = "MyDocument.h: 106";
                rLen = 0;
-               rLoc = 749;
+               rLoc = 2760;
                rType = 0;
-               vrLen = 1181;
-               vrLoc = 1725;
+               vrLen = 950;
+               vrLoc = 1577;
        };
-       1B2ED90604F36AD700F3CA80 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B387EA20504BA770064611D = {
+               fRef = 089C1660FE840EACC02AAC07;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 842";
+               name = "English: 6";
                rLen = 0;
-               rLoc = 17410;
+               rLoc = 248;
                rType = 0;
-               vrLen = 1137;
-               vrLoc = 16457;
+               vrLen = 312;
+               vrLoc = 0;
        };
-       1B2ED90704F36AD700F3CA80 = {
+       1B387EA30504BA770064611D = {
+               fRef = 1B387EA40504BA7A0064611D;
+               isa = PBXTextBookmark;
+               name = "(null): 15";
+               rLen = 0;
+               rLoc = 518;
+               rType = 0;
+               vrLen = 1001;
+               vrLoc = 0;
+       };
+       1B387EA40504BA7A0064611D = {
+               isa = PBXFileReference;
+               name = index.html;
+               path = "/Users/liyanage/cvs/entropy/TestXSLT/TestXSLT Help/index.html";
+               refType = 0;
+               sourceTree = "<absolute>";
+       };
+       1B387EA50504BBD10064611D = {
+               fRef = 1B387EA90504BBD60064611D;
+               isa = PBXTextBookmark;
+               name = "(null): 15";
+               rLen = 0;
+               rLoc = 518;
+               rType = 0;
+               vrLen = 1001;
+               vrLoc = 0;
+       };
+       1B387EA60504BBD10064611D = {
+               fRef = 1B387EAA0504BBD60064611D;
+               isa = PBXTextBookmark;
+               name = "(null): 15";
+               rLen = 0;
+               rLoc = 518;
+               rType = 0;
+               vrLen = 1001;
+               vrLoc = 0;
+       };
+       1B387EA70504BBD10064611D = {
+               fRef = 2A37F4BAFDCFA73011CA2CEA;
+               isa = PBXTextBookmark;
+               name = "English: 52";
+               rLen = 0;
+               rLoc = 801;
+               rType = 0;
+               vrLen = 487;
+               vrLoc = 0;
+       };
+       1B387EA80504BBD10064611D = {
                fRef = 2A37F4BAFDCFA73011CA2CEA;
                isa = PBXTextBookmark;
-               name = "English: 30";
+               name = "English: 52";
                rLen = 0;
-               rLoc = 418;
+               rLoc = 801;
                rType = 0;
-               vrLen = 609;
+               vrLen = 487;
                vrLoc = 0;
        };
+       1B387EA90504BBD60064611D = {
+               isa = PBXFileReference;
+               name = index.html;
+               path = "/Users/liyanage/cvs/entropy/TestXSLT/TestXSLT Help/index.html";
+               refType = 0;
+               sourceTree = "<absolute>";
+       };
+       1B387EAA0504BBD60064611D = {
+               isa = PBXFileReference;
+               name = index.html;
+               path = "/Users/liyanage/cvs/entropy/TestXSLT/TestXSLT Help/index.html";
+               refType = 0;
+               sourceTree = "<absolute>";
+       };
+       1B3BC83B0436364A006C8631 = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {740, 431}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {740, 431}}";
+               };
+       };
        1B3BC92604365914006C8631 = {
                uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {703, 493}}";
+                       sepNavIntBoundsRect = "{{0, 0}, {740, 431}}";
                        sepNavSelRange = "{0, 0}";
-                       sepNavVisRect = "{{0, 0}, {703, 493}}";
+                       sepNavVisRect = "{{0, 0}, {740, 431}}";
+               };
+       };
+       1B3BC92B04365B9B006C8631 = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 405}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {828, 405}}";
+                       sepNavWindowFrame = "{{61, 227}, {750, 558}}";
                };
        };
        1B45862E04C14DA30097AE1B = {
                activeExec = 0;
        };
-       1B58426204323C33004404A5 = {
-               fileReference = F7D20D1602F9AB3B01000103;
-               isa = PBXFileBreakpoint;
-               lineNumber = 160;
-               state = 1;
-       };
        1B58426704323E07004404A5 = {
                activeExec = 0;
                executables = (
        };
        1B5E2EF904F102EA00F043CD = {
                uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {680, 504}}";
-                       sepNavSelRange = "{327, 327}";
-                       sepNavVisRect = "{{0, 0}, {680, 493}}";
+                       sepNavIntBoundsRect = "{{0, 0}, {1012, 490}}";
+                       sepNavSelRange = "{517, 0}";
+                       sepNavVisRect = "{{0, 40}, {1012, 436}}";
+                       sepNavWindowFrame = "{{98, 251}, {1053, 551}}";
                };
        };
        1B5E2EFA04F102EA00F043CD = {
                uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {680, 1064}}";
-                       sepNavSelRange = "{808, 84}";
-                       sepNavVisRect = "{{0, 341}, {680, 493}}";
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 1008}}";
+                       sepNavSelRange = "{888, 106}";
+                       sepNavVisRect = "{{0, 428}, {828, 405}}";
+                       sepNavWindowFrame = "{{61, 227}, {750, 558}}";
                };
        };
        1B5E2F1D04F1065100F043CD = {
                uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {891, 428}}";
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 405}}";
                        sepNavSelRange = "{162, 0}";
-                       sepNavVisRect = "{{0, 0}, {891, 428}}";
+                       sepNavVisRect = "{{0, 0}, {828, 405}}";
                };
        };
        1B5E2F1E04F1065100F043CD = {
                uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {891, 428}}";
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 420}}";
                        sepNavSelRange = "{404, 0}";
-                       sepNavVisRect = "{{0, 0}, {891, 428}}";
+                       sepNavVisRect = "{{0, 8}, {828, 405}}";
                };
        };
        1B60A82C04DBDD3600ADF3F9 = {
        };
        1B6AEEBE0493442600000102 = {
                uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {680, 493}}";
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 405}}";
                        sepNavSelRange = "{262, 0}";
-                       sepNavVisRect = "{{0, 0}, {680, 493}}";
+                       sepNavVisRect = "{{0, 0}, {828, 405}}";
                };
        };
        1B6AEEBF0493442600000102 = {
                uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {680, 493}}";
-                       sepNavSelRange = "{160, 228}";
-                       sepNavVisRect = "{{0, 0}, {680, 493}}";
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 434}}";
+                       sepNavSelRange = "{190, 0}";
+                       sepNavVisRect = "{{0, 22}, {828, 405}}";
+               };
+       };
+       1B6AEEC80493DF6900000102 = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {828, 714}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {828, 405}}";
                };
        };
        1B6E0ABE0427362A00A8A905 = {
        1B6E173B0427C41500A8A905 = {
                activeExec = 0;
        };
+       1B6E18240427C5C700A8A905 = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {871, 80584}}";
+                       sepNavSelRange = "{43734, 0}";
+                       sepNavVisRect = "{{0, 20961}, {871, 235}}";
+               };
+       };
        1B6E187A0427CDD300A8A905 = {
                activeExec = 0;
        };
                indexTemplatePath = "";
                isa = PBXCodeSenseManager;
                usesDefaults = 1;
-               wantsCodeCompletion = 1;
+               wantsCodeCompletion = 0;
                wantsCodeCompletionAutoPopup = 1;
                wantsCodeCompletionAutoSuggestions = 1;
                wantsCodeCompletionCaseSensitivity = 0;
                wantsCodeCompletionParametersIncluded = 1;
                wantsCodeCompletionPlaceholdersInserted = 1;
                wantsCodeCompletionTabCompletes = 1;
-               wantsIndex = 1;
+               wantsIndex = 0;
        };
-       1BB569F404E3010E0099E21C = {
-               uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {824, 1512}}";
-                       sepNavSelRange = "{1297, 0}";
-                       sepNavVisRect = "{{0, 423}, {824, 569}}";
-                       sepNavWindowFrame = "{{107, 185}, {750, 558}}";
-               };
-       };
-       1BB9C17204C153A8006508EA = {
-               activeExec = 0;
-       };
-       1BC0D4EF04CD125A0079373A = {
-               activeExec = 0;
-       };
-       1BD041D30437188E0094B693 = {
-               activeExec = 0;
-       };
-       1BE7DD7504F2D60A00F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E474A05028B5A00A3FD82 = {
+               fRef = F7D29C2402D6439F013CD129;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 191";
+               name = "NSApplicationScriptingCategory.h: 1";
                rLen = 0;
-               rLoc = 4061;
+               rLoc = 0;
                rType = 0;
-               vrLen = 930;
-               vrLoc = 3722;
+               vrLen = 384;
+               vrLoc = 0;
        };
-       1BE7DD7604F2D60A00F2E041 = {
-               fRef = 1BB569F404E3010E0099E21C;
+       1B7E474E05028B5A00A3FD82 = {
+               fRef = F7641DAF02FFB2FA01A8A905;
                isa = PBXTextBookmark;
-               name = "FOPWrapper.java: convert";
+               name = "readme.xml: 39";
                rLen = 0;
-               rLoc = 1406;
+               rLoc = 2934;
                rType = 0;
-               vrLen = 813;
-               vrLoc = 1307;
+               vrLen = 1411;
+               vrLoc = 2081;
        };
-       1BE7DD7704F2D60A00F2E041 = {
-               fRef = 1BF7F12304F2BE74007723F5;
+       1B7E474F05028B5A00A3FD82 = {
+               fRef = 1B6AEEC80493DF6900000102;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.h: errorOccurred";
-               rLen = 13;
-               rLoc = 491;
+               name = "StringErrorListener.java: 1";
+               rLen = 0;
+               rLoc = 0;
                rType = 0;
-               vrLen = 554;
+               vrLen = 634;
                vrLoc = 0;
        };
-       1BE7DD9504F2E98700F2E041 = {
-               fRef = 1B23468404DEB06C0050A2ED;
+       1B7E475005028B5A00A3FD82 = {
+               fRef = F7D20D1902F9B5DF01000103;
                isa = PBXTextBookmark;
-               name = "JAXPWrapper.java: 1";
+               name = "XSLTProcessorLibxslt.h: 14";
                rLen = 0;
-               rLoc = 0;
+               rLoc = 271;
                rType = 0;
-               vrLen = 924;
+               vrLen = 722;
                vrLoc = 0;
        };
-       1BE7DD9604F2E98700F2E041 = {
-               fRef = 1BB569F404E3010E0099E21C;
+       1B7E475105028B5A00A3FD82 = {
+               fRef = F7D20D1502F9AB3B01000103;
                isa = PBXTextBookmark;
-               name = "FOPWrapper.java: convert";
+               name = "XSLTProcessorSablotron.h: 11";
                rLen = 0;
-               rLoc = 1297;
+               rLoc = 224;
                rType = 0;
-               vrLen = 888;
-               vrLoc = 727;
+               vrLen = 720;
+               vrLoc = 3;
        };
-       1BE7DD9704F2E98700F2E041 = {
-               fRef = 1BF7F12304F2BE74007723F5;
+       1B7E475205028B5A00A3FD82 = {
+               fRef = 1B5E2F1E04F1065100F043CD;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.h: errorOccurred";
-               rLen = 13;
-               rLoc = 491;
+               name = "XSLTProcessorXalan_J.m: 27";
+               rLen = 0;
+               rLoc = 404;
                rType = 0;
-               vrLen = 554;
+               vrLen = 411;
                vrLoc = 0;
        };
-       1BE7DD9804F2E98700F2E041 = {
-               fRef = 1BF7F12404F2BE74007723F5;
+       1B7E475305028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.m: 29";
+               name = "XSLTProcessorJAXPBase.h: getResult";
                rLen = 0;
-               rLoc = 532;
+               rLoc = 503;
                rType = 0;
-               vrLen = 540;
-               vrLoc = 0;
+               vrLen = 557;
+               vrLoc = 96;
        };
-       1BE7DD9D04F2E98700F2E041 = {
-               fRef = 1BF7F12404F2BE74007723F5;
+       1B7E475405028B5A00A3FD82 = {
+               fRef = 1B6AEEBF0493442600000102;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.m: 29";
+               name = "XSLTProcessorSaxon.m: 9";
                rLen = 0;
-               rLoc = 532;
+               rLoc = 190;
                rType = 0;
-               vrLen = 540;
+               vrLen = 385;
+               vrLoc = 3;
+       };
+       1B7E475505028B5A00A3FD82 = {
+               fRef = 1B5E2F1D04F1065100F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorXalan_J.h: 9";
+               rLen = 0;
+               rLoc = 162;
+               rType = 0;
+               vrLen = 267;
                vrLoc = 0;
        };
-       1BE7DD9E04F2E98700F2E041 = {
-               fRef = 1B23468404DEB06C0050A2ED;
+       1B7E475605028B5A00A3FD82 = {
+               fRef = 1B6AEEBE0493442600000102;
                isa = PBXTextBookmark;
-               name = "JAXPWrapper.java: 1";
+               name = "XSLTProcessorSaxon.h: 18";
                rLen = 0;
-               rLoc = 0;
+               rLoc = 262;
                rType = 0;
-               vrLen = 924;
+               vrLen = 266;
                vrLoc = 0;
        };
-       1BE7DD9F04F2E98700F2E041 = {
+       1B7E475805028B5A00A3FD82 = {
                fRef = 1BB569F404E3010E0099E21C;
                isa = PBXTextBookmark;
-               name = "FOPWrapper.java: convert";
+               name = "FOPWrapper.java: 45";
                rLen = 0;
-               rLoc = 1297;
+               rLoc = 1191;
                rType = 0;
-               vrLen = 888;
-               vrLoc = 727;
+               vrLen = 716;
+               vrLoc = 0;
+       };
+       1B7E475905028B5A00A3FD82 = {
+               fRef = 1BF7F12404F2BE74007723F5;
+               isa = PBXTextBookmark;
+               name = "XSL_FO_Renderer.m: render:";
+               rLen = 38;
+               rLoc = 221;
+               rType = 0;
+               vrLen = 496;
+               vrLoc = 38;
        };
-       1BE7DDA004F2E98700F2E041 = {
+       1B7E475A05028B5A00A3FD82 = {
                fRef = 1BF7F12304F2BE74007723F5;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.h: errorOccurred";
-               rLen = 13;
-               rLoc = 491;
+               name = "XSL_FO_Renderer.h: render:";
+               rLen = 0;
+               rLoc = 263;
                rType = 0;
-               vrLen = 554;
-               vrLoc = 0;
+               vrLen = 393;
+               vrLoc = 153;
        };
-       1BE7DDA104F2E98700F2E041 = {
-               fRef = 1BF7F12404F2BE74007723F5;
+       1B7E475B05028B5A00A3FD82 = {
+               fRef = F57C933B023A9A0701000103;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.m: 29";
+               name = "ParameterSet.m: 1";
                rLen = 0;
-               rLoc = 532;
+               rLoc = 0;
                rType = 0;
-               vrLen = 540;
+               vrLen = 430;
                vrLoc = 0;
        };
-       1BE7DDA204F2E98700F2E041 = {
-               fRef = 1BF7F12304F2BE74007723F5;
+       1B7E475F05028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.h: errorOccurred";
-               rLen = 13;
-               rLoc = 491;
+               name = "XSLTProcessor.h: resultEncoding";
+               rLen = 0;
+               rLoc = 584;
                rType = 0;
-               vrLen = 554;
-               vrLoc = 0;
+               vrLen = 718;
+               vrLoc = 441;
        };
-       1BE7DDA304F2E98700F2E041 = {
-               fRef = 1BF7F12404F2BE74007723F5;
+       1B7E476605028B5A00A3FD82 = {
+               fRef = F7D29C2402D6439F013CD129;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.m: 29";
+               name = "NSApplicationScriptingCategory.h: 1";
                rLen = 0;
-               rLoc = 532;
+               rLoc = 0;
                rType = 0;
-               vrLen = 540;
+               vrLen = 384;
                vrLoc = 0;
        };
-       1BE7DDA404F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E476A05028B5A00A3FD82 = {
+               fRef = 1B6AEEBE0493442600000102;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 191";
+               name = "XSLTProcessorSaxon.h: 18";
                rLen = 0;
-               rLoc = 4061;
+               rLoc = 262;
                rType = 0;
-               vrLen = 1161;
-               vrLoc = 3567;
+               vrLen = 266;
+               vrLoc = 0;
        };
-       1BE7DDA504F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E476B05028B5A00A3FD82 = {
+               fRef = 1B6AEEBF0493442600000102;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfPageCount";
+               name = "XSLTProcessorSaxon.m: 9";
                rLen = 0;
-               rLoc = 833;
+               rLoc = 190;
                rType = 0;
-               vrLen = 983;
-               vrLoc = 565;
+               vrLen = 360;
+               vrLoc = 28;
        };
-       1BE7DDA604F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E476C05028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 988";
+               name = "XSLTProcessor.m: 131";
                rLen = 0;
-               rLoc = 20774;
+               rLoc = 2091;
                rType = 0;
-               vrLen = 900;
-               vrLoc = 19433;
+               vrLen = 369;
+               vrLoc = 1218;
        };
-       1BE7DDA704F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E476E05028B5A00A3FD82 = {
+               fRef = F7D20D1502F9AB3B01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfPageCount";
+               name = "XSLTProcessorSablotron.h: 12";
                rLen = 0;
-               rLoc = 833;
+               rLoc = 224;
                rType = 0;
-               vrLen = 983;
-               vrLoc = 565;
+               vrLen = 754;
+               vrLoc = 3;
        };
-       1BE7DDA804F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E476F05028B5A00A3FD82 = {
+               fRef = F7641DAF02FFB2FA01A8A905;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 989";
+               name = "readme.xml: 39";
                rLen = 0;
-               rLoc = 20837;
+               rLoc = 2934;
                rType = 0;
-               vrLen = 1062;
-               vrLoc = 19438;
+               vrLen = 1411;
+               vrLoc = 2081;
        };
-       1BE7DDA904F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E477005028B5A00A3FD82 = {
+               fRef = F7D20D1502F9AB3B01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfPageCount";
+               name = "XSLTProcessorSablotron.h: 12";
                rLen = 0;
-               rLoc = 832;
+               rLoc = 224;
                rType = 0;
-               vrLen = 979;
-               vrLoc = 565;
+               vrLen = 749;
+               vrLoc = 3;
        };
-       1BE7DDAA04F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E477105028B5A00A3FD82 = {
+               fRef = F7D20D1A02F9B5DF01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 991";
+               name = "XSLTProcessorLibxslt.m: 99";
                rLen = 0;
-               rLoc = 20887;
+               rLoc = 2151;
                rType = 0;
-               vrLen = 946;
-               vrLoc = 19855;
+               vrLen = 701;
+               vrLoc = 1719;
        };
-       1BE7DDAB04F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E477205028B5A00A3FD82 = {
+               fRef = F7D20D1602F9AB3B01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfPageCount";
+               name = "XSLTProcessorSablotron.m: 126";
                rLen = 0;
-               rLoc = 832;
+               rLoc = 2152;
                rType = 0;
-               vrLen = 995;
-               vrLoc = 565;
+               vrLen = 668;
+               vrLoc = 1807;
        };
-       1BE7DDAC04F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E477305028B5A00A3FD82 = {
+               fRef = F7D20D1A02F9B5DF01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 993";
+               name = "XSLTProcessorLibxslt.m: 99";
                rLen = 0;
-               rLoc = 20985;
+               rLoc = 2151;
                rType = 0;
-               vrLen = 945;
-               vrLoc = 19855;
+               vrLen = 611;
+               vrLoc = 1809;
        };
-       1BE7DDAD04F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E477405028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorJAXPBase.h: 24";
+               rLen = 321;
+               rLoc = 327;
+               rType = 0;
+               vrLen = 496;
+               vrLoc = 159;
+       };
+       1B7E477505028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: NSButton";
+               name = "XSLTProcessorJAXPBase.h: 15";
                rLen = 0;
-               rLoc = 2110;
+               rLoc = 277;
                rType = 0;
-               vrLen = 1308;
-               vrLoc = 1447;
+               vrLen = 559;
+               vrLoc = 96;
        };
-       1BE7DDAE04F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E477605028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 993";
+               name = "XSLTProcessorJAXPBase.h: getResult";
                rLen = 0;
-               rLoc = 20985;
+               rLoc = 503;
                rType = 0;
-               vrLen = 945;
-               vrLoc = 19855;
+               vrLen = 491;
+               vrLoc = 162;
        };
-       1BE7DDAF04F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E477705028B5A00A3FD82 = {
+               fRef = 1B6AEEC80493DF6900000102;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfPreviousPage:";
-               rLen = 76;
-               rLoc = 4546;
+               name = "StringErrorListener.java: 1";
+               rLen = 0;
+               rLoc = 0;
                rType = 0;
-               vrLen = 1012;
-               vrLoc = 3758;
+               vrLen = 634;
+               vrLoc = 0;
        };
-       1BE7DDB004F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E477805028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 1000";
+               name = "XSLTProcessor.h: processStrings:withXslt:andParameters:";
                rLen = 0;
-               rLoc = 21073;
+               rLoc = 1008;
                rType = 0;
-               vrLen = 767;
-               vrLoc = 19913;
+               vrLen = 567;
+               vrLoc = 472;
        };
-       1BE7DDB104F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E477905028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfPreviousPage:";
-               rLen = 76;
-               rLoc = 4546;
+               name = "XSLTProcessor.m: processorType";
+               rLen = 7;
+               rLoc = 1937;
                rType = 0;
-               vrLen = 1331;
-               vrLoc = 748;
+               vrLen = 401;
+               vrLoc = 151;
        };
-       1BE7DDB204F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E477A05028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 1000";
+               name = "XSLTProcessor.h: setResult:";
                rLen = 0;
-               rLoc = 21073;
+               rLoc = 1212;
                rType = 0;
-               vrLen = 805;
-               vrLoc = 19913;
+               vrLen = 563;
+               vrLoc = 470;
        };
-       1BE7DDB304F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E477B05028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfPreviousPage:";
-               rLen = 76;
-               rLoc = 4546;
+               name = "XSLTProcessor.m: result";
+               rLen = 0;
+               rLoc = 871;
                rType = 0;
-               vrLen = 1331;
-               vrLoc = 748;
+               vrLen = 338;
+               vrLoc = 1250;
        };
-       1BE7DDB404F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E477C05028B5A00A3FD82 = {
+               fRef = F7D20D1502F9AB3B01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: uiUpdateTimerTarget:";
-               rLen = 19;
-               rLoc = 2007;
+               name = "XSLTProcessorSablotron.h: 11";
+               rLen = 0;
+               rLoc = 224;
                rType = 0;
-               vrLen = 1244;
-               vrLoc = 2557;
+               vrLen = 749;
+               vrLoc = 3;
        };
-       1BE7DDB504F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E477D05028B5A00A3FD82 = {
+               fRef = F7D20D1602F9AB3B01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfPreviousPage:";
-               rLen = 76;
-               rLoc = 4546;
+               name = "XSLTProcessorSablotron.m: 126";
+               rLen = 0;
+               rLoc = 2152;
                rType = 0;
-               vrLen = 1366;
-               vrLoc = 1284;
+               vrLen = 671;
+               vrLoc = 1804;
        };
-       1BE7DDB604F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E477E05028B5A00A3FD82 = {
+               fRef = F7D20D1502F9AB3B01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 166";
+               name = "XSLTProcessorSablotron.h: 11";
                rLen = 0;
-               rLoc = 3679;
+               rLoc = 224;
                rType = 0;
-               vrLen = 1414;
-               vrLoc = 2557;
+               vrLen = 712;
+               vrLoc = 45;
        };
-       1BE7DDB704F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E477F05028B5A00A3FD82 = {
+               fRef = F7D20D1602F9AB3B01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfPreviousPage:";
-               rLen = 76;
-               rLoc = 4546;
+               name = "XSLTProcessorSablotron.m: 121";
+               rLen = 83;
+               rLoc = 2152;
                rType = 0;
-               vrLen = 1432;
-               vrLoc = 995;
+               vrLen = 698;
+               vrLoc = 1810;
        };
-       1BE7DDB804F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E478005028B5A00A3FD82 = {
+               fRef = F7D20D1A02F9B5DF01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 167";
+               name = "XSLTProcessorLibxslt.m: 95";
                rLen = 0;
-               rLoc = 3683;
+               rLoc = 2150;
                rType = 0;
-               vrLen = 1239;
-               vrLoc = 2428;
+               vrLen = 587;
+               vrLoc = 1894;
        };
-       1BE7DDB904F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E478105028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfPreviousPage:";
-               rLen = 76;
-               rLoc = 4546;
+               name = "XSLTProcessor.h: setResult:";
+               rLen = 0;
+               rLoc = 1185;
                rType = 0;
-               vrLen = 1177;
-               vrLoc = 1992;
+               vrLen = 591;
+               vrLoc = 470;
        };
-       1BE7DDBA04F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E478205028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 175";
+               name = "XSLTProcessor.m: 90";
                rLen = 0;
-               rLoc = 3859;
+               rLoc = 1346;
                rType = 0;
-               vrLen = 1177;
-               vrLoc = 2931;
+               vrLen = 434;
+               vrLoc = 784;
        };
-       1BE7DDBB04F2E98700F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E478305028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: NSButton";
-               rLen = 21;
-               rLoc = 2099;
+               name = "XSLTProcessor.h: stringResult";
+               rLen = 28;
+               rLoc = 1159;
                rType = 0;
-               vrLen = 1412;
-               vrLoc = 995;
+               vrLen = 591;
+               vrLoc = 470;
        };
-       1BE7DDBC04F2E98700F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E478405028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 1023";
+               name = "XSLTProcessor.m: errorLine";
                rLen = 0;
-               rLoc = 21519;
+               rLoc = 1345;
                rType = 0;
-               vrLen = 836;
-               vrLoc = 20588;
+               vrLen = 450;
+               vrLoc = 825;
        };
-       1BE7DDDD04F367DA00F2E041 = {
-               fRef = 2A37F4BAFDCFA73011CA2CEA;
+       1B7E478505028B5A00A3FD82 = {
+               fRef = F7D20D1502F9AB3B01000103;
                isa = PBXTextBookmark;
-               name = "English: 1";
+               name = "XSLTProcessorSablotron.h: 11";
                rLen = 0;
-               rLoc = 0;
+               rLoc = 224;
+               rType = 0;
+               vrLen = 691;
+               vrLoc = 32;
+       };
+       1B7E478605028B5A00A3FD82 = {
+               fRef = F7D20D1902F9B5DF01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorLibxslt.h: 14";
+               rLen = 0;
+               rLoc = 271;
                rType = 0;
-               vrLen = 537;
+               vrLen = 722;
                vrLoc = 0;
        };
-       1BE7DDE104F367DA00F2E041 = {
-               fRef = F7641DAF02FFB2FA01A8A905;
+       1B7E478705028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "readme.xml: 42";
+               name = "XSLTProcessor.h: 11";
                rLen = 0;
-               rLoc = 2449;
+               rLoc = 223;
                rType = 0;
-               vrLen = 1871;
+               vrLen = 458;
                vrLoc = 0;
        };
-       1BE7DDE204F367DA00F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E478805028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfSaveAs:";
-               rLen = 34;
-               rLoc = 4622;
+               name = "XSLTProcessor.m: 84";
+               rLen = 0;
+               rLoc = 1239;
                rType = 0;
-               vrLen = 1046;
-               vrLoc = 3758;
+               vrLen = 303;
+               vrLoc = 653;
        };
-       1BE7DDE304F367DA00F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E478905028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 1038";
+               name = "XSLTProcessor.h: 50";
                rLen = 0;
-               rLoc = 21738;
+               rLoc = 950;
                rType = 0;
-               vrLen = 776;
-               vrLoc = 20862;
+               vrLen = 637;
+               vrLoc = 538;
        };
-       1BE7DDE404F367DA00F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E478A05028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfData";
+               name = "XSLTProcessor.m: 85";
                rLen = 0;
-               rLoc = 2258;
+               rLoc = 1239;
                rType = 0;
-               vrLen = 1202;
-               vrLoc = 1691;
+               vrLen = 431;
+               vrLoc = 804;
        };
-       1BE7DDE504F367DA00F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E478B05028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessor.h: 48";
+               rLen = 77;
+               rLoc = 823;
+               rType = 0;
+               vrLen = 637;
+               vrLoc = 538;
+       };
+       1B7E478C05028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 992";
+               name = "XSLTProcessor.m: 100";
                rLen = 0;
-               rLoc = 20344;
+               rLoc = 1344;
                rType = 0;
-               vrLen = 1001;
-               vrLoc = 20109;
+               vrLen = 367;
+               vrLoc = 992;
        };
-       1BE7DDE604F367DA00F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E478D05028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: pdfData";
+               name = "XSLTProcessor.h: setResult:";
                rLen = 0;
-               rLoc = 2258;
+               rLoc = 1208;
                rType = 0;
-               vrLen = 1202;
-               vrLoc = 1691;
+               vrLen = 616;
+               vrLoc = 559;
        };
-       1BE7DDE704F367DA00F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E478E05028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: uiUpdateTimerTarget:";
-               rLen = 19;
-               rLoc = 2007;
+               name = "XSLTProcessor.m: 104";
+               rLen = 0;
+               rLoc = 1471;
                rType = 0;
-               vrLen = 1078;
-               vrLoc = 1667;
+               vrLen = 431;
+               vrLoc = 992;
        };
-       1BE7DDE804F367DA00F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E478F05028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: 33";
-               rLen = 10;
-               rLoc = 626;
+               name = "XSLTProcessor.h: stringResult";
+               rLen = 28;
+               rLoc = 1159;
                rType = 0;
-               vrLen = 768;
-               vrLoc = 270;
+               vrLen = 637;
+               vrLoc = 538;
        };
-       1BE7DDE904F367DA00F2E041 = {
-               fRef = 2A37F4ACFDCFA73011CA2CEA;
+       1B7E479005028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.m: 994";
+               name = "XSLTProcessor.m: 90";
                rLen = 0;
-               rLoc = 20706;
+               rLoc = 1100;
                rType = 0;
-               vrLen = 1124;
-               vrLoc = 19978;
+               vrLen = 461;
+               vrLoc = 992;
        };
-       1BE7DDEA04F367DA00F2E041 = {
-               fRef = 2A37F4AEFDCFA73011CA2CEA;
+       1B7E479105028B5A00A3FD82 = {
+               fRef = F7D20D1602F9AB3B01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorSablotron.m: 122";
+               rLen = 44;
+               rLoc = 2235;
+               rType = 0;
+               vrLen = 664;
+               vrLoc = 2088;
+       };
+       1B7E479205028B5A00A3FD82 = {
+               fRef = F7D20D1A02F9B5DF01000103;
                isa = PBXTextBookmark;
-               name = "MyDocument.h: 40";
+               name = "XSLTProcessorLibxslt.m: 96";
                rLen = 0;
-               rLoc = 749;
+               rLoc = 2151;
                rType = 0;
-               vrLen = 1205;
-               vrLoc = 1725;
+               vrLen = 625;
+               vrLoc = 1894;
        };
-       1BF7F11704F2B781007723F5 = {
-               fRef = 1B3BC92604365914006C8631;
+       1B7E479305028B5A00A3FD82 = {
+               fRef = 1B6AEEBE0493442600000102;
                isa = PBXTextBookmark;
-               name = "AppDelegate.h: 1";
+               name = "XSLTProcessorSaxon.h: 18";
                rLen = 0;
-               rLoc = 0;
+               rLoc = 262;
                rType = 0;
-               vrLen = 316;
+               vrLen = 266;
                vrLoc = 0;
        };
-       1BF7F11904F2B781007723F5 = {
-               fRef = 1B3BC92604365914006C8631;
+       1B7E479405028B5A00A3FD82 = {
+               fRef = 1B6AEEBF0493442600000102;
                isa = PBXTextBookmark;
-               name = "AppDelegate.h: 1";
+               name = "XSLTProcessorSaxon.m: 9";
                rLen = 0;
-               rLoc = 0;
+               rLoc = 190;
+               rType = 0;
+               vrLen = 385;
+               vrLoc = 3;
+       };
+       1B7E479505028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessor.m: 90";
+               rLen = 0;
+               rLoc = 1100;
+               rType = 0;
+               vrLen = 479;
+               vrLoc = 974;
+       };
+       1B7E479605028B5A00A3FD82 = {
+               fRef = F7D20D1502F9AB3B01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorSablotron.h: 11";
+               rLen = 0;
+               rLoc = 224;
+               rType = 0;
+               vrLen = 720;
+               vrLoc = 3;
+       };
+       1B7E479705028B5A00A3FD82 = {
+               fRef = F7D20D1602F9AB3B01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorSablotron.m: 122";
+               rLen = 44;
+               rLoc = 2235;
+               rType = 0;
+               vrLen = 722;
+               vrLoc = 1706;
+       };
+       1B7E479805028B5A00A3FD82 = {
+               fRef = 1B6AEEBE0493442600000102;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorSaxon.h: 18";
+               rLen = 0;
+               rLoc = 262;
                rType = 0;
-               vrLen = 316;
+               vrLen = 266;
                vrLoc = 0;
        };
-       1BF7F12304F2BE74007723F5 = {
-               uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {824, 569}}";
-                       sepNavSelRange = "{491, 13}";
-                       sepNavVisRect = "{{0, 0}, {824, 569}}";
-               };
+       1B7E479905028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorJAXPBase.h: getResult";
+               rLen = 0;
+               rLoc = 503;
+               rType = 0;
+               vrLen = 494;
+               vrLoc = 159;
        };
-       1BF7F12404F2BE74007723F5 = {
-               uiCtxt = {
-                       sepNavIntBoundsRect = "{{0, 0}, {824, 569}}";
-                       sepNavSelRange = "{532, 0}";
-                       sepNavVisRect = "{{0, 0}, {824, 569}}";
-               };
+       1B7E479A05028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorJAXPBase.h: getResult";
+               rLen = 0;
+               rLoc = 503;
+               rType = 0;
+               vrLen = 491;
+               vrLoc = 162;
+       };
+       1B7E479B05028B5A00A3FD82 = {
+               fRef = 1B23468404DEB06C0050A2ED;
+               isa = PBXTextBookmark;
+               name = "JAXPWrapper.java: transform";
+               rLen = 0;
+               rLoc = 2568;
+               rType = 0;
+               vrLen = 1011;
+               vrLoc = 1047;
        };
-       1BF7F14704F2D090007723F5 = {
+       1B7E479C05028B5A00A3FD82 = {
+               fRef = 1B5E2F1D04F1065100F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorXalan_J.h: 9";
+               rLen = 0;
+               rLoc = 162;
+               rType = 0;
+               vrLen = 267;
+               vrLoc = 0;
+       };
+       1B7E479D05028B5A00A3FD82 = {
+               fRef = 1B5E2F1E04F1065100F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorXalan_J.m: 27";
+               rLen = 0;
+               rLoc = 404;
+               rType = 0;
+               vrLen = 408;
+               vrLoc = 3;
+       };
+       1B7E479E05028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorJAXPBase.h: getResult";
+               rLen = 0;
+               rLoc = 503;
+               rType = 0;
+               vrLen = 494;
+               vrLoc = 159;
+       };
+       1B7E479F05028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorJAXPBase.h: getResult";
+               rLen = 0;
+               rLoc = 503;
+               rType = 0;
+               vrLen = 491;
+               vrLoc = 162;
+       };
+       1B7E47A005028B5A00A3FD82 = {
                fRef = 1B6AEEBF0493442600000102;
                isa = PBXTextBookmark;
                name = "XSLTProcessorSaxon.m: 9";
-               rLen = 228;
-               rLoc = 160;
+               rLen = 0;
+               rLoc = 190;
                rType = 0;
-               vrLen = 388;
-               vrLoc = 0;
+               vrLen = 385;
+               vrLoc = 3;
        };
-       1BF7F14804F2D090007723F5 = {
+       1B7E47A105028B5A00A3FD82 = {
                fRef = 1B6AEEBE0493442600000102;
                isa = PBXTextBookmark;
                name = "XSLTProcessorSaxon.h: 18";
                vrLen = 266;
                vrLoc = 0;
        };
-       1BF7F14904F2D090007723F5 = {
-               fRef = F7D20D1A02F9B5DF01000103;
+       1B7E47A205028B5A00A3FD82 = {
+               fRef = 1B6AEEBF0493442600000102;
                isa = PBXTextBookmark;
-               name = "XSLTProcessorLibxslt.m: 1";
+               name = "XSLTProcessorSaxon.m: 9";
                rLen = 0;
-               rLoc = 0;
+               rLoc = 190;
                rType = 0;
-               vrLen = 886;
-               vrLoc = 318;
+               vrLen = 360;
+               vrLoc = 28;
        };
-       1BF7F14A04F2D090007723F5 = {
+       1B7E47A305028B5A00A3FD82 = {
                fRef = 1B5E2EF904F102EA00F043CD;
                isa = PBXTextBookmark;
-               name = "XSLTProcessorJAXPBase.h: 24";
-               rLen = 327;
-               rLoc = 327;
+               name = "XSLTProcessorJAXPBase.h: getResult";
+               rLen = 0;
+               rLoc = 503;
+               rType = 0;
+               vrLen = 494;
+               vrLoc = 159;
+       };
+       1B7E47A405028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorJAXPBase.h: getResult";
+               rLen = 0;
+               rLoc = 503;
+               rType = 0;
+               vrLen = 491;
+               vrLoc = 162;
+       };
+       1B7E47A505028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorJAXPBase.h: getResult";
+               rLen = 0;
+               rLoc = 503;
+               rType = 0;
+               vrLen = 491;
+               vrLoc = 162;
+       };
+       1B7E47A605028B5A00A3FD82 = {
+               fRef = 1B5E2F1E04F1065100F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorXalan_J.m: 27";
+               rLen = 0;
+               rLoc = 404;
                rType = 0;
-               vrLen = 655;
+               vrLen = 411;
                vrLoc = 0;
        };
-       1BF7F14B04F2D090007723F5 = {
+       1B7E47A705028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorJAXPBase.h: getResult";
+               rLen = 0;
+               rLoc = 503;
+               rType = 0;
+               vrLen = 494;
+               vrLoc = 159;
+       };
+       1B7E47A805028B5A00A3FD82 = {
+               fRef = 1B5E2EF904F102EA00F043CD;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorJAXPBase.h: getResult";
+               rLen = 0;
+               rLoc = 503;
+               rType = 0;
+               vrLen = 557;
+               vrLoc = 96;
+       };
+       1B7E47A905028B5A00A3FD82 = {
                fRef = 1B5E2EFA04F102EA00F043CD;
                isa = PBXTextBookmark;
-               name = "XSLTProcessorJAXPBase.m: 43";
-               rLen = 84;
-               rLoc = 808;
+               name = "XSLTProcessorJAXPBase.m: 47";
+               rLen = 0;
+               rLoc = 1040;
                rType = 0;
-               vrLen = 777;
-               vrLoc = 408;
+               vrLen = 748;
+               vrLoc = 473;
        };
-       1BF7F15404F2D090007723F5 = {
+       1B7E47AA05028B5A00A3FD82 = {
                fRef = 1B6AEEBF0493442600000102;
                isa = PBXTextBookmark;
                name = "XSLTProcessorSaxon.m: 9";
-               rLen = 228;
-               rLoc = 160;
+               rLen = 0;
+               rLoc = 190;
                rType = 0;
-               vrLen = 388;
-               vrLoc = 0;
+               vrLen = 385;
+               vrLoc = 3;
        };
-       1BF7F15504F2D090007723F5 = {
+       1B7E47AB05028B5A00A3FD82 = {
                fRef = 1B6AEEBE0493442600000102;
                isa = PBXTextBookmark;
                name = "XSLTProcessorSaxon.h: 18";
                vrLen = 266;
                vrLoc = 0;
        };
-       1BF7F15604F2D090007723F5 = {
-               fRef = 1B5E2EF904F102EA00F043CD;
+       1B7E47AC05028B5A00A3FD82 = {
+               fRef = 1B5E2F1D04F1065100F043CD;
                isa = PBXTextBookmark;
-               name = "XSLTProcessorJAXPBase.h: 24";
-               rLen = 327;
-               rLoc = 327;
+               name = "XSLTProcessorXalan_J.h: 9";
+               rLen = 0;
+               rLoc = 162;
                rType = 0;
-               vrLen = 655;
+               vrLen = 267;
                vrLoc = 0;
        };
-       1BF7F15704F2D090007723F5 = {
-               fRef = 1BF7F12304F2BE74007723F5;
+       1B7E47AD05028B5A00A3FD82 = {
+               fRef = 1B6AEEBE0493442600000102;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.h: 16";
-               rLen = 41;
-               rLoc = 237;
+               name = "XSLTProcessorSaxon.h: 18";
+               rLen = 0;
+               rLoc = 262;
                rType = 0;
-               vrLen = 529;
+               vrLen = 266;
                vrLoc = 0;
        };
-       1BF7F15904F2D090007723F5 = {
-               fRef = 1B5E2EF904F102EA00F043CD;
+       1B7E47AE05028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "XSLTProcessorJAXPBase.h: 24";
-               rLen = 327;
-               rLoc = 327;
+               name = "XSLTProcessor.m: 90";
+               rLen = 0;
+               rLoc = 1100;
                rType = 0;
-               vrLen = 655;
+               vrLen = 475;
+               vrLoc = 974;
+       };
+       1B7E47B005028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessor.h: stringResult";
+               rLen = 28;
+               rLoc = 1159;
+               rType = 0;
+               vrLen = 616;
+               vrLoc = 559;
+       };
+       1B7E47B205028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessor.m: 90";
+               rLen = 0;
+               rLoc = 1100;
+               rType = 0;
+               vrLen = 475;
+               vrLoc = 974;
+       };
+       1B7E47B305028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessor.h: stringResult";
+               rLen = 28;
+               rLoc = 1159;
+               rType = 0;
+               vrLen = 637;
+               vrLoc = 538;
+       };
+       1B7E47B505028B5A00A3FD82 = {
+               fRef = 1BB569F404E3010E0099E21C;
+               isa = PBXTextBookmark;
+               name = "FOPWrapper.java: convert";
+               rLen = 0;
+               rLoc = 1301;
+               rType = 0;
+               vrLen = 578;
+               vrLoc = 923;
+       };
+       1B7E47B605028B5A00A3FD82 = {
+               fRef = 1B23468404DEB06C0050A2ED;
+               isa = PBXTextBookmark;
+               name = "JAXPWrapper.java: transform";
+               rLen = 0;
+               rLoc = 2568;
+               rType = 0;
+               vrLen = 1011;
+               vrLoc = 1047;
+       };
+       1B7E47B705028B5A00A3FD82 = {
+               fRef = 1BB569F404E3010E0099E21C;
+               isa = PBXTextBookmark;
+               name = "FOPWrapper.java: convert";
+               rLen = 6;
+               rLoc = 604;
+               rType = 0;
+               vrLen = 784;
+               vrLoc = 495;
+       };
+       1B7E47B805028B5A00A3FD82 = {
+               fRef = 1BF7F12304F2BE74007723F5;
+               isa = PBXTextBookmark;
+               name = "XSL_FO_Renderer.h: 33";
+               rLen = 0;
+               rLoc = 540;
+               rType = 0;
+               vrLen = 397;
+               vrLoc = 153;
+       };
+       1B7E47B905028B5A00A3FD82 = {
+               fRef = 1BF7F12404F2BE74007723F5;
+               isa = PBXTextBookmark;
+               name = "XSL_FO_Renderer.m: 19";
+               rLen = 0;
+               rLoc = 382;
+               rType = 0;
+               vrLen = 496;
+               vrLoc = 38;
+       };
+       1B7E47BA05028B5A00A3FD82 = {
+               fRef = 1BB569F404E3010E0099E21C;
+               isa = PBXTextBookmark;
+               name = "FOPWrapper.java: 45";
+               rLen = 0;
+               rLoc = 1191;
+               rType = 0;
+               vrLen = 716;
                vrLoc = 0;
        };
-       1BF7F15A04F2D090007723F5 = {
+       1B7E47BB05028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessor.h: processStrings:withXslt:andParameters:";
+               rLen = 106;
+               rLoc = 951;
+               rType = 0;
+               vrLen = 649;
+               vrLoc = 538;
+       };
+       1B7E47BC05028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessor.m: processStrings:withXslt:andParameters:";
+               rLen = 5;
+               rLoc = 2099;
+               rType = 0;
+               vrLen = 338;
+               vrLoc = 1724;
+       };
+       1B7E47BD05028B5A00A3FD82 = {
+               fRef = F7D20D1602F9AB3B01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessorSablotron.m: 122";
+               rLen = 0;
+               rLoc = 2267;
+               rType = 0;
+               vrLen = 722;
+               vrLoc = 1706;
+       };
+       1B7E47BE05028B5A00A3FD82 = {
                fRef = 1B5E2EFA04F102EA00F043CD;
                isa = PBXTextBookmark;
-               name = "XSLTProcessorJAXPBase.m: 43";
-               rLen = 84;
-               rLoc = 808;
+               name = "XSLTProcessorJAXPBase.m: processStrings:withXslt:andParameters:";
+               rLen = 0;
+               rLoc = 273;
                rType = 0;
-               vrLen = 777;
-               vrLoc = 408;
+               vrLen = 635;
+               vrLoc = 47;
        };
-       1BF7F15B04F2D090007723F5 = {
-               fRef = 1B5E2EF904F102EA00F043CD;
+       1B7E47BF05028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "XSLTProcessorJAXPBase.h: 24";
-               rLen = 327;
-               rLoc = 327;
+               name = "XSLTProcessor.h: processStrings:withXslt:andParameters:";
+               rLen = 106;
+               rLoc = 951;
                rType = 0;
-               vrLen = 655;
-               vrLoc = 0;
+               vrLen = 628;
+               vrLoc = 559;
        };
-       1BF7F15C04F2D090007723F5 = {
+       1B7E47C005028B5A00A3FD82 = {
                fRef = 1B5E2EFA04F102EA00F043CD;
                isa = PBXTextBookmark;
-               name = "XSLTProcessorJAXPBase.m: 43";
-               rLen = 84;
-               rLoc = 808;
+               name = "XSLTProcessorJAXPBase.m: 46";
+               rLen = 44;
+               rLoc = 996;
                rType = 0;
-               vrLen = 777;
-               vrLoc = 408;
+               vrLen = 673;
+               vrLoc = 580;
        };
-       1BF7F16104F2D090007723F5 = {
+       1B7E47C105028B5A00A3FD82 = {
+               fRef = 1BF7F12404F2BE74007723F5;
+               isa = PBXTextBookmark;
+               name = "XSL_FO_Renderer.m: render:";
+               rLen = 38;
+               rLoc = 221;
+               rType = 0;
+               vrLen = 496;
+               vrLoc = 38;
+       };
+       1B7E47C205028B5A00A3FD82 = {
                fRef = 1BF7F12304F2BE74007723F5;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.h: convert:";
+               name = "XSL_FO_Renderer.h: render:";
+               rLen = 0;
+               rLoc = 263;
+               rType = 0;
+               vrLen = 393;
+               vrLoc = 153;
+       };
+       1B7E47C405028B5A00A3FD82 = {
+               fRef = F56420C102329DDD01000103;
+               isa = PBXTextBookmark;
+               name = "Workset.h: setResult:";
                rLen = 0;
-               rLoc = 515;
+               rLoc = 792;
                rType = 0;
-               vrLen = 531;
+               vrLen = 572;
                vrLoc = 0;
        };
-       1BF7F16504F2D090007723F5 = {
-               fRef = 1B23468404DEB06C0050A2ED;
+       1B7E47C705028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "JAXPWrapper.java: 1";
+               name = "XSLTProcessor.h: errorMessage";
                rLen = 0;
-               rLoc = 0;
+               rLoc = 807;
+               rType = 0;
+               vrLen = 649;
+               vrLoc = 538;
+       };
+       1B7E47C805028B5A00A3FD82 = {
+               fRef = F56420C102329DDD01000103;
+               isa = PBXTextBookmark;
+               name = "Workset.h: setResult:";
+               rLen = 0;
+               rLoc = 792;
                rType = 0;
-               vrLen = 888;
+               vrLen = 572;
                vrLoc = 0;
        };
-       1BF7F16704F2D090007723F5 = {
-               fRef = 1B23468404DEB06C0050A2ED;
+       1B7E47CA05028B5A00A3FD82 = {
+               fRef = F56420C102329DDD01000103;
+               isa = PBXTextBookmark;
+               name = "Workset.h: resultEncoding";
+               rLen = 0;
+               rLoc = 549;
+               rType = 0;
+               vrLen = 480;
+               vrLoc = 438;
+       };
+       1B7E47CB05028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessor.h: clearError";
+               rLen = 0;
+               rLoc = 694;
+               rType = 0;
+               vrLen = 649;
+               vrLoc = 538;
+       };
+       1B7E47CC05028B5A00A3FD82 = {
+               fRef = F7D20D1202F9A9BE01000103;
+               isa = PBXTextBookmark;
+               name = "XSLTProcessor.m: 80";
+               rLen = 145;
+               rLoc = 955;
+               rType = 0;
+               vrLen = 467;
+               vrLoc = 845;
+       };
+       1B7E47CD05028B5A00A3FD82 = {
+               fRef = F56420C102329DDD01000103;
+               isa = PBXTextBookmark;
+               name = "Workset.h: resultEncoding";
+               rLen = 0;
+               rLoc = 549;
+               rType = 0;
+               vrLen = 480;
+               vrLoc = 438;
+       };
+       1B7E47CE05028B5A00A3FD82 = {
+               fRef = F57C933B023A9A0701000103;
                isa = PBXTextBookmark;
-               name = "JAXPWrapper.java: 1";
+               name = "ParameterSet.m: 1";
                rLen = 0;
                rLoc = 0;
                rType = 0;
-               vrLen = 888;
+               vrLen = 430;
                vrLoc = 0;
        };
-       1BF7F16804F2D090007723F5 = {
-               fRef = 1BF7F12304F2BE74007723F5;
+       1B7E47D005028B5A00A3FD82 = {
+               fRef = F56420C102329DDD01000103;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.h: convert:";
+               name = "Workset.h: 32";
                rLen = 0;
-               rLoc = 515;
+               rLoc = 655;
                rType = 0;
-               vrLen = 531;
-               vrLoc = 0;
+               vrLen = 637;
+               vrLoc = 274;
        };
-       1BF7F16A04F2D090007723F5 = {
-               fRef = 1BF7F12304F2BE74007723F5;
+       1B7E47D205028B5A00A3FD82 = {
+               fRef = F7D20D1102F9A9BE01000103;
                isa = PBXTextBookmark;
-               name = "XSL_FO_Renderer.h: convert:";
+               name = "XSLTProcessor.h: resultEncoding";
                rLen = 0;
-               rLoc = 515;
+               rLoc = 837;
          &nb