Skip to content

Commit 7158dea

Browse files
committed
Fix Term to_ruby to better serialize attributes containing blank node terms.
1 parent b7137a6 commit 7158dea

1 file changed

Lines changed: 5 additions & 4 deletions

File tree

lib/rdf/vocabulary.rb

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -574,6 +574,7 @@ def from_graph(graph, url: nil, class_name: nil, extra: nil)
574574
term_defs
575575
end
576576

577+
#require 'byebug'; byebug
577578
# Pass over embedded_defs with anonymous references, once
578579
embedded_defs.each do |term, attributes|
579580
attributes.each do |ak, avs|
@@ -1234,16 +1235,16 @@ def to_ruby(indent: "")
12341235
values = values.map do |value|
12351236
if value.is_a?(Literal) && %w(: comment definition notation note editorialNote).include?(k.to_s)
12361237
"%(#{value.to_s.gsub('(', '\(').gsub(')', '\)')}).freeze"
1237-
# elsif value.is_a?(RDF::Vocabulary::Term)
1238-
# value.to_ruby(indent: indent + " ")
1238+
elsif value.node? && value.is_a?(RDF::Vocabulary::Term)
1239+
"#{value.to_ruby(indent: indent + " ")}.freeze"
12391240
elsif value.is_a?(RDF::Term)
12401241
"#{value.to_s.inspect}.freeze"
12411242
elsif value.is_a?(RDF::List)
12421243
list_elements = value.map do |u|
12431244
if u.uri?
12441245
"#{u.to_s.inspect}.freeze"
1245-
# elsif u.respond_to?(:to_ruby)
1246-
# u.to_ruby(indent: indent + " ")
1246+
elsif u.node? && u.respond_to?(:to_ruby)
1247+
u.to_ruby(indent: indent + " ")
12471248
else
12481249
"#{u.to_s.inspect}.freeze"
12491250
end

0 commit comments

Comments
 (0)