//
var top1,oc,sc,a1
var map=new topicMap('tm-team-bombers')

// ============ Base Types ============
add_topic(map,'tt-topicmap','Topic Map Type')
add_topic(map,'tt-person','Person Type')
add_topic(map,'tt-team','Team Type')
add_topic(map,'tt-org','Org Type','')
add_topic(map,'tt-assoc','Association Type')
add_topic(map,'tt-role','Role Type')
add_topic(map,'tt-occur','Occurrence Type')
add_topic(map,'tt-scope','Scope Type')

// ============ Role topics ============
add_topic(map,'rt-team','role: team','tt-role')
add_topic(map,'rt-player','role: player','tt-role')
add_topic(map,'rt-coach','role: coach','tt-role')
add_topic(map,'rt-sponsor','role: sponsor','tt-role')
add_topic(map,'rt-caterer','role: caterer','tt-role')

// ============ Occurrence topics ============
add_topic(map,'ot-comment','Comment','tt-occur')
add_topic(map,'ot-email','Email address','tt-occur')
add_topic(map,'ot-homepage','Home page','tt-occur')
add_topic(map,'ot-about','About','tt-occur')

// ============ Scope topics ============
add_topic(map,'st-email','Email','tt-scope')
add_topic(map,'st-person','People','tt-scope')
add_topic(map,'st-coach','Coaches','tt-scope')
add_topic(map,'st-team','Teams','tt-scope')
add_topic(map,'st-player','Players','tt-scope')
add_topic(map,'st-team-assoc','Team Information',
	'tt-scope')
add_topic(map,'st-topicmap','Topic Maps','tt-scope')


// ============ Instance topics ============
add_topic(map,'t-bombersmap','Bombers Topic Map',
	'tt-topicmap')
add_topic(map,'t-bob','Bob','tt-person')
add_topic(map,'t-john','John','tt-person')
add_topic(map,'t-red','Red','tt-person')
add_topic(map,'t-zips',"Zip's",'tt-org')
add_topic(map,'t-bombers','Bombers','tt-team')

// ============ Association type topics =======
add_topic(map,'at-team','Team Association Type',
	'tt-assoc')

// ============ Associations ========
a1=new association('a-team-1')
a1.instanceOf='at-team'
mem=new member('rt-player')
mem.addPlayer(map.getTopicById('t-john'))
mem.addPlayer(map.getTopicById('t-red'))
a1.addMember(mem)

mem=new member('rt-coach')
mem.addPlayer(map.getTopicById('t-bob'))
a1.addMember(mem)

mem=new member('rt-team')
mem.addPlayer(map.getTopicById('t-bombers'))
a1.addMember(mem)

mem=new member('rt-sponsor')
mem.addPlayer(map.getTopicById('t-zips'))
a1.addMember(mem)

a1.addScope(new scope('st-team-assoc'))

map.addAssoc(a1)

// ============ Occurrences =======
oc=new occur()
oc.instanceOf='ot-comment'
oc.data='Bob is a pretty good coach'

top1=map.getTopicById('t-bob')
if (top1){top1.addOccur(oc)}

oc=new occur()
oc.instanceOf='ot-email'
oc.data='john@bombers.com'

top1=map.getTopicById('t-john')
if (top1){top1.addOccur(oc)}

oc=new occur()
oc.resourceRef='http://www.bombers.com'
oc.instanceOf='ot-homepage'

top1=map.getTopicById('t-bombers')
if (top1){top1.addOccur(oc)}

oc=new occur()
oc.data='fans@bombers.com'
oc.instanceOf='ot-email'
sc=new scope('st-email')
oc.addScope(sc)
if (top1){top1.addOccur(oc)}

oc=new occur()
oc.instanceOf='ot-comment'
oc.data='The leading Zingo team in the North-central \
part of the country today.'
if (top1){top1.addOccur(oc)}

oc=new occur()
oc.instanceOf='ot-about'
oc.data=
'This Bombers Topic Map illustrates some key features \
 of topic maps. In this simplified example, the list \
 of topics can be filtered by any single scope.

\ \ Scopes that are actually applied (to names, occurrences,\ or associations) are listed, to be used for filtering. \

\ You can choose to see instances or occurrences of a \ selected topic, or the associations in which it plays \ some role. However, filtering by scopes hasn\'t been \ applied to the display of associations and occurrences. \ This feature could be added without much trouble.' top1=map.getTopicById('t-bombersmap') if (top1){top1.addOccur(oc)} // ============ Add scopes to names ============== top1=map.getTopicById('tt-person') top1.nameList[0].addScope(new scope('st-person')) top1=map.getTopicById('t-bob') top1.nameList[0].addScope(new scope('st-person')) top1.nameList[0].addScope(new scope('st-coach')) top1=map.getTopicById('t-john') top1.nameList[0].addScope(new scope('st-person')) top1.nameList[0].addScope(new scope('st-player')) top1=map.getTopicById('t-red') top1.nameList[0].addScope(new scope('st-person')) top1.nameList[0].addScope(new scope('st-player')) top1=map.getTopicById('t-bombers') top1.nameList[0].addScope(new scope('st-team')) top1=map.getTopicById('t-bombersmap') top1.nameList[0].addScope(new scope('st-topicmap')) //