The NLP technology does not have a default user interface. This chapter describes a few sample user interfaces provided with NLP. These can provide a convenient starting point when developing a query interface specific to your use of NLP.
These sample user interfaces are found in the %iKnow.UI package, and are implemented as web pages, as described in the InterSystems Class Reference.
How to Display NLP User Interfaces
from the InterSystems IRIS® data platform launcher, access Studio.
from the File drop-down menu, select Change Namespace. Select the %SYS namespace. Click OK.
from the File drop-down menu, select Open.
from the Open window, make sure that Include System Items is checked. Then select %iKnow->UI->and the desired user interface. Click Open. The source code for the user interface appears in the Class Editor (the main Studio window).
click the View Web Page icon (the planet Earth icon). The user interface displays in your default browser. (Note that abstract classes cannot be displayed.)
For further details, refer to the Using Studio manual.
This is the superclass for all other portals and pages in the %iKnow.UI package. It groups a lot of reusable materials such as handling of domain ID, the "selected" source ID, metadata filters and paging for NLP query-driven tables and groups. It is abstract, and cannot be run by itself, but should not impose restrictions on subclasses or component names, as long as the corresponding panes (optDomainPane, txtTermPane, optSourcePane and filterPane) are used.
The %iKnow.UI.AbstractPortal class has five subclasses that fall into two types:
The Loading Wizard, which provides a source file management interface.
The query portal interfaces, which provide different displays of source data, showing NLP indexing and dictionary matching.
Abstract Source Viewer
This class extends the AbstractPortal superclass. It contains the ProcessInput() and DeleteCurrentVirtualSource() methods. It is abstract, and cannot be run by itself.
A management and maintenance interface that allows a user to easily choose (or manage) Domain and Configuration objects and then load files from a filesystem directly into a domain using %iKnow.Source.File.Lister. It also provides functionality to load metadata values from a CSV (comma-separated values) file with rows corresponding to files previously loaded through the File Lister. This operation automatically creates previously nonexistent metadata fields on the fly.
For further details on Domain and Configuration objects, refer to the “Setting Up an NLP Environment” chapter. For further details on listing and loading, refer to the “Loading Text Data into NLP” chapter.
This is a sample web page query display interface with broad application. It shows a wealth of information about the various language elements identified by NLP, including entities, CRCs, CCs and paths, providing a contextual at-a-glance view of what's in your data. The generic filters option allows for easily selecting subsets of a domain based on metadata criteria and the summary option provides quick access to the contents of the sources themselves. This interface provides a sample of how NLP Smart Indexing can be used to quickly overview and navigate a large set of documents.
The Domain Explorer offers straightforward examples of calling the different NLP Query APIs, including top entities, similar entities, and related entities, with the frequency and spread for each.
The Domain Explorer supports the use of skiplists.
For a full description of features, refer to Domain Explorer in the “Domain Architect” chapter of this book.
This sample web page query display interface is a simplified version of the Domain Explorer. It displays entities and sources only. It does not display CRCs, CCs and paths. It provides filtering and summary capabilities, but by default it shows the full text of the source.
The Basic Portal supports the use of skiplists.
This sample web page query display interface looks at the Smart Indexing results for a single document to verify the correctness of the analysis done by the NLP analysis engine. It shows how NLP cuts up each sentence into a sequence of concepts (bold and highlighted), relations (underlined), and non-relevants (italic). The page also shows a frequency-sorted list of detected Concepts and CRCs. This page provides an option for loading input manually. This page offers an example of how %iKnow.Queries.SentenceAPI.GetParts() can be used for custom highlighting.
For a full description of features, refer to Indexing Results in the “Domain Architect” chapter of this book.
For definitions of concepts, relations, CRCs, and non-relevants, refer to the “Conceptual Overview” chapter.
This sample web page query display interface gives for each document an overview of the different matching results in the document. It allows for easy browsing through match results against a dictionary and allows you to display the details of each individual match. It uses %iKnow.Matching.MatchingAPI.GetHighlightedSentences() to display the text with dictionary matches highlighted in color, and %iKnow.Matching.MatchingAPI.GetMatchElements() to display the details of a specific match including the dictionary name, its item and term, the match score, type of match and the entity matched. This interface provides a sample of how NLP Smart Matching can be used to combine predefined information with Smart Indexing results.
For further details on matching, refer to the “Smart Matching: Using a Dictionary” chapter.