#include <XML/DTD.oh>
#include <LongStrings.oh>
XML_DTD__AttrDecl XML_DTD__undefAttr;
static void XML_DTD__InitNamespace(XML_DTD__Namespace ns);
static void XML_DTD__InitEntity(XML_DTD__Entity ent, XML_UnicodeBuffer__CharArray name, OOC_INT8 type, XML_UnicodeBuffer__CharArray entityValue, OOC_CHAR8 externalMarkupDecl);
static void XML_DTD__InitInternalEntity(XML_DTD__InternalEntity ent, XML_UnicodeBuffer__CharArray name, OOC_INT8 type, XML_UnicodeBuffer__CharArray entityValue, OOC_CHAR8 externalMarkupDecl);
static void XML_DTD__InitExternalEntity(XML_DTD__ExternalEntity ent, XML_UnicodeBuffer__CharArray name, OOC_INT8 type, XML_UnicodeBuffer__CharArray _public, XML_UnicodeBuffer__CharArray system, XML_UnicodeBuffer__CharArray ndata, URI__URI baseURI, OOC_CHAR8 externalMarkupDecl);
static void XML_DTD__InitNotation(XML_DTD__Notation notation, XML_UnicodeBuffer__CharArray name, XML_UnicodeBuffer__CharArray _public, XML_UnicodeBuffer__CharArray system, URI__URI baseURI);
static void XML_DTD__InitCP(XML_DTD__CP cp, OOC_INT8 cpMode);
static void XML_DTD__InitNamespaceDeclaration(XML_DTD__NamespaceDeclaration namespaceDecl, XML_UnicodeBuffer__CharArray prefix, XML_DTD__StringURI uri);

/* run-time meta data */
static RT0__ModuleDesc _mid;
RT0__StructDesc _td_XML_DTD__StringVar = { (RT0__Struct[]){&RT0__longchar}, NULL, &_mid, "StringVar", 2, 1, RT0__strOpenArray };
RT0__StructDesc _td_XML_DTD__Namespace = { (RT0__Struct[]){&_td_XML_DTD__NamespaceDesc}, NULL, &_mid, "Namespace", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__Declaration = { (RT0__Struct[]){&_td_XML_DTD__DeclarationDesc}, NULL, &_mid, "Declaration", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__Builder = { (RT0__Struct[]){&_td_XML_DTD__BuilderDesc}, NULL, &_mid, "Builder", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__BuilderDesc = { (RT0__Struct[]){&_td_XML_DTD__BuilderDesc}, (void*[]){(void*)XML_DTD__BuilderDesc_AddAttribute,(void*)XML_DTD__BuilderDesc_AttachAttributes,(void*)XML_DTD__BuilderDesc_IsValidEntityDecl,(void*)XML_DTD__BuilderDesc_NewAttValue,(void*)XML_DTD__BuilderDesc_NewAttrDecl,(void*)XML_DTD__BuilderDesc_NewCharacters,(void*)XML_DTD__BuilderDesc_NewChoiceCP,(void*)XML_DTD__BuilderDesc_NewDocumentEntity,(void*)XML_DTD__BuilderDesc_NewElementDecl,(void*)XML_DTD__BuilderDesc_NewEntityRef,(void*)XML_DTD__BuilderDesc_NewEnumeration,(void*)XML_DTD__BuilderDesc_NewExternalDTD,(void*)XML_DTD__BuilderDesc_NewExternalEntity,(void*)XML_DTD__BuilderDesc_NewInternalEntity,(void*)XML_DTD__BuilderDesc_NewNameCP,(void*)XML_DTD__BuilderDesc_NewNotation,(void*)XML_DTD__BuilderDesc_NewSeqCP,(void*)XML_DTD__BuilderDesc_SetRootName}, &_mid, "BuilderDesc", 48, 0, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__DeclarationDesc = { (RT0__Struct[]){&_td_XML_DTD__DeclarationDesc}, (void*[]){}, &_mid, "DeclarationDesc", 16, 0, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__NamespaceDesc = { (RT0__Struct[]){&_td_XML_DTD__NamespaceDesc}, (void*[]){(void*)XML_DTD__NamespaceDesc_Add,(void*)XML_DTD__NamespaceDesc_Get}, &_mid, "NamespaceDesc", 8, 0, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__Fragment = { (RT0__Struct[]){&_td_XML_DTD__FragmentDesc}, NULL, &_mid, "Fragment", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__FragmentDesc = { (RT0__Struct[]){&_td_XML_DTD__FragmentDesc}, (void*[]){}, &_mid, "FragmentDesc", 8, 0, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__Characters = { (RT0__Struct[]){&_td_XML_DTD__CharactersDesc}, NULL, &_mid, "Characters", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__CharactersDesc = { (RT0__Struct[]){&_td_XML_DTD__FragmentDesc,&_td_XML_DTD__CharactersDesc}, (void*[]){}, &_mid, "CharactersDesc", 24, 1, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__EntityRef = { (RT0__Struct[]){&_td_XML_DTD__EntityRefDesc}, NULL, &_mid, "EntityRef", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__Entity = { (RT0__Struct[]){&_td_XML_DTD__EntityDesc}, NULL, &_mid, "Entity", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__EntityRefDesc = { (RT0__Struct[]){&_td_XML_DTD__FragmentDesc,&_td_XML_DTD__EntityRefDesc}, (void*[]){}, &_mid, "EntityRefDesc", 24, 1, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__AttValue = { (RT0__Struct[]){&_td_XML_DTD__AttValueDesc}, NULL, &_mid, "AttValue", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__AttValueDesc = { (RT0__Struct[]){&_td_XML_DTD__AttValueDesc}, (void*[]){(void*)XML_DTD__AttValueDesc_Append,(void*)XML_DTD__AttValueDesc_Clear,(void*)XML_DTD__AttValueDesc_Flatten,(void*)XML_DTD__AttValueDesc_FlattenNorm,(void*)XML_DTD__AttValueDesc_FlattenValue,(void*)XML_DTD__AttValueDesc_Length}, &_mid, "AttValueDesc", 16, 0, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__NameNode = { (RT0__Struct[]){&_td_XML_DTD__NameNodeDesc}, NULL, &_mid, "NameNode", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__NameNodeDesc = { (RT0__Struct[]){&_td_XML_DTD__NameNodeDesc}, (void*[]){}, &_mid, "NameNodeDesc", 16, 0, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__Enumeration = { (RT0__Struct[]){&_td_XML_DTD__EnumerationDesc}, NULL, &_mid, "Enumeration", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__EnumerationDesc = { (RT0__Struct[]){&_td_XML_DTD__EnumerationDesc}, (void*[]){(void*)XML_DTD__EnumerationDesc_Append,(void*)XML_DTD__EnumerationDesc_Matches}, &_mid, "EnumerationDesc", 16, 0, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__AttrDecl = { (RT0__Struct[]){&_td_XML_DTD__AttrDeclDesc}, NULL, &_mid, "AttrDecl", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__AttrDeclDesc = { (RT0__Struct[]){&_td_XML_DTD__DeclarationDesc,&_td_XML_DTD__AttrDeclDesc}, (void*[]){}, &_mid, "AttrDeclDesc", 56, 1, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__EntityDesc = { (RT0__Struct[]){&_td_XML_DTD__DeclarationDesc,&_td_XML_DTD__EntityDesc}, (void*[]){(void*)XML_DTD__EntityDesc_IsDocumentEntity,(void*)XML_DTD__EntityDesc_LengthValue,(void*)XML_DTD__EntityDesc_SetEntityValue}, &_mid, "EntityDesc", 48, 1, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__InternalEntity = { (RT0__Struct[]){&_td_XML_DTD__InternalEntityDesc}, NULL, &_mid, "InternalEntity", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__InternalEntityDesc = { (RT0__Struct[]){&_td_XML_DTD__DeclarationDesc,&_td_XML_DTD__EntityDesc,&_td_XML_DTD__InternalEntityDesc}, (void*[]){(void*)XML_DTD__EntityDesc_IsDocumentEntity,(void*)XML_DTD__EntityDesc_LengthValue,(void*)XML_DTD__EntityDesc_SetEntityValue}, &_mid, "InternalEntityDesc", 48, 2, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__ExternalEntity = { (RT0__Struct[]){&_td_XML_DTD__ExternalEntityDesc}, NULL, &_mid, "ExternalEntity", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__ExternalEntityDesc = { (RT0__Struct[]){&_td_XML_DTD__DeclarationDesc,&_td_XML_DTD__EntityDesc,&_td_XML_DTD__ExternalEntityDesc}, (void*[]){(void*)XML_DTD__ExternalEntityDesc_IsDocumentEntity,(void*)XML_DTD__EntityDesc_LengthValue,(void*)XML_DTD__EntityDesc_SetEntityValue,(void*)XML_DTD__ExternalEntityDesc_SetCodecFactory,(void*)XML_DTD__ExternalEntityDesc_SetEncoding,(void*)XML_DTD__ExternalEntityDesc_SetStandalone,(void*)XML_DTD__ExternalEntityDesc_SetVersion}, &_mid, "ExternalEntityDesc", 112, 2, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__Notation = { (RT0__Struct[]){&_td_XML_DTD__NotationDesc}, NULL, &_mid, "Notation", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__NotationDesc = { (RT0__Struct[]){&_td_XML_DTD__DeclarationDesc,&_td_XML_DTD__NotationDesc}, (void*[]){}, &_mid, "NotationDesc", 40, 1, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__CP = { (RT0__Struct[]){&_td_XML_DTD__CPDesc}, NULL, &_mid, "CP", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__CPDesc = { (RT0__Struct[]){&_td_XML_DTD__CPDesc}, (void*[]){(void*)XML_DTD__CPDesc_SetMode,(void*)XML_DTD__CPDesc_SetNext}, &_mid, "CPDesc", 16, 0, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__ChoiceCP = { (RT0__Struct[]){&_td_XML_DTD__ChoiceCPDesc}, NULL, &_mid, "ChoiceCP", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__ChoiceCPDesc = { (RT0__Struct[]){&_td_XML_DTD__CPDesc,&_td_XML_DTD__ChoiceCPDesc}, (void*[]){(void*)XML_DTD__CPDesc_SetMode,(void*)XML_DTD__CPDesc_SetNext}, &_mid, "ChoiceCPDesc", 24, 1, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__SeqCP = { (RT0__Struct[]){&_td_XML_DTD__SeqCPDesc}, NULL, &_mid, "SeqCP", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__SeqCPDesc = { (RT0__Struct[]){&_td_XML_DTD__CPDesc,&_td_XML_DTD__SeqCPDesc}, (void*[]){(void*)XML_DTD__CPDesc_SetMode,(void*)XML_DTD__CPDesc_SetNext}, &_mid, "SeqCPDesc", 24, 1, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__NameCP = { (RT0__Struct[]){&_td_XML_DTD__NameCPDesc}, NULL, &_mid, "NameCP", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__NameCPDesc = { (RT0__Struct[]){&_td_XML_DTD__CPDesc,&_td_XML_DTD__NameCPDesc}, (void*[]){(void*)XML_DTD__CPDesc_SetMode,(void*)XML_DTD__CPDesc_SetNext}, &_mid, "NameCPDesc", 24, 1, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__RegexpInfo = { (RT0__Struct[]){&_td_XML_DTD__RegexpInfoDesc}, NULL, &_mid, "RegexpInfo", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__RegexpInfoDesc = { (RT0__Struct[]){&_td_XML_DTD__RegexpInfoDesc}, (void*[]){}, &_mid, "RegexpInfoDesc", 0, 0, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__ElementDecl = { (RT0__Struct[]){&_td_XML_DTD__ElementDeclDesc}, NULL, &_mid, "ElementDecl", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__ElementDeclDesc = { (RT0__Struct[]){&_td_XML_DTD__DeclarationDesc,&_td_XML_DTD__ElementDeclDesc}, (void*[]){(void*)XML_DTD__ElementDeclDesc_IsElementContent,(void*)XML_DTD__ElementDeclDesc_IsEmpty,(void*)XML_DTD__ElementDeclDesc_SetMultipleDecl,(void*)XML_DTD__ElementDeclDesc_SetRegexp}, &_mid, "ElementDeclDesc", 64, 1, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__NamespaceDeclaration = { (RT0__Struct[]){&_td_XML_DTD__NamespaceDeclarationDesc}, NULL, &_mid, "NamespaceDeclaration", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__14383 = { (RT0__Struct[]){&RT0__char}, NULL, &_mid, NULL, 1, 1, RT0__strOpenArray };
RT0__StructDesc _td_XML_DTD__StringURI = { (RT0__Struct[]){&_td_XML_DTD__14383}, NULL, &_mid, "StringURI", 8, -1, RT0__strPointer };
RT0__StructDesc _td_XML_DTD__NamespaceDeclarationDesc = { (RT0__Struct[]){&_td_XML_DTD__NamespaceDeclarationDesc}, (void*[]){}, &_mid, "NamespaceDeclarationDesc", 16, 0, RT0__strRecord };
RT0__StructDesc _td_XML_DTD__36176 = { (RT0__Struct[]){&RT0__longchar}, NULL, &_mid, NULL, 2, 1, RT0__strOpenArray };
RT0__StructDesc _td_XML_DTD__36454 = { (RT0__Struct[]){&RT0__longchar}, NULL, &_mid, NULL, 2, 1, RT0__strOpenArray };
RT0__StructDesc _td_XML_DTD__36608 = { (RT0__Struct[]){&RT0__char}, NULL, &_mid, NULL, 1, 1, RT0__strOpenArray };
RT0__StructDesc _td_XML_DTD__37086 = { (RT0__Struct[]){&RT0__longchar}, NULL, &_mid, NULL, 2, 1, RT0__strOpenArray };
static RT0__ModuleDesc _mid = { (OOC_CHAR8*)"XML:DTD", (RT0__Struct[]) { &_td_XML_DTD__StringVar, &_td_XML_DTD__Namespace, &_td_XML_DTD__Declaration, &_td_XML_DTD__Builder, &_td_XML_DTD__BuilderDesc, &_td_XML_DTD__DeclarationDesc, &_td_XML_DTD__NamespaceDesc, &_td_XML_DTD__Fragment, &_td_XML_DTD__FragmentDesc, &_td_XML_DTD__Characters, &_td_XML_DTD__CharactersDesc, &_td_XML_DTD__EntityRef, &_td_XML_DTD__Entity, &_td_XML_DTD__EntityRefDesc, &_td_XML_DTD__AttValue, &_td_XML_DTD__AttValueDesc, &_td_XML_DTD__NameNode, &_td_XML_DTD__NameNodeDesc, &_td_XML_DTD__Enumeration, &_td_XML_DTD__EnumerationDesc, &_td_XML_DTD__AttrDecl, &_td_XML_DTD__AttrDeclDesc, &_td_XML_DTD__EntityDesc, &_td_XML_DTD__InternalEntity, &_td_XML_DTD__InternalEntityDesc, &_td_XML_DTD__ExternalEntity, &_td_XML_DTD__ExternalEntityDesc, &_td_XML_DTD__Notation, &_td_XML_DTD__NotationDesc, &_td_XML_DTD__CP, &_td_XML_DTD__CPDesc, &_td_XML_DTD__ChoiceCP, &_td_XML_DTD__ChoiceCPDesc, &_td_XML_DTD__SeqCP, &_td_XML_DTD__SeqCPDesc, &_td_XML_DTD__NameCP, &_td_XML_DTD__NameCPDesc, &_td_XML_DTD__RegexpInfo, &_td_XML_DTD__RegexpInfoDesc, &_td_XML_DTD__ElementDecl, &_td_XML_DTD__ElementDeclDesc, &_td_XML_DTD__NamespaceDeclaration, &_td_XML_DTD__StringURI, &_td_XML_DTD__NamespaceDeclarationDesc, NULL } };

extern void OOC_XML_DTD_init0() {
  RT0__RegisterModule(&_mid);
  OOC_XML_DTD_init();
}

/* --- */
