code: protected final void initializeAbstractProposition(String id,
              UniqueId uniqueId) {
          this.uniqueId = uniqueId;
          if (id == null) {
              this.id = "";
          } else {
              this.id = id.intern();
          }
      }
docs: Assigns fields specified in the constructor. This is pulled into a method
  so that deserialization can initialize those fields correctly.
  
  @param id the proposition id.
  @param uniqueId the proposition's unique id.