rtm 0.1.1 → 0.1.3

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.
metadata CHANGED
@@ -1,39 +1,48 @@
1
- --- !ruby/object:Gem::Specification
2
- required_ruby_version: !ruby/object:Gem::Requirement
3
- requirements:
4
- - - '>='
5
- - !ruby/object:Gem::Version
6
- version: !str 0
7
- version:
8
- email: bb--rtm-gem@bockb.de
9
- cert_chain: []
10
- summary: Ruby Topic Maps is a Topic Maps engine written in Ruby.
11
- post_install_message:
12
- extra_rdoc_files: []
13
- homepage: http://rtm.rubyforge.org/
14
- signing_key:
1
+ --- !ruby/object:Gem::Specification
15
2
  name: rtm
16
- rdoc_options: []
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.3
5
+ platform: ruby
6
+ authors:
7
+ - Benjamin Bock
17
8
  autorequire:
18
- rubyforge_project: rtm
19
- executables: []
20
- description: Ruby Topic Maps is a Topic Maps engine written in Ruby.
21
- specification_version: 2
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-10-01 00:00:00 +02:00
22
13
  default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: activerecord
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 2.1.0
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: activesupport
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 2.1.0
34
+ version:
35
+ description: Ruby Topic Maps is a Topic Maps engine written in Ruby.
36
+ email: bb--rtm-gem@bockb.de
37
+ executables: []
38
+
39
+ extensions: []
40
+
41
+ extra_rdoc_files: []
42
+
23
43
  files:
24
44
  - lib/activetopicmaps.rb
25
45
  - lib/Rakefile.rb
26
- - lib/rtm.rb
27
- - lib/rtm/base.rb
28
- - lib/rtm/connect.rb
29
- - lib/rtm/core_ext.rb
30
- - lib/rtm/extensions.rb
31
- - lib/rtm/helpers.rb
32
- - lib/rtm/locator_helpers.rb
33
- - lib/rtm/pimp_my_api.rb
34
- - lib/rtm/psi.rb
35
- - lib/rtm/validation.rb
36
- - lib/rtm/backend/active_record.rb
37
46
  - lib/rtm/backend/active_record/001_initial_schema.rb
38
47
  - lib/rtm/backend/active_record/association_and_role.rb
39
48
  - lib/rtm/backend/active_record/locators.rb
@@ -47,55 +56,63 @@ files:
47
56
  - lib/rtm/backend/active_record/tm_set_delegator.rb
48
57
  - lib/rtm/backend/active_record/topic.rb
49
58
  - lib/rtm/backend/active_record/topic_map.rb
59
+ - lib/rtm/backend/active_record/traverse_associations.rb
60
+ - lib/rtm/backend/active_record.rb
61
+ - lib/rtm/base.rb
62
+ - lib/rtm/connect.rb
63
+ - lib/rtm/core_ext.rb
64
+ - lib/rtm/extensions.rb
65
+ - lib/rtm/helpers.rb
50
66
  - lib/rtm/io/from_xtm2.rb
51
- - lib/rtm/io/from_xtm2_jaxp.rb
52
67
  - lib/rtm/io/from_xtm2_libxml.rb
53
68
  - lib/rtm/io/to_jtm.rb
54
69
  - lib/rtm/io/to_string.rb
55
70
  - lib/rtm/io/to_xtm1.rb
56
71
  - lib/rtm/io/to_xtm2.rb
57
72
  - lib/rtm/io/to_yaml.rb
73
+ - lib/rtm/locator_helpers.rb
58
74
  - lib/rtm/merging/merging.rb
75
+ - lib/rtm/pimp_my_api.rb
76
+ - lib/rtm/psi.rb
77
+ - lib/rtm/sugar/role/counterparts.rb
78
+ - lib/rtm/sugar/topic/characteristics.rb
79
+ - lib/rtm/sugar/topic/counterparts.rb
80
+ - lib/rtm/sugar/topic/hash_access.rb
81
+ - lib/rtm/sugar/topic/identifier_direct.rb
82
+ - lib/rtm/sugar/topic/predefined_associations.rb
83
+ - lib/rtm/validation.rb
84
+ - lib/rtm.rb
85
+ - test/base_test.rb
59
86
  - COPYRIGHT
60
87
  - DISCLAIMER
61
88
  - README
62
- required_rubygems_version: !ruby/object:Gem::Requirement
89
+ has_rdoc: false
90
+ homepage: http://rtm.rubyforge.org/
91
+ post_install_message:
92
+ rdoc_options: []
93
+
94
+ require_paths:
95
+ - lib
96
+ required_ruby_version: !ruby/object:Gem::Requirement
63
97
  requirements:
64
- - - '>='
65
- - !ruby/object:Gem::Version
66
- version: !str 0
98
+ - - ">="
99
+ - !ruby/object:Gem::Version
100
+ version: "0"
101
+ version:
102
+ required_rubygems_version: !ruby/object:Gem::Requirement
103
+ requirements:
104
+ - - ">="
105
+ - !ruby/object:Gem::Version
106
+ version: "0"
67
107
  version:
68
- extensions: []
69
- rubygems_version: 1.0.1
70
108
  requirements:
71
- - sqlite3-ruby >= 1.2.1
72
- authors:
73
- - Benjamin Bock
74
- date: 2007-04-07 22:00:00 +00:00
75
- platform: ruby
109
+ - json_pure >= 1.1.2
110
+ - sqlite3-ruby >= 1.2.2
111
+ - libxml-ruby >= 0.6.0
112
+ rubyforge_project: rtm
113
+ rubygems_version: 1.2.0
114
+ signing_key:
115
+ specification_version: 2
116
+ summary: Ruby Topic Maps is a Topic Maps engine written in Ruby.
76
117
  test_files: []
77
- version: !ruby/object:Gem::Version
78
- version: 0.1.1
79
- require_paths:
80
- - lib
81
- dependencies:
82
- - !ruby/object:Gem::Dependency
83
- version_requirements: !ruby/object:Gem::Requirement
84
- requirements:
85
- - - '>='
86
- - !ruby/object:Gem::Version
87
- version: 2.0.1
88
- version:
89
- version_requirement:
90
- name: activerecord
91
- - !ruby/object:Gem::Dependency
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - '>='
95
- - !ruby/object:Gem::Version
96
- version: 2.0.1
97
- version:
98
- version_requirement:
99
- name: activesupport
100
- bindir: bin
101
- has_rdoc: false
118
+
@@ -1,89 +0,0 @@
1
- require 'java'
2
- include_class %w[SAXParser SAXParserFactory].map{|i| "javax.xml.parsers.#{i}"}
3
-
4
- module RTM::IO
5
- # XTM2 Import using JAXP
6
-
7
- module FROMXTM2JAXP
8
- XTM2DEBUG = false
9
- # Reads XTM2 from source (io object).
10
- # Example: RTM::IO::FROMXTM2JAXP.from_xtm2(File.open(file_name),"http://rtm.rubyforge.org/topicmaps/tm1/")
11
- # supported options:
12
- # :strip_whitespace (defaults to false, may be set to true),
13
- # :deprefix (defaults to nil, may be set to a string (or regex) which will be removed from the beginning of an (unresolved) item_identifier if it is there.
14
- def self.from_xtm2(source, base_locator, target=nil,options={})
15
- tm = RTM.create(base_locator) unless target
16
- factory = javax.xml.parsers.SAXParserFactory.newInstance()
17
- # Specifies that the parser produced by this code will provide support for XML namespaces.
18
- factory.setNamespaceAware(true);
19
- # Specifies that the parser produced by this code will validate documents as they are parsed.
20
- factory.setValidating(true);
21
- parser = factory.newSAXParser();
22
- internal_handler = FROMXTM2::XTM2Listener.new(base_locator, target || tm, options)
23
- #internal_handler = EmptyHandler.new
24
- handler = XML::JAXPSax2wrapper.new(internal_handler)
25
- parser.parse(source, handler)
26
- #true
27
- end
28
- end
29
- class EmptyHandler
30
- def start_document(*args)
31
- end
32
- def end_document(*args)
33
- end
34
- def start_element(*args)
35
- puts "start_element: #{args.inspect}"
36
- end
37
- def end_element(*args)
38
- puts "end_element: #{args.inspect}"
39
- end
40
- def characters(*args)
41
- puts "characters: #{args.inspect}"
42
- end
43
- end
44
- end
45
-
46
- module XML
47
- # Acts as Callback structure for the JAXP SAX Parser and calls
48
- # a REXML SAX2Listener API.
49
- include_class "org.xml.sax.helpers.DefaultHandler"
50
- class JAXPSax2wrapper < DefaultHandler
51
- def initialize(rexml_sax2listener)
52
- super()
53
- @dest = rexml_sax2listener
54
- end
55
- def startDocument
56
- @dest.start_document
57
- end
58
- def endDocument
59
- @dest.end_document
60
- end
61
- def startElement(namespaceURI, localName, qName, attr)
62
- # copy attributes into hash - this is NOT namespace aware!
63
- # comments for implementing namespace-awareness:
64
- # if qname==localname, namespace uri seems to be == ""
65
- # if uri is "" it should be expanded to the default ns which might be http://www.topicmaps.org/xtm/ if we are "main"
66
- # the following just takes all attributes and passes them on, with their qnames,
67
- # so it possibly won't work if attributes we need have a namespace declared, even if it is correct.
68
- attr2 = {}
69
- attr.length.times {|i| attr2[attr.qname(i)] = attr.value(i)}
70
- @dest.start_element(namespaceURI, localName, qName, attr2)
71
- end
72
-
73
- def characters(ch, start, length)
74
- s = java.lang.String.new(ch,start,length).to_s # hard work to get a ruby string out of a java char[]
75
- s.strip!
76
- return if s.size == 0 # we suppress whitespace-only characters. it's not 100% correct but...
77
- @dest.characters(s)
78
- end
79
-
80
- def endElement(namespaceURI, localName, qName)
81
- # puts "endElement: #{namespaceURI.inspect} #{localName.inspect} #{qName.inspect}"
82
- @dest.end_element(namespaceURI, localName, qName)
83
- end
84
- end
85
- end
86
-
87
-
88
-
89
-