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

Documentation for logic expressions and insights #676

Open
wants to merge 17 commits into
base: develop
Choose a base branch
from

Conversation

irfanbozkurt
Copy link
Contributor

No description provided.


Following are example query instances taken from an SDQL query
```JSON
"q1": {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For each query you need to explain how it produces a result. It's not very intuitive in some cases.

documentation/sdql/EVALUATION OF INSTANCES.md Show resolved Hide resolved
2. Else if query instance does not have a condition defined (either **in-line** or **in-instance condition**), $qN evaluates to **true** or **false** depending on if user provides valid data as an answer to this query instance.
- If data cannot be found in the persistence layer, $qN evaluates to false.
- Else if data provided by user is not a valid answer (e.g. answering "yes" to an age query instance), $qN evaluates to false.
- Else, "$qN" in a logic expression will be evaluated to **true**, representing that user has given permission for data asked by $qN, and they also provided a valid value for asked data type.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove this. don't use logic expression. We have two ways to evaluate them

- If data cannot be found in the persistence layer, $qN evaluates to false.
- Else if data provided by user is not a valid answer (e.g. answering "yes" to an age query instance), $qN evaluates to false.
- Else, "$qN" in a logic expression will be evaluated to **true**, representing that user has given permission for data asked by $qN, and they also provided a valid value for asked data type.
3. Else $qN evaluates to true or false depending on the conditions applied.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Name it in-query conditions instead of in-instance. We have conditions inside a query and outside a query.

- Else, "$qN" in a logic expression will be evaluated to **true**, representing that user has given permission for data asked by $qN, and they also provided a valid value for asked data type.
3. Else $qN evaluates to true or false depending on the conditions applied.
- Conditions that are applied within a query instance ([see](/documentation/sdql/README.md)) are called **in-instance conditions**.
- For [certain query types](/documentation/sdql/LOGICEXPRESSIONS.md), conditions can be applied **in-line** directly in the logic expression.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove this from here. This section is about queries? Nothing about logic evaluation should be here.

- Conditions that are applied within a query instance ([see](/documentation/sdql/README.md)) are called **in-instance conditions**.
- For [certain query types](/documentation/sdql/LOGICEXPRESSIONS.md), conditions can be applied **in-line** directly in the logic expression.

Consider following age query instances. "$q2" in a logic expression will be equivalent to "$q3>=10".
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs change. You drove to evaluating logic expressions without properly introducing query evaluation.

</tr>
</table>

## 2- Insight Instances
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Get rid of "instances". We already have too many terms and it does not add a value.

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

Successfully merging this pull request may close these issues.

3 participants