/**
  * @param UUID   $srcWorkflow ID of the source Workflow
  * @param Title  $srcTitle    Title of the page that the Workflow exists on
  * @param String $objectType  Output of getRevisionType for the AbstractRevision that this reference comes from.
  * @param UUID   $objectId    Unique identifier for the revisioned object containing the reference.
  * @param string $type        Type of reference
  * @param string $url         URL of the reference's target.
  * @throws InvalidReferenceException
  */
 public function __construct(UUID $srcWorkflow, Title $srcTitle, $objectType, UUID $objectId, $type, $url)
 {
     $this->url = $url;
     if (!is_array(wfParseUrl($url))) {
         throw new InvalidReferenceException("Invalid URL {$url} specified for reference " . get_class($this));
     }
     parent::__construct($srcWorkflow, $srcTitle, $objectType, $objectId, $type);
 }
 /**
  * @param UUID   $srcWorkflow ID of the source Workflow
  * @param Title  $srcTitle    Title of the reference's target.
  * @param string $objectType  Output of getRevisionType for the AbstractRevision that this reference comes from.
  * @param UUID   $objectId    Unique identifier for the revisioned object containing the reference.
  * @param string $type        Type of reference
  * @param Title  $targetTitle Title of the reference's target.
  */
 public function __construct(UUID $srcWorkflow, Title $srcTitle, $objectType, UUID $objectId, $type, Title $targetTitle)
 {
     $this->target = $targetTitle;
     $this->validTypes = array_merge($this->validTypes, array(self::TYPE_FILE, self::TYPE_TEMPLATE, self::TYPE_CATEGORY));
     parent::__construct($srcWorkflow, $srcTitle, $objectType, $objectId, $type);
 }