A central feature of the Wolfram Language is that it
’s got immense amounts of real-world data built in. It
’s got data on countries and animals and movies, and lots more. It gets all this from the
Wolfram Knowledgebase, which is being updated all the time
—and is what powers
Wolfram|Alpha and services based on it.
But how can you talk about a country in the Wolfram Language? The easiest way is just to use plain English. You can tell the Wolfram Language you
’re going to be giving it plain English by pressing (hold down the Control key and press the = key), or on a touch device, by pressing the

button.
Enter the plain English “united states”:
As soon as you press (or click away), the Wolfram Language will try to interpret what you typed. Assuming it succeeds, it
’ll display a little yellow box that represents a
Wolfram Language entity. In this case, it
’s the entity corresponding to the United States.
Press the check mark to confirm that’s what you want:
Now you can ask for lots of
properties of this entity. Like you could ask for the US flag.
Ask for the flag property of the United States:
The result you get is something you can go on doing computation with—like in this case image processing.
Color-negate the US flag:
If all you want to do is to get the US flag, you can just ask for it in English.
EntityValue is a more flexible way to ask for the values of properties.
EntityValue also works with lists of entities.
Get flags for a list of countries:
The Wolfram Language has deep knowledge about countries, as about many other things.
Find out how many radio stations there are in the list of countries:
Make a pie chart of the results:
Find countries that border Switzerland:
Find their flags:
Sometimes you
’ll want to talk about a class of entities
—like, say, planets.
Ask for planets, and get the class of entities corresponding to planets:
Classes of entities are indicated by

. You can get a list of all entities in a class using
EntityList.
Get the list of planets:
Get images of all of the planets:
EntityValue can actually handle entity classes directly, so you don
’t need to use
EntityList with it.
Get the radius of each of the planets, and make a bar chart of them:
It
’s very convenient to use plain English to describe things. But a downside is that it can be ambiguous. If you say
“mercury
”, do you mean the planet Mercury or the chemical element mercury or something else called
“mercury
”? When you use , it
’ll always make an initial choice. But if you press the

you can change to another choice. Press the check mark

to accept a choice.
To see how the Wolfram Language internally represents entities you can use
InputForm.
Show the internal form of the entity that represents the United States:
Show the internal form for New York City:
There are millions of entities in the Wolfram Language, each with a definite internal form. In principle you could enter any entity using its internal form. But unless you’re using the same entity over and over again, it’s much more practical just to use and enter a name for the entity in plain English.
There are thousands of different types of entities in the Wolfram Language, covering all sorts of areas of knowledge. To find out about them, check out the
Wolfram Language documentation, or the
Wolfram|Alpha examples pages. Each type of entity then has a list of properties
—often hundreds of them. One way to find this list is to use
EntityProperties.
Possible properties for amusement parks:
In practice, though, a good approach is to ask in plain English for a property of some entity, then to look at the interpretation that’s found, and re-use the property from it.
Ask for the height of the Eiffel Tower:
Re-use the
"Height" property, applied to the Great Pyramid:
Different types of entities have different properties. One common property for many types of entities is "Image".
Get images of various entities:
Other types of objects have other properties.
A plot of a caffeine molecule:
Rotatable 3D graphics of a skull:
A net that folds up into our 3D company logo:
| | plain English input |
EntityList[class] | | entities in a class |
EntityValue[entities,property] | | value of a property of an entity |
EntityProperties[type] | | list of properties for an entity type |
InputForm[entity] | | internal Wolfram Language representation of an entity |
16.1Find the flag of Switzerland.
»
16.2Get an image of an elephant.
»
16.3Use the
"Mass" property to generate a list of the masses of the planets.
»
16.4Make a bar chart of the masses of the planets.
»
16.5Make an image collage of images of the planets.
»
16.6Edge detect the flag of China.
»
16.7Find the height of the Empire State Building.
»
16.8Compute the height of the Empire State Building divided by the height of the Great Pyramid.
»
16.9Compute the elevation of Mount Everest divided by the height of the Empire State Building.
»
16.10Find the dominant colors in the painting
The Starry Night.
»
16.11Find the dominant colors in an image collage of the flag images of all countries in Europe.
»
16.12Make a pie chart of the GDP of countries in Europe.
»
16.13Add an image of a koala to an image of the Australian flag.
»
+16.1Make an image collage of the flags of all countries in Europe, using the
"FlagImage" property.
»
+16.2Edge detect an image of the painting
The Starry Night.
»
+16.3Color negate the
Mona Lisa painting.
»
Where does the Wolfram Language get its real-world data?
It
’s all from the central
Wolfram Knowledgebase. We
’ve been building this knowledgebase for many years, carefully curating data from thousands of primary sources.
Is the data in the Wolfram Language regularly updated?
Yes. We put a lot of effort into keeping it all up to date. And in fact there
’s new data flowing in every second
—about market prices, weather, earthquakes, aircraft positions and lots more.
How accurate is the data in the Wolfram Language?
We go to a lot of trouble to make it as accurate as possible, and we check it extensively. But ultimately we often have to rely on what governments and other outside organizations report.
Wolfram|Alpha uses the same knowledgebase as the Wolfram Language.
How should I refer to a particular entity?
However you want to. The Wolfram Language is set up to understand all common ways to refer to entities. (“New York City”, “NYC”, “the big apple”, etc., all work.)
How can I find all properties and values for a given entity?
Use entity["Dataset"] or entity["PropertyAssociation"].
It means the value you
’ve asked for isn
’t known, or at least isn
’t in the Wolfram Knowledgebase. Use
DeleteMissing to delete
Missing[...] elements in a list.
Can I set up my own entities, and put in my own data about them?
- The Wolfram Knowledgebase is stored in the cloud, so even if you’re using a desktop version of the Wolfram Language, you’ll need to connect to the network to start getting real-world data.
- The Wolfram Knowledgebase contains many trillions of specific facts and values, stored in a Wolfram Language symbolic framework, with a variety of underlying database technologies.
- The Wolfram Knowledgebase has been systematically built and curated from large numbers of primary sources of data. It doesn’t come from web searching.
- Real-world data often involves units, which we’ll discuss in the next section.
- Instead of using natural language, you can access the Wolfram Knowledgebase through specific functions like CountryData and MovieData. Sometimes this may be faster.
- If you want to find the original source of a particular piece of data, you can look at documentation (e.g. for CountryData, etc.), or you can ask for the data in Wolfram|Alpha and follow source links.
- Sometimes you want to talk about a special instance of an entity, like a country in a particular year, or a certain amount of a substance. You can do this using EntityInstance.
- RandomEntity finds random entities of a given type.
- There’s a symmetry between entities and properties. entity[property] gives the same result as property[entity]. To get values of several properties, use entity[{p1, p2, ...}]; to get values for several entities, use property[{e1, e2, ...}]. (Note that for property[entity] you need the full property object, as obtained from , not just the name of the property as a string.)