scenarioo / scenarioo-format

Specification of the next generation Scenarioo documentation format (for version 3.0 and upwards)
http://www.scenarioo.org
GNU Lesser General Public License v3.0
0 stars 2 forks source link

Create a first draft of the format specification #2

Closed adiherzog closed 8 years ago

adiherzog commented 8 years ago
adiherzog commented 8 years ago

I am currently working on a first version based on https://github.com/scenarioo/scenarioo/wiki/Scenarioo-Writer-Documentation-Format.

and

https://github.com/scenarioo/scenarioo/tree/develop/scenarioo-docu-generation-example/src/test/resources/example/documentation/scenarioDocuExample/wikipedia-docu-example

tobiaszuercher commented 8 years ago

nice.

i've changed the field definition to a table layout in a PR. i don't have permissions to write directly to the repo. can you pls give me permissions?

bruderol commented 8 years ago

:+1: nice

bruderol commented 8 years ago

I started to describe the generic Scenarioo object model to be used in the new format, that we discussed last monday in the design meeting with @tobiaszuercher @felixmokross @dola - will post it soon here.

bruderol commented 8 years ago

@scenarioo/scenarioo-devs I documented an inital draft of the new "Scenarioo Object Model" for the new format here:

https://github.com/scenarioo/scenarioo-format/blob/master/scenarioo_object_model.md

Pleae review it and give your feedback here or by directly changing my documentation.

This draft of the model is based on the discussion we had last monday together with @tobiaszuercher @felixmokross and @dola

Thank you all for the very good meeting, I hope you like my proposal (should be more or less what we discussed, I only improved it a little bit)

bruderol commented 8 years ago

@scenarioo/scenarioo-devs I will present this initial design on wednesday at the meeting. If anybody has some feedback on this, please bring it up now. After we will start to plan implementing this new format.

dola commented 8 years ago

If I remember correctly, we discussed that the main difference between properties and items (apart from the latter being rendered as child nodes) is, that properties have a key and labels don't; i.e. they are a list of child elements rather than a key-value mapping of those. With the change to flatten the objects so that the labelKey is directly in the properties object, this difference is no longer transparent in the json files. I'm not sure if it makes sense for items to have a labelKey but in the old format they never do. (IIRC) However this is a small difference that we could easily adapt and discuss again. Thank you for the detailed specification and explanation of the new format draft. I think we came up with a viable and robust new format.

bruderol commented 8 years ago

@dola Yes, thank you for the feedback. But when I rethought about it, I found out, that it is not true, that items can not have a labelKey. The difference here is, that for items it is not required, but can also be helpful. See the picture with the comparison of our model to UML object models, as you can see there, also the relations to other objects (=items) can have a labelKey (see the dependency to the SQL database in the example).

You could also think of it as follows in tables of objects (one possible metaphor to explain our model, apart from the UML object model metaphor):

Is that okay for you? Does that make sense?

bruderol commented 8 years ago

we reviewed this in the dev meeting, and I consider the Object Model as finalized https://github.com/scenarioo/scenarioo-format/blob/master/scenarioo_object_model.md

The rest of the format needs improvements concerning following open points:

bruderol commented 8 years ago

I started planning the format 3.0 a little bit more detailed.

See here: https://huboard.com/scenarioo/scenarioo#/?repo=%5B%22scenarioo-format%22%5D

I think that we should try to set the following goals for the coding days:

bruderol commented 8 years ago

The initial proposal is considered finalized, There is a full example under example. Docu needs to be cleaned up, see #7