Metadata-Version: 2.1
Name: coolisf
Version: 0.2.3b2
Summary: 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.
Home-page: https://github.com/letuananh/intsem.fx/
Author: Le Tuan Anh
Author-email: tuananh.ke@gmail.com
License: MIT License
Project-URL: Bug Tracker, https://github.com/letuananh/intsem.fx/issues
Project-URL: Source Code, https://github.com/letuananh/intsem.fx
Description: # Integrated Semantic Framework (intsem.fx)
        
        A Python 3 implementation of the [Integrated Semantic Framework](https://osf.io/9udjk/) 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](https://pypi.org/project/coolisf/) 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
        
        ```bash
        [isf]$ ~/bin/ace -V
        ACE version 0.9.26
        compiled at 18:48:50 on Sep 14 2017
        ```
        
        - Install [lelesk](https://pypi.org/project/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
        
        ```bash
        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`
        
        ```bash
        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
        
Keywords: linguistics,analysis,semantics,meaning,nlp,HPSG,ERG,MRS,DMRS,grammar,Sign-based Construction Grammar,wordnet,wsd,word-sense disambiguation
Platform: any
Classifier: Programming Language :: Python
Classifier: Development Status :: 4 - Beta
Classifier: Natural Language :: English
Classifier: Natural Language :: Japanese
Classifier: Natural Language :: Indonesian
Classifier: Natural Language :: Chinese (Simplified)
Classifier: Natural Language :: Chinese (Traditional)
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.6
Description-Content-Type: text/markdown
