activefacts 1.6.0 → 1.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (169) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +14 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +4 -0
  5. data/Gemfile +14 -0
  6. data/LICENSE.txt +21 -0
  7. data/README.md +60 -0
  8. data/Rakefile +3 -80
  9. data/activefacts.gemspec +36 -0
  10. data/bin/afgen +4 -2
  11. data/bin/cql +5 -1
  12. data/lib/activefacts.rb +3 -12
  13. data/lib/activefacts/{vocabulary/query_evaluator.rb → query/evaluator.rb} +0 -0
  14. data/lib/activefacts/version.rb +2 -2
  15. metadata +48 -296
  16. data/History.txt +0 -4
  17. data/LICENSE +0 -19
  18. data/Manifest.txt +0 -165
  19. data/README.rdoc +0 -81
  20. data/css/offline.css +0 -3
  21. data/css/orm2.css +0 -124
  22. data/css/print.css +0 -8
  23. data/css/style-print.css +0 -357
  24. data/css/style.css +0 -387
  25. data/download.html +0 -110
  26. data/examples/CQL/Address.cql +0 -44
  27. data/examples/CQL/Blog.cql +0 -54
  28. data/examples/CQL/CompanyDirectorEmployee.cql +0 -56
  29. data/examples/CQL/Death.cql +0 -17
  30. data/examples/CQL/Diplomacy.cql +0 -48
  31. data/examples/CQL/Genealogy.cql +0 -98
  32. data/examples/CQL/Insurance.cql +0 -320
  33. data/examples/CQL/Marriage.cql +0 -18
  34. data/examples/CQL/Metamodel.cql +0 -493
  35. data/examples/CQL/Monogamy.cql +0 -24
  36. data/examples/CQL/MultiInheritance.cql +0 -22
  37. data/examples/CQL/NonRoleId.cql +0 -14
  38. data/examples/CQL/OddIdentifier.cql +0 -18
  39. data/examples/CQL/OilSupply.cql +0 -53
  40. data/examples/CQL/OneToOnes.cql +0 -17
  41. data/examples/CQL/Orienteering.cql +0 -111
  42. data/examples/CQL/PersonPlaysGame.cql +0 -18
  43. data/examples/CQL/RedundantDependency.cql +0 -34
  44. data/examples/CQL/SchoolActivities.cql +0 -33
  45. data/examples/CQL/SeparateSubtype.cql +0 -30
  46. data/examples/CQL/ServiceDirector.cql +0 -276
  47. data/examples/CQL/SimplestUnary.cql +0 -12
  48. data/examples/CQL/Supervision.cql +0 -34
  49. data/examples/CQL/WaiterTips.cql +0 -33
  50. data/examples/CQL/Warehousing.cql +0 -101
  51. data/examples/CQL/WindowInRoomInBldg.cql +0 -28
  52. data/examples/CQL/unit.cql +0 -474
  53. data/examples/index.html +0 -420
  54. data/examples/intro.html +0 -327
  55. data/examples/local.css +0 -24
  56. data/index.html +0 -111
  57. data/lib/activefacts/cql.rb +0 -35
  58. data/lib/activefacts/cql/CQLParser.treetop +0 -158
  59. data/lib/activefacts/cql/Context.treetop +0 -48
  60. data/lib/activefacts/cql/Expressions.treetop +0 -67
  61. data/lib/activefacts/cql/FactTypes.treetop +0 -358
  62. data/lib/activefacts/cql/Language/English.treetop +0 -315
  63. data/lib/activefacts/cql/LexicalRules.treetop +0 -253
  64. data/lib/activefacts/cql/ObjectTypes.treetop +0 -210
  65. data/lib/activefacts/cql/Rakefile +0 -14
  66. data/lib/activefacts/cql/Terms.treetop +0 -183
  67. data/lib/activefacts/cql/ValueTypes.treetop +0 -202
  68. data/lib/activefacts/cql/compiler.rb +0 -156
  69. data/lib/activefacts/cql/compiler/clause.rb +0 -1137
  70. data/lib/activefacts/cql/compiler/constraint.rb +0 -581
  71. data/lib/activefacts/cql/compiler/entity_type.rb +0 -457
  72. data/lib/activefacts/cql/compiler/expression.rb +0 -443
  73. data/lib/activefacts/cql/compiler/fact.rb +0 -390
  74. data/lib/activefacts/cql/compiler/fact_type.rb +0 -421
  75. data/lib/activefacts/cql/compiler/query.rb +0 -106
  76. data/lib/activefacts/cql/compiler/shared.rb +0 -161
  77. data/lib/activefacts/cql/compiler/value_type.rb +0 -174
  78. data/lib/activefacts/cql/nodes.rb +0 -49
  79. data/lib/activefacts/cql/parser.rb +0 -241
  80. data/lib/activefacts/dependency_analyser.rb +0 -182
  81. data/lib/activefacts/generate/absorption.rb +0 -70
  82. data/lib/activefacts/generate/composition.rb +0 -118
  83. data/lib/activefacts/generate/cql.rb +0 -714
  84. data/lib/activefacts/generate/dm.rb +0 -279
  85. data/lib/activefacts/generate/help.rb +0 -64
  86. data/lib/activefacts/generate/helpers/inject.rb +0 -16
  87. data/lib/activefacts/generate/helpers/oo.rb +0 -162
  88. data/lib/activefacts/generate/helpers/ordered.rb +0 -605
  89. data/lib/activefacts/generate/helpers/rails.rb +0 -57
  90. data/lib/activefacts/generate/html/glossary.rb +0 -461
  91. data/lib/activefacts/generate/json.rb +0 -337
  92. data/lib/activefacts/generate/null.rb +0 -32
  93. data/lib/activefacts/generate/rails/models.rb +0 -246
  94. data/lib/activefacts/generate/rails/schema.rb +0 -216
  95. data/lib/activefacts/generate/records.rb +0 -46
  96. data/lib/activefacts/generate/ruby.rb +0 -133
  97. data/lib/activefacts/generate/sql/mysql.rb +0 -280
  98. data/lib/activefacts/generate/sql/server.rb +0 -273
  99. data/lib/activefacts/generate/stats.rb +0 -69
  100. data/lib/activefacts/generate/text.rb +0 -27
  101. data/lib/activefacts/generate/topics.rb +0 -265
  102. data/lib/activefacts/generate/traits/datavault.rb +0 -241
  103. data/lib/activefacts/generate/traits/oo.rb +0 -73
  104. data/lib/activefacts/generate/traits/ordered.rb +0 -33
  105. data/lib/activefacts/generate/traits/ruby.rb +0 -210
  106. data/lib/activefacts/generate/transform/datavault.rb +0 -266
  107. data/lib/activefacts/generate/transform/surrogate.rb +0 -214
  108. data/lib/activefacts/generate/version.rb +0 -26
  109. data/lib/activefacts/input/cql.rb +0 -43
  110. data/lib/activefacts/input/orm.rb +0 -1636
  111. data/lib/activefacts/mapping/rails.rb +0 -132
  112. data/lib/activefacts/persistence.rb +0 -15
  113. data/lib/activefacts/persistence/columns.rb +0 -446
  114. data/lib/activefacts/persistence/foreignkey.rb +0 -187
  115. data/lib/activefacts/persistence/index.rb +0 -240
  116. data/lib/activefacts/persistence/object_type.rb +0 -198
  117. data/lib/activefacts/persistence/reference.rb +0 -434
  118. data/lib/activefacts/persistence/tables.rb +0 -380
  119. data/lib/activefacts/registry.rb +0 -11
  120. data/lib/activefacts/support.rb +0 -132
  121. data/lib/activefacts/vocabulary.rb +0 -9
  122. data/lib/activefacts/vocabulary/extensions.rb +0 -1348
  123. data/lib/activefacts/vocabulary/metamodel.rb +0 -570
  124. data/lib/activefacts/vocabulary/verbaliser.rb +0 -804
  125. data/script/txt2html +0 -71
  126. data/spec/absorption_spec.rb +0 -95
  127. data/spec/cql/comparison_spec.rb +0 -89
  128. data/spec/cql/context_spec.rb +0 -94
  129. data/spec/cql/contractions_spec.rb +0 -224
  130. data/spec/cql/deontic_spec.rb +0 -88
  131. data/spec/cql/entity_type_spec.rb +0 -320
  132. data/spec/cql/expressions_spec.rb +0 -66
  133. data/spec/cql/fact_type_matching_spec.rb +0 -338
  134. data/spec/cql/french_spec.rb +0 -21
  135. data/spec/cql/parser/bad_literals_spec.rb +0 -86
  136. data/spec/cql/parser/constraints_spec.rb +0 -19
  137. data/spec/cql/parser/entity_types_spec.rb +0 -106
  138. data/spec/cql/parser/expressions_spec.rb +0 -199
  139. data/spec/cql/parser/fact_types_spec.rb +0 -44
  140. data/spec/cql/parser/literals_spec.rb +0 -312
  141. data/spec/cql/parser/pragmas_spec.rb +0 -89
  142. data/spec/cql/parser/value_types_spec.rb +0 -42
  143. data/spec/cql/role_matching_spec.rb +0 -148
  144. data/spec/cql/samples_spec.rb +0 -244
  145. data/spec/cql_cql_spec.rb +0 -73
  146. data/spec/cql_dm_spec.rb +0 -136
  147. data/spec/cql_mysql_spec.rb +0 -69
  148. data/spec/cql_parse_spec.rb +0 -34
  149. data/spec/cql_ruby_spec.rb +0 -73
  150. data/spec/cql_sql_spec.rb +0 -72
  151. data/spec/cql_symbol_tables_spec.rb +0 -261
  152. data/spec/cqldump_spec.rb +0 -170
  153. data/spec/helpers/array_matcher.rb +0 -23
  154. data/spec/helpers/ctrl_c_support.rb +0 -52
  155. data/spec/helpers/diff_matcher.rb +0 -39
  156. data/spec/helpers/file_matcher.rb +0 -34
  157. data/spec/helpers/parse_to_ast_matcher.rb +0 -80
  158. data/spec/helpers/string_matcher.rb +0 -30
  159. data/spec/helpers/test_parser.rb +0 -15
  160. data/spec/norma_cql_spec.rb +0 -66
  161. data/spec/norma_ruby_spec.rb +0 -62
  162. data/spec/norma_ruby_sql_spec.rb +0 -107
  163. data/spec/norma_sql_spec.rb +0 -57
  164. data/spec/norma_tables_spec.rb +0 -95
  165. data/spec/ruby_api_spec.rb +0 -23
  166. data/spec/spec_helper.rb +0 -35
  167. data/spec/transform_surrogate_spec.rb +0 -59
  168. data/status.html +0 -138
  169. data/why.html +0 -60
@@ -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
- }
@@ -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" -&gt; Properties -&gt; Advanced -&gt; Environment Variables -&gt; 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 &lt;ENTER&gt;</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 &lt;file&gt;.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" -->