Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/docs/cleanup-4.8'
Browse files Browse the repository at this point in the history
  • Loading branch information
mspanik committed Jan 11, 2024
2 parents 46cceb7 + 38863d9 commit c520ebb
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 27 deletions.
25 changes: 14 additions & 11 deletions docs/concepts/query/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -3,25 +3,28 @@
:sectnums:
:sectnumlevels: 3

// TODO - toto je uvodna dokumentacia

MidPoint works with *objects* of various types.
These objects can be part of the running midPoint process in memory, stored persistently in xref:/midpoint/reference/repository/[midPoint repository], or can represent
objects on the xref:/midpoint/reference/resources/[resources].
MidPoint query provides option for selection only the objects that match specified criteria.

Initial option for searching objects in GUI is *Basic search*.
The basic search allows users to guery objects in view by selecting values of preselected object attributes or relations. It is configurable by engineer.
This search is designed for end users and is available only in GUI.

The xref:midpoint-query-language/[*midPoint Query Language*] is universal language used to search for objects.
It can be used in GUI, or in configuration objects - in all places where we need to look for an object. It can be used even in xref:midpoint-query-language/query-language-in-groovy.adoc[groovy scripts] within configuration.
This query language is known as *Advanced search* in GUI.

You can use also xref:xml-query-language.adoc[*XML Query Language*]. This was the original option for querying data. It is not entirely user-friendly.
This language is *deprecated*. It is still supported, but we strongly recommend switch to midPoint Query Language.

This section describes usage and configuration details of:

* xref:midpoint-query-language/[midPoint Query Language],
* xref:xml-query-language.adoc[XML Query Language],
* xref:xml-query-language.adoc[XML Query Language] (deprecated),
* concept of xref:query-in-midpoint/[query in midPoint] in more depth.
The xref:midpoint-query-language/[midPoint Query Language] is universal language used to search for objects.
It can be used in GUI, or in configuration objects - in all places where we need to look for an object. It can be used even in xref:midpoint-query-language/query-language-in-groovy.adoc[groovy scripts] within configuration.

You can use also xref:xml-query-language.adoc[XML Query Language]. This was the original option for querying data. It is not entirely user-friendly.
This language is still supported, but we strongly recommend switch to midPoint Query Language.

It should be mentioned, that midPoint provides also xref:../../repository/full-text-search.adoc[Full text search] option.
It should be mentioned, that midPoint provides also xref:../../repository/full-text-search.adoc[*Full text search*] option.
It is available only for searching of specific data in GUI. The full text search is not enabled by default and must be configured by engineer.
The full text search was introduces just for user convenience. It definitely does not provide options and power of midPoint or XML query languages.
The full text search was introduces just for user convenience. It definitely does not provide options and power of midPoint Query Language.
29 changes: 13 additions & 16 deletions docs/concepts/query/midpoint-query-language/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,41 +6,40 @@
:sectnumlevels: 3
:page-moved-from: /midpoint/reference/concepts/query/axiom-query-language/

//User-friendly documentation of a user-friendly language.
//This should NOT be a language specification, rather a user-oriented reference documentation with a dash of tutorial on top.
This document provides introduction to the *midPoint Query Language*.
Some details are omitted, and there are some simplifications for clarity.

_MidPoint Query Language_ is designed to query objects in midPoint repository.
It is a universal language used to search for objects in the repository, filter objects, set up object references and so on. It is used in all the places where we need to look for an object, not only in GUI.

The language closely follows midPoint data model.
Names of the properties, attributes and all the data items are directly taken from midPoint xref:/midpoint/reference/schema/[data model].

Not all items in midPoint objects are searchable. The list of searchable items (elements) in midPoint is provided xref:./searchable-items.adoc[here].
Not all items in midPoint objects are searchable. The list of searchable items (elements) in midPoint is provided in xref:./searchable-items.adoc[searchable items] document.

MidPoint Query language is complex. It is expected to be used by slightly skilled users and midPoint professionals.

NOTE: The new query language is undergoing rename from 'Axiom' to 'midPoint Query Language' since midPoint version 4.8. As the Axiom name is well known, it can be still for some time referenced also with this name. Please consider _Axiom Query Language_ and _midPoint Query Language_ as synonyms.

This document provides introduction to the *midPoint Query Language*.
Some details are omitted, and there are some simplifications for clarity.


== Using midPoint Query Language in midPoint

Basic search panel is shown in GUI above each view by default. It displays basic search options that are easy to use by end users.
=== Using in GUI

MidPoint Query language is complex as it needs to . It is expected to be used by slightly skilled users and midPoint professionals.
Interface for entering queries in midPoint query language can be enabled by switching the search option from _Basic_ to _Advanced_.
Search panel is shown in GUI above each view by default.
By default, it displays basic search. This search option is designed to be easy to use by end users.

image:advanced-query-select.png[Select Advanced query]
Midpoint Query Language is available in GUI as *Advanced search*. Its interface can be enabled by switching the search option from _Basic_ to _Advanced_.

For starting with midPoint query in GUI, please check xref:/midpoint/guides/gui-midpoint-query-examples/[GUI: Advanced search - EXAMPLES] document.
image:advanced-query-select.png[Select Advanced query]

You can test the queries directly in GUI. Starting in All users view. It is easy and straightforward.
As an example, to select all users with given name starting with "J" just enter `givenName startsWith "J"` to search bar and click search button.

For starting with midPoint query in GUI, please check xref:/midpoint/guides/gui-midpoint-query-examples/[GUI: Advanced search - EXAMPLES] document.

MidPoint provides xref:../query-in-midpoint/index.adoc#_query_playground[query playground] feature that allows administrator more advanced experimenting with midPoint queries.

=== Using in XML
=== Using in Configuration

Advanced query filters can be used in any configuration place, normal XML filters
would be used. Advanced query filter is wrapped inside `<text>`
Expand Down Expand Up @@ -160,7 +159,7 @@ givenName = "John" and familyName = "Doe"
There is a usual set of logic operators:

.Logical Operators
[options="header", cols="10,40,30", width=80]
[options="header", cols="10,30,30", width=70]
|====
| Operator | Example | Description

Expand Down Expand Up @@ -290,8 +289,6 @@ assignment/targetRef matches ( <1>

==== referencedBy filter

NOTE: Filter is currently supported in midPoint 4.6 Postgres native repository only

`referencedBy` filter allows you to find object based on properties on objects, which
reference it. Since object as whole is referenced the item path

Expand Down

0 comments on commit c520ebb

Please sign in to comment.