<commit_before>Xigt
====

A library for extensible Interlinear glossed text (IGT)

Xigt is created with extensibility in mind, offering a core framework
and XML schema (in RelaxNG) ready to be extended without much trouble.
A small example:

```xml
<igt id="i1" lg="spa">
  <tier type="words" id="w">
    <item id="w1">cocinas</item>
  </tier>
  <tier type="morphemes" id="m" ref="w">
    <item id="m1" ref="w1[0:5]"/>
    <item id="m2" ref="w1[5:7]"/>
  </tier>
  <tier type="glosses" id="g" ref="m">
    <item id="g1" ref="m1">cook</item>
    <item id="g2" ref="m2">2</item>
    <item id="g3" ref="m2">SG</item>
    <item id="g4" ref="m2">PRS</item>
    <item id="g5" ref="m2">IND</item>
  </tier>
</igt>
```

### Features

Xigt has several features that help enable complex alignments, and
these features can be ignored for simpler IGT.<commit_msg>Added install instructions and some links.<commit_after>Xigt
====

A library for *eXtensible Interlinear Glossed Text*
([IGT](http://en.wikipedia.org/wiki/Interlinear_gloss))

Xigt is created with extensibility in mind, offering a core framework
and XML schema (in [RelaxNG](http://relaxng.org/)) ready to be extended
without much trouble. Here is a small example of an IGT encoded in
Xigt's XML format:

```xml
<igt id="i1" lg="spa">
  <tier type="words" id="w">
    <item id="w1">cocinas</item>
  </tier>
  <tier type="morphemes" id="m" ref="w">
    <item id="m1" ref="w1[0:5]"/>
    <item id="m2" ref="w1[5:7]"/>
  </tier>
  <tier type="glosses" id="g" ref="m">
    <item id="g1" ref="m1">cook</item>
    <item id="g2" ref="m2">2</item>
    <item id="g3" ref="m2">SG</item>
    <item id="g4" ref="m2">PRS</item>
    <item id="g5" ref="m2">IND</item>
  </tier>
</igt>
```

### Installation and Requirements

Xigt requires the following:
* [Python3](http://python.org/download/)

For using Xigt's XML format, we recommend you also install:
* A RelaxNG validator for compact schema, like
  [Jing](http://www.thaiopensource.com/relaxng/jing.html)
* The [lxml](http://lxml.de/) XML library for Python

After downloading Xigt, install it with the setup.py command:

```Bash
$ ./setup.py install
```

Note: To remove (uninstall) Xigt, remove its package directory. On a Linux
system, this may somewhere like `/usr/lib/python3.X/site-packages/xigt/`.
There may also be an Egg info file, such as
`/usr/lib/python3.X/site-packages/Xigt-(version)-py3.X.egg-info`.

### Features

Xigt has several features that help enable complex alignments, and
these features can be ignored for simpler IGT.
{'fraction_non_alphanumeric': 0.1727810650887574, 'fraction_numerical': 0.01814595660749507, 'mean_word_length': 4.294363256784969, 'pattern_counts': {'":': 0, '<': 47, '<?xml version=': 0, '>': 47, 'https://': 0, 'lorem ipsum': 0, 'www.': 1, 'xml': 4}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2664597', 'n_tokens_mistral': 960, 'n_tokens_neox': 926, 'n_words': 279}