몇 개의 기존 목록을 결합하여 새 목록을 작성합니다.
joinlists 표현식은 목록의 목록이어야 하는 단일 인수를 사용합니다.
새 목록의 항목 순서는 소스 목록의 순서와 동일합니다. 목록은 제공된 순서대로 결합됩니다.
결합되는 목록에 중복 항목이 포함될 수 있는 경우 joinlists 표현식을 removeduplicates 표현식으로 랩핑하십시오.
<?xml version="1.0" encoding="UTF-8"?> <RuleSet name="Example_joinlists" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "http://www.curamsoftware.com/CreoleRulesSchema.xsd"> <Class name="Person"> <Attribute name="pets"> <type> <javaclass name="List"> <ruleclass name="Pet"/> </javaclass> </type> <derivation> <specified/> </derivation> </Attribute> </Class> <Class name="Pet"> <Initialization> <Attribute name="name"> <type> <javaclass name="String"/> </type> </Attribute> </Initialization> </Class> <Class name="Household"> <Attribute name="members"> <type> <javaclass name="List"> <ruleclass name="Person"/> </javaclass> </type> <derivation> <specified/> </derivation> </Attribute> <!-- 각 개인의 애완동물 목록을 결합하여 가정의 모든 애완동물을 입수합니다. --> <Attribute name="allPets"> <type> <javaclass name="List"> <ruleclass name="Pet"/> </javaclass> </type> <derivation> <joinlists> <!-- 애완 동물 목록으로서 각 가정 구성원마다 하나의 목록이 있습니다. --> <dynamiclist> <list> <reference attribute="members"/> </list> <listitemexpression> <reference attribute="pets"> <current/> </reference> </listitemexpression> </dynamiclist> </joinlists> </derivation> </Attribute> </Class> </RuleSet>