Overview
The Definition of "Topic Map"
Subject Proxies
Property Classes, Property Instances, and Property Values
The Three Ways A Property Instance Can Get Its Value
1. Original Population
2. Merging of Property Values
3. Conferral
Topic Map Applications (TMAs)
The Versavant Object; an overview of Versavant services
Inspecting and Auditing Versavant Topic Maps
Creating Versavant Topic Maps
Interchanging Versavant Topic Maps in XML
versavant-A.dtd
implementing other topic map interchange formats
Rendering Versavant Topic Maps
The TopicMap Class
The ProxyObject Class
The PropertyInstance Class
The PropertyClass Class
The ValueType Class
The TMA Class
Disclosing Versavant TMAs
Overview
Disclosing a TMA in General: ISO/IEC 13250-5
Disclosing a TMA in Versavant: TMA configuration files
Writing a TMA configuration file - versavantTMA.dtd
<ValueType> elements
ValueTypeName attribute
<ValueIsNotOfType__> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a value type?
<InstanceOf__ValueTypeToXMLContentString> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a value type?
<XMLContentStringToInstanceOf__ValueType> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a value type?
<PropertyClass> elements
PropertyClassName attribute
ValueType attribute
<Add__PropToOverheadDict> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a property class?
<Remove__PropFromOverheadDict> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a property class?
<ValueIsInvalidFor__Property> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a property class?
<Merge__PropertyValues> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a property class?
<ValuesOf__PropertyInstancesAreSignificantlyDifferent> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a property class?
<ContextOf__PropertyIsInvalid> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a property class?
<MergeProxiesBecause__PropertyInstancesSpecifySameSubject> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a property class?
<ProxiesOfSubjectIdentifiedBy__Value> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a property class?
<UpdateProxyReferencesIn__Value> function declaration elements
What does this kind of function do?
What happens if I don't specify one of these functions for a property class?
<ConferralRule> function declaration elements
What does this kind of function do?
What happens if I don't specify any of these functions?
Attributes of all function declaration elements
functionModuleFilePath attribute
functionName attribute
functionExtraArgsString attribute
<Desc> elements
Versavant TMA Implementation Functions
Introduction
Function classes and suggested naming conventions
Implementing the support functions for a specialized value type
instance of ValueIsNotOfType__ function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
instance of InstanceOf__ValueTypeToXMLContentString function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
instance of XMLContentStringToInstanceOf__ValueType function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
Implementing the support functions for a specialized property class
instance of Add__PropToOverheadDict function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
instance of Remove__PropFromOverheadDict function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
instance of ValueIsInvalidFor__Property function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
instance of Merge__PropertyValues function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
instance of ValuesOf__PropertyInstancesAreSignificantlyDifferent function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
instance of ContextOf__PropertyIsInvalid function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
instance of MergeProxiesBecause__PropertyInstancesSpecifySameSubject function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
instance of ProxiesOfSubjectIdentifiedBy__Value function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
instance of UpdateProxyReferencesIn__Value function class
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
Implementing a conferral rule function
Purpose: When and Why does Versavant call this kind of function?
Arguments always passed by Versavant
Requirements for all implementations
Values available for extra arguments in Versavant's calling environment(s)
Examples of TMA implementation functions
Discussions of TMA design philosophies
"Bridging" TMAs
Annex: The Vsys TMA (Versavant's built-in "system TMA" for TMA subjects)
Steven R. Newcomb
Last modified: Tue May 24 12:37:05 EDT 2005