Smart Tag Architecture [Office 2003 SDK Documentation]
The smart tag architecture make creating smart tag DLLs a straightforward process. Developers only have to concern themselves with the application programming interface (API) and the registration mechanism. The smart tag API deals with the implementation of application-agnostic DLLs that provide recognition and action services. The registration of smart tag DLLs is the mechanism by which newly created smart tag DLLs make themselves known to other Office applications.
Smart tag recognizers are pieces of code that add type information to strings that are passed to them. For example, a recognizer could label "Lucerne Publishing" as type CompanyName.
The most obvious application of smart tag recognizers is as plug-ins for current smart tag supporting applications like Excel, Word, PowerPoint, and Access, but smart tag recognition technology may be applied to a wide number of applications in the future as well.
On a technical level, smart tag recognizers are automation servers. This means that smart tag recognizers need to support the IDispatch interface. Although an automation interface does not need to have all of its members implemented, a smart tag recognizer does need to supply enough information to client applications like Word, Excel, PowerPoint or Access to enable them to utilize the smart tag recognizer. This collection of methods and properties is bundled into two interfaces called ISmartTagRecognizer and ISmartTagRecognizer2.
Smart tag recognizers can be created by using any development tool that supports the creation of automation servers, like Microsoft Visual Basic 6.0, Visual C++ 6.0, Visual Basic .NET, Visual C#, Visual C++ 7.0 (managed and unmanaged) .
Smart tag actions are user-invoked "verbs" that are associated with data of a particular type. For example, "Add to my Address Book" or "Display map" could be two of many possible actions for a string of type StreetName (for example, "1 Microsoft Way, Redmond, WA" could be a string of type StreetName).
As can be seen, in conjunction with smart tag recognizers, which attach type information to data, smart tags offer a true information-at-your-fingertips experience to Office users.
Smart tag actions are automation components that implement the IDispatch interface. More specifically, smart tag actions implement the ISmartTagAction interface at the very least. In addition, smart tag actions can also implement the ISmartTagAction2 interface. These interfaces provide client applications like Word, Excel, PowerPoint, Access, or Internet Explorer with the information needed to support smart tag actions. Smart tag actions can be created by using any development tool that supports the creation of automation servers, like Microsoft Visual Basic 6.0, Visual C++ 6.0, Visual Basic .NET, Visual C#, Visual C++ 7.0 (managed and unmanaged).