%iKnow.Queries.SourceAPI
Class %iKnow.Queries.SourceAPI Extends %iKnow.Queries.AbstractAPI [ Deprecated, System = 4 ]
The InterSystems IRIS NLP iKnow technology is now deprecated. Please see the product documentation for more detail.
Main Query API for retrieving sources and related information.
Parameters
GetSummaryForTextRT
Parameter GetSummaryForTextRT = "sentId:%Integer,sentenceValue:%String,sentenceIsTruncated:%Boolean";
GetSummaryRT
Parameter GetSummaryRT = "sentId:%Integer,sentenceValue:%String,sentenceIsTruncated:%Boolean";
GetByDomainRT
Parameter GetByDomainRT = "srcId:%Integer,externalId:%String";
GetLanguagesRT
Parameter GetLanguagesRT = "language:%String,totalConfidence:%Numeric,sentenceCount:%Integer";
GetByEntitiesRT
Parameter GetByEntitiesRT = "srcId:%Integer,externalId:%String";
GetByEntityIdsRT
Parameter GetByEntityIdsRT = "srcId:%Integer,externalId:%String";
GetByEquivalentsRT
Parameter GetByEquivalentsRT [ Deprecated, Internal ] = "srcId:%Integer,externalId:%String";
GetByEquivalentIdsRT
Parameter GetByEquivalentIdsRT [ Deprecated, Internal ] = "srcId:%Integer,externalId:%String";
GetByCrcsRT
Parameter GetByCrcsRT = "srcId:%Integer,externalId:%String";
GetByCrcMaskRT
Parameter GetByCrcMaskRT = "srcId:%Integer,externalId:%String";
GetByCrcIdsRT
Parameter GetByCrcIdsRT = "srcId:%Integer,externalId:%String";
GetByPathIdsRT
Parameter GetByPathIdsRT = "srcId:%Integer,externalId:%String";
GetSimilarRT
Parameter GetSimilarRT = "srcId:%Integer,extId:%String,percentageMatched:%Numeric,percentageNew:%Numeric,nbOfEntsInRefSrc:%Integer,nbOfEntsInCommon:%Integer,nbOfEntsInSimSrc:%Integer,score:%Numeric";
GetAttributesRT
Parameter GetAttributesRT = "attTypeId:%Integer,attType:%String,level:%Integer,targetId:%Integer,startPos:%Integer,span:%Integer,properties:%String";
Methods
GetExternalId
ClassMethod GetExternalId(domainid As %Integer, srcId As %Integer, Output sc As %Status = {$$$OK}) As %String
Retrieves the external ID for the source identified by srcId.
A negative srcId is considered to refer to a Virtual Source.
GetSourceId
ClassMethod GetSourceId(domainid As %Integer, externalId As %String, Output sc As %Status = {$$$OK}) As %Integer
Retrieves the source ID for the source identified by externalId.
GetFullReference
ClassMethod GetFullReference(domainId As %Integer, srcId As %Integer, Output sc As %Status = {$$$OK}) As %String
Retrieves the Full Reference for the source identified by srcId.
A negative srcId is considered to refer to a Virtual Source.
GetSummaryForText
ClassMethod GetSummaryForText(ByRef pResult, pDomainId As %Integer = 0, pText As %String(MAXLEN=32000), pLength As %Integer = 5, pSummaryConfig As %String = "", pLanguage As %String = "en", pUserDict As %String = "") As %Status
This method returns the most relevant sentences of the supplied text, in their original order. The number of sentences returned is controlled by the length parameter.
Note: the value of pDomainId is ignored since 2013.2
GetSummaryHelper
ClassMethod GetSummaryHelper(ByRef sentIdToScore, domainId As %Integer, srcId As %Integer, ByRef wordFreqConfig) As %Status [ Internal ]
sentIdToScore(sentId) = summaryScore
parseSummaryConfig
ClassMethod parseSummaryConfig(ByRef wordWeight, ByRef sentWeight, summaryConfig As %String = "", sentStart As %Integer, sentEnd As %Integer) [ Internal ]
GetSummary
ClassMethod GetSummary(ByRef result, domainId As %Integer, srcId As %Integer, length As %Integer = 5, summaryConfig As %String = "") As %Status
This method returns the most relevant sentences of the requested source, in their original order. The number of sentences returned is controlled by the length parameter.
A negative Source ID is interpreted as a Virtual Source.
GetSummaryDirect
ClassMethod GetSummaryDirect(domainId As %Integer, sourceId As %Integer, length As %Integer = 5, Output isTruncated As %Boolean = 0, Output sc As %Status = {$$$OK}, separator As %String = " ... ", summaryConfig As %String = "") As %String
This is a utility wrapper method around GetSummary, returning the summary sentences as a single concatenated string.
The isTruncated output parameter indicates whether or not the returned string is complete or was truncated to avoid MAXSTRING errors. This can happen when either an individual sentence surpassed the maximum string length or when the concatenation of these sentences surpassed it.
GetByDomain
ClassMethod GetByDomain(ByRef result, domainid As %Integer, page As %Integer = 1, pagesize As %Integer = 10, filter As %iKnow.Filters.Filter = "", sortByField As %String = "") As %Status
Returns all sources within a domain, optionally filtered through a %iKnow.Filters.Filter object passed in as filter.
GetCountByDomain
ClassMethod GetCountByDomain(domainid As %Integer, filter As %iKnow.Filters.Filter = "", Output sc As %Status = {$$$OK}) As %Integer
This method returns the total number of sources in the specified domain, optionally filtered through a %iKnow.Filters.Filter object passed in as filter.
GetLanguages
ClassMethod GetLanguages(ByRef result, domainid As %Integer, sourceid As %Integer) As %Status
This method returns, for a given source, all languages the iKnow Automatic Language Identification algorithm has identified for the sentences it contains. For each language, it will list the sum of ALI confidence ratings when assigning the language to a sentence, plus the total number of sentences the language was assigned to. If ALI was disabled when indexing this source, confidence ratings will be set to 0.
A negative Source ID is interpreted as a Virtual Source.
GetTopLanguage
ClassMethod GetTopLanguage(domainid As %Integer, sourceid As %Integer, Output totalConfidence As %Numeric = "", Output numberOfSentences As %Integer = "", Output sc As %Status = {$$$OK}) As %String
This method returns the language of a given source, calculated as the one with the highest total confidence rating for the individual sentences in the source. This total confidence, as well as the number of sentences to which this language was assigned is provided through output variables totalConfidence and numberOfSentences.
A totalConfidence of 0 indicates ALI was switched off when indexing this source.
A negative Source ID is interpreted as a Virtual Source.
GetByEntities
ClassMethod GetByEntities(ByRef result, domainid As %Integer, entitylist As %List, page As %Integer = 1, pagesize As %Integer = 10, filter As %iKnow.Filters.Filter = "", setop As %Integer = {$$$UNION}, attributeFilter As %List = "", sortByField As %String = "", pActualFormOnly As %Boolean = 0) As %Status
This method will retrieve all sources containing any (if setop = $$$UNION) or all (if setop = $$$INTERSECT) of the entities supplied through entitylist.
The scope of this query can be limited through supplying a %iKnow.Filters.Filter object for the filter parameter to restrict the result to those sources satisfying the filter criteria.
By default, results are ordered by decreasing source id. You can override this by setting sortByField to the name of a metadata field (optionally appended with " ASC" or " DESC" for this domain to order by that field's value.
The attributeFilter argument can be used to filter the results to only those where the requested entities (entitylist) appear in the context of a particular (set of) attribute(s). By using the negative attribute ID, you can select only those occurrences NOT appearing in the context of that attribute. For example, passing in $lb($$$IKATTNEGATION) will restrict the result to only those entities in a negative context and $lb(-$$$IKATTNEGATION) the ones in an affirmative context. Note that the use of this argument may have a significant performance impact.
If stemming is enabled for this domain through $$$IKPSTEMMING, sources containing any actual form of the entities in entityList will be returned. Use pActualFormOnly=1 to retrieve only those sources containing the actual forms in entitylist. This argument is ignored if stemming is not enabled.
GetByEntityIds
ClassMethod GetByEntityIds(ByRef result, domainid As %Integer, entityidlist As %List, page As %Integer = 1, pagesize As %Integer = 10, filter As %iKnow.Filters.Filter = "", setop As %Integer = {$$$UNION}, attributeFilter As %List = "", sortByField As %String = "", pActualFormOnly As %Boolean = 0) As %Status
Retrieves all sources containing the given entity ids.
See also GetByEntities for a description of the parameters.
GetByEntitiesInternal
ClassMethod GetByEntitiesInternal(ByRef result, domainid As %Integer, ByRef entitylist, page As %Integer, pagesize As %Integer, filter As %iKnow.Filters.Filter, setop As %Integer, attributeFilter As %List = "", sortByField As %String = "") As %Status [ Internal ]
GetByEquivalents
ClassMethod GetByEquivalents(ByRef result, domainid As %Integer, entitylist As %List, setid As %Integer, page As %Integer = 1, pagesize As %Integer = 10, filter As %iKnow.Filters.Filter = "") As %Status [ Deprecated, Internal ]
Deprecated
GetByEquivalentIds
ClassMethod GetByEquivalentIds(ByRef result, domainid As %Integer, entityidlist As %List, setid As %Integer, page As %Integer = 1, pagesize As %Integer = 10, filter As %iKnow.Filters.Filter = "") As %Status [ Deprecated, Internal ]
Deprecated
GetByEquivalentsInternal
ClassMethod GetByEquivalentsInternal(ByRef result, domainid As %Integer, ByRef entitylist, setid As %Integer, page As %Integer = 1, pagesize As %Integer = 10, filter As %iKnow.Filters.Filter = "") As %Status [ Internal ]
Deprecated
GetCountByEntities
ClassMethod GetCountByEntities(domainid As %Integer, entitylist As %List, filter As %iKnow.Filters.Filter = "", setop As %Integer = {$$$UNION}, Output sc As %Status = {$$$OK}, pActualFormOnly As %Boolean = 0) As %Integer
Retrieves the number of sources containing the given entities.
See also GetByEntities for a description of the parameters.
GetCountByEntityIds
ClassMethod GetCountByEntityIds(domainid As %Integer, entityidlist As %List, filter As %iKnow.Filters.Filter = "", setop As %Integer = {$$$UNION}, Output sc As %Status = {$$$OK}, pActualFormOnly As %Boolean = 0) As %Integer
Retrieves the number of sources containing the given entity ids.
See also GetByEntities for a description of the parameters.
GetCountByEntitiesInternal
ClassMethod GetCountByEntitiesInternal(domainid As %Integer, ByRef entitylist, filter As %iKnow.Filters.Filter, setop As %Integer, Output sc As %Status = {$$$OK}) As %Integer [ Internal ]
GetBitsByEntities
ClassMethod GetBitsByEntities(ByRef result, domainid As %Integer, entitylist As %List, filter As %iKnow.Filters.Filter = "", setop As %String = {$$$UNION}, pActualFormOnly As %Boolean = 0) As %Status [ Internal ]
Retrieves a bitstring array identifying all sources containing the given entities.
See also GetByEntities for a description of the parameters.
GetBitsByEntityIds
ClassMethod GetBitsByEntityIds(ByRef result, domainid As %Integer, entityidlist As %List, filter As %iKnow.Filters.Filter = "", setop As %Integer = {$$$UNION}, pActualFormOnly As %Boolean = 0) As %Status [ Internal ]
Retrieves a bitstring array identifying all sources containing the given entity ids.
See also GetByEntities for a description of the parameters.
GetBitsByEntitiesInternal
ClassMethod GetBitsByEntitiesInternal(ByRef result, domainid As %Integer, ByRef entitylist, filter As %iKnow.Filters.Filter, setop As %Integer) As %Status [ Internal ]
GetByCrcs
ClassMethod GetByCrcs(ByRef result, domainid As %Integer, crclist As %List, page As %Integer = 1, pagesize As %Integer = 10, filter As %iKnow.Filters.Filter = "", setop As %Integer = {$$$UNION}, sortByField As %String = "") As %Status
Retrieves all sources containing the given CRCs.
See also GetByEntities for a description of the parameters.
GetByCrcMask
ClassMethod GetByCrcMask(ByRef result, domainid As %Integer, head As %String = {$$$WILDCARD}, relation As %String = {$$$WILDCARD}, tail As %String = {$$$WILDCARD}, page As %Integer = 1, pagesize As %Integer = 10, filter As %iKnow.Filters.Filter = "", sortByField As %String = "", pActualFormOnly As %Boolean = 0) As %Status
Retrieves all sources containing a CRC satisfying the given CRC Mask.
See also GetByEntities for a description of the parameters.
GetByCrcIds
ClassMethod GetByCrcIds(ByRef result, domainid As %Integer, crcidlist As %List, page As %Integer = 1, pagesize As %Integer = 10, filter As %iKnow.Filters.Filter = "", setop As %Integer = {$$$UNION}, sortByField As %String = "") As %Status
Retrieves all sources containing the given CRC ids.
See also GetByEntities for a description of the parameters.
GetByCrcsInternal
ClassMethod GetByCrcsInternal(ByRef result, domainid As %Integer, crcIdsGlob As %String, page As %Integer, pagesize As %Integer, filter As %iKnow.Filters.Filter, setop As %Integer, sortByField As %String = "") As %Status [ Internal ]
GetCountByCrcs
ClassMethod GetCountByCrcs(domainid As %Integer, crclist As %List, filter As %iKnow.Filters.Filter = "", setop As %Integer = {$$$UNION}, Output sc As %Status = {$$$OK}) As %Integer
Retrieves the number of sources containing the given CRCs.
See also GetByEntities for a description of the parameters.
GetCountByCrcMask
ClassMethod GetCountByCrcMask(domainid As %Integer, head As %String = {$$$WILDCARD}, relation As %String = {$$$WILDCARD}, tail As %String = {$$$WILDCARD}, filter As %iKnow.Filters.Filter = "", Output sc As %Status = {$$$OK}, pActualFormOnly As %Boolean = 0) As %Integer
Retrieves the number of sources containing a CRC satisfying the given CRC Mask.
See also GetByEntities for a description of the parameters.
GetCountByCrcIds
ClassMethod GetCountByCrcIds(domainid As %Integer, crcidlist As %List, filter As %iKnow.Filters.Filter = "", setop As %Integer = {$$$UNION}, Output sc As %Status = {$$$OK}) As %Integer
Retrieves the number of sources containing the given CRC ids.
See also GetByEntities for a description of the parameters.
GetCountByCrcsInternal
ClassMethod GetCountByCrcsInternal(domainid As %Integer, crcIdsGlob As %String, filter As %iKnow.Filters.Filter, setop As %Integer, Output sc As %Status = {$$$OK}) As %Integer [ Internal ]
GetByPathIds
ClassMethod GetByPathIds(ByRef result, domainid As %Integer, pathidlist As %List, page As %Integer = 1, pagesize As %Integer = 10, filter As %iKnow.Filters.Filter = "", sortByField As %String = "") As %Status
Retrieves all sources containing the given path ids.
See also GetByEntities for a description of the parameters.
GetByPathsInternal
ClassMethod GetByPathsInternal(ByRef result, domainid As %Integer, ByRef pathlist, page As %Integer, pagesize As %Integer, filter As %iKnow.Filters.Filter, sortByField As %String) As %Status [ Internal ]
GetCountByPathIds
ClassMethod GetCountByPathIds(domainid As %Integer, pathidlist As %List, filter As %iKnow.Filters.Filter = "", Output sc As %Status = {$$$OK}) As %Integer
Retrieves the number of sources containing the given path ids.
See also GetByEntities for a description of the parameters.
GetCountByPathsInternal
ClassMethod GetCountByPathsInternal(domainid As %Integer, ByRef pathlist, filter As %iKnow.Filters.Filter, Output sc As %Status = {$$$OK}) As %Integer [ Internal ]
GetSimilar
ClassMethod GetSimilar(ByRef result, domainid As %Integer, sourceid As %Integer, page As %Integer = 1, pagesize As %Integer = 10, filter As %iKnow.Filters.Filter = "", algorithm As %String = {$$$SIMSRCSIMPLE}, algorithmParams As %List = "", skipListIds As %List = "") As %Status
Retrieves those sources that have similar content to the one specified through the sourceId parameter. Similarity is expressed by the (approximated) ratio between the length of the source and the overlap with the starting source, based on the chosen algorithm (according to the algorithm-specific algorithmParams).
Note: whenever possible, use a filter object to limit the search space for this query to perform adequately.
If the supplied Source ID is negative, it is treated as a Virtual Source. While this allows looking for sources similar to a Virtual Source, the query will not verify against other Virtual Sources and they will therefore not appear in the results of this query.
The skipListIds parameter allows a user to select one or more SkipLists of which the elements should be completely ignored in the similarity algorithm. Skiplisted elements will be ignored both for selecting similar candidates AND the calculation of their similarity score.
The following algorithms are currently available:
- $$$SIMSRCSIMPLE: basic algorithm simply looking at entities (or CRCs or CCs) present in the reference source.
Parameters:- targetType As %String - either "ent", "crc" or "cc" (case insensitive, defaults to "ent"). Please note this implies the result columns will represent the corresponding targets, despite being named "nbOf_Ent_***"
- $$$SIMSRCDOMENTS starts looking for similar sources based on dominant terms in the reference source.
Parameters:- strict As %Boolean - whether or not to select only sources for which at least one of the reference source's dominant concepts are also dominant in a similar source. (defaults to 1)
GetAttributes
ClassMethod GetAttributes(ByRef pResult, pDomainId As %Integer, pSrcId As %Integer, pPage As %Integer = 1, pPageSize As %Integer = 10, pTypes As %List = "", pLevel As %Integer = {$$$IKATTLVLANY}) As %Status
Returns all the attributes of the Entity Occurrences, Paths and Sentences enclosed in the specified source, optionally filtered by level through pLevel and/or pType.
Please note the startPos and span result columns refer to positions within the path for path-level attributes (level=$$$IKATTLVLPATH) and sentence positions for the other attributes (level=$$$IKATTLVLSENT).