def get_singleton_scaffolds(scaffoldgraph):
    """Get singleton scaffolds within a scaffold graph.

    Singleton scaffolds represent scaffolds that are direct members of only
    one compound in the current collection.

    Parameters
    ----------
    scaffoldgraph : ScaffoldGraph
        A ScaffoldGraph object to query

    Returns
    -------
    list
        A list of scaffold node keys corresponding to virtual scaffolds.

    """
    singletons = []
    for scaffold in scaffoldgraph.get_scaffold_nodes():
        mol_count = 0
        for succ in scaffoldgraph.successors(scaffold):
            if scaffoldgraph.nodes[succ].get('type') == 'molecule':
                mol_count += 1
        if mol_count == 1:
            singletons.append(scaffold)
    return singletons