It is not possible to set a predefined value into form fields, they get overwritten by the <stub:item> template. Example:
<stub:form send-to-page="shop">
<stub:itemframe id="shopData">
<stub:item name="id" type="text" value="ddd"/>
<ixsl:attribute name="value">
<ixsl:value-of select="/document/shopData/shop/@id"/>
</ixsl:attribute>
</stub:item>
<stub:item name="title" type="text"/>
<stub:item name="url" type="text"/>
<stub:item name="action" type="submit"/>
</stub:itemframe>
</stub:form>
The result will be an empty value attribute:
<form action="shop" method="post">
<div class="itemframe" id="shopData">
<ul>
<li>
<label for="shopData_id">Site-Id:</label>
<input id="shopData_id" name="shopData_id" type="text" value="" />
</li>
<li>
<label for="shopData_title">Name of Shop:</label>
<input id="shopData_title" name="shopData_title" type="text" value="" />
</li>
<li>
<label for="shopData_url">URL of Shop:</label>
<input id="shopData_url" name="shopData_url" type="text" value="" />
</li>
<li>
<input name="shopData_action" type="submit" />
</li>
</ul>
</div>
</form>
However there must be a possibility to set a predefined value if the node /document/forms/shopData/id does not exist.