Current section
Files
Jump to
Current section
Files
framex_tools
README.md
README.md
# FramexTools
Maintained by Erdal Turan.
`FramexTools` manages named corpus profiles for [Framex](https://hex.pm/packages/framex).
A profile selects frames, lexical units, exemplar limits, semantic-type closure,
and the frame relations needed to make a small, reproducible artifact.
FramexTools is an optional companion to the read-only `framex` query package.
It does not embed the full FrameNet corpus in Hex.
## Install
```elixir
def deps do
[
{:framex_tools, "~> 0.1"}
]
end
```
## Install the full corpus once
Download `framex-en-1.7.tar.gz` from the [Framex Corpora v1.7.0
release](https://github.com/collective-mind/framex-corpora/releases/tag/v1.7.0),
verify the SHA-256 in that repository's release manifest, then unpack it into
the default corpus directory:
```bash
mkdir -p ~/.framex/corpora
tar -xzf framex-en-1.7.tar.gz -C ~/.framex/corpora
```
Set `FRAMEX_CORPORA_DIR` only when a different corpus root is needed.
## Inspect a profile
```bash
mix framex.tools.profiles --corpus_profile demo_en_17
```
The profile name is the only required selector. `demo_en_17` resolves its
source corpus, bundled profile definition, and output directory automatically.
## Plan a profile expansion
```bash
mix framex.tools.expand --corpus_profile demo_en_17 hope.v
```
The default is a dry run. It reports the selected lexical unit, frame, valence
patterns, semantic-type records, and raw FrameNet relation fields. Add
`--apply` to update the profile selection after reviewing the plan.
```bash
mix framex.tools.expand --corpus_profile demo_en_17 hope.v --apply
```
The full FrameNet source data is licensed separately under CC BY 3.0 Unported;
the FramexTools code is licensed under Apache-2.0.