SET datestyle = 'ISO, YMD'; SET timezone = 'UTC'; SELECT 42::int2::rdfnode; SELECT 4273::int4::rdfnode; SELECT 123456789101112::int8::rdfnode; SELECT 42.12345::numeric::rdfnode; SELECT 42.1234::float4::rdfnode; SELECT 42.123456650::float8::rdfnode; SELECT 42.12345::double precision::rdfnode; SELECT 'Infinity'::numeric::rdfnode; SELECT '-Infinity'::numeric::rdfnode; SELECT 'Infinity'::float4::rdfnode; SELECT '-Infinity'::float4::rdfnode; SELECT 'Infinity'::float8::rdfnode; SELECT '-Infinity'::float8::rdfnode; SELECT 'Infinity'::double precision::rdfnode; SELECT '-Infinity'::double precision::rdfnode; SELECT 'NaN'::numeric::rdfnode; SELECT 'NaN'::float4::rdfnode; SELECT 'NaN'::float8::rdfnode; SELECT 'NaN'::double precision::rdfnode; SELECT true::rdfnode; SELECT false::rdfnode; SELECT '"rdf_fdw"'::rdfnode; SELECT '"rdf_fdw"@en'::rdfnode; SELECT '2025-01-01'::date::rdfnode; SELECT '18:30:25'::time without time zone::rdfnode; SELECT '18:30:25+02:00'::time with time zone::rdfnode; /* A time carries a fractional part, and 24:00:00 is a valid end-of-day value * distinct from midnight. Converting through the timestamp representation * discards the fraction and wraps the end of day round to 00:00:00, which is * a different time: the last assertion is the one that matters, since the two * values must not serialise to the same RDF literal. */ SELECT '12:34:56.789'::time::rdfnode; SELECT '24:00:00'::time::rdfnode; SELECT '00:00:00'::time::rdfnode; SELECT '12:34:56.789'::time::rdfnode::time = '12:34:56.789'::time AS round_trips; SELECT '24:00:00'::time::rdfnode::time = '24:00:00'::time AS end_of_day_round_trips; SELECT '24:00:00'::time::rdfnode <> '00:00:00'::time::rdfnode AS distinguishable; SELECT '2025-01-01 18:30:25'::timestamp without time zone::rdfnode; SELECT '2025-01-01 18:30:25 UTC'::timestamp with time zone::rdfnode; SELECT '1 year 2 months 3 weeks 4 days 5 hours 6 minutes 7 seconds'::interval::rdfnode; SELECT '-1 year -2 months -3 weeks -4 days -5 hours -6 minutes -7 seconds'::interval::rdfnode; SELECT '"42"^^'::rdfnode::int2; SELECT '"4273"^^'::rdfnode::int4; SELECT '"123456789101112"^^'::rdfnode::int8; SELECT '"42.12345"^^'::rdfnode::numeric; SELECT '"42.1234"^^'::rdfnode::float4; SELECT '"42.123456650"^^'::rdfnode::float8; SELECT '"INF"^^'::rdfnode::numeric; SELECT '"-INF"^^'::rdfnode::numeric; SELECT '"INF"^^'::rdfnode::float4; SELECT '"-INF"^^'::rdfnode::float4; SELECT '"INF"^^'::rdfnode::float8; SELECT '"-INF"^^'::rdfnode::float8; SELECT '"INF"^^'::rdfnode::double precision; SELECT '"-INF"^^'::rdfnode::double precision; SELECT '"NaN"^^'::rdfnode::numeric; SELECT '"NaN"^^'::rdfnode::float4; SELECT '"NaN"^^'::rdfnode::float8; SELECT '"NaN"^^'::rdfnode::double precision; SELECT '"NaN"^^'::rdfnode::numeric; SELECT '"NaN"^^'::rdfnode::float4; SELECT '"NaN"^^'::rdfnode::float8; SELECT '"NaN"^^'::rdfnode::double precision; SELECT '"INF"^^'::rdfnode::float8::rdfnode; SELECT '"-INF"^^'::rdfnode::float8::rdfnode; SELECT '"NaN"^^'::rdfnode::float8::rdfnode; SELECT '"true"^^'::rdfnode::boolean; SELECT '"false"^^'::rdfnode::boolean; SELECT '"1"^^'::rdfnode::boolean; SELECT '"0"^^'::rdfnode::boolean; SELECT '"rdf_fdw"'::rdfnode::text; SELECT '"rdf_fdw"@en'::rdfnode::text; SELECT '"2025-01-01"^^'::rdfnode::date; SELECT '"18:30:25+02:00"^^'::rdfnode::time with time zone; SELECT '"18:30:25"^^'::rdfnode::time without time zone; SELECT '"2025-01-01T18:30:25"^^'::rdfnode::timestamp without time zone; SELECT '"2025-01-01T18:30:25Z"^^'::rdfnode::timestamp with time zone; SELECT '"P1Y2M25DT5H6M7S"^^'::rdfnode::interval; SELECT '"-P1Y2M25DT5H6M7S"^^'::rdfnode::interval; /* the three numeric casts reject a non-numeric term with the same message */ SELECT '"abc"^^'::rdfnode::real; SELECT '"abc"^^'::rdfnode::float8; SELECT '"abc"^^'::rdfnode::numeric; SELECT '"3.5"^^'::rdfnode::real;