(header , body , sharedResources?)-->
(fileDesc , publStmt , dataCatReg? , contentInfo , workflowInfo? , (replacements | note | prop)*)-->
(fileName? , fileId , fileExtent)-->
(entryCount , termCount , byteCount)-->
(distributor , owner , idNo* , availability , date)-->
(name , address* , telephone* , fax* , eAddress*)-->
(name , address* , telephone* , fax* , eAddress*)-->
(ptOfSpeechDCS? , subjFieldDCS? , semReadingDCS? , inflectionDCS? , aspectDCS? , synTypeDCS? , synFrameDCS? , synStructDCS? , semTypeDCS?)-->
(quotMarkInfo , syllabificationMarkInfo? , abbrevHandling? , langIdUse , valueDefaults?)-->
(valDefault*)-->
(mapping)+-->
(mappingValue , mappingTarget+)-->
(entry+)-->
(mono , crossRefer* , transfer*)-->
(keyDC , monoDC? , generalDC?)-->
(canForm , language , ptOfSpeech , subjField , semReading?)-->
(monoAdmin? , monoMorph? , monoSyn? , monoSem?)-->
(userDesignat | syllabification | geogUsage | entryType | entryFormation | phraseType | entryStatus | entrySource | originator | adminStatus | company | abbrev | orthVariant | depSynonym | timeRestrict | product | project)+-->
(morphStruct | inflection | head | gender | case | number | person | tense | mood | aspect | degree | auxType)+-->
(synType | synPosition | transType | synStruct | synFrame | prep | verbPart)+-->
(definition | natGender | semType)+-->
(updater? , modDate? , example* , usage* , note*)-->
(keyDC , (crLinkType | orthVariantType | generalDC)+)-->
(canForm , language , ptOfSpeech , subjField , semReading?)-->
(keyDC , (trRestrictStmt | structChangeStmt | equival | generalDC)+)-->
(canForm , language , ptOfSpeech , subjField , semReading?)-->
(trRestrict , (logOp , trRestrict)*)-->
(contextStmt , testStmt)-->
(context , (logOp , context)*)-->
(test , (logOp , test)*)-->
(testType , testDC? , testValue)-->
(testType , testDC? , testValue)-->
(contextStmt , testStmt)-->
(context , (logOp , context)*)-->
(test , (logOp , test)*)-->
(testType , testDC? , testValue)-->
(testType , testDC? , testValue)-->