solis 0.108.0 → 0.109.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9f2393fa54a6ce91bfb86ab468f6e38804b3bc1b9127cb0775ddccf298ce3317
4
- data.tar.gz: 92e8774734037caa26d6b9a1bcb946727afa690a3eb55d06d31897970f64860e
3
+ metadata.gz: 977072c184dcf472778863270bf8f4fd913db4980883e39ed9e33273d857cfbb
4
+ data.tar.gz: 377f468cddf67e8472aba17f0bca40c3a7c98a03e648da9b931cfc434de53efb
5
5
  SHA512:
6
- metadata.gz: 9addcb5ffc53d7f4c241edc8c3f5e3139e8971ef80619aef440a2736b66b450659339a5a62aaba95dda2afcebc1930bb2801cc24fe9f8b80dfb65f5153f84b4f
7
- data.tar.gz: d5653e67919f1adf13ed4f15293cfc7435e0858846a977768a91e5ff59936052f0fed23891e90593d576a942895b04746d0f38f762f49e8993e81bf87d56a0f8
6
+ metadata.gz: '093ee81f1e9ea27941544ee43311ebe9a26bc89fc5194d7211355cdf1e2f8c296b29731f05308fb688d546317f45ae3fca8974396fc0e0ee77ec8445c5bfc1fa'
7
+ data.tar.gz: 4ab801e9a5b64b9ee826def3abf3a67b38438419fb3b205a4a15960c00a623678d5a2a9277badcb7a86a6e2fc19bcc097e9bb9252e1e0eee869a89ef79d253de
data/lib/solis/model.rb CHANGED
@@ -662,7 +662,9 @@ values ?s {<#{self.graph_id}>}
662
662
  else
663
663
  RDF::Literal.new(d, language: @language)
664
664
  end
665
- elsif metadata[:datatype_rdf].eql?('http://www.w3.org/2001/XMLSchema#anyURI') || metadata[:node].is_a?(RDF::URI)
665
+ elsif metadata[:datatype_rdf].eql?('http://www.w3.org/2001/XMLSchema#anyURI')
666
+ RDF::Literal.new(d.to_s, datatype: RDF::XSD.anyURI)
667
+ elsif metadata[:node].is_a?(RDF::URI)
666
668
  RDF::URI(d)
667
669
  elsif metadata[:datatype_rdf] =~ /datatypes\/edtf/ || metadata[:datatype_rdf] =~ /edtf$/i
668
670
  # Handle EDTF dates
@@ -777,7 +779,7 @@ values ?s {<#{self.graph_id}>}
777
779
  RDF::Literal.new(d, language: self.class.language)
778
780
  else
779
781
  if metadata[:datatype_rdf].eql?('http://www.w3.org/2001/XMLSchema#anyURI')
780
- RDF::URI(d)
782
+ RDF::Literal.new(d.to_s, datatype: RDF::XSD.anyURI)
781
783
  else
782
784
  RDF::Literal.new(d, datatype: datatype)
783
785
  end
@@ -123,8 +123,9 @@ module Solis
123
123
 
124
124
  search_for = normalize_string(search_for)
125
125
  filter += "FILTER(str(?__search#{i}) #{not_operator}#{value[:operator]} \"#{search_for}\"#{datatype}) .\n"
126
- elsif (metadata[:datatype_rdf].eql?('http://www.w3.org/2001/XMLSchema#anyURI') || !metadata[:node].nil?) && ["=", "!="].include?(value[:operator])
127
- # Special handling for anyURI references to other entities (only for equality/inequality)
126
+ elsif !metadata[:node].nil? && !metadata[:datatype_rdf].eql?('http://www.w3.org/2001/XMLSchema#anyURI') && ["=", "!="].include?(value[:operator])
127
+ # Special handling for URI references to other entities (object properties, only for equality/inequality)
128
+ # Note: xsd:anyURI literals are handled below with standard literal matching
128
129
  model_graph_name = Solis::Options.instance.get.key?(:graphs) ? Solis::Options.instance.get[:graphs].select{|s| s['type'].eql?(:main)}&.first['name'] : @model.class.graph_name
129
130
  if value[:is_not]
130
131
  #filter = "filter( !exists {?concept <#{metadata[:path]}> ?__search#{i} . ?__search#{i} <#{model_graph_name}id> \"#{v}\"})"
@@ -139,7 +140,8 @@ module Solis
139
140
  end
140
141
  end
141
142
  else # if "~" contains
142
- if metadata[:datatype_rdf].eql?( 'http://www.w3.org/2001/XMLSchema#anyURI') || !metadata[:node].nil?
143
+ if !metadata[:node].nil? && !metadata[:datatype_rdf].eql?('http://www.w3.org/2001/XMLSchema#anyURI')
144
+ # Special handling for URI references to other entities (object properties)
143
145
  model_graph_name = Solis::Options.instance.get.key?(:graphs) ? Solis::Options.instance.get[:graphs].select{|s| s['type'].eql?(:data)}&.first['name'] : @model.class.graph_name
144
146
  filter = "?concept <#{metadata[:path]}> ?__search#{i} . ?__search#{i} <#{model_graph_name}id> ?__search#{i}_#{i} filter(?__search#{i}_#{i} = \"#{value[:value].first}\")."
145
147
  else
data/lib/solis/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Solis
2
- VERSION = "0.108.0"
2
+ VERSION = "0.109.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solis
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.108.0
4
+ version: 0.109.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mehmet Celik