Issues in Mapping GenCAM to XML
McLay, M.; Scholand, A.J.; Fulton, R.E. (1999) , GCA Conference, Markup Technologies '99, Philadelphia, PA, 47-52.
Realizing that data exchange problems cost the U.S. Electronics Industry upwards of 150 million dollars annually, the IPC (Institute for Interconnecting and Packaging Electronic Circuits) created the GenCAM (generic computer-aided manufacturing) format. GenCAM facilitates and reduces errors in the communication of PCB/A manufacturing data from the designer to the fabricator. These standards (IPC-2511 through IPC-2518) integrate functional descriptions, test data, and administrative information into a single file format. This format is sufficiently detailed for tooling, manufacturing, assembly, inspection and testing requirements. A rigorous design and development process under the supervision of the IPC produced a highly efficient object model for information interchange of data related to these activities.
XML (eXtensible Markup Language) is a web-enabled data interchange language derived from the SGML (Standard Generalized Markup Language). The W3C (World Wide Web Consortium)approved XML as a W3C recommendation in February 1998. XML is used to define application-specific markup languages to represent structured data.
An important feature of XML is validation. Validation in XML-defined grammars allows an application to ensure that a given instance of data is complete, correctly hierarchical, and with acceptable content values. Comparing a data instance to a DTD (Document Type Definition) enforces validity. A DTD is a computer processable description specifying which tags and attributes, and in what order, are allowed in the data instance file. A DTD can be included in line with a data file, or the instance file can point to a DTD using the URI (Universal Resource Identifier) mechanism.
An XML version of GenCAM is desirable for greater integration with the next generation of IPC standards for the electronic interconnection industry, CAMX. We have been researching the possible alternative ways of creating a specific XML markup language mapped from the GenCAM standard, with the aim of providing input to the IPC GenCAM Committee for future versions of GenCAM. Our working title for this generic mapping process is GenX, an abbreviation of the term GenCAM in XML. Once a final design is approved by the IPC and its member companies, the GenX DTD will be similar in some respects to the contents of the IPC-251x series of documents that currently define the GenCAM standard; both describe what is legally allowable in the file. Our research to date has shown, however, that achieving perfect correspondence between the current GenCAM standard and an XML version is difficult. This paper documents some of the difficulties and design issues we have encountered in mapping from the existing GenCAM object model to a DTD-constrained XML model.