/// <summary>
 /// Initializes a new instance of the <see cref="CFRubricCriterionType" /> class.
 /// </summary>
 /// <param name="Identifier">Identifier (required).</param>
 /// <param name="Uri">Model Primitive Datatype &#x3D; AnyURI.</param>
 /// <param name="Category">Model Primitive Datatype &#x3D; NormalizedString.</param>
 /// <param name="Description">Model Primitive Datatype &#x3D; String.</param>
 /// <param name="Weight">Model Primitive Datatype &#x3D; Float.</param>
 /// <param name="Position">Model Primitive Datatype &#x3D; Integer.</param>
 /// <param name="RubricId">RubricId.</param>
 /// <param name="LastChangeDateTime">Model Primitive Datatype &#x3D; DateTime (required).</param>
 public CFRubricCriterionType(GUIDType Identifier = null, string Uri = null, string Category = null, string Description = null, float?Weight = null, int?Position = null, GUIDType RubricId = null, DateTime?LastChangeDateTime = null)
 {
     // to ensure "Identifier" is required (not null)
     if (Identifier == null)
     {
         throw new InvalidDataException("Identifier is a required property for CFRubricCriterionType and cannot be null");
     }
     else
     {
         this.Identifier = Identifier;
     }
     // to ensure "LastChangeDateTime" is required (not null)
     if (LastChangeDateTime == null)
     {
         throw new InvalidDataException("LastChangeDateTime is a required property for CFRubricCriterionType and cannot be null");
     }
     else
     {
         this.LastChangeDateTime = LastChangeDateTime;
     }
     this.Uri         = Uri;
     this.Category    = Category;
     this.Description = Description;
     this.Weight      = Weight;
     this.Position    = Position;
     this.RubricId    = RubricId;
 }