OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

odata message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: [OASIS Issue Tracker] (ODATA-940) Define a validation term for valid values

    [ https://issues.oasis-open.org/browse/ODATA-940?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=62509#comment-62509 ] 

Ralf Handl commented on ODATA-940:

I'd start without the "extend" or "merge" feature and instead require that all allowed values are listed.

I would however make the term structured so we can add additional properties later, and I'd also go for Validation.Value as a complex type that allows annotating/documenting each allowed value. Annotating enumeration values is currently discussed for the OpenAPI Specification in https://github.com/OAI/OpenAPI-Specification/issues/348, so this seems to be a general concern/desire.

> Define a validation term for valid values
> -----------------------------------------
>                 Key: ODATA-940
>                 URL: https://issues.oasis-open.org/browse/ODATA-940
>             Project: OASIS Open Data Protocol (OData) TC
>          Issue Type: Bug
>          Components: Vocabularies
>    Affects Versions: V4.0_ERRATA03
>         Environment: [Proposed]
>            Reporter: Michael Pizzo
>             Fix For: V4.01_WD01
> ODATA-849 proposes allowing enumerations to extend other enumerations.
> ODATA-494 similarly proposes allowing enumerations to derive from other enumerations.
> ODATA-874 proposes allowing string as an underlying type
> We have also had requests to support enumerations that don't conform to the rules for simple identifiers (i.e., they may have spaces, dashes, etc. in the names) 
> All of these are good suggestions, but they don't play well with enumerations in programming languages.
> As an alternative to trying to introduce rules that don't work well with programming languages, we could simply extend the validation vocabulary with a term that could be applied to any property in order to limit the domain of valid values for that property, or defined as a type definition such that any property that used that type definition would have the constraint.
> The semantics of this new construct would be clear up front that it could change over time, so applications would need to account for unexpected values.
> This could be used where an enumeration was not appropriate, for example:
> 1) Where the allowable values needed to change over time
> 2) Where the allowable values needed to extend an existing allowable values
> 3) Where the allowable values were not (all) strings
> 4) Where the allowable values did not satisfy simple identifier rules

This message was sent by Atlassian JIRA

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]