activefacts 1.6.0 → 1.7.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.
- checksums.yaml +4 -4
- data/.gitignore +14 -0
- data/.rspec +2 -0
- data/.travis.yml +4 -0
- data/Gemfile +14 -0
- data/LICENSE.txt +21 -0
- data/README.md +60 -0
- data/Rakefile +3 -80
- data/activefacts.gemspec +36 -0
- data/bin/afgen +4 -2
- data/bin/cql +5 -1
- data/lib/activefacts.rb +3 -12
- data/lib/activefacts/{vocabulary/query_evaluator.rb → query/evaluator.rb} +0 -0
- data/lib/activefacts/version.rb +2 -2
- metadata +48 -296
- data/History.txt +0 -4
- data/LICENSE +0 -19
- data/Manifest.txt +0 -165
- data/README.rdoc +0 -81
- data/css/offline.css +0 -3
- data/css/orm2.css +0 -124
- data/css/print.css +0 -8
- data/css/style-print.css +0 -357
- data/css/style.css +0 -387
- data/download.html +0 -110
- data/examples/CQL/Address.cql +0 -44
- data/examples/CQL/Blog.cql +0 -54
- data/examples/CQL/CompanyDirectorEmployee.cql +0 -56
- data/examples/CQL/Death.cql +0 -17
- data/examples/CQL/Diplomacy.cql +0 -48
- data/examples/CQL/Genealogy.cql +0 -98
- data/examples/CQL/Insurance.cql +0 -320
- data/examples/CQL/Marriage.cql +0 -18
- data/examples/CQL/Metamodel.cql +0 -493
- data/examples/CQL/Monogamy.cql +0 -24
- data/examples/CQL/MultiInheritance.cql +0 -22
- data/examples/CQL/NonRoleId.cql +0 -14
- data/examples/CQL/OddIdentifier.cql +0 -18
- data/examples/CQL/OilSupply.cql +0 -53
- data/examples/CQL/OneToOnes.cql +0 -17
- data/examples/CQL/Orienteering.cql +0 -111
- data/examples/CQL/PersonPlaysGame.cql +0 -18
- data/examples/CQL/RedundantDependency.cql +0 -34
- data/examples/CQL/SchoolActivities.cql +0 -33
- data/examples/CQL/SeparateSubtype.cql +0 -30
- data/examples/CQL/ServiceDirector.cql +0 -276
- data/examples/CQL/SimplestUnary.cql +0 -12
- data/examples/CQL/Supervision.cql +0 -34
- data/examples/CQL/WaiterTips.cql +0 -33
- data/examples/CQL/Warehousing.cql +0 -101
- data/examples/CQL/WindowInRoomInBldg.cql +0 -28
- data/examples/CQL/unit.cql +0 -474
- data/examples/index.html +0 -420
- data/examples/intro.html +0 -327
- data/examples/local.css +0 -24
- data/index.html +0 -111
- data/lib/activefacts/cql.rb +0 -35
- data/lib/activefacts/cql/CQLParser.treetop +0 -158
- data/lib/activefacts/cql/Context.treetop +0 -48
- data/lib/activefacts/cql/Expressions.treetop +0 -67
- data/lib/activefacts/cql/FactTypes.treetop +0 -358
- data/lib/activefacts/cql/Language/English.treetop +0 -315
- data/lib/activefacts/cql/LexicalRules.treetop +0 -253
- data/lib/activefacts/cql/ObjectTypes.treetop +0 -210
- data/lib/activefacts/cql/Rakefile +0 -14
- data/lib/activefacts/cql/Terms.treetop +0 -183
- data/lib/activefacts/cql/ValueTypes.treetop +0 -202
- data/lib/activefacts/cql/compiler.rb +0 -156
- data/lib/activefacts/cql/compiler/clause.rb +0 -1137
- data/lib/activefacts/cql/compiler/constraint.rb +0 -581
- data/lib/activefacts/cql/compiler/entity_type.rb +0 -457
- data/lib/activefacts/cql/compiler/expression.rb +0 -443
- data/lib/activefacts/cql/compiler/fact.rb +0 -390
- data/lib/activefacts/cql/compiler/fact_type.rb +0 -421
- data/lib/activefacts/cql/compiler/query.rb +0 -106
- data/lib/activefacts/cql/compiler/shared.rb +0 -161
- data/lib/activefacts/cql/compiler/value_type.rb +0 -174
- data/lib/activefacts/cql/nodes.rb +0 -49
- data/lib/activefacts/cql/parser.rb +0 -241
- data/lib/activefacts/dependency_analyser.rb +0 -182
- data/lib/activefacts/generate/absorption.rb +0 -70
- data/lib/activefacts/generate/composition.rb +0 -118
- data/lib/activefacts/generate/cql.rb +0 -714
- data/lib/activefacts/generate/dm.rb +0 -279
- data/lib/activefacts/generate/help.rb +0 -64
- data/lib/activefacts/generate/helpers/inject.rb +0 -16
- data/lib/activefacts/generate/helpers/oo.rb +0 -162
- data/lib/activefacts/generate/helpers/ordered.rb +0 -605
- data/lib/activefacts/generate/helpers/rails.rb +0 -57
- data/lib/activefacts/generate/html/glossary.rb +0 -461
- data/lib/activefacts/generate/json.rb +0 -337
- data/lib/activefacts/generate/null.rb +0 -32
- data/lib/activefacts/generate/rails/models.rb +0 -246
- data/lib/activefacts/generate/rails/schema.rb +0 -216
- data/lib/activefacts/generate/records.rb +0 -46
- data/lib/activefacts/generate/ruby.rb +0 -133
- data/lib/activefacts/generate/sql/mysql.rb +0 -280
- data/lib/activefacts/generate/sql/server.rb +0 -273
- data/lib/activefacts/generate/stats.rb +0 -69
- data/lib/activefacts/generate/text.rb +0 -27
- data/lib/activefacts/generate/topics.rb +0 -265
- data/lib/activefacts/generate/traits/datavault.rb +0 -241
- data/lib/activefacts/generate/traits/oo.rb +0 -73
- data/lib/activefacts/generate/traits/ordered.rb +0 -33
- data/lib/activefacts/generate/traits/ruby.rb +0 -210
- data/lib/activefacts/generate/transform/datavault.rb +0 -266
- data/lib/activefacts/generate/transform/surrogate.rb +0 -214
- data/lib/activefacts/generate/version.rb +0 -26
- data/lib/activefacts/input/cql.rb +0 -43
- data/lib/activefacts/input/orm.rb +0 -1636
- data/lib/activefacts/mapping/rails.rb +0 -132
- data/lib/activefacts/persistence.rb +0 -15
- data/lib/activefacts/persistence/columns.rb +0 -446
- data/lib/activefacts/persistence/foreignkey.rb +0 -187
- data/lib/activefacts/persistence/index.rb +0 -240
- data/lib/activefacts/persistence/object_type.rb +0 -198
- data/lib/activefacts/persistence/reference.rb +0 -434
- data/lib/activefacts/persistence/tables.rb +0 -380
- data/lib/activefacts/registry.rb +0 -11
- data/lib/activefacts/support.rb +0 -132
- data/lib/activefacts/vocabulary.rb +0 -9
- data/lib/activefacts/vocabulary/extensions.rb +0 -1348
- data/lib/activefacts/vocabulary/metamodel.rb +0 -570
- data/lib/activefacts/vocabulary/verbaliser.rb +0 -804
- data/script/txt2html +0 -71
- data/spec/absorption_spec.rb +0 -95
- data/spec/cql/comparison_spec.rb +0 -89
- data/spec/cql/context_spec.rb +0 -94
- data/spec/cql/contractions_spec.rb +0 -224
- data/spec/cql/deontic_spec.rb +0 -88
- data/spec/cql/entity_type_spec.rb +0 -320
- data/spec/cql/expressions_spec.rb +0 -66
- data/spec/cql/fact_type_matching_spec.rb +0 -338
- data/spec/cql/french_spec.rb +0 -21
- data/spec/cql/parser/bad_literals_spec.rb +0 -86
- data/spec/cql/parser/constraints_spec.rb +0 -19
- data/spec/cql/parser/entity_types_spec.rb +0 -106
- data/spec/cql/parser/expressions_spec.rb +0 -199
- data/spec/cql/parser/fact_types_spec.rb +0 -44
- data/spec/cql/parser/literals_spec.rb +0 -312
- data/spec/cql/parser/pragmas_spec.rb +0 -89
- data/spec/cql/parser/value_types_spec.rb +0 -42
- data/spec/cql/role_matching_spec.rb +0 -148
- data/spec/cql/samples_spec.rb +0 -244
- data/spec/cql_cql_spec.rb +0 -73
- data/spec/cql_dm_spec.rb +0 -136
- data/spec/cql_mysql_spec.rb +0 -69
- data/spec/cql_parse_spec.rb +0 -34
- data/spec/cql_ruby_spec.rb +0 -73
- data/spec/cql_sql_spec.rb +0 -72
- data/spec/cql_symbol_tables_spec.rb +0 -261
- data/spec/cqldump_spec.rb +0 -170
- data/spec/helpers/array_matcher.rb +0 -23
- data/spec/helpers/ctrl_c_support.rb +0 -52
- data/spec/helpers/diff_matcher.rb +0 -39
- data/spec/helpers/file_matcher.rb +0 -34
- data/spec/helpers/parse_to_ast_matcher.rb +0 -80
- data/spec/helpers/string_matcher.rb +0 -30
- data/spec/helpers/test_parser.rb +0 -15
- data/spec/norma_cql_spec.rb +0 -66
- data/spec/norma_ruby_spec.rb +0 -62
- data/spec/norma_ruby_sql_spec.rb +0 -107
- data/spec/norma_sql_spec.rb +0 -57
- data/spec/norma_tables_spec.rb +0 -95
- data/spec/ruby_api_spec.rb +0 -23
- data/spec/spec_helper.rb +0 -35
- data/spec/transform_surrogate_spec.rb +0 -59
- data/status.html +0 -138
- data/why.html +0 -60
data/css/style.css
DELETED
|
@@ -1,387 +0,0 @@
|
|
|
1
|
-
body
|
|
2
|
-
{
|
|
3
|
-
color : #000000;
|
|
4
|
-
background-color : #FFFFFF;
|
|
5
|
-
line-height : 1.5em;
|
|
6
|
-
font-family : Calibri, Verdana, sans-serif;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
/* emphasis */
|
|
10
|
-
|
|
11
|
-
em,
|
|
12
|
-
blockquote
|
|
13
|
-
{
|
|
14
|
-
font-family : Cambria, Georgia, serif;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
/* headings */
|
|
18
|
-
|
|
19
|
-
h1,
|
|
20
|
-
h2,
|
|
21
|
-
h3,
|
|
22
|
-
h4,
|
|
23
|
-
h5,
|
|
24
|
-
h6,
|
|
25
|
-
.title
|
|
26
|
-
{
|
|
27
|
-
font-weight : lighter;
|
|
28
|
-
font-family : Constantia, "Book Antiqua", "URW Bookman L", serif;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
#lof h1,
|
|
32
|
-
#lof h2,
|
|
33
|
-
#lof h3,
|
|
34
|
-
#lof h4,
|
|
35
|
-
#lof h5,
|
|
36
|
-
#lof h6
|
|
37
|
-
{
|
|
38
|
-
margin-top : 1.25em;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
#content h1,
|
|
42
|
-
#content h2,
|
|
43
|
-
#content h3,
|
|
44
|
-
#content h4,
|
|
45
|
-
#content h5,
|
|
46
|
-
#content h6
|
|
47
|
-
{
|
|
48
|
-
margin-top : 2.5em;
|
|
49
|
-
line-height : 1.25em;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
#content h1
|
|
53
|
-
{
|
|
54
|
-
font-size : 2.0em;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
#content h2
|
|
58
|
-
{
|
|
59
|
-
font-size : 1.8em;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
#content h3
|
|
63
|
-
{
|
|
64
|
-
font-size : 1.6em;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
#content h4
|
|
68
|
-
{
|
|
69
|
-
font-size : 1.4em;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
#content h5
|
|
73
|
-
{
|
|
74
|
-
font-size : 1.2em;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
#content h6
|
|
78
|
-
{
|
|
79
|
-
font-size : 1.0em;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
/* tables */
|
|
83
|
-
|
|
84
|
-
table
|
|
85
|
-
{
|
|
86
|
-
border : none;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
th,
|
|
90
|
-
td
|
|
91
|
-
{
|
|
92
|
-
padding : 1em;
|
|
93
|
-
border : 1px solid #C0C0C0;
|
|
94
|
-
vertical-align : top;
|
|
95
|
-
background-color : #FFFFFF;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
th
|
|
99
|
-
{
|
|
100
|
-
background-color : #F5F5F5;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
table
|
|
104
|
-
{
|
|
105
|
-
margin : auto;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
/* document structure */
|
|
109
|
-
|
|
110
|
-
#header
|
|
111
|
-
{
|
|
112
|
-
margin-bottom : 5em;
|
|
113
|
-
text-align : center;
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
#abstract
|
|
117
|
-
{
|
|
118
|
-
margin-bottom : 5em;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
#toc li
|
|
122
|
-
{
|
|
123
|
-
list-style-type : none;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
#toc li ul
|
|
127
|
-
{
|
|
128
|
-
padding-bottom : 1em;
|
|
129
|
-
border-left : thick solid #F5F5F5;
|
|
130
|
-
_border-left : none; /* for IE6 */
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
#toc li ul:hover
|
|
134
|
-
{
|
|
135
|
-
border-color : #DCDCDC;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
#toc > ul
|
|
139
|
-
{
|
|
140
|
-
padding-left : 1em;
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
#references
|
|
144
|
-
{
|
|
145
|
-
margin-top : 5em;
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
#footer
|
|
149
|
-
{
|
|
150
|
-
border-top : thick dotted #DCDCDC;
|
|
151
|
-
padding-top : 1em;
|
|
152
|
-
margin-top : 5em;
|
|
153
|
-
text-align : center;
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
/* document nodes */
|
|
157
|
-
|
|
158
|
-
.part > .title,
|
|
159
|
-
.chapter > .title
|
|
160
|
-
{
|
|
161
|
-
padding-bottom : 0.5em;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
.part > .title > big,
|
|
165
|
-
.chapter > .title > big
|
|
166
|
-
{
|
|
167
|
-
display : block;
|
|
168
|
-
margin-top : 1.5em;
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
.part .title big,
|
|
172
|
-
.chapter .title big
|
|
173
|
-
{
|
|
174
|
-
_display : block; /* for IE6 */
|
|
175
|
-
_margin-top : 0.25em; /* for IE6 */
|
|
176
|
-
_margin-bottom : 0.75em; /* for IE6 */
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
.index
|
|
180
|
-
{
|
|
181
|
-
font-size: 0.9em;
|
|
182
|
-
line-height: 1.2em;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
.index ul
|
|
186
|
-
{
|
|
187
|
-
margin: 4px;
|
|
188
|
-
font-size: 0.9em;
|
|
189
|
-
line-height: 1em;
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
.paragraph > .title,
|
|
193
|
-
.tip > .title,
|
|
194
|
-
.note > .title,
|
|
195
|
-
.caution > .title,
|
|
196
|
-
.warning > .title,
|
|
197
|
-
.important > .title,
|
|
198
|
-
.figure > .title,
|
|
199
|
-
.table > .title,
|
|
200
|
-
.example > .title,
|
|
201
|
-
.equation > .title,
|
|
202
|
-
.procedure > .title
|
|
203
|
-
{
|
|
204
|
-
font-size : large;
|
|
205
|
-
margin-top : 2em;
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
.paragraph .title,
|
|
209
|
-
.tip .title,
|
|
210
|
-
.note .title,
|
|
211
|
-
.caution .title,
|
|
212
|
-
.warning .title,
|
|
213
|
-
.important .title,
|
|
214
|
-
.figure .title,
|
|
215
|
-
.table .title,
|
|
216
|
-
.example .title,
|
|
217
|
-
.equation .title,
|
|
218
|
-
.procedure .title
|
|
219
|
-
{
|
|
220
|
-
_font-size : large; /* for IE6 */
|
|
221
|
-
_font-weight : bold; /* large is not bold in IE6 */
|
|
222
|
-
_margin-top : 2em; /* for IE6 */
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
.tip ,
|
|
226
|
-
.note ,
|
|
227
|
-
.caution ,
|
|
228
|
-
.warning ,
|
|
229
|
-
.important,
|
|
230
|
-
.figure ,
|
|
231
|
-
.table ,
|
|
232
|
-
.example ,
|
|
233
|
-
.equation ,
|
|
234
|
-
.procedure
|
|
235
|
-
{
|
|
236
|
-
margin : 3em;
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
.tip > .icon,
|
|
240
|
-
.note > .icon,
|
|
241
|
-
.caution > .icon,
|
|
242
|
-
.warning > .icon,
|
|
243
|
-
.important > .icon
|
|
244
|
-
{
|
|
245
|
-
float : left;
|
|
246
|
-
margin : 0 1em 1em 0; /* top right bottom left */
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
.tip .icon,
|
|
250
|
-
.note .icon,
|
|
251
|
-
.caution .icon,
|
|
252
|
-
.warning .icon,
|
|
253
|
-
.important .icon
|
|
254
|
-
{
|
|
255
|
-
_display : none; /* IE6 cannot display embedded images */
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
.figure > .title
|
|
259
|
-
{
|
|
260
|
-
text-align : center;
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
.figure .title
|
|
264
|
-
{
|
|
265
|
-
_text-align : center; /* for IE6 */
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
.figure > .content > img
|
|
269
|
-
{
|
|
270
|
-
display : block;
|
|
271
|
-
margin : auto;
|
|
272
|
-
}
|
|
273
|
-
|
|
274
|
-
.figure .content img
|
|
275
|
-
{
|
|
276
|
-
_display : block; /* for IE6 */
|
|
277
|
-
_margin : auto; /* for IE6 */
|
|
278
|
-
}
|
|
279
|
-
|
|
280
|
-
body
|
|
281
|
-
{
|
|
282
|
-
margin : auto;
|
|
283
|
-
padding : 0.5em;
|
|
284
|
-
XXmax-width : 40em;
|
|
285
|
-
max-width : 70%;
|
|
286
|
-
}
|
|
287
|
-
|
|
288
|
-
/* hyperlinks */
|
|
289
|
-
|
|
290
|
-
a
|
|
291
|
-
{
|
|
292
|
-
color : #0000FF;
|
|
293
|
-
text-decoration : none;
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
a:visited
|
|
297
|
-
{
|
|
298
|
-
color : #800080;
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
a:hover
|
|
302
|
-
{
|
|
303
|
-
color : #FF0000;
|
|
304
|
-
text-decoration : underline;
|
|
305
|
-
}
|
|
306
|
-
|
|
307
|
-
a:target
|
|
308
|
-
{
|
|
309
|
-
color : #FF0000;
|
|
310
|
-
text-decoration : underline;
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
a.toc:link,
|
|
314
|
-
a.toc:visited
|
|
315
|
-
{
|
|
316
|
-
text-decoration : none;
|
|
317
|
-
z-index : 1;
|
|
318
|
-
}
|
|
319
|
-
|
|
320
|
-
a img
|
|
321
|
-
{
|
|
322
|
-
border : none;
|
|
323
|
-
}
|
|
324
|
-
|
|
325
|
-
/* source code */
|
|
326
|
-
|
|
327
|
-
tt,
|
|
328
|
-
code,
|
|
329
|
-
pre
|
|
330
|
-
{
|
|
331
|
-
font-family : monospace;
|
|
332
|
-
}
|
|
333
|
-
|
|
334
|
-
tt
|
|
335
|
-
{
|
|
336
|
-
font-weight : bold;
|
|
337
|
-
/* color : #A52A2A; */
|
|
338
|
-
/* background-color : #FFFAF0; */
|
|
339
|
-
}
|
|
340
|
-
|
|
341
|
-
/* output of syntax colorizer */
|
|
342
|
-
.code
|
|
343
|
-
{
|
|
344
|
-
background-color : #FFFFF0;
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
pre
|
|
348
|
-
{
|
|
349
|
-
line-height : normal;
|
|
350
|
-
border : 1px dashed #C0C0C0;
|
|
351
|
-
background-color : #F5FFDF;
|
|
352
|
-
padding : 1em;
|
|
353
|
-
overflow : auto;
|
|
354
|
-
cursor : text;
|
|
355
|
-
}
|
|
356
|
-
|
|
357
|
-
/*
|
|
358
|
-
pre:hover
|
|
359
|
-
{
|
|
360
|
-
border : none;
|
|
361
|
-
position : fixed;
|
|
362
|
-
z-index : 1;
|
|
363
|
-
margin : 0;
|
|
364
|
-
top : 0;
|
|
365
|
-
left : 0;
|
|
366
|
-
right : 0;
|
|
367
|
-
bottom : 0;
|
|
368
|
-
overflow : auto;
|
|
369
|
-
cursor : text;
|
|
370
|
-
}
|
|
371
|
-
*/
|
|
372
|
-
|
|
373
|
-
/* emphasis */
|
|
374
|
-
|
|
375
|
-
blockquote
|
|
376
|
-
{
|
|
377
|
-
margin : 1em;
|
|
378
|
-
border : 5px dotted #C0C0C0;
|
|
379
|
-
padding : 1em;
|
|
380
|
-
color : #444;
|
|
381
|
-
}
|
|
382
|
-
|
|
383
|
-
hr
|
|
384
|
-
{
|
|
385
|
-
color : #FF0000; /* for IE6 */
|
|
386
|
-
background-color : #FF0000; /* for Firefox */
|
|
387
|
-
}
|
data/download.html
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
<!--#include virtual="/header.html" -->
|
|
2
|
-
<!--#include virtual="navbar.html" -->
|
|
3
|
-
|
|
4
|
-
<link rel="stylesheet" href="css/offline.css" media="screen" type="text/css" />
|
|
5
|
-
|
|
6
|
-
<div id="sidebar"></div>
|
|
7
|
-
|
|
8
|
-
<div id="top" class="content">
|
|
9
|
-
|
|
10
|
-
<a name="download"></a>
|
|
11
|
-
<h2 class="title">
|
|
12
|
-
Download
|
|
13
|
-
</h2>
|
|
14
|
-
|
|
15
|
-
<p>
|
|
16
|
-
ActiveFacts is packaged as a <a href="http://www.ruby-lang.org/">Ruby</a> <a href="http://gems.rubyforge.org/">GEM</a>.
|
|
17
|
-
If you have Ruby installed, just say (omit "sudo" on Windows):
|
|
18
|
-
</p>
|
|
19
|
-
|
|
20
|
-
<pre>
|
|
21
|
-
sudo gem install activefacts
|
|
22
|
-
</pre>
|
|
23
|
-
|
|
24
|
-
<h3 class="title">
|
|
25
|
-
API Documentation
|
|
26
|
-
</h3>
|
|
27
|
-
<p>
|
|
28
|
-
After installing, you can read the Ruby API documentation by visiting
|
|
29
|
-
<a href="http://localhost:8808/">http://localhost:8808/</a> in your browser after starting
|
|
30
|
-
</p>
|
|
31
|
-
<pre>
|
|
32
|
-
gem server
|
|
33
|
-
</pre>
|
|
34
|
-
|
|
35
|
-
<h3 class="title">
|
|
36
|
-
The ActiveFacts generator
|
|
37
|
-
</h3>
|
|
38
|
-
<p>
|
|
39
|
-
CQL Examples are provided in the <b>examples/CQL</b> directory under activefacts in your gem directory
|
|
40
|
-
(mine is <b>/opt/local/lib/ruby/gems/1.8/gems/</b>). Copy the files you're interested in and you can
|
|
41
|
-
generate code from them using commands like the following:
|
|
42
|
-
</p>
|
|
43
|
-
|
|
44
|
-
<pre>
|
|
45
|
-
afgen --ruby OilSupply.cql
|
|
46
|
-
afgen --sql/server Warehousing.cql
|
|
47
|
-
</pre>
|
|
48
|
-
|
|
49
|
-
<p>
|
|
50
|
-
<em>afgen</em> also reads <em>.orm</em> files from <a href="http://ormfoundation.org/files">NORMA</a>.
|
|
51
|
-
You might also try the CQL command line tool.
|
|
52
|
-
</p>
|
|
53
|
-
|
|
54
|
-
<h3 class="title">
|
|
55
|
-
Installing on Windows
|
|
56
|
-
</h3>
|
|
57
|
-
<p>
|
|
58
|
-
Use the Ruby 1.8.7 installer from <a href="http://rubyinstaller.org/downloads/">RubyInstaller</a>.
|
|
59
|
-
After running the installer, you need to add Ruby to your PATH. The default install location is
|
|
60
|
-
C:\Ruby187\, so execute the following command in a Windows command prompt:
|
|
61
|
-
</p>
|
|
62
|
-
<pre>
|
|
63
|
-
PATH C:\Ruby187\bin;%PATH%
|
|
64
|
-
</pre>
|
|
65
|
-
<p>
|
|
66
|
-
Or right-click "My Computer" -> Properties -> Advanced -> Environment Variables -> System Variables
|
|
67
|
-
<br>
|
|
68
|
-
Scroll down to find the entry for Path and double-click it. Click in the Variable value: text widget and move the cursor to the start of the value before typing <b>C:\Ruby187;</b> before the first entry. Hit Ok three times and start a new command prompt.
|
|
69
|
-
</p>
|
|
70
|
-
<p>
|
|
71
|
-
If you got that all right, you should be able to enter the interactive Ruby
|
|
72
|
-
interpreter in the command prompt by typing <b>irb <ENTER></b>. Exit
|
|
73
|
-
from irb (^D) and you should be able to use <b>gem install activefacts</b>
|
|
74
|
-
as above. If your computer is behind a firewall, download the activefacts
|
|
75
|
-
gem file, along with those for
|
|
76
|
-
<a href="http://rubygems.org/gems/treetop/versions/1.4.8">Treetop</a>,
|
|
77
|
-
<a href="http://rubygems.org/gems/polyglot/versions/0.3.1">Polyglot</a> and
|
|
78
|
-
<a href="http://rubygems.org/gems/rake/versions/0.8.7">Rake</a>, and use
|
|
79
|
-
<b>gem install <file>.gem</b> to install those in the reverse order.
|
|
80
|
-
</p>
|
|
81
|
-
|
|
82
|
-
<h3>Source Code Repository</h3>
|
|
83
|
-
<p>
|
|
84
|
-
The source code is available at <a href="http://github.com/cjheath/activefacts/">GitHub</a>.
|
|
85
|
-
</p>
|
|
86
|
-
|
|
87
|
-
<h3>Object Role Modeling</h3>
|
|
88
|
-
<p>
|
|
89
|
-
If you want to draw your own <a href="http://www.orm.net">Object Role Modeling</a>
|
|
90
|
-
diagrams and have a copy of Windows Visual Studio (pro only, not Express),
|
|
91
|
-
you can freely download and install the <a href="http://www.ormfoundation.com/files/">Neumont ORM Architect</a>.
|
|
92
|
-
The example models are available in the correct format from the <a href="examples/">examples directory</a>.
|
|
93
|
-
The ActiveFacts generator <em>afgen</em> can process ORM files as easily as
|
|
94
|
-
CQL files, though a little slower due to the volume of XML to be parsed.
|
|
95
|
-
</p>
|
|
96
|
-
|
|
97
|
-
<a name="information"></a>
|
|
98
|
-
<h3>More information and discussion</h3>
|
|
99
|
-
|
|
100
|
-
<p>
|
|
101
|
-
Status messages go to the Yahoo
|
|
102
|
-
<a href="http://tech.groups.yahoo.com/group/information_modeling">information_modeling</a>
|
|
103
|
-
group, which is also available as an
|
|
104
|
-
<a href="news:gmane.comp.programming.modeling.information">NNTP feed on Gmane</a>.
|
|
105
|
-
Subscribe today and share your thoughts!
|
|
106
|
-
</p>
|
|
107
|
-
|
|
108
|
-
</div>
|
|
109
|
-
|
|
110
|
-
<!--#include virtual="/footer.html" -->
|