%global _empty_manifest_terminate_build 0 Name: python-rita-dsl Version: 0.7.4 Release: 1 Summary: DSL for building language rules License: MIT URL: https://github.com/zaibacu/rita-dsl Source0: https://mirrors.aliyun.com/pypi/web/packages/57/02/23f3c8717ce24ca373b448165c743ea314832f1f8fa1533e939f11b4c3ef/rita-dsl-0.7.4.tar.gz BuildArch: noarch Requires: python3-ply %description ![Rita Logo](docs/assets/logo-2.png) # RITA DSL [![Documentation Status](https://readthedocs.org/projects/rita-dsl/badge/?version=latest)](http://rita-dsl.readthedocs.io/?badge=latest) [![codecov](https://codecov.io/gh/zaibacu/rita-dsl/branch/master/graph/badge.svg)](https://codecov.io/gh/zaibacu/rita-dsl) [![made-with-python](https://img.shields.io/badge/Made%20with-Python-1f425f.svg)](https://www.python.org/) [![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://github.com/zaibacu/rita-dsl/graphs/commit-activity) [![PyPI version fury.io](https://badge.fury.io/py/rita-dsl.svg)](https://pypi.python.org/pypi/rita-dsl/) [![PyPI download month](https://img.shields.io/pypi/dm/rita-dsl.svg)](https://pypi.python.org/pypi/rita-dsl/) [![GitHub license](https://img.shields.io/github/license/zaibacu/rita-dsl.svg)](https://github.com/zaibacu/rita-dsl/blob/master/LICENSE) This is a language, loosely based on language [Apache UIMA RUTA](https://uima.apache.org/ruta.html), focused on writing manual language rules, which compiles into either [spaCy](https://github.com/explosion/spaCy) compatible patterns, or pure regex. These patterns can be used for doing [manual NER](https://spacy.io/api/entityruler) as well as used in other processes, like retokenizing and pure matching ## An Introduction Video [![Intro](https://img.youtube.com/vi/GScerMeWz68/0.jpg)](https://www.youtube.com/watch?v=GScerMeWz68) ## Links - [Website](https://rita-dsl.io/) - [Live Demo](https://rita-dsl.io/#demo) - [Simple Chat bot example](https://repl.it/talk/share/Simple-chatbot-done-with-Rita/53471) - [Documentation](http://rita-dsl.readthedocs.io/) - [QuickStart](https://rita-dsl.readthedocs.io/en/latest/quickstart/) - [Language Syntax Plugin for IntelijJ based IDEs](https://plugins.jetbrains.com/plugin/15011-rita-language) ## Support [![reddit](https://img.shields.io/reddit/subreddit-subscribers/ritaDSL?style=social)](https://www.reddit.com/r/ritaDSL/) [![Gitter](https://badges.gitter.im/rita-dsl/community.svg)](https://gitter.im/rita-dsl/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) ## Install `pip install rita-dsl` ## Simple Rules example ```python rules = """ cuts = {"fitted", "wide-cut"} lengths = {"short", "long", "calf-length", "knee-length"} fabric_types = {"soft", "airy", "crinkled"} fabrics = {"velour", "chiffon", "knit", "woven", "stretch"} {IN_LIST(cuts)?, IN_LIST(lengths), WORD("dress")}->MARK("DRESS_TYPE") {IN_LIST(lengths), IN_LIST(cuts), WORD("dress")}->MARK("DRESS_TYPE") {IN_LIST(fabric_types)?, IN_LIST(fabrics)}->MARK("DRESS_FABRIC") """ ``` ### Loading in spaCy ```python import spacy from rita.shortcuts import setup_spacy nlp = spacy.load("en") setup_spacy(nlp, rules_string=rules) ``` And using it: ```python >>> r = nlp("She was wearing a short wide-cut dress") >>> [{"label": e.label_, "text": e.text} for e in r.ents] [{'label': 'DRESS_TYPE', 'text': 'short wide-cut dress'}] ``` ### Loading using Regex (standalone) ```python import rita patterns = rita.compile_string(rules, use_engine="standalone") ``` And using it: ```python >>> list(patterns.execute("She was wearing a short wide-cut dress")) [{'end': 38, 'label': 'DRESS_TYPE', 'start': 18, 'text': 'short wide-cut dress'}] ``` %package -n python3-rita-dsl Summary: DSL for building language rules Provides: python-rita-dsl BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-rita-dsl ![Rita Logo](docs/assets/logo-2.png) # RITA DSL [![Documentation Status](https://readthedocs.org/projects/rita-dsl/badge/?version=latest)](http://rita-dsl.readthedocs.io/?badge=latest) [![codecov](https://codecov.io/gh/zaibacu/rita-dsl/branch/master/graph/badge.svg)](https://codecov.io/gh/zaibacu/rita-dsl) [![made-with-python](https://img.shields.io/badge/Made%20with-Python-1f425f.svg)](https://www.python.org/) [![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://github.com/zaibacu/rita-dsl/graphs/commit-activity) [![PyPI version fury.io](https://badge.fury.io/py/rita-dsl.svg)](https://pypi.python.org/pypi/rita-dsl/) [![PyPI download month](https://img.shields.io/pypi/dm/rita-dsl.svg)](https://pypi.python.org/pypi/rita-dsl/) [![GitHub license](https://img.shields.io/github/license/zaibacu/rita-dsl.svg)](https://github.com/zaibacu/rita-dsl/blob/master/LICENSE) This is a language, loosely based on language [Apache UIMA RUTA](https://uima.apache.org/ruta.html), focused on writing manual language rules, which compiles into either [spaCy](https://github.com/explosion/spaCy) compatible patterns, or pure regex. These patterns can be used for doing [manual NER](https://spacy.io/api/entityruler) as well as used in other processes, like retokenizing and pure matching ## An Introduction Video [![Intro](https://img.youtube.com/vi/GScerMeWz68/0.jpg)](https://www.youtube.com/watch?v=GScerMeWz68) ## Links - [Website](https://rita-dsl.io/) - [Live Demo](https://rita-dsl.io/#demo) - [Simple Chat bot example](https://repl.it/talk/share/Simple-chatbot-done-with-Rita/53471) - [Documentation](http://rita-dsl.readthedocs.io/) - [QuickStart](https://rita-dsl.readthedocs.io/en/latest/quickstart/) - [Language Syntax Plugin for IntelijJ based IDEs](https://plugins.jetbrains.com/plugin/15011-rita-language) ## Support [![reddit](https://img.shields.io/reddit/subreddit-subscribers/ritaDSL?style=social)](https://www.reddit.com/r/ritaDSL/) [![Gitter](https://badges.gitter.im/rita-dsl/community.svg)](https://gitter.im/rita-dsl/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) ## Install `pip install rita-dsl` ## Simple Rules example ```python rules = """ cuts = {"fitted", "wide-cut"} lengths = {"short", "long", "calf-length", "knee-length"} fabric_types = {"soft", "airy", "crinkled"} fabrics = {"velour", "chiffon", "knit", "woven", "stretch"} {IN_LIST(cuts)?, IN_LIST(lengths), WORD("dress")}->MARK("DRESS_TYPE") {IN_LIST(lengths), IN_LIST(cuts), WORD("dress")}->MARK("DRESS_TYPE") {IN_LIST(fabric_types)?, IN_LIST(fabrics)}->MARK("DRESS_FABRIC") """ ``` ### Loading in spaCy ```python import spacy from rita.shortcuts import setup_spacy nlp = spacy.load("en") setup_spacy(nlp, rules_string=rules) ``` And using it: ```python >>> r = nlp("She was wearing a short wide-cut dress") >>> [{"label": e.label_, "text": e.text} for e in r.ents] [{'label': 'DRESS_TYPE', 'text': 'short wide-cut dress'}] ``` ### Loading using Regex (standalone) ```python import rita patterns = rita.compile_string(rules, use_engine="standalone") ``` And using it: ```python >>> list(patterns.execute("She was wearing a short wide-cut dress")) [{'end': 38, 'label': 'DRESS_TYPE', 'start': 18, 'text': 'short wide-cut dress'}] ``` %package help Summary: Development documents and examples for rita-dsl Provides: python3-rita-dsl-doc %description help ![Rita Logo](docs/assets/logo-2.png) # RITA DSL [![Documentation Status](https://readthedocs.org/projects/rita-dsl/badge/?version=latest)](http://rita-dsl.readthedocs.io/?badge=latest) [![codecov](https://codecov.io/gh/zaibacu/rita-dsl/branch/master/graph/badge.svg)](https://codecov.io/gh/zaibacu/rita-dsl) [![made-with-python](https://img.shields.io/badge/Made%20with-Python-1f425f.svg)](https://www.python.org/) [![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://github.com/zaibacu/rita-dsl/graphs/commit-activity) [![PyPI version fury.io](https://badge.fury.io/py/rita-dsl.svg)](https://pypi.python.org/pypi/rita-dsl/) [![PyPI download month](https://img.shields.io/pypi/dm/rita-dsl.svg)](https://pypi.python.org/pypi/rita-dsl/) [![GitHub license](https://img.shields.io/github/license/zaibacu/rita-dsl.svg)](https://github.com/zaibacu/rita-dsl/blob/master/LICENSE) This is a language, loosely based on language [Apache UIMA RUTA](https://uima.apache.org/ruta.html), focused on writing manual language rules, which compiles into either [spaCy](https://github.com/explosion/spaCy) compatible patterns, or pure regex. These patterns can be used for doing [manual NER](https://spacy.io/api/entityruler) as well as used in other processes, like retokenizing and pure matching ## An Introduction Video [![Intro](https://img.youtube.com/vi/GScerMeWz68/0.jpg)](https://www.youtube.com/watch?v=GScerMeWz68) ## Links - [Website](https://rita-dsl.io/) - [Live Demo](https://rita-dsl.io/#demo) - [Simple Chat bot example](https://repl.it/talk/share/Simple-chatbot-done-with-Rita/53471) - [Documentation](http://rita-dsl.readthedocs.io/) - [QuickStart](https://rita-dsl.readthedocs.io/en/latest/quickstart/) - [Language Syntax Plugin for IntelijJ based IDEs](https://plugins.jetbrains.com/plugin/15011-rita-language) ## Support [![reddit](https://img.shields.io/reddit/subreddit-subscribers/ritaDSL?style=social)](https://www.reddit.com/r/ritaDSL/) [![Gitter](https://badges.gitter.im/rita-dsl/community.svg)](https://gitter.im/rita-dsl/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) ## Install `pip install rita-dsl` ## Simple Rules example ```python rules = """ cuts = {"fitted", "wide-cut"} lengths = {"short", "long", "calf-length", "knee-length"} fabric_types = {"soft", "airy", "crinkled"} fabrics = {"velour", "chiffon", "knit", "woven", "stretch"} {IN_LIST(cuts)?, IN_LIST(lengths), WORD("dress")}->MARK("DRESS_TYPE") {IN_LIST(lengths), IN_LIST(cuts), WORD("dress")}->MARK("DRESS_TYPE") {IN_LIST(fabric_types)?, IN_LIST(fabrics)}->MARK("DRESS_FABRIC") """ ``` ### Loading in spaCy ```python import spacy from rita.shortcuts import setup_spacy nlp = spacy.load("en") setup_spacy(nlp, rules_string=rules) ``` And using it: ```python >>> r = nlp("She was wearing a short wide-cut dress") >>> [{"label": e.label_, "text": e.text} for e in r.ents] [{'label': 'DRESS_TYPE', 'text': 'short wide-cut dress'}] ``` ### Loading using Regex (standalone) ```python import rita patterns = rita.compile_string(rules, use_engine="standalone") ``` And using it: ```python >>> list(patterns.execute("She was wearing a short wide-cut dress")) [{'end': 38, 'label': 'DRESS_TYPE', 'start': 18, 'text': 'short wide-cut dress'}] ``` %prep %autosetup -n rita-dsl-0.7.4 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-rita-dsl -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Thu Jun 08 2023 Python_Bot - 0.7.4-1 - Package Spec generated