partial void OnAddressChanging(CommonAddress value);
 /// <summary>
 /// Create a new Customer object.
 /// </summary>
 /// <param name="customerID">Initial value of the CustomerID property.</param>
 /// <param name="companyName">Initial value of the CompanyName property.</param>
 /// <param name="address">Initial value of the Address property.</param>
 public static Customer CreateCustomer(global::System.String customerID, global::System.String companyName, CommonAddress address)
 {
     Customer customer = new Customer();
     customer.CustomerID = customerID;
     customer.CompanyName = companyName;
     customer.Address = StructuralObject.VerifyComplexObjectIsNotNull(address, "Address");
     return customer;
 }
 /// <summary>
 /// Create a new Supplier object.
 /// </summary>
 /// <param name="supplierID">Initial value of the SupplierID property.</param>
 /// <param name="companyName">Initial value of the CompanyName property.</param>
 /// <param name="address">Initial value of the Address property.</param>
 public static Supplier CreateSupplier(global::System.Int32 supplierID, global::System.String companyName, CommonAddress address)
 {
     Supplier supplier = new Supplier();
     supplier.SupplierID = supplierID;
     supplier.CompanyName = companyName;
     supplier.Address = StructuralObject.VerifyComplexObjectIsNotNull(address, "Address");
     return supplier;
 }
 /// <summary>
 /// Create a new CurrentEmployee object.
 /// </summary>
 /// <param name="employeeID">Initial value of the EmployeeID property.</param>
 /// <param name="lastName">Initial value of the LastName property.</param>
 /// <param name="firstName">Initial value of the FirstName property.</param>
 /// <param name="address">Initial value of the Address property.</param>
 public static CurrentEmployee CreateCurrentEmployee(global::System.Int32 employeeID, global::System.String lastName, global::System.String firstName, CommonAddress address)
 {
     CurrentEmployee currentEmployee = new CurrentEmployee();
     currentEmployee.EmployeeID = employeeID;
     currentEmployee.LastName = lastName;
     currentEmployee.FirstName = firstName;
     currentEmployee.Address = StructuralObject.VerifyComplexObjectIsNotNull(address, "Address");
     return currentEmployee;
 }
 /// <summary>
 /// Create a new PreviousEmployee object.
 /// </summary>
 /// <param name="employeeID">Initial value of the EmployeeID property.</param>
 /// <param name="lastName">Initial value of the LastName property.</param>
 /// <param name="firstName">Initial value of the FirstName property.</param>
 /// <param name="address">Initial value of the Address property.</param>
 public static PreviousEmployee CreatePreviousEmployee(global::System.Int32 employeeID, global::System.String lastName, global::System.String firstName, CommonAddress address)
 {
     PreviousEmployee previousEmployee = new PreviousEmployee();
     previousEmployee.EmployeeID = employeeID;
     previousEmployee.LastName = lastName;
     previousEmployee.FirstName = firstName;
     previousEmployee.Address = StructuralObject.VerifyComplexObjectIsNotNull(address, "Address");
     return previousEmployee;
 }