jbates      2002/12/17 09:21:08

  Modified:    src/documentation/content/xdocs/dev guide-internals.xml
  Log:
  Last B-Tree paragraph
  
  Revision  Changes    Path
  1.8       +18 -1     
xml-xindice/src/documentation/content/xdocs/dev/guide-internals.xml
  
  Index: guide-internals.xml
  ===================================================================
  RCS file: 
/home/cvs/xml-xindice/src/documentation/content/xdocs/dev/guide-internals.xml,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- guide-internals.xml       17 Dec 2002 17:12:24 -0000      1.7
  +++ guide-internals.xml       17 Dec 2002 17:21:08 -0000      1.8
  @@ -470,6 +470,23 @@
                          to other nodes in the B-Tree. In the case of leaf 
nodes, there are exactly as many pointers as
                          key values, and each pointer points to the data 
record associated with one of the key values.</p>
                       <p>In either case, the node is encoded as follows:</p>
  +                    <ul><li>For each key value, two fields are written. Keys 
in the Xindice implementation
  +                            are not numbers, as in the image of a B-Tree 
above, but rather strings of character
  +                            data. For each of these strings, Xindice encodes 
the string in utf-8, resulting
  +                            in a byte array, and writes:
  +                            <ul>
  +                                <li>The length of the resulting utf-8 byte 
array. This length is written over
  +                                    two bytes.</li>
  +                                <li>The bytes representing the key value (a 
string), in utf-8.</li>
  +                            </ul>
  +                            The number of values present is known from the 
page header.
  +                        </li>
  +                        <li>Immediately following the key data come the 
pointers. These are written simply one
  +                            after the other, each occupying 8 bytes. (Each 
pointer is the page number of the
  +                            first page holding the record being pointed to). 
The number of pointers is known
  +                            from the number of key values, and whether the 
node is a leaf- or branch node.</li>
  +                    </ul>
  +
                   </section>
               </section>
           </section>
  
  
  

Reply via email to