File:  [mozdev] / books / www / corrections.html
Revision 1.122: download - view: text, annotated - select for diffs - revision graph
Tue Apr 22 15:00:25 2003 UTC (16 years, 7 months ago) by david
Branches: MAIN
CVS tags: HEAD
updating corrections

    1: <html><style>
    2:   .broken { color: red; }
    3:   .fixed { color: blue; }
    4: </style>
    5: 
    6: <body><p><b>Corrections</b>
    7: 
    8: <p>This page contains a list of corrections to be made in the next printing of
    9: the book.  If you have suggestions for changes or find errors in the text,
   10: feel free open a <a href="bugs.html">bug</a> with a report of the problem, post a message in the User Notes 
   11: section on the chapter pages, or send a message to the <a
   12: href="mailto:reviewers@mozdev.org">reviewers@mozdev.org</a> mailing list.
   13: 
   14: <p><b>Note:</b> All errors in the text and examples are shown in <b class="broken">red</b> and all corrections are shown in <b
   15: class="fixed">blue</b>.
   16: 
   17: <a name="preface"></a>
   18: <p><b>Preface</b>
   19: 
   20: <ul>
   21: 
   22: <li>On page ix: '<b class="broken">other browsers such as Galeon and Chimera</b>' has been changed to '<b class="fixed">other browsers 
   23: such as Galeon and Camino</b>'<br><br>
   24: 
   25: <li>On page xiv: '<b class="broken">http://www.oreilly.com/mozilla/</b>' has been changed
   26: to '<b class="fixed">http://www.oreilly.com/catalog/mozilla/</b>'<br><br>
   27: 
   28: <li>On page xvii: '<b class="broken">David McNamara, and Mark Hammond.</b>' has been changed to '<b class="fixed">David 
   29: McNamara, Mark Hammond, Gary Frederick, and Andreas Halter.</b>'<br><br>
   30: 
   31: <li>On page xvii: '<b class="broken">David Hyatt and Mike Pinkerton for the Chimera browser</b>' has been changed to '<b
   32: class="fixed">David Hyatt and Mike Pinkerton for the Camino browser</b>'<br><br>
   33: 
   34: <li>On page xvii: '<b class="broken">including Kim Steckler, Rachel Oeschger, and Priscilla, Dylan, and Devon Collins.</b>' has been
   35: changed to '<b class="fixed">including Kim Steckler, Rachel Oeschger, Marjana Molan, Lia Molan King, and Priscilla, Dylan, and Devon
   36: Collins.</b>'<br><br>
   37: 
   38: </ul>
   39: 
   40: 
   41: <a name="ch1"></a>
   42: <p><b>Chapter 1</b>
   43: 
   44: <ul>
   45: 
   46: <li>On page 2: In sidebar '<b class="broken">like Chimera (an ultra-fast browser that works only on Mac OS X)</b>' has been changed to 
   47: '<b class="fixed">like Camino (an ultra-fast browser that works only on Mac OS X)</b>'<br><br>
   48: 
   49: <li>On page 7: In sidebar '<b class="broken">Another project, call m/b (short for mozilla/browser), addresses shortcomings</b>' has
   50: been changed to '<b class="fixed">The Firebird project (http://www.mozilla.org/projects/firebird/) also addresses
   51: shortcomings</b>'<br><br>
   52: 
   53: <li>On page 7: In sidebar '<b class="broken">Some examples include Chimera (http://chimera.mozdev.org)</b>' has been changed to '<b 
   54: class="fixed">Some examples include Camino (http://www.mozilla.org/projects/camino/)</b>'<br><br>
   55: 
   56: <li>On page 7: '<b class="broken">applications web built using XPFE</b>' has been
   57: changed to '<b class="fixed">applications built using XPFE</b>'<br><br>
   58: 
   59: </ul>
   60: 
   61: 
   62: <a name="ch2"></a>
   63: <p><b>Chapter 2</b>
   64: 
   65: <ul>
   66: 
   67: <li>On page 10: Added a new sentence to the end of the 2nd paragraph of the xFly examples sidebar: '<b class="fixed">An installable version
   68: of the complete xFly application can be found at http://xfly.mozdev.org.</b>'<br><br>
   69: 
   70: <li>On page 12: '<b class="broken">&lt;window
   71: xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"  
   72: /&gt;</b>' has been changed to '<b class="fixed">&lt;window
   73: xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"&gt;</b>'<br><br>
   74: 
   75: <li>On page 14: In first code sample from Windows features section, '<b
   76: class="broken">xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"&gt;</b>' has been changed to '<b
   77: class="fixed">xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"</b>'<br><br>
   78: 
   79: <li>On page 17: '<b class="broken">selecting File > Open File > from</b>' has been
   80: changed to '<b class="fixed">selecting File > Open File from</b>'<br><br>
   81: 
   82: <li>On page 20: '<b class="broken">CenterWindoOnScreen( ) function</b>' has been changed
   83: to '<b class="fixed">CenterWindowOnScreen( ) function</b>'<br><br>
   84: 
   85: <li>On page 25: '<b class="broken">Under that directory, create the three new directories, <i>content</i>, <i>locale</i>, and <i>skin</i>, as
   86: shown in Figure 2-5.</b>' has been changed to '<b class="fixed">Under that directory, create the three new directories, <i>content</i>,
   87: <i>locale</i>, and <i>skin</i>, as shown in Figure 2-5. The <i>locale</i> directory will have the default 'en-US' language pack
   88: structure.</b>'<br><br>
   89: 
   90: <li>On page 25: In Figure 2-5 there should be an en-US subfolder under the locale folder.  Here is a correct image <b>(Click for bigger 
   91: version)</b>:<br><br>
   92: 
   93: <a href="http://books.mozdev.org/screenshots/moz_0205.png"><img src="http://books.mozdev.org/screenshots/moz_0205_small.jpg" alt="New
   94: Figure 2-5"></a><br><br>
   95: 
   96: <li>On page 31: In Example 2-14 '<b class="broken">locale/</b>' has been changed to '<b class="fixed">locale/en-US/</b>'<br><br>
   97: 
   98: <li>On page 32: In Example 2-15 '<b class="broken">locale,install,url,resource:/chrome/xfly/locale/</b>' has been changed to '<b
   99: class="fixed">locale,install,url,resource:/chrome/xfly/locale/en-US/</b>'<br><br>
  100: 
  101: <li>On page 33: A warning note has been added before the last paragraph of the chapter
  102: 
  103: <xmp class="fixed">
  104: If you have trouble editing and relaunching the xFly application, 
  105: there are a couple of platform specific culprits to look into. On 
  106: Windows, the Quick Launch feature may prevent you from seeing changes 
  107: to your files. On Unix, file permission conflicts can also cause 
  108: problems viewing your files. Making sure that Quick Launch is disabled 
  109: and double checking file permissions may help get xFly working
  110: on your system.
  111: </xmp>
  112: 
  113: </ul>
  114: 
  115: 
  116: <a name="ch3"></a>
  117: <p><b>Chapter 3</b>
  118: 
  119: <ul>
  120: 
  121: <li>On page 34: '<b class="broken">We've packed a lot information in this chapter and it be a useful reference</b>' has been changed
  122: to '<b class="fixed">We've packed a lot of information in this chapter and it will be a useful reference</b>'<br><br>
  123: 
  124: <li>On page 35: '<b class="broken">secondLevelNodes[I] = docEl.childNodes[i];</b>' has been changed to '<b 
  125: class="fixed">secondLevelNodes[I] = docEl.childNodes[I];</b>'<br><br>
  126: 
  127: <li>On page 38: In Example 3-3 the namespace declarations have been changed to (note the addition of quotes and the removal of italics)
  128: 
  129: <xmp class="fixed">
  130:     xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
  131:     xmlns:nc="http://home.netscape.com/NC-rdf#">
  132: </xmp>
  133: 
  134: <li>On page 38: In Example 3-3 '<b class="broken">&lt;image src="page1.png"&gt;</b>' has been changed to '<b class="fixed">&lt;image 
  135: src="page1.png"/&gt;</b>'<br><br>
  136: 
  137: <li>On page 40: '<b class="broken">&lt;toolbarbutton id="printBtn" label="Open"
  138: oncommand="doPrint( );" /&gt</b>' has been changed to '<b class="fixed">&lt;toolbarbutton
  139: id="printBtn" label="Print" oncommand="doPrint( );" &gt</b>'<br><br>
  140: 
  141: <li>On page 51: '<b class="broken">&lt;decription&gt;The mozdev.org site [...] your own development project&lt;/decription&gt;</b>' has been 
  142: changed to '<b class="fixed">&lt;description&gt;The mozdev.org site [...] your own development project&lt;/description&gt;</b>'<br><br>
  143: 
  144: <li>On page 54: '<b class="broken">Clicking on the box sets the <tt>clicked</tt> attribute</b>' has been 
  145: changed to '<b class="fixed">Clicking on the box sets the <tt>checked</tt> attribute</b>'<br><br>
  146: 
  147: <li>On pages 58 and 59: Example 3-15 has been changed to (note the addition of spaces to separate values)
  148: 
  149: <xmp class="fixed">
  150: <?xml version="1.0"?>
  151: <window id="hello-goodbye"
  152:     title="Hello Goodbye"
  153:     xmlns:html="http://www.w3.org/1999/xhtml"
  154:     xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
  155:     style="min-width:100px;min-height:100px;background-color:white;">
  156:   <broadcasterset id="broadcasterset">
  157:     <broadcaster id="cmd_hello" oncommand="alert('Hello There!');"/>
  158:   </broadcasterset>
  159:   <keyset id="keyset">
  160:     <key id="key_h" key="H" observes="cmd_hello" modifiers="accel,shift" />
  161:     <key id="key_g" key="G" command="cmd_goodbye" modifiers="accel,shift" />
  162:   </keyset>
  163:   <commandset id="commandset">
  164:     <command id="cmd_goodbye" oncommand="alert('Goodbye!');" />
  165:   </commandset>
  166:   <spacer flex="1"/>
  167:   <label value="hello/goodbye"/>
  168:   <textbox value="type ctl+shft+h"/>
  169:   <textbox value="type ctl+shft+g"/>
  170:   <spacer flex="1"/>
  171: </window>
  172: </xmp>
  173: 
  174: <li>On page 63: '<b class="broken">But there are also CSS versions of these properties that 
  175: use the prefix <tt>box-pack</tt> becomes <tt>box-pack</tt> when it's defined in CSS, for example.</b>' has been 
  176: changed to '<b class="fixed">But there are also CSS versions of these properties that 
  177: use the prefix <tt>box-</tt>. <tt>pack</tt> becomes <tt>box-pack</tt> when it's defined in CSS, for example.</b>'<br><br>
  178: 
  179: </ul>
  180: 
  181: 
  182: <a name="ch4"></a>
  183: <p><b>Chapter 4</b>
  184: 
  185: <ul>
  186: 
  187: <li>On page 88: '<b class="broken">these are selectors are identical</b>' has been changed to '<b class="fixed">these selectors are 
  188: identical</b>'<br><br>
  189: 
  190: <li>On page 109: '<b class="broken">The <i>chome</i> URL that the -moz-binding property points to</b>' has been changed to '<b
  191: class="fixed">The <i>chrome</i> URL that the -moz-binding property points to</b>'<br><br>
  192: 
  193: </ul>
  194: 
  195: 
  196: <a name="ch5"></a>
  197: <p><b>Chapter 5</b>
  198: 
  199: <ul>
  200: 
  201: <li>On page 113: Javascript 1.5 reference link in footnote has been changed from 
  202: '<b class="broken">http://developer.netscape.com/docs/manuals/js/core/jsref15/contents.html</b>' to
  203: '<b class="fixed">http://developer.netscape.com/docs/manuals/index.html?content=javascript.html</b>'<br><br>
  204: </li>
  205: 
  206: <li>On page 120: '<b class="broken">&lt;/script.</b>' has been changed to '<b class="fixed">&lt;/script&gt;</b>'<br><br>
  207: </li>
  208: 
  209: <li>On page 120: '<b class="broken">dump(l+'\n');</b>' has been changed to '<b class="fixed">dump(len+'\n');</b>'<br><br>
  210: </li>
  211: 
  212: <li>On page 123: Example 5-3
  213: <xmp class="broken">
  214: for (var i=0; i<chex.length; i++)
  215:        chex[i].setAttributte("checked", "false");
  216: for (var i=0; i<unchex.length; i++)
  217:        unchex[i].setAttributte("checked", "true");
  218: </xmp>
  219: has been changed to 
  220: <xmp class="fixed">
  221: for (var i=0; i<chex.length; i++)
  222:     chex[i].setAttribute("disabled", "false");
  223: for (var i=0; i<unchex.length; i++)
  224:     unchex[i].setAttribute("disabled", "true");
  225: </xmp>
  226: <br>
  227: </li>
  228: 
  229: <li>On page 135: Example 5-11 has been changed to
  230: <xmp class="fixed">
  231:   <head>
  232:     <title>Sound Service Play Example</title>
  233:     <script>  
  234:       function play() { 
  235:         netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); 
  236:         var sample = Components.classes["@mozilla.org/sound;1"].createInstance(); 
  237:         sample = sample.QueryInterface(Components.interfaces.nsISound); 
  238:         const SND_NETWORK_STD_CID = "@mozilla.org/network/standard-url;1";
  239:         const SND_I_URL = "nsIURL";
  240:         const SND_URL = new  C.Constructor(SND_NETWORK_STD_CID, SND_I_URL);
  241:         var url = new SND_URL();
  242:         url.spec = 'http://jslib.mozdev.org/test.wav';
  243:         sample.play(url);
  244:       } 
  245:     </script>  
  246:   </head>  
  247:     
  248:     <form name="form">  
  249:       <input type="button" value="Play Sound" onclick="play();">  
  250:     </form>  
  251: </xmp>
  252: 
  253: <li>On page 137: '<b class="broken">var connection = Components.classes ["@mozilla.org/network/ldap-connection;1";</b>' 
  254:   has been changed to 
  255: '<b class="fixed">var connection = Components.classes ["@mozilla.org/network/ldap-connection;1"];</b>'<br><br>
  256: </li>
  257: 
  258: <li>On page 140: '<b class="broken">js> load(`chrome/jslib/jslib.js');</b>' has been changed to '<b class="fixed">js>
  259: load('chrome/jslib/jslib.js');</b>'<br><br>
  260: </li>
  261: 
  262: </ul>
  263: 
  264: <a name="ch06"></a>
  265: <p><b>Chapter 6</b>
  266: 
  267: <ul>
  268: 
  269: <li>On page 145: Example 6-1 has been changed to 
  270: 
  271: <xmp class="fixed">
  272: var myFile = "xFly.jar";
  273: initInstall(                      // initialize the installation
  274:   "Install xFly",                 // display name of installation
  275:   "xFly",                         // package name
  276:   "0.0.1",                        // version of install
  277:   1);                             // flags - an optional argument, 
  278:                                   // reserved for future use
  279: f = getFolder("Chrome");          // specify a target directory
  280: setPackageFolder(f);
  281: addFile(myFile);                  // add software to the installation
  282: registerChrome(
  283:   PACKAGE | DELAYED_CHROME,       // chrome switch (i.e., type)
  284:   getFolder("Chrome","xFly.jar"), // destination of package
  285:   "content/xFly/");               // location of manifest in package
  286: if (0 == getLastError( ))         // if there have been no errors:
  287:   performInstall( );              // install "xfly.jar"
  288: else                              // otherwise
  289:   cancelInstall( );               // cancel the installation.
  290: </xmp>
  291: 
  292: </ul>
  293: 
  294: <a name="ch07"></a>
  295: <p><b>Chapter 7</b>
  296: 
  297: <ul>
  298: 
  299: <li>On page 181: There are 3 errors in Figure 7-2 ...<br><br>
  300: 
  301: 1)  In the XUL box, '<b class="broken">klabel="Input Field"</b>' should be '<b class="fixed">label="Input Field"</b>'<br><br>
  302: 
  303: 2)  In the XBL box, '<b class="broken">&lt;binding id+"inputfield"&gt;</b>' should be '<b class="fixed">&lt;binding id="inputfield"&gt;</b>'<br><br>
  304: 
  305: 3)  In the XBL box, '<b class="broken">&lt;xul:label xbl:inherits="value+label"?&gt;</b>' should be '<b class="fixed">&lt;xul:label xbl:inherits="value=label"/&gt;</b>'<br><br>
  306: 
  307: Here is a correct image <b>(Click for bigger version)</b>:<br><br>
  308: 
  309: <a href="http://books.mozdev.org/screenshots/moz_0702.gif"><img src="http://books.mozdev.org/screenshots/moz_0702_small.gif" alt="New Figure 7-2"></a>
  310: 
  311: </li>
  312: 
  313: </ul>
  314: 
  315: </p>
  316: 
  317: <a name="ch08"></a>
  318: <p><b>Chapter 8</b>
  319: 
  320: <ul>
  321: 
  322: <li>On page 211: In 2nd sentence of paragraph '<b class="broken">QueryInterace</b>' has been 
  323: changed to '<b class="fixed">QueryInterface</b>'<br><br></li>
  324: 
  325: <li>On page 222: In Example 8-4 has been changed to:
  326: 
  327: <xmp class="fixed">
  328: function SimpleComponent(){}
  329: 
  330: SimpleComponent.prototype = {
  331: 
  332:     get yourName()        { return this.mName; },
  333:     set yourName(aName)   { return this.mName = aName; },
  334: 
  335:     write: function () { dump("Hello " + this.mName + "\n"); },
  336:     change: function (aValue) { this.mName = aValue; },
  337:     mName: "a default value",
  338: 
  339:     QueryInterface: function (iid) {
  340:         if (!iid.equals(Components.interfaces.nsISimple)
  341:             && !iid.equals(Components.interfaces.nsISupports))
  342:         {
  343:             throw Components.results.NS_ERROR_NO_INTERFACE;
  344:         }
  345:         return this;
  346:     }
  347: }
  348: 
  349: var Module = {
  350:     firstTime: true,
  351: 
  352:     registerSelf: function (compMgr, fileSpec, location, type) {
  353:         if (this.firstTime) {
  354:             dump("*** Deferring registration of simple JS components\n");
  355:             this.firstTime = false;
  356:             throw Components.results.NS_ERROR_FACTORY_REGISTER_AGAIN;
  357:         }
  358:         debug("*** Registering sample JS components\n");
  359:         compMgr =
  360: compMgr.QueryInterface(Components.interfaces.nsIComponentRegistrar);
  361:         compMgr.registerFactoryLocation(this.myCID,
  362:                                         "Simple JS Component",
  363:                                         this.myProgID,
  364:                                         fileSpec,
  365:                                         location,
  366:                                         type);
  367:     },
  368: 
  369:     getClassObject : function (compMgr, cid, iid) {
  370:         if (!cid.equals(this.myCID))
  371:         throw Components.results.NS_ERROR_NO_INTERFACE
  372:         if (!iid.equals(Components.interfaces.nsIFactory))
  373:         throw Components.results.NS_ERROR_NOT_IMPLEMENTED;
  374:         return this.myFactory;
  375:     },
  376: 
  377:     myCID: Components.ID("{98aa9afd-8b08-415b-91ed-01916a130d16}"),
  378:     myProgID: "@mozilla.org/js_simple_component;1",
  379: 
  380:     myFactory: {
  381:         createInstance: function (outer, iid) {
  382:             dump("CI: " + iid + "\n");
  383:             if (outer != null)
  384:             throw Components.results.NS_ERROR_NO_AGGREGATION;
  385:             return (new SimpleComponent()).QueryInterface(iid);
  386:         }
  387:     },
  388: 
  389:     canUnload: function(compMgr) {
  390:         dump("****** Unloading: Simple JS component! ****** \n");
  391:         return true;
  392:     }
  393: }; // END Module
  394: 
  395: function NSGetModule(compMgr, fileSpec) { return Module; }
  396: </xmp>
  397: </li>
  398: 
  399: <li>On page 237: Example 8-13, line 9
  400: <xmp class="broken">
  401:     NS_INIT_REFCNT( );  // has been depricated use NS_INIT_ISUPPORTS()
  402:     mValue = PL_strdup("default value");
  403: </xmp>
  404: has been changed to 
  405: <xmp class="fixed">
  406:     // NS_INIT_REFCNT( );  // has been depricated use NS_INIT_ISUPPORTS()
  407:     NS_INIT_ISUPPORTS();
  408:     mValue = PL_strdup("default value");
  409: </xmp>
  410: <br>
  411: </li>
  412: 
  413: <li>On page 239: Example 8-15 has been changed to <br/></li>
  414: 
  415: <xmp class="fixed">
  416: DEPTH         = ../../..
  417: topsrcdir     = ../../..
  418: srcdir        = .
  419: VPATH         = .
  420: 
  421: include $(DEPTH)/config/autoconf.mk
  422: 
  423: MODULE        = xpcom
  424: XPIDL_MODULE  = simple
  425: LIBRARY_NAME  = simple
  426: IS_COMPONENT  = 1
  427: MODULE_NAME   = nsSimpleModule
  428: REQUIRES      = string \
  429:                 xpcom \
  430:                 $(NULL)
  431: 
  432: 
  433: CPPSRCS   =              \
  434:     nsSimple.cpp         \
  435:     nsSimpleModule.cpp   \
  436:     $(NULL)
  437: 
  438: XPIDLSRCS = nsISimple.idl
  439: 
  440: include $(topsrcdir)/config/config.mk
  441: 
  442: LIBS    +=        \
  443:     $(XPCOM_LIBS) \
  444:     $(NSPR_LIBS)  \
  445:     $(NULL)
  446: 
  447: include $(topsrcdir)/config/rules.mk
  448: 
  449: EXTRA_DSO_LDOPTS += $(MOZ_COMPONENT_LIBS)
  450: 
  451: install:: $(TARGETS)
  452: </xmp>
  453: 
  454: </ul>
  455: 
  456: <a name="ch9"></a>
  457: <p><b>Chapter 9</b>
  458: 
  459: <ul>
  460: 
  461: <li>On page 247: '<b class="broken">When it appears inside the &lt;template&gt;, the &lt;listbox&gt; tag has two special attributes.</b>'
  462: has been changed to '<b class="fixed">The &lt;listbox&gt; gains two special attributes when it contains a &lt;template&gt;.</b>'
  463: <br><br>
  464: 
  465: <li>On page 250: '<b class="broken">"Using Data for Style,"</b>' has been changed to '<b class="fixed">"Using Data for Style",</b>'
  466: <br><br>
  467: 
  468: <li>On page 254: Example 9-5
  469: 
  470: <xmp class="broken">
  471:    <rdf:Description about="urn:root">
  472:      <fly:list</td>>
  473:        <rdf:Seq>
  474:          <rdf:li>
  475:            <rdf:Description ID="House">
  476:              <fly:label</td>>House</fly:label>
  477:              <fly:list</td>>
  478:                <rdf:Seq>
  479:                  <rdf:li>
  480:                    <rdf:Description about="musca_autumnalis"
  481:                                     fly:label</td>="Face Fly"/>
  482:                  </rdf:li>
  483:                <rdf:Seq>
  484:              </fly:list>
  485:          </rdf:li>
  486:        </rdf:Seq>
  487:      </fly:list>
  488:    </rdf:Description>
  489: </xmp>
  490: 
  491: has been changed to
  492: 
  493: <xmp class="fixed">
  494:    <rdf:Description about="urn:root">
  495:      <fly:list</td>>
  496:        <rdf:Seq>
  497:          <rdf:li>
  498:            <rdf:Description ID="House">
  499:              <fly:label</td>>House</fly:label>
  500:            </rdf:Description>
  501:            <fly:list</td>
  502:              <rdf:Seq>
  503:                <rdf:li>
  504:                 <rdf:Description about="musca_autumnalis"
  505:                                  fly:label</td>="Face Fly"/>
  506:                </rdf:li>
  507:              <rdf:Seq>
  508:            </fly:list>
  509:          </rdf:li>
  510:        </rdf:Seq>
  511:      </fly:list>
  512:    </rdf:Description>
  513: </xmp>
  514: 
  515: <li>On page 255: Example 9-6 
  516: 
  517: <xmp class="broken">
  518:      <treecols>
  519:        <treecol id="LabelCol" flex="1" sort="?label" label="Name"
  520:                 primary="true" />
  521:        <treecol id="LoCol" flex="1" sort="?location" label="Location"/>
  522:        <treecol id="ColCol" flex="1" sort="?color" label="Color"/>
  523:      </treecols>
  524: </xmp>
  525: 
  526: has been changed to
  527: 
  528: <xmp class="fixed">
  529:      <treecols>
  530:        <treecol id="LabelCol" flex="1"
  531:                 sort="rdf:http://xfly.mozdev.org/fly-rdf#label"
  532:                 class="sortDirectionIndicator" primary="true" label="Name"/>
  533:        <treecol id="LoCol" flex="1"
  534:                 sort="rdf:http://xfly.mozdev.org/fly-rdf#location"
  535:                 label="Location"/>
  536:        <treecol id="ColCol" flex="1" 
  537:                 sort="rdf:http://xfly.mozdev.org/fly-rdf#color"
  538:                 label="Color"/>
  539:      </treecols>
  540: </xmp>
  541: 
  542: <li>On page 257: In Example 9-7
  543: 
  544: <xmp class="broken">
  545:   <triple subject="?listitem"
  546:         predicate=" http://xfly.mozdev.org/fly-rdf#location"
  547:         object="?location"/>
  548: </xmp>
  549: 
  550: has been changed to
  551: 
  552: <xmp class="fixed">
  553:         <triple subject="?listitem"
  554:         predicate="fly-location#location"
  555:                 object="?location"/>
  556: </xmp>
  557: 
  558: <li>On page 258: '<b class="broken">The most important additions to Example 9-7 are the
  559: container="?uri" member="?listitem" attributes on the &lt;template&gt;</b>' has been
  560: changed to '<b class="fixed">The most important inclusions to Example 9-7 are the
  561: container="?uri" member="?listitem" attributes on the &lt;template&gt;</b>'
  562: <br><br>
  563: 
  564: </ul>
  565: 
  566: <a name="ch10"></a>
  567: <p><b>Chapter 10</b>
  568: 
  569: <ul>
  570: 
  571: <li>One page 268: In Example 10-1 '<b class="broken">&lt;rdf:Description about="http://my.jar-of-flies.com"&gt;</b>' has been
  572: changed to '<b class="fixed">&lt;rdf:Description about="urn:root"&gt;</b>'<br><br>
  573: 
  574: <li>On page 279: '<b class="broken">The URI is also accessible as a datasource property:</b>' has been
  575: changed to '<b class="fixed">The URI, such as rdf:someName, is also accessible as a datasource
  576: property:</b>'<br><br>
  577: 
  578: <li>On page 280: In Table 10-3 '<b class="broken">Mostly used for retrieving, datasources, resources, and literals.</b>' has been
  579: changed to '<b class="fixed">Mostly used for retrieving datasources, resources, and literals.</b>'<br><br>
  580: 
  581: <li>On page 288: The code at the top of the page
  582: 
  583: <xmp class="broken">
  584: containerUtils = Components.classes['@mozilla.org/rdf/container-utils;1'
  585: 		 getService(Components.interfaces.nsIRDFContainerUtils);
  586: </xmp>
  587: 
  588: has been changed to:
  589: 
  590: <xmp class="fixed">
  591: containerUtils = Components.classes['@mozilla.org/rdf/container-utils;1'].
  592: 		 getService(Components.interfaces.nsIRDFContainerUtils);
  593: </xmp>
  594: 
  595: <li>On page 297: '<b class="broken">http://www.jslib.mozdev.org</b>' has been changed to '<b
  596: class="fixed">http://jslib.mozdev.org</b>'<br><br>
  597: 
  598: <li>On page 297: In Example 10-14 '<b class="broken">// if(del)gRDF.removeSeq('types',false);</b>' has been deleted. It is not
  599: needed in this example.<br><br>
  600: 
  601: </ul>
  602: 
  603: 
  604: <a name="ch11"></a>
  605: <p><b>Chapter 11</b>
  606: 
  607: <ul> 
  608: <li>On page 314: In Example 11-5 and Example 11-6 '<b class="broken">var linetext =
  609: document.createTextNode(messageParagraphs[i]);</b>' has been changed to '<b class="fixed">var linetext =
  610: document.createTextNode(lines[i]);</b>'<br><br>
  611: </ul>
  612: 
  613: 
  614: <a name="ch12"></a>
  615: <p><b>Chapter 12</b>
  616: 
  617: <ul>
  618: 
  619: <li>On page 336: In Example 12-6
  620: 
  621: <xmp class="broken">
  622:  print `  <checkbox label="%s" />' % form['op1'].value
  623:  print `  <checkbox label="%s" />' % form['op2'].value
  624:    print `  <checkbox label="%s" />' % form['op3'].value
  625: </xmp>
  626: 
  627: has been changed to (note the difference in indentation and in using a single quote versus a backtick)
  628: 
  629: <xmp class="fixed">
  630:    print '  <checkbox label="%s" />' % form['op1'].value
  631:    print '  <checkbox label="%s" />' % form['op2'].value
  632:    print '  <checkbox label="%s" />' % form['op3'].value
  633: </xmp>
  634: 
  635: <li>On page 341: The following sentence has been deleted '<b class="broken">You can delete the <i>key3.db</i> and <i>secmod.db</i> files
  636: because they do not pertain to certificate creation or modification.</b>'<br><br>
  637: 
  638: <div>
  639: <b>NOTE:</b> This last fix in chapter 12 is a <a href="http://mozdev.org/bugs/show_bug.cgi?id=2602">short/quick fix</a> 
  640: for some major flaws in the security section of this chapter. 
  641: There is a more desirable fix, <a href="http://mozdev.org/bugs/show_bug.cgi?id=2888">outlined in the bug monitoring it</a>, 
  642: but it would require a substantial rewrite to the section. 
  643: Please consider both of these options for a second printing.
  644: </div>
  645: 
  646: </ul>
  647: 
  648: 
  649: </p>
  650: 
  651: <a name="appa"></a>
  652: <p><b>Appendix A</b>
  653: 
  654: <ul>
  655: 
  656: <li>On page 365: '<b class="broken">http://www.mozilla.org/source.tml</b>' has been changed to '<b
  657: class="fixed">http://www.mozilla.org/source.html</b>'<br><br>
  658: </li>
  659: 
  660: <li>On page 367: In the Linux CVS instructions
  661: 
  662: <xmp class="broken">
  663: 1. Set the CVSROOT variable: 
  664:     $ setenv CVSROOT :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot
  665: 2. Log in as anonymous@cvs-mirror.mozilla.org using the password "anonymous":
  666: </xmp>
  667: 
  668: has been changed to (note the addition of '=' after CVSROOT, 
  669: the changing of 'setenv' to 'export' and the simplification of instruction 2)
  670: 
  671: <xmp class="fixed">
  672: 1. Set the CVSROOT variable: 
  673:     $ export CVSROOT=:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot
  674: 2. Log in using the password "anonymous":
  675: </xmp>
  676: 
  677: <li>On page 368: In the Windows CVS instructions
  678: 
  679: <xmp class="broken">
  680: 1. Set the CVSROOT variable: 
  681:     > set CVSROOT :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot
  682: 2. Log in as anonymous@cvs-mirror.mozilla.org using the password "anonymous":
  683: </xmp>
  684: 
  685: has been changed to (note the addition of '=' after CVSROOT
  686: and the simplification of instruction 2)
  687: 
  688: <xmp class="fixed">
  689: 1. Set the CVSROOT variable: 
  690:     > set CVSROOT=:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot
  691: 2. Log in using the password "anonymous":
  692: </xmp>
  693: 
  694: </li>
  695: 
  696: </ul>
  697: 
  698: <a name="index"></a>
  699: <p><b>Index</b>
  700: 
  701: <ul>
  702: 
  703: <li>
  704: On page 437: '<b class="broken">Chimera, 2</b>' has been changed to '<b class="fixed">Camino, 2</b>'<br><br>
  705: </li>
  706: 
  707: </ul>
  708: 
  709: 
  710: <br><br>
  711: 
  712: <?php $hide_text_control=1; $post_to_list=NO; $author='reviewers@mozdev.org'; require(NOTES); ?>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>