I ran into a problem with the CSDB. I was making text edits to a DM in Arbortext Editor and printing to PDF to see the result when it suddenly threw an error back at me saying the document is invalid and wouldn't print to PDF. Now I would have thought the Editor/CSDB was supposed to make sure the DM was valid. In this state, not printing, the document validated successfully using the Green Checkmark and when saved to the CSDB, however as I have discovered it apparently can lose any association with graphics.
Here’s what happened, I was attempting to print a PDF from the menu bar when this error came back, I had already printed to PDF not 5 minutes previously so this was a total surprise, I was not making changes to markup:
[A30171] com_call: Exception thrown by method PDF. Source is "System.Xml". Description is "Invalid XML document, The document does not have a root element.."
The first thing I did was validate the DM with the Green Checkmark, the Data Module Validated in Editor. I saved to the CSDB, which was successful, and closed the DM. I turned to the Control Station to validate the DM, which then turned up an error for every graphic in the DM.
In the CSDB there was no + sign beside the DM, as there were with other DMs with graphics. When I attempted to demand the graphics from the DMRL for this Data Module I got the following error for each graphic in the DM.
When I then re-opened the DM in Arbortext Editor it now showed each graphic tag with a red line through the ICN. If I looked at the available entities, using the CSDB plugin menu, the ICNs in question were all available. Validation of the DM then showed a pile of errors. Here's one:
Object in errorNature of errorgraphic Element's start tag contains an invalid attribute value.graphic Attribute 'infoEntityIdent' refers to an unknown entity 'ICN-EEEE-A-344310-A-EEEEE-00074-A-001-06'graphic No graphic entity name or path name for graphic.graphic Element's start tag contains an invalid attribute value.
I had to remove and replace every graphic in the DM from the entries using re-use before they would show up and the errors stopped. However, after all that I now get a completeness error:
jpeg Warning: notation not declared, referenced 18 times by a graphic entity.
I have had this entire problem before, which brings me around to the idea of periodically exporting the DMRL files as a backup. Within the CSDB there was no recovering the DMto make it valid. If one can't trust the CSDB to work 100% I don't see there being much choice but to do an adhoc export periodically so as to have something to go back to later on when this happens.