💾 Archived View for rawtext.club › ~sloum › geminilist › 004951.gmi captured on 2023-11-14 at 10:25:56. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2021-11-30)

-=-=-=-=-=-=-

<-- back to the mailing list

Proposal: Simple structured form specification

Katarina Eriksson gmym at coopdot.com

Thu Jan 28 17:00:25 GMT 2021

- - - - - - - - - - - - - - - - - - - 

When this topic have come up in the past, we have concluded that Gemini cansupport forms with serial input fields, as opposed to the parallel inputfields people are used to from web forms.

One way to do this is to send status 10 until all the fields are satisfied,like a CLI. Another way is to have a page with links pointing to one fieldat a time.

Johann Galle <johann at qwertqwefsday.eu> wrote:

The basic idea is the following: Each form field is presented on a
separate "page" and the server keeps track of where the client is in the
form. Ideally the URL (URI/IRI?) contains all the data necessary, thus
"saving" the data on the client so it might be continued at a later date.
If the amount of data expected is larger than would fit in the URL, server
side state with client certificates would be an alternative.

I haven't seen this approach yet, seems just as valid as the other ones.

Now to the different types of input fields. I assume the form's base is

gemini://example.com/form/ which might display some information about the
form and the first input field.
On 27.01.2021 18:37, me at edaha.org wrote among other things:
# binary
Binary options are best known as checkboxes on the web. They're simple
on/off toggles. How they are displayed is up to the client
A check box can be simply implemented with two links for yes and no like
this for example:
```
Does Gemini need forms?
=
0/ No, it does not.
=
1/ Yes, it does.
```

Asking a question like this is not a good example for showing offcheckboxes but another way is to send this:```10 Does Gemini need forms? [yes/no]```...and repeat until the user supply a valid answer.

Multiple choice checkboxes can be combined into one input:```10 My server supports: [c: CGI, v: virtual host, s: sessions]```...and the user can answer "sv" or "cs" or "v" or whatever other validcombination.

[...]

# choice

[...]This refers to a single choice among a list of things.

<= choice Which of these protocols are we using?

> <= choice gemini>

<= choice gopher>
<= choice HTTP>
This could be implemented just like a checkbox, just with more options.
Coincidentally the syntax is very similar to the one proposed.
```
Which of these protocols are we using?
=
gemini/ gemini
=
gopher/ gopher
=
http/ HTTP
```

This would be:```10 Which of these protocols are we using? [gemini/gopher/http]```...in that same example. Though, I do like the links better.

# submit
Finally, submit. This one's easy:
... because it is not necessary. The server will just show you the result
or take the respective action after the last form field is filled. Maybe a
final checkbox of "Are you sure" would be nice to let the user know that
this will result in some action.

Or just "Confirm sending this information"

-- Katarina-------------- next part --------------An HTML attachment was scrubbed...URL: <https://lists.orbitalfox.eu/archives/gemini/attachments/20210128/272c292c/attachment.htm>