diff --git a/core/modules/tour/src/Entity/Tour.php b/core/modules/tour/src/Entity/Tour.php
index d5ffdff..d50caa9 100644
--- a/core/modules/tour/src/Entity/Tour.php
+++ b/core/modules/tour/src/Entity/Tour.php
@@ -34,21 +34,21 @@ class Tour extends ConfigEntityBase implements TourInterface {
    *
    * @var string
    */
-  public $id;
+  protected $id;
 
   /**
    * The module which this tour is assigned to.
    *
    * @var string
    */
-  public $module;
+  protected $module;
 
   /**
    * The label of the tour.
    *
    * @var string
    */
-  public $label;
+  protected $label;
 
   /**
    * The routes on which this tour should be displayed.
@@ -123,6 +123,13 @@ public function getTips() {
   /**
    * {@inheritdoc}
    */
+  public function getModule() {
+    return $this->module;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
   public function hasMatchingRoute($route_name, $route_params) {
     if (!isset($this->keyedRoutes)) {
       $this->keyedRoutes = array();
diff --git a/core/modules/tour/src/Plugin/tour/tip/TipPluginText.php b/core/modules/tour/src/Plugin/tour/tip/TipPluginText.php
index 555cb53..0362bc6 100644
--- a/core/modules/tour/src/Plugin/tour/tip/TipPluginText.php
+++ b/core/modules/tour/src/Plugin/tour/tip/TipPluginText.php
@@ -104,7 +104,7 @@ public function getLocation() {
   }
 
   /**
-   * Overrides \Drupal\tour\TipPluginBase::getAttributes().
+   * {@inheritdoc}
    */
   public function getAttributes() {
     $attributes = parent::getAttributes();
@@ -117,7 +117,7 @@ public function getAttributes() {
   }
 
   /**
-   * Implements \Drupal\tour\TipPluginInterface::getOutput().
+   * {@inheritdoc}
    */
   public function getOutput() {
     $output = '<h2 class="tour-tip-label" id="tour-tip-' . $this->getAriaId() . '-label">' . String::checkPlain($this->getLabel()) . '</h2>';
diff --git a/core/modules/tour/src/TipPluginBase.php b/core/modules/tour/src/TipPluginBase.php
index 98ab15d..8b9c54f 100644
--- a/core/modules/tour/src/TipPluginBase.php
+++ b/core/modules/tour/src/TipPluginBase.php
@@ -42,28 +42,42 @@
   protected $attributes;
 
   /**
-   * Implements \Drupal\tour\TipPluginInterface::getLabel().
+   * {@inheritdoc}
+   */
+  public function id() {
+    return $this->get('id');
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function getPluginId() {
+    return $this->get('plugin');
+  }
+
+  /**
+   * {@inheritdoc}
    */
   public function getLabel() {
     return $this->get('label');
   }
 
   /**
-   * Implements \Drupal\tour\TipPluginInterface::getWeight().
+   * {@inheritdoc}
    */
   public function getWeight() {
     return $this->get('weight');
   }
 
   /**
-   * Implements \Drupal\tour\TipPluginInterface::getAttributes().
+   * {@inheritdoc}
    */
   public function getAttributes() {
     return $this->get('attributes');
   }
 
   /**
-   * Implements \Drupal\tour\TipPluginInterface::get().
+   * {@inheritdoc}
    */
   public function get($key) {
     if (!empty($this->configuration[$key])) {
@@ -72,7 +86,7 @@ public function get($key) {
   }
 
   /**
-   * Implements \Drupal\tour\TipPluginInterface::set().
+   * {@inheritdoc}
    */
   public function set($key, $value) {
     $this->configuration[$key] = $value;
diff --git a/core/modules/tour/src/TipPluginInterface.php b/core/modules/tour/src/TipPluginInterface.php
index 5470878..323883e 100644
--- a/core/modules/tour/src/TipPluginInterface.php
+++ b/core/modules/tour/src/TipPluginInterface.php
@@ -18,6 +18,14 @@
 interface TipPluginInterface {
 
   /**
+   * Returns id of the tip.
+   *
+   * @return string
+   *   The id of the tip.
+   */
+  public function id();
+
+  /**
    * Returns label of the tip.
    *
    * @return string
diff --git a/core/modules/tour/src/TourInterface.php b/core/modules/tour/src/TourInterface.php
index ba0593f..afccc5d 100644
--- a/core/modules/tour/src/TourInterface.php
+++ b/core/modules/tour/src/TourInterface.php
@@ -55,6 +55,14 @@ public function getTip($id);
   public function getTips();
 
   /**
+   * Gets the module this tour belongs to.
+   *
+   * @return string
+   *   The module this tour belongs to.
+   */
+  public function getModule();
+
+  /**
    * Resets the statically cached keyed routes.
    */
   public function resetKeyedRoutes();
diff --git a/core/modules/tour/src/TourViewBuilder.php b/core/modules/tour/src/TourViewBuilder.php
index 6180bd5..ecbd1ac 100644
--- a/core/modules/tour/src/TourViewBuilder.php
+++ b/core/modules/tour/src/TourViewBuilder.php
@@ -9,6 +9,7 @@
 
 use Drupal\Core\Entity\EntityViewBuilder;
 use Drupal\Core\Entity\EntityInterface;
+use Drupal\Component\Utility\Html;
 
 /**
  * Provides a Tour view builder.
@@ -29,9 +30,9 @@ public function viewMultiple(array $entities = array(), $view_mode = 'full', $la
         if ($output = $tip->getOutput()) {
           $attributes = array(
             'class' => array(
-              'tip-module-' . drupal_clean_css_identifier($entity->get('module')),
-              'tip-type-' . drupal_clean_css_identifier($tip->get('plugin')),
-              'tip-' . drupal_clean_css_identifier($tip->get('id')),
+              'tip-module-' . Html::cleanCssIdentifier($entity->getModule()),
+              'tip-type-' . Html::cleanCssIdentifier($tip->getPluginId()),
+              'tip-' . Html::cleanCssIdentifier($tip->id()),
             ),
           );
           $list_items[] = array(
diff --git a/core/modules/tour/tests/tour_test/src/Plugin/tour/tip/TipPluginImage.php b/core/modules/tour/tests/tour_test/src/Plugin/tour/tip/TipPluginImage.php
index 89f051a..951406c 100644
--- a/core/modules/tour/tests/tour_test/src/Plugin/tour/tip/TipPluginImage.php
+++ b/core/modules/tour/tests/tour_test/src/Plugin/tour/tip/TipPluginImage.php
@@ -37,7 +37,7 @@ class TipPluginImage extends TipPluginBase {
   protected $alt;
 
   /**
-   * Overrides \Drupal\tour\Plugin\tour\tour\TipPluginInterface::getOutput().
+   * {@inheritdoc}
    */
   public function getOutput() {
     $image = array(
