context:   viewMachineReadablePolicy : function ()   {    var document = this.getDocument();     if (document) {      // Note: P3P policies can be associated with at least five      // different namespaces. For performance reasons intentionally       // accessing element by name without namespace.      var nodelist = document.getElementsByTagName("POLICY");      var length   = nodelist.length;      if (length > 1) {        var index = 0;        while (index < length) {          var node = nodelist[index];          var name = node.getAttribute("name");                  // If a fragment identifier is specified then target          // the POLICY with that fragment name. To achieve that          // remove all other POLICY nodes that don't match the name.          // By doing this the XSLT code doesn't have to know what          // part of the full policy needs to be transformed.           if (this.mFragment && this.mFragment != name) {            node.parentNode.removeChild(node);            // When a node gets removed it will be reflected on the nodelist.            // That is, the nodelist length will decrease. To stay within 				// bounds of the nodelist array do not increment index.            --length;          }          else {            ++index;          }        }      }          this.preTransform();    }  },
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/55a5e5ddbf4a7e9103b995d808c4466085d2123f/nsPolicyViewer.js/clean/extensions/p3p/resources/content/nsPolicyViewer.js