/// <summary>
 ///     Initializes a vCardProperty with the specified
 ///     name, value and group.
 /// </summary>
 /// <param name="name">
 ///     The name of the vCard property.
 /// </param>
 /// <param name="value">
 ///     The value of the vCard property.
 /// </param>
 /// <param name="group">
 ///     The group name of the vCard property.
 /// </param>
 public vCardProperty(string name, string value, string group)
 {
     this.group         = group;
     this.name          = name;
     this.subproperties = new vCardSubpropertyCollection();
     this.value         = value;
 }
        /// <summary>
        ///     Creates a <see cref="vCardProperty"/> with
        ///     the specified name and date/time as a value.
        /// </summary>
        /// <param name="name">The name of the property.</param>
        /// <param name="value">The date/time value.</param>
        public vCardProperty(string name, DateTime value)
        {
            if (string.IsNullOrEmpty(name))
            {
                throw new ArgumentNullException("name");
            }

            this.name          = name;
            this.subproperties = new vCardSubpropertyCollection();
            this.value         = value;
        }
        /// <summary>
        ///     Initializes the vCard property with the specified
        ///     name and values.
        /// </summary>
        public vCardProperty(string name, vCardValueCollection values)
            : this()
        {
            if (string.IsNullOrEmpty(name))
            {
                throw new ArgumentNullException("name");
            }

            if (values == null)
            {
                throw new ArgumentNullException("values");
            }

            this.subproperties = new vCardSubpropertyCollection();
            this.name          = name;
            this.value         = values;
        }
 /// <summary>
 ///     Creates a <see cref="vCardProperty"/> object
 ///     with the specified name and a null value.
 /// </summary>
 /// <param name="name">
 ///     The name of the property.
 /// </param>
 public vCardProperty(string name)
 {
     this.name          = name;
     this.subproperties = new vCardSubpropertyCollection();
 }
 /// <summary>
 ///     Creates a blank <see cref="vCardProperty"/> object.
 /// </summary>
 public vCardProperty()
 {
     this.subproperties = new vCardSubpropertyCollection();
 }