Print

Print


In principle, the only components of an elementSpec which are modifiable 
(as opposed to replaceable) are those which have an identifier: which is 
why these are the only ones with a @mode attribute. There was, almost 
certainly, a very good reason for this, related to the way multiple 
specifications are combined during ODD processing, but unfortunately 
Sebastian's not here to explain it any more.

So, for example, if you want to change the <classes> of an element, you 
have to supply a complete new set of <memberOf> elements: you can't just 
modify the existing ones. If you want to add some new <exemplum>s, the 
old ones disappear. And yes, if you want to add a new <remark> the old 
ones are toast.

That's the way things are, and usually (I think) that's what most people 
want. If you're providing new examples, you probably don't want to see 
the old ones -- they probably use elements that aren't in your schema. 
If you're providing a new set of remarks, you're in principle rejecting 
the original ones. Where you are not doing so, cut and paste is your friend.

If you were able to "modify" the existing <remarks> etc. where would you 
expect your additions to come? At the start, or the end? Would you like 
to change every reference to foo to read tei:foo? Und so weiter.
And of course, you can have multiple <remarks> in different languages, 
so which ones are you modifying?

<remarks> is plural because it can provide more than one paragraph, i 
think.



On 22/07/16 16:13, Gioele Barabucci wrote:
> Hello,
>
> is there a way in ODD to *add* remarks to an element specification 
> without losing the original remarks from the base/original specification?
>
> The schema of a project I am working on is deviating a bit from the 
> standard TEI and I would like to document these deviations in a 
> systematic way. The best place to do this seems a `<remarks>` element 
> inside `<elementSpec>`.
>
> The problem I am facing is that when a `<remarks>` element is used in 
> a ODD file, the original remark of the element is replaced.
>
> A practical example: the `<add>` element. The `<add>` element in the 
> TEI has a nice note that I would like to preserve: «In a diplomatic 
> edition attempting to represent an original source, the <add> element 
> should not be used...». Now, if I add a `<remarks>` like this:
>
> ```
> <elementSpec ident="add" mode="change">
>     <remarks>
>         <p>We use add in a weird way.</p>
>     </remarks>
> </elementSpec>
> ```
>
> the text «We use add in a weird way.» will replace the original one in 
> the generated HTML. I was expecting two "Note" lines, I got only one. 
> Oops.
>
> My workaround is to copy and paste the source of the original remark 
> into my ODD. This feels wrong.
>
> A possible solution may be the addition of a `@mode` attribute with a 
> meaning similar to that of the *Spec elements, so that one could write:
>
> ```
> <remarks mode="add">
>     <p>We use add in a weird way.</p>
> </remarks>
> ```
>
> And get this remark _in addition_ (and not _instead of_) the original 
> remark.
>
> Or are there better alternatives that I have not found yet?
>
> Regards,
>
> PS: it is funny that a single "remark" goes in an element called 
> "remarks".
>