Skip to main content
raymondh2296372
Participating Frequently
February 14, 2022
Question

SGML ID already used message

  • February 14, 2022
  • 3 replies
  • 207 views

How do I address 'ID already used' error messages in my SGML report?

    This topic has been closed for replies.

    3 replies

    Inspiring
    February 15, 2022

    To summarize and add to the other responses, values of unique ID attributes cannot be used more than once. After all, the IDs are supposed to be unique. This requirement makes sense because the attributes are used to identify the cited element of a cross-reference. If multiple elements could have the same ID value, the IDs couldn't be used for this purpose.

     

    FrameMaker ID values can be defined by the user or assigned by FrameMaker when the user creates a cross-reference to an element whose ID attribute has not yet been set. IDs assigned by FrameMaker are never the same as an ID already in use in the containing document. However, FrameMaker cannot ensure that generated IDs are unique across a book, since files can be added to a book over time. It is unlikely that duplicates in a book will occur because FrameMaker does not allow multiple files with the same filename in a book and the algorithm for generating IDs does consider the filename.

     

    One common way of producing duplicate ID occurs when content containing IDs is copied from one file to another. Another is to create one appendix from another that has similar content. Any IDs used in the original version of such content will be retained in the copy.

     

    Any duplicates can be removed manually by the user or systematically by custom programming done with the FDK. It is also possible to save the FrameMaker material as XML so that custom programming can be done with XSLT which can produce SGML output.

     

    --Lynne

    Participant
    February 15, 2022

    This was always a problem when creating a single SGML instance from a FrameMaker book. The individual book files validate in FrameMaker so the book is considered valid. However it's only when the book is output to an SGML file and several entity files that the duplicate id values cause a problem.

    Matt-Tech Comm Tools
    Community Expert
    Community Expert
    February 14, 2022

    Locate the duplicate ID, and replace it with a unique value.

     

     

    -Matt Sullivan, FrameMaker Course Creator, Author, Trainer, Consultant
    frameexpert
    Community Expert
    Community Expert
    February 14, 2022

    Be careful though, you may have cross-references pointing the those elements and you may break one or more of them.