Changes

Jump to navigation Jump to search
1,076 bytes added ,  13:10, 22 August 2018
This page is part of the [[Getting Started]] Section.
The BaseX homepage gives you a [http://basex.org/products/gui visual impression] of the graphical user interface (GUI) of BaseX, and an [http://www.youtube.com/watch?v=xILHKGPGaJ4&hd=1 introductory video] is available, which presents some of its interactive features.
==Startup==
First of all, launch a GUI instance of BaseX. Depending on your operating system, double -click on the '''BaseX GUI''' start icon or run the <code>basexgui</code> script. Beside that, some more [[Startup#BaseX GUI|startup options]] are available.
==Create Select ''Database=='' → ''New'' and browse to an XML document of your choice. You can start with the {{Code|factbook.xml}} document, which contains statistical information on the worlds' countries. It is included in our full releases (in the {{Code|etc}} directory) and can also be [http://files.basex.org/xml/factbook.xml downloaded] (1.3 MB). If you type nothing in the input field, an empty database will be created. Next, choose the ''OK'' button, and the database will be created.
Select ''Database'' → ''New'' and browse to an If no XML document of your choice. As an exampleis available, you can start with the {{Code[[#Text Editor|factbookText Editor]] can be used to create and edit XML documents.xml}} After saving the documentto disk, which contains statistical information on the worlds' countries. It is included in our official releases and it can also be [http://files.basex.org/xml/factbook.xml downloaded] (1.3 MB). If you type nothing in supplied as input for the input field, an empty database will be created. Next, choose creation of the ''OK'' button, and BaseX will create a database that you can visually explore and query.
If no XML document is available, the [[#=Text Editor|Text Editor]] can also be used to create an initial XML document. After saving the entered XML document to harddisk, it can be specified in the above dialog.=
==Realtime Options==The built-in text editor is a powerful tool for writing XQuery scripts and modules, and for developing full [[RESTXQ]] applications. It can also be used to edit XML documents, [[Commands#Basics|Command Scripts]], and any other text files:
Via * XQuery and XML files will be '''parsed''' with each key click, and '''errors''' will be highlighted.* XQuery and command scripts can be '''executed''' by clicking on the green triangle. * '''Syntax highlighting'Options'' menuis available for XQuery, XML, JSON and JavaScript files. Numerous [[Shortcuts|keyboard shortcuts]] are available to speed up editing and debugging. {{Mark|Introduced with Version 9.1}}: If you right-click on an XML document in the Project View, the selected file will be parsed and bound to the context item: [[Image:BaseX-Editor-Context.png|449px]] ==Project View== The Project View is attached to the editor panel. It displays all files of the current project directory in a tree structure. Files can be renamed and deleted by right-clicking on the files. The project directory can be changed as well; the most recent directories will be kept in the history. All XQuery files in the project directory will be parsed in the background. Buggy XQuery modules, and files importing these modules, will be marked red. With the text fields on top, you can interactively search for file names and contents. =Input Bar= On top of the main window, you can change how queries are executed find an input bar. The attached dropdown menu provides three modes: '''Find''', '''XQuery''' and visualized'''Command''':
* '''Realtime Execution''': If realtime execution is enabled, your searches and queries will be executed with each key click and the results will be instantly shown.* '''Realtime Filtering''': If enabled, all visualizations will be limited to the actual results in realtime. If this feature is disabled, the query results are highlighted in the visualizations and can be explicitly filtered with the 'Filter' button.[[CategoryImage:GUIInputBar.png|Input Bar]]
==Querying==The upcoming example queries can all be used with an instance of the <code>factbook</code> database:
===Keyword Search=Find==
The Keyword Search can be executed in In the '''SearchFind''' mode in, the combo box of the main window. This options allows for a simple,keyword-based search input bar can be used to find single elements and texts in the currently opened database.The following syntax is supported:
The following syntax is supported:
{| class="wikitable"
!Query
!Description
|-
|<code>worldcity</code>|Find tags elements named {{Code|city}}, and texts containing this token.|-|<code>=India</code>|Find texts matching the exact string {{Code|worldIndia}}.
|-
|<code>=world~Cing</code>|Find exact matching text nodestexts equal or similar to the token {{Code|Cingdom}}.
|-
|<code>~worldid</code>|Find text nodes similar to attributes named {{Code|worldid}}and attribute values containing this token.
|-
|<code>@world=f0_119</code>|Find attributes and attribute valuesmatching the exact string {{Code|f0_119}}.
|-
|<code>@=world"European Chinese"</code>|Find exact attribute valuestexts containing the phrase {{Code|"European Chinese"}}.
|-
|<code>"united world"//city</code>|Find tags and texts containing Leading slash: Interpret the phrase {{Code|"united world"}}input as XPath expression (see below).
|}
===XPath/XQuery===
Apart from In the basic search facilities'''XQuery''' mode, BaseX offers far more sophisticated processing options to query your documents. Below are some examples you might give a try. This guide is far from being a comprehensive XPath and XQuery reference, but might point you expressions can be entered in the right directioninput bar.
To execute evaluate the following example queries, : enter them in the XQuery Panel input bar, and press ENTER or click on the START button.:
XPath provides an easy facility to query your documents {| class="wikitable"!Query!Description|-|<code>//country</code>|Return all <code>country</code> elements.|-|<code>//country[name = "Switzerland"]</code>|Return the <code>country</code> element of "Switzerland".|-|<code>for $city in a navigational manner. It is //city<br/>where $city/population > 1000000<br/>order by $city ascending<br/>return $city/name</code>|Return the basic tool names of all node-related operations that you encounter when using XQuery. We will start cities with a trivial example population larger than one million and extend it to our needsorder the results by the name of the city.|}
''' Example: Find Countries '''==Command==
<pre class="brushIn the '''Command''' mode, [[Commands|BaseX Commands]] can be entered and executed. Just try the following examples:xquery">//country</pre>
tells BaseX to look for all * <code>countryINFO</code> elements in the document: Returns system information. The query is introduced by two slashes * <code>//CREATE DB TEST</code>, which trigger the traversal of all document nodes: Creates an empty database named "TEST". The queries {{Code|* <code>LIST<//country}} andd {{Code|/descendantcode>::country}} will return the same resultsLists all databases.
''' Example: Find Cities in Switzerland '''=Realtime Options=
The following query uses a ''Via the 'predicate'Options'' <code>[...]</code> to filter all <code>country</code> nodes which have a <code>name</code> childmenu, the string value of which is "Switzerland"you can change how queries are executed and visualized:
<pre class="brush* '''Realtime Execution''':xquery">//country[name = "Switzerland"]</pre> To return all cities of the resulting element nodeIf realtime execution is enabled, your searches and queries will be executed with each key click and the query can results will be extended by a trailing <code>//city</code> path:instantly shown. <pre class="brush* '''Realtime Filtering''':xquery">//country[name = "Switzerland"]//city</pre> ===Text Editor=== The text editor can If enabled, all visualizations will be used limited to type the actual results in [[XQuery]] expressionsrealtime. If this feature is disabled, [[Commands#Basics|Command Scripts]], XML documents, or any other text files. Query files the query results are highlighted in the visualizations and XML documents can be started by clicking on explicitly filtered with the green triangle. They will automatically parsed with each key click, and errors will be highlighted. Various [[Shortcuts|keyboard shortcuts]] are available to speed up editing and debugging'Filter' button.
==Visualizations==
The BaseX GUI offers various visualizations,
</td></tr></table>
=Look and Feels<table> <tr> <td>By default, the Look and FeelsFeel of your operating system will be used in the GUI.In the ''Preferences'' dialog, you can choose among some more window themes. The [http://www.jtattoo.net/ScreenShots.html JTattoo library] offers some morelook and feels. If you download and copy the JTattoo jar file into the {{Code|lib}}directory provided by the ZIP and EXE distribution of BaseX,13 additional looks and feels will get available. </td> <td>[[Image:defaultlaf.png|thumb|Default Look & Feel]]</td> <td>[[Image:hifilaf.png|thumb|HiFi Look & Feel]]</td> </tr></table> =Changelog;Version 9.1 * Added: Project View, set XML document as context. ;Version 8.4 * Added: highlighting of erroneous XQuery modules in the project view.
In the ''Preferences'' dialog, you can choose among different Look and Feels. If you download and embed the [http://www.jtattoo.net/ScreenShots.html JTattoo library] in your classpath, 13 more looks and feels will be available. Two of these window themes provide a dark color scheme;Version 8.0
[[Category* Updated:Beginner]][[Category:GUI]][[Category:XQuery]]support for dark look and feels; support for JTatto library
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu