Skip to main content


persistent class %iKnow.Objects.Path extends %Library.Persistent

SQL Table Name: %iKnow_Objects.Path

Note: the use of this class is no longer recommended for accessing elements of a specific domain. For those scenarios, %iKnow.Tables.Utils offers a more flexible and customizable way of projecting iKnow domain data to SQL

This is a read-only object representation wrapping the internal iKnow data structures for Paths.

This class can be used from Cache ObjectScript or SQL to access a single or small number of entries, but the storage mappings are not meant to support elaborate or complex queries targeting this SQL table.

Please use the predefined queries in %iKnow.Queries.PathAPI and other query classes to consult Path data as the internal global structures are designed to optimize performance for these queries rather than general-purpose access.

NOTE: This object assumes all underlying data structures are present. Use domain-specific copies of these objects for domains where not all indices are built. See also the GenerateAllObjectsForDomain() method in %iKnow.Objects.Utils.

Property Inventory


parameter READONLY = 1;
Inherited description: READONLY = 1 means that objects can be created, opened but not saved or deleted. Tables are projected to SQL as READONLY.


property DomainId as %Integer [ Required ];
Property methods: DomainIdDisplayToLogical(), DomainIdGet(), DomainIdIsValid(), DomainIdLogicalToDisplay(), DomainIdNormalize(), DomainIdSet()
property Entities as %List [ Calculated ];
Property methods: EntitiesCompute(), EntitiesGet(), EntitiesLogicalToOdbc(), EntitiesOdbcToLogical(), EntitiesSQLCompute()
property EntityOccurrences as %List;
Property methods: EntityOccurrencesGet(), EntityOccurrencesIsValid(), EntityOccurrencesLogicalToOdbc(), EntityOccurrencesOdbcToLogical(), EntityOccurrencesSet()
property PathId as %Integer [ Required ];
Property methods: PathIdDisplayToLogical(), PathIdGet(), PathIdIsValid(), PathIdLogicalToDisplay(), PathIdNormalize(), PathIdSet()
property Sentence as %iKnow.Objects.Sentence [ Calculated ];
Property methods: SentenceCompute(), SentenceGet(), SentenceGetObject(), SentenceGetObjectId(), SentenceSQLCompute()
property SentenceId as %Integer [ Calculated ];
Property methods: SentenceIdCompute(), SentenceIdDisplayToLogical(), SentenceIdGet(), SentenceIdIsValid(), SentenceIdLogicalToDisplay(), SentenceIdNormalize(), SentenceIdSQLCompute()
property Source as %iKnow.Objects.Source [ Calculated ];
Property methods: SourceCompute(), SourceGet(), SourceGetObject(), SourceGetObjectId(), SourceSQLCompute()
property SourceId as %Integer [ Calculated ];
Property methods: SourceIdCompute(), SourceIdDisplayToLogical(), SourceIdGet(), SourceIdIsValid(), SourceIdLogicalToDisplay(), SourceIdNormalize(), SourceIdSQLCompute()


index (PKINDEX on DomainId,PathId) [IdKey, PrimaryKey, Type = key, Unique];
Index methods: PKINDEXCheck(), PKINDEXDelete(), PKINDEXExists(), PKINDEXOpen(), PKINDEXSQLCheckUnique(), PKINDEXSQLExists(), PKINDEXSQLFindPKeyByConstraint(), PKINDEXSQLFindRowIDByConstraint()

Inherited Members

Inherited Methods


Storage Model: CacheSQLStorage

Maps: 3

  • Map number 1 is named MainMap

    thismap.Global: ^ISC.IK.PathToEntOcc

  • Map number 2 is named SentenceIdx

    thismap.Global: ^ISC.IK.SentDetails

  • ^ISC.IK.PathToEntOcc({DomainId},{PathId})
    Node Delimiter Piece Name
  • Map number 3 is named SourceIdx

    thismap.Global: ^ISC.IK.SrcDetails

  • ^ISC.IK.SentDetails({DomainId},{SentenceId},{PathId})
FeedbackOpens in a new tab