RDF.Star.Triple.new
You're seeing just the function
new
, go back to RDF.Star.Triple module for more information.
Specs
new(RDF.Star.Statement.coercible_t(), RDF.PropertyMap.t() | nil) :: t()
Creates a RDF.Star.Triple
with proper RDF-star values.
An error is raised when the given elements are not coercible to RDF-star values.
Note: The RDF.triple
function is a shortcut to this function.
Examples
iex> RDF.Star.Triple.new {"http://example.com/S", "http://example.com/p", 42}
{~I<http://example.com/S>, ~I<http://example.com/p>, RDF.literal(42)}
iex> RDF.Star.Triple.new {EX.S, EX.p, 42}
{RDF.iri("http://example.com/S"), RDF.iri("http://example.com/p"), RDF.literal(42)}
iex> RDF.Star.Triple.new {EX.S, EX.p, 42, EX.Graph}
{RDF.iri("http://example.com/S"), RDF.iri("http://example.com/p"), RDF.literal(42)}
iex> RDF.Star.Triple.new {EX.S, :p, 42}, RDF.PropertyMap.new(p: EX.p)
{RDF.iri("http://example.com/S"), RDF.iri("http://example.com/p"), RDF.literal(42)}
iex> RDF.Star.Triple.new({{EX.S, :p, 42}, :p2, 43}, RDF.PropertyMap.new(p: EX.p, p2: EX.p2))
{{~I<http://example.com/S>, ~I<http://example.com/p>, RDF.literal(42)}, ~I<http://example.com/p2>, RDF.literal(43)}
Specs
new( RDF.Star.Statement.coercible_subject(), RDF.Star.Statement.coercible_predicate(), RDF.Star.Statement.coercible_object(), RDF.PropertyMap.t() | nil ) :: t()
Creates a RDF.Star.Triple
with proper RDF-star values.
An error is raised when the given elements are not coercible to RDF-star values.
Note: The RDF.triple
function is a shortcut to this function.
Examples
iex> RDF.Star.Triple.new({"http://example.com/S", "http://example.com/p", 42}, "http://example.com/p2", 43)
{{~I<http://example.com/S>, ~I<http://example.com/p>, RDF.literal(42)}, ~I<http://example.com/p2>, RDF.literal(43)}
iex> RDF.Star.Triple.new({EX.S, EX.p, 42}, EX.p2, 43)
{{~I<http://example.com/S>, ~I<http://example.com/p>, RDF.literal(42)}, ~I<http://example.com/p2>, RDF.literal(43)}
iex> RDF.Star.Triple.new(EX.S, EX.p, 42)
{RDF.iri("http://example.com/S"), RDF.iri("http://example.com/p"), RDF.literal(42)}
iex> RDF.Star.Triple.new({EX.S, :p, 42}, :p2, 43, RDF.PropertyMap.new(p: EX.p, p2: EX.p2))
{{~I<http://example.com/S>, ~I<http://example.com/p>, RDF.literal(42)}, ~I<http://example.com/p2>, RDF.literal(43)}