teic / roma-antiqua Goto Github PK
View Code? Open in Web Editor NEWThis repository houses the code for Roma Antiqua, the web based TEI software for generating customisations.
Home Page: https://romaantiqua.tei-c.org
This repository houses the code for Roma Antiqua, the web based TEI software for generating customisations.
Home Page: https://romaantiqua.tei-c.org
The other formats work fine though, including rng.
relocating from TEIC/TEI#1213
When an attribute has a specific default value in the ODD source, and the user attempts to change the value list for it using web roma, the form does not display the existing default value. Consequently, the user has no way of knowing that it exists, and may easily supply a list of attribute values which do not include it, thus generating an invalid DTD or XSD schema. Tested this with which retains the default "simple" even though it does not appear on the screen.
Original comment by: @lb42
The Roma web site reports being at version 4.18.
It uses P5 3.0.0 to generate the schema.
The saved schema contains this:
att.pointing.attribute.target =
## specifies the destination of the reference by supplying one or more URI References
attribute target {
list { empty }
}?
The definition should be:
att.pointing.attribute.target =
## specifies the destination of the reference by supplying one or more URI References
attribute target {
list { data.pointer+ }
}?
The end result of the issue above is that @target
on tags like ptr
cannot contain anything anymore. I discovered the issue when I regenerated a few hours ago with the command line Roma a customization I've been using for years without problem. All of a sudden all my ptr
elements turned up invalid.
I don't know of a way to force the web Roma to use an older version of P5 but if I force my command line Roma to use version 2.9.1 of P5, and run in on the customization described above after saving it locally, then I get the expected results. And if I run it with P5 3.0.0, I can reproduce the bad results.
some resources are being delivered over http, but the site starts as https, so modern browsers won't allow the download.
The description for this template includes the comment "This allows you to validate TEI documents before XInclude processing. In general, this is not the right way to work, since you would normally validate after any inclusions have been resolved. "
If it's not the right way to work it probably shouldn't be being offered as a template.
see also appended discussion on TEI-L
On 10/12/15 10:56, Piotr Banski wrote:
Maybe that ODD should best move from Roma's menu to the wiki, because it has the potential to confuse or at least to suggest that injecting Xincludes into the TEI schema is the natural, or worse, the recommended way to go.
Best,
P.On December 10, 2015 11:50:21 AM CET, Lou Burnard wrote:
Sorry, this makes no sense to me. If the document you want to validate contains xInclude statements in the place of mandatory elements, it can ONLY be validated against a TEDI schema by expanding the xInclude statements. Otherwise you would have to redefine the content model of the header entirely to permit unexpanded xInclude elements everywhere, which would make it no longer TEI conformant. On 10/12/15 10:34, Andreas Wagner wrote: Dear Piotr, dear list, * Piotr Bański dixit [2015-12-10 09:53]: The fundamental question is whether anything hinges on your _not_ resolving the XIncludes prior to validation. Yes, indeed. I explicitly wanted to do it *without* oXygen doing the XInclude resolution, but funnily I can't remember why. For now I am doing it the way you suggested. Thank you for the suggestion. Just for the record, if it turns out I really want to do it without XInclude resolution after all, and want to validate the *including* TEI document (which contains XInclude statements instead of mandatory elements such as publicationStmt), I would have to take the ODD route, wouldn't I? And how would I go about this?
relocating from TEIC/TEI#972
Using current version of Roma, if I rename an element from its page (e.g., http://www.tei-c.org/Roma/startroma.php?mode=changeElement&element=abbr&module=core\), an empty ns= attribute is added to the , thus generating a schema that has the element in question not only with a new local name (desired) but in no namespace (very bad).
This does not happen if I rename the element from the module tab (e.g., http://www.tei-c.org/Roma/startroma.php?mode=changeModule&module=core\)
So, to generate this problem:
<elementSpec module="core" ident="abbr" mode="change" ns="">
<altIdent>abbreviation</altIdent>
</elementSpec>
tei_abbr = element abbreviation {
where it should have
tei_abbr = element ns1:abbreviation {
Original comment by: @sydb
Per Roma (Roma2, at least) fails to generate Schematron properly:
Roma still gives users the opportunity to download “Schematron” as opposed to “ISO Schematron”. But we have not supported Schematron 1.x for years; the Schematron 1.5 extracted from the Guidelines by Roma is an empty file. (Well, it has an sch:title, but no rules.)
The Roma Repository should be renamed since it stores Roma Antiqua, not RomaJS. (The latter does not need to be renamed IMHO.)
Also there should be a deprecation note placed in the Readme.md file.
The template roma/templates/main.tem includes this variable intended for expansion based on the config.php file:
{roma_date}
This provides the release date in the footer of every page. However, this does not work in the installation on tei-c.org (it gets replace with an empty string), so I've had to replace it with a hard-coded value. We need to test this to see if it's a problem only on tei-c.org for some reason, or if it's not, how to fix it.
relocating from TEIC/TEI#1170
Once set in Roma, it seems impossible to disable the setting of a list of values for an attribute.
Here are the steps to reproduce it :
I have tested this several times, it always happens. I haven't seen it reported before.
Original comment by: romainboistel
relocating from TEIC/TEI#957
If the Language tab lets you choose the language of the documentation, what does the language option on the Customize tab do? The latter should be made clearer in the interface.
Original comment by: @kshawkin
(Since the issue tracker here has not been turned off, I'm assuming that posting issues here rather than Sourceforge is acceptable.)
A file which contains this error message:
pl.psnc.dl.ege.exception.ConverterException: Base URI {} is not an absolute URI at pl.psnc.dl.ege.tei.TEIConverter.convert(TEIConverter.java:171) at pl.psnc.dl.ege.component.NamedConverter.convert(NamedConverter.java:44) at pl.psnc.dl.ege.ConversionPerformer.run(ConversionPerformer.java:44) at java.lang.Thread.run(Thread.java:619)
No error. Documentation of the schema.
This is Roma version 4.15, last updated 2013-01-11. Using TEI P5 version 2.5.0
Download the ODD.
Issue:
$ teitohtml --odd myTEI_doc.xml myTEI_doc.html
I am working on an ODD document for a set of three interrelated customizations of TEI. They are defined in a single ODD document because they share a good deal of material; having them in three separate ODD documents would be a maintenance disaster.
The Roma interface appears to exhibit two flaws when presented with such a document.
First, I haven't been able to locate any mechanism for specifying which schemaSpec element to process. (Perhaps I just haven't looked in the right place.)
Second, the lists of modules and extension elements it provides appear to be based on the assumption that every elementSpec in the document with mode="add" is to be added to the schema being generated, whether it's in a specGrp reachable by specGrpRef pointers from the root schemaSpec or not. (I have a schema fragment showing an imaginable initial declaration for a couple of elements which is not actually referred to from anywhere else, and then the real declarations later, following a discussion of where the initial declarations fall short of requirements. Roma shows multiple extensions using the same name.
The ODD in question is on the open web at http://uyghur.ittc.ku.edu/2018/05/atmo-schemas-PTS.xml
If I add (by hand) an xml comment to the values of a closed list I cannot change the the possible values any more due to the following error.
Fatal error: Uncaught Error: Call to undefined method DOMComment::getAttribute() in /var/www/tei-roma/roma/romadom.php:845 Stack trace: #0 /var/www/tei-roma/roma/romadom.php(736): romaDom->getAttributeValList('type', '', 'tei', 'att.typed', Array, NULL) #1 /var/www/tei-roma/roma/roma.php(1055): romaDom->getAttributeDefinition('type', '', 'tei', 'att.typed', Object(DOMDocument)) #2 /var/www/tei-roma/roma/roma.php(344): roma->processAddAttribute(NULL) #3 /var/www/tei-roma/startroma.php(33): roma->run() #4 {main} thrown in /var/www/tei-roma/roma/romadom.php on line 845
This can be forced with the following minimalistic example of adding two possible attribute values to @type (att.typed) and a comment afterwards.
<classSpec ident="att.typed" type="atts" mode="change" module="tei">
<attList>
<attDef ident="type" mode="change">
<valList type="closed" mode="replace">
<valItem ident="typeA"/>
<valItem ident="typeB"/><!-- my comment -->
</valList>
</attDef>
</attList>
</classSpec>
See tei_all(comment).zip for the complete source code.
It looks like Roma is iterating also over comment nodes and not only xml elements.
relocating from TEIC/TEI#838
Roma seems to be adding namespaces to <exemplum>
s, e.g.
<val>20 × 30 mm</val>
becomes
<val xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:ns182="http://www.tei-c.org/ns/1.0">20 × 30 mm</val>
I've tried this with my own ODD and some of the templates, with the same result.
relocating from TEIC/TEI#845
As per
http://listserv.brown.edu/archives/cgi-bin/wa?A2=ind1003&L=TEI-L&T=0&O=D&P=162
and
http://listserv.brown.edu/archives/cgi-bin/wa?A2=ind1003&L=TEI-L&D=0&O=D&T=0&P=288
Roma exits with a fatal error when processing an ODD where contains unexpected text nodes (i.e., whitespace) instead of just s.
Possible solutions might involve the use of getElementsByTagName('valItem') or
if ($oChild->nodeName=='valItem') { ... }
(I am new to both Github and the TEI so please excuse any faux pas from my side.)
The Roma web site reports being at version 4.18.
It uses P5 3.0.0 to generate the schema.
shouldwork.zip
The page shows that the schema is broken.
The schema generated from the customisation file should pass the sanity checker's tests.
Kind regards,
Gideon
The screen "Change Element/Defining a new element" displays a list of model and attribute classes for a given element, with check boxes pre-selected to show its memberships. For classes with names in the form model.x.y, the class model.x and the class model.x.y are both pre-selected for elements which are a member of model.x.y : see for example <argument>, <abbr> or <docAuthor> . This causes problems if the user tries to make any other change in class membership, since the <classes> element generated for their ODD will contain erroneous <memberOf> elements. The error shows up as a "Unique particle attribution error" when XSD or DTD is generated.
[tx to jonathan greenberg for reporting this: see discussion on TEI-L on 2016-02-01
Per Roma (Roma2, at least) fails to generate Schematron properly:
Roma does not list tei_customization under “Use or modify an existing TEI-defined customization” (or under “Create a new customization starting from a template”, but it is not a template).
The constructor of the main roma class silently fails if the expected customizations are not installed in the (hardcoded) directory file:///usr/share/xml/tei/custom/odd. I would have either expected the Debian package to be dependent on the tei-p5-exemplars package (which contains the required customizations) or the Roma web application to signal an error or warning on startup.
I would like to define a new attribute within a custom namespace in the global responsibility class (e.g. @my:respStatus). When I try this through Roma, the schema output (RNG) returns an error ("undefined prefix"). Is adding an attribute in own namespace allowed/intended at all, or should new attributes be defined in another way?
Hi,
the dialog for selecting modules on https://roma2.tei-c.org/startroma.php?mode=main is broken.
No matter what schema I start with (e.g. the minimal one), when going to the modules dialog, the website shows some PHP errors.
Regards
Chris
relocating from TEIC/TEI#835.
I've noticed that in the following example, Roma reads manuscript folios as the description for the attribute as a whole, rather than using the default TEI :
<classSpec ident="att.dimensions" mode="change" module="tei" type="atts">
<attList>
<attDef ident="unit" mode="change">
<valList mode="replace" type="closed">
<valItem ident="folios">
<desc>manuscript folios</desc>
</valItem>
<valItem ident="lines">
<desc>lines of text</desc>
</valItem>
<valItem ident="words">
<desc>words of text</desc>
</valItem>
<valItem ident="chars">
<desc>characters of text</desc>
</valItem>
<valItem ident="mm">
<desc>millimetres</desc>
</valItem>
</valList>
</attDef>
</attList>
<classSpec>
Hello,
I have a few issues with the Roma's sanity check (http://www.tei-c.org/Roma/). I get errors most of the times, even by sanity-checking standard schemas. For example, only by selecting 'TEI absolutely bare' and then clicking on 'sanity check' I get:
Schema is BROKEN !
p cannot be used
list cannot be used
item cannot be used
label cannot be used
head cannot be used
author cannot be used
title cannot be used
teiHeader cannot be used
fileDesc cannot be used
titleStmt cannot be used
publicationStmt cannot be used
sourceDesc cannot be used
TEI cannot be used
text cannot be used
body cannot be used
div cannot be used
front cannot be used
back cannot be used
Elements you can use:
Model classes you can use:
And this without changing anything. Could you please advise?
Thanks and congratulations for the hard work!
relocating from TEIC/TEI#956
Here's how you can reproduce the error:
<div type="section" xml:id="intro">
<head>Introduction</head>
<p><ref target="http://www.tei-c.org/Roma/">Roma web tool</ref>, can generate these. This
document specifies how TEI Tite should be applied. Its organizing model is roughly the
where all the text before
<ref target="http://www.tei-c.org/Roma/">Roma web tool</ref>
is lost. This doesn't happen if you don't click Save in step 2.
I have received a few error messages from the current version of ROMA. As far as I can remember, this has not happened last Monday.
"Modules" offers this:
Warning: file(http://xquery4roma:8080/Query/modules.xql?lang=en): failed to open stream: HTTP request failed! HTTP/1.1 503 Service Unavailable in /var/www/tei-roma/roma/roma.php on line 597
Warning: join(): Invalid arguments passed in /var/www/tei-roma/roma/roma.php on line 597
Warning: DOMDocument::loadXML(): Empty string supplied as input in /var/www/tei-roma/roma/roma.php on line 597
Fatal error: Uncaught TypeError: Argument 1 passed to DOMDocument::importNode() must be an instance of DOMNode, null given in /var/www/tei-roma/roma/roma.php:598 Stack trace: #0 /var/www/tei-roma/roma/roma.php(598): DOMDocument->importNode(NULL, true) #1 /var/www/tei-roma/roma/roma.php(655): roma->getListDom('http://xquery4r...', Object(DOMDocument)) #2 /var/www/tei-roma/roma/roma.php(530): roma->processMain(NULL) #3 /var/www/tei-roma/startroma.php(33): roma->run() #4 {main} thrown in /var/www/tei-roma/roma/roma.php on line 598
"Add elements" complains this way:
Warning: file(http://xquery4roma:8080/Query/classes.xql?lang=en): failed to open stream: HTTP request failed! HTTP/1.1 503 Service Unavailable in /var/www/tei-roma/roma/roma.php on line 763
Warning: join(): Invalid arguments passed in /var/www/tei-roma/roma/roma.php on line 763
Warning: DOMDocument::loadXML(): Empty string supplied as input in /var/www/tei-roma/roma/roma.php on line 763
Warning: file(http://xquery4roma:8080/Query/attclasses.xql?lang=en): failed to open stream: HTTP request failed! HTTP/1.1 503 Service Unavailable in /var/www/tei-roma/roma/roma.php on line 769
Warning: join(): Invalid arguments passed in /var/www/tei-roma/roma/roma.php on line 769
Warning: DOMDocument::loadXML(): Empty string supplied as input in /var/www/tei-roma/roma/roma.php on line 769
Warning: file(http://xquery4roma:8080/Query/datatypes.xql): failed to open stream: HTTP request failed! HTTP/1.1 503 Service Unavailable in /var/www/tei-roma/roma/roma.php on line 774
Warning: join(): Invalid arguments passed in /var/www/tei-roma/roma/roma.php on line 774
Warning: DOMDocument::loadXML(): Empty string supplied as input in /var/www/tei-roma/roma/roma.php on line 774
Warning: file(http://xquery4roma:8080/Query/macros.xql): failed to open stream: HTTP request failed! HTTP/1.1 503 Service Unavailable in /var/www/tei-roma/roma/roma.php on line 778
Warning: join(): Invalid arguments passed in /var/www/tei-roma/roma/roma.php on line 778
Warning: DOMDocument::loadXML(): Empty string supplied as input in /var/www/tei-roma/roma/roma.php on line 778
Fatal error: Uncaught TypeError: Argument 1 passed to DOMDocument::importNode() must be an instance of DOMNode, null given in /var/www/tei-roma/roma/roma.php:788 Stack trace: #0 /var/www/tei-roma/roma/roma.php(788): DOMDocument->importNode(NULL, true) #1 /var/www/tei-roma/roma/roma.php(1120): roma->processAddElements(NULL) #2 /var/www/tei-roma/roma/roma.php(323): roma->processListAddedElements(NULL) #3 /var/www/tei-roma/startroma.php(33): roma->run() #4 {main} thrown in /var/www/tei-roma/roma/roma.php on line 788
"Change classes":
Warning: file(http://xquery4roma:8080/Query/attclasses.xql?lang=en): failed to open stream: HTTP request failed! HTTP/1.1 503 Service Unavailable in /var/www/tei-roma/roma/roma.php on line 1196
Warning: join(): Invalid arguments passed in /var/www/tei-roma/roma/roma.php on line 1196
Warning: DOMDocument::loadXML(): Empty string supplied as input in /var/www/tei-roma/roma/roma.php on line 1196
Best,
Philipp
Relocating from https://sourceforge.net/p/tei/bugs/724/
When I input the following into the "Title" window in the "Customize" tab in Roma:
TEI Lite customization for Twardowski's "O czynnościach i wytworach"
and press "save", the part enclosed in quotes vanishes, so the saved XML only contains
<title>TEI Lite customization for Twardowski's </title>
I am trying to generate an RNC from my ODD (which I just did minutes before and it worked fine) and I get this error message.
/tmp/ee4ab230ec3efbcf069f6f53b1f3cbc3.tmp:2:6: fatal: The processing instruction target matching "[xX][mM][lL]" is not allowed.
Roma is objecting to an ODD file I have been submitting to it, with the error message
The processing instruction target matching "[xX][mM][lL]" is not allowed.
The only problem is that the ODD file in question has no content that violates the relevant rule of XML well-formedness: it has an XML declaration, some xml-stylesheet processing instructions, and some xml-model processing instructions, but no others.
At first I thought perhaps Roma was the victim of some obsolete infrastructure that didn't know about xml-model PIs, but removing all the processing instructions and the XML declaration failed to clear the error.
The ODD file I am trying to process is on the Web at http://uyghur.ittc.ku.edu/2018/05/atmo-schemas-PTS.xml
Hello there,
I have recently started my PhDin History and part of it is an Edition, which I wanted to make a digital edition. In doing so I started with setting up exist-db and I wanted to follow TEI.
I started digging and now I hit a dead end, when I wanted to specify my own ODD.( I assume tei_ms could work ....)
And now, without further ado:
when I attempt to open http://www.tei-c.org/Roma/
I get the following.
Is it me or is there sth. wrong?
Sorry this seems so basic, I am even unsure whether I should actually ask this: Am I missing something obvious?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.