Fusionar subarreglos usando Observables

Tengo esta estructura de datos:

[{
    id : 1,
    name : "Item 1",
    subItems : [{
            id : 1,
            name : "SubItem 1"
        },{
            id : 2,
            name : "SubItem 2"
        }
    ]
}, {
    id : 2,
    name : "Item 2",
    subItems : [{
            id : 3,
            name : "SubItem 3"
        }, {
            id : 4,
            name : "SubItem 4"
        }
    ]
}]

Realizo la siguiente llamada a un servicio web para obtener los artículos:this.dataService.get("items")

Devuelto es unObservable<Item[]>. ¿Qué operadores observables puedo usar para obtener solo una lista concatenada de SubItems? Me gustaría terminar con algo como esto:

[{
    id : 1,
    name : "SubItem 1"
}, {
    id : 2,
    name : "SubItem 2"
},
{
    id : 3,
    name : "SubItem 3"
}, {
    id : 4,
    name : "SubItem 4"
}]

¿Debo usar algo comoflatMap oconcat?

Respuestas a la pregunta(2)

Su respuesta a la pregunta