<
From version < 6.1 >
edited by uru
on 2013/10/10 14:21
To version < 14.1 >
edited by uru
on 2013/10/11 12:51
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -Model Browsing (KLighDning)
1 +Online Model Browsing (KLighDning)
Content
... ... @@ -1,7 +1,7 @@
1 -{{panel title="Project Overview" borderStyle="dashed"}}
1 +{{panel borderStyle="dashed" title="Project Overview"}}
2 2  Responsible:
3 3  
4 -* {{mention reference="XWiki.uru" style="FULL_NAME" anchor="XWiki-uru-OdFmu"/}}
4 +* {{mention reference="XWiki.uru" style="FULL_NAME" anchor="XWiki-uru-ruhyf"/}}
5 5  
6 6  Demo Videos:
7 7  
... ... @@ -9,14 +9,62 @@
9 9  * [[Collaboratively browsing model diagrams>>url:http://rtsys.informatik.uni-kiel.de/~~kieler/videos/klighdning_sync/||shape="rect"]]
10 10  {{/panel}}
11 11  
12 -The **KLighDning** project aims at providing a flexible infrastructure to browse arbitrary models. It combines the [[KlighD >>doc:Lightweight Diagrams (KLighD)]]technology with web technologies, such as websockets and SVG, to present transiently synthesized diagrams of the models within a webbrowser.
12 +The **KLighDning** project aims at providing a flexible infrastructure to browse arbitrary models. It combines the [[KlighD >>doc:Lightweight Diagrams (KLighD)]]technology with web technologies, such as websockets and SVG, to present transiently synthesized diagrams of the models within a webbrowser. KLighDnings focus is //browsing// model diagrams for documentation purposes, not //editing// of the models. As part of the documentation idea, basic collaboration facilities are included. Users can join so-called //rooms// in which the browsing process is synchronized for all participants, for instance, panning, zooming, and expanding of compound nodes.
13 13  
14 -
14 +== Details ==
15 15  
16 +=== Supported Models ===
16 16  
18 +KLighDning leverages the transient views approach to synthesize diagrams for (purely textual) models. Our implementation [[KLighD >>doc:Lightweight Diagrams (KLighD)]]employs the notion of //diagram// //syntheses//, which basically are model transformations from an arbitrary source model format to the [[KGraph >>doc:KGraph Meta Model]]format (structural description), where each graph element can be equipped with [[KRendering >>doc:The KRendering Notation Model]]elements for styling. See the corresponding wiki pages for further information.
17 17  
18 -{{toc/}}
20 +As part of the KIELER Project we currently support following diagram sytheses.
19 19  
22 +|=(((
23 +Diagram Type
24 +)))|=(((
25 +Short ID
26 +)))|=(((
27 +Feature ID
28 +)))
29 +|(((
30 +[[KGraph Text Format>>doc:KGraph Text (KGT)]]
31 +)))|(((
32 +{{{kgraph}}}
33 +)))|(((
34 +{{{de.cau.cs.kieler.kgraph.feature.feature.group}}}
35 +)))
36 +|(((
37 +[[Ptolemy's MoML>>doc:Ptolemy Browser]]
38 +)))|(((
39 +{{{ptolemy}}}
40 +)))|(((
41 +{{{de.cau.cs.kieler.ptview.feature.feature.group}}}
42 +)))
43 +|(% colspan="1" %)(% colspan="1" %)
44 +(((
45 +Ecore Class Diagram
46 +)))|(% colspan="1" %)(% colspan="1" %)
47 +(((
48 +{{{klighd.examples}}}
49 +)))|(% colspan="1" %)(% colspan="1" %)
50 +(((
51 +{{{de.cau.cs.kieler.klighd.examples.feature.feature.group}}}
52 +)))
53 +
54 +=== Transient Static Links ===
55 +
56 +**Permanent links** are another facet of the documentation purpose. A user can browse a model to a point where he potentially finds a bug. In order to supplement the bug report a //PermaLink// can be retrieved that holds the current viewport and expansion status of the user. The link can be attached to the report and upon opening the link, the diagram is opened as specified by the link.
57 +
58 +{{code title="PermaLink" language="bash"}}
59 +http://[SERVER]/[MODEL_PATH]?perma=[EXPANSION]&transform=[VIEWPORT_MATRIX]
60 +{{/code}}
61 +
62 +=== Collaboration ===
63 +
64 +**Rooms** serve as a basis for collaboratively browsing a model. Users can join a common room in which all browsing activity, i.e., zooming, panning, expanding, is synchronized. One user can explain the model to another, or ask questions about certain details.
65 +
66 +
67 +
20 20  == Examples ==
21 21  
22 22  === Desktop Webbrowser ===
... ... @@ -29,14 +29,64 @@
29 29  
30 30  
31 31  
32 -
80 +== Quick Start ==
33 33  
34 -== Details ==
82 +* Download a release or nightly build of the KLighDning product.
83 +* Use the {{code language="none"}}install_kieler_features.sh{{/code}} or {{code language="none"}}install_features.sh{{/code}} script to add the desired diagram syntheses.
84 +* Start the server using the {{code language="none"}}start.sh{{/code}} script.
35 35  
36 -=== PermaLinks ===
86 +Following a small exemplary deploy script for KLighDning is shown that downloads the current nightly build, extracts it, installs the {{code language="none"}}kgraph{{/code}} and {{code language="none"}}klighd.examples{{/code}} diagram syntheses, and starts the server.
37 37  
38 -
88 +{{code title="Exemplary Deploy Script for KLighDning" linenumbers="true" language="bash"}}
89 +#!/bin/bash
90 +#
91 +# Deploy the KLighDning product and install some features
92 +#
39 39  
40 -== Quick Start ==
94 +# location of the klighdning product
95 +HOST="http://rtsys.informatik.uni-kiel.de"
96 +SERVER_PATH="/~kieler/files/nightly/klighdning/"
97 +PLATFORM="linux.gtk.x86_64"
98 +FILE="klighdning_nightly_*-${PLATFORM}.zip"
41 41  
42 -be
100 +# features to be installed into the klighdning instance
101 +FEATURES="kgraph,klighd.examples"
102 +
103 +# local models repository
104 +MODELS_REPO="/home/layout/models"
105 +
106 +
107 +echo "##################################"
108 +echo "###### Deploying KLighDning ######"
109 +echo ""
110 +echo "Downloading ... "
111 +echo " archive: ${FILE}"
112 +echo " host: ${HOST}${SERVER_PATH}"
113 +
114 +wget -r -nd -P tmp -A "$FILE" -I $SERVER_PATH "${HOST}${SERVER_PATH}" 2>/dev/null
115 +
116 +echo "Unzipping ..."
117 +cd tmp
118 +unzip -q *.zip
119 +cd ..
120 +mv tmp/klighdning .
121 +rm -rf tmp
122 +
123 +echo "Make the scripts executable ..."
124 +chmod u+x klighdning/*.sh
125 +
126 +echo "Installing features ..."
127 +cd klighdning
128 +./install_kieler_features.sh "$FEATURES"
129 +
130 +echo "Starting KLighDning ..."
131 +./start.sh "$MODELS_REPO"
132 +
133 +cd ..
134 +
135
136 +{{/code}}
137 +
138 +
139 +
140 +=== Example ===
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -8323093
1 +8651162
URL
... ... @@ -1,1 +1,1 @@
1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/8323093/Model Browsing (KLighDning)
1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/8651162/Online Model Browsing (KLighDning)