W3C home > Mailing lists > Public > public-owl-wg@w3.org > March 2009

Re: Response to Andy Seaborne's comments on rdf:text

From: Jie Bao <baojie@cs.rpi.edu>
Date: Wed, 4 Mar 2009 22:15:27 -0500
Message-ID: <b6b357670903041915w6046264cg36ca05f64affba6b@mail.gmail.com>
To: "Seaborne, Andy" <andy.seaborne@hp.com>
Cc: Sandro Hawke <sandro@w3.org>, Axel Polleres <axel.polleres@deri.org>, Boris Motik <boris.motik@comlab.ox.ac.uk>, W3C OWL Working Group <public-owl-wg@w3.org>, "Reynolds, Dave Everett" <dave.reynolds@hp.com>, "public-rdf-text@w3.org" <public-rdf-text@w3.org>
Dear Andy Seaborne.

Thank you for your response. I incorporated them in the wiki-version
of the rdf:text document. The version is at
* http://www.w3.org/2007/OWL/wiki/index.php?title=InternationalizedStringSpec&oldid=18720

The diff to the original document is:
* http://www.w3.org/2007/OWL/wiki/index.php?title=InternationalizedStringSpec&diff=18720&oldid=17905

I further made a few changes (details are given in the email) at
* http://www.w3.org/2007/OWL/wiki/index.php?title=InternationalizedStringSpec&oldid=18758

Those changes can be tracked at
* http://www.w3.org/2007/OWL/wiki/index.php?title=InternationalizedStringSpec&action=history

Please note this email only reflects my personal opinion. Itís not a
formal working group response.

Please let me know whether or not you are satisfied with this response
to your comment. Iím glad to have further discussions about any
remaining issues.

Regards

Jie

================

Several notes on the changes:

(1) Since there are several RDF serializations. The suggested sentence
(and current wiki wording):

"However, note that the RDF syntax and semantics remain unchanged and
that in an RDF/XML serialization such literals MUST be serialized
using the existing RDF/XML syntax for plain literals with language
tags [5]. "

may be changed to

"However, note that the RDF syntax and semantics remain unchanged and
that in an existing RDF serialization that has built-in support for
language tagging such literals MUST be serialized using the respective
existing RDF syntax for plain literals with language tags [5].

Note: These existing RDF serializations include, but not necessarily
limited to, RDF/XML, N-Triples, N3 and Turtle."

(2) Please note that, in 3.2, abbreviations are required, and always
required for rdf:text, but are not required for xs:string. This
corresponds to the point you raised that developers may wish not to
convert xs:string into plain literals. The original document implies
eager abbreviations to the both datatypes.

More discussion can be found inline.

On Mon, Jan 19, 2009 at 9:07 AM, Seaborne, Andy <andy.seaborne@hp.com> wrote:
>> -----Original Message-----
>> From: baojie@gmail.com [mailto:baojie@gmail.com] On Behalf Of Jie Bao
>> Sent: 14 January 2009 17:22
>> To: Seaborne, Andy
>> Cc: Sandro Hawke; Axel Polleres; Boris Motik; W3C OWL Working Group
>> Subject: Response to Andy Seaborne's comments on rdf:text
>>
>> Hi Andy
>>
>> Thank you for your comment [1] on rdf:text [2]. Here is some my
>> personal opinion on the issues you described. Other authors of the
>> document may have further comments.
>
> Noted - your message was not a formal working group response.
>
>>
>> Summary: In short, I believe your concern in mainly on the
>> compatibility between rdf:text and the current specifications
>> including RDF and SPARQL. I agree that rdf:text should not change the
>> current specifications, explicitly or implied, nor have an impact on
>> the behavior of existing tools that are designed to handle RDF. The
>> wording of rdf:text should be changed to make this position clear. On
>> the other hand, other syntaxes of OWL and RIF, without legacy issues,
>> should be required to use rdf:text.
>
> In discussions on public-rdf-text, it's clear that it was not the intention behind the rdf:text draft to change RDF.  Our issues stem from the fact that the text of the document, not the intent, can create visible change in RDF (as we jointly established in discussions there).
>
I wish the current wording conveys correctly for the intent.

>> ===========
>>
>> "Issue 1: systems that do understand rdf:text may represent
>> information in RDF in two different ways that other RDF systems not
>> upgraded to rdf:text will interpret in two different ways."
>>
>> I agree with your proposal that an RDF/XML implementation must
>> abbreviate "xyz@lang"^^rdf:text into "xyz"@lang. In fact, Sandro had
>> similar thoughts in a previous mail [3], which matches my belief so
>> well that I quote it below
>
> Just to be clear here [3] suggests using "SHOULD NOT"
> """
> rdf:text SHOULD NOT be used in
> any RDF syntax which has built-in support for language tagging
> """
> And in our suggestions, it is "MUST NOT".
>
The current writing implied "MUST NOT" for RDF/XML. My suggestion (1)
will extend it to other syntaxes as well.

> Our aim is that rdf:text does not appear in RDF serialized forms anywhere.  We can do this for the case of OWL/RIF system => RDF => OWL/RIF system, where the original data originates outside of RDF, with the changes we suggested.
>
Agreed.

> The other case of RDF=>OWL/RIF system=>RDF, where the original data is created in RDF, is more problematic and can only rely on the "SHOULD" provision of introducing new vocabulary into the RDF namespace.
>
I'm not clear on "introducing new vocabulary into the RDF namespace".
Do you mean rdf:text or another new vocabulary?

> A statement in the rdf:text document to stress that rdf:text SHOULD NOT be used in RDF data would be helpful.
>
Do you mean MUST NOT? I agree that it should be the case in existing
RDF syntaxes. However, we should not forbid the use of rdf:text in
other future RDF syntaxes that have no alternative language tagging
mechanism.

>>
>> "For simplicity of implementation, I think RDF serializations should
>> mandate use of one style of language tagging or the other.  In order to
>> handle legacy syntaxes which were created before rdf:text and so could
>> not pick, I think we should probably say rdf:text SHOULD NOT be used in
>> any RDF syntax which has built-in support for language tagging (in order
>> to avoid all the problems you name, below).
>>
>> That is, in RDF/XML, N-Triples, N3, and Turtle, one SHOULD NOT use
>> rdf:text.  (Happily, this aligns with rdf-syntax saying "Any other names
>> are not defined and SHOULD generate a warning when encountered, but
>> should otherwise behave normally.")  Meanwhile, the various RIF syntaxes
>> and the newer OWL syntaxes do not directly support language tagging, so
>> one has to use rdf:text.  Perhaps a Turtle 1.1 would remove type-a
>> language tagging and mandate rdf:text instead.  Similarly, APIs are free
>> to pick one or the other (or some other, equivalent) approach, but
>> should probably just provide one, and certainly not distinguish between
>> the two."
>
> We don't support the sentiment of that rdf:text is a replacement in RDF and that other forms are legacy. This has not been discussed in the full semantic web community.
>
I believe the use of "legacy" in this context is only informal. The
current rdf:text spec does not imply the deprecation of existing
language tagging mechanism in RDF.

> This could all be avoided if there were a direct mapping from "text"@lang to the value space, just using rdf:text as the URI for the datatype but not coupled to the lexical

Shouldn't the mapping be taken care of by the RDF specification? In
RDF Semantics (
http://www.w3.org/TR/2004/REC-rdf-mt-20040210/#gddenot), intepretation
of plain literal with languag tags are defined as:

   if E is a plain literal "aaa"@ttt in V then I(E) = <aaa, ttt>

There would not be a need in rdf:text to duplicate the definition.

>presentation.  In that case, there is no need for rdf:text in abstract syntax of RDF and the >special rules on interpretation of it's lexical form.
>
I don't think rdf:text is in the abstract syntax of RDF anyway. In OWL
2/RIF abstract syntax, it would be useful to have rdf:text as a
datatype in the lexical definition, since there are new syntaxes for
them (e.g., the Manchester Syntax) which may not have existing
language tagging support.

>>
>> Thus, I propose to
>> * make the two changes you suggested for this issue
>
> Thank you.
>
>> * add the following text to the end of the 1st paragraph of section 3.
>>
>> <A language syntax that does not directly support language tagging by
>> RDF's plain literal with language tags, including but not necessarily
>> limited to other OWL and RIF syntaxes, MUST use rdf:text as the
>> datatype for internationalized strings>
>
> We do not agree with this.  It is speculation on what some future language goals might be or what the experience with rdf:text will be.  We also note that language tags in RDF come form the use of xml:lang in XML so this text would need to apply to XML syntaxes as well.
>
I agree that  it maybe premature to add such a sentence.

>
> By the way:
> I don't know if anyone else has pointed this out but internationalized text in RDF includes XML literals.  Language tags are only part of the picture and incomplete (for bidi text).
>
Thanks for bringing this up. In addition to "Some text@en"^^rdf:text
(case 1) and "Some text"@en (case 2), there are at least two other
ways in RDF/XML saying:

case 3:
 <rdfs:label xml:lang="en">Some text</rdfs:label>

case 4:
 <rdfs:label rdf:parseType="Literal">
   <span xml:lang="en">Some text</span>
 </rdfs:label>

XML literals are (informally) "more expressive" in handling
internationalized string. For example, it is possible to have nested
statements about language membership, e.g.,:

<rdfs:label rdf:parseType="Literal">
   <span xml:lang="en">Some text <span xml:lang="la">et cetera</span></span>
</rdfs:label>

I agree language tags, and the rdf:text effort as it is for now, do
not cover such usage situations. Maybe a note should be added to
remind readers the alternative XML literal approach.

However, in some situations, it may be possible to allow the
equivalence between rdf:text and XML literals. One may follow the
example in RDF on optional equivalence treatment of xsd:string and
rdf:XMLLiteral:

"Note: RDF applications may use additional equivalence relations, such
as that which relates an xsd:string  with an rdf:XMLLiteral
corresponding to a single text node of the same string."
(http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/#section-XMLLiteral)
Similarly, an application may use equivalence relations among case 1-4.

I added an editor's note at the end of section 3.2

For reference purpose:
* XML Language Identification, http://www.w3.org/TR/REC-xml/#sec-lang-tag

>> =================
>>
>> "Issue 2: The treatment of xs:string is at odds with the current RDF
>> specifications."
>>
>> I agree that in RDF the equivalence of "xyz" and "xyz"^^xs:string is
>> semantically, but syntactical. Thus, the abbreviation suggested in the
>> rdf:text spec should not imply that it introduces this change to the
>> RDF syntax spec.
>
> Agreed - the way to avoid a change is to have only one way of abbreviating "text"^^rdf:text.  If there are two, then observations without the entailments from XSD1a and XSD1b will see a difference.
>
>> In stead, in addition to your suggestions, we can add
>> a note in 3.2 saying that
>>
>> <Note: the abbreviation of a literal of datatype xs:string is a
>> consequence of the semantic equivalence of the abbreviated and
>> original forms of the literal, as described by the RDF semantics [RDF
>> Semantics]. >
>
> I don't understand the meaning here - abbreviation is the process of transforming literals of datatype rdf:text isn't it?

In 3.2 two abbreviations are mentioned, rdf:text => languag tagged
plain literal, and xs:string => plain literal with no language tag.
The note above refers to the xs:string => plain abbreviation.

Since, the equivalence of "text"^^xs:string and "text" can be
semantically followed from RDF entailment rules xsd 1a and xsd 1a
(http://www.w3.org/TR/2004/REC-rdf-mt-20040210/#DtypeRules), I believe
in rdf:text there is no need to specify this abbreviation. A note
would be sufficient.

My suggestions are :

a) Remove "Furthermore, literals of the form "text"^^xs:string can be
abbreviated as "text""

b) Add: "Note: Literals of the form "text"^^xs:string are semantically
equivalent to plain literals of the form "text",  as described by the
RDF semantics [RDF  Semantics]. Such equivalence may be used to
abbreviate xs:string literals.

c) Remove "abbreviatedXSDStringLiteral" from the abbreviation grammar
in Section 3.2.


>I assume in OWL that no literals of datatype xs:string would be present as they have a rdf:text form.  Or can there be two representations?

Since all OWL reasoners are required to support the xsd:string
datatype (http://www.w3.org/TR/owl-guide/#Datatypes1), OWL 2 should
continue this support for back compatibility. It would be possible for
an OWL 2 ontology to use both xs:string and rdf:text.

>
> Read without qualification, your text implies "text"^^xs:string be transformed to "text" which is observable in RDF.
>
Yes

> I have just noticed:
> Sec 3.2 : rdf:text doc:
> """
> form "text"^^xs:string can be abbreviated as "text".
> """
> From
> [[
> This specification defines a convenient representation for rdf:text and xs:string literals. In particular, literals of the form "text@lang"^^rdf:text where "lang" is not empty can be abbreviated as "text"@lang; furthermore, literals of the form "text"^^xs:string can be abbreviated as "text".
> ]]
>
> Is this a typo?
>
> From context, having just mentioned literals of form "text@lang"^^rdf:text, and lang not empty, did you mean "text@"^^rdf:text where lang is empty i.e. pairs ("text" , "" ).   Otherwise the text does not cover the ("text" , "" ) case.
>
You are right, the sentence "In particular, literals of the form
"text@lang"^^rdf:text where "lang" is not empty can be abbreviated as
"text"@lang" can be extended with:

and "text@"^^rdf:text, i.e., when the language tag is empty, can be
abbreviated as "text".

> "text"^^xs:string  and "text" are not interchange in RDF.   Feedback to us is that application developers editing data expect their original form to be preserved, not converted from xs:string to plain literal or vice versa, even if semantically equivalent.
>
This concern is addressed in the new wiki version, in which the
abbreviation of xs:string literals is optional.

> (Personal note: the interactions of plain literals without language tag and literals of datatype xs:string have been a source of confusion to real applications and their developers - my experience is that the design in the RDF specs is less than ideal but it is something we have to work with especially given the significant amount of deployed RDF applications.)
>
>>
>> Please let me know if the suggested changes sufficiently address your
>> concerns. I'm happy to further exchange ideas with you, and thank
>> again for your constructive comments.
>
> We believe our changes are sufficient.  The additional text you suggest goes beyond that and we will review it - maybe that would be better in context of the next revision of the document.
>
> If it would be helpful and you would like us to look at an unpublished draft, maybe as it is finalized on the wiki, then do let us know when it is in a suitable state to review.
>
Please review the current wiki version with url given at the beginning
of the email.

>        Andy
>
>>
>> [1] http://lists.w3.org/Archives/Public/public-owl-
>> comments/2009Jan/0001.html
>> [2] http://www.w3.org/TR/2008/WD-rdf-text-20081202/
>> [3] http://lists.w3.org/Archives/Public/public-rdf-
>> text/2008OctDec/0028.html
>>
>> --
>> Jie
>> http://www.cs.rpi.edu/~baojie
>



-- 
Jie
http://www.cs.rpi.edu/~baojie
Received on Thursday, 5 March 2009 03:16:13 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Thursday, 5 March 2009 03:16:14 GMT