code: protected function getAttribute($metaModelIdOrName, $intDataId, $strAttributeName, $strOutput = 'raw')
      {
          // Get the MM.
          $objMM = $this->loadMetaModel($metaModelIdOrName);
          if (null === $objMM) {
              return false;
          }
  
          // Set output to default if not set.
          if (empty($strOutput)) {
              $strOutput = 'raw';
          }
  
          // Get item.
          $objMetaModelItem = $objMM->findById($intDataId);
          if (null === $objMetaModelItem) {
              throw new \RuntimeException('MetaModel item not found: ' . $intDataId);
          }
  
          // Parse attribute.
          $arrAttr = $objMetaModelItem->parseAttribute($strAttributeName);
  
          return $arrAttr[$strOutput];
      }
docs: Get from MM X the item with the id Y and parse the attribute Z and return it.
  
  @param string|int $metaModelIdOrName ID or name of MetaModels.
  
  @param int        $intDataId         ID of the data row.
  
  @param string     $strAttributeName  Name of the attribute.
  
  @param string     $strOutput         Name of output. Default:raw|text|html5|xhtml|...
  
  @return boolean|string Return false when nothing was found or return the value.
  
  @throws \RuntimeException If $intDataId does not provide an existingMetaModel ID.