Learning
Documentation
Community
Open Exchange
Global Masters
Home / Class Reference / %SYS namespace / %iKnow.Matching.MatchingWSAPI
Private  Storage   

%iKnow.Matching.MatchingWSAPI


class %iKnow.Matching.MatchingWSAPI extends
%iKnow.Queries.AbstractWSAPI

This is an automatically generated class, offering a functionally equivalent set of methods and queries as %iKnow.Matching.MatchingAPI, exposed as WebMethod methods.

See the classdocs for %iKnow.Matching.MatchingAPI for more information.

This class was generated by %iKnow.Matching.MatchingAPI.

Inventory


Parameters Properties Methods Queries Indices ForeignKeys Triggers
3 28


Summary


Properties
AddressingIn AddressingOut Attachments Base64LineBreaks
BodyId BodyXmlId ContentId ContentLocation
FaultAddressing FaultHeaders HeadersIn HeadersOut
ImportHandler IsMTOM Location MTOMRequired
MsgClass OutputTypeAttribute Password RMSession
ReferencesInline RequestMessageStart ResponseAttachments ResponseContentId
ResponseContentLocation SAXFlags SecurityContextToken SecurityIn
SecurityNamespace SecurityOut SessionCookie SoapFault
SoapVersion Timeout Transport Username
WriteSOAPBodyMethod

Methods
%AddEnvelopeNamespace %AddToSaveSet %ClassIsLatestVersion
%ClassName %ConstructClone %DispatchClassMethod
%DispatchGetModified %DispatchGetProperty %DispatchMethod
%DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty
%Extends %GetParameter %IsA
%IsModified %New %NormalizeObject
%ObjectModified %OnCreateRMSession %OriginalNamespace
%PackageName %RemoveFromSaveSet %SerializeObject
%SetModified %ValidateObject ClearLogs
ConvertParameter Decrypt Encrypt
EscapeHTML EscapeURL FileWSDL
GetBodyId GetDictionaryMatches GetDictionaryMatchesById
GetErrors GetMatchElements GetMatchesByCrcOcc
GetMatchesByDictionaryItemId GetMatchesByDictionaryItemURI GetMatchesByDictionaryTermId
GetMatchesByEntOcc GetMatchesByPath GetMatchesBySentence
GetMatchesBySource GetMatchesBySourceId GetSentenceIdForMatchTarget
GetSourceIdForMatchTarget GetTopItems GetTopMatchesByDictionaryItemId
GetTopMatchesByDictionaryItemURI GetTopSourcesByDictionary GetTopTermsByItemId
GetTotalDictionaryScoresBySource GetTotalDictionaryScoresBySourceId GetTotalItemScoresBySource
GetTotalItemScoresBySourceId HyperEventCall HyperEventHead
Include Initialize InsertHiddenField
InsertHiddenFields InvalidateMatchingResults IsPrivate
Link MakeFault MakeFault12
MakeSecurityFault MakeStatusFault MatchSource
MatchSources NormalizeName OnCancelSecureConversation
OnPageError OnPostHTTP OnPostHyperEvent
OnPostWebMethod OnPreHyperEvent OnPreWebMethod
OnRequestMessage OnSOAPRequest OnStartSecureConversation
Page Process ProcessBinary
ProcessBody ProcessBodyNode QuoteJS
Reset ReturnFault ReturnOneWay
RewriteURL ShowError StartTimer
StopTimer ThrowError UnescapeHTML
UnescapeURL WSAddSignatureConfirmation


Parameters


• parameter NAMESPACE = "http://www.intersystems.com/iKnow/Matching/MatchingWSAPI";
NAMESPACE - Should be an unique URI Override this parameter in the subclass with the unique namespace URI of your organization. Override this parameter in the subclass.
• parameter SERVICENAME = "iKnow.Matching.MatchingWSAPI";
SERVICENAME - Should be the name of the service for which this is a proxy. Override this parameter in the subclass.
• parameter USECLASSNAMESPACES = 1;
When USECLASSNAMESPACES = 1, then the WSDL of the Web service reflects the namespaces defined for the referenced classes by the NAMESPACE parameters of those classes. The default, for compatibility with previous versions, is that the NAMESPACE parameters of the referenced classes are ignored when creating the WSDL. If USECLASSNAMESPACES has no value, then the default value from ^ISCSOAP("USECLASSNAMESPACES") is used.

Methods


• classmethod ClearLogs(domainId As %Integer) as %Boolean [ WebMethod ]
Clears any matching-related logfiles for the specified domain.
• classmethod GetDictionaryMatches(domainId As %Integer, string As %String, dictIds As %ListOfDataTypes = "", page As %Integer = 1, pageSize As %Integer = 10, fullMatchOnly As %Integer = -1, profile As %iKnow.Matching.MatchingProfile = "", language As %String = "", nGramMatches As %Integer = -1) as %XML.DataSet [ WebMethod ]

Returns all potential matches for a given string. This string is treated as if it were a single entity and matched against single-entity Dictionary Terms. To find the matches for a full sentence, first index it and then call GetMatchesBySource using the source ID corresponding to the indexed sentence.

A Matching Profile to be used when calculating match scores can be specified either by passing in an %iKnow.Matching.MatchingProfile object, or a Matching Profile ID. When passing in the ID, a negative number is treated as a namespace-wide profile, whereas a positive ID will be looked up within the context of the domain. If no profile is specified, the default profile for this domain will be used.

Specifying "" for dictIds will return results for all Dictionaries in this domain.

• classmethod GetDictionaryMatchesById(domainId As %Integer, entUniId As %Integer, dictIds As %ListOfDataTypes = "", page As %Integer = 1, pageSize As %Integer = 10, fullMatchOnly As %Integer = -1, profile As %iKnow.Matching.MatchingProfile = "", language As %String = "") as %XML.DataSet [ WebMethod ]

Returns all potential matches for the given entity ID.

A Matching Profile to be used when calculating match scores can be specified either by passing in an %iKnow.Matching.MatchingProfile object, or a Matching Profile ID. When passing in the ID, a negative number is treated as a namespace-wide profile, whereas a positive ID will be looked up within the context of the domain. If no profile is specified, the default profile for this domain will be used.

Specifying "" for dictIds will return results for all Dictionaries in this domain.

• classmethod GetErrors(domainId As %Integer, since As %Date = 0) as %XML.DataSet [ WebMethod ]
Returns any errors registered during the Matching process
• classmethod GetMatchElements(domainId As %Integer, matchId As %Integer, vSrcId As %Integer = 0) as %XML.DataSet [ WebMethod ]

Returns a detailed overview of all the elements in the match target, be it an entity-level, CRC-level or path-level match. The elements that are matched get annotated with the matched elements ID, value and eventually the output from a %iKnow.Matching.Formats.Format class if it was responsible for the match.

If a Virtual Source ID is supplied, the query runs in the context of that virtual source.

• classmethod GetMatchesByCrcOcc(domainId As %Integer, crcOccId As %Integer, dictIds As %ListOfDataTypes = "", page As %Integer = 1, pageSize As %Integer = 10, includeEntityMatches As %Boolean = 1, includePathMatches As %Boolean = 1, includeSentenceMatches As %Boolean = 1) as %XML.DataSet [ WebMethod ]

Returns all the matches for the given CRC Occurrence. Use includeEntityMatches, includePathMatches and includeSentenceMatches to also include any matches for the Entities this CRC is composed of and the Paths these Entities participate in.

Specifying "" for dictIds will return results for all Dictionaries in this domain.

• classmethod GetMatchesByDictionaryItemId(domainId As %Integer, dictItemId As %Integer, page As %Integer = 1, pageSize As %Integer = 10, filter As %String(MAXLEN=32767)="", targetTypes As %ListOfDataTypes = "", ensureMatched As %Boolean = 1) as %XML.DataSet [ WebMethod ]

This query returns all the match occurrences for the Dictionary Item specified through dictItemId.

Specifying a %iKnow.Filters.Filter object as filter will restrict the search space to only those sources satisfying the filters criteria. Through targetTypes, the desired target types can be specified in a %List (defaults to all types).

• classmethod GetMatchesByDictionaryItemURI(domainId As %Integer, dictItemURI As %String, page As %Integer = 1, pageSize As %Integer = 10, filter As %String(MAXLEN=32767)="", targetTypes As %ListOfDataTypes = "", xDomDicts As %Boolean = 0) as %XML.DataSet [ WebMethod ]

This query returns all the match occurrences for the Dictionary Item specified through dictItemURI.

Specifying a %iKnow.Filters.Filter object as filter will restrict the search space to only those sources satisfying the filters criteria. Through targetTypes, the desired target types can be specified in a %List (defaults to all types).

• classmethod GetMatchesByDictionaryTermId(pDomainId As %Integer, pDictTermId As %Integer, pPage As %Integer = 1, pPageSize As %Integer = 10, pFilter As %String(MAXLEN=32767)="", pTargetTypes As %ListOfDataTypes = "", pEnsureMatched As %Boolean = 1) as %XML.DataSet [ WebMethod ]

This query returns all the match occurrences for the Dictionary Term specified through pDictTermId.

Specifying a %iKnow.Filters.Filter object as pFilter will restrict the search space to only those sources satisfying the filters criteria. Through pTargetTypes, the desired target types can be specified in a %List (defaults to all types).

• classmethod GetMatchesByEntOcc(domainId As %Integer, entOccId As %Integer, dictIds As %ListOfDataTypes = "", page As %Integer = 1, pageSize As %Integer = 10, includeCrcMatches As %Boolean = 1, includePathMatches As %Boolean = 1, includeSentenceMatches As %Boolean = 1, vSrcId As %Integer = 0) as %XML.DataSet [ WebMethod ]

Returns all the matches for the given Entity Occurrence. Use includeCrcMatches, includePathMatches and includeSentenceMatches to also include any matches for the CRC, Path or Sentence in which this Entity Occurrences participates.

Specifying "" for dictIds will return results for all Dictionaries in this domain.

• classmethod GetMatchesByPath(domainId As %Integer, pathId As %Integer, dictIds As %ListOfDataTypes = "", page As %Integer = 1, pageSize As %Integer = 10, includeEntityMatches As %Boolean = 1, includeCrcMatches As %Boolean = 1, includeSentenceMatches As %Boolean = 1) as %XML.DataSet [ WebMethod ]

Returns all the matches for the given Path. Use includeEntityMatches, includeCRCMatches and includeSentenceMatches to also include any matches for the Entities this path is composed of and the CRCs or Sentences these Entities participate in.

Specifying "" for dictIds will return results for all Dictionaries in this domain.

• classmethod GetMatchesBySentence(domainId As %Integer, sentenceId As %Integer, dictIds As %ListOfDataTypes = "", page As %Integer = 1, pageSize As %Integer = 10, includeEntityMatches As %Boolean = 1, includeCrcMatches As %Boolean = 1, includePathMatches As %Boolean = 1) as %XML.DataSet [ WebMethod ]

Returns all the matches for the given Sentence. Use includeEntityMatches, includeCrcMatches and includePathMatches to control which (target) types of matches should be included in the result.

Specifying "" for dictIds will return results for all Dictionaries in this domain.

• classmethod GetMatchesBySource(domainId As %Integer, externalId As %String, dictIds As %ListOfDataTypes = "", page As %Integer = 1, pageSize As %Integer = 10) as %XML.DataSet [ WebMethod ]

Returns all the matches for the given Source, as identified by its external ID.

Specifying "" for dictIds will return results for all Dictionaries in this domain.

• classmethod GetMatchesBySourceId(domainId As %Integer, srcId As %Integer, dictIds As %ListOfDataTypes = "", page As %Integer = 1, pageSize As %Integer = 10) as %XML.DataSet [ WebMethod ]

Returns all the matches for the given Source, as identified by its Source ID (interpreted as a Virtual Source if a negative value is supplied).

Specifying "" for dictIds will return results for all Dictionaries in this domain.

• classmethod GetSentenceIdForMatchTarget(domainId As %Integer, targetType As %Integer, targetId As %Integer, vSrcId As %Integer = 0) as %Library.Integer [ WebMethod ]
Utility method to retrieve the Sentence ID for a given match target, as specified by its target type (either of $$$DMTARGETENTITY, $$$DMTARGETCRC, $$$DMTARGETPATH or $$$DMTARGETSENT) and ID.
• classmethod GetSourceIdForMatchTarget(domainId As %Integer, targetType As %Integer, targetId As %Integer) as %Library.Integer [ WebMethod ]
Utility method to retrieve the Source ID for a given match target, as specified by its target type (either of $$$DMTARGETENTITY, $$$DMTARGETCRC, $$$DMTARGETPATH or $$$DMTARGETSENT) and ID.
• classmethod GetTopItems(domainId As %Integer, page As %Integer = 1, pageSize As %Integer = 10, filter As %String(MAXLEN=32767)="", dictIds As %ListOfDataTypes = "", sortType As %Integer = $$$SORTBYFREQUENCY, vSrcId As %Integer = 0) as %XML.DataSet [ WebMethod ]

Returns the Dictionary Items for which most matches have been found in this domain (optionally narrowed down through a %iKnow.Filters.Filter object passed in through filter). Result sort order is controlled by sortType:

  • $$$SORTBYFREQUENCY will sort by the number of actual matches for a Dictionary Item
  • $$$SORTBYSPREAD will sort by the number of distinct documents in which at least one match for the Dictionary Item occurs.
  • $$$SORTBYSCORE will sort by the total match score of all matches for a Dictionary Item

Specifying "" for dictIds will return results for all Dictionaries in this domain.

• classmethod GetTopMatchesByDictionaryItemId(domainId As %Integer, dictItemId As %Integer, page As %Integer = 1, pageSize As %Integer = 10, filter As %String(MAXLEN=32767)="", targetTypes As %ListOfDataTypes = "", sortType As %Integer = $$$SORTBYDOMAINDEFAULT) as %XML.DataSet [ WebMethod ]

This query returns the "best" matching results for the Dictionary Item specified through dictItemId, aggregated by matched unique target (entity, CRC, path or sentence). The meaning of "best" is defined by sortType: if set to $$$SORTBYFREQUENCY or $$$SORTBYSPREAD, results are sorted by decreasing number of matched occurrences, whereas $$$SORTBYSCORE will rank them according to the highest match score. The first two options will yield the most relevant results for entities and CRCs, with the score ranking a better fit for paths and sentences, as they inherently have frequency and spread equal to 1.

Specifying a %iKnow.Filters.Filter object as filter will restrict the search space to only those sources satisfying the filters criteria. Through targetTypes, the desired target types can be specified in a %List (defaults to all types).

• classmethod GetTopMatchesByDictionaryItemURI(domainId As %Integer, dictItemURI As %String, page As %Integer = 1, pageSize As %Integer = 10, filter As %String(MAXLEN=32767)="", targetTypes As %ListOfDataTypes = "", sortType As %Integer = $$$SORTBYFREQUENCY, xDomDicts As %Boolean = 0) as %XML.DataSet [ WebMethod ]

This query returns the "best" matching results for the Dictionary Item specified through dictItemURI, aggregated by matched unique target (entity, CRC, path or sentence). The meaning of "best" is defined by sortType: if set to $$$SORTBYFREQUENCY or $$$SORTBYSPREAD, results are sorted by decreasing number of matched occurrences, whereas $$$SORTBYSCORE will rank them according to the highest match score. The first two options will yield the most relevant results for entities and CRCs, with the score ranking a better fit for paths and sentences, as they inherently have frequency and spread equal to 1.

Specifying a %iKnow.Filters.Filter object as filter will restrict the search space to only those sources satisfying the filters criteria. Through targetTypes, the desired target types can be specified in a %List (defaults to all types).

• classmethod GetTopSourcesByDictionary(pDomainId As %Integer, pDictIds As %ListOfDataTypes, pPage As %Integer = 1, pPageSize As %Integer = 10, pFilter As %String(MAXLEN=32767)="", pSortType As %Integer = $$$SORTBYFREQUENCY, pNormalizeLength As %Numeric = 0) as %XML.DataSet [ WebMethod ]

Returns the sources best matching a given list of dictionaries specified through pDictIds, optionally filtered through pFilter. "Best matching" is defined as having the highest number of matches (if pSortType = $$$SORTBYFREQUENCY) or the highest total match score (if pSortType = $$$SORTBYSCORE).

If pNormalizeLength is set to a nonzero value, this number is used as the power of the sources length in entities (occurrences) to normalize the score.

• classmethod GetTopTermsByItemId(pDomainId As %Integer, pDictItemIds As %ListOfDataTypes, pFilter As %String(MAXLEN=32767)="", pSortType As %Integer = $$$SORTBYFREQUENCY, vSrcId As %Integer = 0) as %XML.DataSet [ WebMethod ]

For a given Dictionary Item, returns all its Dictionary Terms sorted by the number of matches they have, optionally narrowed down through a %iKnow.Filters.Filter object passed in through pFilter). Result sort order is controlled by pSortType:

  • $$$SORTBYFREQUENCY will sort by the number of actual matches for the Dictionary Term
  • $$$SORTBYSPREAD will sort by the number of distinct documents in which at least one match for the Dictionary Term occurs.
  • $$$SORTBYSCORE will sort by the total match score of all matches for a Dictionary Term
• classmethod GetTotalDictionaryScoresBySource(domainId As %Integer, externalId As %String, sortType As %Integer = $$$SORTBYFREQUENCY) as %XML.DataSet [ WebMethod ]
Returns summary information for all matches in a given source (identified by External ID), organized per Dictionary.
• classmethod GetTotalDictionaryScoresBySourceId(domainId As %Integer, srcId As %Integer, sortType As %Integer = $$$SORTBYFREQUENCY) as %XML.DataSet [ WebMethod ]
Returns summary information for all matches in a given source (identified by Source ID), organized per Dictionary.
• classmethod GetTotalItemScoresBySource(domainId As %Integer, externalId As %String, dictIds As %ListOfDataTypes = "", sortType As %Integer = $$$SORTBYFREQUENCY) as %XML.DataSet [ WebMethod ]

Returns summary information for all matches in a given source (identified by External ID), organized per Dictionary Item.

Specifying "" for dictIds will return results for all Dictionaries in this domain.

• classmethod GetTotalItemScoresBySourceId(domainId As %Integer, srcId As %Integer, dictIds As %ListOfDataTypes = "", sortType As %Integer = $$$SORTBYFREQUENCY) as %XML.DataSet [ WebMethod ]

Returns summary information for all matches in a given source (identified by Source ID), organized per Dictionary Item.

Specifying "" for dictIds will return results for all Dictionaries in this domain.

• classmethod InvalidateMatchingResults(domainId As %Integer, dictIds As %ListOfDataTypes = "", pMode As %Integer = 0) as %Boolean [ WebMethod ]

Deletes all current matching results for the list of Dictionary IDs passed in dictIds.

Specifying "" for dictIds will drop results for all Dictionaries in this domain.

pMode can be used to specify whether to keep intermediary (not source-related) matching results as follows:

  • 0: only source-related matching results are erased (default)
  • 1: the matching results for unique entities are also erased
  • 2: the matching results for unique entities and indexing results for dictionary terms are all erased (only available if dictIds="")
This parameter is mostly for internal use.

Note: pMode=2 will not erase the indexing results for dictionary terms of cross-domain dictionaries.
Note: matching results for virtual sources are always completely dropped, regardless of the value of dictIds and with the same effect as pMode=1

• classmethod MatchSource(domainId As %Integer, srcId As %Integer, dictIds As %ListOfDataTypes = "", overrideProfile As %iKnow.Matching.MatchingProfile = "") as %Boolean [ WebMethod ]

Matches an individual source against the list of Dictionary IDs passed in dictIds. Use negative numbers to identify any cross-domain dictionaries to match against. A Matching Profile to calculate match scores can be specified either by passing in an %iKnow.Matching.MatchingProfile object, or a Matching Profile ID. When passing in the ID, a negative number is treated as a namespace-wide profile, whereas a positive ID will be looked up within the context of the domain.

Specifying "" for dictIds will match against all Dictionaries in this domain and passing $$$ALLXDOMDICTIONARIES will match against all cross-domain dictionaries.

A negative Source ID is interpreted as a Virtual Source.

• classmethod MatchSources(domainId As %Integer, filter As %String(MAXLEN=32767)="", dictIds As %ListOfDataTypes = "", overrideProfile As %iKnow.Matching.MatchingProfile = "") as %Boolean [ WebMethod ]

Matches all sources in the domain, optionally restricted to those satisfying the criteria of a %iKnow.Filters.Filter object provided as filter, against the list of Dictionary IDs passed in dictIds. Use negative numbers to mark cross-domain dictionaries.

A Matching Profile to calculate match scores can be specified either by passing in an %iKnow.Matching.MatchingProfile object, or a Matching Profile ID. When passing in the ID, a negative number is treated as a namespace-wide profile, whereas a positive ID will be looked up within the context of the domain.

Specifying "" for dictIds will match against all Dictionaries in this domain and passing $$$ALLXDOMDICTIONARIES will match against all cross-domain dictionaries.