<?xml version="1.0" encoding="UTF-8"?>
<!--
    Example CIP from schema I01
    This example campaign has three programmed events, all of which are defined identically for two MSOs with
    some systems in each.  The first event is a live sports event with two vote/poll applciations.  The second
    is an RFI application. The last ProgEvent is a VOD movie with a pre, mid, and post-roll spot insertion.
-->
<cip:CampInfoPkg xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.cablelabs.com/namespaces/safi/xsd/cip/I01
    CL-SaFI-CIP-I01.xsd"
    xmlns:com="http://www.cablelabs.com/namespaces/safi/xsd/com/I01"
    xmlns:cip="http://www.cablelabs.com/namespaces/safi/xsd/cip/I01">
    <!-- Unchanged from here to target except schema version -->
    <cip:Version MajorVersion="1" MinorVersion="0" MinSchemaVersion="1" />
    <cip:Gen>
        <cip:Guid guid="guid111111111111111111" gname="gname0"/>
        <cip:StwShpData idOwner="http://www.oxygenxml.com/" id="id0">
            <cip:Contact name="name0" role="role0" phone="phone0" email="email0"/>
            <cip:Contact name="name1" role="role1" phone="phone1" email="email1"/>
        </cip:StwShpData>
        <cip:CipVer>0</cip:CipVer>
        <cip:CipOrdrOwnr>http://www.oxygenxml.com/</cip:CipOrdrOwnr>
        <cip:CipOrder>CipOrder0</cip:CipOrder>
        <cip:CipCreDat>2006-05-04T18:13:51.0Z</cip:CipCreDat>
        <cip:CipRevDat>2006-05-04T18:13:51.0Z</cip:CipRevDat>
    </cip:Gen>
    <cip:ProgEvents>
        <cip:ProgEvent>
            <!-- this is the first program event, a live sports event -->
            <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                RevDat="2006-05-04T18:13:51.0Z"/>
            <cip:Peid>peid444444444444444444</cip:Peid>
            <cip:Flight number="0" presBegin="2006-05-04T18:13:51.0Z"
                presEnd="2006-05-04T18:13:51.0Z" rptBegin="2006-05-04T18:13:51.0Z"
                rptEnd="2006-05-04T18:13:51.0Z" TzCode="NATL">
                <cip:PresStartAdj offset="P1Y2M3DT1H10M0S" interval="P1Y2M3DT1H10M0S"/>
                <cip:PresEndAdj offset="P1Y2M3DT1H10M0S" interval="P1Y2M3DT1H10M0S"/>
            </cip:Flight>
            <cip:Targets>
                <!-- This defines the sports event for the followling application executions.  In this
                    particular use it starts out the same as the D01 "Program" element.  That is
                    followed by placement data duplicated from the D01 location in the app element. The
                    PoFilter(Placement opportunity filter) describe the expected placements rquired to deliver
                    the enhancements of this programmed event to a qualified target.
                -->
                <cip:ExplicitTargets>
                    <cip:ExplicitTarget>
                        <cip:ProgramIdent uniqueProgramID="239482">ESPN College Football, Game 13
                        </cip:ProgramIdent>
                    </cip:ExplicitTarget>
                </cip:ExplicitTargets>
                <cip:PoFilters>
                    <!-- These are placement windows for the app defined using intervals similar to D01  -->
                    <cip:PoFilter RuleEngine="XQuery"> time.offset=0H0M0S,time.interval=1H30M0S </cip:PoFilter>
                    <cip:PoFilter RuleEngine="XQuery"> time.offset=1H30M0S,time.interval=3H00M0S
                    </cip:PoFilter>
                </cip:PoFilters>
            </cip:Targets>
            <!--
                Note the first placement directive is defined at the Package level, so becomes
                defaults for the PackageElements.  Since no placements are defined here this can
                only be a default.  Actual instances appear only at the lower levels.                
             -->
            <cip:PlacementDirectives>
                <!-- First PlacementDirective, vote/poll  1, type A -->
                <cip:PlacementDirective>
                    <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                        RevDat="2006-05-04T18:13:51.0Z"/>
                    <cip:Product peid="peid111111111111111111" gname="game 13, vote/poll 1"
                        epsid="1" productFamily="VotePoll"> </cip:Product>
                    <!-- This defines the app, as before -->
                    <cip:App orgId="54" appId="13500" appVer="1" epType="CX55"
                        appDataReference="appDataReference0" epTypeReference="epTypeReference0"/>
                    <!-- This defines the returned data, as before -->
                    <cip:RetData>
                        <cip:PriUrl>http://ara.cablelabs.com</cip:PriUrl>
                        <cip:AppMsgs>
                            <cip:ApSecUrl>http://www.oxygenxml.com/</cip:ApSecUrl>
                        </cip:AppMsgs>
                        <cip:SmMsgs>
                            <cip:SmSecUrl>http://www.oxygenxml.com/</cip:SmSecUrl>
                        </cip:SmMsgs>
                    </cip:RetData>
                </cip:PlacementDirective>
            </cip:PlacementDirectives>
            <!-- The package and Package element structures are similar to D01, but what was
                InteractiveElementType has been generalized into a set of  PlacementDirective. Each
                includes App and RetDataType unchanged, but adds the particular placement of this
                PlacementDirective (where above we had all required placements), the assets required (empty
                for an application, but required for ad insertion), and a somewhat extended
                definition of the D01 MessageTargetType, now named Product.  The "EnhancedContent"
                from D01 is gone and its children redistributed.
                
                This particular example creates two instances at the package level and then
                addtional portions of each app at the package element level.
                -->
            <cip:Packages>
                <cip:Package>
                    <cip:PlacementDirectives>
                        <!-- First package using PE defaults.  This is expected to have a real instance
                               within the places instruction., 1st half of game  -->
                        <cip:PlacementDirective>
                            <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                                RevDat="2006-05-04T18:13:51.0Z"/>
                            <cip:Product peid="peid111111111111111111" gname="game 13, vote/poll 1"
                                epsid="12" productFamily="VotePoll"/>
                            <cip:Places>
                                <cip:Time offset="PT0H0M0S" interval="PT1H30M0S"/>
                            </cip:Places>
                            <!-- This overriedes epType in the app default, as before -->
                            <cip:App epType="VOTETYP1"/>
                        </cip:PlacementDirective>
                    </cip:PlacementDirectives>
                    <cip:PkgElements>
                        <cip:PkgElement>
                            <cip:PlacementDirectives>
                                <!-- Second and third PlacementDirective using PE defaults-->
                                <cip:PlacementDirective>
                                    <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                                        RevDat="2006-05-04T18:13:51.0Z"/>
                                    <cip:Product epsid="22" productFamily="VotePoll"> </cip:Product>
                                    <cip:Places>
                                        <cip:Time offset="PT0H0M0S" interval="PT1H30M0S"/>
                                    </cip:Places>
                                    <cip:App epType="VQTYP1"/>
                                </cip:PlacementDirective>
                            </cip:PlacementDirectives>
                        </cip:PkgElement>
                        <cip:PkgElement>
                            <cip:PlacementDirectives>
                                <cip:PlacementDirective>
                                    <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                                        RevDat="2006-05-04T18:13:51.0Z"/>
                                    <cip:Product epsid="32" productFamily="VotePoll"> </cip:Product>
                                    <cip:Places>
                                        <cip:Time offset="PT0H0M0S" interval="PT1H30M0S"/>
                                    </cip:Places>
                                    <cip:App epType="VRTYP1"/>
                                </cip:PlacementDirective>
                            </cip:PlacementDirectives>
                        </cip:PkgElement>
                    </cip:PkgElements>
                </cip:Package>
                <cip:Package>
                    <!-- Start of second Vote/Poll -->
                    <cip:PlacementDirectives>
                        <!-- Secondpackage using PE defaults.  This is expected to have a real instance
                            within the places instruction, 2nd half of game  -->
                        <cip:PlacementDirective>
                            <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                                RevDat="2006-05-04T18:13:51.0Z"/>
                            <cip:Product peid="peid888888888888888888" gname="game 13, vote/poll 1"
                                epsid="12" productFamily="VotePoll"/>
                            <cip:Places>
                                <cip:Time offset="PT1H30M0S" interval="PT3H00M0S"/>
                            </cip:Places>
                            <!-- This defines the app, as before -->
                            <cip:App epType="VOTETYP1"/>
                        </cip:PlacementDirective>
                    </cip:PlacementDirectives>
                    <cip:PkgElements>
                        <cip:PkgElement>
                            <cip:PlacementDirectives>
                                <!-- Second and third PlacementDirective using PE defaults-->
                                <cip:PlacementDirective>
                                    <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                                        RevDat="2006-05-04T18:13:51.0Z"/>
                                    <cip:Product epsid="22" productFamily="VotePoll"> </cip:Product>
                                    <cip:Places>
                                        <cip:Time offset="PT1H30M0S" interval="PT3H00M0S"/>
                                    </cip:Places>
                                    <cip:App epType="VQTYP1"/>
                                </cip:PlacementDirective>
                            </cip:PlacementDirectives>
                        </cip:PkgElement>
                        <cip:PkgElement>
                            <cip:PlacementDirectives>
                                <cip:PlacementDirective>
                                    <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                                        RevDat="2006-05-04T18:13:51.0Z"/>
                                    <cip:Product epsid="32" productFamily="VotePoll"> </cip:Product>
                                    <cip:Places>
                                        <cip:Time offset="PT1H30M0S" interval="PT3H00M0S"/>
                                    </cip:Places>
                                    <cip:App epType="VRTYP1"/>
                                </cip:PlacementDirective>
                            </cip:PlacementDirectives>
                        </cip:PkgElement>
                    </cip:PkgElements>
                </cip:Package>
            </cip:Packages>
        </cip:ProgEvent>
        <cip:ProgEvent>
            <!-- this is the second program event, another live event which gets an RFI -->
            <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                RevDat="2006-05-04T18:13:51.0Z"/>
            <cip:Peid>peid777777777777777777</cip:Peid>
            <cip:Flight number="0" presBegin="2006-05-04T18:13:51.0Z"
                presEnd="2006-05-04T18:13:51.0Z" rptBegin="2006-05-04T18:13:51.0Z"
                rptEnd="2006-05-04T18:13:51.0Z" TzCode="NATL">
                <cip:PresStartAdj offset="P1Y2M3DT1H10M0S" interval="P1Y2M3DT1H10M0S"/>
                <cip:PresEndAdj offset="P1Y2M3DT1H10M0S" interval="P1Y2M3DT1H10M0S"/>
            </cip:Flight>
            <cip:Targets>
                <!-- This defines the live event for the followling application executions.  In this
                    particular use it starts out the same as the D01 "Program" element.  That is
                    followed by placement data duplicated from the D01 location in the app element. The
                    PoFilter(Placement opportunity filter) describe the expected placements required to deliver
                    the enhancements of this programmed event to a qualified target.
                -->
                <cip:ExplicitTargets>
                    <cip:ExplicitTarget>
                        <cip:ProgramIdent uniqueProgramID="239543"> Championship Hockey Semi's, Game
                            2 </cip:ProgramIdent>
                    </cip:ExplicitTarget>
                </cip:ExplicitTargets>
                <cip:PoFilters>
                    <!-- This is the placement windows for the app defined using intervals similar to D01  -->
                    <cip:PoFilter RuleEngine="XQuery"> time.offset=1H0M0S,time.interval=2H0M0S
                    </cip:PoFilter>
                </cip:PoFilters>
            </cip:Targets>
            <!-- The package and Package element structures are similar to D01, but what was
                InteractiveElementType has been generalized into a set of  PlacementDirective.  Each
                includes App and RetDataType unchanged, but adds the particular placement of this
                PlacementDirective (where above we had all required placements), the assets required (empty
                for an application, but required for ad insertion), and a somewhat extended
                definition of the D01 MessageTargetType, now named Product.  The "EnhancedContent"
                from D01 is gone and its children redistributed.
                
                Note that shared PlacementDirective data may be specified at the programmed event
                level and package element-specific data in the individual elements, but  since a
                single placement is required for RFI, no defaulting was used.
            -->
            <cip:Packages>
                <cip:Package>
                    <cip:PkgElements>
                        <!-- this is the sole package element with one PlacementDirective, the RFI application.    -->
                        <cip:PkgElement>
                            <cip:PlacementDirectives>
                                <cip:PlacementDirective>
                                    <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                                        RevDat="2006-05-04T18:13:51.0Z"/>
                                    <cip:Product peid="peid222222222222222222"
                                        gname="ChaMpHockSemi G2, RFI 1" epsid="1"
                                        productFamily="RFI"/>
                                    <cip:Places>
                                        <!--  This defines where this instance is placed.  Since no
                                            signal is expected, this is instead interval based.
                                    -->
                                        <cip:Time offset="PT1H0M0S" interval="PT2H00M0S"/>
                                    </cip:Places>
                                    <!-- This defines the app, as before -->
                                    <cip:App orgId="54" appId="15300" appVer="2" epType=":RFITYP1"
                                        appDataReference="appDataReference0"
                                        epTypeReference="epTypeReference0"/>
                                    <!-- This defines the returned data, as before -->
                                    <cip:RetData>
                                        <!-- Pri Url is destination for STB IAM msgs,
                                            ApSecUrl is MSO posting for IAF, SmSecUrl is MSO posting
                                            for SMS
                                          -->
                                        <cip:PriUrl>http://ara.cablelabs.com</cip:PriUrl>
                                        <cip:AppMsgs>
                                            <cip:ApSecUrl>http://www.oxygenxml.com/</cip:ApSecUrl>
                                        </cip:AppMsgs>
                                        <cip:SmMsgs>
                                            <cip:SmSecUrl>http://www.oxygenxml.com/</cip:SmSecUrl>
                                        </cip:SmMsgs>
                                    </cip:RetData>
                                </cip:PlacementDirective>
                            </cip:PlacementDirectives>
                        </cip:PkgElement>
                    </cip:PkgElements>
                </cip:Package>
            </cip:Packages>
        </cip:ProgEvent>
        <cip:ProgEvent>
            <!-- this is the third program event, spot insertion in some VOD movies -->
            <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                RevDat="2006-05-04T18:13:51.0Z"/>
            <cip:Peid>peid666666666666666666</cip:Peid>
            <cip:Flight number="0" presBegin="2006-05-04T18:13:51.0Z"
                presEnd="2006-05-04T18:13:51.0Z" rptBegin="2006-05-04T18:13:51.0Z"
                rptEnd="2006-05-04T18:13:51.0Z" TzCode="NATL"> </cip:Flight>
            <cip:Targets>
                <!-- The VOD movie targets are qualified by expressions in Placement Request or
                    ADI metadata of the asset in the PlacementRequest.  There is no explicit target in this
                    particular example. All espn.com assets with pre, mid, and postRoll are
                    acceptable-->
                <cip:TargetFilters>
                    <cip:TargetFilter>
                        <cip:FilterRules>
                            <cip:FilterRule RuleEngine="XQuery">
                                Service.ContentProvider.providerID=espn.com </cip:FilterRule>
                        </cip:FilterRules>
                        <cip:PoFilters>
                            <cip:PoFilter RuleEngine="XQuery">
                                OpportunityBinding.opportunityType=PreRoll and
                                Service.ProductType=MOD </cip:PoFilter>
                            <cip:PoFilter RuleEngine="XQuery">
                                OpportunityBinding.opportunityType=interstitial and
                                Service.ProductType=MOD </cip:PoFilter>
                            <cip:PoFilter RuleEngine="XQuery">
                                OpportunityBinding.opportunityType=PostRoll and
                                Service.ProductType=MOD </cip:PoFilter>
                        </cip:PoFilters>
                    </cip:TargetFilter>
                </cip:TargetFilters>
            </cip:Targets>
            <cip:PlacementDirectives>
                <!-- The PlacementDirective is "OnDemandInsertion" -->
                <cip:PlacementDirective>
                    <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                        RevDat="2006-05-04T18:13:51.0Z"/>
                    <cip:Product peid="peid333333333333333333" gname="Espn Gaylans 11 Preroll"
                        epsid="1" productFamily="OnDemandInsertion"/>
                    <cip:Places>
                        <!-- Placement for  preroll and associated asset-->
                        <cip:PlaceFilter RuleEngine="XQuery">xx</cip:PlaceFilter>
                    </cip:Places>
                    <cip:AvAssets>
                        <cip:AvAssetIdent providerID="espn.com" assetID="ABCD0123456789010010"/>
                    </cip:AvAssets>
                    <!-- This is a placeholder for business data to choose between conflicting
                        placements.  Currently a single scalar value. -->
                    <cip:BizTerms>
                        <cip:Priority>50</cip:Priority>
                    </cip:BizTerms>
                    <!-- This defines the returned data, as before -->
                    <cip:RetData>
                        <cip:PriUrl>http://ara.cablelabs.com/</cip:PriUrl>
                        <cip:AppMsgs>
                            <cip:ApSecUrl>http://www.oxygenxml.com/</cip:ApSecUrl>
                        </cip:AppMsgs>
                        <cip:SmMsgs>
                            <cip:SmSecUrl>http://www.oxygenxml.com/</cip:SmSecUrl>
                        </cip:SmMsgs>
                    </cip:RetData>
                </cip:PlacementDirective>
            </cip:PlacementDirectives>
            <cip:Packages>
                <cip:Package>
                    <cip:PlacementDirectives>
                        <cip:PlacementDirective>
                            <!-- Same PlacementDirective, placemente for mid-roll and it's asset  -->
                            <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                                RevDat="2006-05-04T18:13:51.0Z"/>
                            <cip:Product peid="peid333333333333333333"
                                gname="Espn Gaylans 11 Insterstial" epsid="2"
                                productFamily="OnDemandInsertion"/>
                            <cip:Places>
                                <cip:PlaceFilter RuleEngine="XQuery">
                                    OpportunityBinding.opportunityType=interstitial and
                                    Service.ProductType=MOD </cip:PlaceFilter>
                            </cip:Places>
                            <cip:AvAssets>
                                <cip:AvAssetIdent providerID="espn.com"
                                    assetID="ABCD0123456789010020"/>
                            </cip:AvAssets>
                            <cip:BizTerms>
                                <cip:Priority>50</cip:Priority>
                            </cip:BizTerms>
                            <!-- This defines the returned data, as before -->
                            <cip:RetData>
                                <cip:PriUrl>http://ara.cablelabs.com</cip:PriUrl>
                                <cip:AppMsgs>
                                    <cip:ApSecUrl>http://www.oxygenxml.com/</cip:ApSecUrl>
                                </cip:AppMsgs>
                                <cip:SmMsgs>
                                    <cip:SmSecUrl>http://www.oxygenxml.com/</cip:SmSecUrl>
                                </cip:SmMsgs>
                            </cip:RetData>
                        </cip:PlacementDirective>
                    </cip:PlacementDirectives>
                </cip:Package>
                <cip:Package>
                    <cip:PlacementDirectives>
                        <cip:PlacementDirective>
                            <!-- Same PlacementDirective, placement for post-roll and it's asset  -->
                            <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                                RevDat="2006-05-04T18:13:51.0Z"/>
                            <cip:Product peid="peid333333333333333333"
                                gname="Espn Gaylans 11 Postroll" epsid="3"
                                productFamily="OnDemandInsertion"/>
                            <cip:Places>
                                <!-- Placement for postroll -->
                                <cip:PlaceFilter RuleEngine="XQuery">
                                    OpportunityBinding.opportunityType=PostRoll and
                                    Service.ProductType=MOD </cip:PlaceFilter>
                            </cip:Places>
                            <!-- Asset placed for this PlacementDirective -->
                            <cip:AvAssets>
                                <cip:AvAssetIdent providerID="espn.com"
                                    assetID="ABCD0123456789010030"/>
                            </cip:AvAssets>
                            <cip:BizTerms>
                                <cip:Priority>50</cip:Priority>
                            </cip:BizTerms>
                            <!-- This defines the returned data, as before -->
                            <cip:RetData>
                                <cip:PriUrl>http://ara.cablelabs.com/</cip:PriUrl>
                                <cip:AppMsgs>
                                    <cip:ApSecUrl>http://www.oxygenxml.com/</cip:ApSecUrl>
                                </cip:AppMsgs>
                                <cip:SmMsgs>
                                    <cip:SmSecUrl>http://www.oxygenxml.com/</cip:SmSecUrl>
                                </cip:SmMsgs>
                            </cip:RetData>
                        </cip:PlacementDirective>
                    </cip:PlacementDirectives>
                </cip:Package>
            </cip:Packages>
            <!-- end of this programmed event directives -->
        </cip:ProgEvent>
    </cip:ProgEvents>
    <cip:MsoOrders>
        <cip:MsoOrder name="name2">
            <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                RevDat="2006-05-04T18:13:51.0Z"/>
            <cip:SysOrders>
                <cip:SysOrder>
                    <cip:Syscode>Sysc</cip:Syscode>
                    <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                        RevDat="2006-05-04T18:13:51.0Z"/>
                </cip:SysOrder>
                <cip:SysOrder>
                    <cip:Syscode>Sysc</cip:Syscode>
                    <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                        RevDat="2006-05-04T18:13:51.0Z"/>
                </cip:SysOrder>
            </cip:SysOrders>
            <cip:Ext> </cip:Ext>
        </cip:MsoOrder>
        <cip:MsoOrder name="name3">
            <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                RevDat="2006-05-04T18:13:51.0Z"/>
            <cip:SysOrders>
                <cip:SysOrder>
                    <cip:Syscode>Sysc</cip:Syscode>
                    <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                        RevDat="2006-05-04T18:13:51.0Z"/>
                </cip:SysOrder>
                <cip:SysOrder>
                    <cip:Syscode>Sysc</cip:Syscode>
                    <cip:Status RecState="pnd" RecRevoked="false" Revision="0"
                        RevDat="2006-05-04T18:13:51.0Z"/>
                </cip:SysOrder>
            </cip:SysOrders>
        </cip:MsoOrder>
    </cip:MsoOrders>
</cip:CampInfoPkg>

