Git Product home page Git Product logo

corebuilder's Introduction

coreBuilder logo

coreBuilder

coreBuilder is a tool for creating XML stand-off markup, particularly tailored to TEI documents.

With this tool you can:

  • Set a custom set of stand-off elements, or choose from a pre-set list
  • Load XML files into text editors (upload, or from the web)
  • Click on elements with ids to build stand-off entries and add them to a downloadable "core" file
  • Create XPointer expressions by selecting text directly on the XML file

Check out the live app and read the wiki for more examples.

Building coreBuilder

build:passed

If you want to run your own instance of coreBuilder, you'll have to build the JavaScript code.

You'll need nodejs and Gulp. Once you have node, Gulp can be installed with:

npm i -g gulp

Then, to compile and run the code:

npm i
gulp

Develop

If you'd like to contribute, check out the issues. You can run a development server that watches and recompiles on the fly with:

gulp run

corebuilder's People

Contributors

raffazizzi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

corebuilder's Issues

syntax highlighting uploaded core

  • If a core is uploaded its entries are not syntax highlighted in the "Full Core" tab,
  • if a new entry is added with the coreBuilder the uploaded one will get syntaxhighlighting, but not the new one
  • it will get highlighted though when another entry is being deleted
  • Alternatively if a core is uploaded and new entries are being added the last entry will not be syntax highlighted

There is definitely some inconsistency here that needs further testing

coreEntry with long app

If an app grows longish the control entries for "Add", "Group", and "Cancel" might be outside the browser viewport.

Moreover as coreEntry doesn't allow scrolling one can not check the whole entry.

rdggrp doesn't mak it to full core

creating an entry with rdggrp elements and adding it to the full core strips the rdggrp elements and instead adds a flat app(rdg+) into the full core

N.B. uploading a core with rdggrp works perfectly fine

cancel entry doesn't reset groups

when creating an entry and not adding it to the full core but instead hitting "cancel" the created groups and their association to the sources will not be resetted;
either this should be done by default or a global "reset/clear groups" button should be available

semantic annotation of Drama Texts?

Dear Raffaele Viglianti,
I am currently looking at solutions allowing me to practice different semantic annotations on theatrical texts from the French 17th and 18th centuries, and I was wondering to what extent I could use coreBuilder for this.

To explain my needs, I'll start with a span of text, as it is actually encoded in XML/TEI:

ADMETEET ALCESTE,TRAGÉDIE.ACTE PREMIER.
Scene premiere. POLIDECTE, ADRASTE. POLIDECTE. Mon frere va périr. Voici le jour terrible Qu'il doit être frapé d'une main invisible. On the one hand, I would like to be able to markup the various internal stage directions that appear in the text; on the other hand, I'd like to mark-up the various references to the characters, and to their characteristics. In the above quoted text, I would have: Mon frere - this string of characters refers to a certain Admete, who is further characterised as being the brother of the person speaking (#FPB = "family position brother"; this traces back to a feature structure I've defined for encoding various aspects of a character - age, fmaily position, occupation, and so on. Values of ana can concatenate for marking-up strings carrying more than one kind of information, as it often happen) le jour terrible - this string refers to the moment when the action takes place, and is the internal stage direction equivalent of In this specific case, the two strings do not overlap, but this is not always the case, hence the need for stand-off annotation - not to mention the desire to maintain a certain readability of the text.

Having read your paper in JTEI about coreBuilder, I had a go to it with my text. From the various presets of stand-off elements, I've used "apparatus entry" and came up with something like this:




Now, if I understand correctly your wiki, it would be possible to customise the preset stand-off elements, and to have a set with and (instead of and ), and another set with and , the first for encoding characters, the second for encoding internal stage directions. But my problem is that I am quite limited in the values of attributes I can give to @ana, respectively @type - as I pointed to before, I have developed quite an elaborate set of values based on feature structure. Is the a way of going around this? More generally, does it make sense to use coreBuilder for my purposes?

Sorry for this long email/ issue, hope it may be of interest to you.

best regards,
Ioana Galleron

rdggrp instead of rdgGrp

rdggrp misses the tie typical camelScript. Although the namespace is not outputted the TEI-ishness is obvious to the informed reader and should conform to TEI tag-names

delete items from group

if selected elements get added to a group they are no longer available under the respective ace editor of the source, ergo they cannot be deleted from the app

alternatively a "remove form group" mechanism would be feasible or reflecting the grouping under the ace editor

Allow XPath expressions for attribute values

Custom attribute values can be somewhat parametrized by the user (e.g. with %filename). It would be useful to allow some basic XPath (e.g. //TEI/@xml:id) for something like wit="#TEIid".

Only XPath 1 can reasonably be implemented in JavaScript, however.

multiple groups

currently it is not possible to generate multiple rdgGrp elements in the app entry; but already in one of the first attempts with coreBuilder this seemed necessary

Downloaded core file empty

Donloading a core file from the core builder works but the xml file does not have the generated core entries as content but only:
<core>[object Object]</core>

browser: firefox

rdg/@wit

values are the filenames and id of parent div

is this due to missing xml:id in our TEI files or default?
Using xml:id (which we will add ASAP) seems more feasible
div xml:id doesn't seem necessary here

upload edit download core

Uploading a preexisting core, then adding a new entry raises some other problems (beisdes #8):

  • when downloading the core it will only contain the newly created app:s not the preexisting one- the preexisting entry will only result in a sting "undefined" as first child of

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.