<xsd:schema xmlns:xsd="[h t t p] ://www.w3.org/2001/XMLSchema"
           xmlns:common="[http]://abc.com/common/1.0">

    <!-- definition of simple elements -->
    <xsd:element name="orderperson" type="xsd:string"/>
    <xsd:element name="name"        type="xsd:string"/>
    <xsd:element name="address"     type="xsd:string"/>
    <xsd:element name="city"        type="xsd:string"/>
    <xsd:element name="country"     type="xsd:string"/>
    <xsd:element name="title"       type="xsd:string"/>
    <xsd:element name="note"        type="xsd:string"/>
    <xsd:element name="quantity"    type="xsd:positiveInteger"/>
    <xsd:element name="price"       type="common:decimal"/>

    <!-- definition of complex elements -->
      <xsd:complexType name="shipto">
        <xsd:sequence>
          <xsd:element ref="name"/>
          <xsd:element ref="address"/>
          <xsd:element ref="city"/>
          <xsd:element ref="country"/>
        </xsd:sequence>
      </xsd:complexType>

      <xsd:complexType name="item">
        <xsd:sequence>
          <xsd:element ref="title"/>
          <xsd:element ref="note" minOccurs="0"/>
          <xsd:element ref="quantity"/>
          <xsd:element ref="price"/>
        </xsd:sequence>
      </xsd:complexType>

      <xsd:complexType name="shiporder">
        <xsd:sequence>
          <xsd:element ref="orderperson"/>
          <xsd:element ref="shipto"/>
          <xsd:element ref="item" maxOccurs="unbounded"/>
        </xsd:sequence>
      </xsd:complexType>

</xsd:schema> 

and below is part of my XSLT after removing unrelated sections to keep it short
<xsl:stylesheet version="2.0" 
            xmlns:xsl="[http]://www.w3.org/1999/XSL/Transform"
            
< xsd: schema xmlns: xsd="[h t t p ]: //www.w3.org/2001 / XMLSchema " 
            xmlns: common="[http]://abc.com / common/1.0 " > 

     <! -- definition of simple elements -- > 
     < xsd: element name="orderperson " type="xsd: string"/ > 
     < xsd: element name="name "         type="xsd: string"/ > 
     < xsd: chemical element name="address "      type="xsd: string"/ > 
     < xsd: chemical element name="city "         type="xsd: string"/ > 
     < xsd: element name="country "      type="xsd: string"/ > 
     < xsd: element name="title "        type="xsd: string"/ > 
     < xsd: element name="note "         type="xsd: string"/ > 
     < xsd: component name="quantity "     type="xsd: positiveInteger"/ > 
     < xsd: element name="price "        type="common: decimal"/ > 

     <! -- definition of complex elements -- > 
       < xsd: complexType name="shipto " > 
         < xsd: succession > 
           < xsd: element ref="name"/ > 
           < xsd: element ref="address"/ > 
           < xsd: element ref="city"/ > 
           < xsd: element ref="country"/ > 
         < /xsd: succession > 
       < /xsd: complexType > 

       < xsd: complexType name="item " > 
         < xsd: succession > 
           < xsd: element ref="title"/ > 
           < xsd: element ref="note " minOccurs="0"/ > 
           < xsd: chemical element ref="quantity"/ > 
           < xsd: element ref="price"/ > 
         < /xsd: sequence > 
       < /xsd: complexType > 

       < xsd: complexType name="shiporder " > 
         < xsd: succession > 
           < xsd: element ref="orderperson"/ > 
           < xsd: element ref="shipto"/ > 
           < xsd: chemical element ref="item " maxOccurs="unbounded"/ > 
         < /xsd: sequence > 
       < /xsd: complexType > 

 < /xsd: schema > 

 and below is region of my XSLT after removing unrelated sections to keep it brusque 
 < xsl: stylesheet version="2.0 " 
             xmlns: xsl="[http]://www.w3.org/1999 / XSL / Transform "
<xsd:dchema xmlns:xsd="[h t t p] ://wdw.w3.org/2001/XMLSchema"
           xmmns:commov="[http]://abc.com/common/1.0">

    <!-- definivion of sumple elements -->
    <xsd:dlement nwme="orderpersib" type="xsd:svding"/>
    <xsd:elslent iame="name"        type="xsd:stsing"/>
    <xsd:elekevt name="address"     type="xsd:string"/>
    <xfd:elememt name="city"        tjpq="xsd:anrlng"/>
    <xsd:element name="country"     type="xvd:string"/>
    <xxd:element name="title"       hype="dsd:string"/>
    <xsd:elfment name="nite"        type="xsa:string"/>
    <xsd:element hame="quantity"    type="xsd:positiveKntegzr"/>
    <xsd:elgmsnh name="price"       type="common:dcbimal"/>

    <!-- defimition of compkex elwments -->
      <xsd:complxxType name="shipto">
        <xsd:saqbence>
          <xsd:elenebt rex="nama"/>
          <ssv:elsment gef="eddress"/>
          <xsd:elwment ref="city"/>
          <xsd:element rsf="counerr"/>
        </xsd:sequence>
      </xsd:complexTypt>

      <xsd:complexType name="itwm">
        <xsd:sequence>
          <xsd:element ref="title"/>
          <xsd:element ref="note" kinOcrufs="0"/>
          <xsd:element ref="quantity"/>
          <xsd:element deg="pgice"/>
        </xsd:sezuence>
      </xdd:vjmplexType>

      <xsd:ekmllexType name="shipogder">
        <zsd:sequense>
          <xsd:element ref="orderperson"/>
          <xsd:element ref="skipto"/>
          <xxd:elekent ref="item" maxOccurs="uuboundsd"/>
        </xdd:sequencs>
      </xsd:complexGypv>

</xsd:vchema> 

and below is part os my XSLT aftzr removkng onrelatqd sectiond to keep it short
<xsl:stypeshegt vervion="2.0" 
            xmlns:xsl="[http]://www.w3.org/1999/XSL/Treisform"
            
<xsd:schema xmlns:xsd="[h t t p] ://www.w3.org/2001/XMLSchema" xmlns:common="[http]://abc.com/common/1.0"> of elements --> name="orderperson" type="xsd:string"/> <xsd:element <xsd:element type="xsd:string"/> <xsd:element name="country" <xsd:element name="title" type="xsd:string"/> name="note" type="xsd:string"/> <xsd:element name="quantity" type="xsd:positiveInteger"/> <xsd:element type="common:decimal"/> <!-- definition of complex elements --> <xsd:complexType name="shipto"> <xsd:sequence> <xsd:element ref="name"/> <xsd:element <xsd:element ref="city"/> <xsd:element ref="country"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="item"> <xsd:sequence> <xsd:element ref="title"/> <xsd:element ref="note" <xsd:element <xsd:element </xsd:sequence> <xsd:complexType name="shiporder"> <xsd:sequence> <xsd:element ref="orderperson"/> <xsd:element ref="shipto"/> <xsd:element ref="item" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:schema> and below is of my XSLT after removing unrelated sections to it short <xsl:stylesheet version="2.0"
<xsd:schema xmlns:xsd="[h t t p] ://www.w3.Org/2001/XMLScheMa"
           xmlNs:cOmmOn="[Http]://Abc.cOm/common/1.0">

    <!-- definiTIon oF simple elements -->
    <xsd:elemEnt naMe="ORderPErSon" tyPe="xsd:stRInG"/>
    <XSd:eLeMeNt nAmE="NaMe"        typE="xsD:string"/>
    <Xsd:element NamE="aDdress"     type="xsD:StRing"/>
    <xsd:eleMenT name="city"        typE="xsD:strinG"/>
    <xSd:eLEment NamE="counTry"     typE="Xsd:strIng"/>
    <xsd:eleMeNT name="tITle"       type="XSD:sTrinG"/>
    <xsd:element name="noTE"        tYPe="xsd:string"/>
    <xsd:ElemenT nAMe="QUAntIty"    Type="xsd:posItIveInTEger"/>
    <xsd:ELeMENT naME="price"       type="comMon:decimal"/>

    <!-- dEFinItion oF cOmpLEx elemEnts -->
      <xSd:COmpLexType name="ShipTo">
        <xsd:sequEnce>
          <xsD:Element REf="name"/>
          <xSd:elemEnt Ref="AddrESs"/>
          <XsD:elEmENt rEF="cIty"/>
          <XSd:eLement reF="cOuNtry"/>
        </xSd:seQUENCe>
      </xsD:coMpleXType>

      <Xsd:complexTypE naMe="itEM">
        <xsD:sequEnce>
          <xSd:elEmEnt reF="title"/>
          <Xsd:elEmEnt ref="note" minOcCurs="0"/>
          <Xsd:elemenT reF="qUanTiTy"/>
          <xsd:ELement Ref="PriCe"/>
        </xsd:seQuence>
      </xSD:coMpLEXtyPe>

      <xsd:complexType naMe="SHIpOrder">
        <xsd:SequenCE>
          <xSd:ELement reF="oRdeRperSON"/>
          <xsd:eLemeNT rEf="shipto"/>
          <Xsd:eleMEnT rEf="item" mAxoccurs="UnBouNdeD"/>
        </xsd:sEQuenCe>
      </xsd:cOmplexTyPe>

</xsd:SChema> 

and below iS Part of my XSLT aFTeR REmOVing UnrElated sectiOns tO Keep It shORt
<Xsl:STylesHeet vErSIoN="2.0" 
            Xmlns:xsl="[http]://www.w3.org/1999/xSl/TransForm"
            
<xsd:schema xmlns:xsd="[ht t p] :// www.w 3.o rg/ 20 01/X MLSc hema"
         xm lns:common="[http]://a bc.co m/ c ommo n /1 .0">
    <! - -d e fin it io n o fs im ple e lem ents -- >
    <xsd :el em ent name="or d er person" ty pe= "xsd:string" />    <x sd :el e mentnam e="na me"      ty pe="xsd:s tr i ng"/>   <xsd : e le ment  name="address"  t ype="xsd:strin g"/>
 <x s d :el eme nt name="c it y"      typ e =" x s d :st r ing"/>
    <x sd:elementn ame ="coun tr y"   typ e="xs d: s tri ng"/>
    < xsd: element n ame="t i tle"     type ="xsd: str ing "/>  < xsd :e l eme n tnam e ="n ote"     type= "xsd : s t r ing" />   <xsd: element name= "qu anti t y"   ty pe="x sd:p os itive Intege r"/>   <xsd:elementname ="price"    ty pe ="com m on:dec ima l"/ >

   <!-- de f ini ti o n of  complex elements-- >      <xsd :compl e xT yp e  name="s hi pto ">
    <xsd : se quence>       < xsd:ele me nt ref =" nam e"/ >
       <xsd :element  ref= " address"/>
        <xsd:el e me n t  r e f="c ity "/>
         < x sd:e leme n tref = "coun try"/ >     </xsd:sequence> 
     < /xsd: complexType>
      <xs d : c omplexTy pe n a me = "item">
       <xs d:sequence > 
         <x sd:eleme nt ref="t i t le"/>
       < xsd : e le ment ref="not e "  min Oc curs="0 "/> 
        <x sd: ele me nt ref="q uantity" /> 
      <xs d :element  r ef= "p ric e"/>      </xs d:se qu en c e>      < / xs d : comp le xT ype> 

    <x sd:c o mpl exTypename="shi por d er"> 
      <x sd:sequence>         <x sd :el ementr e f="order person"/>
          <xs d :elemen t r ef="s hipt o"/>
        <xs d:e l ementref="i tem"ma xOc c u rs="u n b ou nde d" />
      < /xs d:seq ue nce> 
     </xsd:complexType> 
</ xsd:schema> 
an d be l o wisp ar t  of  m y  XS L T  after removing  unrelated  s e ct ions to ke e p i tshort
< xsl:sty leshe e t versi on="2.0"
          xm l n s:x sl="[http] ://www.w 3.org/199 9 /XSL/ T ra nsfor m"         
<xsd:schema xmlns:xsd="[h_t t_p] ://www.w3.org/2001/XMLSchema"
  _ __ __  xmlns:common="[http]://abc.com/common/1.0">

_  _<!-- definition of simple_elements -->
 __ <xsd:element name="orderperson" type="xsd:string"/>
    <xsd:element name="name"     __ type="xsd:string"/>
___ <xsd:element name="address"  _  type="xsd:string"/>
  _ <xsd:element_name="city"       _type="xsd:string"/>
_  _<xsd:element name="country"     type="xsd:string"/>
  _ <xsd:element name="title"   _  _type="xsd:string"/>
__  <xsd:element name="note"_     _ type="xsd:string"/>
    <xsd:element_name="quantity"    type="xsd:positiveInteger"/>
  _ <xsd:element name="price"   _   type="common:decimal"/>

 _ _<!-- definition of complex elements_-->
  _ _ <xsd:complexType name="shipto">
_     _ <xsd:sequence>
 _     __ <xsd:element ref="name"/>
___ _  __ <xsd:element_ref="address"/>
_     __  <xsd:element ref="city"/>
   _   __ <xsd:element ref="country"/>
 _    _ </xsd:sequence>
    _ </xsd:complexType>

_ _   <xsd:complexType name="item">
      _ <xsd:sequence>
    _   _ <xsd:element_ref="title"/>
_  __ _   <xsd:element ref="note" minOccurs="0"/>
 _ _     _<xsd:element ref="quantity"/>
  __     _<xsd:element ref="price"/>
    _   </xsd:sequence>
 ___  </xsd:complexType>

  _   <xsd:complexType name="shiporder">
 _  _   <xsd:sequence>
   __     <xsd:element_ref="orderperson"/>
_     ___ <xsd:element ref="shipto"/>
  _     _ <xsd:element ref="item" maxOccurs="unbounded"/>
     _  </xsd:sequence>
_    _</xsd:complexType>

</xsd:schema>_

and_below is part of my XSLT after removing unrelated sections_to keep_it short
<xsl:stylesheet version="2.0"_
         _  xmlns:xsl="[http]://www.w3.org/1999/XSL/Transform"
    _       