也許看看Attempto project的目標是定義一個可以自動映射到一階邏輯的英文片段。這項工作的一部分是映射到OWL 2 DL。見例如Writing OWL ontologies in ACE。
你的例句
Bob, over on 42nd street, will have a job at the Mall after the owner approves
可以在Attempto受控英語(ACE)爲
If an owner of Mall approves John whose address is "42nd street"
then he is employed by Mall.
被改寫(或類似的東西,這取決於你到底打算說。)
這句話可以自動映射到OWL2 SubClassOf -axiom
SubClassOf(
ObjectIntersectionOf(
ObjectOneOf(
:Mall
)
ObjectSomeValuesFrom(
:owner
ObjectSomeValuesFrom(
:approve
ObjectIntersectionOf(
ObjectOneOf(
:John
)
DataHasValue(
:address
"42nd street"^^<http://www.w3.org/2001/XMLSchema#string>
)
)
)
)
)
ObjectSomeValuesFrom(
:employ
ObjectOneOf(
:John
)
)
)
這個映射實現有關基本詞類某些約定:
- 普通名詞映射到OWL類名
- 適當的名稱映射到OWL個人的名字
- 及物動詞,傳遞形容詞和 -constructions映射到OWL屬性名稱:數據屬性名稱,如果它們的參數是數字或字符串,則返回對象屬性名稱
此映射不支持ACE支持的許多單詞類,例如,不及物動詞和不及物動詞,不及物形容詞和副詞。覆蓋範圍可以擴大,例如不及物動詞可以映射到OWL類(例如,「約翰睡覺,」可以被認爲是指個人約翰屬於睡眠者類)。不太清楚如何處理雙轉喻動詞和副詞。一般來說,英語在構成塊(名詞,不同類型的形容詞,不同類型的動詞......)方面比OWL(它具有類,個人,對象和數據屬性,以及(鍵入)數據項(如字符串和數字)。這只是「單詞與實體」級別。像時態這樣的東西比較複雜,因爲他們有許多英文表面表達,而OWL方面缺乏任何內置功能。
幹得好。經過一番調查,確切的APE電話是: ./ape.exe -text「如果p:Mall v:的所有者同意p:John的地址是」42nd street「,那麼John是n的僱員: p:購物中心。「-cparaphrase – Cerin 2010-08-06 15:33:37
有趣的是,ACE支持的大多數功能都不被RDF/OWL明確支持,因爲它們不支持形容詞,副詞和其他常見詞類。試圖將我的句子導出到OWL會產生一個錯誤,但如果我將它作爲話語表示結構(DRS)導出,則工作正常。 – Cerin 2010-08-08 05:32:22
@ chris -s我已經擴展了答案以迴應您的第二條評論。 – Kaarel 2010-08-09 03:42:27