Crea una lista nueva eliminando los elementos duplicados de una lista existente.
Si algún elemento de la lista original aparece más de una vez, sólo se conserva la primera instancia. De lo contrario, se mantiene el orden de los elementos.
<?xml version="1.0" encoding="UTF-8"?> <RuleSet name="Example_removeduplicates" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "http://www.curamsoftware.com/CreoleRulesSchema.xsd"> <Class name="Person"> <!-- La lista de relaciones donde esta persona es la "fromPerson". --> <Attribute name="relationships"> <type> <javaclass name="List"> <ruleclass name="Relationship"/> </javaclass> </type> <derivation> <specified/> </derivation> </Attribute> <!-- Las personas que están relacionadas con esta persona. Cualquier familiar aparece sólo una vez en esta lista, aunque una persona pueda estar relacionada con otra de más de una manera, por ejemplo mi abuelo también puede ser mi tutor legal.--> <Attribute name="uniqueRelatives"> <type> <javaclass name="List"> <ruleclass name="Person"/> </javaclass> </type> <derivation> <removeduplicates> <reference attribute="allRelatives"/> </removeduplicates> </derivation> </Attribute> <Attribute name="allRelatives"> <type> <javaclass name="List"> <ruleclass name="Person"/> </javaclass> </type> <derivation> <!-- obtener los familiares de esta persona formando una lista de la "toPerson" en el otro extremo de cada relación. --> <dynamiclist> <list> <reference attribute="relationships"/> </list> <listitemexpression> <reference attribute="toPerson"> <current/> </reference> </listitemexpression> </dynamiclist> </derivation> </Attribute> </Class> <!-- Una relación de una persona con otra. --> <Class name="Relationship"> <Attribute name="fromPerson"> <type> <ruleclass name="Person"/> </type> <derivation> <specified/> </derivation> </Attribute> <Attribute name="relationshipType"> <type> <javaclass name="String"/> </type> <derivation> <specified/> </derivation> </Attribute> <Attribute name="toPerson"> <type> <ruleclass name="Person"/> </type> <derivation> <specified/> </derivation> </Attribute> </Class> </RuleSet>