Re: ISSUE-137 (including XML includes)

Hi Jim, Bijan, Alan, Peter

Just like Jim, I understand both sides of the discussion, and I am not
sure I know the answer. In fact, I am not sure this is something this
group has to solve.

- First of all, in my view, using or not using XInclude with RDF/XML is
a no brainer. RDF/XML is an XML application, XInclude is a clearly
defined technology of the XML family, both are W3C Recommendations, ie,
using XInclude in RDF/XML is possible (whether RDF implementations
understand that or not is a different question). Just as it is possible
to add additional directives into an RDF/XML file and let it through,
say, an XSLT script before processing it into an RDF Graph. I am not
sure the OWL group has actually anything to say about this (apart from,
maybe, drawing attention to the fact of possibly using it in, say, the

- I agree with Alan, though, that the issue of other serializations is
of course real, too. Pushing this under carpet saying that there are no
other W3C standard serializations doesn't sound quite right for the
community. Other serializations are used in practice, whether they are
W3C recommendations or not. Turtle is the obvious example and, actually,
as Sandro pointed out, RIF will provide another possible serialization
of RDF, too.

Having said that, the question that comes to my mind is whether a more
general inclusion mechanism is something this group has to solve or not.
Indeed (and that is where I might be wrong), I am not sure this is an
OWL specific issue. What makes it so? Isn't it some sort of a more
general RDF or, rather, RDF syntactic issue of declaratively including
one graph into an other? If this is not OWL specific, than I am not sure
an owl:include would be the right way of doing it. Ie, This may be
either an issue of the individual _RDF_ serializations, or maybe a more
general issue to be taken up if an when a new RDF Core Working group
comes around. Not this group's.

If I am right, maybe this group will want to record this issue on the
RDF comment list ( which will have to be looked
at if and when a new RDF group comes along, but that is it...

- Jim, answering more directly your question: the XInclude text
explicitly says:

XInclude [...] specifies a media-type specific (XML into XML)
transformation. It defines a specific processing model for merging
information sets.  XInclude processing occurs at a low level, often by a
generic XInclude processor which makes the resulting information set
available to higher level applications.

Ie, I do not believe it is possible to (mis-)use XInclude via some
tricks to use non-XML syntax. The way I read XInclude is that the
inclusion would, conceptually, take place *before* the resulting XML
Infoset is transformed into an RDF Graph.

My 2 pence...



Jim Hendler wrote:
> Interestingly enough, I find myself agreeing with large parts of what
> both Alan and Bijan are saying, even though they are disagreeing -
> rather than replying point to point, let me see if I can express where I
> think the issue may lie
>  Bijan says, and I agree, that the RDF/XML syntax is the normative
> exchange syntax for OWL, that Xinclude is a standard and deployed,
> therefor putting Xinclude in the RDF/XML makes sense
>  Alan says, and I agree, that if we just put in Xinclude as an XML
> directive (i.e. qua XML as it were) then we have the problem that
> there's nothing in the "OWL" per se that makes it clear the inclusion
> happens (i.e. unlike owl:imports, where there's something that however
> you serialize, you must serialize).  He also pointed out earlier (or
> maybe I am just inferring it from what he said) that the Xinclude spec
> is not that easy to understand, so it would take some extra work to
> document
>  I'm not sure I see a solution, but my instinct is that if we worked at
> it we could find a solution where either the OWL ontology includes the
> XML within some declaration (so the graph itself woudl have some
> indication what is going on for other serializations to use) or that the
> XInclude definition could include an unparsed entity (or perhaps a
> notation or such) that the other serializations would be able to pick up on
>  Can one of you folks who really understand this stuff say whether
> either of those is possible?
>   -JH
> p.s. Seems to me this would be a perfect place for the macro facility
> that was discussed sometime back - this somehow became issue 140, which
> isn't quite the same, but maybe the solution to that and this are
> similar somehow?
> [1]
> On Sep 12, 2008, at 5:24 PM, Bijan Parsia wrote:
>> On Sep 12, 2008, at 9:37 PM, Alan Ruttenberg wrote:
>>> On Fri, Sep 12, 2008 at 4:07 PM, Bijan Parsia <>
>>> wrote:
>>>> On Sep 12, 2008, at 8:57 PM, Alan Ruttenberg wrote:
>>>>> An inclusion directive could be
>>>>> expressed as an RDF triple, and the OWL documentation could specify
>>>>> how it should be interpreted (i.e. by including the triples resulting
>>>>> from parsing the included document).
>>>> Which is a change to the other serializations. They now have a
>>>> triple that
>>>> they have to interpret specially. Not just at the reasoner level,
>>>> but at the
>>>> parsing level.
>>> No they don't. The inclusion directive would be interpreted by the OWL
>>> processor, not by the RDF parser.
>> Fair enough, although it introduces yet more syntax triples. We
>> already gave up some features for the sake of minimizing the
>> vocabulary. I would much prefer to have object and data properties
>> back if we intend to reopen that debate.
>> Introducing things at the RDF level has lots of ramifications
>> including on OWL Full.
>>>> Indeed, why should we impose a triple on them?
>>> It's their job to carry triples.
>> ? The point is that serializations may prefer not to treat this as a
>> triple level matter.
>>>> Turtle might prefer to add an @directive instead. N3 might prefer to
>>>> use their own builtin.
>>> I don't see how this affects what we need to do.
>> We don't *need* to do what you would like us to do, so in that sense,
>> we agree that my point doesn't affect what we *need* to do.
>> Other RDF serializations use non-triple constructs for various syntax
>> level features. Your approach precludes that.
>> But ok, I withdraw my incoherence charge. There is a design that, in
>> some sense, will work across all RDF serializations if we are willing
>> to impose more stuff at the RDF level. However, it's a design with
>> several inherent issues even before we get to the rest of the points I
>> raised.
>> Cheers,
>> Bijan.
> "If we knew what we were doing, it wouldn't be called research, would
> it?." - Albert Einstein
> Prof James Hendler      
> Tetherless World Constellation Chair
> Computer Science Dept
> Rensselaer Polytechnic Institute, Troy NY 12180


Ivan Herman, W3C Semantic Web Activity Lead
PGP Key:

Received on Sunday, 14 September 2008 09:16:53 UTC