title: How is jQuery's data store functionning?
body: <p>I recently asked a question related to jquery's datastore.
  <a href="https://stackoverflow.com/questions/999535/how-to-get-from-an-element-all-the-data-set-using-the-data-method">How to get from an element all the data set using the data method?</a></p>
  
  <p>I want to better understand the datastore to see if I can fix my problem (data integrity).</p>
  
  <p>I understand the idea of a "numerical pointer to a global hashtable" <a href="http://james.padolsey.com/javascript/element-datastorage/" rel="nofollow noreferrer">http://james.padolsey.com/javascript/element-datastorage/</a></p>
  
  <p>But looking at the jquery source, I'm confused : </p>
  
  <pre><code>    data: function( key, value ){
      var parts = key.split(".");
      parts[1] = parts[1] ? "." + parts[1] : "";
  
      if ( value === undefined ) {
          var data = this.triggerHandler("getData" + parts[1] + "!", [parts[0]]);
  
          if ( data === undefined &amp;&amp; this.length )
              data = jQuery.data( this[0], key );
  
          return data === undefined &amp;&amp; parts[1] ?
              this.data( parts[0] ) :
              data;
      } else
          return this.trigger("setData" + parts[1] + "!", [parts[0], value]).each(function(){
              jQuery.data( this, key, value );
          });
  },
  </code></pre>
  
  <p>Why is it using triggerHandler/trigger ? Where can I "see" the data while developing ?</p>
  
  <p>Olivier</p>