現実世界の実体
Javaプログラマー向けの注意事項
Wolfram言語の実体は,自然言語処理,高レベルのデータセマンティックス,知識ベースへのアクセスを統合して,ユニークな方法で現実世界のデータ表現を統一しています.このデータ表現によって,新しい種類のプログラミングワークフローが可能になっています.
Pythonプログラマー向けの注意事項
Wolfram言語の実体は,自然言語処理,高レベルのデータセマンティックス,知識ベースへのアクセスを統合して,ユニークな方法で現実世界のデータ表現を統一しています.強固に統合されたノートブックシステムを擁するWolfram言語の実体は,Pythonでは簡単に得られない,新しく表現豊かなプログラミングワークフローを可能にします.Wolfram Client Library for Pythonを使うと,Wolfram言語の実体をPythonコードから直接評価したり操作したりすることができます.
Wolfram言語では,現実世界の実体も一種の記号的な式です.
Wolfram言語には,何千種類もの現実世界の実体に関する知識が含まれています:
実体は通常,自然言語を使って簡単に指定できます:


los angeles

実体には多くの特性があります.次はその値の一例です:

EntityValue[Entity["City", {"LosAngeles", "California", "UnitedStates"}], "Population"]

特性のリストを求めるためには,entity["Properties"]を使います.
自然言語を入力した場合,意味を明確にするためにを使うことができます:

los angeles

は実体のクラスを表します:

EntityList[EntityClass["Country", "GermanSpeaking"]]

ctrl+=を使って,単位と測定値を入力します:


3 meters

InputFormは記号が入った式の構造を示します:

InputForm[%]

GeoPositionは地理的位置を表します:

GeoPosition[\!\(\*
NamespaceBox["LinguisticAssistant",
DynamicModuleBox[{WolframAlphaClient`Private`query$$ = "eiffel tower",
WolframAlphaClient`Private`boxes$$ =
TemplateBox[{"\"Eiffel Tower\"",
RowBox[{"Entity", "[",
RowBox[{"\"Building\"", ",", "\"TourEiffel\""}], "]"}],
"\"Entity[\\\"Building\\\", \\\"TourEiffel\\\"]\"",
"\"building\""}, "Entity"],
WolframAlphaClient`Private`allassumptions$$ = {{
"type" -> "Clash", "word" -> "eiffel tower",
"template" -> "Assuming \"${word}\" is ${desc1}. Use as \
${desc2} instead", "count" -> "2",
"Values" -> {{
"name" -> "Building", "desc" -> "a structure",
"input" -> "*C.eiffel+tower-_*Building-"}, {
"name" -> "Word", "desc" -> "a word",
"input" -> "*C.eiffel+tower-_*Word-"}}}},
WolframAlphaClient`Private`assumptions$$ = {},
WolframAlphaClient`Private`open$$ = {1, 2}},
DynamicBox[ToBoxes[
AlphaIntegration`LinguisticAssistantBoxes["", 1,
Dynamic[WolframAlphaClient`Private`query$$],
Dynamic[WolframAlphaClient`Private`boxes$$],
Dynamic[WolframAlphaClient`Private`allassumptions$$],
Dynamic[WolframAlphaClient`Private`assumptions$$],
Dynamic[WolframAlphaClient`Private`open$$]], StandardForm],
ImageSizeCache->{183., {10., 18.}},
TrackedSymbols:>{
WolframAlphaClient`Private`query$$,
WolframAlphaClient`Private`boxes$$,
WolframAlphaClient`Private`allassumptions$$,
WolframAlphaClient`Private`assumptions$$,
WolframAlphaClient`Private`open$$}],
DynamicModuleValues:>{},
UndoTrackedVariables:>{WolframAlphaClient`Private`open$$}],
BaseStyle->{"Deploy"},
DeleteWithContents->True,
Editable->False,
SelectWithContents->True]\)]


GeoListPlot[{\!\(\*
NamespaceBox["LinguisticAssistant",
DynamicModuleBox[{WolframAlphaClient`Private`query$$ = "eiffel tower",
WolframAlphaClient`Private`boxes$$ =
TemplateBox[{"\"Eiffel Tower\"",
RowBox[{"Entity", "[",
RowBox[{"\"Building\"", ",", "\"TourEiffel\""}], "]"}],
"\"Entity[\\\"Building\\\", \\\"TourEiffel\\\"]\"",
"\"building\""}, "Entity"],
WolframAlphaClient`Private`allassumptions$$ = {{
"type" -> "Clash", "word" -> "eiffel tower",
"template" -> "Assuming \"${word}\" is ${desc1}. Use as \
${desc2} instead", "count" -> "2",
"Values" -> {{
"name" -> "Building", "desc" -> "a structure",
"input" -> "*C.eiffel+tower-_*Building-"}, {
"name" -> "Word", "desc" -> "a word",
"input" -> "*C.eiffel+tower-_*Word-"}}}},
WolframAlphaClient`Private`assumptions$$ = {},
WolframAlphaClient`Private`open$$ = {1, 2}},
DynamicBox[ToBoxes[
AlphaIntegration`LinguisticAssistantBoxes["", 1,
Dynamic[WolframAlphaClient`Private`query$$],
Dynamic[WolframAlphaClient`Private`boxes$$],
Dynamic[WolframAlphaClient`Private`allassumptions$$],
Dynamic[WolframAlphaClient`Private`assumptions$$],
Dynamic[WolframAlphaClient`Private`open$$]], StandardForm],
ImageSizeCache->{183., {10., 18.}},
TrackedSymbols:>{
WolframAlphaClient`Private`query$$,
WolframAlphaClient`Private`boxes$$,
WolframAlphaClient`Private`allassumptions$$,
WolframAlphaClient`Private`assumptions$$,
WolframAlphaClient`Private`open$$}],
DynamicModuleValues:>{},
UndoTrackedVariables:>{WolframAlphaClient`Private`open$$}],
BaseStyle->{"Deploy"},
DeleteWithContents->True,
Editable->False,
SelectWithContents->True]\), \!\(\*
NamespaceBox["LinguisticAssistant",
DynamicModuleBox[{WolframAlphaClient`Private`query$$ = "Ayers Rock",
WolframAlphaClient`Private`boxes$$ = TemplateBox[{"\"Uluru\"",
RowBox[{"Entity", "[",
RowBox[{"\"Mountain\"", ",", "\"Uluru\""}], "]"}],
"\"Entity[\\\"Mountain\\\", \\\"Uluru\\\"]\"",
"\"mountain\""}, "Entity"],
WolframAlphaClient`Private`allassumptions$$ = {},
WolframAlphaClient`Private`assumptions$$ = {},
WolframAlphaClient`Private`open$$ = {1, 2}},
DynamicBox[ToBoxes[
AlphaIntegration`LinguisticAssistantBoxes["", 1,
Dynamic[WolframAlphaClient`Private`query$$],
Dynamic[WolframAlphaClient`Private`boxes$$],
Dynamic[WolframAlphaClient`Private`allassumptions$$],
Dynamic[WolframAlphaClient`Private`assumptions$$],
Dynamic[WolframAlphaClient`Private`open$$]], StandardForm],
ImageSizeCache->{130., {10., 18.}},
TrackedSymbols:>{
WolframAlphaClient`Private`query$$,
WolframAlphaClient`Private`boxes$$,
WolframAlphaClient`Private`allassumptions$$,
WolframAlphaClient`Private`assumptions$$,
WolframAlphaClient`Private`open$$}],
DynamicModuleValues:>{},
UndoTrackedVariables:>{WolframAlphaClient`Private`open$$}],
BaseStyle->{"Deploy"},
DeleteWithContents->True,
Editable->False,
SelectWithContents->True]\)}]

DateObjectは日付と時間を表します:

Sunset[Tomorrow]


InputForm[%]

Pythonプログラマー向けの注意事項
DateObjectはWolfram言語に特有のものであり,他の環境からインポートしたり他の環境にエキスポートしたりする際に自動的にパースされます.Pythonでは日付文字列のパースを簡単にする別のライブラリがありますが,手動で分割したり結合したりしなければなりません.DateObjectにはWolfram Client Library for Pythonを介してPythonからアクセスすることができます.