Hi again. I'm getting it down, however in structured when, I click on the red graphic box to add my graphic. Select the image, make sure copy into document is checked, select "fit in selected rectangle", click set. I look at everything "figure title, graphic, fm.graphic, fm.title, fm.titleref" , everything looks great. I put in a cross-reference, everything looks great.
So, I save and close, then reopen. The graphic is missing, and error for unresolved cross-references come up.
Why won't it save the image?
Are you using the S1000D application? I'll answer this assuming that you are...
The problem is that you are copying the graphic file into the FrameMaker document. You should use Import by reference instead. There's a lot of XSLT processing going on in the background when you save the file. It expects to have a file name to work with. Without that the output fails. Do you you get any error messages when saving to XML?
I've actually tried it both ways. I changed it to "import by reference", and the same thing happens. I close, then open, and the image is gone.
Can you show us the following please?
Together they may may indicate where the problem is located.
I am hoping this is what you want.
DOCTYPE dmodule SYSTEM "file:///C:/Program%20Files%20(x86)/Adobe/AdobeFrameMaker2015/structure/xml/S1000D/schema401/description_401.dtd" [
levelledPara><para><internalRef></internalRef> shows hows a typical
figure id = "d7e79"><figureTitle id = "ft.d7e77"></figureTitle>
graphic xlink:type = "simple">
infoFileIdent = "ART/ICN-ACSS-B-34-45-30-C-1WYD3-00004-A-001-01.tif"
notationHint = "tif" reproductionWidth = "1.167in"
reproductionHeight = "1.167in" size = "1.000in 1.000in"
align = "acenter" position = "below" hoff = "0.083in"
voff = "0.083in" nsoff = "0.000in" crop = "1" float = "0"
impang = "0.000"/>
fm.title><fm.titleRef title = "ft.d7e77"/></fm.title></graphic></figure></levelledPara>
OK I see the problem. Before you save the file, it must be valid. If the file isn't valid, FrameMaker does not apply the XSL transformation. That means the resultant XML is not valid to the S1000D schema, instead it is created using the intermediate XML structure that matches the what you edit in FrameMaker.
You may wonder why it works that way? The reason is that FrameMaker has some limitations regarding the allowed structure for objects such as Graphics, Cross-refs and others. These special objects cannot have child elements, however the S1000D schemas define child structure for these elements. The only way to deal with these differences is to add special <fm.xyz> elements.
In the S1000D Preferences dialog there are options to help avoid this situation by preventing a save to XML for invalid documents.
If for any reason you can't make your data module valid it is possible to save it in FrameMaker native format until you can make it valid at some later time.
So, lesson leaned, you MUST validate the document before you save and close, otherwise you may loose all of your cross-references and your graphics. Select element, validation.