Compact to XML format XML format to compact <rng: element  name ="node "> <rng: ref  name ="att.global.attributes  "/> <rng: optional >   <rng: attribute  name ="value ">    <rng: ref  name ="data.pointer  "/>   </rng: attribute > </rng: optional > <rng: optional >   <rng: attribute  name ="type ">    <rng: choice >     <rng: value > initial</rng: value >     <rng: value > final</rng: value >     <rng: data  type ="Name "/>    </rng: choice >   </rng: attribute > </rng: optional > <rng: optional >   <rng: attribute  name ="adjTo ">    <rng: list >     <rng: oneOrMore >      <rng: ref  name ="data.pointer  "/>     </rng: oneOrMore >    </rng: list >   </rng: attribute > </rng: optional > <rng: optional >   <rng: attribute  name ="adjFrom ">    <rng: list >     <rng: oneOrMore >      <rng: ref  name ="data.pointer  "/>     </rng: oneOrMore >    </rng: list >   </rng: attribute > </rng: optional > <rng: optional >   <rng: attribute  name ="adj ">    <rng: list >     <rng: oneOrMore >      <rng: ref  name ="data.pointer  "/>     </rng: oneOrMore >    </rng: list >   </rng: attribute > </rng: optional > <rng: optional >   <rng: attribute  name ="inDegree ">    <rng: ref  name ="data.count  "/>   </rng: attribute > </rng: optional > <rng: optional >   <rng: attribute  name ="outDegree ">    <rng: ref  name ="data.count  "/>   </rng: attribute > </rng: optional > <rng: optional >   <rng: attribute  name ="degree ">    <rng: ref  name ="data.count  "/>   </rng: attribute > </rng: optional > <rng: optional >   <rng: ref  name ="label  "/>   <rng: optional >    <rng: ref  name ="label  "/>   </rng: optional > </rng: optional > </rng: element > 
element  node 
{
   att.global.attributes ,
   attribute value { data.pointer  }?,
   attribute type { "initial" | "final" | xsd:Name }?,
   attribute adjTo { list { data.pointer + } }?,
   attribute adjFrom { list { data.pointer + } }?,
   attribute adj { list { data.pointer + } }?,
   attribute inDegree { data.count  }?,
   attribute outDegree { data.count  }?,
   attribute degree { data.count  }?,
   ( label , label ? )?
}