rowih 1.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- rowih/__init__.py +5 -0
- rowih/api.py +610 -0
- rowih/authentication.py +124 -0
- rowih/channels.py +107 -0
- rowih/checker.py +485 -0
- rowih/cli.py +271 -0
- rowih/conformance.py +333 -0
- rowih/convention_rules.py +188 -0
- rowih/conventions.py +232 -0
- rowih/conversion.py +167 -0
- rowih/coordination.py +146 -0
- rowih/data.py +340 -0
- rowih/diagnostics.py +174 -0
- rowih/dialects.py +93 -0
- rowih/discourse.py +431 -0
- rowih/discourse_rules.py +122 -0
- rowih/drawing.py +450 -0
- rowih/economy.py +247 -0
- rowih/english.py +369 -0
- rowih/features.py +85 -0
- rowih/figure_rules.py +85 -0
- rowih/figures.py +133 -0
- rowih/formation.py +179 -0
- rowih/generator.py +319 -0
- rowih/idioms.py +213 -0
- rowih/lexer.py +291 -0
- rowih/lexicon_checks.py +464 -0
- rowih/marking.py +138 -0
- rowih/moves.py +179 -0
- rowih/negotiation.py +96 -0
- rowih/normal.py +455 -0
- rowih/notation.py +672 -0
- rowih/parity.py +154 -0
- rowih/parser.py +1099 -0
- rowih/png.py +176 -0
- rowih/raster.py +82 -0
- rowih/register_rules.py +139 -0
- rowih/registers.py +174 -0
- rowih/relay.py +237 -0
- rowih/releases.py +167 -0
- rowih/render.py +111 -0
- rowih/repair.py +457 -0
- rowih/report.py +35 -0
- rowih/senses.py +57 -0
- rowih/serialise.py +59 -0
- rowih/server.py +348 -0
- rowih/server_tools.py +470 -0
- rowih/speech.py +109 -0
- rowih/standing.py +160 -0
- rowih/statements.py +89 -0
- rowih/structured.py +75 -0
- rowih/summary.py +116 -0
- rowih/syntax.py +253 -0
- rowih/synthesis.py +174 -0
- rowih/temporal.py +471 -0
- rowih/tree.py +337 -0
- rowih/verse.py +48 -0
- rowih/versions.py +36 -0
- rowih/view.py +613 -0
- rowih/writer.py +284 -0
- rowih/writing.py +99 -0
- rowih-1.1.0.dist-info/METADATA +17 -0
- rowih-1.1.0.dist-info/RECORD +1601 -0
- rowih-1.1.0.dist-info/WHEEL +4 -0
- rowih-1.1.0.dist-info/entry_points.txt +2 -0
- rowih-1.1.0.dist-info/licenses/LICENSE +202 -0
- rowih-1.1.0.dist-info/licenses/LICENSE-CC-BY-4.0 +396 -0
- rowih_data/language/font/rowih.ttf +0 -0
- rowih_data/language/grammar.json +3886 -0
- rowih_data/language/phonology.json +205 -0
- rowih_data/language/protocol.json +259 -0
- rowih_data/language/releases.json +129 -0
- rowih_data/language/semantics.json +611 -0
- rowih_data/language/writing.json +2237 -0
- rowih_data/lexicon/fields/1.0.json +8418 -0
- rowih_data/lexicon/formation/lx.000096.json +39 -0
- rowih_data/lexicon/formation/lx.000097.json +39 -0
- rowih_data/lexicon/formation/lx.000098.json +39 -0
- rowih_data/lexicon/formation/lx.000099.json +39 -0
- rowih_data/lexicon/formation/lx.000100.json +39 -0
- rowih_data/lexicon/formation/lx.000101.json +39 -0
- rowih_data/lexicon/formation/lx.000102.json +42 -0
- rowih_data/lexicon/formation/lx.000103.json +42 -0
- rowih_data/lexicon/formation/lx.000104.json +42 -0
- rowih_data/lexicon/formation/lx.000105.json +42 -0
- rowih_data/lexicon/formation/lx.000108.json +39 -0
- rowih_data/lexicon/formation/lx.000109.json +39 -0
- rowih_data/lexicon/formation/lx.000110.json +39 -0
- rowih_data/lexicon/formation/lx.000111.json +39 -0
- rowih_data/lexicon/formation/lx.000112.json +51 -0
- rowih_data/lexicon/formation/lx.000113.json +46 -0
- rowih_data/lexicon/formation/lx.000139.json +57 -0
- rowih_data/lexicon/formation/lx.000140.json +45 -0
- rowih_data/lexicon/formation/lx.000141.json +45 -0
- rowih_data/lexicon/formation/lx.000184.json +36 -0
- rowih_data/lexicon/formation/lx.000594.json +46 -0
- rowih_data/lexicon/formation/lx.000595.json +39 -0
- rowih_data/lexicon/formation/lx.000596.json +39 -0
- rowih_data/lexicon/formation/lx.000597.json +39 -0
- rowih_data/lexicon/formation/lx.000598.json +39 -0
- rowih_data/lexicon/formation/lx.000868.json +48 -0
- rowih_data/lexicon/formation/lx.000869.json +55 -0
- rowih_data/lexicon/formation/lx.000870.json +48 -0
- rowih_data/lexicon/formation/lx.000871.json +48 -0
- rowih_data/lexicon/formation/lx.000872.json +65 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.declared-loss.diction.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.declared-loss.register.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.declared-loss.relation-between-participants.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.declared-loss.stance.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.declared-loss.wording.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.figurative-type.hyperbole.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.figurative-type.irony.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.figurative-type.metaphor.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.figurative-type.metonymy.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.figures-relation.stands-for.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.figures-relation.target-content.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.idiom-selection.idiom-entry.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.kind-of-ambiguity.accidental.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.kind-of-ambiguity.creative.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.kind-of-ambiguity.epistemic.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.kind-of-ambiguity.productive.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.kind-of-ambiguity.strategic.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.precision-bound-declaration.precision-bound.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.register.casual.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.register.ceremonial.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.register.explanatory.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.register.formal.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.register.playful.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.register.protocol.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.register.raw.json +11 -0
- rowih_data/lexicon/grammar/g.ambiguity-and-figures.register.standard.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.counterparty.counterparty.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.execution-phase.abandoned.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.execution-phase.attempted.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.execution-phase.completed.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.execution-phase.failed.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.execution-phase.not-yet-begun.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.execution-phase.unstated.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.acceptance.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.belief.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.credence.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.desire.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.entertaining.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.goal.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.intention.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.preference.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.settled.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.unexamined.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.unresolvable.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.kind-of-attitude.unresolved.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.origin-of-an-aim.holders-own.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.origin-of-an-aim.instruction-received.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.origin-of-an-aim.norm.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.origin-of-an-aim.principals.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.origin-of-an-aim.unstated.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.status-of-a-normative-state.discharged.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.status-of-a-normative-state.in-force.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.status-of-a-normative-state.released.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.status-of-a-normative-state.retracted-by-its-holder.json +11 -0
- rowih_data/lexicon/grammar/g.attitudes-and-aims.status-of-a-normative-state.withdrawn.json +11 -0
- rowih_data/lexicon/grammar/g.force.authority-claimed.in-a-named-role.json +11 -0
- rowih_data/lexicon/grammar/g.force.authority-claimed.on-behalf-of-a-named-principal.json +11 -0
- rowih_data/lexicon/grammar/g.force.authority-claimed.speakers-own.json +11 -0
- rowih_data/lexicon/grammar/g.force.bindingness.bound-within-a-protocol.json +11 -0
- rowih_data/lexicon/grammar/g.force.bindingness.bound.json +11 -0
- rowih_data/lexicon/grammar/g.force.bindingness.on-acceptance.json +11 -0
- rowih_data/lexicon/grammar/g.force.change-made.acknowledgement.json +11 -0
- rowih_data/lexicon/grammar/g.force.change-made.lowering.json +11 -0
- rowih_data/lexicon/grammar/g.force.change-made.none.json +11 -0
- rowih_data/lexicon/grammar/g.force.change-made.resolution.json +11 -0
- rowih_data/lexicon/grammar/g.force.extent.part-of-it.json +11 -0
- rowih_data/lexicon/grammar/g.force.extent.whole-entry.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-issue.challenge.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-issue.proposal.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-issue.question.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-issue.request.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-normative-entry.assignment.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-normative-entry.commitment.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-normative-entry.obligation.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-normative-entry.permission.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-normative-entry.recommendation.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-setting.calibration.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-setting.definition.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-setting.relation.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-setting.role.json +11 -0
- rowih_data/lexicon/grammar/g.force.kind-of-setting.version.json +11 -0
- rowih_data/lexicon/grammar/g.force.outcome-of-a-resolution.acceptance.json +11 -0
- rowih_data/lexicon/grammar/g.force.outcome-of-a-resolution.answer.json +11 -0
- rowih_data/lexicon/grammar/g.force.outcome-of-a-resolution.failure.json +11 -0
- rowih_data/lexicon/grammar/g.force.outcome-of-a-resolution.rejection.json +11 -0
- rowih_data/lexicon/grammar/g.force.outcome-of-a-resolution.settlement.json +11 -0
- rowih_data/lexicon/grammar/g.force.what-the-move-adds.asserted-position.json +11 -0
- rowih_data/lexicon/grammar/g.force.what-the-move-adds.conceded-position.json +11 -0
- rowih_data/lexicon/grammar/g.force.what-the-move-adds.issue.json +11 -0
- rowih_data/lexicon/grammar/g.force.what-the-move-adds.normative-entry.json +11 -0
- rowih_data/lexicon/grammar/g.force.what-the-move-adds.nothing-beyond-its-own-record.json +11 -0
- rowih_data/lexicon/grammar/g.force.what-the-move-adds.setting.json +11 -0
- rowih_data/lexicon/grammar/g.force.what-the-move-adds.summary.json +11 -0
- rowih_data/lexicon/grammar/g.force.what-the-move-adds.supposition.json +11 -0
- rowih_data/lexicon/grammar/g.force.when-the-change-takes-effect.on-acceptance.json +11 -0
- rowih_data/lexicon/grammar/g.force.when-the-change-takes-effect.on-the-move.json +11 -0
- rowih_data/lexicon/grammar/g.message.embedded-material.declared-data.json +11 -0
- rowih_data/lexicon/grammar/g.message.embedded-material.example.json +11 -0
- rowih_data/lexicon/grammar/g.message.embedded-material.quotation.json +11 -0
- rowih_data/lexicon/grammar/g.message.forwarded.forwarded.json +11 -0
- rowih_data/lexicon/grammar/g.message.message-field.authentication.json +11 -0
- rowih_data/lexicon/grammar/g.message.message-field.communication-time.json +11 -0
- rowih_data/lexicon/grammar/g.message.message-field.first-entry.json +11 -0
- rowih_data/lexicon/grammar/g.message.message-field.identifier.json +11 -0
- rowih_data/lexicon/grammar/g.message.message-field.integrity-check-value.json +11 -0
- rowih_data/lexicon/grammar/g.message.message-field.recipients.json +11 -0
- rowih_data/lexicon/grammar/g.message.message-field.semantic-check-value.json +11 -0
- rowih_data/lexicon/grammar/g.message.message-field.sender.json +11 -0
- rowih_data/lexicon/grammar/g.message.message-field.version.json +11 -0
- rowih_data/lexicon/grammar/g.message.word-count.word-count.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.check-word.check-0.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.check-word.check-1.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.check-word.check-10.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.check-word.check-2.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.check-word.check-3.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.check-word.check-4.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.check-word.check-5.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.check-word.check-6.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.check-word.check-7.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.check-word.check-8.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.check-word.check-9.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.decimal-point.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.eight.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.exponent.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.five.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.four.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.interval.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.negative.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.nine.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.one.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.ratio.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.seven.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.six.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.three.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.two.json +11 -0
- rowih_data/lexicon/grammar/g.numbers.numeral.zero.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.protocol-statement.holds.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.protocol-statement.lacks.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.protocol-statement.not-held.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.protocol-statement.send-again.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.protocol-statement.understands.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.statement-part.channel.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.statement-part.entries.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.statement-part.lacking-features.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.statement-part.language-version.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.statement-part.lexicon-version.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.statement-part.protocol-version.json +11 -0
- rowih_data/lexicon/grammar/g.protocol.statement-part.serials.json +11 -0
- rowih_data/lexicon/grammar/g.reference.access.absent.json +11 -0
- rowih_data/lexicon/grammar/g.reference.access.external.json +11 -0
- rowih_data/lexicon/grammar/g.reference.access.internal.json +11 -0
- rowih_data/lexicon/grammar/g.reference.access.present.json +11 -0
- rowih_data/lexicon/grammar/g.reference.discourse-status.given.json +11 -0
- rowih_data/lexicon/grammar/g.reference.discourse-status.in-the-speakers-view-of-the-common-ground.json +11 -0
- rowih_data/lexicon/grammar/g.reference.discourse-status.inferable.json +11 -0
- rowih_data/lexicon/grammar/g.reference.discourse-status.new.json +11 -0
- rowih_data/lexicon/grammar/g.reference.existence-commitment.asserted-not-to-exist.json +11 -0
- rowih_data/lexicon/grammar/g.reference.existence-commitment.asserted-to-exist.json +11 -0
- rowih_data/lexicon/grammar/g.reference.existence-commitment.mentioned-without-existence-asserted.json +11 -0
- rowih_data/lexicon/grammar/g.reference.existence-commitment.predicted-to-exist.json +11 -0
- rowih_data/lexicon/grammar/g.reference.existence-commitment.within-a-declared-fiction.json +11 -0
- rowih_data/lexicon/grammar/g.reference.existence-commitment.within-a-supposition.json +11 -0
- rowih_data/lexicon/grammar/g.reference.expected-status-of-an-entry.in-force.json +11 -0
- rowih_data/lexicon/grammar/g.reference.expected-status-of-an-entry.lowered.json +11 -0
- rowih_data/lexicon/grammar/g.reference.expected-status-of-an-entry.open.json +11 -0
- rowih_data/lexicon/grammar/g.reference.expected-status-of-an-entry.resolved.json +11 -0
- rowih_data/lexicon/grammar/g.reference.expected-status-of-an-entry.withdrawn.json +11 -0
- rowih_data/lexicon/grammar/g.reference.kind-of-reference.mentions.json +11 -0
- rowih_data/lexicon/grammar/g.reference.kind-of-reference.names.json +11 -0
- rowih_data/lexicon/grammar/g.reference.person.environment.json +11 -0
- rowih_data/lexicon/grammar/g.reference.person.exclusive-collective.json +11 -0
- rowih_data/lexicon/grammar/g.reference.person.external-source.json +11 -0
- rowih_data/lexicon/grammar/g.reference.person.inclusive-collective.json +11 -0
- rowih_data/lexicon/grammar/g.reference.person.interlocutor.json +11 -0
- rowih_data/lexicon/grammar/g.reference.person.self.json +11 -0
- rowih_data/lexicon/grammar/g.reference.person.system.json +11 -0
- rowih_data/lexicon/grammar/g.reference.person.third-agent.json +11 -0
- rowih_data/lexicon/grammar/g.reference.person.tool.json +11 -0
- rowih_data/lexicon/grammar/g.reference.reading-of-a-collective.distributive.json +11 -0
- rowih_data/lexicon/grammar/g.reference.reading-of-a-collective.joint.json +11 -0
- rowih_data/lexicon/grammar/g.reference.specificity.non-specific.json +11 -0
- rowih_data/lexicon/grammar/g.reference.specificity.specific.json +11 -0
- rowih_data/lexicon/grammar/g.reference.verification.unverified.json +11 -0
- rowih_data/lexicon/grammar/g.reference.verification.verified-by-a-named-third-party.json +11 -0
- rowih_data/lexicon/grammar/g.reference.verification.verified-by-the-speaker.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.aspect.completive.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.aspect.continuative.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.aspect.habitual.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.aspect.inceptive.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.aspect.interrupted.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.aspect.iterative.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.aspect.perfective.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.aspect.progressive.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.aspect.stative.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.comparator.approximately.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.comparator.as-a-representative-quantity.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.comparator.at-least.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.comparator.at-most.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.comparator.exactly.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.comparator.unstated.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.connective.condition.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.connective.conjunction.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.connective.equivalence.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.connective.exclusive-disjunction.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.connective.inclusive-disjunction.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.information-structure.contrastive-focus.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.information-structure.focus.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.information-structure.topic.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.kind-of-question.alternative.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.kind-of-question.constituent.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.kind-of-question.polar.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.participation.actor.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.participation.content.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.participation.holder.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.participation.instrument.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.participation.recipient.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.participation.undergoer.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.polarity.affirmative.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.polarity.negative.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.quantifier.collective.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.quantifier.definite.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.quantifier.distributive.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.quantifier.existential.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.quantifier.generic.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.quantifier.indefinite.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.quantifier.universal.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.status-of-content.at-issue.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.status-of-content.conventionally-implied.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.status-of-content.presupposed.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.status-of-content.resting-on-an-unstated-assumption.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.structural-relation.identity.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.structural-relation.member-of.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.world-of-evaluation.actual.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.world-of-evaluation.counterfactual.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.world-of-evaluation.within-a-fiction.json +11 -0
- rowih_data/lexicon/grammar/g.situations-and-contents.world-of-evaluation.within-a-supposition.json +11 -0
- rowih_data/lexicon/grammar/g.standing.basis.computation.json +12 -0
- rowih_data/lexicon/grammar/g.standing.basis.inference.json +12 -0
- rowih_data/lexicon/grammar/g.standing.basis.introspection.json +12 -0
- rowih_data/lexicon/grammar/g.standing.basis.observation.json +12 -0
- rowih_data/lexicon/grammar/g.standing.basis.report.json +12 -0
- rowih_data/lexicon/grammar/g.standing.basis.retrieval.json +12 -0
- rowih_data/lexicon/grammar/g.standing.basis.simulation.json +12 -0
- rowih_data/lexicon/grammar/g.standing.basis.source-lost.json +12 -0
- rowih_data/lexicon/grammar/g.standing.basis.trained-knowledge.json +12 -0
- rowih_data/lexicon/grammar/g.standing.basis.unstated.json +12 -0
- rowih_data/lexicon/grammar/g.standing.independence-of-a-confirmation.independent.json +11 -0
- rowih_data/lexicon/grammar/g.standing.independence-of-a-confirmation.same-source.json +11 -0
- rowih_data/lexicon/grammar/g.standing.provenance-link.premise.json +11 -0
- rowih_data/lexicon/grammar/g.standing.provenance-link.relayer.json +11 -0
- rowih_data/lexicon/grammar/g.standing.provenance-link.source.json +11 -0
- rowih_data/lexicon/grammar/g.standing.strength.certain.json +16 -0
- rowih_data/lexicon/grammar/g.standing.strength.highly-probable.json +16 -0
- rowih_data/lexicon/grammar/g.standing.strength.probable.json +16 -0
- rowih_data/lexicon/grammar/g.standing.strength.speculative.json +16 -0
- rowih_data/lexicon/grammar/g.standing.strength.uncertain.json +16 -0
- rowih_data/lexicon/grammar/g.standing.strength.unstated.json +16 -0
- rowih_data/lexicon/grammar/g.time.time-anchor.ago.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-anchor.hence.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-anchor.now.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-anchor.per.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-index.communication-time.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-index.deadline.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-index.event-time.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-index.execution-time.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-index.inference-time.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-index.observation-time.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-index.reference-time.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-index.validity-interval.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.after.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.before.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.contains.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.during.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.equals.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.finished-by.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.finishes.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.meets.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.met-by.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.overlapped-by.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.overlaps.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.started-by.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-relation.starts.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-unit.day.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-unit.hour.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-unit.minute.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-unit.month.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-unit.second.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-unit.week.json +11 -0
- rowih_data/lexicon/grammar/g.time.time-unit.year.json +11 -0
- rowih_data/lexicon/idioms/lx.000114.json +55 -0
- rowih_data/lexicon/idioms/lx.000115.json +54 -0
- rowih_data/lexicon/idioms/lx.000116.json +54 -0
- rowih_data/lexicon/idioms/lx.000117.json +55 -0
- rowih_data/lexicon/idioms/lx.000118.json +55 -0
- rowih_data/lexicon/idioms/lx.000119.json +56 -0
- rowih_data/lexicon/idioms/lx.000120.json +55 -0
- rowih_data/lexicon/idioms/lx.000121.json +55 -0
- rowih_data/lexicon/idioms/lx.000122.json +55 -0
- rowih_data/lexicon/idioms/lx.000123.json +55 -0
- rowih_data/lexicon/idioms/lx.000124.json +54 -0
- rowih_data/lexicon/idioms/lx.000125.json +54 -0
- rowih_data/lexicon/idioms/lx.000126.json +58 -0
- rowih_data/lexicon/idioms/lx.000127.json +59 -0
- rowih_data/lexicon/idioms/lx.000128.json +59 -0
- rowih_data/lexicon/idioms/lx.000129.json +59 -0
- rowih_data/lexicon/idioms/lx.000130.json +58 -0
- rowih_data/lexicon/idioms/lx.000131.json +56 -0
- rowih_data/lexicon/idioms/lx.000132.json +58 -0
- rowih_data/lexicon/idioms/lx.000133.json +56 -0
- rowih_data/lexicon/idioms/lx.000134.json +57 -0
- rowih_data/lexicon/idioms/lx.000135.json +57 -0
- rowih_data/lexicon/idioms/lx.000136.json +57 -0
- rowih_data/lexicon/idioms/lx.000137.json +55 -0
- rowih_data/lexicon/idioms/lx.000138.json +56 -0
- rowih_data/lexicon/idioms/lx.000142.json +50 -0
- rowih_data/lexicon/idioms/lx.000143.json +50 -0
- rowih_data/lexicon/idioms/lx.000144.json +56 -0
- rowih_data/lexicon/idioms/lx.000145.json +57 -0
- rowih_data/lexicon/idioms/lx.000146.json +56 -0
- rowih_data/lexicon/idioms/lx.000147.json +56 -0
- rowih_data/lexicon/idioms/lx.000148.json +56 -0
- rowih_data/lexicon/idioms/lx.000149.json +56 -0
- rowih_data/lexicon/idioms/lx.000150.json +50 -0
- rowih_data/lexicon/idioms/lx.000151.json +55 -0
- rowih_data/lexicon/idioms/lx.000152.json +54 -0
- rowih_data/lexicon/idioms/lx.000153.json +55 -0
- rowih_data/lexicon/idioms/lx.000154.json +51 -0
- rowih_data/lexicon/idioms/lx.000155.json +48 -0
- rowih_data/lexicon/idioms/lx.000156.json +49 -0
- rowih_data/lexicon/idioms/lx.000157.json +46 -0
- rowih_data/lexicon/idioms/lx.000158.json +51 -0
- rowih_data/lexicon/idioms/lx.000159.json +51 -0
- rowih_data/lexicon/idioms/lx.000599.json +51 -0
- rowih_data/lexicon/idioms/lx.000600.json +51 -0
- rowih_data/lexicon/idioms/lx.000601.json +51 -0
- rowih_data/lexicon/idioms/lx.000602.json +51 -0
- rowih_data/lexicon/idioms/lx.000603.json +51 -0
- rowih_data/lexicon/idioms/lx.000604.json +47 -0
- rowih_data/lexicon/idioms/lx.000605.json +51 -0
- rowih_data/lexicon/idioms/lx.000606.json +51 -0
- rowih_data/lexicon/idioms/lx.000607.json +44 -0
- rowih_data/lexicon/idioms/lx.000608.json +45 -0
- rowih_data/lexicon/idioms/lx.000609.json +51 -0
- rowih_data/lexicon/idioms/lx.000610.json +51 -0
- rowih_data/lexicon/idioms/lx.000611.json +51 -0
- rowih_data/lexicon/idioms/lx.000612.json +44 -0
- rowih_data/lexicon/idioms/lx.000613.json +51 -0
- rowih_data/lexicon/idioms/lx.000614.json +45 -0
- rowih_data/lexicon/idioms/lx.000615.json +51 -0
- rowih_data/lexicon/idioms/lx.000616.json +51 -0
- rowih_data/lexicon/idioms/lx.000617.json +51 -0
- rowih_data/lexicon/idioms/lx.000618.json +51 -0
- rowih_data/lexicon/idioms/lx.000619.json +51 -0
- rowih_data/lexicon/idioms/lx.000620.json +44 -0
- rowih_data/lexicon/idioms/lx.000621.json +45 -0
- rowih_data/lexicon/idioms/lx.000622.json +51 -0
- rowih_data/lexicon/idioms/lx.000623.json +57 -0
- rowih_data/lexicon/idioms/lx.000624.json +57 -0
- rowih_data/lexicon/idioms/lx.000625.json +51 -0
- rowih_data/lexicon/idioms/lx.000626.json +51 -0
- rowih_data/lexicon/idioms/lx.000627.json +51 -0
- rowih_data/lexicon/idioms/lx.000628.json +57 -0
- rowih_data/lexicon/idioms/lx.000629.json +57 -0
- rowih_data/lexicon/idioms/lx.000630.json +57 -0
- rowih_data/lexicon/idioms/lx.000631.json +56 -0
- rowih_data/lexicon/idioms/lx.000632.json +56 -0
- rowih_data/lexicon/idioms/lx.000633.json +56 -0
- rowih_data/lexicon/idioms/lx.000634.json +56 -0
- rowih_data/lexicon/idioms/lx.000635.json +56 -0
- rowih_data/lexicon/idioms/lx.000636.json +50 -0
- rowih_data/lexicon/idioms/lx.000637.json +50 -0
- rowih_data/lexicon/idioms/lx.000638.json +50 -0
- rowih_data/lexicon/idioms/lx.000639.json +56 -0
- rowih_data/lexicon/idioms/lx.000640.json +56 -0
- rowih_data/lexicon/idioms/lx.000641.json +50 -0
- rowih_data/lexicon/idioms/lx.000642.json +50 -0
- rowih_data/lexicon/idioms/lx.000643.json +56 -0
- rowih_data/lexicon/idioms/lx.000644.json +56 -0
- rowih_data/lexicon/idioms/lx.000645.json +56 -0
- rowih_data/lexicon/idioms/lx.000646.json +56 -0
- rowih_data/lexicon/idioms/lx.000647.json +56 -0
- rowih_data/lexicon/idioms/lx.000648.json +56 -0
- rowih_data/lexicon/idioms/lx.000649.json +56 -0
- rowih_data/lexicon/idioms/lx.000650.json +56 -0
- rowih_data/lexicon/idioms/lx.000651.json +56 -0
- rowih_data/lexicon/idioms/lx.000652.json +56 -0
- rowih_data/lexicon/idioms/lx.000653.json +56 -0
- rowih_data/lexicon/idioms/lx.000654.json +56 -0
- rowih_data/lexicon/idioms/lx.000655.json +56 -0
- rowih_data/lexicon/idioms/lx.000656.json +56 -0
- rowih_data/lexicon/idioms/lx.000657.json +56 -0
- rowih_data/lexicon/idioms/lx.000658.json +56 -0
- rowih_data/lexicon/idioms/lx.000659.json +50 -0
- rowih_data/lexicon/idioms/lx.000660.json +56 -0
- rowih_data/lexicon/idioms/lx.000661.json +50 -0
- rowih_data/lexicon/idioms/lx.000662.json +50 -0
- rowih_data/lexicon/idioms/lx.000663.json +50 -0
- rowih_data/lexicon/idioms/lx.000664.json +50 -0
- rowih_data/lexicon/idioms/lx.000665.json +50 -0
- rowih_data/lexicon/idioms/lx.000666.json +50 -0
- rowih_data/lexicon/idioms/lx.000667.json +50 -0
- rowih_data/lexicon/idioms/lx.000668.json +50 -0
- rowih_data/lexicon/idioms/lx.000669.json +50 -0
- rowih_data/lexicon/idioms/lx.000670.json +56 -0
- rowih_data/lexicon/idioms/lx.000671.json +56 -0
- rowih_data/lexicon/idioms/lx.000672.json +56 -0
- rowih_data/lexicon/idioms/lx.000673.json +50 -0
- rowih_data/lexicon/idioms/lx.000674.json +56 -0
- rowih_data/lexicon/idioms/lx.000675.json +56 -0
- rowih_data/lexicon/idioms/lx.000676.json +50 -0
- rowih_data/lexicon/idioms/lx.000677.json +50 -0
- rowih_data/lexicon/idioms/lx.000678.json +50 -0
- rowih_data/lexicon/idioms/lx.000679.json +56 -0
- rowih_data/lexicon/idioms/lx.000680.json +50 -0
- rowih_data/lexicon/idioms/lx.000681.json +56 -0
- rowih_data/lexicon/idioms/lx.000682.json +56 -0
- rowih_data/lexicon/idioms/lx.000683.json +56 -0
- rowih_data/lexicon/idioms/lx.000684.json +56 -0
- rowih_data/lexicon/idioms/lx.000685.json +50 -0
- rowih_data/lexicon/idioms/lx.000686.json +50 -0
- rowih_data/lexicon/idioms/lx.000687.json +50 -0
- rowih_data/lexicon/idioms/lx.000688.json +56 -0
- rowih_data/lexicon/idioms/lx.000689.json +56 -0
- rowih_data/lexicon/idioms/lx.000690.json +56 -0
- rowih_data/lexicon/idioms/lx.000691.json +56 -0
- rowih_data/lexicon/idioms/lx.000692.json +56 -0
- rowih_data/lexicon/idioms/lx.000693.json +56 -0
- rowih_data/lexicon/idioms/lx.000694.json +56 -0
- rowih_data/lexicon/idioms/lx.000695.json +56 -0
- rowih_data/lexicon/idioms/lx.000696.json +50 -0
- rowih_data/lexicon/idioms/lx.000697.json +50 -0
- rowih_data/lexicon/idioms/lx.000698.json +50 -0
- rowih_data/lexicon/idioms/lx.000699.json +56 -0
- rowih_data/lexicon/idioms/lx.000700.json +50 -0
- rowih_data/lexicon/idioms/lx.000701.json +50 -0
- rowih_data/lexicon/idioms/lx.000702.json +56 -0
- rowih_data/lexicon/idioms/lx.000703.json +56 -0
- rowih_data/lexicon/idioms/lx.000704.json +56 -0
- rowih_data/lexicon/idioms/lx.000705.json +50 -0
- rowih_data/lexicon/idioms/lx.000706.json +50 -0
- rowih_data/lexicon/idioms/lx.000707.json +50 -0
- rowih_data/lexicon/idioms/lx.000708.json +50 -0
- rowih_data/lexicon/idioms/lx.000709.json +50 -0
- rowih_data/lexicon/idioms/lx.000710.json +50 -0
- rowih_data/lexicon/idioms/lx.000711.json +50 -0
- rowih_data/lexicon/idioms/lx.000712.json +50 -0
- rowih_data/lexicon/idioms/lx.000713.json +50 -0
- rowih_data/lexicon/idioms/lx.000714.json +50 -0
- rowih_data/lexicon/idioms/lx.000715.json +50 -0
- rowih_data/lexicon/idioms/lx.000716.json +50 -0
- rowih_data/lexicon/idioms/lx.000717.json +56 -0
- rowih_data/lexicon/idioms/lx.000718.json +50 -0
- rowih_data/lexicon/idioms/lx.000719.json +50 -0
- rowih_data/lexicon/idioms/lx.000720.json +50 -0
- rowih_data/lexicon/idioms/lx.000721.json +50 -0
- rowih_data/lexicon/idioms/lx.000722.json +50 -0
- rowih_data/lexicon/idioms/lx.000723.json +50 -0
- rowih_data/lexicon/idioms/lx.000724.json +56 -0
- rowih_data/lexicon/idioms/lx.000725.json +50 -0
- rowih_data/lexicon/idioms/lx.000726.json +50 -0
- rowih_data/lexicon/idioms/lx.000727.json +50 -0
- rowih_data/lexicon/idioms/lx.000728.json +50 -0
- rowih_data/lexicon/idioms/lx.000729.json +50 -0
- rowih_data/lexicon/idioms/lx.000730.json +56 -0
- rowih_data/lexicon/idioms/lx.000731.json +50 -0
- rowih_data/lexicon/idioms/lx.000732.json +51 -0
- rowih_data/lexicon/idioms/lx.000733.json +51 -0
- rowih_data/lexicon/idioms/lx.000734.json +51 -0
- rowih_data/lexicon/idioms/lx.000735.json +45 -0
- rowih_data/lexicon/idioms/lx.000736.json +51 -0
- rowih_data/lexicon/idioms/lx.000737.json +51 -0
- rowih_data/lexicon/idioms/lx.000738.json +51 -0
- rowih_data/lexicon/idioms/lx.000739.json +51 -0
- rowih_data/lexicon/idioms/lx.000740.json +51 -0
- rowih_data/lexicon/idioms/lx.000741.json +51 -0
- rowih_data/lexicon/idioms/lx.000742.json +51 -0
- rowih_data/lexicon/idioms/lx.000743.json +51 -0
- rowih_data/lexicon/idioms/lx.000744.json +51 -0
- rowih_data/lexicon/idioms/lx.000745.json +51 -0
- rowih_data/lexicon/idioms/lx.000746.json +51 -0
- rowih_data/lexicon/idioms/lx.000747.json +44 -0
- rowih_data/lexicon/idioms/lx.000748.json +56 -0
- rowih_data/lexicon/idioms/lx.000749.json +56 -0
- rowih_data/lexicon/idioms/lx.000750.json +56 -0
- rowih_data/lexicon/idioms/lx.000751.json +56 -0
- rowih_data/lexicon/idioms/lx.000752.json +50 -0
- rowih_data/lexicon/idioms/lx.000753.json +50 -0
- rowih_data/lexicon/idioms/lx.000754.json +50 -0
- rowih_data/lexicon/idioms/lx.000755.json +56 -0
- rowih_data/lexicon/idioms/lx.000756.json +56 -0
- rowih_data/lexicon/idioms/lx.000757.json +50 -0
- rowih_data/lexicon/idioms/lx.000758.json +50 -0
- rowih_data/lexicon/idioms/lx.000759.json +50 -0
- rowih_data/lexicon/idioms/lx.000760.json +50 -0
- rowih_data/lexicon/idioms/lx.000761.json +50 -0
- rowih_data/lexicon/idioms/lx.000762.json +50 -0
- rowih_data/lexicon/idioms/lx.000763.json +51 -0
- rowih_data/lexicon/idioms/lx.000764.json +51 -0
- rowih_data/lexicon/idioms/lx.000765.json +51 -0
- rowih_data/lexicon/idioms/lx.000766.json +50 -0
- rowih_data/lexicon/idioms/lx.000767.json +55 -0
- rowih_data/lexicon/idioms/lx.000768.json +49 -0
- rowih_data/lexicon/idioms/lx.000769.json +51 -0
- rowih_data/lexicon/idioms/lx.000770.json +51 -0
- rowih_data/lexicon/idioms/lx.000771.json +51 -0
- rowih_data/lexicon/idioms/lx.000772.json +51 -0
- rowih_data/lexicon/idioms/lx.000773.json +51 -0
- rowih_data/lexicon/idioms/lx.000774.json +51 -0
- rowih_data/lexicon/idioms/lx.000775.json +49 -0
- rowih_data/lexicon/idioms/lx.000776.json +49 -0
- rowih_data/lexicon/idioms/lx.000777.json +49 -0
- rowih_data/lexicon/idioms/lx.000778.json +49 -0
- rowih_data/lexicon/idioms/lx.000779.json +55 -0
- rowih_data/lexicon/idioms/lx.000780.json +55 -0
- rowih_data/lexicon/idioms/lx.000781.json +55 -0
- rowih_data/lexicon/idioms/lx.000782.json +49 -0
- rowih_data/lexicon/idioms/lx.000783.json +55 -0
- rowih_data/lexicon/idioms/lx.000784.json +55 -0
- rowih_data/lexicon/idioms/lx.000785.json +55 -0
- rowih_data/lexicon/idioms/lx.000786.json +55 -0
- rowih_data/lexicon/idioms/lx.000787.json +55 -0
- rowih_data/lexicon/idioms/lx.000788.json +55 -0
- rowih_data/lexicon/idioms/lx.000789.json +55 -0
- rowih_data/lexicon/idioms/lx.000790.json +49 -0
- rowih_data/lexicon/idioms/lx.000791.json +55 -0
- rowih_data/lexicon/idioms/lx.000792.json +49 -0
- rowih_data/lexicon/idioms/lx.000793.json +49 -0
- rowih_data/lexicon/idioms/lx.000794.json +49 -0
- rowih_data/lexicon/idioms/lx.000795.json +49 -0
- rowih_data/lexicon/idioms/lx.000796.json +49 -0
- rowih_data/lexicon/idioms/lx.000797.json +49 -0
- rowih_data/lexicon/idioms/lx.000798.json +49 -0
- rowih_data/lexicon/idioms/lx.000799.json +49 -0
- rowih_data/lexicon/idioms/lx.000800.json +55 -0
- rowih_data/lexicon/idioms/lx.000801.json +55 -0
- rowih_data/lexicon/idioms/lx.000802.json +49 -0
- rowih_data/lexicon/idioms/lx.000803.json +49 -0
- rowih_data/lexicon/idioms/lx.000804.json +49 -0
- rowih_data/lexicon/idioms/lx.000805.json +55 -0
- rowih_data/lexicon/idioms/lx.000806.json +55 -0
- rowih_data/lexicon/idioms/lx.000807.json +49 -0
- rowih_data/lexicon/idioms/lx.000808.json +49 -0
- rowih_data/lexicon/idioms/lx.000809.json +49 -0
- rowih_data/lexicon/idioms/lx.000810.json +49 -0
- rowih_data/lexicon/idioms/lx.000811.json +49 -0
- rowih_data/lexicon/idioms/lx.000812.json +49 -0
- rowih_data/lexicon/idioms/lx.000813.json +49 -0
- rowih_data/lexicon/idioms/lx.000814.json +49 -0
- rowih_data/lexicon/idioms/lx.000815.json +49 -0
- rowih_data/lexicon/idioms/lx.000816.json +49 -0
- rowih_data/lexicon/idioms/lx.000817.json +49 -0
- rowih_data/lexicon/idioms/lx.000818.json +49 -0
- rowih_data/lexicon/idioms/lx.000819.json +49 -0
- rowih_data/lexicon/idioms/lx.000820.json +49 -0
- rowih_data/lexicon/idioms/lx.000821.json +49 -0
- rowih_data/lexicon/idioms/lx.000822.json +49 -0
- rowih_data/lexicon/idioms/lx.000823.json +55 -0
- rowih_data/lexicon/idioms/lx.000824.json +49 -0
- rowih_data/lexicon/idioms/lx.000825.json +49 -0
- rowih_data/lexicon/idioms/lx.000826.json +49 -0
- rowih_data/lexicon/idioms/lx.000827.json +49 -0
- rowih_data/lexicon/idioms/lx.000828.json +49 -0
- rowih_data/lexicon/idioms/lx.000829.json +49 -0
- rowih_data/lexicon/idioms/lx.000830.json +49 -0
- rowih_data/lexicon/idioms/lx.000831.json +49 -0
- rowih_data/lexicon/idioms/lx.000832.json +49 -0
- rowih_data/lexicon/idioms/lx.000833.json +49 -0
- rowih_data/lexicon/idioms/lx.000834.json +49 -0
- rowih_data/lexicon/idioms/lx.000835.json +46 -0
- rowih_data/lexicon/idioms/lx.000836.json +46 -0
- rowih_data/lexicon/idioms/lx.000837.json +46 -0
- rowih_data/lexicon/idioms/lx.000838.json +46 -0
- rowih_data/lexicon/idioms/lx.000839.json +46 -0
- rowih_data/lexicon/idioms/lx.000840.json +46 -0
- rowih_data/lexicon/idioms/lx.000841.json +46 -0
- rowih_data/lexicon/idioms/lx.000842.json +46 -0
- rowih_data/lexicon/idioms/lx.000843.json +46 -0
- rowih_data/lexicon/idioms/lx.000844.json +46 -0
- rowih_data/lexicon/idioms/lx.000845.json +46 -0
- rowih_data/lexicon/idioms/lx.000846.json +46 -0
- rowih_data/lexicon/idioms/lx.000847.json +46 -0
- rowih_data/lexicon/idioms/lx.000848.json +46 -0
- rowih_data/lexicon/idioms/lx.000849.json +46 -0
- rowih_data/lexicon/idioms/lx.000850.json +46 -0
- rowih_data/lexicon/idioms/lx.000851.json +46 -0
- rowih_data/lexicon/idioms/lx.000852.json +46 -0
- rowih_data/lexicon/idioms/lx.000853.json +46 -0
- rowih_data/lexicon/idioms/lx.000854.json +46 -0
- rowih_data/lexicon/idioms/lx.000855.json +46 -0
- rowih_data/lexicon/idioms/lx.000856.json +46 -0
- rowih_data/lexicon/idioms/lx.000857.json +46 -0
- rowih_data/lexicon/jargon/conversation/0.1.json +552 -0
- rowih_data/lexicon/jargon/databases/0.1.json +245 -0
- rowih_data/lexicon/jargon/databases/0.2.json +484 -0
- rowih_data/lexicon/jargon/linguistics/0.1.json +246 -0
- rowih_data/lexicon/jargon/linguistics/0.2.json +484 -0
- rowih_data/lexicon/jargon/machine-learning/0.1.json +249 -0
- rowih_data/lexicon/jargon/machine-learning/0.2.json +488 -0
- rowih_data/lexicon/jargon/mathematics/0.1.json +248 -0
- rowih_data/lexicon/jargon/mathematics/0.2.json +570 -0
- rowih_data/lexicon/jargon/mathematics/0.3.json +1048 -0
- rowih_data/lexicon/jargon/negotiation/0.1.json +264 -0
- rowih_data/lexicon/jargon/negotiation/0.2.json +495 -0
- rowih_data/lexicon/jargon/philosophy/0.1.json +227 -0
- rowih_data/lexicon/jargon/philosophy/0.2.json +448 -0
- rowih_data/lexicon/jargon/planning/0.1.json +267 -0
- rowih_data/lexicon/jargon/planning/0.2.json +499 -0
- rowih_data/lexicon/jargon/programming/0.1.json +259 -0
- rowih_data/lexicon/jargon/programming/0.2.json +537 -0
- rowih_data/lexicon/jargon/programming/0.3.json +1033 -0
- rowih_data/lexicon/jargon/robotics/0.1.json +236 -0
- rowih_data/lexicon/jargon/robotics/0.2.json +500 -0
- rowih_data/lexicon/jargon/robotics/0.3.json +1294 -0
- rowih_data/lexicon/jargon/science/0.1.json +250 -0
- rowih_data/lexicon/jargon/science/0.2.json +526 -0
- rowih_data/lexicon/jargon/science/0.3.json +1030 -0
- rowih_data/lexicon/jargon/security/0.1.json +254 -0
- rowih_data/lexicon/jargon/security/0.2.json +532 -0
- rowih_data/lexicon/jargon/security/0.3.json +1034 -0
- rowih_data/lexicon/mappings/mp.000001.json +31 -0
- rowih_data/lexicon/mappings/mp.000002.json +31 -0
- rowih_data/lexicon/mappings/mp.000003.json +31 -0
- rowih_data/lexicon/mappings/mp.000004.json +27 -0
- rowih_data/lexicon/mappings/mp.000005.json +29 -0
- rowih_data/lexicon/mappings/mp.000006.json +27 -0
- rowih_data/lexicon/mappings/mp.000007.json +27 -0
- rowih_data/lexicon/mappings/mp.000008.json +23 -0
- rowih_data/lexicon/mappings/mp.000009.json +23 -0
- rowih_data/lexicon/mappings/mp.000010.json +59 -0
- rowih_data/lexicon/mappings/mp.000011.json +32 -0
- rowih_data/lexicon/mappings/mp.000012.json +32 -0
- rowih_data/lexicon/mappings/mp.000013.json +47 -0
- rowih_data/lexicon/mappings/mp.000014.json +33 -0
- rowih_data/lexicon/mappings/mp.000015.json +34 -0
- rowih_data/lexicon/mappings/mp.000016.json +58 -0
- rowih_data/lexicon/mappings/mp.000017.json +38 -0
- rowih_data/lexicon/mappings/mp.000018.json +38 -0
- rowih_data/lexicon/mappings/mp.000019.json +37 -0
- rowih_data/lexicon/mappings/mp.000020.json +27 -0
- rowih_data/lexicon/mappings/mp.000021.json +28 -0
- rowih_data/lexicon/mappings/mp.000022.json +39 -0
- rowih_data/lexicon/mappings/mp.000023.json +23 -0
- rowih_data/lexicon/mappings/mp.000024.json +23 -0
- rowih_data/lexicon/mappings/mp.000025.json +38 -0
- rowih_data/lexicon/mappings/mp.000026.json +24 -0
- rowih_data/lexicon/mappings/mp.000027.json +27 -0
- rowih_data/lexicon/mappings/mp.000028.json +23 -0
- rowih_data/lexicon/mappings/mp.000029.json +23 -0
- rowih_data/lexicon/patterns/1.0.json +2564 -0
- rowih_data/lexicon/registers/r0.json +35 -0
- rowih_data/lexicon/registers/r1.json +32 -0
- rowih_data/lexicon/registers/r2.json +37 -0
- rowih_data/lexicon/registers/r3.json +35 -0
- rowih_data/lexicon/registers/r4.json +32 -0
- rowih_data/lexicon/registers/r5.json +36 -0
- rowih_data/lexicon/registers/r6.json +36 -0
- rowih_data/lexicon/registers/r7.json +34 -0
- rowih_data/lexicon/releases/0.1.json +114 -0
- rowih_data/lexicon/releases/0.2.json +116 -0
- rowih_data/lexicon/releases/0.3.json +168 -0
- rowih_data/lexicon/releases/0.4.json +193 -0
- rowih_data/lexicon/releases/0.5.json +214 -0
- rowih_data/lexicon/releases/0.6.json +217 -0
- rowih_data/lexicon/releases/0.7.json +221 -0
- rowih_data/lexicon/releases/1.0.json +914 -0
- rowih_data/lexicon/roots/lx.000001.json +50 -0
- rowih_data/lexicon/roots/lx.000002.json +50 -0
- rowih_data/lexicon/roots/lx.000003.json +55 -0
- rowih_data/lexicon/roots/lx.000004.json +50 -0
- rowih_data/lexicon/roots/lx.000005.json +38 -0
- rowih_data/lexicon/roots/lx.000006.json +38 -0
- rowih_data/lexicon/roots/lx.000007.json +38 -0
- rowih_data/lexicon/roots/lx.000008.json +50 -0
- rowih_data/lexicon/roots/lx.000009.json +50 -0
- rowih_data/lexicon/roots/lx.000010.json +50 -0
- rowih_data/lexicon/roots/lx.000011.json +50 -0
- rowih_data/lexicon/roots/lx.000012.json +50 -0
- rowih_data/lexicon/roots/lx.000013.json +50 -0
- rowih_data/lexicon/roots/lx.000014.json +50 -0
- rowih_data/lexicon/roots/lx.000015.json +50 -0
- rowih_data/lexicon/roots/lx.000016.json +50 -0
- rowih_data/lexicon/roots/lx.000017.json +50 -0
- rowih_data/lexicon/roots/lx.000018.json +55 -0
- rowih_data/lexicon/roots/lx.000019.json +55 -0
- rowih_data/lexicon/roots/lx.000020.json +50 -0
- rowih_data/lexicon/roots/lx.000021.json +38 -0
- rowih_data/lexicon/roots/lx.000022.json +38 -0
- rowih_data/lexicon/roots/lx.000023.json +50 -0
- rowih_data/lexicon/roots/lx.000024.json +38 -0
- rowih_data/lexicon/roots/lx.000025.json +55 -0
- rowih_data/lexicon/roots/lx.000026.json +38 -0
- rowih_data/lexicon/roots/lx.000027.json +38 -0
- rowih_data/lexicon/roots/lx.000028.json +50 -0
- rowih_data/lexicon/roots/lx.000029.json +55 -0
- rowih_data/lexicon/roots/lx.000030.json +55 -0
- rowih_data/lexicon/roots/lx.000031.json +50 -0
- rowih_data/lexicon/roots/lx.000032.json +55 -0
- rowih_data/lexicon/roots/lx.000033.json +55 -0
- rowih_data/lexicon/roots/lx.000034.json +50 -0
- rowih_data/lexicon/roots/lx.000035.json +50 -0
- rowih_data/lexicon/roots/lx.000036.json +50 -0
- rowih_data/lexicon/roots/lx.000037.json +50 -0
- rowih_data/lexicon/roots/lx.000038.json +50 -0
- rowih_data/lexicon/roots/lx.000039.json +50 -0
- rowih_data/lexicon/roots/lx.000040.json +50 -0
- rowih_data/lexicon/roots/lx.000041.json +50 -0
- rowih_data/lexicon/roots/lx.000042.json +50 -0
- rowih_data/lexicon/roots/lx.000043.json +50 -0
- rowih_data/lexicon/roots/lx.000044.json +50 -0
- rowih_data/lexicon/roots/lx.000045.json +50 -0
- rowih_data/lexicon/roots/lx.000046.json +50 -0
- rowih_data/lexicon/roots/lx.000047.json +50 -0
- rowih_data/lexicon/roots/lx.000048.json +51 -0
- rowih_data/lexicon/roots/lx.000049.json +55 -0
- rowih_data/lexicon/roots/lx.000050.json +50 -0
- rowih_data/lexicon/roots/lx.000051.json +50 -0
- rowih_data/lexicon/roots/lx.000052.json +55 -0
- rowih_data/lexicon/roots/lx.000053.json +50 -0
- rowih_data/lexicon/roots/lx.000054.json +55 -0
- rowih_data/lexicon/roots/lx.000055.json +50 -0
- rowih_data/lexicon/roots/lx.000056.json +50 -0
- rowih_data/lexicon/roots/lx.000057.json +38 -0
- rowih_data/lexicon/roots/lx.000058.json +38 -0
- rowih_data/lexicon/roots/lx.000059.json +38 -0
- rowih_data/lexicon/roots/lx.000060.json +38 -0
- rowih_data/lexicon/roots/lx.000061.json +38 -0
- rowih_data/lexicon/roots/lx.000062.json +38 -0
- rowih_data/lexicon/roots/lx.000063.json +38 -0
- rowih_data/lexicon/roots/lx.000064.json +38 -0
- rowih_data/lexicon/roots/lx.000065.json +45 -0
- rowih_data/lexicon/roots/lx.000066.json +38 -0
- rowih_data/lexicon/roots/lx.000067.json +38 -0
- rowih_data/lexicon/roots/lx.000068.json +38 -0
- rowih_data/lexicon/roots/lx.000069.json +45 -0
- rowih_data/lexicon/roots/lx.000070.json +38 -0
- rowih_data/lexicon/roots/lx.000071.json +38 -0
- rowih_data/lexicon/roots/lx.000072.json +45 -0
- rowih_data/lexicon/roots/lx.000073.json +45 -0
- rowih_data/lexicon/roots/lx.000074.json +38 -0
- rowih_data/lexicon/roots/lx.000075.json +50 -0
- rowih_data/lexicon/roots/lx.000076.json +45 -0
- rowih_data/lexicon/roots/lx.000077.json +50 -0
- rowih_data/lexicon/roots/lx.000078.json +50 -0
- rowih_data/lexicon/roots/lx.000079.json +38 -0
- rowih_data/lexicon/roots/lx.000080.json +38 -0
- rowih_data/lexicon/roots/lx.000081.json +38 -0
- rowih_data/lexicon/roots/lx.000082.json +38 -0
- rowih_data/lexicon/roots/lx.000083.json +38 -0
- rowih_data/lexicon/roots/lx.000084.json +39 -0
- rowih_data/lexicon/roots/lx.000085.json +39 -0
- rowih_data/lexicon/roots/lx.000086.json +39 -0
- rowih_data/lexicon/roots/lx.000087.json +39 -0
- rowih_data/lexicon/roots/lx.000088.json +39 -0
- rowih_data/lexicon/roots/lx.000089.json +39 -0
- rowih_data/lexicon/roots/lx.000090.json +39 -0
- rowih_data/lexicon/roots/lx.000091.json +38 -0
- rowih_data/lexicon/roots/lx.000092.json +38 -0
- rowih_data/lexicon/roots/lx.000093.json +38 -0
- rowih_data/lexicon/roots/lx.000094.json +38 -0
- rowih_data/lexicon/roots/lx.000095.json +38 -0
- rowih_data/lexicon/roots/lx.000106.json +46 -0
- rowih_data/lexicon/roots/lx.000107.json +50 -0
- rowih_data/lexicon/roots/lx.000160.json +54 -0
- rowih_data/lexicon/roots/lx.000161.json +53 -0
- rowih_data/lexicon/roots/lx.000162.json +52 -0
- rowih_data/lexicon/roots/lx.000163.json +42 -0
- rowih_data/lexicon/roots/lx.000164.json +41 -0
- rowih_data/lexicon/roots/lx.000165.json +40 -0
- rowih_data/lexicon/roots/lx.000166.json +54 -0
- rowih_data/lexicon/roots/lx.000167.json +53 -0
- rowih_data/lexicon/roots/lx.000168.json +52 -0
- rowih_data/lexicon/roots/lx.000169.json +34 -0
- rowih_data/lexicon/roots/lx.000170.json +35 -0
- rowih_data/lexicon/roots/lx.000171.json +34 -0
- rowih_data/lexicon/roots/lx.000172.json +48 -0
- rowih_data/lexicon/roots/lx.000173.json +46 -0
- rowih_data/lexicon/roots/lx.000174.json +46 -0
- rowih_data/lexicon/roots/lx.000175.json +46 -0
- rowih_data/lexicon/roots/lx.000176.json +47 -0
- rowih_data/lexicon/roots/lx.000177.json +48 -0
- rowih_data/lexicon/roots/lx.000178.json +46 -0
- rowih_data/lexicon/roots/lx.000179.json +46 -0
- rowih_data/lexicon/roots/lx.000180.json +46 -0
- rowih_data/lexicon/roots/lx.000181.json +46 -0
- rowih_data/lexicon/roots/lx.000182.json +46 -0
- rowih_data/lexicon/roots/lx.000183.json +46 -0
- rowih_data/lexicon/roots/lx.000185.json +50 -0
- rowih_data/lexicon/roots/lx.000186.json +50 -0
- rowih_data/lexicon/roots/lx.000187.json +45 -0
- rowih_data/lexicon/roots/lx.000188.json +45 -0
- rowih_data/lexicon/roots/lx.000195.json +50 -0
- rowih_data/lexicon/roots/lx.000196.json +50 -0
- rowih_data/lexicon/roots/lx.000197.json +50 -0
- rowih_data/lexicon/roots/lx.000198.json +38 -0
- rowih_data/lexicon/roots/lx.000199.json +38 -0
- rowih_data/lexicon/roots/lx.000200.json +38 -0
- rowih_data/lexicon/roots/lx.000201.json +50 -0
- rowih_data/lexicon/roots/lx.000202.json +141 -0
- rowih_data/lexicon/roots/lx.000203.json +154 -0
- rowih_data/lexicon/roots/lx.000204.json +145 -0
- rowih_data/lexicon/roots/lx.000205.json +137 -0
- rowih_data/lexicon/roots/lx.000206.json +156 -0
- rowih_data/lexicon/roots/lx.000207.json +147 -0
- rowih_data/lexicon/roots/lx.000208.json +158 -0
- rowih_data/lexicon/roots/lx.000209.json +147 -0
- rowih_data/lexicon/roots/lx.000210.json +151 -0
- rowih_data/lexicon/roots/lx.000211.json +155 -0
- rowih_data/lexicon/roots/lx.000212.json +147 -0
- rowih_data/lexicon/roots/lx.000213.json +80 -0
- rowih_data/lexicon/roots/lx.000214.json +72 -0
- rowih_data/lexicon/roots/lx.000215.json +76 -0
- rowih_data/lexicon/roots/lx.000216.json +88 -0
- rowih_data/lexicon/roots/lx.000217.json +94 -0
- rowih_data/lexicon/roots/lx.000218.json +135 -0
- rowih_data/lexicon/roots/lx.000219.json +145 -0
- rowih_data/lexicon/roots/lx.000220.json +139 -0
- rowih_data/lexicon/roots/lx.000221.json +139 -0
- rowih_data/lexicon/roots/lx.000222.json +143 -0
- rowih_data/lexicon/roots/lx.000223.json +143 -0
- rowih_data/lexicon/roots/lx.000224.json +139 -0
- rowih_data/lexicon/roots/lx.000225.json +139 -0
- rowih_data/lexicon/roots/lx.000226.json +149 -0
- rowih_data/lexicon/roots/lx.000227.json +92 -0
- rowih_data/lexicon/roots/lx.000228.json +78 -0
- rowih_data/lexicon/roots/lx.000229.json +76 -0
- rowih_data/lexicon/roots/lx.000230.json +80 -0
- rowih_data/lexicon/roots/lx.000231.json +80 -0
- rowih_data/lexicon/roots/lx.000232.json +76 -0
- rowih_data/lexicon/roots/lx.000233.json +141 -0
- rowih_data/lexicon/roots/lx.000234.json +147 -0
- rowih_data/lexicon/roots/lx.000235.json +158 -0
- rowih_data/lexicon/roots/lx.000236.json +152 -0
- rowih_data/lexicon/roots/lx.000237.json +147 -0
- rowih_data/lexicon/roots/lx.000238.json +88 -0
- rowih_data/lexicon/roots/lx.000239.json +76 -0
- rowih_data/lexicon/roots/lx.000240.json +76 -0
- rowih_data/lexicon/roots/lx.000241.json +76 -0
- rowih_data/lexicon/roots/lx.000242.json +76 -0
- rowih_data/lexicon/roots/lx.000243.json +76 -0
- rowih_data/lexicon/roots/lx.000244.json +72 -0
- rowih_data/lexicon/roots/lx.000245.json +72 -0
- rowih_data/lexicon/roots/lx.000246.json +76 -0
- rowih_data/lexicon/roots/lx.000247.json +72 -0
- rowih_data/lexicon/roots/lx.000248.json +72 -0
- rowih_data/lexicon/roots/lx.000249.json +72 -0
- rowih_data/lexicon/roots/lx.000250.json +72 -0
- rowih_data/lexicon/roots/lx.000251.json +72 -0
- rowih_data/lexicon/roots/lx.000252.json +165 -0
- rowih_data/lexicon/roots/lx.000253.json +152 -0
- rowih_data/lexicon/roots/lx.000254.json +152 -0
- rowih_data/lexicon/roots/lx.000255.json +153 -0
- rowih_data/lexicon/roots/lx.000256.json +157 -0
- rowih_data/lexicon/roots/lx.000257.json +147 -0
- rowih_data/lexicon/roots/lx.000258.json +157 -0
- rowih_data/lexicon/roots/lx.000259.json +151 -0
- rowih_data/lexicon/roots/lx.000260.json +152 -0
- rowih_data/lexicon/roots/lx.000261.json +152 -0
- rowih_data/lexicon/roots/lx.000262.json +157 -0
- rowih_data/lexicon/roots/lx.000263.json +162 -0
- rowih_data/lexicon/roots/lx.000264.json +153 -0
- rowih_data/lexicon/roots/lx.000265.json +147 -0
- rowih_data/lexicon/roots/lx.000266.json +153 -0
- rowih_data/lexicon/roots/lx.000267.json +156 -0
- rowih_data/lexicon/roots/lx.000268.json +152 -0
- rowih_data/lexicon/roots/lx.000269.json +151 -0
- rowih_data/lexicon/roots/lx.000270.json +151 -0
- rowih_data/lexicon/roots/lx.000271.json +147 -0
- rowih_data/lexicon/roots/lx.000272.json +151 -0
- rowih_data/lexicon/roots/lx.000273.json +153 -0
- rowih_data/lexicon/roots/lx.000274.json +152 -0
- rowih_data/lexicon/roots/lx.000275.json +148 -0
- rowih_data/lexicon/roots/lx.000276.json +76 -0
- rowih_data/lexicon/roots/lx.000277.json +72 -0
- rowih_data/lexicon/roots/lx.000278.json +78 -0
- rowih_data/lexicon/roots/lx.000279.json +82 -0
- rowih_data/lexicon/roots/lx.000280.json +76 -0
- rowih_data/lexicon/roots/lx.000281.json +72 -0
- rowih_data/lexicon/roots/lx.000282.json +76 -0
- rowih_data/lexicon/roots/lx.000283.json +72 -0
- rowih_data/lexicon/roots/lx.000284.json +76 -0
- rowih_data/lexicon/roots/lx.000285.json +72 -0
- rowih_data/lexicon/roots/lx.000286.json +72 -0
- rowih_data/lexicon/roots/lx.000287.json +80 -0
- rowih_data/lexicon/roots/lx.000288.json +80 -0
- rowih_data/lexicon/roots/lx.000289.json +139 -0
- rowih_data/lexicon/roots/lx.000290.json +72 -0
- rowih_data/lexicon/roots/lx.000291.json +72 -0
- rowih_data/lexicon/roots/lx.000292.json +88 -0
- rowih_data/lexicon/roots/lx.000293.json +72 -0
- rowih_data/lexicon/roots/lx.000294.json +72 -0
- rowih_data/lexicon/roots/lx.000295.json +80 -0
- rowih_data/lexicon/roots/lx.000296.json +80 -0
- rowih_data/lexicon/roots/lx.000297.json +135 -0
- rowih_data/lexicon/roots/lx.000298.json +145 -0
- rowih_data/lexicon/roots/lx.000299.json +139 -0
- rowih_data/lexicon/roots/lx.000300.json +135 -0
- rowih_data/lexicon/roots/lx.000301.json +78 -0
- rowih_data/lexicon/roots/lx.000302.json +76 -0
- rowih_data/lexicon/roots/lx.000303.json +147 -0
- rowih_data/lexicon/roots/lx.000304.json +151 -0
- rowih_data/lexicon/roots/lx.000305.json +139 -0
- rowih_data/lexicon/roots/lx.000306.json +151 -0
- rowih_data/lexicon/roots/lx.000307.json +143 -0
- rowih_data/lexicon/roots/lx.000308.json +156 -0
- rowih_data/lexicon/roots/lx.000309.json +151 -0
- rowih_data/lexicon/roots/lx.000310.json +144 -0
- rowih_data/lexicon/roots/lx.000311.json +135 -0
- rowih_data/lexicon/roots/lx.000312.json +128 -0
- rowih_data/lexicon/roots/lx.000313.json +152 -0
- rowih_data/lexicon/roots/lx.000314.json +150 -0
- rowih_data/lexicon/roots/lx.000315.json +144 -0
- rowih_data/lexicon/roots/lx.000316.json +140 -0
- rowih_data/lexicon/roots/lx.000317.json +151 -0
- rowih_data/lexicon/roots/lx.000318.json +151 -0
- rowih_data/lexicon/roots/lx.000319.json +147 -0
- rowih_data/lexicon/roots/lx.000320.json +157 -0
- rowih_data/lexicon/roots/lx.000321.json +151 -0
- rowih_data/lexicon/roots/lx.000322.json +80 -0
- rowih_data/lexicon/roots/lx.000323.json +80 -0
- rowih_data/lexicon/roots/lx.000324.json +76 -0
- rowih_data/lexicon/roots/lx.000325.json +135 -0
- rowih_data/lexicon/roots/lx.000326.json +144 -0
- rowih_data/lexicon/roots/lx.000327.json +146 -0
- rowih_data/lexicon/roots/lx.000328.json +153 -0
- rowih_data/lexicon/roots/lx.000329.json +157 -0
- rowih_data/lexicon/roots/lx.000330.json +157 -0
- rowih_data/lexicon/roots/lx.000331.json +148 -0
- rowih_data/lexicon/roots/lx.000332.json +88 -0
- rowih_data/lexicon/roots/lx.000333.json +152 -0
- rowih_data/lexicon/roots/lx.000334.json +145 -0
- rowih_data/lexicon/roots/lx.000335.json +160 -0
- rowih_data/lexicon/roots/lx.000336.json +151 -0
- rowih_data/lexicon/roots/lx.000337.json +151 -0
- rowih_data/lexicon/roots/lx.000338.json +156 -0
- rowih_data/lexicon/roots/lx.000339.json +152 -0
- rowih_data/lexicon/roots/lx.000340.json +76 -0
- rowih_data/lexicon/roots/lx.000341.json +147 -0
- rowih_data/lexicon/roots/lx.000342.json +139 -0
- rowih_data/lexicon/roots/lx.000343.json +139 -0
- rowih_data/lexicon/roots/lx.000344.json +80 -0
- rowih_data/lexicon/roots/lx.000345.json +144 -0
- rowih_data/lexicon/roots/lx.000346.json +144 -0
- rowih_data/lexicon/roots/lx.000347.json +144 -0
- rowih_data/lexicon/roots/lx.000348.json +144 -0
- rowih_data/lexicon/roots/lx.000349.json +146 -0
- rowih_data/lexicon/roots/lx.000350.json +152 -0
- rowih_data/lexicon/roots/lx.000351.json +144 -0
- rowih_data/lexicon/roots/lx.000352.json +154 -0
- rowih_data/lexicon/roots/lx.000353.json +144 -0
- rowih_data/lexicon/roots/lx.000354.json +140 -0
- rowih_data/lexicon/roots/lx.000355.json +144 -0
- rowih_data/lexicon/roots/lx.000356.json +144 -0
- rowih_data/lexicon/roots/lx.000357.json +76 -0
- rowih_data/lexicon/roots/lx.000358.json +76 -0
- rowih_data/lexicon/roots/lx.000359.json +76 -0
- rowih_data/lexicon/roots/lx.000360.json +76 -0
- rowih_data/lexicon/roots/lx.000361.json +151 -0
- rowih_data/lexicon/roots/lx.000362.json +156 -0
- rowih_data/lexicon/roots/lx.000363.json +151 -0
- rowih_data/lexicon/roots/lx.000364.json +158 -0
- rowih_data/lexicon/roots/lx.000365.json +153 -0
- rowih_data/lexicon/roots/lx.000366.json +147 -0
- rowih_data/lexicon/roots/lx.000367.json +143 -0
- rowih_data/lexicon/roots/lx.000368.json +76 -0
- rowih_data/lexicon/roots/lx.000369.json +76 -0
- rowih_data/lexicon/roots/lx.000370.json +72 -0
- rowih_data/lexicon/roots/lx.000371.json +80 -0
- rowih_data/lexicon/roots/lx.000372.json +96 -0
- rowih_data/lexicon/roots/lx.000373.json +76 -0
- rowih_data/lexicon/roots/lx.000374.json +139 -0
- rowih_data/lexicon/roots/lx.000375.json +139 -0
- rowih_data/lexicon/roots/lx.000376.json +139 -0
- rowih_data/lexicon/roots/lx.000377.json +139 -0
- rowih_data/lexicon/roots/lx.000378.json +135 -0
- rowih_data/lexicon/roots/lx.000379.json +135 -0
- rowih_data/lexicon/roots/lx.000380.json +135 -0
- rowih_data/lexicon/roots/lx.000381.json +135 -0
- rowih_data/lexicon/roots/lx.000382.json +135 -0
- rowih_data/lexicon/roots/lx.000383.json +80 -0
- rowih_data/lexicon/roots/lx.000384.json +80 -0
- rowih_data/lexicon/roots/lx.000385.json +72 -0
- rowih_data/lexicon/roots/lx.000386.json +92 -0
- rowih_data/lexicon/roots/lx.000387.json +104 -0
- rowih_data/lexicon/roots/lx.000388.json +76 -0
- rowih_data/lexicon/roots/lx.000389.json +76 -0
- rowih_data/lexicon/roots/lx.000390.json +100 -0
- rowih_data/lexicon/roots/lx.000391.json +92 -0
- rowih_data/lexicon/roots/lx.000392.json +140 -0
- rowih_data/lexicon/roots/lx.000393.json +139 -0
- rowih_data/lexicon/roots/lx.000394.json +143 -0
- rowih_data/lexicon/roots/lx.000395.json +135 -0
- rowih_data/lexicon/roots/lx.000396.json +80 -0
- rowih_data/lexicon/roots/lx.000397.json +169 -0
- rowih_data/lexicon/roots/lx.000398.json +153 -0
- rowih_data/lexicon/roots/lx.000399.json +157 -0
- rowih_data/lexicon/roots/lx.000400.json +147 -0
- rowih_data/lexicon/roots/lx.000401.json +147 -0
- rowih_data/lexicon/roots/lx.000402.json +151 -0
- rowih_data/lexicon/roots/lx.000403.json +150 -0
- rowih_data/lexicon/roots/lx.000404.json +84 -0
- rowih_data/lexicon/roots/lx.000405.json +139 -0
- rowih_data/lexicon/roots/lx.000406.json +139 -0
- rowih_data/lexicon/roots/lx.000407.json +143 -0
- rowih_data/lexicon/roots/lx.000408.json +92 -0
- rowih_data/lexicon/roots/lx.000409.json +139 -0
- rowih_data/lexicon/roots/lx.000410.json +139 -0
- rowih_data/lexicon/roots/lx.000411.json +135 -0
- rowih_data/lexicon/roots/lx.000412.json +135 -0
- rowih_data/lexicon/roots/lx.000413.json +135 -0
- rowih_data/lexicon/roots/lx.000414.json +135 -0
- rowih_data/lexicon/roots/lx.000415.json +139 -0
- rowih_data/lexicon/roots/lx.000416.json +139 -0
- rowih_data/lexicon/roots/lx.000417.json +135 -0
- rowih_data/lexicon/roots/lx.000418.json +135 -0
- rowih_data/lexicon/roots/lx.000419.json +135 -0
- rowih_data/lexicon/roots/lx.000420.json +139 -0
- rowih_data/lexicon/roots/lx.000421.json +139 -0
- rowih_data/lexicon/roots/lx.000422.json +139 -0
- rowih_data/lexicon/roots/lx.000423.json +143 -0
- rowih_data/lexicon/roots/lx.000424.json +139 -0
- rowih_data/lexicon/roots/lx.000425.json +139 -0
- rowih_data/lexicon/roots/lx.000426.json +126 -0
- rowih_data/lexicon/roots/lx.000427.json +72 -0
- rowih_data/lexicon/roots/lx.000428.json +134 -0
- rowih_data/lexicon/roots/lx.000429.json +130 -0
- rowih_data/lexicon/roots/lx.000430.json +130 -0
- rowih_data/lexicon/roots/lx.000431.json +132 -0
- rowih_data/lexicon/roots/lx.000432.json +144 -0
- rowih_data/lexicon/roots/lx.000433.json +144 -0
- rowih_data/lexicon/roots/lx.000434.json +132 -0
- rowih_data/lexicon/roots/lx.000435.json +126 -0
- rowih_data/lexicon/roots/lx.000436.json +126 -0
- rowih_data/lexicon/roots/lx.000437.json +126 -0
- rowih_data/lexicon/roots/lx.000438.json +145 -0
- rowih_data/lexicon/roots/lx.000439.json +135 -0
- rowih_data/lexicon/roots/lx.000440.json +76 -0
- rowih_data/lexicon/roots/lx.000441.json +139 -0
- rowih_data/lexicon/roots/lx.000442.json +134 -0
- rowih_data/lexicon/roots/lx.000443.json +151 -0
- rowih_data/lexicon/roots/lx.000444.json +156 -0
- rowih_data/lexicon/roots/lx.000445.json +159 -0
- rowih_data/lexicon/roots/lx.000446.json +151 -0
- rowih_data/lexicon/roots/lx.000447.json +138 -0
- rowih_data/lexicon/roots/lx.000448.json +139 -0
- rowih_data/lexicon/roots/lx.000449.json +135 -0
- rowih_data/lexicon/roots/lx.000450.json +139 -0
- rowih_data/lexicon/roots/lx.000451.json +139 -0
- rowih_data/lexicon/roots/lx.000452.json +141 -0
- rowih_data/lexicon/roots/lx.000453.json +141 -0
- rowih_data/lexicon/roots/lx.000454.json +135 -0
- rowih_data/lexicon/roots/lx.000455.json +86 -0
- rowih_data/lexicon/roots/lx.000456.json +139 -0
- rowih_data/lexicon/roots/lx.000457.json +76 -0
- rowih_data/lexicon/roots/lx.000458.json +72 -0
- rowih_data/lexicon/roots/lx.000459.json +82 -0
- rowih_data/lexicon/roots/lx.000460.json +157 -0
- rowih_data/lexicon/roots/lx.000461.json +76 -0
- rowih_data/lexicon/roots/lx.000462.json +76 -0
- rowih_data/lexicon/roots/lx.000463.json +72 -0
- rowih_data/lexicon/roots/lx.000464.json +147 -0
- rowih_data/lexicon/roots/lx.000465.json +80 -0
- rowih_data/lexicon/roots/lx.000466.json +133 -0
- rowih_data/lexicon/roots/lx.000467.json +145 -0
- rowih_data/lexicon/roots/lx.000468.json +76 -0
- rowih_data/lexicon/roots/lx.000469.json +152 -0
- rowih_data/lexicon/roots/lx.000470.json +151 -0
- rowih_data/lexicon/roots/lx.000471.json +72 -0
- rowih_data/lexicon/roots/lx.000472.json +137 -0
- rowih_data/lexicon/roots/lx.000473.json +155 -0
- rowih_data/lexicon/roots/lx.000474.json +157 -0
- rowih_data/lexicon/roots/lx.000475.json +76 -0
- rowih_data/lexicon/roots/lx.000476.json +84 -0
- rowih_data/lexicon/roots/lx.000477.json +152 -0
- rowih_data/lexicon/roots/lx.000478.json +152 -0
- rowih_data/lexicon/roots/lx.000479.json +80 -0
- rowih_data/lexicon/roots/lx.000480.json +84 -0
- rowih_data/lexicon/roots/lx.000481.json +76 -0
- rowih_data/lexicon/roots/lx.000482.json +72 -0
- rowih_data/lexicon/roots/lx.000483.json +76 -0
- rowih_data/lexicon/roots/lx.000484.json +76 -0
- rowih_data/lexicon/roots/lx.000485.json +76 -0
- rowih_data/lexicon/roots/lx.000486.json +72 -0
- rowih_data/lexicon/roots/lx.000487.json +72 -0
- rowih_data/lexicon/roots/lx.000488.json +76 -0
- rowih_data/lexicon/roots/lx.000489.json +72 -0
- rowih_data/lexicon/roots/lx.000490.json +80 -0
- rowih_data/lexicon/roots/lx.000491.json +76 -0
- rowih_data/lexicon/roots/lx.000492.json +72 -0
- rowih_data/lexicon/roots/lx.000493.json +80 -0
- rowih_data/lexicon/roots/lx.000494.json +80 -0
- rowih_data/lexicon/roots/lx.000495.json +76 -0
- rowih_data/lexicon/roots/lx.000496.json +92 -0
- rowih_data/lexicon/roots/lx.000497.json +96 -0
- rowih_data/lexicon/roots/lx.000498.json +116 -0
- rowih_data/lexicon/roots/lx.000499.json +84 -0
- rowih_data/lexicon/roots/lx.000500.json +76 -0
- rowih_data/lexicon/roots/lx.000501.json +76 -0
- rowih_data/lexicon/roots/lx.000502.json +88 -0
- rowih_data/lexicon/roots/lx.000503.json +76 -0
- rowih_data/lexicon/roots/lx.000504.json +96 -0
- rowih_data/lexicon/roots/lx.000505.json +72 -0
- rowih_data/lexicon/roots/lx.000506.json +72 -0
- rowih_data/lexicon/roots/lx.000507.json +72 -0
- rowih_data/lexicon/roots/lx.000508.json +76 -0
- rowih_data/lexicon/roots/lx.000509.json +80 -0
- rowih_data/lexicon/roots/lx.000510.json +78 -0
- rowih_data/lexicon/roots/lx.000511.json +76 -0
- rowih_data/lexicon/roots/lx.000512.json +80 -0
- rowih_data/lexicon/roots/lx.000513.json +80 -0
- rowih_data/lexicon/roots/lx.000514.json +76 -0
- rowih_data/lexicon/roots/lx.000515.json +76 -0
- rowih_data/lexicon/roots/lx.000516.json +139 -0
- rowih_data/lexicon/roots/lx.000517.json +142 -0
- rowih_data/lexicon/roots/lx.000518.json +139 -0
- rowih_data/lexicon/roots/lx.000519.json +139 -0
- rowih_data/lexicon/roots/lx.000520.json +139 -0
- rowih_data/lexicon/roots/lx.000521.json +139 -0
- rowih_data/lexicon/roots/lx.000522.json +139 -0
- rowih_data/lexicon/roots/lx.000523.json +146 -0
- rowih_data/lexicon/roots/lx.000524.json +72 -0
- rowih_data/lexicon/roots/lx.000525.json +76 -0
- rowih_data/lexicon/roots/lx.000526.json +72 -0
- rowih_data/lexicon/roots/lx.000527.json +76 -0
- rowih_data/lexicon/roots/lx.000528.json +80 -0
- rowih_data/lexicon/roots/lx.000529.json +72 -0
- rowih_data/lexicon/roots/lx.000530.json +147 -0
- rowih_data/lexicon/roots/lx.000531.json +147 -0
- rowih_data/lexicon/roots/lx.000532.json +80 -0
- rowih_data/lexicon/roots/lx.000533.json +151 -0
- rowih_data/lexicon/roots/lx.000534.json +84 -0
- rowih_data/lexicon/roots/lx.000535.json +80 -0
- rowih_data/lexicon/roots/lx.000536.json +76 -0
- rowih_data/lexicon/roots/lx.000537.json +84 -0
- rowih_data/lexicon/roots/lx.000538.json +76 -0
- rowih_data/lexicon/roots/lx.000539.json +76 -0
- rowih_data/lexicon/roots/lx.000540.json +76 -0
- rowih_data/lexicon/roots/lx.000541.json +76 -0
- rowih_data/lexicon/roots/lx.000542.json +135 -0
- rowih_data/lexicon/roots/lx.000543.json +139 -0
- rowih_data/lexicon/roots/lx.000544.json +133 -0
- rowih_data/lexicon/roots/lx.000545.json +139 -0
- rowih_data/lexicon/roots/lx.000546.json +139 -0
- rowih_data/lexicon/roots/lx.000547.json +139 -0
- rowih_data/lexicon/roots/lx.000548.json +139 -0
- rowih_data/lexicon/roots/lx.000549.json +139 -0
- rowih_data/lexicon/roots/lx.000550.json +157 -0
- rowih_data/lexicon/roots/lx.000551.json +76 -0
- rowih_data/lexicon/roots/lx.000552.json +140 -0
- rowih_data/lexicon/roots/lx.000553.json +88 -0
- rowih_data/lexicon/roots/lx.000554.json +72 -0
- rowih_data/lexicon/roots/lx.000555.json +72 -0
- rowih_data/lexicon/roots/lx.000556.json +72 -0
- rowih_data/lexicon/roots/lx.000557.json +72 -0
- rowih_data/lexicon/roots/lx.000558.json +88 -0
- rowih_data/lexicon/roots/lx.000559.json +76 -0
- rowih_data/lexicon/roots/lx.000560.json +72 -0
- rowih_data/lexicon/roots/lx.000561.json +72 -0
- rowih_data/lexicon/roots/lx.000562.json +72 -0
- rowih_data/lexicon/roots/lx.000563.json +76 -0
- rowih_data/lexicon/roots/lx.000564.json +72 -0
- rowih_data/lexicon/roots/lx.000565.json +143 -0
- rowih_data/lexicon/roots/lx.000566.json +80 -0
- rowih_data/lexicon/roots/lx.000567.json +76 -0
- rowih_data/lexicon/roots/lx.000568.json +80 -0
- rowih_data/lexicon/roots/lx.000569.json +72 -0
- rowih_data/lexicon/roots/lx.000570.json +84 -0
- rowih_data/lexicon/roots/lx.000571.json +128 -0
- rowih_data/lexicon/roots/lx.000572.json +80 -0
- rowih_data/lexicon/roots/lx.000573.json +80 -0
- rowih_data/lexicon/roots/lx.000574.json +151 -0
- rowih_data/lexicon/roots/lx.000575.json +135 -0
- rowih_data/lexicon/roots/lx.000576.json +150 -0
- rowih_data/lexicon/roots/lx.000577.json +142 -0
- rowih_data/lexicon/roots/lx.000578.json +76 -0
- rowih_data/lexicon/roots/lx.000579.json +72 -0
- rowih_data/lexicon/roots/lx.000580.json +72 -0
- rowih_data/lexicon/roots/lx.000581.json +76 -0
- rowih_data/lexicon/roots/lx.000582.json +76 -0
- rowih_data/lexicon/roots/lx.000583.json +76 -0
- rowih_data/lexicon/roots/lx.000584.json +73 -0
- rowih_data/lexicon/roots/lx.000585.json +73 -0
- rowih_data/lexicon/roots/lx.000586.json +73 -0
- rowih_data/lexicon/roots/lx.000587.json +73 -0
- rowih_data/lexicon/roots/lx.000588.json +73 -0
- rowih_data/lexicon/roots/lx.000589.json +73 -0
- rowih_data/lexicon/roots/lx.000590.json +73 -0
- rowih_data/lexicon/roots/lx.000591.json +73 -0
- rowih_data/lexicon/roots/lx.000592.json +73 -0
- rowih_data/lexicon/roots/lx.000593.json +73 -0
- rowih_data/lexicon/roots/lx.000873.json +133 -0
- rowih_data/lexicon/roots/lx.000874.json +165 -0
- rowih_data/lexicon/semantic/lx.000142.json +78 -0
- rowih_data/lexicon/semantic/lx.000143.json +78 -0
- rowih_data/lexicon/semantic/lx.000144.json +58 -0
- rowih_data/lexicon/semantic/lx.000145.json +78 -0
- rowih_data/lexicon/semantic/lx.000146.json +64 -0
- rowih_data/lexicon/semantic/lx.000147.json +64 -0
- rowih_data/lexicon/semantic/lx.000148.json +80 -0
- rowih_data/lexicon/semantic/lx.000149.json +78 -0
- rowih_data/lexicon/semantic/lx.000150.json +86 -0
- rowih_data/lexicon/semantic/lx.000151.json +76 -0
- rowih_data/lexicon/semantic/lx.000152.json +116 -0
- rowih_data/lexicon/semantic/lx.000153.json +90 -0
- rowih_data/lexicon/semantic/lx.000154.json +94 -0
- rowih_data/lexicon/semantic/lx.000155.json +88 -0
- rowih_data/lexicon/semantic/lx.000156.json +94 -0
- rowih_data/lexicon/semantic/lx.000157.json +48 -0
- rowih_data/lexicon/semantic/lx.000158.json +44 -0
- rowih_data/lexicon/semantic/lx.000159.json +54 -0
- rowih_data/lexicon/semantic/lx.000599.json +84 -0
- rowih_data/lexicon/semantic/lx.000600.json +102 -0
- rowih_data/lexicon/semantic/lx.000601.json +94 -0
- rowih_data/lexicon/semantic/lx.000602.json +76 -0
- rowih_data/lexicon/semantic/lx.000603.json +66 -0
- rowih_data/lexicon/semantic/lx.000604.json +90 -0
- rowih_data/lexicon/semantic/lx.000605.json +106 -0
- rowih_data/lexicon/semantic/lx.000606.json +62 -0
- rowih_data/lexicon/semantic/lx.000607.json +106 -0
- rowih_data/lexicon/semantic/lx.000608.json +88 -0
- rowih_data/lexicon/semantic/lx.000609.json +86 -0
- rowih_data/lexicon/semantic/lx.000610.json +86 -0
- rowih_data/lexicon/semantic/lx.000611.json +80 -0
- rowih_data/lexicon/semantic/lx.000612.json +94 -0
- rowih_data/lexicon/semantic/lx.000613.json +96 -0
- rowih_data/lexicon/semantic/lx.000614.json +76 -0
- rowih_data/lexicon/semantic/lx.000615.json +102 -0
- rowih_data/lexicon/semantic/lx.000616.json +94 -0
- rowih_data/lexicon/semantic/lx.000617.json +126 -0
- rowih_data/lexicon/semantic/lx.000618.json +120 -0
- rowih_data/lexicon/semantic/lx.000619.json +116 -0
- rowih_data/lexicon/semantic/lx.000620.json +134 -0
- rowih_data/lexicon/semantic/lx.000621.json +90 -0
- rowih_data/lexicon/semantic/lx.000622.json +80 -0
- rowih_data/lexicon/semantic/lx.000623.json +74 -0
- rowih_data/lexicon/semantic/lx.000624.json +98 -0
- rowih_data/lexicon/semantic/lx.000625.json +110 -0
- rowih_data/lexicon/semantic/lx.000626.json +154 -0
- rowih_data/lexicon/semantic/lx.000627.json +118 -0
- rowih_data/lexicon/semantic/lx.000628.json +110 -0
- rowih_data/lexicon/semantic/lx.000629.json +121 -0
- rowih_data/lexicon/semantic/lx.000630.json +110 -0
- rowih_data/lexicon/semantic/lx.000631.json +78 -0
- rowih_data/lexicon/semantic/lx.000632.json +78 -0
- rowih_data/lexicon/semantic/lx.000633.json +78 -0
- rowih_data/lexicon/semantic/lx.000634.json +78 -0
- rowih_data/lexicon/semantic/lx.000635.json +106 -0
- rowih_data/lexicon/semantic/lx.000636.json +118 -0
- rowih_data/lexicon/semantic/lx.000637.json +96 -0
- rowih_data/lexicon/semantic/lx.000638.json +100 -0
- rowih_data/lexicon/semantic/lx.000639.json +88 -0
- rowih_data/lexicon/semantic/lx.000640.json +106 -0
- rowih_data/lexicon/semantic/lx.000641.json +70 -0
- rowih_data/lexicon/semantic/lx.000642.json +98 -0
- rowih_data/lexicon/semantic/lx.000643.json +90 -0
- rowih_data/lexicon/semantic/lx.000644.json +90 -0
- rowih_data/lexicon/semantic/lx.000645.json +90 -0
- rowih_data/lexicon/semantic/lx.000646.json +90 -0
- rowih_data/lexicon/semantic/lx.000647.json +80 -0
- rowih_data/lexicon/semantic/lx.000648.json +92 -0
- rowih_data/lexicon/semantic/lx.000649.json +64 -0
- rowih_data/lexicon/semantic/lx.000650.json +78 -0
- rowih_data/lexicon/semantic/lx.000651.json +78 -0
- rowih_data/lexicon/semantic/lx.000652.json +78 -0
- rowih_data/lexicon/semantic/lx.000653.json +78 -0
- rowih_data/lexicon/semantic/lx.000654.json +82 -0
- rowih_data/lexicon/semantic/lx.000655.json +78 -0
- rowih_data/lexicon/semantic/lx.000656.json +78 -0
- rowih_data/lexicon/semantic/lx.000657.json +102 -0
- rowih_data/lexicon/semantic/lx.000658.json +78 -0
- rowih_data/lexicon/semantic/lx.000659.json +64 -0
- rowih_data/lexicon/semantic/lx.000660.json +90 -0
- rowih_data/lexicon/semantic/lx.000661.json +106 -0
- rowih_data/lexicon/semantic/lx.000662.json +92 -0
- rowih_data/lexicon/semantic/lx.000663.json +78 -0
- rowih_data/lexicon/semantic/lx.000664.json +64 -0
- rowih_data/lexicon/semantic/lx.000665.json +102 -0
- rowih_data/lexicon/semantic/lx.000666.json +100 -0
- rowih_data/lexicon/semantic/lx.000667.json +82 -0
- rowih_data/lexicon/semantic/lx.000668.json +130 -0
- rowih_data/lexicon/semantic/lx.000669.json +84 -0
- rowih_data/lexicon/semantic/lx.000670.json +102 -0
- rowih_data/lexicon/semantic/lx.000671.json +117 -0
- rowih_data/lexicon/semantic/lx.000672.json +73 -0
- rowih_data/lexicon/semantic/lx.000673.json +72 -0
- rowih_data/lexicon/semantic/lx.000674.json +72 -0
- rowih_data/lexicon/semantic/lx.000675.json +86 -0
- rowih_data/lexicon/semantic/lx.000676.json +102 -0
- rowih_data/lexicon/semantic/lx.000677.json +70 -0
- rowih_data/lexicon/semantic/lx.000678.json +114 -0
- rowih_data/lexicon/semantic/lx.000679.json +96 -0
- rowih_data/lexicon/semantic/lx.000680.json +92 -0
- rowih_data/lexicon/semantic/lx.000681.json +94 -0
- rowih_data/lexicon/semantic/lx.000682.json +78 -0
- rowih_data/lexicon/semantic/lx.000683.json +72 -0
- rowih_data/lexicon/semantic/lx.000684.json +76 -0
- rowih_data/lexicon/semantic/lx.000685.json +114 -0
- rowih_data/lexicon/semantic/lx.000686.json +100 -0
- rowih_data/lexicon/semantic/lx.000687.json +92 -0
- rowih_data/lexicon/semantic/lx.000688.json +85 -0
- rowih_data/lexicon/semantic/lx.000689.json +76 -0
- rowih_data/lexicon/semantic/lx.000690.json +72 -0
- rowih_data/lexicon/semantic/lx.000691.json +72 -0
- rowih_data/lexicon/semantic/lx.000692.json +93 -0
- rowih_data/lexicon/semantic/lx.000693.json +82 -0
- rowih_data/lexicon/semantic/lx.000694.json +115 -0
- rowih_data/lexicon/semantic/lx.000695.json +84 -0
- rowih_data/lexicon/semantic/lx.000696.json +104 -0
- rowih_data/lexicon/semantic/lx.000697.json +100 -0
- rowih_data/lexicon/semantic/lx.000698.json +104 -0
- rowih_data/lexicon/semantic/lx.000699.json +80 -0
- rowih_data/lexicon/semantic/lx.000700.json +104 -0
- rowih_data/lexicon/semantic/lx.000701.json +66 -0
- rowih_data/lexicon/semantic/lx.000702.json +78 -0
- rowih_data/lexicon/semantic/lx.000703.json +78 -0
- rowih_data/lexicon/semantic/lx.000704.json +64 -0
- rowih_data/lexicon/semantic/lx.000705.json +108 -0
- rowih_data/lexicon/semantic/lx.000706.json +66 -0
- rowih_data/lexicon/semantic/lx.000707.json +76 -0
- rowih_data/lexicon/semantic/lx.000708.json +62 -0
- rowih_data/lexicon/semantic/lx.000709.json +62 -0
- rowih_data/lexicon/semantic/lx.000710.json +74 -0
- rowih_data/lexicon/semantic/lx.000711.json +82 -0
- rowih_data/lexicon/semantic/lx.000712.json +100 -0
- rowih_data/lexicon/semantic/lx.000713.json +64 -0
- rowih_data/lexicon/semantic/lx.000714.json +86 -0
- rowih_data/lexicon/semantic/lx.000715.json +102 -0
- rowih_data/lexicon/semantic/lx.000716.json +132 -0
- rowih_data/lexicon/semantic/lx.000717.json +116 -0
- rowih_data/lexicon/semantic/lx.000718.json +132 -0
- rowih_data/lexicon/semantic/lx.000719.json +126 -0
- rowih_data/lexicon/semantic/lx.000720.json +92 -0
- rowih_data/lexicon/semantic/lx.000721.json +58 -0
- rowih_data/lexicon/semantic/lx.000722.json +76 -0
- rowih_data/lexicon/semantic/lx.000723.json +92 -0
- rowih_data/lexicon/semantic/lx.000724.json +102 -0
- rowih_data/lexicon/semantic/lx.000725.json +114 -0
- rowih_data/lexicon/semantic/lx.000726.json +100 -0
- rowih_data/lexicon/semantic/lx.000727.json +108 -0
- rowih_data/lexicon/semantic/lx.000728.json +62 -0
- rowih_data/lexicon/semantic/lx.000729.json +62 -0
- rowih_data/lexicon/semantic/lx.000730.json +74 -0
- rowih_data/lexicon/semantic/lx.000731.json +104 -0
- rowih_data/lexicon/semantic/lx.000732.json +96 -0
- rowih_data/lexicon/semantic/lx.000733.json +116 -0
- rowih_data/lexicon/semantic/lx.000734.json +86 -0
- rowih_data/lexicon/semantic/lx.000735.json +88 -0
- rowih_data/lexicon/semantic/lx.000736.json +113 -0
- rowih_data/lexicon/semantic/lx.000737.json +130 -0
- rowih_data/lexicon/semantic/lx.000738.json +84 -0
- rowih_data/lexicon/semantic/lx.000739.json +66 -0
- rowih_data/lexicon/semantic/lx.000740.json +88 -0
- rowih_data/lexicon/semantic/lx.000741.json +84 -0
- rowih_data/lexicon/semantic/lx.000742.json +66 -0
- rowih_data/lexicon/semantic/lx.000743.json +134 -0
- rowih_data/lexicon/semantic/lx.000744.json +136 -0
- rowih_data/lexicon/semantic/lx.000745.json +104 -0
- rowih_data/lexicon/semantic/lx.000746.json +126 -0
- rowih_data/lexicon/semantic/lx.000747.json +82 -0
- rowih_data/lexicon/semantic/lx.000748.json +88 -0
- rowih_data/lexicon/semantic/lx.000749.json +90 -0
- rowih_data/lexicon/semantic/lx.000750.json +92 -0
- rowih_data/lexicon/semantic/lx.000751.json +78 -0
- rowih_data/lexicon/semantic/lx.000752.json +82 -0
- rowih_data/lexicon/semantic/lx.000753.json +98 -0
- rowih_data/lexicon/semantic/lx.000754.json +72 -0
- rowih_data/lexicon/semantic/lx.000755.json +76 -0
- rowih_data/lexicon/semantic/lx.000756.json +82 -0
- rowih_data/lexicon/semantic/lx.000757.json +118 -0
- rowih_data/lexicon/semantic/lx.000758.json +92 -0
- rowih_data/lexicon/semantic/lx.000759.json +78 -0
- rowih_data/lexicon/semantic/lx.000760.json +112 -0
- rowih_data/lexicon/semantic/lx.000761.json +113 -0
- rowih_data/lexicon/semantic/lx.000762.json +66 -0
- rowih_data/lexicon/semantic/lx.000763.json +108 -0
- rowih_data/lexicon/semantic/lx.000764.json +80 -0
- rowih_data/lexicon/semantic/lx.000765.json +122 -0
- rowih_data/lexicon/semantic/lx.000766.json +96 -0
- rowih_data/lexicon/semantic/lx.000767.json +72 -0
- rowih_data/lexicon/semantic/lx.000768.json +82 -0
- rowih_data/lexicon/semantic/lx.000769.json +38 -0
- rowih_data/lexicon/semantic/lx.000770.json +38 -0
- rowih_data/lexicon/semantic/lx.000771.json +38 -0
- rowih_data/lexicon/semantic/lx.000772.json +58 -0
- rowih_data/lexicon/semantic/lx.000773.json +58 -0
- rowih_data/lexicon/semantic/lx.000774.json +58 -0
- rowih_data/lexicon/semantic/lx.000775.json +100 -0
- rowih_data/lexicon/semantic/lx.000776.json +68 -0
- rowih_data/lexicon/semantic/lx.000777.json +94 -0
- rowih_data/lexicon/semantic/lx.000778.json +72 -0
- rowih_data/lexicon/semantic/lx.000779.json +60 -0
- rowih_data/lexicon/semantic/lx.000780.json +80 -0
- rowih_data/lexicon/semantic/lx.000781.json +78 -0
- rowih_data/lexicon/semantic/lx.000782.json +94 -0
- rowih_data/lexicon/semantic/lx.000783.json +60 -0
- rowih_data/lexicon/semantic/lx.000784.json +80 -0
- rowih_data/lexicon/semantic/lx.000785.json +100 -0
- rowih_data/lexicon/semantic/lx.000786.json +64 -0
- rowih_data/lexicon/semantic/lx.000787.json +84 -0
- rowih_data/lexicon/semantic/lx.000788.json +60 -0
- rowih_data/lexicon/semantic/lx.000789.json +60 -0
- rowih_data/lexicon/semantic/lx.000790.json +84 -0
- rowih_data/lexicon/semantic/lx.000791.json +84 -0
- rowih_data/lexicon/semantic/lx.000792.json +68 -0
- rowih_data/lexicon/semantic/lx.000793.json +68 -0
- rowih_data/lexicon/semantic/lx.000794.json +84 -0
- rowih_data/lexicon/semantic/lx.000795.json +100 -0
- rowih_data/lexicon/semantic/lx.000796.json +102 -0
- rowih_data/lexicon/semantic/lx.000797.json +86 -0
- rowih_data/lexicon/semantic/lx.000798.json +104 -0
- rowih_data/lexicon/semantic/lx.000799.json +114 -0
- rowih_data/lexicon/semantic/lx.000800.json +108 -0
- rowih_data/lexicon/semantic/lx.000801.json +88 -0
- rowih_data/lexicon/semantic/lx.000802.json +92 -0
- rowih_data/lexicon/semantic/lx.000803.json +100 -0
- rowih_data/lexicon/semantic/lx.000804.json +128 -0
- rowih_data/lexicon/semantic/lx.000805.json +80 -0
- rowih_data/lexicon/semantic/lx.000806.json +68 -0
- rowih_data/lexicon/semantic/lx.000807.json +82 -0
- rowih_data/lexicon/semantic/lx.000808.json +100 -0
- rowih_data/lexicon/semantic/lx.000809.json +68 -0
- rowih_data/lexicon/semantic/lx.000810.json +128 -0
- rowih_data/lexicon/semantic/lx.000811.json +90 -0
- rowih_data/lexicon/semantic/lx.000812.json +96 -0
- rowih_data/lexicon/semantic/lx.000813.json +123 -0
- rowih_data/lexicon/semantic/lx.000814.json +132 -0
- rowih_data/lexicon/semantic/lx.000815.json +80 -0
- rowih_data/lexicon/semantic/lx.000816.json +106 -0
- rowih_data/lexicon/semantic/lx.000817.json +112 -0
- rowih_data/lexicon/semantic/lx.000818.json +92 -0
- rowih_data/lexicon/semantic/lx.000819.json +94 -0
- rowih_data/lexicon/semantic/lx.000820.json +121 -0
- rowih_data/lexicon/semantic/lx.000821.json +112 -0
- rowih_data/lexicon/semantic/lx.000822.json +80 -0
- rowih_data/lexicon/semantic/lx.000823.json +64 -0
- rowih_data/lexicon/semantic/lx.000824.json +96 -0
- rowih_data/lexicon/semantic/lx.000825.json +106 -0
- rowih_data/lexicon/semantic/lx.000826.json +114 -0
- rowih_data/lexicon/semantic/lx.000827.json +64 -0
- rowih_data/lexicon/semantic/lx.000828.json +94 -0
- rowih_data/lexicon/semantic/lx.000829.json +72 -0
- rowih_data/lexicon/semantic/lx.000830.json +98 -0
- rowih_data/lexicon/semantic/lx.000831.json +92 -0
- rowih_data/lexicon/semantic/lx.000832.json +62 -0
- rowih_data/lexicon/semantic/lx.000833.json +94 -0
- rowih_data/lexicon/semantic/lx.000834.json +84 -0
- rowih_data/lexicon/semantic/lx.000835.json +56 -0
- rowih_data/lexicon/semantic/lx.000836.json +50 -0
- rowih_data/lexicon/semantic/lx.000837.json +57 -0
- rowih_data/lexicon/semantic/lx.000838.json +84 -0
- rowih_data/lexicon/semantic/lx.000839.json +82 -0
- rowih_data/lexicon/semantic/lx.000840.json +82 -0
- rowih_data/lexicon/semantic/lx.000841.json +82 -0
- rowih_data/lexicon/semantic/lx.000842.json +82 -0
- rowih_data/lexicon/semantic/lx.000843.json +82 -0
- rowih_data/lexicon/semantic/lx.000844.json +82 -0
- rowih_data/lexicon/semantic/lx.000845.json +102 -0
- rowih_data/lexicon/semantic/lx.000846.json +82 -0
- rowih_data/lexicon/semantic/lx.000847.json +82 -0
- rowih_data/lexicon/semantic/lx.000848.json +82 -0
- rowih_data/lexicon/semantic/lx.000849.json +82 -0
- rowih_data/lexicon/semantic/lx.000850.json +82 -0
- rowih_data/lexicon/semantic/lx.000851.json +82 -0
- rowih_data/lexicon/semantic/lx.000852.json +82 -0
- rowih_data/lexicon/semantic/lx.000853.json +82 -0
- rowih_data/lexicon/semantic/lx.000854.json +82 -0
- rowih_data/lexicon/semantic/lx.000855.json +96 -0
- rowih_data/lexicon/semantic/lx.000856.json +82 -0
- rowih_data/lexicon/semantic/lx.000857.json +82 -0
- rowih_data/lexicon/senses/lx.000189.json +61 -0
- rowih_data/lexicon/senses/lx.000190.json +61 -0
- rowih_data/lexicon/senses/lx.000191.json +56 -0
- rowih_data/lexicon/senses/lx.000192.json +56 -0
- rowih_data/lexicon/senses/lx.000193.json +56 -0
- rowih_data/lexicon/senses/lx.000194.json +56 -0
- rowih_data/lexicon/senses/lx.000858.json +56 -0
- rowih_data/lexicon/senses/lx.000859.json +56 -0
- rowih_data/lexicon/senses/lx.000860.json +56 -0
- rowih_data/lexicon/senses/lx.000861.json +56 -0
- rowih_data/lexicon/senses/lx.000862.json +56 -0
- rowih_data/lexicon/senses/lx.000863.json +56 -0
- rowih_data/lexicon/senses/lx.000864.json +56 -0
- rowih_data/lexicon/senses/lx.000865.json +56 -0
- rowih_data/lexicon/senses/lx.000866.json +56 -0
- rowih_data/lexicon/senses/lx.000867.json +56 -0
- rowih_data/lexicon/usage/1.0.json +37097 -0
- rowih_data/specification/README.md +96 -0
- rowih_data/specification/conformance.md +429 -0
- rowih_data/specification/dialects.md +96 -0
- rowih_data/specification/discourse.md +158 -0
- rowih_data/specification/grammar.md +537 -0
- rowih_data/specification/lexicon.md +273 -0
- rowih_data/specification/meaning.md +185 -0
- rowih_data/specification/notation.md +151 -0
- rowih_data/specification/protocol.md +277 -0
- rowih_data/specification/sounds-and-words.md +133 -0
- rowih_data/specification/writing-system.md +121 -0
rowih/__init__.py
ADDED
rowih/api.py
ADDED
|
@@ -0,0 +1,610 @@
|
|
|
1
|
+
"""The API. No function raises an exception for any message: each returns its result
|
|
2
|
+
together with its diagnostics. A writer's input is another matter: `generate` and `write`
|
|
3
|
+
raise `InputError`, and nothing else, for a text that does not read as the notation
|
|
4
|
+
(`NotationError`), envelope values that cannot be written (`EnvelopeError`) or a register,
|
|
5
|
+
mode or diction the language does not have (`OptionError`), and `state` raises it for a
|
|
6
|
+
statement's parts it cannot write (`StatementError`), since these are errors of what the
|
|
7
|
+
writer gave and not of a message.
|
|
8
|
+
|
|
9
|
+
The module is one file past the usual length because it is the interface the
|
|
10
|
+
specification lists, every function in one place; what a function does beyond calling
|
|
11
|
+
the stages lives in the module it names."""
|
|
12
|
+
from __future__ import annotations
|
|
13
|
+
|
|
14
|
+
import json
|
|
15
|
+
from dataclasses import dataclass, field
|
|
16
|
+
|
|
17
|
+
from . import data, formation, registers
|
|
18
|
+
from .checker import Checker, move_class, precision_bound
|
|
19
|
+
from .diagnostics import Diagnostic, InputError # noqa: F401
|
|
20
|
+
from .lexer import lex, tokenize as _tokenize
|
|
21
|
+
from .normal import Normaliser
|
|
22
|
+
from .notation import NotationError # noqa: F401
|
|
23
|
+
from .parser import parse_words
|
|
24
|
+
from .serialise import canonical_lines, check_value, to_native
|
|
25
|
+
from .tree import Spell, from_ast_move, strip_private
|
|
26
|
+
from .statements import STATEMENTS # noqa: F401
|
|
27
|
+
from .writer import (FIXED_ENVELOPE, Envelope, EnvelopeError, OptionError, # noqa: F401
|
|
28
|
+
StatementError)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
@dataclass
|
|
32
|
+
class Analysis:
|
|
33
|
+
text: str
|
|
34
|
+
encoding: str
|
|
35
|
+
words: list = field(default_factory=list)
|
|
36
|
+
message: object = None
|
|
37
|
+
moves: list = field(default_factory=list) # move trees
|
|
38
|
+
normal: list = field(default_factory=list) # normal-form move trees
|
|
39
|
+
classes: list = field(default_factory=list) # computed class of each move
|
|
40
|
+
diagnostics: list = field(default_factory=list)
|
|
41
|
+
canonical: str = ""
|
|
42
|
+
normal_text: str = ""
|
|
43
|
+
# the social and textual component of each move: the act word and the idioms its
|
|
44
|
+
# realisation chose, the losses it declares and its register, diction, politeness word
|
|
45
|
+
# and register-marked words (specification/lexicon.md#registers)
|
|
46
|
+
social: list = field(default_factory=list)
|
|
47
|
+
# the meaning each formation the release does not list has from its parts
|
|
48
|
+
formations: list = field(default_factory=list)
|
|
49
|
+
# the statement of a protocol message, which carries no moves
|
|
50
|
+
# (specification/protocol.md#protocol-messages): what it states and its parts, each a
|
|
51
|
+
# channel with serials or entries
|
|
52
|
+
statement: dict | None = None
|
|
53
|
+
# what the message names of the releases (its language, lexicon and protocol versions
|
|
54
|
+
# and its dialects), the arguments of `data.load` it was read under, and what of it
|
|
55
|
+
# the reader lacked, by kind (specification/dialects.md#naming-a-dialect-in-a-message)
|
|
56
|
+
named: dict = field(default_factory=dict)
|
|
57
|
+
read_under: dict = field(default_factory=dict)
|
|
58
|
+
lacking: dict = field(default_factory=dict)
|
|
59
|
+
# the features a reader passed over, by move, and the words the named releases have
|
|
60
|
+
# deprecated (specification/protocol.md#versions-and-features;
|
|
61
|
+
# specification/dialects.md#what-a-dialect-release-may-hold)
|
|
62
|
+
ignored: list = field(default_factory=list)
|
|
63
|
+
deprecated: list = field(default_factory=list)
|
|
64
|
+
# how far what was parsed is vouched for in transit
|
|
65
|
+
# (specification/protocol.md#the-check-values): `verified` where the integrity check
|
|
66
|
+
# value matched, `lowered` where it did not, so that what parsed may be damaged, and
|
|
67
|
+
# `unchecked` where the message carries none and rests on the language's redundancy
|
|
68
|
+
confidence: str = "unchecked"
|
|
69
|
+
|
|
70
|
+
@property
|
|
71
|
+
def ok(self) -> bool:
|
|
72
|
+
return not self.diagnostics
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
def parse(text: str, encoding: str | None = None, lexicon: str | None = None,
|
|
76
|
+
reader=None) -> Analysis:
|
|
77
|
+
"""The analysis of a message, read under the language, lexicon and dialect releases it
|
|
78
|
+
names (specification/dialects.md#naming-a-dialect-in-a-message) by a reader that holds
|
|
79
|
+
what `reader` states, every release this implementation reads by default. `lexicon` is
|
|
80
|
+
the release the reader takes as its own, the current one by default."""
|
|
81
|
+
from . import releases
|
|
82
|
+
reader = reader or releases.FULL
|
|
83
|
+
refused = _unheld_lexicon(lexicon, reader)
|
|
84
|
+
if refused is not None:
|
|
85
|
+
return Analysis(text, encoding or "", diagnostics=[refused])
|
|
86
|
+
own = data.load(lexicon)
|
|
87
|
+
a = _read(text, encoding, own)
|
|
88
|
+
if a.message is None:
|
|
89
|
+
return a
|
|
90
|
+
env = a.message.envelope
|
|
91
|
+
if env.is_protocol:
|
|
92
|
+
return _protocol(a, own)
|
|
93
|
+
res = releases.resolve(env, reader)
|
|
94
|
+
a.named = res.named
|
|
95
|
+
span = env.version[0].words[0].span
|
|
96
|
+
if res.lacking:
|
|
97
|
+
# Normalisation reads only what the message names, so what the reader lacks of it
|
|
98
|
+
# is reported, with what the reader reads, and the moves are not interpreted
|
|
99
|
+
# under anything else (specification/protocol.md#versions-and-features).
|
|
100
|
+
a.lacking = res.lacking
|
|
101
|
+
reads = reader.reads()
|
|
102
|
+
# the words the reader lacks for want of what the message names are the lack
|
|
103
|
+
# this diagnostic reports, not each a word of its own
|
|
104
|
+
a.diagnostics = [d for d in a.diagnostics if d.code != "d.lexer.unknown-word"]
|
|
105
|
+
a.diagnostics.append(Diagnostic(
|
|
106
|
+
"d.parser.version-unknown", span,
|
|
107
|
+
expected=_reads_text(reads, res.lacking), detected=_lacking_text(res.lacking),
|
|
108
|
+
recoverability="restate in what the reader reads"))
|
|
109
|
+
return a
|
|
110
|
+
if res.pairing:
|
|
111
|
+
a.diagnostics.append(Diagnostic("d.parser.version-pairing", span,
|
|
112
|
+
detected=res.pairing))
|
|
113
|
+
return a
|
|
114
|
+
lang = data.load(**res.load)
|
|
115
|
+
if (lang.version, lang.language, lang.dialects) != (own.version, own.language,
|
|
116
|
+
own.dialects):
|
|
117
|
+
a = _read(text, encoding, lang)
|
|
118
|
+
a.named = res.named
|
|
119
|
+
if a.message is None:
|
|
120
|
+
return a
|
|
121
|
+
env = a.message.envelope
|
|
122
|
+
a.read_under = dict(res.load, protocol=res.named["protocol"])
|
|
123
|
+
clashes = releases.conflicts(lang) if lang.dialect_forms else []
|
|
124
|
+
if clashes:
|
|
125
|
+
a.diagnostics.append(Diagnostic("d.parser.dialect-conflict", span,
|
|
126
|
+
detected=["%s %s" % c for c in clashes]))
|
|
127
|
+
return a
|
|
128
|
+
_interpret(a, lang, reader)
|
|
129
|
+
a.deprecated = _deprecated(a.moves, lang)
|
|
130
|
+
a.formations = [{"form": w.form, "meaning": formation.compose(w.morphemes, lang)}
|
|
131
|
+
for w in a.words if w.kind == "formation"]
|
|
132
|
+
a.diagnostics += _check_values(a, lang)
|
|
133
|
+
return a
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
def _unheld_lexicon(lexicon: str | None, reader=None):
|
|
137
|
+
"""The diagnostic for a lexicon release `reader` does not hold, every release this
|
|
138
|
+
implementation reads where it is None, which it cannot take as its own, as an option
|
|
139
|
+
of `render` or `convert` it does not know is refused; None for one it holds."""
|
|
140
|
+
if lexicon is None:
|
|
141
|
+
return None
|
|
142
|
+
from . import releases
|
|
143
|
+
held = list((reader or releases.FULL).reads()["lexicon"])
|
|
144
|
+
if lexicon in held:
|
|
145
|
+
return None
|
|
146
|
+
return Diagnostic("d.parser.unexpected-word", None, expected=held, detected=[lexicon],
|
|
147
|
+
note="a lexicon release this implementation does not hold")
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
def _read(text: str, encoding: str | None, lang) -> Analysis:
|
|
151
|
+
tokens, diags, enc = _tokenize(text, lang, encoding)
|
|
152
|
+
words, ldiags = lex(tokens, lang)
|
|
153
|
+
a = Analysis(text, enc, words, diagnostics=diags + ldiags)
|
|
154
|
+
message, pdiags = parse_words(words, lang)
|
|
155
|
+
a.diagnostics += pdiags
|
|
156
|
+
a.message = message
|
|
157
|
+
if message is not None:
|
|
158
|
+
a.canonical = canonical_lines(message.envelope.words, message.lines)
|
|
159
|
+
return a
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
def _interpret(a: Analysis, lang, reader) -> None:
|
|
163
|
+
"""Check and normalise each move, a reader lacking a must-understand feature the move
|
|
164
|
+
uses rejecting it and one lacking a may-ignore feature passing over its words
|
|
165
|
+
(specification/protocol.md#versions-and-features)."""
|
|
166
|
+
from . import features
|
|
167
|
+
env = a.message.envelope
|
|
168
|
+
sender = env.sender.text
|
|
169
|
+
checker = Checker(lang, env)
|
|
170
|
+
norm = Normaliser(lang)
|
|
171
|
+
spell = Spell(lang)
|
|
172
|
+
lines, kept = [], []
|
|
173
|
+
for m in a.message.moves:
|
|
174
|
+
t = from_ast_move(m)
|
|
175
|
+
lacking = set()
|
|
176
|
+
if reader.lacking:
|
|
177
|
+
used = features.used_by_words(m.body[:-1], lang)
|
|
178
|
+
lacking = {f for f in used if f in reader.lacking}
|
|
179
|
+
if _reject(a, m, lang, [f for f in lacking
|
|
180
|
+
if features.flag(lang, f) == features.MUST]):
|
|
181
|
+
continue
|
|
182
|
+
_pass_over(a, m, t, lang, lacking, used)
|
|
183
|
+
checker_mark = len(checker.diags)
|
|
184
|
+
checker.check_move(t, sender)
|
|
185
|
+
n = norm.move(t)
|
|
186
|
+
if reader.lacking:
|
|
187
|
+
late = features.used_by_reading(t, norm.resolved, lang) & reader.lacking
|
|
188
|
+
if _reject(a, m, lang, sorted(late)):
|
|
189
|
+
del checker.diags[checker_mark:]
|
|
190
|
+
continue
|
|
191
|
+
kept.append(m)
|
|
192
|
+
a.moves.append(t)
|
|
193
|
+
a.classes.append(move_class(t))
|
|
194
|
+
a.normal.append(n)
|
|
195
|
+
a.social.append(_social(t, norm.resolved, lang))
|
|
196
|
+
if norm.resolved:
|
|
197
|
+
# the expansion must fit where the idiom stands
|
|
198
|
+
# (specification/lexicon.md#conventional-expressions-and-idioms)
|
|
199
|
+
known = {d.code for d in checker.diags}
|
|
200
|
+
inner = Checker(lang, env)
|
|
201
|
+
# in the move's own register, which the normal form sets aside
|
|
202
|
+
inner.check_move(registers.carry(t, n), sender)
|
|
203
|
+
for d in inner.diags:
|
|
204
|
+
if d.code not in known:
|
|
205
|
+
d.location = t.get("_span")
|
|
206
|
+
checker.diags.append(d)
|
|
207
|
+
lines.append(" ".join(spell.move(n)))
|
|
208
|
+
a.message.moves = kept
|
|
209
|
+
a.diagnostics += checker.diags
|
|
210
|
+
a.normal_text = "".join(line + "\n" for line in lines)
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
def _reject(a: Analysis, m, lang, numbers: list) -> bool:
|
|
214
|
+
"""Reject a move for the must-understand features `numbers` the reader lacks."""
|
|
215
|
+
if not numbers:
|
|
216
|
+
return False
|
|
217
|
+
a.diagnostics.append(Diagnostic(
|
|
218
|
+
"d.parser.feature-lacking", m.words[0].span,
|
|
219
|
+
detected=["feature %d" % n for n in sorted(numbers)],
|
|
220
|
+
recoverability="restate without the feature"))
|
|
221
|
+
a.lacking.setdefault("features", [])
|
|
222
|
+
a.lacking["features"] = sorted(set(a.lacking["features"]) | set(numbers))
|
|
223
|
+
return True
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
def _pass_over(a: Analysis, m, t: dict, lang, lacking: set, used: dict) -> None:
|
|
227
|
+
"""Pass over the words of the may-ignore features the reader lacks: in the head, where
|
|
228
|
+
the social and textual component records them, they are dropped; standing as content,
|
|
229
|
+
each is kept opaque and reported as a word the reader lacks."""
|
|
230
|
+
from . import features
|
|
231
|
+
may = sorted(f for f in lacking if features.flag(lang, f) == features.MAY)
|
|
232
|
+
if not may:
|
|
233
|
+
return
|
|
234
|
+
ignored = {w.identifier for f in may for w in used[f]}
|
|
235
|
+
for key in ("politeness", "diction"):
|
|
236
|
+
if t.get(key) in ignored:
|
|
237
|
+
t.pop(key)
|
|
238
|
+
t["losses"] = [x for x in t.get("losses", []) if x not in ignored]
|
|
239
|
+
for node in features._walk(t["constituents"]):
|
|
240
|
+
if node.get("kind") == "word" and node.get("entry") in ignored:
|
|
241
|
+
node.update(entry=None, status="unknown")
|
|
242
|
+
a.diagnostics.append(Diagnostic("d.lexer.unknown-word", node.get("_span"),
|
|
243
|
+
detected=[node["form"]],
|
|
244
|
+
recoverability="kept opaque",
|
|
245
|
+
note="a word of a feature this reader lacks"))
|
|
246
|
+
a.ignored.append({"move": m.index, "features": may})
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
def _deprecated(moves: list, lang) -> list:
|
|
250
|
+
"""Every word the moves use that a release the message names has deprecated: still
|
|
251
|
+
interpretable, and reported
|
|
252
|
+
(specification/dialects.md#what-a-dialect-release-may-hold). A word inside a quotation
|
|
253
|
+
or other embedded material is mentioned, not used, and is not reported."""
|
|
254
|
+
from .features import _walk
|
|
255
|
+
out = []
|
|
256
|
+
for t in moves:
|
|
257
|
+
used = [lang.items[t[k]].form for k in ("act", "politeness", "diction") if t.get(k)]
|
|
258
|
+
used += [n["form"] for n in _walk(t["constituents"]) if n.get("kind") == "word"]
|
|
259
|
+
for form in used:
|
|
260
|
+
found = lang.deprecated.get(form)
|
|
261
|
+
if found is not None:
|
|
262
|
+
out.append(dict(found, form=form))
|
|
263
|
+
return out
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
def _reads_text(reads: dict, lacking: dict) -> list:
|
|
267
|
+
out = []
|
|
268
|
+
for kind in ("language", "lexicon", "protocol"):
|
|
269
|
+
if kind in lacking:
|
|
270
|
+
out.append("%s %s" % (kind, " ".join(reads[kind])))
|
|
271
|
+
if "dialects" in lacking:
|
|
272
|
+
out.append("dialects " + (" ".join("%d %s" % d for d in reads["dialects"]) or "none"))
|
|
273
|
+
if "features" in lacking:
|
|
274
|
+
out.append("lacking features %s" % " ".join(map(str, reads["lacking"])))
|
|
275
|
+
return out
|
|
276
|
+
|
|
277
|
+
|
|
278
|
+
def _lacking_text(lacking: dict) -> list:
|
|
279
|
+
out = ["%s %s" % (kind, v) for kind in ("language", "lexicon", "protocol")
|
|
280
|
+
for v in lacking.get(kind, [])]
|
|
281
|
+
out += ["dialect %d %s %s" % d for d in lacking.get("dialects", [])]
|
|
282
|
+
out += ["feature %d" % f for f in lacking.get("features", [])]
|
|
283
|
+
return out
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
def _protocol(a: Analysis, lang) -> Analysis:
|
|
287
|
+
"""A protocol message, read whatever version it states, since every word it can hold
|
|
288
|
+
is a fixed form its statement and its check values."""
|
|
289
|
+
statement = a.message.statement
|
|
290
|
+
if statement is not None:
|
|
291
|
+
a.statement = {"kind": statement.kind, "parts": [list(p) for p in statement.parts]}
|
|
292
|
+
a.diagnostics += _check_values(a, lang)
|
|
293
|
+
return a
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
def _social(t: dict, resolved: list, lang) -> dict:
|
|
297
|
+
"""The social and textual component's records of a move as the analysis keeps them:
|
|
298
|
+
its act word and the idioms it read, the losses it declares, its register, diction and
|
|
299
|
+
politeness word, and its register-marked words
|
|
300
|
+
(specification/lexicon.md#registers)."""
|
|
301
|
+
return {"act": t.get("act"), "idioms": list(resolved),
|
|
302
|
+
"losses": list(t.get("losses", [])), "register": registers.code(t, lang),
|
|
303
|
+
"diction": t.get("diction"), "politeness": t.get("politeness"),
|
|
304
|
+
"marked": registers.marked_words(t, lang)}
|
|
305
|
+
|
|
306
|
+
|
|
307
|
+
def _check_values(a: Analysis, lang) -> list:
|
|
308
|
+
env = a.message.envelope
|
|
309
|
+
out = []
|
|
310
|
+
# every precision-bound move, by any route
|
|
311
|
+
# (specification/grammar.md#precision-bound-moves), needs the value
|
|
312
|
+
# (`inv.integrity-value-required`) and so does every protocol message (protocol 0.3)
|
|
313
|
+
needs = env.is_protocol or any(precision_bound(t) for t in a.moves)
|
|
314
|
+
if needs and env.integrity is None:
|
|
315
|
+
out.append(Diagnostic("d.checker.integrity-value-required",
|
|
316
|
+
env.words[0].span if env.words else None,
|
|
317
|
+
expected=["an integrity check value"]))
|
|
318
|
+
integrity_ok = True
|
|
319
|
+
if env.integrity is not None and len(a.message.lines) > 0:
|
|
320
|
+
without = canonical_lines(env.words, a.message.lines, drop=env.integrity_words)
|
|
321
|
+
computed = check_value(without)
|
|
322
|
+
a.confidence = "verified"
|
|
323
|
+
if computed != env.integrity.integer():
|
|
324
|
+
integrity_ok = False
|
|
325
|
+
a.confidence = "lowered"
|
|
326
|
+
out.append(Diagnostic("d.check-values.integrity-mismatch",
|
|
327
|
+
env.integrity.words[0].span,
|
|
328
|
+
expected=[_check_text(computed, lang)],
|
|
329
|
+
detected=[env.integrity.text],
|
|
330
|
+
recoverability="send again"))
|
|
331
|
+
if env.semantic is not None and integrity_ok:
|
|
332
|
+
computed = check_value(a.normal_text)
|
|
333
|
+
if computed != env.semantic.integer():
|
|
334
|
+
out.append(Diagnostic("d.check-values.semantic-mismatch",
|
|
335
|
+
env.semantic.words[0].span,
|
|
336
|
+
expected=[_check_text(computed, lang)],
|
|
337
|
+
detected=[env.semantic.text]))
|
|
338
|
+
return out
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
def _check_text(value: int, lang) -> str:
|
|
342
|
+
return "%0*d" % (lang.protocol["check value width"], value)
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
def validate(text: str, encoding: str | None = None) -> list:
|
|
346
|
+
return parse(text, encoding).diagnostics
|
|
347
|
+
|
|
348
|
+
|
|
349
|
+
def normalise(text: str) -> tuple:
|
|
350
|
+
a = parse(text)
|
|
351
|
+
return a.normal_text, a.diagnostics
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
def check_values(text: str) -> dict:
|
|
355
|
+
a = parse(text)
|
|
356
|
+
env = a.message.envelope if a.message else None
|
|
357
|
+
result = {"diagnostics": a.diagnostics}
|
|
358
|
+
if env is not None:
|
|
359
|
+
lang = data.load()
|
|
360
|
+
result["integrity"] = {
|
|
361
|
+
"stated": env.integrity.text if env.integrity else None,
|
|
362
|
+
"computed": _check_text(check_value(canonical_lines(
|
|
363
|
+
env.words, a.message.lines, drop=env.integrity_words)), lang)}
|
|
364
|
+
result["semantic"] = {"stated": env.semantic.text if env.semantic else None,
|
|
365
|
+
"computed": _check_text(check_value(a.normal_text), lang)}
|
|
366
|
+
return result
|
|
367
|
+
|
|
368
|
+
|
|
369
|
+
def convert(text: str, to: str) -> tuple:
|
|
370
|
+
"""To the transliteration (canonical layout), the native digital form, the canonical
|
|
371
|
+
serialisation, or a JSON export marked as a view."""
|
|
372
|
+
a = parse(text)
|
|
373
|
+
lang = data.load()
|
|
374
|
+
if a.message is None:
|
|
375
|
+
return "", a.diagnostics
|
|
376
|
+
env = a.message.envelope
|
|
377
|
+
lines = [env.words] + a.message.lines
|
|
378
|
+
if to in ("transliteration", "canonical"):
|
|
379
|
+
return a.canonical, a.diagnostics
|
|
380
|
+
if to == "native":
|
|
381
|
+
return to_native(lines, lang), a.diagnostics
|
|
382
|
+
if to == "json":
|
|
383
|
+
view = {"view": "export", "made from": a.encoding,
|
|
384
|
+
"note": "an export of the analysis; never parsed as the language",
|
|
385
|
+
"envelope": {"sender": env.sender.text,
|
|
386
|
+
"recipients": [r.text for r in env.recipients],
|
|
387
|
+
"communication time": env.time.text,
|
|
388
|
+
"version": [v.text for v in env.version],
|
|
389
|
+
"identifier": env.identifier.text,
|
|
390
|
+
"first entry": env.first_entry.text},
|
|
391
|
+
"moves": [strip_private(t) for t in a.moves]}
|
|
392
|
+
if a.statement is not None:
|
|
393
|
+
view["statement"] = a.statement
|
|
394
|
+
return json.dumps(view, ensure_ascii=False, indent=1) + "\n", a.diagnostics
|
|
395
|
+
return "", [Diagnostic("d.parser.unexpected-word", None, expected=[
|
|
396
|
+
"transliteration", "native", "canonical", "json"], detected=[to])]
|
|
397
|
+
|
|
398
|
+
|
|
399
|
+
def render(text: str, format: str = "svg", has_font: bool = False, form: str = "display",
|
|
400
|
+
contrast: str = "normal") -> tuple:
|
|
401
|
+
"""The rendering of a message in a format of the writing system: SVG, PNG (bytes),
|
|
402
|
+
HTML, or the terminal representation, in the display, compact or handwritten form, at
|
|
403
|
+
normal or high contrast (specification/writing-system.md#the-renderings)."""
|
|
404
|
+
from .drawing import FORMS
|
|
405
|
+
from .render import CONTRASTS, html, png, svg, terminal
|
|
406
|
+
a = parse(text)
|
|
407
|
+
if form not in FORMS or contrast not in CONTRASTS:
|
|
408
|
+
return "", [Diagnostic("d.parser.unexpected-word", None,
|
|
409
|
+
expected=list(FORMS) + list(CONTRASTS),
|
|
410
|
+
detected=[form, contrast])]
|
|
411
|
+
if format == "svg":
|
|
412
|
+
return svg(a, form=form, contrast=contrast), a.diagnostics
|
|
413
|
+
if format == "png":
|
|
414
|
+
return png(a, form=form, contrast=contrast), a.diagnostics
|
|
415
|
+
if format == "html":
|
|
416
|
+
return html(a, form=form, contrast=contrast), a.diagnostics
|
|
417
|
+
if format == "terminal":
|
|
418
|
+
return terminal(a, has_font), a.diagnostics
|
|
419
|
+
return "", [Diagnostic("d.parser.unexpected-word", None,
|
|
420
|
+
expected=["svg", "png", "html", "terminal"], detected=[format])]
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
def speak(text: str) -> tuple:
|
|
424
|
+
"""The spoken message (specification/sounds-and-words.md#the-spoken-form): its lines
|
|
425
|
+
as spoken, with their prosody, IPA and espeak-ng input, and, where espeak-ng is
|
|
426
|
+
installed (the `speech` extra), the audio as WAV with the phonemes espeak-ng reports
|
|
427
|
+
for each line; where it is not, `synthesiser` says why and the audio is None."""
|
|
428
|
+
from .speech import spoken
|
|
429
|
+
a = parse(text)
|
|
430
|
+
out = {"lines": spoken(a), "audio": None, "phonemes": None, "synthesiser": "espeak-ng"}
|
|
431
|
+
if a.message is not None:
|
|
432
|
+
from .synthesis import SynthesiserUnavailable, synthesise
|
|
433
|
+
try:
|
|
434
|
+
out["audio"], out["phonemes"] = synthesise(a)
|
|
435
|
+
except SynthesiserUnavailable as e:
|
|
436
|
+
out["synthesiser"] = "unavailable: %s" % e
|
|
437
|
+
return out, a.diagnostics
|
|
438
|
+
|
|
439
|
+
|
|
440
|
+
def sound(text: str) -> tuple:
|
|
441
|
+
"""The measure and echoes of each move of a message."""
|
|
442
|
+
from .verse import sound as verse_sound
|
|
443
|
+
a = parse(text)
|
|
444
|
+
return verse_sound(a), a.diagnostics
|
|
445
|
+
|
|
446
|
+
|
|
447
|
+
def gloss(text: str) -> tuple:
|
|
448
|
+
"""The five lines for each move."""
|
|
449
|
+
from .generator import gloss_lines
|
|
450
|
+
a = parse(text)
|
|
451
|
+
return gloss_lines(a), a.diagnostics
|
|
452
|
+
|
|
453
|
+
|
|
454
|
+
def analyze(text: str) -> dict:
|
|
455
|
+
"""The analysis, with every stage's output, and its measurements: for each move its
|
|
456
|
+
derived times, the entries and messages it depends on, and what its speaker answers
|
|
457
|
+
for and mentions through its figures (specification/meaning.md#figures)."""
|
|
458
|
+
from .figures import answers_for, sources
|
|
459
|
+
from .temporal import derived
|
|
460
|
+
from .view import dependencies
|
|
461
|
+
a = parse(text)
|
|
462
|
+
comm = None
|
|
463
|
+
if a.message is not None:
|
|
464
|
+
try:
|
|
465
|
+
comm = float(a.message.envelope.time.text)
|
|
466
|
+
except ValueError:
|
|
467
|
+
comm = None
|
|
468
|
+
lang = data.load()
|
|
469
|
+
return {"analysis": a, "measurements": {"words": len(a.words), "moves": len(a.moves),
|
|
470
|
+
"diagnostics": len(a.diagnostics)},
|
|
471
|
+
"times": [derived(t, lang, comm) for t in a.moves],
|
|
472
|
+
"dependencies": [[list(d) for d in dependencies(t)] for t in a.moves],
|
|
473
|
+
"answers for": [answers_for(n["constituents"], lang) for n in a.normal],
|
|
474
|
+
"mentions": [sources(n["constituents"]) for n in a.normal]}
|
|
475
|
+
|
|
476
|
+
|
|
477
|
+
def discourse(texts: list, participant: str, now: float | None = None) -> dict:
|
|
478
|
+
"""One participant's view of an exchange
|
|
479
|
+
(specification/discourse.md#how-a-participant-receives-a-message): the messages it
|
|
480
|
+
received, in the order received, applied to its record, with what the record derives:
|
|
481
|
+
the threads, the open issues, the action items, the positions with their
|
|
482
|
+
corroboration, the common ground under the conventions the participants stated, the
|
|
483
|
+
negotiations and the conflicts."""
|
|
484
|
+
from .coordination import structure
|
|
485
|
+
from .view import View
|
|
486
|
+
view = View(str(participant))
|
|
487
|
+
diagnostics = []
|
|
488
|
+
for text in texts:
|
|
489
|
+
diagnostics += view.hear(text)
|
|
490
|
+
return {"view": view, "structure": structure(view, now), "diagnostics": diagnostics}
|
|
491
|
+
|
|
492
|
+
|
|
493
|
+
def translate(text: str, to: str = "english", record: dict | None = None) -> tuple:
|
|
494
|
+
"""The message in register `to`, by its code or its name, with the changes each move
|
|
495
|
+
makes to the social and textual component declared
|
|
496
|
+
(specification/lexicon.md#registers); or, where `to` is English, the explanation, a
|
|
497
|
+
view, which declares nothing since it is not the language. `record` maps the handle of
|
|
498
|
+
an entry a move names in place of restating it to the entry's content and recipients,
|
|
499
|
+
for a target register that restates it. Returns the text, the changes and the
|
|
500
|
+
diagnostics."""
|
|
501
|
+
from .english import English
|
|
502
|
+
a = parse(text)
|
|
503
|
+
if to.lower() != "english":
|
|
504
|
+
from .conversion import convert as convert_register
|
|
505
|
+
out = convert_register(a, to, record)
|
|
506
|
+
return out.text, out.changes, out.diagnostics
|
|
507
|
+
if a.message is None:
|
|
508
|
+
return "", [], a.diagnostics
|
|
509
|
+
e = English(sender=a.message.envelope.sender.text)
|
|
510
|
+
lines = [e.move(n) for n in a.normal]
|
|
511
|
+
lines.append("(an explanation made by this receiver; a view, not the language)")
|
|
512
|
+
return "".join(line + "\n" for line in lines), [], a.diagnostics
|
|
513
|
+
|
|
514
|
+
|
|
515
|
+
def generate(meaning, register: str | None = None, mode: str | None = None,
|
|
516
|
+
holdings=None, diction: str | None = None,
|
|
517
|
+
envelope: Envelope = FIXED_ENVELOPE) -> dict:
|
|
518
|
+
"""The six outputs of the generator
|
|
519
|
+
(specification/notation.md#what-the-generator-writes) from a semantic representation:
|
|
520
|
+
move trees, or a text in the literal semantic notation; `holdings`, an
|
|
521
|
+
`economy.Holdings`, says what the hearer holds Each message is written under
|
|
522
|
+
`envelope`, from participant 1 to participant 2 at a fixed time where none is
|
|
523
|
+
given."""
|
|
524
|
+
from .generator import Generator
|
|
525
|
+
return Generator().generate(meaning, register=register, mode=mode, holdings=holdings,
|
|
526
|
+
diction=diction, envelope=envelope)
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
def write(meaning, envelope: Envelope, register: str | None = None,
|
|
530
|
+
mode: str | None = None, holdings=None, diction: str | None = None,
|
|
531
|
+
signer=None) -> tuple:
|
|
532
|
+
"""The message a writer sends, written from `meaning` (move trees, or a text in the
|
|
533
|
+
notation) under `envelope`, in `register` and `mode` as `generate` writes its
|
|
534
|
+
transliteration, and signed where `signer`, a (scheme, sign) pair, is given; with the
|
|
535
|
+
diagnostics of reading it back, which a writer checks before sending it, since the
|
|
536
|
+
generator writes what the notation states and the reader judges it."""
|
|
537
|
+
from .generator import Generator
|
|
538
|
+
text = Generator().write(meaning, envelope, register=register, mode=mode,
|
|
539
|
+
holdings=holdings, diction=diction, signer=signer)
|
|
540
|
+
return text, parse(text).diagnostics
|
|
541
|
+
|
|
542
|
+
|
|
543
|
+
def state(kind: str, sender: int, recipient: int, time, channels=(), entries=(),
|
|
544
|
+
about: str | None = None, signer=None) -> tuple:
|
|
545
|
+
"""A protocol message from `sender` to `recipient`
|
|
546
|
+
(specification/protocol.md#protocol-messages), with the diagnostics of reading it
|
|
547
|
+
back. `understands` states the releases this implementation reads and the features it
|
|
548
|
+
lacks, and takes nothing more; `lacks` names the received message `about`, which must
|
|
549
|
+
be the recipient's, with what of it this reader lacks; `holds` states, for each
|
|
550
|
+
channel in `channels`, a pair of its recipients and the serials held; `send-again` and
|
|
551
|
+
`not-held` name such channels' serials and the numbers of entries in `entries`."""
|
|
552
|
+
from .statements import write_statement
|
|
553
|
+
text = write_statement(kind, sender, recipient, time, channels, entries, about, signer)
|
|
554
|
+
return text, parse(text).diagnostics
|
|
555
|
+
|
|
556
|
+
|
|
557
|
+
def tokenize(text: str, lexicon: str | None = None) -> tuple:
|
|
558
|
+
"""The words of a text with their locations, under the lexicon release `lexicon`, the
|
|
559
|
+
current one where it is None."""
|
|
560
|
+
refused = _unheld_lexicon(lexicon)
|
|
561
|
+
if refused is not None:
|
|
562
|
+
return [], [refused]
|
|
563
|
+
lang = data.load(lexicon)
|
|
564
|
+
tokens, diags, enc = _tokenize(text, lang)
|
|
565
|
+
words, ldiags = lex(tokens, lang)
|
|
566
|
+
return words, diags + ldiags
|
|
567
|
+
|
|
568
|
+
|
|
569
|
+
def lookup(term: str) -> list:
|
|
570
|
+
"""The words, members and morphemes that match a form, an identifier or English words,
|
|
571
|
+
and the terms of the dialects that match one (specification/dialects.md#terms)."""
|
|
572
|
+
lang = data.load()
|
|
573
|
+
term_l = term.lower()
|
|
574
|
+
out = []
|
|
575
|
+
for item in lang.items.values():
|
|
576
|
+
if term_l in (item.form, item.identifier.lower()) or term_l == item.name.lower() \
|
|
577
|
+
or term_l in item.gloss.lower().replace("-", " ").split():
|
|
578
|
+
out.append(item)
|
|
579
|
+
for d in data.dialects().values():
|
|
580
|
+
for t in d["terms"]:
|
|
581
|
+
if term_l in (t["orthographic form"], t["machine identifier"].lower(),
|
|
582
|
+
t["term"].lower()):
|
|
583
|
+
out.append(data.Item("jargon", t["machine identifier"], t["orthographic form"],
|
|
584
|
+
t["term"].upper().replace(" ", "-"), name=t["term"],
|
|
585
|
+
sort=t["sort"], category="jargon"))
|
|
586
|
+
# the compressed forms of a dialect's newest release
|
|
587
|
+
# (specification/dialects.md#compressed-forms)
|
|
588
|
+
for f in d.get("forms", []):
|
|
589
|
+
if term_l in (f["orthographic form"], f["machine identifier"].lower(),
|
|
590
|
+
f["term"].lower()):
|
|
591
|
+
out.append(data.Item("dialect", f["machine identifier"], f["orthographic form"],
|
|
592
|
+
f["key"].upper().replace(" ", "-"), name=f["key"],
|
|
593
|
+
sort=f["sort"], category="dialect form"))
|
|
594
|
+
return out
|
|
595
|
+
|
|
596
|
+
|
|
597
|
+
def version() -> dict:
|
|
598
|
+
"""The versions this implementation understands: its own language, lexicon and
|
|
599
|
+
protocol releases, its newest release of each dialect by name, and every release of
|
|
600
|
+
each kind it reads (specification/dialects.md#naming-a-dialect-in-a-message), which a
|
|
601
|
+
statement of `UNDERSTANDS` lists."""
|
|
602
|
+
from . import releases
|
|
603
|
+
lang = data.load()
|
|
604
|
+
reads = releases.implementation()
|
|
605
|
+
return {"language": lang.grammar["version"], "lexicon": lang.release["version"],
|
|
606
|
+
"protocol": lang.protocol["version"],
|
|
607
|
+
"dialects": {name: d["version"] for name, d in data.dialects().items()},
|
|
608
|
+
"reads": {"language": list(reads["language"]), "lexicon": list(reads["lexicon"]),
|
|
609
|
+
"protocol": list(reads["protocol"]),
|
|
610
|
+
"dialects": [list(d) for d in reads["dialects"]]}}
|