Uploaded image for project: 'OASIS Open Data Protocol (OData) TC'
  1. OASIS Open Data Protocol (OData) TC
  2. ODATA-411

Reconsider placement and semantics of OnDelete element

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: V4.0_CSD01
    • Fix Version/s: V4.0_CSD02
    • Component/s: CSDL XML
    • Labels:
      None
    • Environment:

      [Applied]

      Description

      Currently the OnDelete element is on the dependent side and specifies "what happens here if over there the last thing goes away", i.e. an observer/event subscription pattern. This may have been inspired by SQL's ON DELETE, which is also specified on the dependent side.

      The "original" OnDelete element of OData V2/V3 seems to be specified on the principal side of the association, unfortunately not explicitly stated, only deducible from the only given example:

      <Association Name="CProductCategory">
      <End Type="Self.CProduct" Multiplicity="*" />
      <End Type="Self.CCategory" Multiplicity="0..1">
      <OnDelete Action="Cascade" />
      </End>
      </Association>

      If the category goes away, it notifies its products to also go away.

        Attachments

          Activity

            People

            • Assignee:
              handl Ralf Handl
              Reporter:
              handl Ralf Handl
            • Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: