Introspector/Interfaces/GUI

From Wikibooks, open books for an open world
< Introspector
Jump to: navigation, search

The introspector GUI will ideally be a c# windows application.

== Abstract GUI Client ==

The ["Abstract GUI Client"] is a proposed API that will isolate you, the user from a particular GUI toolkit.


It is based on the ["MVC Concept"] which splits things into Model ["MVC/Model"], View ["MVC/View"] and Controller ["MVC/Controller"].

The user looks at the view, and enters data into the controller.

The ["GUI User"] provides events to the ["MVC/Controller Elements"].

The controller is basically a producer of events that are sent to the model. A stream of updates are sent from the controller to to model, and that updates all the views that are watching a particular object.

The ["GUI Application Server"] serves ["MVC/View"] to the ["GUI Client Application"]. The ["GUI Client Application"] displays ["MVC/View"] to the ["GUI User"], and it offers multiple ["MVC/Controller"].

The ["GUI Application Server"] uses ["MVC/Model"] to store ["Application Data"].

The ["Application Data"] is able to be processed by any backend module.

=== RDF Data Architecture ===

The ["MVC/Model"] can be a ["DotGNU/RDF Model"].

The ["DotGNU/RDF Model"] can be composed of ["DotGNU/RDF Graphs"].

The ["DotGNU/RDF Graph"] can be managed on ["DotGNU/RDF Storage Server"].


== See Also ==
* GladeXml
* XulLanguage 
* LuXor
* ["Xwt"]


TaskProposal DotGNU RDF Gui[edit]

Implement a ["DotGNU"] ["RDF"] ["Gui"] using ["Abstract GUI Client"].

0. Make a GUI that can read one n3 file and find the following things out.
1. Graphical User Interface
1. 1. Find relations between objects
1. 2. Find domains of relations between objects
1. 3. Find types of relations between objects
1. 4. Find cardinality of relations between objects
2. Select Subject/Object
2. 1.   Select Attributes
2. 2.   Select Components
2. 3.   Select Contained Objects
2. 4.   Select Relations
3. Save the relations found as hypothesis in an Ontology
4. Implement as ["Abstract GUI Client"] that Leverages ["GTK#"] ,and ["QT#"]


Status : Proposal