I don't think you can do it quite like that with a fragment. I think you would need to use a select to grab the element, an example (can't test without the svg file)..
Snap.load("but1.svg", function (d) {
s.append(d);
var el = s.select("#myElement");
el.attr({
x: "50",
y: "50"
});
});