 						break;
 
 					default:
-						trace( "handleVCard. unhandled case child.name(): " + child.name() );
+						trace( "handleVCard. Private extension: " + child.name() );
+						extensionNames.push( child.localName() );
+						extensions[ child.localName() ] = child.text().toString();
 						break;
 				}
 			}

		/**
		 * @private
		 */
		private var _loaded:Boolean;

		/**
		 * Don't call directly, use the static method getVCard() and add a callback.

				vcardExtNode.DESC = description;
			}

			//X
			if ( extensionNames.length > 0 )
			{
				for each( var xName:String in extensionNames )
				{
					vcardExtNode[ xName ] = _extensions[ xName ];
				}
			}

			var xmlDoc:XMLDocument = new XMLDocument( vcardExtNode.toString() );
			vcardExt.setNode( xmlDoc.firstChild );

