I don't know the framework support system well but it seems like it's necessary to specify tags and attributes separately (at least if one wants more detailed attributes description).
It has everything in the same file/object and there is no need to split anything.
Also, it uses an existing schema (http://json.schemastore.org/web-types) so developers can get their types validated when creating them.
On a related note, not sure if it's the limitation of the schema or Vetur but even though Nuxt defines type for an attribute, it doesn't seem to have any effect in Vetur.
Feature Request
I don't know the framework support system well but it seems like it's necessary to specify tags and attributes separately (at least if one wants more detailed attributes description).
Vetur should maybe consider using the schema that webstorm uses (for example https://github.com/nuxt/nuxt.js/blob/0a4aacc946126b5b4c39cd2e546edcb9838053c7/packages/vue-app/web-types/web-types.json).
It has everything in the same file/object and there is no need to split anything. Also, it uses an existing schema (http://json.schemastore.org/web-types) so developers can get their types validated when creating them.