Dear Dominique,
Am 30.07.2016 um 21:33 schrieb Dominique Mee ùs:
> On Fri, 29 Jul 2016 16:18:54 +0200, Martina Gödel <[log in to unmask]> wrote:
>> …
>> the reason why we are interested in avoiding redundancy is our workflow:
>> Our editors are creating the files and will be modifying them. They
>> would have to double the <monogr> information for each of the articles
>> included in one book. Or, in case of a correction, they would have to do
>> the correction in up to 15/20 files.
>> …
>> That's why we are using XInclude; therefore our biblStruct-files are
>> always valid and complete.
> Do not consider XInclude as a substitute for relational database inside a TEI file. XInclude is only a way to cut a TEI (or other XML file), considered as a whole, in shorter pieces easier to edit. (I use it most
of the time: editing divs apart as “XInclusions”.) Suppose the same book
appears 15 times as you say. It would be interesting (to say the less)
to give that book an xml:id. After the “XInclusions” are resolved in the
final TEI, you get a TEI XML with 15 times the same xml:id. It may look
valid TEI but it is not even valid XML.

You're right, that is a problem.
But maybe we can distinguish between two states of our files:
Either they are still work in progress or we want to publish our results.
1. work in progress: our editors work with files, that contain
unresolved <xi:include> elements. The external content is displayed, but
not yet resolved. While validation the external content is taken into
account (so we have valid <biblStruct> files for the moment).
2. publishing the results: After the work of the editors is done, the
<xi:include> elements are resolved (replaced by the <monogr> of the
book). We add a conversion step that enriches the xml:id of the <monogr>
(that was resolved) to make it unique. All files for publication (HTML,
maybe bibTeX and so on) will be based on this. For presentation
repetition of content is not a concern for us. And the content was
derived from a single verified source.

Couldn't this be a solution?

I am very much interested in your problem: no redundancy in bibliography
(not only for books or journals, the same for authors), and I am eager
to learn more from this discussion, but XInclude is a “non semantic”
solution. Is there no way to introduce each book only once, and have
articles point to a book?

This is near to my opening question. I learned from the discussion here,
that there is no prepared way if you want to use <biblStruct>. Every
project has to find a work around, taking it's specific needs into account.

Regards, Martina