static private function linkTag( eZContentObjectAttribute $attribute, eZTagsObject $tagObject, $keyword, $locale, $priority )
    {
        $languageID = eZContentLanguage::idByLocale( $locale );
        if ( $languageID === false )
            return;

        if ( $locale == $attribute->attribute( 'language_code' ) )
        {
            if ( !$tagObject->hasTranslation( $locale ) )
            {
                $tagKeywordObject = new eZTagsKeyword( array(
                    'keyword_id'  => $tagObject->attribute( 'id' ),
                    'language_id' => $languageID,
                    'keyword'     => $keyword,
                    'locale'      => $locale,
                    'status'      => eZTagsKeyword::STATUS_PUBLISHED ) );
                $tagKeywordObject->store();
                $tagObject->updateLanguageMask();
            }
        }

        $linkObject = new eZTagsAttributeLinkObject( array(
            'keyword_id'              => $tagObject->attribute( 'id' ),
            'objectattribute_id'      => $attribute->attribute( 'id' ),
            'objectattribute_version' => $attribute->attribute( 'version' ),
            'object_id'               => $attribute->attribute( 'contentobject_id' ),
            'priority'                => $priority ) );
        $linkObject->store();
    }