Halo Extension Features
From semanticweb.org
This page lists features that are provided by the Halo Extension to Semantic MediaWiki, and points to the relevant documentation pages.
[edit] Semantic Toolbar
The semantic toolbar is the indispensible tool to easily understand, create and alter the semantic annotations of a wiki article. The toolbar is displayed side-by-side with the wiki text and delivers an easy-to-understand chart of the article's annotations; this is a big help for the users to detect and locate all annotations in the wiki text by one glimpse.
The user can easily create, inspect and alter semantic annotations in the wiki text without knowing the annotation syntax; he just uses the form-based user interface to
- change the values of properties (including the value which is displayed in the rendered article)
- change the name of properties or delete properties,
- change properties of properties, such as the cardinality, domain and range and type.
Categories can be created and annotated in a similar manner.
Entering values is supported by drop down lists which offer only these values which are valid in the given context; this is especially helpfull when annotating existing properties or categories.
Also, the toolbar extracts and lists all articles and external pages which are refered to in the wiki text.
The semantic toolbar comes with an advanced editor for the wiki text which highlights the semantic annotations and, thus, makes reading of the wiki text easier.
Please refer to the following user documentation for the individual features:
- Syntax Highlighting Editor: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Syntax_Highlighting_Editor
- Semantic Toolbar: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Semantic_Toolbar
[edit] Advanced Annotation Mode
The Advanced Annotation Mode combines the two paradigms of reading and editing in order to provide a quick and easy way to annotate an article. In this mode, wiki pages are displayed in the same way as they are displayed in the standard view mode. However, users can easily add annotations by simply highlighting the word or passage they want to annotate.
Since links to other wiki pages that are contained in an article are potential candidates for new annotations, the Advanced Annotation Mode provides quick access links to directly annotate those links. Similar quick access links do also exist for annotations contained in an article. In this way, existing annotations can easily be edited or deleted.
In order to prevent invalid annotations, the Advanced Annotation Mode includes several mechanisms that support the user during the annotation process. Annotations across different formatting styles are automatically recognized and instant feedback to the user about this problem is provided. Furthermore, contents that are embedded through templates are highlighted and can not be annotated.
The Advanced Annotation Mode does also make use of the Semantic Toolbar and the autocompletion facility in order to optimize accessibility and user support. In this way, users can annotate existing articles in a fast and easy manner without having to deal with the wiki syntax itself.
(Please refer to the following article for the user documentation: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Advanced_Annotation_Mode )
[edit] Ontology Browser
The Ontology Browser allows easy navigation through the wiki's ontology without the need to access individual articles. It helps the user to understand the ontology and to keep an overview about it; this is necessary because all schema data is distributed over hundreds of pages. Various filter mechanisms allow restricting the view on a particular part of the ontology. Additionally, the browser allows the user navigating through the whole schema data.
The ontology browser consists of three controls which display the category and instance hierarchy including the properties for a selected instance. Each control comes with a text input field which allows entering a string to filter the list of entities displayed.
The category hierarchy can be expanded or reduced by clicking on the vertexes of the hierarchy-tree. All instances (including inherited) of a category can be listed by selecting an individual category. Selecting an instance shows the annotations of the instance's properties including the type and cardinality of the attribute or domain and range information of the relation.
Users can easily open the article for an individual entity by double clicking it.
Administrators and Gardeners of a wiki have access to several maintenance tools provided through the ontology browser. Categories can be created, renamed, or even moved by simply dragging them onto another category. Furthermore, instances can be renamed or deleted and new properties can be added to a domain.
(Please find the user documentation for the ontology browser here: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/OntologyBrowser )
[edit] Question Formulation Interface
Ask queries can be used to pose queries against the semantic wiki. However, those queries have a complex syntax. Since rather inexperienced users should also have the chance to use the advantages of those queries without being forced to learn this syntax, a query interface was implemented in the SMW. This graphical interface allows users to easily compose their own queries.
The query interface is offered as a special page. It comes with controls to reset the entire interface, to preview the results of a query and to copy the wikitext-code representing the generated query to the PC's clipboard; therefore generated queries can easily deployed on the article they are meant for.
A tree-like representation of the query is shown on the left hand side of the interface; sub-queries are listed in sub-trees. The tree shows the structure of the query and allows navigation through it by clicking the single items. A breadcrumbs navigation shows the current position in the structure of your current query.
In the middle of the QI, there is the main part of the interface where further restrictions to your query can be added.
The table column preview is displayed underneath. Most query re-sults in SMW are shown in tables. This little window gives an instant preview of which columns will appear in the result table of the current query.
At the very bottom, there is the query layout manager which helps defining the output format of your query, since there are many different possibilities.
Finally, the query interface allows conjunctions and disjunctions of filtering options. Whenever adding a category, instance or property they are connected by a conjunction. This means that all entered restrictions have to be true in order to appear in the result table. However, sometimes it is necessary to use a disjunction. This can be done by using the green plus sign next to an input field.
Please refer to the user documentation for further details: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Question_Formulation_Interface .
[edit] Auto completion
Auto completion is an indispensible tool for users to generate annotations. They do not have to care about correct spelling of an article’s or property's name - auto completion extracts possible completions from the semantic context. For example, it checks what attribute values are possible for a particular attribute and show only these to the user. This tool is used in the wiki text editor, the semantic tool bar, the query interface and the combined search.
Apart from substring matching, the set of possible matches is semantically reduced according to a simple schema (<match>is at least one character):
- Category annotation context
- User enters [[category:<match>: only matching categories are listed
- Attribute annotation context
- User enters [[<a property>:=<match>: a list of possible values is offered if the property is an enumeration or has a unit.
- Relation annotation context
- User types [[Is subproperty of::<match>: Only properties are listed
- User types [[<a property>::<match>: Only instances are listed
- Template annotation context
- User types {{<match> : All templates are listed
- Untyped link
- User types [[<match>: All instances are listed
(Please refer to the following article for the user documentation: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Auto_Completion .)
[edit] Gardening Framework
The Halo Extension provides a set of tools that support wiki users in keeping the knowledge base tidy. It is mainly concerned with identifying incorrect or incomplete annotations, i.e. the gardening component deals with semantic content, in addition to the usual Wiki gardening procedure that deals with textual or structural contents as well as with the linking between pages.
There are several types of gardening tools which can be accessed through the gardening tool box. All gardening tools are implemented as wiki bots; these bots can be started with a single click and will then perform their work in the background without any further need for user actions.
The results of the gardening bots are stored in the wiki's database and can be accessed via the Gardening Log page. Additionally, identified problems can be accessed through the Ontology Browser as well as the Semantic Toolbar. In this way, users will become aware of problems within single articles and are encouraged to fix them.
The Gardening Framework offers the following bots:
- similarity bot
- searches for articles and annotations which have similar names,
- undefined entities
- detects categories and properties which were used one or more times, but do not exist as pages,
- consistency bot
- detects property annotations which do not comply with their cardinalities, domains or ranges or which are annotated incompletely
- find articles which are not annotated
- delivers articles which do not contain semantic annotations and
- annomalies bot
- detects artefacts on schema or annotation level which indicate a bad modeling.
Please find the user documentation here: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Gardening .
[edit] Find Work / Semantic Suggest Bot
The Find Work special page does provide suggestions for article improvements to wiki users. The suggestions made are based on the results of the gardening bots on the one hand and the ratings of the annotation evaluation feature (see below) on the other hand. This set of pages that need improvement is then combined with the user's personal edit history in order to provide suggestions that match the user's interests.
Users can either ask for general suggestions or they can restrict the suggestions to certain classes of gardening issues.
Within the Find Work special page, the annotation evaluation feature provides a form through which users can rate existing annotations. The annotations are chosen randomly and can be rated as correct, incorrect or don't know. Depending on its ratings, an annotation will appear within the suggestions for improvements. The objective evaluation of annotations through gardening bots is therefore extended by a subjective evaluation through wiki users. In this way, the self-monitoring machanism of standard wikis is applied to semantic annotations.
(Please refer to the user documentation: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Find_Work .)
[edit] Combined Search
The Combined-Search complements MediaWiki's search facility; a search term, which is entered into the standard search-box is searched for corresponding properties or categories and values. If the system does not find an article matching the given search term (which is very likely if many terms are entered), the combined search is activated automatically. In contrast to the wiki's standard search facility, the combined search explores the semantic annotations and delivers a list of matching names and property values.
The combined search displays the search results in two separate tabs; the first tab lists all identified entities (based on substring matching of their labels) offering links to navigate to the article and to open the ontology browser to show the position of the entity in the taxonomy.
On request, the user can trigger a search for property values that are matching the search string. This is a convinient way to, for example, find a person's email adress, if only parts of it are known. The result list contains a table with the instance name the email attribute and the value of course.
Finally, the second tab offers a list of inline queries which is generated based on the type of entities found. If a category and a property are found, the user may ask for all instances which have an annotation for that property by clicking on the generated inline query.
(Please refer to the user documentation: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Combined_search .)
[edit] Context Sensitive Help
While the user works with the wiki, he is supported by a context sensitive help which tracks the actions of the user so that he can be helped pro-actively. The help facility can be easily enriched with help texts and anchor points in the user workflow.
Depending on the current context, i.e. possible user interactions, help questions are displayed in the semantic toolbar. Clicking on one help question opens a new window with the according help page, providing answers and solutions to the problem.
Additionally, users can pro-actively ask for help by searching for help questions (and corresponding answers) on a new special page.
The set of help questions can be easily expanded by the entire wiki community by clicking "Ask your own question" which allows to enter a specific question in an input box. The system will then automatically create the according help page with all necessary annotations. Unanswered questions will appear as red links, while answered questions will appear as blue links. If users know the answer to an open help question, they simply add the answer to the article.
(Please refer to the user documentation at http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Context_Sensitive_Help .)
[edit] Data types for the scientific domain
Additional data types have been added to allow expressing scientific knowledge, such as chemical and mathematical formulas and units of measurement.
[edit] Chemical equations
A new type Type:Chemical equation for attributes has been introduced; This allows annotations expressing equations consisting of reactants, arrows and products, e.g.:
Annotations of this kind will be checked for syntactical correctness and rendered nicely in the article.
Please refer to the user documentation for further information: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Chemical_Equation
[edit] Chemical formulas
The wiki offers the type Type:Chemical formula which allows the annotation of chemical formulas such as:.:
Annotations of this kind will be checked for syntactical correctness and rendered nicely in the article.
Please refer to the user documentation for further information: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Chemical_Formulae ).
[edit] Enumerations
Enumerations are attributes which can carry only a defined set of values. For instance, the chemical state of matter of a substance can be gaseous, aqueous, liquid and solid. These constants will be the possible values of an enumeration - and this is what the auto completion offers when annotating.
The fact box of the saved article shows, if the correct values have been assigned. If not, all possibilities are listed.
(Please refer to the user documentation for details: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Enumerations ).
[edit] Units of measurement
Units of measurement can be specified for data types. For instance, the Type:Velocity can have the unit km/h; if the article for Type:Velocity contains the lines given below, then the system can automatically convert annotations into different units:
[[corresponds to:=1 km/h]]
[[corresponds to SI := 0.27777778 m/s]]
The halo extension supports all SI base units:
-
m- Meter -
kg- kilograms -
s- Second -
A- Ampere -
K- Kelvin -
mol- Mole -
cd- Candela
Please refer to the user documentation: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Units_of_Measurement .
[edit] Mathematical equations
A new special data type Mathematical equation can be used to mark attributes to contain mathematical equations. In contrast to chemical formulae and equations, mathematical formulae are not parsed or syntax checked. Properties that should use this type must contain the following type definition:
[[has type::Mathematical equation]]
(Please refer to the user documentation for details: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Mathematical_Formulae ).
[edit] Informal knowledge
A new "built-in" property named "description" allows users to store an abstract of the current article; the abstract is then displayed in the fact box and can be easily searched for.
Please find the details in the user documentation: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Informal_Knowledge )
[edit] Refactoring
Efficient tools for the gardener to refactor parts of the Wiki's ontology allowing to trigger bulk operations to:
- Refactor/rename entities
- Refactor/join entities
(documentation is outstanding).
[edit] Enhancements for properties
This strand is concerned with additional features required for defining the schema of properties:
[edit] Domain and range for properties
In order to increase the quality of the taxonomy we encourage to define the domain and the range of a property. This additional information can be provided with the defintion of a property and specifies which category is the source and which is the target of a particular property.
The gardening tools will detect violations against given domain and range specifications for properties; this allows to quickly assess if all property annotations adhere to the intended schema.
Also we have expanded the category pages such that the schema information is displayed:
- Relations of the category i.e. all relations whose domain (hint) is the category.
- Attributes of the category i.e. all attributes whose domain (hint) is the category.
- Normal articles whose domain is the category. This table indicates modelling errors as normal articles must not have a domain.
- Relations whose range (hint) is the category.
- Attributes whose range (hint) is the category. This table indicates modelling errors as attributes have no range but a type.
- Normal articles whose range is the category. This table indicates modelling errors as normal articles must not have a range.
Please refer to the user documentation for more details: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Domain_and_Range .
[edit] Cardinality of relations
Defining the minimal and maximal cardinality of a property contributes to the quality of the knowledge base. This additional information can be specified in the definition of a property; it gives the minimal and maximal number of allowed values. The gardening bots detect violations against that schema information, such that wrong annotations can be easily located.
(Please refer to the user documentation for additional information: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Properties_of_Properties )
[edit] n-ary relations
N-ary relations are a new data type which can be used to define properties with more than one value and different datatypes or ranges for each value. It can also used to define that a specific value depends on other values.
For example to express that the density of a chemical substance depends on its temperature one can define an attribute as given below:
[[has type:=Type:Density;Type:Temperature;Type:Pressure]][[Has domain hint:=Category:Chemical substance]]
To express the specific density of aluminium at 20°C one would annotate the aluminium article like that:
[[has density:=2300 kg/m³;20 °C;1024 hPa]]
N-Ary Relations are also supported in ask queries, eg. creating an ask with
<ask>[[has density:=2300 kg/m³;?;>1000 hPa]]</ask>
will correctly return "Aluminium", and all other elements that have a density of 2300 kg/m³ at a pressure above 1000 hPa.
Please refer to the user documentation for further details: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/n-Ary_Relations )
[edit] Hierarchies of properties (super properties)
We have enhanced expressivity to build hierarchies of properties; this allows to express that, for example, the property "is parent of" is a super property of "is father of" and "is mother of".
Hierarchies of properties are a very convenient means to build a tidy model; inline queries involving super-properties reflect also annotations of sub-properties. The following query yields the father and the mother of the person "Freddy" even if the relation "is parent of" is not explicitely annotated for Freddy.
<ask> [[Category:Person]][[is parent of:=Freddy]] <ask>
The semantic toolbar allows to construct hierarchies of properties easily.
(Please refer to the following article explaining how to use the semantic toolbar for hierarchies of properties: http://wiki.ontoprise.de/ontoprisewiki/index.php/Halo_Extension/User_Documentation/Superproperties )
[edit] Special types of properties: symmetric, inverse, transitive
Properties, i.e. relations, can be classified in the following types:
- symmetric: the relation is valid into both directions, e.g. "Tom is related to Marta"
- transitive: for transitive relations R the following condition is true: if xRy and yRz then xRz. E.g. "If the Chrysler Building is higher than Empire State Building and the Empire State Building is higher than my house then the Chrysler building is higher than my house".
- inverse: a relation can be the inverse relation to another one, e.g. "is child of" and "is parent of".
The semantic toolbar supports such annotations comfortably.
These advanced types of relations are reflected in the RDF export of SMW; inline queries are not aware of such relations.


