FpML 5.7 Validation Rules - Rules for ID / IDREF References (reporting view)
This section details ID / IDREF relationship constraints (based on the eCore references at the Schema) accompanying the FpML
5.7 Last Call Working Draft.
Please Note: The Reference and Shared Validation rule are being included in the Reporting, Recordkeeping and Transparency
view
as since FpML version 5.5WD1. The examples and rules associated with these views are currently avaialable only for Confirmation
view .
The rules are currently in the process of being reviewed and will be added with in the next 5.5 publication.
Content
Namespace
default element namespace = http://www.fpml.org/spec/fpml-5-7-3-lcwd-1
namespace xs = http://www.w3.org/2001/XMLSchema
Rules
Unique contexts:
- AssetReference (complex type): ref-1
- FixedRateReference (complex type): ref-2
- ProtectionTermsReference (complex type): ref-3
- SettlementTermsReference (complex type): ref-4
- InterestCalculationReference (complex type): ref-6
- InterestLegCalculationPeriodDatesReference (complex type): ref-7
- CalculationPeriodDatesReference (complex type): ref-8
- InterestRateStreamReference (complex type): ref-9
- PaymentCalculationPeriod (complex type): ref-10
- PaymentDatesReference (complex type): ref-11
- ResetDatesReference (complex type): ref-12
- CreditEventsReference (complex type): ref-13
- CashflowFixingReference (complex type): ref-14
- CashflowObservationReference (complex type): ref-15
- StepReference (complex type): ref-16
- TradeUnderlyerReference (complex type): ref-17
- PricingStructurePoint (complex type): ref-18
- MarketReference (complex type): ref-19
- PricingDataPointCoordinateReference (complex type): ref-20
- PricingParameterDerivativeReference (complex type): ref-21
- Valuation (complex type): ref-22
- ValuationReference (complex type): ref-23
- ValuationScenarioReference (complex type): ref-24
- AccountReference (complex type): ref-25
- BusinessCentersReference (complex type): ref-26
- BusinessDayAdjustmentsReference (complex type): ref-27
- LegalEntityReference (complex type): ref-28
- PartyReference (complex type): ref-29
- Payment (complex type): ref-30
- PricingStructureReference (complex type): ref-31
- ProductReference (complex type): ref-32
- RateReference (complex type): ref-33
- ScheduleReference (complex type): ref-34
- SpreadScheduleReference (complex type): ref-35
- SensitivitySetDefinitionReference (complex type): ref-36
- AnyAssetReference (complex type): ref-37
- MandatoryEarlyTermination (complex type) /cashSettlement/cashSettlementValuationDate/dateRelativeTo: ref-38
- Deprecated rules
- Removed rules
ref-1 (Mandatory)
English Description:
Context: AssetReference (complex type)
The @href attribute is equal to the @id attribute of an element of type Asset
XPath Description:
Context: AssetReference
id($context/@href) instance of element(*, Asset)
ref-2 (Mandatory)
English Description:
Context: FixedRateReference (complex type)
The @href attribute is equal to the @id attribute of an element of type FixedRate
XPath Description:
Context: FixedRateReference
id($context/@href) instance of element(*, FixedRate)
ref-3 (Mandatory)
English Description:
Context: ProtectionTermsReference (complex type)
The @href attribute is equal to the @id attribute of an element of type ProtectionTerms
XPath Description:
Context: ProtectionTermsReference
id($context/@href) instance of element(*, ProtectionTerms)
ref-4 (Mandatory)
English Description:
Context: SettlementTermsReference (complex type)
The @href attribute is equal to the @id attribute of an element of type SettlementTerms
XPath Description:
Context: SettlementTermsReference
id($context/@href) instance of element(*, SettlementTerms)
ref-7 (Mandatory)
English Description:
Context: InterestLegCalculationPeriodDatesReference (complex type)
The @href attribute is equal to the @id attribute of an element of type InterestLegCalculationPeriodDates
XPath Description:
Context: InterestLegCalculationPeriodDatesReference
id($context/@href) instance of element(*, InterestLegCalculationPeriodDates)
ref-8 (Mandatory)
English Description:
Context: CalculationPeriodDatesReference (complex type)
The @href attribute is equal to the @id attribute of an element of type CalculationPeriodDates
XPath Description:
Context: CalculationPeriodDatesReference
id($context/@href) instance of element(*, CalculationPeriodDates)
ref-9 (Mandatory)
English Description:
Context: InterestRateStreamReference (complex type)
The @href attribute is equal to the @id attribute of an element of type InterestRateStream
XPath Description:
Context: InterestRateStreamReference
id($context/@href) instance of element(*, InterestRateStream)
ref-10 (Mandatory)
English Description:
Context: PaymentCalculationPeriod (complex type)
If the @href attribute exists, the @href attribute is equal to the @id attribute of an element of type PricingStructure
XPath Description:
Context: PaymentCalculationPeriod
[exists(@href)]
id($context/@href) instance of element(*, PricingStructure)
ref-11 (Mandatory)
English Description:
Context: PaymentDatesReference (complex type)
The @href attribute is equal to the @id attribute of an element of type PaymentDates
XPath Description:
Context: PaymentDatesReference
id($context/@href) instance of element(*, PaymentDates)
ref-12 (Mandatory)
English Description:
Context: ResetDatesReference (complex type)
The @href attribute is equal to the @id attribute of an element of type ResetDates
XPath Description:
Context: ResetDatesReference
id($context/@href) instance of element(*, ResetDates)
ref-13 (Mandatory)
English Description:
Context: CreditEventsReference (complex type)
The @href attribute is equal to the @id attribute of an element of type CreditEvents
XPath Description:
Context: CreditEventsReference
id($context/@href) instance of element(*, CreditEvents)
ref-14 (Mandatory)
English Description:
Context: CashflowFixingReference (complex type)
The @href attribute is equal to the @id attribute of an element of type CashflowFixing
XPath Description:
Context: CashflowFixingReference
id($context/@href) instance of element(*, CashflowFixing)
ref-15 (Mandatory)
English Description:
Context: CashflowObservationReference (complex type)
The @href attribute is equal to the @id attribute of an element of type CashflowObservation
XPath Description:
Context: CashflowObservationReference
id($context/@href) instance of element(*, CashflowObservation)
ref-16 (Mandatory)
English Description:
Context: StepReference (complex type)
The @href attribute is equal to the @id attribute of an element of type Step
XPath Description:
Context: StepReference
id($context/@href) instance of element(*, Step)
ref-17 (Mandatory)
English Description:
Context: TradeUnderlyerReference (complex type)
The @href attribute is equal to the @id attribute of an element of type TradeUnderlyer
XPath Description:
Context: TradeUnderlyerReference
id($context/@href) instance of element(*, TradeUnderlyer)
ref-18 (Mandatory)
English Description:
Context: PricingStructurePoint (complex type)
The coordinate/generic/@href attribute is equal to the underlyingAsset/@id attribute
XPath Description:
Context: PricingStructurePoint
[exists(underlyingAsset)]
every $generic in coordinate/generic satisfies id($generic/@href) is underlyingAsset
ref-19 (Mandatory)
English Description:
Context: MarketReference (complex type)
The @href attribute is equal to the @id attribute of an element of type Market
XPath Description:
Context: MarketReference
id($context/@href) instance of element(*, Market)
ref-20 (Mandatory)
English Description:
Context: PricingDataPointCoordinateReference (complex type)
The @href attribute is equal to the @id attribute of an element of type PricingDataPointCoordinate
XPath Description:
Context: PricingDataPointCoordinateReference
id($context/@href) instance of element(*, PricingDataPointCoordinate)
ref-21 (Mandatory)
English Description:
Context: PricingParameterDerivativeReference (complex type)
The @href attribute is equal to the @id attribute of an element of type PricingParameterDerivative
XPath Description:
Context: PricingParameterDerivativeReference
id($context/@href) instance of element(*, PricingParameterDerivative)
ref-22 (Mandatory)
English Description:
Context: Valuation (complex type)
The @definitionRef attribute is equal to the @id attribute of an element of type ValuationScenario
XPath Description:
Context: Valuation
id($context/@definitionRef) instance of element(*, ValuationScenario)
ref-23 (Mandatory)
English Description:
Context: ValuationReference (complex type)
The @href attribute is equal to the @id attribute of an element of type Valuation
XPath Description:
Context: ValuationReference
id($context/@href) instance of element(*, Valuation)
ref-24 (Mandatory)
English Description:
Context: ValuationScenarioReference (complex type)
The @href attribute is equal to the @id attribute of an element of type ValuationScenario
XPath Description:
Context: ValuationScenarioReference
id($context/@href) instance of element(*, ValuationScenario)
ref-25 (Mandatory)
English Description:
Context: AccountReference (complex type)
The @href attribute is equal to the @id attribute of an element of type Account
XPath Description:
Context: AccountReference
id($context/@href) instance of element(*, Account)
ref-26 (Mandatory)
English Description:
Context: BusinessCentersReference (complex type)
The @href attribute is equal to the @id attribute of an element of type BusinessCenters
XPath Description:
Context: BusinessCentersReference
id($context/@href) instance of element(*, BusinessCenters)
ref-27 (Mandatory)
English Description:
Context: BusinessDayAdjustmentsReference (complex type)
The @href attribute is equal to the @id attribute of an element of type BusinessDayAdjustments
XPath Description:
Context: BusinessDayAdjustmentsReference
id($context/@href) instance of element(*, BusinessDayAdjustments)
ref-28 (Mandatory)
English Description:
Context: LegalEntityReference (complex type)
The @href attribute is equal to the @id attribute of an element of type LegalEntity
XPath Description:
Context: LegalEntityReference
id($context/@href) instance of element(*, LegalEntity)
ref-29 (Mandatory)
English Description:
Context: PartyReference (complex type)
The @href attribute is equal to the @id attribute of an element of type Party
XPath Description:
Context: PartyReference
id($context/@href) instance of element(*, Party)
ref-30 (Mandatory)
English Description:
Context: Payment (complex type)
The @href attribute is equal to the @id attribute of an element of type PricingStructure
XPath Description:
Context: Payment
id($context/@href) instance of element(*, PricingStructure)
ref-31 (Mandatory)
English Description:
Context: PricingStructureReference (complex type)
The @href attribute is equal to the @id attribute of an element of type PricingStructure
XPath Description:
Context: PricingStructureReference
id($context/@href) instance of element(*, PricingStructure)
ref-32 (Mandatory)
English Description:
Context: ProductReference (complex type)
The @href attribute is equal to the @id attribute of an element of type Product
XPath Description:
Context: ProductReference
id($context/@href) instance of element(*, Product)
ref-33 (Mandatory)
English Description:
Context: RateReference (complex type)
The @href attribute is equal to the @id attribute of an element of type Rate
XPath Description:
Context: RateReference
id($context/@href) instance of element(*, Rate)
ref-34 (Mandatory)
English Description:
Context: ScheduleReference (complex type)
The @href attribute is equal to the @id attribute of an element of type Schedule
XPath Description:
Context: ScheduleReference
id($context/@href) instance of element(*, Schedule)
ref-35 (Mandatory)
English Description:
Context: SpreadScheduleReference (complex type)
The @href attribute is equal to the @id attribute of an element of type SpreadSchedule
XPath Description:
Context: SpreadScheduleReference
id($context/@href) instance of element(*, SpreadSchedule)
ref-36 (Mandatory)
English Description:
Context: SensitivitySetDefinitionReference (complex type)
The @href attribute is equal to the @id attribute of an element of type SensitivitySetDefinition
XPath Description:
Context: SensitivitySetDefinitionReference
id($context/@href) instance of element(*, SensitivitySetDefinition)
ref-37 (Mandatory)
English Description:
Context: AnyAssetReference (complex type)
The @href attribute is equal to the @id attribute of an element of type Leg, or the @id attribute of an element of type Trade, or the @id attribute of an element of type BasketConstituent
XPath Description:
Context: AnyAssetReference
(id($context/@href) instance of element(*, Leg)) or (id($context/@href) instance of element(*, Trade)) or (id($context/@href) instance of element(*, BasketConstituent))
ref-38 (Mandatory)
English Description:
Context: MandatoryEarlyTermination (complex type) /cashSettlement/cashSettlementValuationDate/dateRelativeTo
The attribute cashSettlement/cashSettlementValuationDate/dateRelativeTo/@href is equal to mandatoryEarlyTerminationDate/unadjustedDate/@id or
to mandatoryEarlyTerminationDate/adjustedDate/@id
XPath Description:
Context: MandatoryEarlyTermination (complex type) /cashSettlement/cashSettlementValuationDate/dateRelativeTo
[exists(cashSettlement/cashSettlementValuationDate/dateRelativeTo)]
cashSettlement/cashSettlementValuationDate/dateRelativeTo/@href eq
mandatoryEarlyTerminationDate/unadjustedDate/@id or
cashSettlement/cashSettlementValuationDate/dateRelativeTo/@href eq
mandatoryEarlyTerminationDate/adjustedDate/@id
Deprecated rules
Removed rules
ref-5 (Mandatory)
REMOVED:
Context: FirstPeriodStartDate
Description: The @href attribute is equal to the ../../party/@id attribute.
Rationale for removal: the rule has been replaced by the business process rule number 2 (bp-2).
ref-6 (Mandatory)
REMOVED:
Context: InterestCalculationReference
Description: The @href attribute = the @id attribute of an element of type InterestCalculation.
Rationale for removal: The type doesn't exist anymore.
ref-39 (Mandatory)
REMOVED:
Context: BusinessCentersReference
Description: The @href attribute is equal to the @id attribute of an element of type BusinessCenters.
Rationale for removal: the rule is a duplicate of ref-26.