Skip to main content

%iKnow.Queries.EntityQAPI

deprecated class %iKnow.Queries.EntityQAPI extends %iKnow.Queries.AbstractQAPI

This is an automatically generated class, offering a functionally equivalent set of methods and queries as %iKnow.Queries.EntityAPI, exposed as SqlProc methods.

See the classdocs for %iKnow.Queries.EntityAPI for more information.

Method Inventory

Methods

classmethod GetCountByDomain(domainid As %Integer, filter As %String(MAXLEN=32767)="", Output scText As %String = "", skipListIds As %String(MAXLEN=32767)="", includeZeroFrequency As %Boolean = 0, pUseStems As %Boolean = 0) as %Library.Integer [ SQLProc = EntityQAPI_GetCountByDomain ]
Projected as the stored procedure: EntityQAPI_GetCountByDomain

Returns the total number of distinct entities for this domain, optionally filtered to a set of sources satisfying the %iKnow.Filters.Filter object supplied through filter. Depending on the value of includeZeroFrequency, entities not appearing in any source (but registered in the domain for other purposes) are included or excluded from the result.

Through the skipListIds parameter, a user can supply one or more lists of (to the user) insignificant terms that should be excluded from the result.

classmethod GetCountBySource(domainid As %Integer, sourceidlist As %String(MAXLEN=32767), setop As %Integer = $$$UNION, Output scText As %String = "", skipListIds As %String(MAXLEN=32767)="", enttype As %Integer = $$$ENTTYPEANY, pUseStems As %Boolean = 0) as %Library.Integer [ SQLProc = EntityQAPI_GetCountBySource ]
Projected as the stored procedure: EntityQAPI_GetCountBySource

Returns the total number of distinct entities for a given list of sources. The count returned either represents the entities appearing in either (with setop $$$UNION) or all (with setop $$$INTERSECT) of the supplied sources. Using enttype, the returned count is filtered to just entities ($$$ENTTYPECONCEPT), relations ($$$ENTTYPERELATION). The default is unfiltered ($$$ENTTYPEANY).

To get the unique entities of a virtual source, only a single virtual source can be supplied using its negative ID value (otherwise, -1 is returned).

Through the skipListIds parameter, a user can supply one or more lists of (to the user) insignificant terms that should be excluded from the result.

classmethod GetFrequency(domainId As %Integer, entUniId As %Integer, enttype As %Integer = $$$ENTTYPEANY, vSrcId As %Integer = 0, filter As %String(MAXLEN=32767)="", Output scText As %String = "") as %Library.Integer [ SQLProc = EntityQAPI_GetFrequency ]
Projected as the stored procedure: EntityQAPI_GetFrequency

Returns the frequency of the entity corresponding to the supplied entUniId, occurring in a concept role (if enttype = $$$ENTTYPECONCEPT), a relationship role (if enttype = $$$ENTTYPERELATION) or both (enttype = $$$ENTTYPEANY).

When specifying a Virtual Source ID, the frequency within the virtual source will be returned.

classmethod GetId(domainid As %Integer, entityvalue As %String(MAXLEN=32767), vSrcId As %Integer = 0) as %Library.Integer [ SQLProc = EntityQAPI_GetId ]
Projected as the stored procedure: EntityQAPI_GetId

Returns the entity ID corresponding to the specified entity value, if any.

When specifying a Virtual Source ID, it will treat the entity as a virtual one, in the context of that vSrcId.

classmethod GetLiteral(pDomainId As %Integer, pPartId As %Integer, vSrcId As %Integer = 0) as %Library.String [ SQLProc = EntityQAPI_GetLiteral ]
Projected as the stored procedure: EntityQAPI_GetLiteral

Returns the literal value for a particular Part ID, as it occurred in the original text.

classmethod GetOccurrenceCountByDomain(pDomainId As %Integer, pFilter As %String(MAXLEN=32767)="", pEntType As %Integer = $$$ENTTYPEANY, Output scText As %String = "") as %Library.Integer [ SQLProc = EntityQAPI_GetOccurrenceCountByDomain ]
Projected as the stored procedure: EntityQAPI_GetOccurrenceCountByDomain

Returns the total number of entity occurrences in a domain.

classmethod GetOccurrenceCountBySource(domainid As %Integer, sourceidlist As %String(MAXLEN=32767), Output scText As %String = "", enttype As %Integer = $$$ENTTYPEANY) as %Library.Integer [ SQLProc = EntityQAPI_GetOccurrenceCountBySource ]
Projected as the stored procedure: EntityQAPI_GetOccurrenceCountBySource

Returns the total number of entity occurrences for the given list of sources. Use negative source IDs to refer to virtual sources.

classmethod GetRelatedCount(domainid As %Integer, entitylist As %String(MAXLEN=32767), filter As %String(MAXLEN=32767)="", positionstomatch As %Integer = $$$USEPOSHT, setop As %Integer = $$$UNION, Output scText As %String = "", pIncludeActualForms As %Boolean = 0) as %Library.Integer [ SQLProc = EntityQAPI_GetRelatedCount ]
Projected as the stored procedure: EntityQAPI_GetRelatedCount

Returns the number of related entities for a given list of entities.

See GetRelated() for a description of the parameters.

classmethod GetRelatedCountById(domainid As %Integer, entityidlist As %String(MAXLEN=32767), filter As %String(MAXLEN=32767)="", positionstomatch As %Integer = $$$USEPOSHT, setop As %Integer = $$$UNION, Output scText As %String = "", pIncludeActualForms As %Boolean = 0) as %Library.Integer [ SQLProc = EntityQAPI_GetRelatedCountById ]
Projected as the stored procedure: EntityQAPI_GetRelatedCountById

Returns the number of related entities for a given list of entity ids.

See GetRelated() for a description of the parameters.

classmethod GetSpread(domainId As %Integer, entUniId As %Integer, enttype As %Integer = $$$ENTTYPEANY, filter As %String(MAXLEN=32767)="", Output scText As %String = "") as %Library.Integer [ SQLProc = EntityQAPI_GetSpread ]
Projected as the stored procedure: EntityQAPI_GetSpread

Returns the spread of the entity corresponding to the supplied entUniId, occurring in a concept role (if enttype = $$$ENTTYPECONCEPT), a relationship role (if enttype = $$$ENTTYPERELATION) or both (enttype = $$$ENTTYPEANY).

classmethod GetStem(pDomainId As %Integer = "", pString As %String(MAXLEN=32767), pLanguage As %String(MAXLEN=32767)="", Output scText As %String = "") as %Library.String [ SQLProc = EntityQAPI_GetStem ]
Projected as the stored procedure: EntityQAPI_GetStem
Returns the stemmed form of the supplied string pString. If pDomainId is non-null, any domain-level configuration settings will be used for the stemming operation.
classmethod GetStemFrequency(pDomainId As %Integer, pStemUniId As %Integer, pEntType As %Integer = $$$ENTTYPEANY, vSrcId As %Integer = 0, pFilter As %String(MAXLEN=32767)="", Output scText As %String = "") as %Library.Integer [ SQLProc = EntityQAPI_GetStemFrequency ]
Projected as the stored procedure: EntityQAPI_GetStemFrequency

Returns the frequency of the stem corresponding to the supplied pStemUniId, occurring in a concept role (if pEntType = $$$ENTTYPECONCEPT), a relationship role (if pEntType = $$$ENTTYPERELATION) or both (pEntType = $$$ENTTYPEANY).

When specifying a Virtual Source ID, the frequency within the virtual source will be returned.

classmethod GetStemId(pDomainId As %Integer, pStemValue As %String(MAXLEN=32767), vSrcId As %Integer = 0) as %Library.Integer [ SQLProc = EntityQAPI_GetStemId ]
Projected as the stored procedure: EntityQAPI_GetStemId

Returns the stem ID corresponding to the specified stem value, if any.

When specifying a Virtual Source ID, it will treat the stem as a virtual one, in the context of that vSrcId.

classmethod GetStemRepresentationForm(pDomainId As %Integer, pStemUniId As %Integer, pLanguage As %String(MAXLEN=32767)="en", vSrcId As %Integer = 0, Output scText As %String = "") as %Library.String [ SQLProc = EntityQAPI_GetStemRepresentationForm ]
Projected as the stored procedure: EntityQAPI_GetStemRepresentationForm
Returns the representation form for the given stem and language
classmethod GetStemSpread(pDomainId As %Integer, pStemUniId As %Integer, pEntType As %Integer = $$$ENTTYPEANY, pFilter As %String(MAXLEN=32767)="", Output scText As %String = "") as %Library.Integer [ SQLProc = EntityQAPI_GetStemSpread ]
Projected as the stored procedure: EntityQAPI_GetStemSpread

Returns the spread of the stem corresponding to the supplied pStemUniId, occurring in a concept role (if pEntType = $$$ENTTYPECONCEPT), a relationship role (if pEntType = $$$ENTTYPERELATION) or both (pEntType = $$$ENTTYPEANY).

classmethod GetStemValue(pDomainId As %Integer, pStemUniId As %Integer, vSrcId As %Integer = 0, Output scText As %String = "") as %Library.String [ SQLProc = EntityQAPI_GetStemValue ]
Projected as the stored procedure: EntityQAPI_GetStemValue
Returns the string value of the stem identified by pStemUniId
classmethod GetValue(domainid As %Integer, entityid As %Integer, vSrcId As %Integer = 0, Output scText As %String = "") as %Library.String [ SQLProc = EntityQAPI_GetValue ]
Projected as the stored procedure: EntityQAPI_GetValue

Returns the entity string value corresponding to the specified entity ID, if any.

classmethod IsAttributed(pDomainId As %Integer, pEntOccId As %Integer, pAttTypeId As %Integer, vSrcId As %Integer = 0, Output scText As %String = "") as %Library.Boolean [ SQLProc = EntityQAPI_IsAttributed ]
Projected as the stored procedure: EntityQAPI_IsAttributed
Checks if a given entity occurrence has the requested attribute pAttTypeId.

Queries

query GetByFilter(domainid As %Integer, filter As %String(MAXLEN=32767)="", filtermode As %Integer = $$$FILTERONLY, enttype As %Integer = $$$ENTTYPECONCEPT, skipListIds As %String(MAXLEN=32767)="", pUseStems As %Boolean = 0)
Selects entUniId As %Integer, entity As %String(MAXLEN=32767), frequency As %Integer, spread As %Integer

Returns all entities appearing in any source satisfying the supplied filter objects criteria, with their frequencies and spread recalculated to comply with the filter depending on the value of filtermode, but the result is NOT re-sorted, regardless of the value for filtermode (use GetTop() if you want sorted results).

Depending on the value of enttype parameter, this method will only return concepts ($$$ENTTYPECONCEPT, default), relations ($$$ENTTYPERELATION) or both ($$$ENTTYPEANY).

Through the skipListIds parameter, a user can supply one or more lists of (to the user) insignificant terms that should be excluded from the result.

query GetBySource(domainid As %Integer, sourceidlist As %String(MAXLEN=32767), page As %Integer = 1, pagesize As %Integer = 10, enttype As %Integer = $$$ENTTYPEANY, skipListIds As %String(MAXLEN=32767)="", pUseStems As %Boolean = 0)
Selects entUniId As %Integer, entity As %String(MAXLEN=32767), frequency As %Integer, spread As %Integer

Returns the unique entities appearing in the sources specified.

To get the unique entities of a virtual source, only a single virtual source can be supplied using its negative ID value.

query GetByStem(pDomainId As %Integer, pStemUniId As %Integer, vSrcId As %Integer = 0, pLanguage As %String(MAXLEN=32767)="")
Selects EntUniId As %Integer, EntityValue As %String(MAXLEN=32767)
Retrieves all entities corresponding to a certain stem identified by pStemUniId.
query GetNewBySource(domainid As %Integer, sourceidlist As %String(MAXLEN=32767), page As %Integer = 1, pagesize As %Integer = 10, filter As %String(MAXLEN=32767)="", entType As %Integer = $$$ENTTYPECONCEPT, algorithm As %String(MAXLEN=32767)=$$$NEWENTSIMPLE, algorithmParams As %String(MAXLEN=32767)="", skipListIds As %String(MAXLEN=32767)="", pUseStems As %Boolean = 0)
Selects entUniId As %Integer, entity As %String(MAXLEN=32767), freqInNew As %Integer, freqInOld As %Integer, relFreqInNew As %Numeric, relFreqInOld As %Numeric

Retrieves the significant entities in a list of sources supplied through sourceidlist, as compared to the other sources in the domain (optionally filtered through a %iKnow.Filters.Filter object specified through filter).

The following algorithm values are currently available:

  • $$$NEWENTSIMPLE - takes no parameters

To get the significant entities of a virtual source compared to the non-virtual ones in the domain, only a single virtual source can be supplied using its negative ID value.

Through the enttype parameter, the method can be instructed to return either concepts ($$$ENTTYPECONCEPT) or relations ($$$ENTTYPERELATION).

Through the skipListIds parameter, a user can supply one or more lists of (to the user) insignificant terms that should be excluded from the result.

query GetOccurrenceAttributes(pDomainId As %Integer, pPartId As %Integer, vSrcId As %Integer = 0)
Selects attTypeId As %Integer, attType As %String(MAXLEN=32767), level As %Integer, wordPositions As %String(MAXLEN=32767), properties As %String(MAXLEN=32767)

Returns all attributes for a given part. Any named attribute properties are also included through sub-nodes (not available through SQL or SOAP):

pResult(rowNumber, propertyName) = propertyValue

The returned wordPositions only extend to the last attributed word position (there might be more words within the entity).

query GetOccurrencesById(pDomainId As %Integer, pEntUniIds As %String(MAXLEN=32767), pPage As %Integer = 1, pPageSize As %Integer = 10, pFilter As %String(MAXLEN=32767)="", pAttributeId As %Integer = $$$IKATTNEGATION, vSrcId As %Integer = 0, pIncludeActualForms As %Boolean = 0)
Selects EntOccId As %Integer, EntUniId As %Integer, Type As %Integer, SentenceId As %Integer, SourceId As %Integer, IsAttributed As %Integer

Returns all occurrences for any of the given unique entities in pEntUniIds, including whether the attribute pAttributeId is applicable to this occurrence.

If this domain is configured for stemming using $$$IKPSTEMMING, any actual entities corresponding to pEntUniIds elements will be returned.

query GetRelated(domainid As %Integer, entitylist As %String(MAXLEN=32767), page As %Integer = 1, pagesize As %Integer = 10, filter As %String(MAXLEN=32767)="", filtermode As %Integer = $$$FILTERONLY, positionstomatch As %Integer = $$$USEPOSHT, aggregationtype As %Integer = $$$AGGSUM, setop As %Integer = $$$UNION, sorttype As %Integer = $$$SORTBYDOMAINDEFAULT, skipListIds As %String(MAXLEN=32767)="")
Selects entUniId As %Integer, entity As %String(MAXLEN=32767), frequency As %Integer, spread As %Integer

This method will return all entities occurring in a direct relationship with at least on (if setop = $$$UNION) or all (if setop = $$$INTERSECT) of the entities in the supplied entitylist, anywhere within the supplied domain.

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 CRCs occurring in any source satisfying the filter criteria. When using a filter, the filtermode parameter will control whether or not the frequency and spread of returned records should be recalculated and whether results should be resorted along these recalculated numbers.

Through the positionstomatch parameter, the user can specify whether the entities returned should be occurring on the Head side ($$$USEPOSH), the Tail side ($$$USEPOST) or either ($$$USEPOSHT, default) side of the relationship.

The aggregationtype parameter lets you choose how to aggregate the frequency and spread of results related to multiple entries in the input entitylist.

Through the skipListIds parameter, a user can supply one or more lists of (to the user) insignificant terms that should be excluded from the result.

Note: this method only returns entities that appear in direct relationships with the seed entity. For the broader context of entities, including indirect relationships (still within a single path), please refer to %iKnow.Semantics.ProximityAPI

query GetRelatedById(domainid As %Integer, entityidlist As %String(MAXLEN=32767), page As %Integer = 1, pagesize As %Integer = 10, filter As %String(MAXLEN=32767)="", filtermode As %Integer = $$$FILTERONLY, positionstomatch As %Integer = $$$USEPOSHT, aggregationtype As %Integer = $$$AGGSUM, setop As %Integer = $$$UNION, sorttype As %Integer = $$$SORTBYDOMAINDEFAULT, skipListIds As %String(MAXLEN=32767)="")
Selects entUniId As %Integer, entity As %String(MAXLEN=32767), frequency As %Integer, spread As %Integer

Returns the entities directly related to a supplied list of entity IDs.

See GetRelated() for a description of the parameters.

query GetSimilar(domainid As %Integer, part As %String(MAXLEN=32767), page As %Integer = 1, pagesize As %Integer = 10, filter As %String(MAXLEN=32767)="", filtermode As %Integer = $$$FILTERONLY, mode As %Integer = $$$USEDOMAINDEFAULT, skipListIds As %String(MAXLEN=32767)="", pEntRole As %Integer = $$$ENTTYPEANY, pUseStems As %Boolean = 0)
Selects entUniId As %Integer, entity As %String(MAXLEN=32767), frequency As %Integer, spread As %Integer

This method will return all entities in the specified domain that are "similar" to the supplied part string. Similarity is defined using the mode parameter. The default setting ($$$USEPARTS), will retrieve all clusters containing at least one word starting with the supplied string, whereas $$$USENGRAMS will search for any character sequence within the whole entity. With mode = $$$USEWORDS, the behavior is the same as $$$USEPARTS but the supplied part needs to occur as a whole word in the retrieved clusters.

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 CRCs occurring in any source satisfying the filter criteria. When using a filter, the filtermode parameter will control whether or not the frequency and spread of returned records should be recalculated and whether results should be resorted along these recalculated numbers.

Through the skipListIds parameter, a user can supply one or more lists of (to the user) insignificant terms that should be excluded from the result.

query GetSimilarCounts(domainid As %Integer, part As %String(MAXLEN=32767), filter As %String(MAXLEN=32767)="", mode As %Integer = $$$USEDOMAINDEFAULT, skipListIds As %String(MAXLEN=32767)="", Output scText As %String = "", entType As %Integer = $$$ENTTYPEANY, pUseStems As %Boolean = 0)
Selects distinctEntities As %Integer, totalFrequency As %Integer, totalSpread As %Integer

This method returns aggregated details on the entities similar to a supplied text fragment part. The returned list contains the total number of distinct entities similar to part appearing in sources satisfying the supplied filter (if defined), their total aggregated frequency (with respect to filter, if defined) and the total number of sources containing at least one of these "similar" entities (again, respecting filter, if defined).

See also GetSimilar() for a description of the other parameters.

Setting the entType parameter to $$$ENTTYPECONCEPT or $$$ENTTYPERELATION will restrict the result to only include entity occurrences of the specified type in the returned number of distinct entities and aggregated frequency. If an entity occurs as both a concept and a relationship (typically in <1% of cases), it contributes to the aggregated spread regardless of entType.

query GetTop(domainid As %Integer, page As %Integer = 1, pagesize As %Integer = 10, filter As %String(MAXLEN=32767)="", filtermode As %Integer = $$$FILTERONLY, sorttype As %Integer = $$$SORTBYDOMAINDEFAULT, enttype As %Integer = $$$ENTTYPECONCEPT, vSrcId As %Integer = 0, skipListIds As %String(MAXLEN=32767)="", pUseStems As %Boolean = 0)
Selects entUniId As %Integer, entity As %String(MAXLEN=32767), frequency As %Integer, spread As %Integer

This method returns the most frequently occurring entities in the specified domain.

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 CRCs occurring in any source satisfying the filter criteria. When using a filter, the filtermode parameter will control whether or not the frequency and spread of returned records should be recalculated and whether results should be resorted along these recalculated numbers.

Through the enttype parameter, the method can be instructed to return either concepts ($$$ENTTYPECONCEPT) or relations ($$$ENTTYPERELATION). When looking for top concepts, those shorter than 3 characters are skipped.

Returned values are either sorted by descending frequency (with sorttype $$$SORTBYFREQUENCY), spread (with sorttype $$$SORTBYSPREAD) or the domain default (with sorttype $$$SORTBYDOMAINDEFAULT).

If a Virtual Source ID is provided, only the entities in that virtual source will be considered, filters are ignored and the sort type will always be $$$SORTBYFREQUENCY.

Through the skipListIds parameter, a user can supply one or more lists of (to the user) insignificant terms that should be excluded from the result.

query GetTopBM25(pDomainId As %Integer, pPage As %Integer = 1, pPageSize As %Integer = 10, pFilter As %String(MAXLEN=32767)="", pEntType As %Integer = $$$ENTTYPECONCEPT, pUseStems As %Boolean = 0)
Selects entUniId As %Integer, entityValue As %String(MAXLEN=32767), bm25 As %Numeric
Returns the top entities for a given domain (optionally filtered through pFilter) calculated using a metric based on the Okapi BM25 standard, which combines an entity's frequency with its Inverse Document Frequency, taking into account document length.
query GetTopTFIDF(pDomainId As %Integer, pPage As %Integer = 1, pPageSize As %Integer = 10, pFilter As %String(MAXLEN=32767)="", pEntType As %Integer = $$$ENTTYPECONCEPT, pUseStems As %Boolean = 0)
Selects entUniId As %Integer, entityValue As %String(MAXLEN=32767), TFIDF As %Numeric
Returns the top entities for a given domain (optionally filtered through pFilter) by multiplying their Term Frequency with their Inverse Document Frequency: IDF(e) = $zlog( [ SourceCount - spread(e) + 0.5 ] / [ spread(e) + 0.5 ] )

Inherited Members

Inherited Methods

FeedbackOpens in a new tab