<!ELEMENT   poix   (format,poi) >
<!ATTLIST   poix version   NMTOKEN   #REQUIRED >
<!ELEMENT   format   (datum,unit,type?,author*,time?) >
<!ELEMENT   datum   (#PCDATA) >
<!ELEMENT   unit   (#PCDATA) >
<!ELEMENT   type   EMPTY >
<!ATTLIST   type object   (fix | move)   "fix" >
<!ELEMENT   author   (#PCDATA) >
<!ATTLIST   author   xml:lang   NMTOKEN   #IMPLIED >
<!ELEMENT   time   (#PCDATA) >
<!ELEMENT   poi   (point,move?,name*,access*,contact*,note*,mate*) >
<!ELEMENT   point   (pos) >
<!ELEMENT   pos   (lat,lon,herror?,alt?,verror?) >
<!ELEMENT   lat   (#PCDATA) >
<!ELEMENT   lon   (#PCDATA) >
<!ELEMENT   herror   (#PCDATA) >
<!ELEMENT   alt   (#PCDATA) >
<!ELEMENT   verror   (#PCDATA) >
<!ELEMENT   move   (method?,speed?,dir?,locus?) >
<!ELEMENT   method   (#PCDATA) >
<!ELEMENT   speed   (#PCDATA) >
<!ELEMENT   dir   (#PCDATA) >
<!ELEMENT   locus   (pos*) >
<!ELEMENT   name   (nb,rt?) >
<!ATTLIST   name style   (formal | popular)   "formal" >
<!ELEMENT   nb   (#PCDATA) >
<!ELEMENT   rt   (#PCDATA) >
<!ELEMENT   note   (#PCDATA) >
<!ATTLIST   note   xml:lang   NMTOKEN   #IMPLIED >
<!ELEMENT   access   (method,ipoint,tpoint,route?,note?) >
<!ELEMENT   ipoint   (iclass,pos,name?) >
<!ELEMENT   iclass   (#PCDATA) >
<!ELEMENT   tpoint   (tclass,pos,name?) >
<!ELEMENT   tclass   (#PCDATA) >
<!ELEMENT   route   (pol) >
<!ELEMENT   pol   (pos*) >
<!ELEMENT   contact   (#PCDATA) >
<!ATTLIST   contact
      xml:lang   NMTOKEN   #IMPLIED
      xml:link   NMTOKEN   #FIXED   "simple" 
      href       CDATA     #REQUIRED>
<!ELEMENT   mate (#PCDATA) >
<!ATTLIST   mate
      xml:lang   NMTOKEN   #IMPLIED
      xml:link   NMTOKEN   #FIXED   "simple"
      href       CDATA     #REQUIRED
>

