You can define a custom editTemplate element triggered by the tag.
Create a new (system) tiddler tagged with "
$:/tags/EditTemplate". You can give it a field "list-after" set to "$:/core/ui/EditTemplate/body" (the fields you want with dropdown will be located after the body editing window, before the dropdown for the type field).
This tiddler will contain something like that (see the SelectWidget documentation for the options of the dropdown):
<$list filter="[all[current]tag[some tag]]">
Field name 1: <$select field="field_name_1">
<option value=''></option>
<option>value 1</option>
<option>value 2</option>
<option>value 3</option>
</$select>
Field name 2: <$select field="field_name_2">
<option value=''></option>
<$list filter='[...(filter that selects the values)...]'>
<option><$view field='title'/></option>
</$list>
</$select>
</$list>
The fields will still be available in the classic way in edit view. To remove them, create for each field a system tiddler called "
$:/config/EditTemplateFields/Visibility/field name" with the text "hide".
However, this will NOT automatically give a default value to the fields. The only way would be to create the tiddlers from a template.