orientechnologies / orientechnologies/orientdb

System fields in documents

Open
#7,701 7 comments 1 reaction 1 assignee View on GitHub

@luigidellaquila is already working on this.

Since Aug 31, 2017.

enhancement
Dominant language
Java
Stars
5k
Forks
868
Avg merge
15h 6m
Merged PRs (30d)
18

Description

Currently to express graph structure regarding documents we use fields like "in_", "out_" and so on.
The problem with those fields that they can be accessed by users as result information which should be encapsulated inside documents can be changed by users. It is proposed to introduce the concept of system fields. Let suppose we will have fields which have names, not "in_" but "@in_" for example, those fields can not be accessed by conventional access methods like document.field(). So queries which are used to update and create documents or vertexes like "update/upsert" and so on will not be able to access and modify and damage content of those fields. Those fields will be accessed only in special places like in "in()" function or "create edge" function. The downside of this approach, of course, is that users in their SQL queries always should use graph functions instead of plain fields. But the idea initially was that those fields had to be encapsulated.

Contributor guide

Open the contributing guide

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.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.