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

Require the use of <edmx:Include> to pull in specific namespaces from <edmx:Reference>

    XMLWordPrintable

    Details

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

      [Proposed]

      Description

      <edmx:Reference> allows a service's metadata document to reference external metadata descriptions in a distributed environment. This allows a large, potentially complex schema to be factored into reasonable sized chunks.

      In such an environment, one metadata document may reference multiple external metadata documents, and clients can lazily fetch metadata as required. However, today there is no way for a client to know which of possibly multiple references it needs to follow in order to resolve a particular namespace.

      If we were to require that the service explicitly specify the namespaces to be included from each reference, that would allow a client that is lazily exploring metadata to know which references it needs to follow in order to get additional metadata. This also gives us the ability to include a subset of the namespaces in a referenced document.

      This is also a convenient place to apply an alias to the namespace, which makes more sense than applying it in a <using> statement within the <schema> since the alias, in order to be valid in a url or a response, must be global which is strange for a declaration within a <schema> element.

      For example:
      <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
      <edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx"
      Version="4.0">
      <edmx:Reference Url="http://odata.org/ann/a">
      <edmx:Include Namespace="org.example.validation" Alias="validation"/>
      <edmx:Include Namespace="org.example.display" Alias="display" />
      </edmx:Reference>
      <edmx:DataServices ...>
      </edmx:Edmx>

        Attachments

          Activity

            People

            • Assignee:
              handl Ralf Handl
              Reporter:
              mikep Michael Pizzo (Inactive)
            • Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: