code: @Override
      public Map<String, Object> toSource() {
          Map<String, Object> sourceMap = new HashMap<>();
          if (boost != null) {
              addFieldToSource(sourceMap, "boost", boost);
          }
          if (createdBy != null) {
              addFieldToSource(sourceMap, "createdBy", createdBy);
          }
          if (createdTime != null) {
              addFieldToSource(sourceMap, "createdTime", createdTime);
          }
          if (permissions != null) {
              addFieldToSource(sourceMap, "permissions", permissions);
          }
          if (reading != null) {
              addFieldToSource(sourceMap, "reading", reading);
          }
          if (suggestWord != null) {
              addFieldToSource(sourceMap, "suggestWord", suggestWord);
          }
          if (targetLabel != null) {
              addFieldToSource(sourceMap, "targetLabel", targetLabel);
          }
          if (targetRole != null) {
              addFieldToSource(sourceMap, "targetRole", targetRole);
          }
          if (updatedBy != null) {
              addFieldToSource(sourceMap, "updatedBy", updatedBy);
          }
          if (updatedTime != null) {
              addFieldToSource(sourceMap, "updatedTime", updatedTime);
          }
          return sourceMap;
      }
docs: ======