Skip to content

Commit

Permalink
fix many mistakes in the documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
stefjoosten committed Aug 10, 2023
1 parent 44fddff commit 83ab064
Show file tree
Hide file tree
Showing 16 changed files with 896 additions and 160 deletions.
475 changes: 475 additions & 0 deletions Ampersand.archimate

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/Examples.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ because it is familiar. We show this example to demonstrate how to get different

## Preliminaries

The compiler uses templates to adapt an interface to specific needs regarding its HTML structure. Please read the [documentation of templates](https://github.com/AmpersandTarski/prototype/tree/master/templates) first for details.
The compiler uses templates to adapt an interface to specific needs regarding its HTML structure. Please read the [documentation of templates](../../../prototype/tree/master/templates) first for details.

To link system activities to a person or organisation, we use the notion of `Account`. To log in means to associate a session with the `Account` of the user. This association is made in the relation `sessionAccount`. To log out means to break that link, i.e. to remove the session/account pair from relation `sessionAccount`. When logging in, it is customary that the user identifies herself. In this example we do this with a `UserID` and `Password`.

Expand Down Expand Up @@ -156,7 +156,7 @@ subbox remains empty. However, when logged in, the other subbox remains empty:
## Example {#example-service-structure}
To understand the structure of a service (keyword: `INTERFACE`), this section introduces a small example of a user interface, which shows the name, status, e-mail and co-workers of a person called "J. Lovell".

![Example of a user interface](./Figures/InterfaceLovellRaw.jpg)
![Example of a user interface](./assets/InterfaceLovellRaw.jpg)

The specification of this user interface is given in the following service definition:

Expand Down
Binary file added docs/assets/InterfaceAlphaBoardNested.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
File renamed without changes
File renamed without changes
File renamed without changes
12 changes: 6 additions & 6 deletions docs/reference-material/The-language-Ampersand.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,13 +104,13 @@ When running an application in your browser, you are watching one user interface

Further examples:

* a [client service](./Examples.md#services-example-client) to allow clients of a web shop to change their name and address and show them status information of their orders;
* a [login service](./Examples.md#services-example-login) to demonstrate how to get different interface structures under varying conditions.
* a [client service](../Examples.md#services-example-client) to allow clients of a web shop to change their name and address and show them status information of their orders;
* a [login service](../Examples.md#services-example-login) to demonstrate how to get different interface structures under varying conditions.

### CRUD annotations {#crud}
CRUD annotations are used in services to constrain the functionality of fields and boxes in an `INTERFACE`-statement. This allows you to minimize the functionality for your users, to design for easy learning.

Each CRUD annotation comes right after a [term](../terms/README.md), so we can always refer to "the term" to which a CRUD annotation belongs. A CRUD annotation constrains the things your user can do with the target atoms and the pairs of its term.
Each CRUD annotation comes right after a [term](./the-language-ampersand/terms/README.md), so we can always refer to "the term" to which a CRUD annotation belongs. A CRUD annotation constrains the things your user can do with the target atoms and the pairs of its term.

The CRUD-annotation specifies Create, Read, Update, and Delete rights for the term it follows. Capital = allowed, Non-capital = not allowed. CRUD is the default, so if you specify nothing, everything is allowed. The following service definition illustrates this.

Expand Down Expand Up @@ -238,7 +238,7 @@ BOX <FORM>
]
```

This service shows three rows in the user interface, **Students**, **Course** and **Modules**. The first column shows students in each of its rows. Each student is shown in the column layout. The second row shows courses in two columns, **Course** and **Modules**. Please read about [templates](https://github.com/AmpersandTarski/prototype/tree/master/templates) if you are curious which other ways of displaying information there are besides `BOX <FORM>`. Please read the [explanation of CRUD annotations](../crud.md) if you are curious about the CRUD annotations. This is what the user will see on the screen.
This service shows three rows in the user interface, **Students**, **Course** and **Modules**. The first column shows students in each of its rows. Each student is shown in the column layout. The second row shows courses in two columns, **Course** and **Modules**. Please read about [templates](../../../prototype/tree/master/templates) if you are curious which other ways of displaying information there are besides `BOX <FORM>`. Please read the [explanation of CRUD annotations](./the-language-ampersand/services.md#CRUD) if you are curious about the CRUD annotations. This is what the user will see on the screen.

![Row-oriented layout of a user interface with columns in each row](<../assets/ROWS layout example.png>)

Expand Down Expand Up @@ -275,8 +275,8 @@ This service shows three tabs in the user interface, **Students**, **Course** an

We have discussed the `COLS`, `ROWS`, and `TABS` layout options. Please note that these options do not change the semantics; whatever your options, Ampersand displays the same data in the same fields.

If these options are not enough, you can [enhance your application with your own layouts](your-own-widgets-html-and-css.md).
If these options are not enough, you can [enhance your application with your own layouts](../tutorial/services.md#layout-and-widgets).

#### Your own widgets \(HTML and CSS\)
You don't have to put up with the [Ampersand built-in layout options](https://github.com/AmpersandTarski/prototype/tree/master/templates) if they don't suit your purpose. You can change most anything by including your own code snippets. \(to be done...\).
You don't have to put up with the [Ampersand built-in layout options](../../../prototype/tree/master/templates) if they don't suit your purpose. You can change most anything by including your own code snippets. \(to be done...\).

2 changes: 1 addition & 1 deletion docs/reference-material/syntax-of-ampersand.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ id: syntax-of-ampersand

This page is about the syntax of ampersand scripts.

## The CONCEPT statement
## The CONCEPT statement

### Purpose:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ ENDCONTEXT

If you run this program, this is what you'll see

![](../../assets/image.png)
<!-- ![](../../assets/image.png) -->

### Explanation

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ Keywords in Ampersand are always written in CAPITALS.
* `HTML`
* `LATEX`
* `MARKDOWN`
* Keywords for [services](../../The-language-Ampersand.md#syntax-of-interface-statements)
* Keywords for [services](./services.md#syntax-of-interface-statements)
* `INTERFACE`
* `FOR`
* `LINKTO`
Expand Down
Loading

0 comments on commit 83ab064

Please sign in to comment.