Document Types > Document Types > Document Type Migration Issues
  
Document Type Migration Issues
In releases of Epic Editor prior to 5.0, MarkIt was used to compile XML DTDs. MarkIt, however, only supports SGML DTD syntax. Beginning with the 5.0 release of Epic Editor and continuing with Arbortext Editor, Xerces is the parser used to parse XML DTDs. Xerces rigidly validates XML document types, and as a result, DTDs that were accepted by MarkIt without complaint may fail to parse or may generate warnings if the set documenttypewarnings option is on.
Following is a list of constructs that Xerces will not consider valid that MarkIt may have allowed. Xerces treats many of these errors as fatal and will abort its parsing of the DTD on the first such error. The error message will be written to the Parser Error Messages window and the Invalid Schema/DTD file error dialog will be displayed.
More than one element being defined at once.
Tag minimization defined in element definition.
Comments embedded in markup.
"&" connector in content model.
Mixed content model with #PCDATA ending with “+” instead of "*".
#PCDATA not the first choice of a repeatable or-group at the top level of a content model.
Element content models of CDATA and RCDATA.
Inclusions and exclusions.
Attribute types NAME, NAMES, NUMBER, NUMBERS, NUTOKEN, NUTOKENS.
Attribute default value type of CONREF.
Duplicate definition of the same attribute name for an element.
Entity references not ending in a semi-colon.
A parameter entity reference used for a default attribute value.
Default attribute value not quoted.
External ENTITY declaration missing system id following PUBLIC identifier.
Parameter entity reference to SGML ISO character entities instead of XML version, such as iso-lat1.gml included instead of iso-lat1.ent.
For example, the SGML entity declaration:
<!ENTITY % ISOlat1 PUBLIC
"ISO 8879:1986//ENTITIES Added Latin 1//EN">
should be replaced with the XML equivalent:
<!ENTITY % ISOlat1 PUBLIC
"ISO 8879:1986//ENTITIES Added Latin 1//EN//XML"
"iso-lat1.ent">
Actual .dtd or entity file encoding does not match encoding specified on XML PI or UTF-8 default if not specified. (Refer to the following section XML Version PI.)