Olá Pessoal,
A dúvida que vocês possuem é muito comum.
O que acontece, é que o formato KML (Keyhole Markup Language) escreve os atributos de uma forma diferente do conhecido formato SHP.
Veja um exemplo de como um arquivo KML é estruturado:
<?xml version="1.0" encoding="utf-8" ?>
<Document><Folder><name>teste_kml</name>
<Schema name="teste_kml" id="teste_kml">
<SimpleField name="Name" type="string"></SimpleField>
</Schema>
<Placemark>
<name>Bonópolis</name>
<Style><LineStyle><color>ff0000ff</color></LineStyle><PolyStyle><fill>0</fill></PolyStyle></Style>
<ExtendedData><SchemaData schemaUrl="#teste_kml">
<SimpleData name="Name">Bonópolis</SimpleData>
O KML criado através de um SHP pelo QGIS, não apresenta na tabela de atributos todos os dados, somente alguns, como no caso do campo NAME. Porém, no GoogleEarth aparece todos.
Se você tem um KML criado no GoogleEarth e quer visualizá-lo no QGIS, é necessário interpretar o campo DESCRIPTION.
No campo description aparece todas as informações em formato HTML, como por exemplo:
Eu utilizei o QGIS 'lisboa', ainda não testei a importação de KML no QGIS 2.
@Josue, para agregar dados a um shapefile, utilize a função join comparando duas colunas com informações semelhantes. Depois, exporte como KML.
Abraços,