microsoftgraph / microsoftgraph/msgraph-metadata

Required properties on insert and update should be specified in `requiredProperties`

Open
#278 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

priority:p3
Dominant language
XSLT
Stars
166
Forks
55
Avg merge
16h 12m
Merged PRs (30d)
14

Description

Workload owners should explicitly specify required properties on insert and update in requiredProperties as stated at https://github.com/oasis-tcs/odata-vocabularies/blob/814f2fdc1828d321a707de4c2da8cc7f128a0a29/vocabularies/Org.OData.Capabilities.V1.md#insertrestrictionstype.

RequiredProperties [PropertyPath] These structural properties must be specified on insert
RequiredProperties [PropertyPath] These structural properties must be specified on update

Also, navigation properties that don't support deep inserts and rebinding should be specified in NonInsertableNavigationProperties and NonUpdatableNavigationProperties respectively.

This is needed to ensure SDKs surface updatable and insertable properties accurately. The CSDL is the sole source of truth for SDKs and other tools. The accuracy and completeness of the CSDL is critical in generating self-documenting SDKs.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing the Microsoft Graph CSDL metadata with the linked OData Capabilities definitions for InsertRestrictionsType and UpdateRestrictionsType. Check how requiredProperties and non-insertable or non-updatable navigation properties are represented. Done means the CSDL accurately exposes these constraints so SDKs and other tools can generate correct property behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
xml
Domain
api
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.