rtm 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README +38 -3
- data/lib/rtm.rb +25 -47
- data/lib/rtm/axes.rb +7 -4
- data/lib/rtm/axes/association.rb +1 -1
- data/lib/rtm/axes/associations.rb +1 -1
- data/lib/rtm/axes/characteristic.rb +1 -1
- data/lib/rtm/axes/characteristics.rb +1 -1
- data/lib/rtm/axes/topic.rb +3 -3
- data/lib/rtm/axes/topics.rb +3 -3
- data/lib/rtm/engine.rb +48 -5
- data/lib/rtm/extensions.rb +58 -8
- data/lib/rtm/io.rb +2 -1
- data/lib/rtm/io/tmapix_from.rb +155 -0
- data/lib/rtm/io/tmapix_to.rb +223 -0
- data/lib/rtm/io/to_hash.rb +79 -41
- data/lib/rtm/io/to_jtm.rb +1 -1
- data/lib/rtm/io/to_rdf.rb +20 -5
- data/lib/rtm/io/to_string.rb +13 -2
- data/lib/rtm/io/to_yaml.rb +39 -11
- data/lib/rtm/navigation.rb +1 -15
- data/lib/rtm/navigation/association/players.rb +1 -1
- data/lib/rtm/navigation/name/characteristics.rb +1 -1
- data/lib/rtm/navigation/occurrence/characteristics.rb +1 -1
- data/lib/rtm/navigation/topic/characteristics.rb +1 -1
- data/lib/rtm/navigation/topic/players.rb +1 -1
- data/lib/rtm/navigation/topic/supertypes.rb +21 -17
- data/lib/rtm/navigation/topic/traverse.rb +1 -1
- data/lib/rtm/navigation/topic/types.rb +6 -4
- data/lib/rtm/psi.rb +6 -0
- data/lib/rtm/sugar.rb +42 -29
- data/lib/rtm/sugar/association/hash_access.rb +3 -3
- data/lib/rtm/sugar/occurrence/dynamic_value.rb +39 -56
- data/lib/rtm/sugar/occurrence/external.rb +53 -0
- data/lib/rtm/sugar/reifiable/reifier.rb +21 -0
- data/lib/rtm/sugar/role/counterparts.rb +12 -6
- data/lib/rtm/sugar/topic/best_name.rb +74 -0
- data/lib/rtm/sugar/topic/characteristics.rb +10 -10
- data/lib/rtm/sugar/topic/counterparts.rb +131 -119
- data/lib/rtm/sugar/topic/scoped.rb +102 -53
- data/lib/rtm/sugar/topic/topic_ref.rb +63 -12
- data/lib/rtm/sugar/topic/typed.rb +50 -2
- data/lib/rtm/sugar/topic_map/query_cache.rb +66 -0
- data/lib/rtm/sugar/topic_map/themes.rb +53 -0
- data/lib/rtm/sugar/typed/types.rb +1 -1
- data/lib/rtm/validation.rb +2 -2
- data/lib/rtm/version.rb +18 -6
- data/spec/rtm/axes/string_spec.rb +7 -7
- data/spec/rtm/axes/strings_spec.rb +10 -10
- data/spec/rtm/io/tmapix_from_spec.rb +76 -0
- data/spec/rtm/io/tmapix_to_spec.rb +159 -0
- data/spec/rtm/io/to_hash_spec.rb +90 -0
- data/spec/rtm/io/to_rdf_spec.rb +37 -0
- data/spec/rtm/io/to_string_spec.rb +122 -0
- data/spec/rtm/io/to_yaml_spec.rb +89 -0
- data/spec/rtm/sugar/occurrence/dynamic_value_spec.rb +156 -1
- data/spec/rtm/sugar/occurrence/external_spec.rb +129 -0
- data/spec/rtm/sugar/reifiable/reifier_spec.rb +41 -0
- data/spec/rtm/sugar/role/counterparts_spec.rb +174 -172
- data/spec/rtm/sugar/topic/best_name_spec.rb +25 -0
- data/spec/rtm/sugar/topic/characteristics_spec.rb +20 -5
- data/spec/rtm/sugar/topic/counterparts_spec.rb +41 -1
- data/spec/rtm/sugar/topic/hash_access_spec.rb +1 -1
- data/spec/rtm/sugar/topic/scoped_spec.rb +178 -114
- data/spec/rtm/sugar/topic/topic_ref_spec.rb +10 -10
- data/spec/rtm/sugar/topic/typed_spec.rb +196 -134
- data/spec/rtm/sugar/topic_map/themes_spec.rb +67 -0
- data/spec/rtm/sugar/typed/types_spec.rb +1 -1
- data/spec/rtm/tmapi/core/association_spec.rb +2 -2
- data/spec/rtm/tmapi/core/datatype_aware_spec.rb +236 -0
- data/spec/rtm/tmapi/core/name_spec.rb +186 -1
- data/spec/rtm/tmapi/core/occurrence_spec.rb +24 -67
- data/spec/rtm/tmapi/core/reifiable_spec.rb +2 -2
- data/spec/rtm/tmapi/core/scoped_spec.rb +40 -2
- data/spec/rtm/tmapi/core/topic_map_spec.rb +98 -30
- data/spec/rtm/tmapi/core/topic_spec.rb +558 -82
- data/spec/rtm/tmapi/core/variant_spec.rb +3 -3
- data/spec/rtm_spec.rb +0 -1
- data/spec/spec_helper.rb +7 -2
- data/test/javalibs/junit-4.5.jar +0 -0
- data/test/javalibs/tmapi-2.0-tests.jar +0 -0
- data/test/tmapi_tests.rb +25 -0
- metadata +66 -11
- data/lib/rtm/io/ontopia_io.rb +0 -25
- data/lib/rtm/io/tmapix.rb +0 -234
- data/lib/rtm/sugar/occurrence/externalize.rb +0 -31
- data/spec/rtm/io/tmapix_spec.rb +0 -85
- data/test/base_unit_test.rb +0 -161
- data/test/base_unit_test_tmapi.rb +0 -165
data/lib/rtm/io/to_jtm.rb
CHANGED
data/lib/rtm/io/to_rdf.rb
CHANGED
|
@@ -1,21 +1,36 @@
|
|
|
1
1
|
# Copyright: Copyright 2009 Topic Maps Lab, University of Leipzig.
|
|
2
2
|
# License: Apache License, Version 2.0
|
|
3
3
|
|
|
4
|
-
|
|
5
4
|
module RTM::IO
|
|
6
5
|
|
|
7
6
|
# RDF Export.
|
|
8
7
|
# RTM::TopicMap gets a to_rdf method.
|
|
9
|
-
module
|
|
8
|
+
module ToRDF
|
|
10
9
|
module TopicMap
|
|
11
|
-
|
|
10
|
+
|
|
11
|
+
# If this topic map is an Ontopia tmapi2 topic map to_rdf_ontopia is
|
|
12
|
+
# called and the RDF reprensentation is returned.
|
|
13
|
+
#
|
|
14
|
+
# Else, a "Not supported" error is raised.
|
|
15
|
+
#
|
|
16
|
+
# :call-seq:
|
|
17
|
+
# to_rdf -> String
|
|
18
|
+
#
|
|
12
19
|
def to_rdf
|
|
13
20
|
case self
|
|
14
21
|
when net.ontopia.topicmaps.impl.tmapi2.TopicMapImpl then to_rdf_ontopia
|
|
15
22
|
else raise "Not supported for #{self}"
|
|
16
23
|
end
|
|
17
24
|
end
|
|
18
|
-
|
|
25
|
+
|
|
26
|
+
# Returns the RDF representation according to RDF2TM
|
|
27
|
+
# of this topic map as String.
|
|
28
|
+
#
|
|
29
|
+
# @see http://www.ontopia.net/topicmaps/materials/rdf2tm.html
|
|
30
|
+
#
|
|
31
|
+
# :call-seq:
|
|
32
|
+
# to_rdf_ontopia -> String
|
|
33
|
+
#
|
|
19
34
|
def to_rdf_ontopia
|
|
20
35
|
@out = java.io.StringWriter.new
|
|
21
36
|
w=Java::NetOntopiaTopicmapsUtilsRdf::RDFTopicMapWriter.new @out
|
|
@@ -24,7 +39,7 @@ module RTM::IO
|
|
|
24
39
|
end
|
|
25
40
|
end
|
|
26
41
|
|
|
27
|
-
RTM.register_extension self
|
|
42
|
+
RTM.register_extension self
|
|
28
43
|
|
|
29
44
|
end
|
|
30
45
|
end
|
data/lib/rtm/io/to_string.rb
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
module RTM::IO
|
|
5
5
|
# Each Topic Maps Construct gets a custom to_s method which supports optional :short or :long output.
|
|
6
|
-
module
|
|
6
|
+
module ToString
|
|
7
7
|
|
|
8
8
|
module TopicMap
|
|
9
9
|
# Returns different String representations. Try :short (default), :long, :super (original)
|
|
@@ -123,7 +123,18 @@ module RTM::IO
|
|
|
123
123
|
end
|
|
124
124
|
end
|
|
125
125
|
end
|
|
126
|
-
|
|
126
|
+
|
|
127
|
+
module Locator
|
|
128
|
+
def to_s(style=:short)
|
|
129
|
+
case style
|
|
130
|
+
when :short
|
|
131
|
+
value
|
|
132
|
+
when :long
|
|
133
|
+
value
|
|
134
|
+
end
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
|
|
127
138
|
RTM.register_extension( self )
|
|
128
139
|
end
|
|
129
140
|
end
|
data/lib/rtm/io/to_yaml.rb
CHANGED
|
@@ -2,56 +2,84 @@
|
|
|
2
2
|
# License: Apache License, Version 2.0
|
|
3
3
|
|
|
4
4
|
module RTM::IO
|
|
5
|
-
#
|
|
5
|
+
# Yaml Export.
|
|
6
6
|
# Each Topic Maps Construct gets a to_yaml method.
|
|
7
|
-
module
|
|
7
|
+
module ToYAML
|
|
8
8
|
|
|
9
9
|
module TopicMap
|
|
10
|
-
# Returns the YAML representation of this
|
|
10
|
+
# Returns the YAML representation of this topic map as String.
|
|
11
|
+
#
|
|
12
|
+
# :call-seq:
|
|
13
|
+
# to_yaml -> String
|
|
14
|
+
#
|
|
11
15
|
def to_yaml
|
|
12
16
|
to_hash.to_yaml
|
|
13
17
|
end
|
|
14
18
|
end
|
|
15
19
|
|
|
16
20
|
module Topic
|
|
17
|
-
# Returns the YAML representation of this
|
|
21
|
+
# Returns the YAML representation of this topic as String.
|
|
22
|
+
#
|
|
23
|
+
# :call-seq:
|
|
24
|
+
# to_yaml -> String
|
|
25
|
+
#
|
|
18
26
|
def to_yaml
|
|
19
27
|
to_hash.to_yaml
|
|
20
28
|
end
|
|
21
29
|
end
|
|
22
30
|
|
|
23
31
|
module Association
|
|
24
|
-
# Returns the YAML representation of this
|
|
32
|
+
# Returns the YAML representation of this association as String.
|
|
33
|
+
#
|
|
34
|
+
# :call-seq:
|
|
35
|
+
# to_yaml -> String
|
|
36
|
+
#
|
|
25
37
|
def to_yaml
|
|
26
38
|
to_hash.to_yaml
|
|
27
39
|
end
|
|
28
40
|
end
|
|
29
41
|
|
|
30
42
|
module Name
|
|
31
|
-
# Returns the YAML representation of this
|
|
43
|
+
# Returns the YAML representation of this name as String.
|
|
44
|
+
#
|
|
45
|
+
# :call-seq:
|
|
46
|
+
# to_yaml -> String
|
|
47
|
+
#
|
|
32
48
|
def to_yaml
|
|
33
49
|
to_hash.to_yaml
|
|
34
50
|
end
|
|
35
51
|
end
|
|
36
52
|
|
|
37
53
|
module Occurrence
|
|
38
|
-
# Returns the YAML representation of this
|
|
54
|
+
# Returns the YAML representation of this occurrence as String.
|
|
55
|
+
#
|
|
56
|
+
# :call-seq:
|
|
57
|
+
# to_yaml -> String
|
|
58
|
+
#
|
|
39
59
|
def to_yaml
|
|
40
60
|
to_hash.to_yaml
|
|
41
61
|
end
|
|
42
62
|
end
|
|
43
63
|
|
|
44
64
|
module Role
|
|
45
|
-
# Returns the YAML representation of this
|
|
65
|
+
# Returns the YAML representation of this role as String.
|
|
66
|
+
#
|
|
67
|
+
# :call-seq:
|
|
68
|
+
# to_yaml -> String
|
|
69
|
+
#
|
|
46
70
|
def to_yaml
|
|
47
|
-
|
|
71
|
+
to_hash.to_yaml
|
|
48
72
|
end
|
|
49
73
|
end
|
|
50
74
|
|
|
51
75
|
module Variant
|
|
52
|
-
# Returns the YAML representation of this
|
|
76
|
+
# Returns the YAML representation of this variant as String.
|
|
77
|
+
#
|
|
78
|
+
# :call-seq:
|
|
79
|
+
# to_yaml -> String
|
|
80
|
+
#
|
|
53
81
|
def to_yaml
|
|
54
|
-
|
|
82
|
+
to_hash.to_yaml
|
|
55
83
|
end
|
|
56
84
|
end
|
|
57
85
|
|
data/lib/rtm/navigation.rb
CHANGED
|
@@ -20,18 +20,4 @@ require "rtm/navigation/topic/supertypes"
|
|
|
20
20
|
require "rtm/navigation/topic/traverse"
|
|
21
21
|
require "rtm/navigation/topic/types"
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
include RTM::Navigation::Topic
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
module RTM::Name
|
|
28
|
-
include RTM::Navigation::Name
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
module RTM::Occurrence
|
|
32
|
-
include RTM::Navigation::Occurrence
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
module RTM::Association
|
|
36
|
-
include RTM::Navigation::Association
|
|
37
|
-
end
|
|
23
|
+
RTM.register_extension(RTM::Navigation)
|
|
@@ -8,7 +8,7 @@ module RTM
|
|
|
8
8
|
# Returns all players of roles in this association.
|
|
9
9
|
#
|
|
10
10
|
# The optional identifier specifies the type of the roles to be considered.
|
|
11
|
-
# The identifier may be a topic
|
|
11
|
+
# The identifier may be a topic reference.
|
|
12
12
|
#
|
|
13
13
|
# Multiple instances of the same topics are possible.
|
|
14
14
|
#
|
|
@@ -9,7 +9,7 @@ module RTM
|
|
|
9
9
|
# If an identifier is given, only those Names and Occurrences are returned,
|
|
10
10
|
# whose type or supertypes include the identifier.
|
|
11
11
|
#
|
|
12
|
-
# Identifier may be a
|
|
12
|
+
# Identifier may be a topic reference.
|
|
13
13
|
#
|
|
14
14
|
# The result may be empty.
|
|
15
15
|
#
|
|
@@ -9,7 +9,7 @@ module RTM
|
|
|
9
9
|
#
|
|
10
10
|
# The optional
|
|
11
11
|
# identifier specifies the type of the Roles to be considered.
|
|
12
|
-
# The identifier may be a
|
|
12
|
+
# The identifier may be a topic reference.
|
|
13
13
|
#
|
|
14
14
|
# Multiple instances of the same Association are possible.
|
|
15
15
|
# The result may be empty.
|
|
@@ -23,7 +23,7 @@ module RTM
|
|
|
23
23
|
# the player of the supertype-Role. The current Topic will play the
|
|
24
24
|
# subtype-Role. Returns the created Association.
|
|
25
25
|
#
|
|
26
|
-
# Identifier may be a
|
|
26
|
+
# Identifier may be a topic reference.
|
|
27
27
|
#
|
|
28
28
|
# :call-seq:
|
|
29
29
|
# add_supertype(identifier) -> Association
|
|
@@ -40,7 +40,7 @@ module RTM
|
|
|
40
40
|
# the player of a supertype-Role. The current topic will play the
|
|
41
41
|
# subtype-Role in each association. Returns the associations.
|
|
42
42
|
#
|
|
43
|
-
# The
|
|
43
|
+
# The identifiers may be topic references.
|
|
44
44
|
#
|
|
45
45
|
# :call-seq:
|
|
46
46
|
# add_supertypes(identifier1, identifier2, ...) -> Array of Associtions
|
|
@@ -60,13 +60,15 @@ module RTM
|
|
|
60
60
|
# transitive_supertypes -> Array of Topics
|
|
61
61
|
#
|
|
62
62
|
def transitive_supertypes
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
63
|
+
# topic_map.cached self, :transitive_supertypes do
|
|
64
|
+
result_types = new_s_t = direct_supertypes
|
|
65
|
+
until new_s_t.empty?
|
|
66
|
+
new_s_t = new_s_t.map{|s| s.direct_supertypes}.flatten.uniq
|
|
67
|
+
new_s_t = new_s_t.reject{|s| result_types.include?(s)}
|
|
68
|
+
result_types = result_types + new_s_t
|
|
69
|
+
end
|
|
70
|
+
result_types
|
|
71
|
+
# end
|
|
70
72
|
end
|
|
71
73
|
|
|
72
74
|
# Returns all supertypes of this Topic. The result includes the direct_supertypes
|
|
@@ -97,7 +99,7 @@ module RTM
|
|
|
97
99
|
# the player of the subtype-Role. The current Topic will play the
|
|
98
100
|
# supertype-Role. Returns the created Association.
|
|
99
101
|
#
|
|
100
|
-
# Identifier may be
|
|
102
|
+
# Identifier may be topic reference.
|
|
101
103
|
#
|
|
102
104
|
# :call-seq:
|
|
103
105
|
# add_subtype(identifier) -> Association
|
|
@@ -114,7 +116,7 @@ module RTM
|
|
|
114
116
|
# the player of a subtype-Role. The current topic will play the
|
|
115
117
|
# supertype-Role in each association. Returns the associations.
|
|
116
118
|
#
|
|
117
|
-
# The
|
|
119
|
+
# The identifiers may be topic references.
|
|
118
120
|
#
|
|
119
121
|
# :call-seq:
|
|
120
122
|
# add_subtypes(identifier1, identifier2, ...) -> Array of Associtions
|
|
@@ -133,13 +135,15 @@ module RTM
|
|
|
133
135
|
# transitive_subtypes -> Array of Topics
|
|
134
136
|
#
|
|
135
137
|
def transitive_subtypes
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
138
|
+
topic_map.cached self, :transitive_subtypes do
|
|
139
|
+
result_types = new_s_t = direct_subtypes
|
|
140
|
+
until new_s_t.empty?
|
|
141
|
+
new_s_t = new_s_t.map{|s| s.direct_subtypes}.flatten.uniq
|
|
142
|
+
new_s_t = new_s_t.reject{|s| result_types.include?(s)}
|
|
143
|
+
result_types = result_types + new_s_t
|
|
144
|
+
end
|
|
145
|
+
result_types
|
|
141
146
|
end
|
|
142
|
-
return result_types
|
|
143
147
|
end
|
|
144
148
|
|
|
145
149
|
# Returns all subtypes of this Topic. The result includes the direct_subtypes
|
|
@@ -12,7 +12,7 @@ module RTM
|
|
|
12
12
|
# The current Topic is not included in the result.
|
|
13
13
|
# The result may be empty.
|
|
14
14
|
#
|
|
15
|
-
# The identifier may be a
|
|
15
|
+
# The identifier may be a topic reference.
|
|
16
16
|
#
|
|
17
17
|
# :call-seq:
|
|
18
18
|
# traverse(identifier) -> Array of Topics
|
|
@@ -27,8 +27,9 @@ module RTM
|
|
|
27
27
|
# type -> Topic or nil
|
|
28
28
|
#
|
|
29
29
|
def type
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
_types = types
|
|
31
|
+
raise "Topic must have exactly one type to call the type-method. Use the types-method instead." unless _types.size < 2
|
|
32
|
+
_types.size == 1 ? _types.to_a.first : nil
|
|
32
33
|
end
|
|
33
34
|
|
|
34
35
|
# Returns the topics which are instances of this topic.
|
|
@@ -52,8 +53,9 @@ module RTM
|
|
|
52
53
|
# instance -> Topic
|
|
53
54
|
#
|
|
54
55
|
def instance
|
|
55
|
-
|
|
56
|
-
|
|
56
|
+
_instances = instances
|
|
57
|
+
raise "Topic must have exactly one instance to call the instance-method. Use the instances-method instead." unless _instances.size < 2
|
|
58
|
+
_instances.size == 1 ? _instances.to_a.first : nil
|
|
57
59
|
end
|
|
58
60
|
|
|
59
61
|
alias :reverse_types :instances
|
data/lib/rtm/psi.rb
CHANGED
|
@@ -29,6 +29,9 @@ module RTM
|
|
|
29
29
|
PSI[:Integer] = "http://www.w3.org/2001/XMLSchema#integer"
|
|
30
30
|
PSI[:Int] = "http://www.w3.org/2001/XMLSchema#int"
|
|
31
31
|
PSI[:Decimal] = "http://www.w3.org/2001/XMLSchema#decimal"
|
|
32
|
+
PSI[:Date] = "http://www.w3.org/2001/XMLSchema#date"
|
|
33
|
+
PSI[:DateTime] = "http://www.w3.org/2001/XMLSchema#dateTime"
|
|
34
|
+
PSI[:Time] = "http://www.w3.org/2001/XMLSchema#time"
|
|
32
35
|
|
|
33
36
|
PSI[:XTM] = "http://psi.topicmaps.org/iso13250/glossary/XTM"
|
|
34
37
|
PSI[:association] = "http://psi.topicmaps.org/iso13250/glossary/association"
|
|
@@ -62,6 +65,9 @@ module RTM
|
|
|
62
65
|
PSI[:variant] = "http://psi.topicmaps.org/iso13250/glossary/variant-name"
|
|
63
66
|
PSI[:variant_name] = "http://psi.topicmaps.org/iso13250/glossary/variant-name"
|
|
64
67
|
|
|
68
|
+
PSI[:subject_representation] = "http://psi.topicmapslab.de/subject-representation"
|
|
69
|
+
PSI[:represented_subject] = "http://psi.topicmapslab.de/represented-subject"
|
|
70
|
+
|
|
65
71
|
# languages
|
|
66
72
|
# PSI[:] = "http://psi.oasis-open.org/iso/639/#"
|
|
67
73
|
PSI[:language] = "http://psi.oasis-open.org/iso/639/#language"
|
data/lib/rtm/sugar.rb
CHANGED
|
@@ -1,34 +1,47 @@
|
|
|
1
1
|
# Copyright: Copyright 2009 Topic Maps Lab, University of Leipzig.
|
|
2
2
|
# License: Apache License, Version 2.0
|
|
3
3
|
|
|
4
|
-
module RTM::
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
4
|
+
module RTM::Sugar;end
|
|
5
|
+
|
|
6
|
+
require 'rtm/sugar/topic/topic_ref'
|
|
7
|
+
require 'rtm/sugar/topic/hash_access'
|
|
8
|
+
require 'rtm/sugar/topic/characteristics'
|
|
9
|
+
require 'rtm/sugar/topic/counterparts'
|
|
10
|
+
require 'rtm/sugar/topic/scoped'
|
|
11
|
+
require 'rtm/sugar/topic/typed'
|
|
12
|
+
require 'rtm/sugar/topic/best_name'
|
|
13
|
+
RTM::Topic.register_extension(RTM::Sugar::Topic::TopicRef)
|
|
14
|
+
RTM::Topic.register_extension(RTM::Sugar::Topic::HashAccess)
|
|
15
|
+
RTM::Topic.register_extension(RTM::Sugar::Topic::Characteristics)
|
|
16
|
+
RTM::Topic.register_extension(RTM::Sugar::Topic::Counterparts)
|
|
17
|
+
RTM::Topic.register_extension(RTM::Sugar::Topic::Scoped)
|
|
18
|
+
RTM::Topic.register_extension(RTM::Sugar::Topic::Typed)
|
|
19
|
+
RTM::Topic.register_extension(RTM::Sugar::Topic::BestName)
|
|
20
|
+
|
|
21
|
+
require "rtm/sugar/association/hash_access"
|
|
22
|
+
RTM::Association.register_extension(RTM::Sugar::Association::HashAccess)
|
|
23
|
+
|
|
24
|
+
require "rtm/sugar/role/counterparts"
|
|
25
|
+
RTM::Role.register_extension(RTM::Sugar::Role::Counterparts)
|
|
26
|
+
|
|
27
|
+
require "time"
|
|
28
|
+
require "rtm/sugar/occurrence/dynamic_value"
|
|
29
|
+
require "rtm/sugar/occurrence/external"
|
|
30
|
+
RTM::Occurrence.register_extension(RTM::Sugar::Occurrence::DynamicValue)
|
|
31
|
+
RTM::Occurrence.register_extension(RTM::Sugar::Occurrence::External)
|
|
32
|
+
|
|
33
|
+
require "rtm/sugar/typed/types"
|
|
34
|
+
RTM::Typed.register_extension(RTM::Sugar::Typed::Types)
|
|
35
|
+
|
|
36
|
+
require 'rtm/sugar/reifiable/reifier'
|
|
37
|
+
RTM::Reifiable.register_extension(RTM::Sugar::Reifiable::CreateReifier)
|
|
38
|
+
|
|
39
|
+
require 'rtm/sugar/topic_map/query_cache'
|
|
40
|
+
require 'rtm/sugar/topic_map/themes'
|
|
41
|
+
module RTM::TopicMap
|
|
42
|
+
include RTM::Reifiable
|
|
43
|
+
@query_cache = nil #disables query caching
|
|
33
44
|
end
|
|
45
|
+
RTM::TopicMap.register_extension(RTM::Sugar::TopicMap::QueryCache)
|
|
46
|
+
RTM::TopicMap.register_extension(RTM::Sugar::TopicMap::Themes)
|
|
34
47
|
|