Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Object metadata #49

Open
FlorianRappl opened this issue Jul 11, 2016 · 0 comments
Open

Object metadata #49

FlorianRappl opened this issue Jul 11, 2016 · 0 comments

Comments

@FlorianRappl
Copy link
Owner

Right now objects are simple IDictionary<String, Object> bags. This won't be changed for sure. However, giving them "special keys" that are associated with meta information would yield several advantages. It would give us the ability to create generic objects that - very much like JavaScript - define their prototype without much trouble.

Potentially, one way is to start metadata properties with an $ symbol, e.g., $prototype. There are many other options. The prototype metadata, for instance, could be used to distinguish an array-like object from a standard object (and many more).

One of the questions that needs to be answered before implementing this is the impact. It is clear that MAGES won't leave the road of having .NET System-level objects, instead of custom definitions. In that manner the metadata properties will just appear like regular keys. However,

  • should they be removed, e.g., for JSON?
  • should they be included in, e.g., keys?
  • how should one interact with them within MAGES - if at all
  • are they only "touchable" from, e.g., C# / .NET?

They could also be used to transport "attributes" and "documentation" of certain objects.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant