MetaMap Machine Output (MMO) to MetaMap XML DTD
(MMOtoXML)

Skip Navigation  |   Home    NLM » LHNCBC » MetaMap » MetaMap Machine Output (MMO) to MetaMap XML DTD

Home
      The MetaMap Machine Output (MMO) to XML DTD contains all of the elements of MetaMap Machine Output. You can download the MMOtoXML.dtd DTD file if you like.

<!--=========================================================================

Special DTD Notation:
    * = 0 or more occurrences (optional element and repeatable)
    ? = 0 or 1 occurrences (optional element at most 1)
    + = 1 or more occurrences (required element and repeatable)
    | = choice, one or the other but not both

Note:
* MMO stands for MetaMap Machine Output.

* Root element is MMO.

* The MMOSet element can contain multiple MMO subelements.

* Each "List" requires a count of how many elements are in the list, even
  if the number is zero.

* IsHead is either "yes" or "no".

* IsOverMatch is either "yes" or "no".

* STs -> Semantic Type List

* ST -> Semantic Type

===========================================================================-->

<!ELEMENT MMO    (Args, AAs, Negations, Utterances)>

<!ELEMENT Args              (Command, Options)>
<!ELEMENT Command           (#PCDATA)>
<!ELEMENT Options           (Option*)>
<!ATTLIST Options
	Count CDATA #REQUIRED
>
<!ELEMENT Option            (OptName, OptValue?)>
<!ELEMENT OptName           (#PCDATA)>
<!ELEMENT OptValue          (#PCDATA)>

<!ELEMENT AAs               (AA*)>
<!ATTLIST AAs
	Count CDATA #REQUIRED
>
<!ELEMENT AA                (AAName, AAExpansion, NumAATokens, AALen,
                             NumDefnTokens, DefnLen, CUIs)>
<!ELEMENT AAName            (#PCDATA)>
<!ELEMENT AAExpansion       (#PCDATA)>
<!ELEMENT NumAATokens       (#PCDATA)>
<!ELEMENT AALen             (#PCDATA)>
<!ELEMENT NumDefnTokens     (#PCDATA)>
<!ELEMENT DefnLen           (#PCDATA)>
<!ELEMENT CUIs              (CUI*)>
<!ATTLIST CUIs
	Count CDATA #REQUIRED
>
<!ELEMENT CUI               (#PCDATA)>

<!ELEMENT Negations         (Negation*)>
<!ATTLIST Negations
	Count CDATA #REQUIRED
>
<!ELEMENT Negation          (NegType, NegTrigger, NTSpans, NegConcept, NCSpans)>
<!ELEMENT NegType           (#PCDATA)>
<!ELEMENT NegTrigger        (#PCDATA)>
<!ELEMENT NTSpans           (Span+)>
<!ATTLIST NTSpans
	Count CDATA #REQUIRED
>
<!ELEMENT Span              (StartPos, SpanLen)>
<!ELEMENT StartPos          (#PCDATA)>
<!ELEMENT SpanLen           (#PCDATA)>

<!ELEMENT NegConcept        (#PCDATA)>
<!ELEMENT NCSpans           (Span+)>
<!ATTLIST NCSpans
	Count CDATA #REQUIRED
>

<!ELEMENT Utterances        (Utterance+)>
<!ATTLIST Utterances
	Count CDATA #REQUIRED
>

<!ELEMENT Utterance         (PMID, Location, SeqNo, UText, UStartPos,
                             USpanLen, Phrases)>
<!ELEMENT PMID              (#PCDATA)>
<!ELEMENT Location          (#PCDATA)>
<!ELEMENT SeqNo             (#PCDATA)>
<!ELEMENT UText             (#PCDATA)>
<!ELEMENT UStartPos         (#PCDATA)>
<!ELEMENT USpanLen          (#PCDATA)>
<!ELEMENT Phrases           (Phrase+)>
<!ATTLIST Phrases
	Count CDATA #REQUIRED
>

<!ELEMENT Phrase            (PText, Tags, PStartPos, PSpanLen,
                             Candidates, Mappings)>
<!ELEMENT PText             (#PCDATA)>
<!ELEMENT Tags              (Tag+)>
<!ATTLIST Tags
	Count CDATA #REQUIRED
>
<!ELEMENT Tag               (Type, LexMatch?, InputMatch, POS?, Tokens)>
<!ELEMENT Type              (#PCDATA)>
<!ELEMENT LexMatch          (#PCDATA)>
<!ELEMENT InputMatch        (#PCDATA)>
<!ELEMENT POS               (#PCDATA)>
<!ELEMENT Tokens            (Token*)>
<!ATTLIST Tokens
	Count CDATA #REQUIRED
>
<!ELEMENT Token             (#PCDATA)>
<!ELEMENT PStartPos         (#PCDATA)>
<!ELEMENT PSpanLen          (#PCDATA)>

<!ELEMENT Candidates        (Candidate*)>
<!ATTLIST Candidates
	Count CDATA #REQUIRED
>
<!ELEMENT Candidate         (NegScore, UMLSCUI, UMLSConcept, UMLSPreferred,
                             MatchedWords, STs, MatchMaps, IsHead, IsOverMatch,
                             Sources, Spans)>
<!ELEMENT NegScore          (#PCDATA)>
<!ELEMENT UMLSCUI           (#PCDATA)>
<!ELEMENT UMLSConcept       (#PCDATA)>
<!ELEMENT UMLSPreferred     (#PCDATA)>
<!ELEMENT MatchedWords      (MatchedWord+)>
<!ATTLIST MatchedWords
	Count CDATA #REQUIRED
>
<!ELEMENT MatchedWord       (#PCDATA)>

<!ELEMENT STs  (ST+)>
<!ATTLIST STs
	Count CDATA #REQUIRED
>
<!ELEMENT ST      (#PCDATA)>

<!ELEMENT MatchMaps      (MatchMap*)>
<!ATTLIST MatchMaps
	Count CDATA #REQUIRED
>
<!ELEMENT MatchMap          (TWMatchPosS, TWMatchPosE, CWMatchPosS,
                             CWMatchPosE, Variation)>
<!ELEMENT TWMatchPosS       (#PCDATA)>
<!ELEMENT TWMatchPosE       (#PCDATA)>
<!ELEMENT CWMatchPosS       (#PCDATA)>
<!ELEMENT CWMatchPosE       (#PCDATA)>
<!ELEMENT Variation         (#PCDATA)>

<!ELEMENT IsHead            (#PCDATA)>
<!ELEMENT IsOverMatch       (#PCDATA)>
<!ELEMENT Sources       (Source+)>
<!ATTLIST Sources
	Count CDATA #REQUIRED
>
<!ELEMENT Source            (#PCDATA)>

<!ELEMENT Spans             (Span+)>
<!ATTLIST Spans
	Count CDATA #REQUIRED
>
<!ELEMENT Mappings      (Mapping*)>
<!ATTLIST Mappings
	Count CDATA #REQUIRED
>
<!ELEMENT Mapping           (MapNegScore, Candidates)>
<!ELEMENT MapNegScore       (#PCDATA)>