Skip to content

Commit 02d92d3

Browse files
committed
Fix test fromRdf#t0027.
1 parent 805b96d commit 02d92d3

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

lib/fromRdf.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -350,10 +350,12 @@ function _RDFToObject(o, useNativeTypes, rdfDirection, options) {
350350
// use native types for certain xsd types
351351
if(useNativeTypes) {
352352
if(type === XSD_BOOLEAN) {
353-
if(rval['@value'] === 'true') {
353+
if(rval['@value'] === 'true' || rval['@value'] === '1') {
354354
rval['@value'] = true;
355-
} else if(rval['@value'] === 'false') {
355+
} else if(rval['@value'] === 'false' || rval['@value'] === '0') {
356356
rval['@value'] = false;
357+
} else if(rval['@value'] === 'True' || rval['@value'] === 'False') {
358+
rval['@type'] = type;
357359
}
358360
} else if(types.isNumeric(rval['@value'])) {
359361
if(type === XSD_INTEGER) {
@@ -364,6 +366,10 @@ function _RDFToObject(o, useNativeTypes, rdfDirection, options) {
364366
} else if(type === XSD_DOUBLE) {
365367
rval['@value'] = parseFloat(rval['@value']);
366368
}
369+
} else if(type == XSD_DOUBLE) {
370+
// if not numeric and double, include type
371+
// occurs for valid strings such as "+INF", "-INF", and large values
372+
rval['@type'] = type;
367373
}
368374
// do not add native type
369375
if(![XSD_BOOLEAN, XSD_INTEGER, XSD_DOUBLE, XSD_STRING].includes(type)) {

0 commit comments

Comments
 (0)