Questo è il gruppo di predicati principale. Supporta tutte le funzioni di un gruppo e consente di impostare parametri di query globali.
Il nome "root" non viene mai utilizzato in una query, è implicito.
p.offset
- numero che indica l'inizio della pagina dei risultati, ovvero il numero di elementi da saltarep.limit
- numero che indica le dimensioni della paginap.guessTotal
- consigliato: evita di calcolare il totale completo dei risultati che può essere costoso; o un numero che indica il totale massimo da contare fino a (ad esempio 1000, un numero che fornisce agli utenti un feedback sufficiente sulle dimensioni approssimative e i numeri esatti per risultati più piccoli) o true
per contare solo fino al minimo necessario p.offset
+ p.limit
p.excerpt
- se impostato su true
, includi estratto di testo completo nel risultatop.hits
- (solo per il servlet JSON) seleziona il modo in cui gli hit vengono scritti come JSON, con questi standard (estensibili tramite il servizio ResultHitWriter):
simple
- elementi minimi come path
, title
, lastmodified
, excerpt
(se impostato)full
: rendering JSON sling del nodo, con jcr:path
che indica il percorso dell’hit: per impostazione predefinita elenca solo le proprietà dirette del nodo, include una struttura ad albero più profonda con p.nodedepth=N
, dove 0 indica l'intero sottoalbero infinito; aggiungere p.acls=true
per includere le autorizzazioni JCR della sessione corrente sull’elemento risultato specificato (mappature: create
= add_node
, modify
= set_property
, delete
= remove
)selective
- solo le proprietà specificate in p.properties
, che è uno spazio separato (utilizzare +
nell’elenco degli URL dei percorsi relativi; se il percorso relativo ha una profondità >1
saranno rappresentati come oggetti figlio; lo speciale jcr:path
la proprietà include il percorso dell’hitQuesto predicato consente di creare condizioni nidificate. I gruppi possono contenere gruppi nidificati. Tutto ciò che si trova in una query di Query Builder è implicitamente in un gruppo radice, che può avere p.or
e p.not
parametri.
Di seguito è riportato un esempio per confrontare una delle due proprietà con un valore:
group.p.or=true
group.1_property=jcr:title
group.1_property.value=My Page
group.2_property=navTitle
group.2_property.value=My Page
Concettualmente (1_property
OPPURE 2_property)
.
Di seguito è riportato un esempio per i gruppi nidificati:
fulltext=Management
group.p.or=true
group.1_group.path=/content/wknd/ch/de
group.1_group.type=cq:Page
group.2_group.path=/content/dam/wknd
group.2_group.type=dam:Asset
Cerca il termine Gestione nelle pagine di /content/wknd/ch/de
o in risorse in /content/dam/wknd
.
Concettualmente fulltext AND ( (path AND type) OR (path AND type) )
. Tieni presente che tali join OR richiedono indici validi per motivi di prestazioni.
p.or
- se impostato su true
, solo un predicato nel gruppo deve corrispondere. Impostazione predefinita false
, il che significa che tutti devono corrisponderep.not
- se impostato su true
, nega il gruppo (impostazione predefinita false
)<predicate>
- aggiunge predicati nidificatiN_<predicate>
: aggiunge più predicati nidificati della stessa ora, come 1_property, 2_property, ...
Questo predicato consente di ordinare i risultati. Se è necessario ordinare per più proprietà, questo predicato deve essere aggiunto più volte utilizzando il prefisso numerico, ad esempio 1_orderby=first
, 2_oderby=second
.
orderby
- il nome della proprietà JCR indicato da una @ iniziale, ad esempio @jcr:lastModified
o @jcr:content/jcr:title
, o un altro predicato nella query, ad esempio 2_property
, su cui ordinaresort
- direzione di ordinamento, desc
per decrescente o asc
per crescente (impostazione predefinita)case
- se impostato su ignore
renderà l’ordinamento senza distinzione tra maiuscole e minuscole, ovvero a
precede B
; se vuoto o escluso, l’ordinamento distingue tra maiuscole e minuscole, ovvero B
precede a
Questo predicato corrisponde alle proprietà booleane JCR. Accetta solo i valori true
e false
. In caso di false
, corrisponderà se la proprietà ha il valore false
o se non esiste affatto. Questo può essere utile per verificare la presenza di flag booleani impostati solo se attivati.
L'ereditata operation
Il parametro non ha alcun significato.
Questo predicato supporta l’estrazione dei facet e fornisce bucket per ciascuno true
o false
ma solo per le proprietà esistenti.
boolproperty
: percorso relativo della proprietà, ad esempio myFeatureEnabled
o jcr:content/myFeatureEnabled
value
- valore per cui verificare la proprietà, true
o false
Questo predicato limita il risultato ai frammenti di contenuto.
contentfragment
: può essere utilizzato con qualsiasi valore per verificare la presenza di frammenti di contenuto.dateComparison
Questo predicato confronta due proprietà di data JCR tra loro. Può verificare se sono uguali, ineguali, maggiori o maggiori o uguali.
Si tratta di un predicato di solo filtro e non può sfruttare un indice di ricerca.
property1
: percorso della proprietà della prima dataproperty2
- percorso della seconda proprietà dataoperation
=
per corrispondenza esatta (impostazione predefinita)!=
per confronto disuguaglianza>
per property1
maggiore di property2
>=
per property1
maggiore o uguale a property2
Questo predicato confronta le proprietà della data JCR con un intervallo data/ora. Utilizza il formato ISO8601 per data e ora (YYYY-MM-DDTHH:mm:ss.SSSZ
) e consente anche rappresentazioni parziali, come YYYY-MM-DD
. In alternativa, la marca temporale può essere fornita come ora POSIX.
Puoi cercare qualsiasi cosa tra due marche temporali, qualsiasi cosa più recente o più vecchia di una determinata data e anche scegliere tra intervalli inclusivi e aperti.
Supporta l’estrazione facet e fornisce bucket today
, this week
, this month
, last 3 months
, this year
, last year
, e earlier than last year
.
Non supporta il filtro.
property
- percorso relativo di un DATE
proprietà, ad esempio jcr:lastModified
lowerBound
: data inferiore associata per verificare la proprietà, ad esempio 2014-10-01
lowerOperation
- >
(più recente) o >=
(versione successiva o uguale a), si applica al lowerBound
. Il valore predefinito è >
upperBound
: limite superiore per verificare la proprietà, ad esempio 2014-10-01T12:15:00
upperOperation
- <
(più vecchio) o <=
(a partire da), si applica al upperBound
. Il valore predefinito è <
timeZone
- ID del fuso orario da utilizzare quando non viene fornito come stringa di data ISO-8601. Il fuso orario predefinito è quello del sistema.Questo predicato esclude i nodi dal risultato in cui il loro percorso corrisponde a un’espressione regolare.
Si tratta di un predicato di solo filtro e non può sfruttare un indice di ricerca.
Non supporta l’estrazione dei facet.
excludepaths
: espressione regolare confrontata con i percorsi dei risultati, escludendo quelli corrispondenti dal risultato.Questo predicato cerca i termini nell’indice full-text.
Non supporta il filtro.
Non supporta l’estrazione dei facet.
fulltext
- termini di ricerca full-textrelPath
: percorso relativo della ricerca nella proprietà o nel sottonodo. Questa proprietà è facoltativa.Questo predicato limita il risultato agli elementi in cui la sessione corrente ha il Privilegi JCR.
Si tratta di un predicato di solo filtro e non può sfruttare un indice di ricerca. Non supporta l’estrazione dei facet.
hasPermission
: privilegi JCR separati da virgole che la sessione utente corrente deve TUTTI avere per il nodo in questione; ad esempio jcr:write
, jcr:modifyAccessControl
Questo predicato trova le pagine AEM in una lingua specifica. Vengono esaminate sia la proprietà lingua della pagina che il percorso della pagina, che spesso include la lingua o le impostazioni locali in una struttura del sito principale.
Si tratta di un predicato di solo filtro e non può sfruttare un indice di ricerca.
Supporta l’estrazione facet e fornisce bucket per ogni codice lingua univoco.
language
- codice della lingua ISO, ad esempio de
Questo predicato controlla se un nodo è una risorsa principale DAM e non una risorsa secondaria. In pratica, si tratta di ogni nodo non incluso in un nodo di risorse secondarie. Tieni presente che questa operazione non verifica la presenza di dam:Asset
tipo di nodo. Per utilizzare questo predicato, imposta semplicemente mainasset=true
o mainasset=false
. Non sono presenti ulteriori proprietà.
Si tratta di un predicato di solo filtro e non può sfruttare un indice di ricerca.
Supporta l’estrazione facet e fornisce due bucket per le risorse principali e secondarie.
mainasset
- booleano, true
per le attività principali, false
per le risorse secondarieQuesto predicato trova elementi che sono membri di un raccolta di risorse sling.
Si tratta di un predicato di solo filtro e non può sfruttare un indice di ricerca.
Non supporta l’estrazione dei facet.
memberOf
- percorso della raccolta di risorse SlingQuesto predicato corrisponde ai nomi dei nodi JCR.
Supporta l’estrazione facet e fornisce bucket per ogni nome di nodo univoco (nome file).
nodename
- pattern del nome del nodo che consente l’utilizzo di caratteri jolly: *
= qualsiasi carattere o nessun carattere, ?
= qualsiasi carattere, [abc]
= solo caratteri tra parentesiQuesto predicato corrisponde agli elementi controllando se una proprietà di data JCR è maggiore o uguale all’ora corrente del server. Può essere utilizzato per controllare un expiresAt
e limita i risultati solo a quelli che non sono ancora scaduti (notexpired=true
) o che sono già scaduti (notexpired=false
).
Non supporta il filtro.
Supporta l’estrazione delle sfaccettature allo stesso modo della daterange
predicato.
notexpired
- booleano, true
per non ancora scaduto (data futura o uguale), false
per scaduto (data nel passato) (obbligatorio)property
: percorso relativo del DATE
proprietà da verificare (obbligatoria)Questo predicato esegue ricerche all’interno di un determinato percorso.
Non supporta l’estrazione dei facet.
path
- Definisce il pattern del percorso.
exact
, l'intera sottostruttura corrisponderà (ad esempio, aggiungendo //*
in xpath, ma tieni presente che non include il percorso di base) o solo un percorso esatto corrisponde, che può includere caratteri jolly (*
).
true
self
viene impostata, verrà eseguita la ricerca nell'intera sottostruttura, incluso il nodo di base.—>exact
- se exact
è true
, il percorso esatto deve corrispondere, ma può contenere caratteri jolly semplici (*
), che corrispondono ai nomi, ma non /
; se è false
(impostazione predefinita) sono inclusi tutti i discendenti (facoltativo)flat
- cerca solo gli elementi secondari diretti (ad esempio, aggiungendo /*
in xpath) (utilizzato solo se exact
non è true, facoltativo)self
: esegue la ricerca nella sottostruttura ma include il nodo di base indicato come percorso (nessun carattere jolly).
self
proprietà nell'implementazione corrente di querybuilder e il suo utilizzo nelle query potrebbe non produrre risultati di ricerca corretti. Modifica dell’implementazione corrente di self
non è fattibile, in quanto potrebbe interrompere le applicazioni esistenti che si basano su di essa. Per questo motivo, self
La proprietà è stata dichiarata obsoleta e si consiglia di evitare di utilizzarla.Questo predicato corrisponde alle proprietà JCR e ai relativi valori.
Supporta l’estrazione dei facet e fornisce bucket per ogni valore di proprietà univoco nei risultati.
property
: percorso relativo della proprietà, ad esempio jcr:title
value
: valore di cui controllare la proprietà; segue il tipo di proprietà JCR per le conversioni stringaN_value
- utilizzare 1_value
, 2_value
, … per verificare la presenza di più valori (combinati con OR
per impostazione predefinita, con AND
se and=true
)and
- impostato su true
per combinare più valori (N_value
) con AND
operation
equals
per corrispondenza esatta (impostazione predefinita)unequals
per confronto disuguaglianzalike
per utilizzare jcr:like
funzione xpath (opzionale)not
in caso di mancata corrispondenza (ad esempio, not(@prop)
in xpath, il parametro value verrà ignorato)exists
per verifica esistenza
true
la proprietà deve esisterefalse
è uguale a not
ed è il valore predefinitodepth
- numero di livelli di caratteri jolly sotto i quali può esistere la proprietà o il percorso relativo (ad esempio, property=size depth=2
controllerà node/size
, node/*/size
e node/*/*/size
)Questo predicato corrisponde a una proprietà JCR rispetto a un intervallo. Questo vale per le proprietà con tipi lineari come LONG
, DOUBLE
e DECIMAL
. Per DATE
vedere la daterange
predicato con input in formato data ottimizzato.
È possibile definire un limite inferiore, superiore o entrambi. L'operazione (ad esempio minore o minore o uguale a) può essere specificata anche per i singoli limiti inferiore e superiore.
Non supporta l’estrazione dei facet.
property
: percorso relativo della proprietàlowerBound
: limite inferiore per verificare la proprietàlowerOperation
- >
(impostazione predefinita) oppure >=
, si applica al lowerValue
upperBound
: limite superiore per verificare la proprietàupperOperation
- <
(impostazione predefinita) oppure <=
, si applica al lowerValue
decimal
- true
se la proprietà selezionata è di tipo DecimalQuesto predicato corrisponde a JCR DATE
proprietà rispetto a un intervallo di data/ora utilizzando gli offset temporali relativi all'ora corrente del server. È possibile specificare lowerBound
e upperBound
utilizzando un valore in millisecondi o la sintassi Bugzilla 1s 2m 3h 4d 5w 6M 7y
(un secondo, due minuti, tre ore, quattro giorni, cinque settimane, sei mesi, sette anni) Prefisso con -
per indicare un offset negativo prima dell'ora corrente. Se si specifica solo lowerBound
o upperBound
, l'altro verrà impostato automaticamente su 0
, che rappresenta l'ora corrente.
Ad esempio:
upperBound=1h
(e no lowerBound
a) seleziona qualsiasi elemento nell'ora successivalowerBound=-1d
(e no upperBound
a) seleziona qualsiasi elemento nelle ultime 24 orelowerBound=-6M
e upperBound=-3M
seleziona qualsiasi elemento negli ultimi 3-6 mesilowerBound=-1500
e upperBound=5500
seleziona un valore compreso tra 1500 e 5500 millisecondi in futurolowerBound=1d
e upperBound=2d
seleziona qualsiasi elemento dopodomaniSi noti che non prende in considerazione anni bisestili e tutti i mesi sono 30 giorni.
Non supporta il filtro.
Supporta l’estrazione delle sfaccettature allo stesso modo della daterange
predicato.
upperBound
- limite superiore di date in millisecondi o 1s 2m 3h 4d 5w 6M 7y
(un secondo, due minuti, tre ore, quattro giorni, cinque settimane, sei mesi, sette anni) rispetto al tempo del server corrente, utilizzare -
per scostamento negativolowerBound
- limite di data inferiore in millisecondi o 1s 2m 3h 4d 5w 6M 7y
(un secondo, due minuti, tre ore, quattro giorni, cinque settimane, sei mesi, sette anni) rispetto al tempo del server corrente, utilizzare -
per scostamento negativoQuesto predicato include tutti i predicati di una query di Query Builder persistente nella query corrente come predicato di sottogruppo.
Tieni presente che non verrà eseguita una query aggiuntiva, ma verrà estesa la query corrente.
Le query possono essere rese persistenti a livello di programmazione utilizzando QueryBuilder#storeQuery()
. Il formato può essere multiriga String
proprietà o un nt:file
nodo che contiene la query come file di testo in formato proprietà Java.
Non supporta l’estrazione dei facet per i predicati della query salvata.
savedquery
: percorso della query salvata (String
proprietà o nt:file
node)Questo predicato è una ricerca per somiglianza utilizzando JCR XPath rep:similar()
.
Non supporta il filtro e non supporta l’estrazione dei facet.
similar
: percorso assoluto del nodo per il quale trovare nodi simililocal
- un percorso relativo a un nodo discendente oppure .
per il nodo corrente (facoltativo, il valore predefinito è .
)Questo predicato cerca contenuti con tag assegnati a uno o più tag, specificando i percorsi dei titoli dei tag.
Supporta l’estrazione facet e fornisce bucket per ogni tag univoco, utilizzando il percorso del titolo del tag corrente.
tag
: percorso del titolo del tag da cercare, ad esempio properties:orientation/landscape
N_value
- utilizzare 1_value
, 2_value
, … per verificare la presenza di più tag (combinati con OR
per impostazione predefinita, con AND
se and=true
)property
: proprietà (o percorso relativo della proprietà) da esaminare (impostazione predefinita cq:tags
)Questo predicato cerca contenuti con tag assegnati a uno o più tag, specificando gli ID tag.
Supporta l’estrazione facet e fornisce bucket per ogni tag univoco, utilizzando il relativo ID tag corrente.
tagid
: ID tag da cercare, ad esempio properties:orientation/landscape
N_value
- utilizzare 1_value
, 2_value
, … per verificare la presenza di più ID tag (combinati con OR
per impostazione predefinita, con AND
se and=true
)property
: proprietà (o percorso relativo della proprietà) da esaminare (impostazione predefinita cq:tags
)Questo predicato consente di cercare contenuto con uno o più tag, specificando parole chiave. In questo modo verranno innanzitutto cercati i tag che contengono queste parole chiave nei titoli, quindi il risultato verrà limitato ai soli elementi con queste parole chiave.
Non supporta l’estrazione dei facet.
tagsearch
- parola chiave da cercare nei titoli dei tagproperty
: proprietà (o percorso relativo della proprietà) da considerare (impostazione predefinita cq:tags
)lang
: per eseguire ricerche solo in un determinato titolo di tag localizzato (ad esempio, de
)all
: valore booleano per cercare l’intero testo completo del tag, ovvero tutti i titoli, la descrizione, ecc. (ha la precedenza su lang
)Questo predicato limita i risultati a un tipo di nodo JCR specifico, sia per i tipi di nodo primari che per quelli mixin. Verranno trovati anche i sottotipi di quel tipo di nodo. Tieni presente che gli indici di ricerca dell’archivio devono coprire i tipi di nodo per un’esecuzione efficiente.
Supporta l’estrazione dei facet e fornisce bucket per ogni tipo univoco nei risultati.
type
- tipo di nodo o nome mixin da cercare, ad esempio cq:Page