sublists

제공된 목록의 모든 하위 목록을 계산하고 이러한 하위 목록을 목록이 나열된 목록으로 리턴합니다.

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개의 목록으로 계산됩니다.