Skip to main content

A Python 3 implementation of the Integrated Semantic Framework that provides computational deep semantic analysis by combining structural semantics from construction grammars and lexical semantics from ontologies in a single representation.

Project description

Integrated Semantic Framework (intsem.fx)

A Python 3 implementation of the Integrated Semantic Framework that provides computational deep semantic analysis by combining structural semantics from construction grammars and lexical semantics from ontologies in a single representation.

Install

coolisf only works on Linux distributions at the moment (built and tested on Fedora and Ubuntu Linux).

  • Install coolisf package from PyPI using pip
pip install coolisf
  • Create coolisf data folder at /home/user/local/isf/data
  • Download ace-0.9.26 binary from https://osf.io/x52fy/ to /home/user/bin/ace. Make sure that you can run ace by
[isf]$ ~/bin/ace -V
ACE version 0.9.26
compiled at 18:48:50 on Sep 14 2017
  • Install lelesk and yawlib with data
  • Download coolisf lexical rules database from https://osf.io/qn4wz/ and extract it to /home/user/local/isf/data/lexrules.db
  • Download grammar files (erg.dat, jacy.dat, virgo.dat, etc.) and copy them to /home/user/local/isf/data/grammars/

The final data folder should look something like this

/home/user/local/isf/data
├── grammars
│   ├── erg.dat
│   └── jacy.dat
├── lexrules.db

Using ISF

To parse a sentence, use coolisf text command

python -m coolisf text "I drink green tea." -f dmrs

:`I drink green tea.` (len=5)
------------------------------------------------------------
dmrs {
  10000 [pron<0:1> x ind=+ num=sg pers=1 pt=std];
  10001 [pronoun_q<0:1> x ind=+ num=sg pers=1 pt=std];
  10002 [_drink_v_1_rel<2:7> e mood=indicative perf=- prog=- sf=prop tense=pres];
  10003 [udef_q<8:18> x num=sg pers=3];
  10004 [_green+tea_n_1_rel<8:18> x num=sg pers=3];
  0:/H -> 10002;
  10001:RSTR/H -> 10000;
  10002:ARG1/NEQ -> 10000;
  10002:ARG2/NEQ -> 10004;
  10003:RSTR/H -> 10004;
}
# 10002 -> 01170052-v[drink/lelesk]
# 10004 -> 07935152-n[green tea/lelesk]
...

For batch processing, create a text file with each sentence on a separate line. For example here is the content of the file sample.txt

I drink green tea.
Sherlock Holmes has three guard dogs.
A soul is not a living thing.
Do you have any green tea chest?

After that, run the following command and the output will be written to the file demo_out.xml

python -m coolisf parse demo.txt -o demo_out.xml

If you encounter any issue, please submit an issue at: https://github.com/letuananh/intsem.fx/issues

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

coolisf-0.2.3b2.tar.gz (738.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page