Free-Form & External Input

Building on the breakthrough natural language understanding capabilities of Wolfram|Alpha, the Wolfram Language has integrated features for accepting input in natural language and in other forms that require semantic understanding for interpretation. These features are important both in direct entry of Wolfram Language input and in calling on the Wolfram Language from APIs, forms, and other external and cloud constructs.

Interactive Wolfram Language Input

((Key0[==]) at beginning of input) — specify a complete computation using natural language

((Key1[ctrl, ==])) — translate from natural language anywhere in Wolfram Language input

(OrangeLink[Interpreting Strings », paclet:guide/InterpretingStrings])

(RefLink[Interpreter, paclet:ref/Interpreter]) — define how a string should be interpreted (directly or semantically)

(RefLink[SemanticInterpretation, paclet:ref/SemanticInterpretation]) — interpret a string semantically with a particular target

Interpretation Control

(RefLink[Restricted, paclet:ref/Restricted]) — define a restriction (e.g. numbers within a certain range etc.)

(RefLink[DelimitedSequence, paclet:ref/DelimitedSequence]) — allow multiple objects in input, separated by delimiters

(RefLink[AmbiguityFunction, paclet:ref/AmbiguityFunction]) — define how to handle ambiguities in semantic interpretation

(RefLink[AmbiguityList, paclet:ref/AmbiguityList]) — representation of possible interpretations for ambiguous input

(RefLink[Failure, paclet:ref/Failure]) — representation of failure to interpret as a particular type

(OrangeLink[Custom Grammars », paclet:guide/ProgrammableLinguisticInterface])

File & Large-Scale Input Interpretation

(RefLink[Import, paclet:ref/Import]) — import from a file, in hundreds of possible formats

(RefLink[ImportString, paclet:ref/ImportString]) — import a string, using hundreds of possible file formats

(RefLink[SemanticImport, paclet:ref/SemanticImport]) — import structured data from a file semantically

(RefLink[SemanticImportString, paclet:ref/SemanticImportString]) — extract structured data from a string semantically

Specialized Types of Input Processing

(RefLink[ToExpression, paclet:ref/ToExpression]) — interpret a string as Wolfram Language or similar input

(RefLink[DateObject, paclet:ref/DateObject]), (RefLink[TimeObject, paclet:ref/TimeObject]) — input dates and times in any standard form

(RefLink[GeoPosition, paclet:ref/GeoPosition]) — input geo positions in standard formats

(RefLink[FindGeoLocation, paclet:ref/FindGeoLocation]) — find geo positions from IP addresses, street addresses, etc.

(RefLink[BinaryRead, paclet:ref/BinaryRead]) — read binary data