presentSFeats :: [DAG a Y] -> [Feature]
presentSFeats =
  concatMap sentSFeats
  where
    sentSFeats dag =
      [ C.SFeature x
      | edgeID <- DAG.dagEdges dag
      , DAG.isInitialEdge edgeID dag
      , x <- lbs (DAG.edgeLabel edgeID dag) ]


-- | 'Feature's of all kinds which occur in the given dataset.
presentSFeats :: [DAG a Y] -> [Feature]
presentSFeats =
  concatMap sentSFeats
  where
    sentSFeats dag =
      [ C.SFeature x
      | edgeID <- DAG.dagEdges dag
      , DAG.isInitialEdge edgeID dag
      , x <- lbs (DAG.edgeLabel edgeID dag) ]


-- | 'Feature's of all kinds which occur in the given dataset.
presentSFeats =
  concatMap sentSFeats
  where
    sentSFeats dag =
      [ C.SFeature x
      | edgeID <- DAG.dagEdges dag
      , DAG.isInitialEdge edgeID dag
      , x <- lbs (DAG.edgeLabel edgeID dag) ]


-- | 'Feature's of all kinds which occur in the given dataset.