Before form.xhtml is saved, the attachment points to a temporary file (oxf:/...). But once it's saved, Form Runner places a path relative to the persistence layer. So that's where the difference comes from.
From the persistence layer perspective, you should only care that form definitions and data can have attachments, placed in the same virtual "directory" as form.xhtml or data.xml.
Following-up on my previous message, I realize that I did not really answer your question. But I guess it comes down in figuring out which attachments form.xhtml or data.xml refer to. And the answer is probably: any path pointing to the persistence layer. In practice, it can be paths pointing to where the form definition is published, or to where the data is published.