Textové vyhledávání v aplikaci Adobe Acrobat Sign

Přehled

Služba Acrobat Sign umožňuje složitější hledání, které slouží k vyhledávání obsahu v dohodách uživatele. Vyhledávání, které se nachází na stránce Správa, zobrazí všechny transakce odpovídající řetězci zadanému pro vybraný zdroj obsahu.

  • Pokud hledáte v části Vaše dohody, vyhledáváte ve svém obsahu. Pokud vyhledáváte v části Sdílený účet, hledáte obsah v daných sdílených účtech

Obsah v polích níže je indexován při vytvoření/aktualizaci transakce:

  • Název – Název dohody.
  • Poznámka – Soukromá poznámka k dohodě pořízená účastníkem, která není viditelná pro nikoho jiného.
  • Zpráva – Seznam zpráv viditelných pro tohoto účastníka (zahrnuje veřejné a soukromé zprávy).
  • Původní název souboru – Původní název souboru nahraného ve spojení s dohodou.
  • E-mail – E-mailová adresa příjemce (včetně kopií) nebo odesílatele.
  • Celé jméno – Křestní jméno a příjmení příjemce (včetně kopií) nebo odesílatele.
  • Pracovní pozice – Pracovní pozice příjemce (včetně kopií) nebo odesílatele v rámci společnosti.
  • Název společnosti – Název společnosti nebo organizace příjemce (včetně kopií) nebo odesílatele.
  • Název Skupiny příjemců – Název skupiny dohod ad-hoc, do které mohou příjemci patřit.
  • Obsah textových polí – Uživatelem poskytnutý obsah textových polí ve formuláři.
  • Celé jméno sdílejícího – Celé jméno sdílejícího dohody. V případě nesdílení se jedná o jméno uživatele.
  • Název Skupiny příjemců sdílejícího – Název Skupiny příjemců sdílejícího dohody. V případě nesdílení se jedná o název Skupiny příjemců uživatele.
  • Externí ID – ID přiřazené odesílatelem k dohodě, které může mít jakoukoli formu, ale většinou se jedná o "<groupID>:<ID>". Externí ID je předáno v hovoru s rozhraním API pro tvorbu dohod.
  • ID externí skupiny – ID skupiny přiřazené odesílatelem k dohodě, které může mít jakoukoli formu, ale většinou se jedná o předponu externího ID. ID externí skupiny je předáno v hovoru s rozhraním API pro tvorbu dohod. Pokud nastavujete parametr ID externí skupiny, je nutné nastavit externí ID.
  • ID transakce – ID přiřazené dohodě službou Acrobat Sign při vytvoření.

Jak funguje vyhledávání textu

Pokud jste vyhledávali řetězec: „A simple fish“

  • Služba Acrobat Sign rozdělí řetězec na tokeny pomocí mezer jako oddělovačů. Řetězec v příkladu nahoře se rozdělí na tři tokeny: A, simplefish
    • Řetězce dotazů obsahují znaky tří různých typů: písmena, číslice a oddělovače.
    • Znaky považované za oddělovací (jiné než mezera) jsou: ~ ` ! @ # $ % ^ & * ( ) - + = { } [ ] | \ . , : ; " ' < > ? /
      • Tečky, dvojtečky a apostrofy zůstávají součástí tokenu, pokud jsou znaky před a za tímto symbolem stejného typu.
      • Uvozovky, které ohraničují celý řetězec dotazu, nejsou oddělovače a určují doslovnou hodnotu řetězce (frázi)
      • Uvozovky uvnitř řetězce dotazu jsou oddělovače a neurčují doslovnou hodnotu řetězce.
  • Nerozlišují se malá a velká písmena. Např.: a, simple fish
  • Vyhledávání se snaží přiřadit celý text každého tokenu k indexované hodnotě
    • Ke komplexnější tokenizaci dochází u pole Název dohody (viz níže)
  • Používá se inkluzivní hledání, což znamená, že v navrácené datové sadě bude zahrnuta každá dohoda, která je shodná alespoň s jedním tokenem alespoň z jednoho prohledávatelného pole.
    • Vrácená datová sada je seřazena podle skóre relevance, přičemž nejrelevantnější výsledek vyhledávání je uveden jako první.

POLE NÁZVU DOHODY

Jak je uvedeno výše, pole Název dohody má sofistikovanější tokenizaci díky doplňkovému tokenizéru na míru, který rozděluje na tokeny kontextové oddělovací znaky (versus explicitní znaky). Tento tokenizér na míru se liší od standardního takto:

  • Jsou generovány prefixové tokeny (do deseti znaků) – Prefixový token je přírůstkovým řetězcem jakéhokoli standardního tokenu. Např.: Je-li standardní token fish, přírůstkové tokeny jsou f, fi, fisfish
    • To umožňuje vyhledávat neúplné řetězce pod podmínkou, že začnete prvním znakem tokenu
    • Shody objevující se v průběhu řetězce jsou ignorovány. Např. vyhledávání řetězce rent nebude považovat za shodu slovo apparently
  • Rozdělení tokenů u nealfanumerických znaků. Např. řetězec Super_Duper vygeneruje tokeny SuperDuper
    • Podtržítka nejsou ve standardním tokenizéru považována za oddělovací znaky
  • Rozdělení tokenů na přechodech mezi velkými a malými písmeny. Např. řetězec PowerShot vygeneruje tokeny PowerShot
  • Rozdělení tokenů na přechodech mezi písmenem a číslem. Např. řetězec XL500 vygeneruje tokeny XL500
  • Odstraní předcházející a následný oddělovací znak z každého tokenu. Např. řetězec XL---42+'Autocoder' vygeneruje tokeny XL, 42Autocoder
  • Odstranění anglického přivlastňovacího znaku ('s) z konce každého tokenu. Např. řetězec Dave's vygeneruje token Dave

Všimněte si, že kombinace standardních tokenizérů a tokenizérů na míru vám umožní vyhledat celý řetězec tokenu (díky standardnímu tokenizéru) a prefixové tokeny (díky tokenizéru na míru). Přesto nebudete porovnávat prefixový token, který přesahuje oddělovací znak. 

Příklad: Máte-li dohodu s názvem My_NDA

  • Standardní tokenizér by vytvořil token vypadající takto: my_nda
  • Tokenizér na míru by vytvořil sérii tokenů: m, my, n, nd, nda, my_, my_n, my_nd, my_nda

Příklad 2: Máte-li dohodu s názvem XL500

  • Standardní tokenizér by vytvořil token vypadající takto: xl500
  • Tokenizér na míru by vytvořil sérii tokenů: xl500, x, xl, 5, 50, 500, xl5, xl50

Vyhledávání pomocí speciální syntaxe dotazu

Jak je popsáno ve výše uvedené části, při vyhledávání v dohodě se hledá přibližná shoda ve všech prohledávatelných polích dohody. Obsah prohledávatelných polí je převeden na tokeny a ty jsou následně přiřazeny k řetězci dotazu. Vyhledávání v dohodě také u těchto tokenů porovná předpony v délce až deseti znaků. Pokud je v dohodě nalezena alespoň jedna shoda tokenu, zobrazí se tato dohoda ve výsledcích vyhledávání.  Výsledky vyhledávání jsou seřazeny podle skóre relevance, přičemž nejrelevantnější výsledek vyhledávání je uveden jako první.

Shod celé hodnoty pole, shod fráze z hodnoty pole, vyhledání dohod, které neobsahují určitý token, a vyhledání dohod, které obsahují několik tokenů současně (nikoli frázi), lze však dosáhnout pouze pomocí speciální syntaxe. K uspokojení potřeb zákazníků ohledně funkcí, které vyžadují speciální syntaxi, byl vyvinut jazyk SGQL (Sign Generic Query Language).

VYHRAZENÉ ZNAKY A SLOVA

Jazyk SGQL má sedm vyhrazených znaků:

*

(

)

\

"

'

:

Tyto vyhrazené znaky se používají jako operátory a definují jazykové funkce ve vyhledávacím dotazu. Pokud je vyhrazený znak použit nesprávně, bude vrácena chyba syntaxe.  

Chcete-li ve vyhledávacím dotazu použít vyhrazené znaky jako běžné znaky, musíte pro ně použít uvozovací znak. Například vyhledávací dotaz

\( \"bea\:u\*ful\"\\ \)

má všechny vyhrazené znaky uvozeny, takže jsou považovány za běžné znaky.

Jazyk SGQL má také tři vyhrazená slova pro operátory:

AND

OR

NOT

Operátory musí být uvedeny velkými písmeny. Chcete-li operátory použít ve vyhledávacím dotazu jako běžné tokeny, musí být uvozeny dvojitými uvozovkami. Například:

foo "AND" bar

FRÁZOVÁ SHODA

Běžný dotaz na přibližnou shodu najde shodu, pokud se v poli objeví NĚKTERÝ z tokenů (ne však nutně všechny), a nezáleží na jejich pořadí, protože tokeny se nemusí vyskytovat zároveň.

Dotaz na frázovou shodu je třeba použít, pokud je vyžadováno vyhledávání přesných frází bez rozlišení velikosti písmen v jednom nebo více prohledávatelných polích. Umožňuje najít shodu v případě, že se ve stejném poli nachází více tokenů a tyto tokeny se objevují jeden za druhým v pořadí určeném mezi uvozovkami.

Formát syntaxe dotazu na frázovou shodu:

"<phrase_match_query>"

  nebo 

'<phrase_match_query>'

Pokud syntaxe dotazu neodpovídá pravidlům syntaxe dotazů na frázovou shodu, dojde k vyhledání na základě běžného dotazu na přibližnou shodu napříč všemi prohledávatelnými poli.

Například dotaz

„Study Group“

bude odpovídat dohodám, které obsahují výraz „study group“ ve všech prohledávatelných polích. Upozorňujeme, že u výrazu „study – group“ nebude pro tento dotaz nalezena shoda, protože se v porovnání s výrazem „Study Group“ nejedná o přesnou frázi bez rozlišení velikosti písmen.

Frázová shoda se může vyskytovat na libovolném místě uvnitř vyhledávacího dotazu. Například:

title: ( math AND "course materials" AND "study group“ )

se bude shodovat s názvem „Course materials for MATH 101 Study Group“, protože tento název obsahuje klíčové slovo „MATH“ a fráze „Course Materials“ a „Study Group“.

PŘEDPONA NÁZVU POLE

Dotaz na předponu názvu pole by měl být použit při hledání pouze jednoho konkrétního pole v dohodách uživatele.

Dotaz na předponu názvu pole musí obsahovat předponu názvu pole následovanou vyhledávacím dotazem. Formát syntaxe dotazu na předponu názvu pole:

<field_name>:<query>

Předpona názvu pole se může vyskytovat před tokenem nebo před částí dotazu uvedenou v závorkách. Například ve vyhledávacím dotazu

title: ( Hello AND "Beautiful World" AND "My World" )

budou všechny tokeny porovnány s polem názvu dohody.

V níže uvedeném vyhledávacím dotazu

title: Hello AND "Beautiful World" AND "My World" 

má předponu názvu pole pouze slovo „Hello“ a toto slovo bude porovnáno pouze s polem názvu dohody. Zbývající slova a fráze budou porovnávány se všemi prohledávatelnými poli.

Pokud není zadána hodnota <field_name>, budou dotazována všechna pole podporovaná pro frázovou shodu. V opačném případě je dotaz použit pouze na pole s hodnotou <field_name>. 

Pokud syntaxe dotazu neodpovídá pravidlům pro syntaxi dotazů na předponu názvu pole, použije vyhledávání v dohodě celý dotaz jako vyhledávací dotaz a provede vyhledávání napříč všemi prohledávatelnými poli. 

Například dotaz na předponu názvu pole:

title: ( Hello World )

provede vyhledávání pouze v poli, které obsahuje název dohody.

Níže je uveden seznam předpon podporovaných pro dotazy na předponu názvu pole. Předpony názvů polí nerozlišují malá a velká písmena. 

OBSAH POLE

 PŘEDPONA NÁZVU POLE ŘETĚZCE DOTAZŮ

POPIS OBSAHU POLE

Název

title*

Název dohody.

Poznámka

note

Soukromá poznámka k dohodě pořízená účastníkem, která není viditelná pro nikoho jiného.

Zpráva

message

Seznam zpráv viditelných pro tohoto účastníka (zahrnuje veřejné i soukromé zprávy.

Původní název souboru

originalFileName

Původní název souboru nahraného ve spojení s dohodou.

E-mail

email**

E-mailová adresa příjemce (včetně kopií) nebo odesílatele.

Celé jméno

fullName***

Křestní jméno a příjmení příjemce (včetně kopií) nebo odesílatele.

Pracovní pozice

jobTitle

Pracovní pozice příjemce (včetně kopií) nebo odesílatele v rámci společnosti.

Název společnosti

companyName

Název společnosti nebo organizace příjemce (včetně kopií) nebo odesílatele.

Název Skupiny příjemců

recipientGroupName

Název skupiny dohod ad-hoc, do které mohou příjemci patřit.

Obsah textových polí

textFieldContent

Uživatelem poskytnutý obsah textových polí ve formuláři.

Celé jméno sdílejícího sharerFullName Celé jméno sdílejícího dohody. V případě nesdílení se jedná o jméno uživatele.
Název Skupiny příjemců sdílejícího sharerRecipientGroupName Název Skupiny příjemců sdílejícího dohody. V případě nesdílení se jedná o název Skupiny příjemců uživatele.
Externí ID

externalId

ID přiřazené odesílatelem k dohodě, které může mít jakoukoli formu, ale většinou se jedná o "<groupID>:<ID>". Externí ID je předáno ve volání rozhraní API pro tvorbu dohod.

ID externí skupiny

externalGroupId

ID skupiny přiřazené odesílatelem k dohodě, které může mít jakoukoli formu, ale většinou se jedná o předponu externího ID. ID externí skupiny je předáno v hovoru s rozhraním API pro tvorbu dohod. Pokud nastavujete parametr ID externí skupiny, je nutné nastavit Externí ID.

ID transakce agreementId ID přiřazené dohodě službou Acrobat Sign při vytvoření dohody.

Pro zpětnou kompatibilitu mají některé předpony názvů polí aliasy, které svou funkčností odpovídají původním předponám názvů polí. Tyto aliasy jsou zastaralé a budou nakonec odstraněny:

  *  Předpona názvu pole 'name' může být použita místo 'title'.

 ** Předpona názvu pole 'participantEmail' může být použita místo 'email'.  

*** Předpona názvu pole 'participantName' může být použita místo 'fullName'.

ZÁSTUPNÉ ZNAKY

Zástupný znak (hvězdička *) lze použít k porovnání předpony, za kterou může následovat neomezený počet znaků v tokenu. Rozšíření pomocí zástupných znaků zvyšuje náročnost operace, která probíhá za běhu, takže při použití této funkce je nutné dodržovat následující syntaktická pravidla:

  • Počáteční zástupné znaky nejsou povoleny.
  • Zástupné znaky uprostřed tokenu nejsou povoleny.
  • U tokenu s rozšířením pomocí zástupného znaku je vyžadována předpona názvu pole.
  • Zástupný znak nelze použít v dotazu vícekrát.
  • Dotazy obsahující rozšíření pomocí zástupného znaku vrátí chybu časového limitu, pokud doba provádění překročí pět sekund.

Například dotaz

title:myh*

odpovídá tokenům pole názvu

myhost

Rozšíření pomocí zástupných znaků zvyšuje náročnost operace. Při neuváženém použití spotřebuje mnoho systémových prostředků a na výsledky vyhledávání můžete dlouho čekat. Jazyk SGQL proto obsahuje omezení pro použití zástupných znaků, která eliminují nejnáročnější případy použití s nejvyššími požadavky na prostředky, aby k těmto problémům nedocházelo. Čím konkrétnější jsou vaše tokeny, tím efektivnější je vyhledávání. Vyhledávání určitého slova nebo fráze je vždy efektivnější než vyhledávání, které používá zástupný znak.

LOGICKÉ VÝRAZY

Jazyk SGQL podporuje logické operátory AND, OR a NOT a také seskupování těchto operátorů pomocí závorek. Operátory musí být uvedeny velkými písmeny.

Mezi tokeny je vždy automaticky předpokládán operátor OR. Například:

foo bar

je totéž jako

foo OR bar

Operátor OR není nutné uvádět, pokud jej však nechcete uvést z důvodu zachování přehlednosti.

Operátor NOT se vztahuje pouze na token, který za ním bezprostředně následuje. Chcete-li operátor NOT použít pro více tokenů, musíte tyto tokeny uzavřít do závorky.

Následující tabulka popisuje pořadí, v jakém jsou logické výrazy vyhodnocovány.

Pořadí

Příkaz pro vyhledávání

1 Výrazy v závorce
2 Klauzule NOT
3 Klauzule OR
4 Klauzule AND

V následující tabulce najdete příklady sémanticky ekvivalentních dotazů, které vysvětlují prioritu operátorů v případě, že nejsou použity operátory seskupení (závorky).

Vyhledávací dotaz Ekvivalentní přepsaný vyhledávací dotaz Poznámky
foo AND bar baz foo AND ( bar OR baz ) Operátor OR je implicitní a není nutné jej uvádět, pokud jej však nechcete přidat z důvodu zachování přehlednosti. 
foo NOT bar baz foo OR ( NOT bar ) OR baz Operátor NOT bude použit na bezprostředně následující token nebo část dotazu v závorce.
foo NOT bar baz AND xyz ( foo OR ( NOT bar ) OR baz ) AND xyz
title: ( Hello AND "Beautiful World" "My World" ) title:Hello AND ( title:"Beautiful World" OR title:"My World" ) Předpona názvu pole bude použita na bezprostředně následující token nebo část dotazu v závorce.
title: Hello AND note: "Beautiful World" "My World" title:Hello AND ( note:"Beautiful World" OR "My World" )  Fráze „My World“ bude porovnána se všemi prohledávatelnými poli.  

Získejte pomoc rychleji a snáze

Nový uživatel?