public function getAllClasses()
    {
        $returnValue = null;

        
    	
        $returnValue = new core_kernel_classes_ContainerCollection(new core_kernel_classes_Container(__METHOD__),__METHOD__);
        
        $dbWrapper = core_kernel_classes_DbWrapper::singleton();
        
        $query =  "SELECT DISTINCT subject FROM statements WHERE (predicate = ? AND object = ?) OR predicate = ?";
    	$result	= $dbWrapper->query($query, array(
			OntologyRdf::RDF_TYPE,
            OntologyRdfs::RDFS_CLASS,
            OntologyRdfs::RDFS_SUBCLASSOF
        ));
        
        while ($row = $result->fetch()) {
        	$returnValue->add(new core_kernel_classes_Class($row['subject']));
        }
		
        

        return $returnValue;
    }