W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > July 2003

Re: take 2: primer text for parseType="Literal"

From: Graham Klyne <gk@ninebynine.org>
Date: Fri, 25 Jul 2003 13:13:56 +0100
Message-Id: <5.1.0.14.2.20030725131254.00bae730@127.0.0.1>
To: Frank Manola <fmanola@mitre.org>
Cc: rdf core <w3c-rdfcore-wg@w3.org>

Frank,

I'm happy for you to make the call on all of these points.  I don't really 
understand the full C14N issues here, but your suggestion looks to me like 
an improvement.

#g
--

At 08:05 25/07/03 -0400, Frank Manola wrote:

>Graham Klyne wrote:
>
>>This looks good to me.  One tiny nit and one small comment:
>>Nit: The use of "third" in "using a third value of the rdf:parseType 
>>attribute" seemed a little odd to me.  Maybe just:  'using the attribute 
>>rdf:parseType="literal"'?
>
>
>This may look odd because you don't have the context.  Four paragraphs 
>before, in the prior section (on rdf:value), I describe "the second use" 
>of rdf:parseType, rdf:parseType="Resource".  Two sections before that, the 
>section on Collections introduces rdf:parseType (and notes that it has 
>multiple values), in the process of introducing the first use, 
>rdf:parseType="Collection".  Mentioning the third use was just to gently 
>point out that this was something the reader had seen variants of before.
>
>
>>Comment:  it might help to underscore somehow that using 
>>rdf:parseType="literal" doesn't require that the data contain markup.
>>This is implicit and clear to one who has followed this discussion, but 
>>I'm not sure how clear that would be to someone coming fresh to this text.
>>For example, may the sentence:
>>[[
>>The value of the property is a typed literal, whose datatype, 
>>rdf:XMLLiteral, is defined in [RDF-CONCEPTS] specifically to represent 
>>fragments of XML.
>>]]
>>might be:
>>[[
>>The value of the property is a typed literal, whose datatype, 
>>rdf:XMLLiteral, is defined in [RDF-CONCEPTS] specifically to represent 
>>fragments of XML, including character sequences that may or may not 
>>include XML markup.
>>]]
>
>
>I agree;  this is a useful clarification.
>
>On another issue, since we're clarifying things: in the text below, in 
>discussing exclusive canonicalization, the text says:
>
>"This causes declarations of used namspaces to be added to the fragment..."
>
>I wonder if this wouldn't be clearer if it said:
>
>"This causes declarations of *namespaces used in the fragment* to be added 
>to the fragment..."
>
>to distinguish namespaces used in the RDF/XML in general from those 
>explicitly used in the fragment.
>
>--Frank
>
>
>>--
>>At 15:05 24/07/03 -0400, Frank Manola wrote:
>>
>>>Based on Brian's last "take", I propose to put the following text in the 
>>>Primer for parseType="Literal".  The typed literal given for the value 
>>>of <dc:title> in the triple is that produced by the RDF Validation 
>>>Service, but someone may want to check this further anyway.
>>>
>>>4.5  XML Literals
>>>
>>>Sometimes the value of a property needs to be a fragment of XML, or text 
>>>that might contain XML markup.  For example, a publisher might maintain 
>>>RDF metadata that includes the titles of books and articles.
>>>While such titles are often just simple strings of characters, this is 
>>>not always the case.  For instance, the titles of books on mathematics 
>>>may contain mathematical formulas that could be represented using MathML 
>>>[MATHML]. Titles might also include markup for other reasons, such as 
>>>for Ruby annotations [RUBY], or for bidirectional rendering or special 
>>>glyph variants (see, e.g., [CHARMOD]).
>>>
>>>RDF/XML provides a special notation to make it easy to write literals of 
>>>this kind.  This is done using a third value of the rdf:parseType 
>>>attribute.  Giving an element the attribute rdf:parseType="Literal" 
>>>indicates that the contents of the element are to be interpreted as an 
>>>XML fragment.  Example 22 illustrates the use of rdf:parseType="Literal":
>>>
>>><?xml version="1.0"?>
>>><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>>>    xmlns:dc="http://purl.org/dc/elements/1.1/"
>>>    xml:base="http://www.example.com/books">
>>>
>>>   <rdf:Description rdf:ID="book12345">
>>>     <dc:title rdf:parseType="Literal">
>>>        <span xml:lang="en">
>>>          The <em>&lt;br /&gt;</em> Element Considered Harmful.
>>>        </span>
>>>     </dc:title>
>>>   </rdf:Description>
>>>
>>></rdf:RDF>
>>>
>>>The RDF/XML in Example 22 describes a graph containing one triple:
>>>
>>>ex:book12345 <dc:title> "&lt;span xml:lang="en"&gt; The &lt;em&gt;&lt;br 
>>>/&gt;&lt;/em&gt; Element Considered Harmful. &lt;/span&gt;"^^rdf:XMLLiteral .
>>>
>>>The rdf:parseType="Literal" attribute in the RDF/XML indicates that all 
>>>the XML within the <dc:title> element is an XML fragment that is the 
>>>value of the dc:title property.
>>>
>>>The value of the property is a typed literal, whose datatype, 
>>>rdf:XMLLiteral, is defined in [RDF-CONCEPTS] specifically to represent 
>>>fragments of XML.  The XML fragment is canonicalized according to the 
>>>XML Exclusive Canonicalization recommendation [XML-XC14N].  This causes 
>>>declarations of used namespaces to be added to the fragment, the 
>>>escaping of reserved characters such as '<', '>' and '&', and possibly, 
>>>the re-ordering of attributes.  Contextual attributes, such as xml:lang 
>>>and xml:base are not inherited from the RDF/XML document, and, if 
>>>required, must, as shown in the example, be explicitly specified in the 
>>>XML fragment.
>>>
>>>This example illustrates that care must be taken designing RDF data.
>>>It might appear at first glance that titles are simple strings best 
>>>represented as plain literals, and only later might it be discovered 
>>>that some titles contain markup.  In cases where the value of a property may
>>>sometimes contain markup and sometimes not, either 
>>>rdf:parseType="Literal" should be used throughout, or software must 
>>>handle both plain literals and rdf:XMLLiterals as values of this property.
>>>
>>>@@Informational References to be added:
>>>
>>>[RUBY] Ruby Annotations, Sawicki, M., Suignard, M., Ishikawa, M., Durst, 
>>>M., Texin, T., World Wide Web Consortium, 31 May 2001.  This version is 
>>>http://www.w3.org/TR/2001/REC-ruby-20010531/.  The latest version is 
>>>http://www.w3.org/TR/ruby/.
>>>
>>>[XML-XC14N] @@use citation in Syntax
>>>
>>>[CHARMOD]  @@use citation in Syntax
>>>
>>>[MATHML] Mathematical Markup Language (MathML) Version 2.0, Carlisle, 
>>>D., Ion, P., Miner, R., Poppelier, N. (Editors); Ausbrooks, R., Buswell, 
>>>S., Dalmas, S., Devitt, S., Diaz, A., Hunter, R., Smith, B., Soiffer, 
>>>N., Sutor, R., Watt, S. (Principal Authors), World Wide Web Consortium, 
>>>21 February 2001.  This version is 
>>>http://www.w3.org/TR/2001/REC-MathML2-20010221.  The latest version is 
>>>http://www.w3.org/TR/MathML2.
>>>
>>>
>>>
>>>
>>>--
>>>Frank Manola                   The MITRE Corporation
>>>202 Burlington Road, MS A345   Bedford, MA 01730-1420
>>>mailto:fmanola@mitre.org       voice: 781-271-8147   FAX: 781-271-875
>>
>>-------------------
>>Graham Klyne
>><GK@NineByNine.org>
>>PGP: 0FAA 69FF C083 000B A2E9  A131 01B9 1C7A DBCA CB5E
>
>
>--
>Frank Manola                   The MITRE Corporation
>202 Burlington Road, MS A345   Bedford, MA 01730-1420
>mailto:fmanola@mitre.org       voice: 781-271-8147   FAX: 781-271-875

-------------------
Graham Klyne
<GK@NineByNine.org>
PGP: 0FAA 69FF C083 000B A2E9  A131 01B9 1C7A DBCA CB5E
Received on Friday, 25 July 2003 08:45:21 EDT

This archive was generated by hypermail pre-2.1.9 : Wednesday, 3 September 2003 09:58:49 EDT