Package net.sf.saxon.ma.json
Class ParseJsonFn
java.lang.Object
net.sf.saxon.functions.AbstractFunction
net.sf.saxon.functions.SystemFunction
net.sf.saxon.ma.json.JsonToXMLFn
net.sf.saxon.ma.json.ParseJsonFn
- All Implemented Interfaces:
Callable,FunctionItem,GroundedValue,Item,Sequence
Implements the parse-json function, as defined in XPath 3.1
The parsing code, and the handling of options is shared with the json-to-xml function.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Itemeval(String input, MapItem options, XPathContext context) Parse the JSON string according to supplied optionsstatic Itemparse(String input, Map<String, GroundedValue> options, XPathContext context) Parse the JSON string according to supplied optionsMethods inherited from class net.sf.saxon.ma.json.JsonToXMLFn
callMethods inherited from class net.sf.saxon.functions.SystemFunction
dependsOnContextItem, dynamicCall, equals, export, exportAdditionalArguments, exportAttributes, fixArguments, getArity, getCardinality, getContextNode, getDescription, getDetails, getElaborator, getErrorCodeForTypeErrors, getFunctionItemType, getFunctionName, getIntegerBounds, getNetCost, getOperandRoles, getRequiredType, getResultItemType, getResultItemType, getRetainedStaticContext, getSpecialProperties, getStaticBaseUriString, getStreamerName, getUniStringArg, hashCode, importAttributes, isSequenceVariadic, isTrustedResultType, makeCall, makeFunction, makeFunction40, makeFunctionCall, makeOptimizedFunctionCall, resultIfEmpty, setArity, setDetails, setRetainedStaticContext, supplyTypeInformation, toShortString, toString, typeCheckCallerMethods inherited from class net.sf.saxon.functions.AbstractFunction
atomize, deepEqual40, deepEquals, effectiveBooleanValue, getAnnotations, getUnicodeStringValue, isArray, isMap, makeNewContext, simplify, typeCheckMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface net.sf.saxon.om.FunctionItem
getGenreMethods inherited from interface net.sf.saxon.om.GroundedValue
asIterable, concatenate, containsNode, materializeMethods inherited from interface net.sf.saxon.om.Item
getLength, getStringValue, head, isStreamed, itemAt, iterate, reduce, subsequenceMethods inherited from interface net.sf.saxon.om.Sequence
makeRepeatable
-
Field Details
-
OPTION_DETAILS
-
-
Constructor Details
-
ParseJsonFn
public ParseJsonFn()
-
-
Method Details
-
eval
Parse the JSON string according to supplied options- Overrides:
evalin classJsonToXMLFn- Parameters:
input- JSON input stringoptions- options for the conversion as a map of xs:string : value pairscontext- XPath evaluation context- Returns:
- the result of the parsing, typically a map or array
- Throws:
XPathException- if the syntax of the input is incorrect
-
parse
public static Item parse(String input, Map<String, GroundedValue> options, XPathContext context) throws XPathExceptionParse the JSON string according to supplied options- Parameters:
input- JSON input stringoptions- options for the conversion as a map of xs:string : value pairscontext- XPath evaluation context- Returns:
- the result of the parsing, as an item (null in the case where the JSON input is "null")
- Throws:
XPathException- if the syntax of the input is incorrect
-