제공된 목록의 모든 하위 목록을 계산하고 이러한 하위 목록을 목록이 나열된 목록으로 리턴합니다.
n개의 요소가 포함된 목록의 경우 비어 있는 목록과 원본 목록을 포함하는 2 n 하위 목록이 있습니다.
각 하위 목록에 있는 목록 항목의 순서는 원래 목록의 순서와 동일합니다.
<?xml version="1.0" encoding="UTF-8"?> <RuleSet name="Example_sublists" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "http://www.curamsoftware.com/CreoleRulesSchema.xsd"> <Class name="Household"> <Attribute name="members"> <type> <javaclass name="List"> <ruleclass name="Person"/> </javaclass> </type> <derivation> <fixedlist> <listof> <ruleclass name="Person"/> </listof> <members> <create ruleclass="Person"> <String value="Mother"/> </create> <create ruleclass="Person"> <String value="Father"/> </create> <create ruleclass="Person"> <String value="Child"/> </create> </members> </fixedlist> </derivation> </Attribute> <!-- 가정 구성원에 대한 서로 다른 모든 조합 --> <Attribute name="memberCombinations"> <!-- 유형은 개인이 나열된 목록의 목록입니다. --> <type> <javaclass name="List"> <javaclass name="List"> <ruleclass name="Person"/> </javaclass> </javaclass> </type> <derivation> <sublists> <reference attribute="members"/> </sublists> </derivation> </Attribute> </Class> <Class name="Person"> <Initialization> <Attribute name="name"> <type> <javaclass name="String"/> </type> </Attribute> </Initialization> </Class> </RuleSet>
이 예제 규칙 세트에서 memberCombinations의 값은 다음 8개의 목록으로 계산됩니다.