diff --git a/core/modules/system/lib/Drupal/system/Tests/Entity/EntityCrudHookTest.php b/core/modules/system/lib/Drupal/system/Tests/Entity/EntityCrudHookTest.php
index 1d49a02..be26740 100644
--- a/core/modules/system/lib/Drupal/system/Tests/Entity/EntityCrudHookTest.php
+++ b/core/modules/system/lib/Drupal/system/Tests/Entity/EntityCrudHookTest.php
@@ -449,7 +449,7 @@ public function testTaxonomyVocabularyHooks() {
     ));
 
     $_SESSION['entity_crud_hook_test'] = array();
-    $vocabulary->name = 'New name';
+    $vocabulary->setName('New name');
     $vocabulary->save();
 
     $this->assertHookMessageOrder(array(
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Entity/Vocabulary.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Entity/Vocabulary.php
index 00ae49c..510333e 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Entity/Vocabulary.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Entity/Vocabulary.php
@@ -96,6 +96,71 @@ public function id() {
   /**
    * {@inheritdoc}
    */
+  public function getWeight() {
+    return $this->get('weight');
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function getDescription() {
+    return $this->get('description');
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function getHierarchy() {
+    return $this->get('hierarchy');
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function setWeight($weight) {
+    return $this->set('weight', $weight);
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function setHierarchy($hierarchy) {
+    return $this->set('hierarchy', $hierarchy);
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function setDescription($description) {
+    return $this->set('description', $description);
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function setNewVid($machineName) {
+    return $this->set('vid', $machineName);
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function setName($name) {
+    return $this->set('name', $name);
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function setUuid() {
+    $uuid = new Uuid();
+    $this->storage->uuid = $uuid->generate();
+    return $this->storage->uuid;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
   public function postSave(EntityStorageInterface $storage, $update = TRUE) {
     parent::postSave($storage, $update);
 
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/EfqTest.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/EfqTest.php
index e664f67..cd5f030 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/EfqTest.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/EfqTest.php
@@ -61,7 +61,7 @@ function testTaxonomyEfq() {
       ->condition('vid', $vocabulary2->id())
       ->execute();
     sort($result);
-    $this->assertEqual(array_keys($terms2), $result, format_string('Taxonomy terms from the %name vocabulary were retrieved by entity query.', array('%name' => $vocabulary2->name)));
+    $this->assertEqual(array_keys($terms2), $result, format_string('Taxonomy terms from the %name vocabulary were retrieved by entity query.', array('%name' => $vocabulary2->label())));
     $tid = reset($result);
     $ids = (object) array(
       'entity_type' => 'taxonomy_term',
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldTest.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldTest.php
index 1dd0aab..77fd17f 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldTest.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermFieldTest.php
@@ -166,7 +166,7 @@ function testTaxonomyTermFieldChangeMachineName() {
     $this->field->save();
     // Change the machine name.
     $new_name = drupal_strtolower($this->randomName());
-    $this->vocabulary->vid = $new_name;
+    $this->vocabulary->setNewVid($new_name);
     $this->vocabulary->save();
 
     // Check that the field instance is still attached to the vocabulary.
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TokenReplaceTest.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TokenReplaceTest.php
index a09cbc2..f728f09 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TokenReplaceTest.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TokenReplaceTest.php
@@ -94,7 +94,7 @@ function testTaxonomyTokenReplacement() {
     $tests['[term:url]'] = url('taxonomy/term/' . $term1->id(), array('absolute' => TRUE));
     $tests['[term:node-count]'] = 0;
     $tests['[term:parent:name]'] = '[term:parent:name]';
-    $tests['[term:vocabulary:name]'] = String::checkPlain($this->vocabulary->name);
+    $tests['[term:vocabulary:name]'] = String::checkPlain($this->vocabulary->label());
 
     foreach ($tests as $input => $expected) {
       $output = $token_service->replace($input, array('term' => $term1), array('langcode' => $language_interface->id));
@@ -111,7 +111,7 @@ function testTaxonomyTokenReplacement() {
     $tests['[term:parent:name]'] = String::checkPlain($term1->getName());
     $tests['[term:parent:url]'] = url('taxonomy/term/' . $term1->id(), array('absolute' => TRUE));
     $tests['[term:parent:parent:name]'] = '[term:parent:parent:name]';
-    $tests['[term:vocabulary:name]'] = String::checkPlain($this->vocabulary->name);
+    $tests['[term:vocabulary:name]'] = String::checkPlain($this->vocabulary->label());
 
     // Test to make sure that we generated something for each token.
     $this->assertFalse(in_array(0, array_map('strlen', $tests)), 'No empty tokens generated.');
@@ -125,7 +125,7 @@ function testTaxonomyTokenReplacement() {
     $tests['[term:name]'] = $term2->getName();
     $tests['[term:description]'] = $term2->getDescription();
     $tests['[term:parent:name]'] = $term1->getName();
-    $tests['[term:vocabulary:name]'] = $this->vocabulary->name;
+    $tests['[term:vocabulary:name]'] = $this->vocabulary->label();
 
     foreach ($tests as $input => $expected) {
       $output = $token_service->replace($input, array('term' => $term2), array('langcode' => $language_interface->id, 'sanitize' => FALSE));
@@ -135,8 +135,8 @@ function testTaxonomyTokenReplacement() {
     // Generate and test sanitized tokens.
     $tests = array();
     $tests['[vocabulary:vid]'] = $this->vocabulary->id();
-    $tests['[vocabulary:name]'] = String::checkPlain($this->vocabulary->name);
-    $tests['[vocabulary:description]'] = Xss::filter($this->vocabulary->description);
+    $tests['[vocabulary:name]'] = String::checkPlain($this->vocabulary->label());
+    $tests['[vocabulary:description]'] = Xss::filter($this->vocabulary->getDescription());
     $tests['[vocabulary:node-count]'] = 1;
     $tests['[vocabulary:term-count]'] = 2;
 
@@ -149,8 +149,8 @@ function testTaxonomyTokenReplacement() {
     }
 
     // Generate and test unsanitized tokens.
-    $tests['[vocabulary:name]'] = $this->vocabulary->name;
-    $tests['[vocabulary:description]'] = $this->vocabulary->description;
+    $tests['[vocabulary:name]'] = $this->vocabulary->label();
+    $tests['[vocabulary:description]'] = $this->vocabulary->getDescription();
 
     foreach ($tests as $input => $expected) {
       $output = $token_service->replace($input, array('vocabulary' => $this->vocabulary), array('langcode' => $language_interface->id, 'sanitize' => FALSE));
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/VocabularyInterface.php b/core/modules/taxonomy/lib/Drupal/taxonomy/VocabularyInterface.php
index 80c7781..c1c0c50 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/VocabularyInterface.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/VocabularyInterface.php
@@ -14,4 +14,87 @@
  */
 interface VocabularyInterface extends ConfigEntityInterface {
 
+  /**
+   * Sets the vocabulary name.
+   *
+   * @param string name
+   *   The vocabulary name.
+   *
+   * @return \Drupal\taxonomy\VocabularyInterface
+   *   The called vocabulary entity.
+   */
+  public function setName($name);
+
+  /**
+   * Sets the vocabulary weight.
+   *
+   * @param integer $weight
+   *   The weight of vocabulary.
+   *
+   * @return \Drupal\taxonomy\VocabularyInterface
+   *   The called vocabulary entity.
+   */
+  public function setWeight($weight);
+
+  /**
+   * Returns the vocabulary weight.
+   *
+   * @return integer
+   *   The vocabulary weight.
+   */
+  public function getWeight();
+
+  /**
+   * Sets the vocabulary hierarchy.
+   *
+   * @param integer $hierarchy
+   *   The hierarchy type of vocabulary.
+   *   Possible values:
+   *    - TAXONOMY_HIERARCHY_DISABLED: No parents.
+   *    - TAXONOMY_HIERARCHY_SINGLE: Single parent.
+   *    - TAXONOMY_HIERARCHY_MULTIPLE: Multiple parents.
+   *
+   * @return \Drupal\taxonomy\VocabularyInterface
+   *   The called vocabulary entity.
+   */
+  public function setHierarchy($hierarchy);
+
+  /**
+   * Returns the vocabulary hierarchy.
+   *
+   * @return integer
+   *   The vocabulary hierarchy.
+   */
+  public function getHierarchy();
+
+  /**
+   * Sets the vocabulary description.
+   *
+   * @param string description
+   *   The vocabulary description.
+   *
+   * @return \Drupal\taxonomy\VocabularyInterface
+   *   The called vocabulary entity.
+   */
+  public function setDescription($description);
+
+  /**
+   * Returns the vocabulary description.
+   *
+   * @return string
+   *   The vocabulary description.
+   */
+  public function getDescription();
+
+  /**
+   * Sets the vocabulary vid.
+   *
+   * @param string $machineName
+   *   The vocabulary machine name.
+   *
+   * @return \Drupal\taxonomy\VocabularyInterface
+   *   The called vocabulary entity.
+   */
+  public function setNewVid($machineName);
+
 }
diff --git a/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php b/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php
index 0aabe85..ccdf5a9 100644
--- a/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php
+++ b/core/modules/views_ui/lib/Drupal/views_ui/ViewUI.php
@@ -855,6 +855,15 @@ public function uuid() {
   }
 
   /**
+   * {@inheritdoc}
+   */
+  public function setUuid() {
+    $uuid = new Uuid();
+    $this->storage->uuid = $uuid->generate();
+    return $this->storage->uuid;
+  }
+
+  /**
    * Implements \Drupal\Core\Entity\EntityInterface::isNew().
    */
   public function isNew() {
