Code Monkey home page Code Monkey logo

plottoxml's Introduction

Plotto

Plotto—A new method of plot suggestion for writers of creative fiction

by William Wallace Cook, 1867–1933

Published 1928

What is Plotto?

Plotto is an "algebra" for stories that an author (or storyteller) can use to help create works of fiction.

It is a collection of 1,462 generic plot conflicts that can be chained together into a "masterplot" that forms the core plot structure for the story.

Read more about Plotto at these sites:

Plotto XML

This project is dedicated to developing machine-readable editions of Plotto that can be used programmatically.

Original Plotto

plotto-original-corrected.xml is derived from plotto-mf.html of Gary Kacmaarcik's Plotto project, which is originally based on the archive.org version. I have corrected some of the links, which were either inexact or typos.

Contributing

If you have an idea, add an issue to discuss it. If you want to get your hands dirty, fork the repository, make your changes on a feature branch, and submit those changes as a pull request.

plotto-original-corrected.xml should always remain close to the received Plotto text, though it may be enhanced with further structured markup.

Changes to the Plotto content should be added as new XML files using the same schema.

Validating your XML

You will need a RelaxNG schema converter/validator. I recommend Jing and Trang.

If you are on Mac OS X:

brew install jing-trang

On Linux:

apt-get install -y jing trang

To validate the XML:

make validate

If you for some reason can't get local validation to work, push up a pull request and let Travis CI run the validation for you. I won't judge you.

plottoxml's People

Contributors

eykd avatar konotorious avatar

Stargazers

Zed Hanok avatar  avatar Martin Frojd avatar  avatar Douglas Stephen avatar Börje Karlsson avatar Pulpgrinder Dev Team avatar Moshe Uminer avatar Daniel Howe avatar Cody Carvel avatar  avatar  avatar nik gaffney avatar Víðópnir avatar  avatar Nick Nunes avatar Chris Prather avatar Dane Summers avatar Scott Elcomb avatar Aaron Mayzes avatar  avatar Travis avatar  avatar Michael Springer avatar Karim avatar Charlie Harrington avatar Cristóbal Valenzuela avatar Joel Kirchartz avatar Allison Parrish avatar Paul Thompson avatar John Ohno avatar

Watchers

James Cloos avatar Aaron Mayzes avatar  avatar L Tantivy avatar  avatar

plottoxml's Issues

Add markup to pronouns

As a part of #1, it will be helpful to identify and dereference pronouns in the Plotto text, to assist in modifying character sexes.

Timeless Plotto

The Plotto text, as received, is very much a product of its time. Although most of the conflicts and situations described are timeless, there is also a fair share of trick bicycle riders, proud old Southern families impoverished in fortune, and 1920's-style racism and sexism. It would be a boon to anyone desiring to use it to have a more anodyne edition that can be applied to any time or setting.

License file

Could you add a LICENSE file in the repo to clarify under what terms people can re-use it?
Looking forward to be able to leverage it. Thanks!

Transpositions are indistinguishable from transforms

There are two kinds of characters transformations in lead-ons/ carry-ons in Plotto.
You can find both kinds on the lead-ons of clause 1310.
One is of the form "647 ch A-5 to A", where character A-5 on 647 is switched with A. (A-5 > A)
The other kind, as in the last lead-on, is of the form "818a tr A & A-4" where character A is transposed with character A-4, that is, A is switched with A-4 and A-4 is switched with A. (A-4 <> A)
On the Plotto XML both are tagged the same. That is, the latter contains only
<transform from="A" to="A-4"></transform>
for the transformation.

As I see it, either the transpositions should have a special tag, such as
<transpose between="A" and="A-4"></transpose>
OR
two tags should be used to reflect the bidirectionality

<transform from="A" to="A-4"></transform>
<transform from="A-4" to="A"></transform>

(Otherwise great encoding!)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.