Well, let's say you want to express that some primary key is a composite
of several keys. You will necessarily end up with something like this:
This is partially imposed by the way XML works and to some point it is
simply common sense to create a solution in that way. And it is some
peace of valid hbm xml. Is it thefore protected by the hibernate
license, because it is part of the dtd? I believe not since this only
conveys that a composite consists of several parts. That's why I was
mentioning in my previous mail that there is no copyright on pure
definitions or interfaces. On the other hand, there are many things in
hbm xml that are very special in hibernate and not at all obvious or
common sense. I would guess that these parts would be considered worthy
Anyway, it is starting to get annoying ... ;-). My conclusion I draw out
of this is that it would make sense to define some basic DSL using XML
to describe relationships between entities. This DSL would be free in
the same way that UML is free.
So long, Oliver
Steve Ebersole wrote:
Its an interesting question as I have never really considered the
implications of the LGPL in terms of DTD. The DTD is in fact covered
under the terms of the LGPL as are all parts of Hibernate.
AFAIK, referencing the DTD in your XML document(s) should constitute
what the LGPL terms dynamic binding. As such, your application(s)
should be fine to use whatever licensing scheme you choose if the XML
doc(s) reference the *unmodified* Hibernate DTD. However, if you were
to modify the Hibernate DTD you would be creating a derivative work
under the language of the LGPL and your entire app/library would come
under the terms of the LGPL.
Again, this is *my understanding*. IANAL I am asking a lawyer skilled
in this area for confirmation...
Principal Software Engineer
JBoss, a division of Red Hat
On Sun, 2008-07-27 at 11:58 +0200, Oliver Plohmann wrote:
> Hi Emmanuel,
> thanks for your reply. I read through the hibernate license before
> posting to this newsgroup in order not to bother people unnecessarily.
> Problem is that it only talks about redistribution of code and code
> changes. It does not say anything about interface definitions like the
> XML definition in the hbm.xml files. If the hibernate XML interface
> definition were nothing but a pure interface ("serves only to connect
> systems") there would be no problem since interfaces used in that sense
> are not protected by copyright law (contain no intellecutal effort and
> are therefore not worthy of copyright protection). But these XML
> definitions expose some intellectual effort (e.g. how to map 1:n, m:n,
> ... relationships etc.) that goes beyond a bare interface only made to
> connect systems and therefore seems worthy of protection by copyright
> law. So the issue is tricky. I might have to invent my own mapping
> syntax just to be sure not to break some license statement ... But I'm
> still hoping for some somewhat official statement whether the hbm.xml
> sytax definition is part of the Hibernate license or not :-).
> Regards, Oliver Plohmann
> Emmanuel Bernard wrote:
>> Hibernate is LGPL 2.1.
>> Here is our public statement
>> As long as your code is compliant with the LGPL 2.1, you're fine.
>> Emmanuel Bernard
>> Hibernate Search in Action (http://is.gd/Dl1
>> On Jul 24, 2008, at 21:33, Oliver Plohmann wrote:
>>> I already posted this question to a hibernate forum but didn't
>>> receive any answer. That's why I saw no way round posting to this
>>> mailing list.
>>> I'm working on a mapping tool that maps Java objects to RFCs. This is
>>> somewhat similar to mapping Java objects to relational database
>>> tables (though much simpler). I therefore got the idea to use the
>>> hibernate hbm.xml mapping syntax for this Java-to-RFC mapping tool,
>>> because there is no point in re-inventing the wheel and many many
>>> people know hibernate and will therefore quickly feel at home when
>>> using this Java-to-RFC mapping tool if it uses the same mapping XML
>>> syntax as hibernate.
>>> My question is now whether also this hbm.xml mapping syntax is
>>> completely free and may be used for another purpose than hibernate
>>> itself or whether permission has to be granted by the authors of
>>> hibernate. I just want to be really sure before I start, because
>>> changing the mapping syntax in the middle of the race is a lot of work.
>>> Thanks in advance, Oliver Plohmann
>>> hibernate-dev mailing list