public function getCategoryAttributesByPrimaryKeyAndStoreIdExtendedWithAttributeCode($pk, $storeId)
    {

        // initialize the array for the attributes
        $attributes = array();

        // load the datetime attributes
        foreach ($this->categoryDatetimeRepository->findAllByPrimaryKeyAndStoreIdExtendedWithAttributeCode($pk, $storeId) as $attribute) {
            $attributes[$attribute[MemberNames::ATTRIBUTE_CODE]] = $attribute;
        }

        // load the decimal attributes
        foreach ($this->categoryDecimalRepository->findAllByPrimaryKeyAndStoreIdExtendedWithAttributeCode($pk, $storeId) as $attribute) {
            $attributes[$attribute[MemberNames::ATTRIBUTE_CODE]] = $attribute;
        }

        // load the integer attributes
        foreach ($this->categoryIntRepository->findAllByPrimaryKeyAndStoreIdExtendedWithAttributeCode($pk, $storeId) as $attribute) {
            $attributes[$attribute[MemberNames::ATTRIBUTE_CODE]] = $attribute;
        }

        // load the text attributes
        foreach ($this->categoryTextRepository->findAllByPrimaryKeyAndStoreIdExtendedWithAttributeCode($pk, $storeId) as $attribute) {
            $attributes[$attribute[MemberNames::ATTRIBUTE_CODE]] = $attribute;
        }

        // load the varchar attributes
        foreach ($this->categoryVarcharRepository->findAllByPrimaryKeyAndStoreIdExtendedWithAttributeCode($pk, $storeId) as $attribute) {
            $attributes[$attribute[MemberNames::ATTRIBUTE_CODE]] = $attribute;
        }

        // return the array with the attributes
        return $attributes;
    }