Standard vocabulary does not always specify Nullable for collection typed properties

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Trivial
    • None
    • Affects Version/s: None
    • Component/s: Vocabularies
    • None
    • Environment:

      Proposed

      [Section 7.2|OData Common Schema Definition Language (CSDL) XML Representation Version 4.01 (oasis-open.org)] states

      In OData 4.01 responses a collection-valued property MUST specify a value for the Nullable attribute.
       
      Some standard annotations don't follow the specification.

       

      vocabularies\Org.OData.Capabilities.V1.xml:    452:         <Property Name="FilterExpressionRestrictions" Type="Collection(Capabilities.FilterExpressionRestrictionType)"    453:     977:       <Term Name="CustomHeaders" Type="Collection(Capabilities.CustomParameter)" AppliesTo="EntityContainer">    978:         <Annotation Term="Core.Description" String="Custom headers that are supported/required for the annotated resource" />       984:    1005:       <Term Name="CustomQueryOptions" Type="Collection(Capabilities.CustomParameter)" AppliesTo="EntityContainer">   1006:         <Annotation Term="Core.Description" String="Custom query options that are supported/required for the annotated resource" />      1014:  
       vocabularies\Org.OData.Validation.V1.xml:   152:       <Term Name="AllowedTerms" Type="Collection(Core.QualifiedTermName)" AppliesTo="Term Property">   153:         <Annotation Term="Core.Description" String="Annotate a term of type Edm.AnnotationPath, or a property of type Edm.AnnotationPath that is used within a structured term, to restrict the terms that can be targeted by the path." /> 
         158:       <Term Name="ApplicableTerms" Type="Collection(Core.QualifiedTermName)">   159: 

            Assignee:
            Unassigned
            Reporter:
            chrispre
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: