public function findAllByAttributeSetId($attributeSetId)
    {

        // initialize the array for the EAV attribute sets
        $eavAttributeGroups = array();

        // load the attributes
        $this->eavAttributeGroupsByAttributeSetIdStmt->execute(array(MemberNames::ATTRIBUTE_SET_ID => $attributeSetId));

        // load the available EAV attribute option groups
        $availableEavAttributeGroups = $this->eavAttributeGroupsByAttributeSetIdStmt->fetchAll(\PDO::FETCH_ASSOC);

        // prepare the array with the attribute group names as keys
        foreach ($availableEavAttributeGroups as $eavAttributeGroup) {
            $eavAttributeGroups[$eavAttributeGroup[MemberNames::ATTRIBUTE_GROUP_NAME]] = $eavAttributeGroup;
        }

        // return the array with the EAV attribute groups
        return $eavAttributeGroups;
    }