×
Menu
Index

Absolute paths

 

Wanneer bij het adresseren van elementen in XML documenten gebruik wordt gemaakt van absolute paden is de context (dus waar bevinden we ons nu in het XML?) niet van belang. Het element wordt met een volledig pad geadresseerd, dus vanaf het Rootelement. In eerder genoemd voorbeeld moeten de persoonsgegevens van de Insured worden gekopieerd naar de Driver.
 
<CustomerDocument xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://SoftRules.com/CustomerDocument.xsd">
     <CustomerWrapper>
          <Insured>
               <ID>69866</ID>
               <Firstname>John</Firstname>
               <SirName>Tapscott</SirName>
               <Street>Steele Street</Street>
               <HouseNumber>1362</HouseNumber>
               <Zipcode>60187</Zipcode>
               <Town>Wheaton</Town>
               <EmailAddress>jtapscott@softrules.com</EmailAddress>
          </Insured>
     </CustomerWrapper>
     <Contract>
          <Policy>
               <MotorVehicle>
                    <Driver>
                         <Firstname/>
                         <SirName/>
                         <Street/>
                         <HouseNumber/>
                         <Zipcode/>
                         <Town/>
                         <EmailAddress/>
                    </Driver>
               </MotorVehicle>
          </Policy>
     </Contract>
</CustomerDocument>
 
Met Absolute paden zou dat er zo uit zien:
 
CustomerDocument/Contract/Policy/MotorVehicle/Driver/Firstname = CustomerDocument/CustomerWrapper/Insured/Firstname
CustomerDocument/Contract/Policy/MotorVehicle/Driver/Sirname = CustomerDocument/CustomerWrapper/Insured/Sirname
etc.
 
In SoftRules® zouden we dit met Assignments uitvoeren.
 
 
 
Deze oplossing is, hoewel functioneel, niet erg praktisch. Als bijvoorbeeld hetzelfde zou moeten gebeuren in een tweede Contract, dan moeten deze Tools worden gekopieerd en kunnen ze niet worden hergebruikt. Beter is het om relatieve paden te gebruiken. Zie hier.