<?xml version="1.0" encoding="UTF-8"?>

<objects xmlns="http://www.springframework.net" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://www.springframework.net http://www.springframework.net/xsd/spring-objects.xsd">
	
  <object id="jenny" type="Spring.Objects.TestObject, Spring.Core.Tests">
    <property name="Name">
      <value>Jenny</value>
    </property>
    <property name="Age">
      <value>30</value>
    </property>
    <property name="Spouse">
      <ref local="david"/>
    </property>
  </object>
	
  <object id="david" type="Spring.Objects.TestObject, Spring.Core.Tests">
    <property name="name">
      <value><![CDATA[David]]></value>
    </property>
    <property name="age">
      <value>27</value>
    </property>
    <property name="spouse">
      <ref local="jenny"/>
    </property>
  </object>
	
  <object id="jenks" type="Spring.Objects.TestObject, Spring.Core.Tests" singleton="false">
    <property name="name">
      <value>Andrew</value>
    </property>
    <property name="age">
      <value>36</value>
    </property>
    <property name="spouse">
      <ref local="jenny"/>
    </property>
  </object>
	
  <object id="emma" type="Spring.Objects.TestObject, Spring.Core.Tests">
    <property name="name">
      <value>Emma</value>
    </property>
    <property name="Age">
      <value>31</value>
    </property>
    <property name="spouse">
      <ref local="jenks"/>
    </property>
  </object>
	
  <object id="georgia" type="Spring.Objects.TestObject, Spring.Core.Tests">
    <property name="name">
      <value>Georgia</value>
    </property>
    <property name="age">
      <value>33</value>
    </property>
    <property name="spouse">
      <ref local="jenks"/>
    </property>
  </object>
	
  <object id="ego" type="Spring.Objects.TestObject, Spring.Core.Tests">
    <property name="name">
      <value>ego</value>
    </property>
    <property name="age">
      <value>1</value>
    </property>
    <property name="spouse">
      <ref local="ego"/>
    </property>
  </object>
	
  <object id="hasInnerObjects" type="Spring.Objects.TestObject, Spring.Core.Tests">
    <constructor-arg>
      <value>hasInner</value>
    </constructor-arg>
    <constructor-arg index="1" type="System.Int32">
      <value>5</value>
    </constructor-arg>
    <property name="spouse">
      <object type="Spring.Objects.TestObject, Spring.Core.Tests">
        <property name="name">
          <value>inner1</value>
        </property>
        <property name="age">
          <value>6</value>
        </property>
      </object>
    </property>
    <property name="friends">
      <list>
        <object type="Spring.Objects.DerivedTestObject, Spring.Core.Tests">
          <property name="name">
            <value>inner2</value>
          </property>
          <property name="age">
            <value>7</value>
          </property>
        </object>
        <object type="Spring.Objects.Factory.DummyFactory, Spring.Core.Tests"/>
      </list>
    </property>
    <property name="someMap">
      <dictionary>
        <entry key="someKey">
          <object type="Spring.Objects.TestObject, Spring.Core.Tests">
            <constructor-arg>
              <value>inner3</value>
            </constructor-arg>
            <constructor-arg type="System.Int32">
              <value>8</value>
            </constructor-arg>
          </object>
        </entry>
      </dictionary>
    </property>
  </object>

  <object id="prototypeHasInnerObjects" type="Spring.Objects.TestObject, Spring.Core.Tests" singleton="false">
    <constructor-arg>
      <value>hasInner</value>
    </constructor-arg>
    <constructor-arg index="1" type="System.Int32">
      <value>5</value>
    </constructor-arg>
    <property name="spouse">
      <object type="Spring.Objects.TestObject, Spring.Core.Tests">
        <property name="name">
          <value>inner1</value>
        </property>
        <property name="age">
          <value>6</value>
        </property>
      </object>
    </property>
    <property name="friends">
      <list>
        <object type="Spring.Objects.DerivedTestObject, Spring.Core.Tests">
          <property name="name">
            <value>inner2</value>
          </property>
          <property name="age">
            <value>7</value>
          </property>
		  <property name="friends">
			<list>
				<object type="Spring.Objects.DerivedTestObject, Spring.Core.Tests">
				<property name="name">
					<value>innerFriendOfAFriend</value>
				</property>
				<property name="age">
					<value>7</value>
				</property>
				</object>
			</list>
		  </property>
        </object>
        <object type="Spring.Objects.Factory.DummyFactory, Spring.Core.Tests"/>
      </list>
    </property>
    <property name="someMap">
      <dictionary>
        <entry key="someKey">
          <object type="Spring.Objects.TestObject, Spring.Core.Tests">
            <constructor-arg>
              <value>inner3</value>
            </constructor-arg>
            <constructor-arg type="System.Int32">
              <value>8</value>
            </constructor-arg>
          </object>
        </entry>
      </dictionary>
    </property>
  </object>

</objects>
	
	