% diff -cw 19981008 19990105 *** 19981008 Thu Oct 8 17:55:02 1998 --- 19990105 Wed Jan 6 14:44:16 1999 *************** *** 1,8 **** Resource Description Framework (RDF) Model and Syntax Specification Resource Description Framework (RDF) Model and Syntax Specification + --- 15,21 ---- Web. RDF emphasizes facilities to enable automated processing of Web resources." dc:Publisher="World Wide Web Consortium" ! dc:Date="1999-01-05" dc:Format="text/html" dc:Type="technical specification" dc:Language="en"> *************** *** 25,30 **** --- 28,34 ---- + *************** *** 33,42 **** -

Visibility

-

W3C ! WD-rdf-syntax-19981008

  --- 37,44 ----

W3C ! PR-rdf-syntax-19990105

  *************** *** 44,62 ****

Resource Description Framework
(RDF) Model and Syntax Specification

!

W3C Working Draft 08 October 1998

! Status of this Document
This Version:
!
http://www.w3.org/1998/10/WD-rdf-syntax-19981008
Newest Version:
!
http://www.w3.org/TR/WD-rdf-syntax
Editors:
--- 46,64 ----

Resource Description Framework
(RDF) Model and Syntax Specification

!

W3C Proposed Recommendation 05 January 1999

! Status of this Document
This Version:
!
http://www.w3.org/TR/1999/PR-rdf-syntax-19990105
Newest Version:
!
http://www.w3.org/TR/PR-rdf-syntax
Editors:
*************** *** 67,116 **** World Wide Web Consortium
!

Document Status

!

Copyright © 1997,1998 ! W3C (MIT, INRIA, Keio ! ), All Rights Reserved. W3C liability, ! trademark, ! document ! use and software licensing rules apply.

Status of This Document

!

This document is a revision of the ! public working draft ! dated 1998-08-19 incorporating suggestions ! received ! in review comments and further deliberations of the W3C RDF Model ! and Syntax Working Group. With the publication of this draft, the RDF ! Model and Syntax Specification enters "last call." The last call ! period will end on October 23, 1998.

! !

Comments on this specification may be sent to ! www-rdf-comments@w3.org. The archive of public comments is available at ! http://www.w3.org/Archives/Public/www-rdf-comments.

! !

Significant changes from the previous draft are highlighted in ! Appendix E.

!

While we do not anticipate substantial changes, we still caution ! that further changes are possible. Therefore while we encourage ! active implementation to test this specification we also recommend that ! only software that can be easily field-upgraded be implemented to this ! specification at this time.

! !

This is ! a W3C Working Draft for review by W3C members and other interested ! parties. Publication as a working draft does not imply endorsement ! by the W3C membership. The RDF Model and Syntax Working Group will not allow ! early implementation to constrain their ability to make changes to ! this specification prior to final release. This is a draft document and may be updated, replaced or obsoleted by other documents at any ! time. It is inappropriate to cite W3C Working Drafts as other than "work in progress".

This work is part of the W3C Metadata --- 69,116 ---- World Wide Web Consortium

!

Document Status

!

Copyright © 1997,1998,1999 ! W3C (MIT, INRIA, Keio ! ), All Rights Reserved. W3C liability, ! trademark, ! document ! use and software licensing rules apply.

Status of This Document

!

This document is a ! Proposed Recommendation of the ! World Wide Web Consortium. Review comments ! on this specification should be sent by 2359Z February 3, 1999 to ! <www-rdf-comments@w3.org>. The archive of public comments is available at ! http://w3.org/Archives/Public/www-rdf-comments. ! W3C Members may send their formal comments, visible only to W3C staff, to ! <w3c-rdf-ballot@w3.org>.

! ! !

This specification is a revision of the ! public working draft ! dated 1998-10-08 incorporating suggestions received in ! ! review comments. ! Significant changes from the public working draft are highlighted in ! Appendix E. ! The detailed differences ! are available for reviewers to compare.

! !

The Working Group anticipates no further substantial changes to ! this specification. We encourage active implementation to test this ! specification during the Proposed Recommendation review period.

!

Publication as a Proposed Recommendation does not imply endorsement ! by the W3C membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any ! time. It is inappropriate to cite W3C Drafts as other than "work in progress".

This work is part of the W3C Metadata *************** *** 161,172 ****

The World Wide Web was originally built for human consumption, and although everything on it is machine-readable, this data is not machine-understandable. It is very hard to automate ! anything on the web, and because of the volume of information the web contains, it is not possible to manage it manually. The solution proposed here is ! to use metadata to describe the data contained on the web. Metadata is "data about data" (for example, a library catalog is metadata, since it describes publications) or specifically in the context of this ! specification "data describing web resources". The distinction between "data" and "metadata" is not an absolute one; it is a distinction created primarily by a particular application, and many times the same resource will be interpreted in both ways simultaneously. --- 161,172 ----

The World Wide Web was originally built for human consumption, and although everything on it is machine-readable, this data is not machine-understandable. It is very hard to automate ! anything on the Web, and because of the volume of information the Web contains, it is not possible to manage it manually. The solution proposed here is ! to use metadata to describe the data contained on the Web. Metadata is "data about data" (for example, a library catalog is metadata, since it describes publications) or specifically in the context of this ! specification "data describing Web resources". The distinction between "data" and "metadata" is not an absolute one; it is a distinction created primarily by a particular application, and many times the same resource will be interpreted in both ways simultaneously. *************** *** 184,201 **** collections of pages that represent a single logical "document", for describing intellectual property rights of Web pages, and for expressing the privacy preferences of a user as well as the privacy ! policies of a web site. RDF with digital signatures will be key to building the "Web of Trust" for electronic commerce, collaboration, and other applications.

This document introduces a model for representing RDF metadata as well as a syntax for encoding and transporting this metadata in a manner that ! maximizes the interoperability of independently developed web servers and clients. The syntax presented here uses the Extensible Markup Language [XML]: one of the goals of RDF is to make it possible to specify semantics for data based on XML in a standardized, interoperable manner. RDF and ! XML are complementary: RDF is a model of metadata and only superficially ! addresses many of the encoding issues that transportation and file storage require (such as internationalization, character sets, etc.). For these issues, RDF relies on the support of XML. It is also important to understand that this XML syntax is only one possible syntax for RDF and that alternate --- 184,201 ---- collections of pages that represent a single logical "document", for describing intellectual property rights of Web pages, and for expressing the privacy preferences of a user as well as the privacy ! policies of a Web site. RDF with digital signatures will be key to building the "Web of Trust" for electronic commerce, collaboration, and other applications.

This document introduces a model for representing RDF metadata as well as a syntax for encoding and transporting this metadata in a manner that ! maximizes the interoperability of independently developed Web servers and clients. The syntax presented here uses the Extensible Markup Language [XML]: one of the goals of RDF is to make it possible to specify semantics for data based on XML in a standardized, interoperable manner. RDF and ! XML are complementary: RDF is a model of metadata and only addresses by ! reference many of the encoding issues that transportation and file storage require (such as internationalization, character sets, etc.). For these issues, RDF relies on the support of XML. It is also important to understand that this XML syntax is only one possible syntax for RDF and that alternate *************** *** 209,215 ****

This specification will be followed by other documents that will complete the framework. Most importantly, to facilitate the definition of metadata ! RDF will have a class system not unlike many object-oriented programming and modeling systems. A collection of classes (typically authored for a specific purpose or domain) is called a schema. Classes are organized in a hierarchy, and offer extensibility through subclass refinement. This --- 209,215 ----

This specification will be followed by other documents that will complete the framework. Most importantly, to facilitate the definition of metadata ! RDF will have a class system much like many object-oriented programming and modeling systems. A collection of classes (typically authored for a specific purpose or domain) is called a schema. Classes are organized in a hierarchy, and offer extensibility through subclass refinement. This *************** *** 233,242 ****

As a result of many communities coming together and agreeing on basic principles of metadata representation and transport, RDF has drawn influence from several different sources. The main influences have come from the ! web standardization community itself in the form of HTML metadata and PICS, the library community, the structured document community in the form of SGML and more importantly XML, and also the knowledge ! representation community. There are also other areas of technology that contributed to the RDF design; these include object-oriented programming and modeling languages, as well as databases. While RDF draws from the KR community, readers familiar with that field --- 233,242 ----

As a result of many communities coming together and agreeing on basic principles of metadata representation and transport, RDF has drawn influence from several different sources. The main influences have come from the ! Web standardization community itself in the form of HTML metadata and PICS, the library community, the structured document community in the form of SGML and more importantly XML, and also the knowledge ! representation (KR) community. There are also other areas of technology that contributed to the RDF design; these include object-oriented programming and modeling languages, as well as databases. While RDF draws from the KR community, readers familiar with that field *************** *** 264,270 **** expressions. The data model representation is used to evaluate equivalence in meaning. Two RDF expressions are equivalent if and only if their data model representations are the same. This definition of equivalence permits ! some syntactic variation in expression without altering the meaning.

The basic data model consists of three object types:

--- 264,273 ---- expressions. The data model representation is used to evaluate equivalence in meaning. Two RDF expressions are equivalent if and only if their data model representations are the same. This definition of equivalence permits ! some syntactic variation in expression without altering the meaning. ! (See
Section 6. for additional discussion ! of string comparison issues.) !

The basic data model consists of three object types:

*************** *** 274,284 **** All things being described by RDF expressions are called resources. ! A resource may be an entire web page; such as the HTML document ! "http://www.w3.org/Overview.html" for example. ! A resource may be a part of a web page; e.g. a specific HTML or XML element within the document source. A resource may also be a whole collection of ! pages; e.g. an entire web site. A resource may also be an object that is not directly accessible via the Web; e.g. a printed book. Resources are always named by URIs plus optional anchor IDs (see [URI]). --- 277,287 ---- All things being described by RDF expressions are called resources. ! A resource may be an entire Web page; such as the HTML document ! "http://w3.org/Overview.html" for example. ! A resource may be a part of a Web page; e.g. a specific HTML or XML element within the document source. A resource may also be a whole collection of ! pages; e.g. an entire Web site. A resource may also be an object that is not directly accessible via the Web; e.g. a printed book. Resources are always named by URIs plus optional anchor IDs (see [URI]). *************** *** 306,313 **** that property for that resource is an RDF statement. These three individual parts of a statement are called, respectively, the subject, the predicate, and the object. ! The object of a statement (i.e. the property value) can be another ! resource or it can be a literal; i.e. a resource (specified by a URI) or a simple string or other primitive datatype defined by XML. In RDF terms, a literal may have content that is XML markup but is not further evaluated by the RDF processor. There are some --- 309,316 ---- that property for that resource is an RDF statement. These three individual parts of a statement are called, respectively, the subject, the predicate, and the object. ! The object of a statement (i.e., the property value) can be another ! resource or it can be a literal; i.e., a resource (specified by a URI) or a simple string or other primitive datatype defined by XML. In RDF terms, a literal may have content that is XML markup but is not further evaluated by the RDF processor. There are some *************** *** 430,436 **** and using metadata. A concrete syntax is also needed for the purposes of creating and exchanging this metadata. This specification of RDF uses the Extensible Markup Language ! [XML] encoding as its interchange syntax. RDF also requires the XML namespace facility to precisely associate each property with the schema that defines the property; see Section 2.2.3., Schemas and Namespaces.

--- 433,439 ---- and using metadata. A concrete syntax is also needed for the purposes of creating and exchanging this metadata. This specification of RDF uses the Extensible Markup Language ! [XML] encoding as its interchange syntax. RDF also requires the XML namespace facility to precisely associate each property with the schema that defines the property; see Section 2.2.3., Schemas and Namespaces.

*************** *** 464,470 **** has been designed to accomodate this easily by grouping multiple statements for the same resource into a Description element. The Description element names, in an about attribute, the resource to which each ! of the statements apply. If the resource does not yet exist (i.e. does not yet have a resource identifier) then a Description element can create the identifer for the resource using an ID attribute.

--- 467,473 ---- has been designed to accomodate this easily by grouping multiple statements for the same resource into a Description element. The Description element names, in an about attribute, the resource to which each ! of the statements apply. If the resource does not yet exist (i.e., does not yet have a resource identifier) then a Description element can create the identifer for the resource using an ID attribute.

*************** *** 486,492 **** [11] URI-reference ::= string, interpreted per [URI] [12] IDsymbol ::= (any legal XML name symbol) [13] name ::= (any legal XML name symbol) ! [14] NSprefix ::= (any legal XML namespace prefix) [15] string ::= (any XML text, with "<", ">", and "&" escaped) --- 489,495 ---- [11] URI-reference ::= string, interpreted per [URI] [12] IDsymbol ::= (any legal XML name symbol) [13] name ::= (any legal XML name symbol) ! [14] NSprefix ::= (any legal XML namespace prefix) [15] string ::= (any XML text, with "<", ">", and "&" escaped) *************** *** 513,519 **** form as specified by [URI]. If a fragment identifier is included in the URI-reference then the resource identifier refers only to the subcomponent of the containing resource that is identifed by the ! corresponding anchor id internal to that containing resource (see [Dexter94]), otherwise the identifier refers to the entire resource specified by the URI. --- 516,522 ---- form as specified by [URI]. If a fragment identifier is included in the URI-reference then the resource identifier refers only to the subcomponent of the containing resource that is identifed by the ! corresponding fragment id internal to that containing resource (see anchor in [Dexter94]), otherwise the identifier refers to the entire resource specified by the URI. *************** *** 552,567 **** quoting and escaping mechanisms may be used if the string contains character sequences (e.g. "<" and "&") that violate the well-formedness rules or that otherwise might look like markup. ! In this version of RDF there is no supported mechanism to specify that ! the value of a property is XML content containing markup other than by ! escaping the markup or writing the property using the attribute form ! shown in Section 2.2.2.

!

Property names must always be associated with a schema. This can be done by qualifying the element names with a namespace prefix to unambiguously connect the property definition with the corresponding RDF schema or by declaring a default namespace as specified in ! [NAMESPACES].

The example sentence from Section 2.1.1

--- 555,569 ---- quoting and escaping mechanisms may be used if the string contains character sequences (e.g. "<" and "&") that violate the well-formedness rules or that otherwise might look like markup. ! See Section 6. for additional syntax to specify ! a property value with well-formed XML content containing markup such that ! the markup is not interpreted by RDF.

!

Property names must be associated with a schema. This can be done by qualifying the element names with a namespace prefix to unambiguously connect the property definition with the corresponding RDF schema or by declaring a default namespace as specified in ! [NAMESPACES].

The example sentence from Section 2.1.1

*************** *** 571,577 ****

is represented in RDF/XML as:

!
  <rdf:RDF>
      <rdf:Description about="http://www.w3.org/Home/Lassila">
        <s:Creator>Ora Lassila</s:Creator>
      </rdf:Description>
--- 573,579 ----
  
  

is represented in RDF/XML as:

!
<rdf:RDF>
    <rdf:Description about="http://www.w3.org/Home/Lassila">
      <s:Creator>Ora Lassila</s:Creator>
    </rdf:Description>
***************
*** 599,607 ****
  
  

The complete XML document containing the description above would be:

!
  <?xml version="1.0"?>
    <rdf:RDF
!     xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
      xmlns:s="http://description.org/schema/">
      <rdf:Description about="http://www.w3.org/Home/Lassila">
        <s:Creator>Ora Lassila</s:Creator>
--- 601,609 ----
  
  

The complete XML document containing the description above would be:

!
<?xml version="1.0"?>
  <rdf:RDF
!   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
    xmlns:s="http://description.org/schema/">
    <rdf:Description about="http://www.w3.org/Home/Lassila">
      <s:Creator>Ora Lassila</s:Creator>
***************
*** 610,621 ****
  

Using the default namespace syntax defined in ! [NAMESPACES] for the RDF namespace itself, this document could also be written as:

!
  <?xml version="1.0"?>
    <RDF
!     xmlns="http://www.w3.org/TR/WD-rdf-syntax#"
      xmlns:s="http://description.org/schema/">
      <Description about="http://www.w3.org/Home/Lassila">
        <s:Creator>Ora Lassila</s:Creator>
--- 612,623 ----
  

Using the default namespace syntax defined in ! [NAMESPACES] for the RDF namespace itself, this document could also be written as:

!
<?xml version="1.0"?>
  <RDF
!   xmlns="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
    xmlns:s="http://description.org/schema/">
    <Description about="http://www.w3.org/Home/Lassila">
      <s:Creator>Ora Lassila</s:Creator>
***************
*** 627,634 ****
  an individual Description element or even an individual
  propertyElt element as in:

!
  <?xml version="1.0"?>
!   <RDF xmlns="http://www.w3.org/TR/WD-rdf-syntax#">
      <Description about="http://www.w3.org/Home/Lassila">
        <s:Creator xmlns:s="http://description.org/schema/">Ora Lassila</s:Creator>
      </Description>
--- 629,636 ----
  an individual Description element or even an individual
  propertyElt element as in:

!
<?xml version="1.0"?>
! <RDF xmlns="http://w3.org/TR/1999/PR-rdf-syntax-19990105#">
    <Description about="http://www.w3.org/Home/Lassila">
      <s:Creator xmlns:s="http://description.org/schema/">Ora Lassila</s:Creator>
    </Description>
***************
*** 638,645 ****
  

As XML namespace declarations may be nested, the previous example may be further condensed to:

!
  <?xml version="1.0"?>
!   <RDF xmlns="http://www.w3.org/TR/WD-rdf-syntax#">
      <Description about="http://www.w3.org/Home/Lassila">
        <Creator xmlns="http://description.org/schema/">Ora Lassila</Creator>
      </Description>
--- 640,647 ----
  

As XML namespace declarations may be nested, the previous example may be further condensed to:

!
<?xml version="1.0"?>
! <RDF xmlns="http://w3.org/TR/1999/PR-rdf-syntax-19990105#">
    <Description about="http://www.w3.org/Home/Lassila">
      <Creator xmlns="http://description.org/schema/">Ora Lassila</Creator>
    </Description>
***************
*** 647,653 ****
  

Highly condensed expressions such as this are discouraged, however, ! when the RDF/XML encoding is written by hand or expected to be editted in a plain text editor. Though unambiguous, the possibility of error is greater than if explicit prefixes are used consistently. Note that an RDF/XML fragment that is intended to be inserted in other documents --- 649,655 ----

Highly condensed expressions such as this are discouraged, however, ! when the RDF/XML encoding is written by hand or expected to be edited in a plain text editor. Though unambiguous, the possibility of error is greater than if explicit prefixes are used consistently. Note that an RDF/XML fragment that is intended to be inserted in other documents *************** *** 665,676 **** well-structured XML DTDs to be directly interpreted as RDF models.

Three forms of abbreviation are defined for the basic serialization ! syntax. The first is useable for properties that are not repeated within a Description and where the values of those properties are literals. In this case, the properties may be written as XML attributes of the Description element. The previous example then becomes:

!
  <rdf:RDF>
      <rdf:Description about="http://www.w3.org/Home/Lassila"
                       s:Creator="Ora Lassila" />
    </rdf:RDF>
--- 667,678 ----
  well-structured XML DTDs to be directly interpreted as RDF models.

Three forms of abbreviation are defined for the basic serialization ! syntax. The first is usable for properties that are not repeated within a Description and where the values of those properties are literals. In this case, the properties may be written as XML attributes of the Description element. The previous example then becomes:

!
<rdf:RDF>
    <rdf:Description about="http://www.w3.org/Home/Lassila"
  		   s:Creator="Ora Lassila" />
  </rdf:RDF>
***************
*** 682,688 ****
  
  

Here is another example of the use of this same abbreviation form:

!
  <rdf:RDF>
      <rdf:Description about="http://www.w3.org">
        <s:Publisher>World Wide Web Consortium</s:Publisher>
        <s:Title>W3C Home Page</s:Title>
--- 684,690 ----
  
  

Here is another example of the use of this same abbreviation form:

!
<rdf:RDF>
    <rdf:Description about="http://www.w3.org">
      <s:Publisher>World Wide Web Consortium</s:Publisher>
      <s:Title>W3C Home Page</s:Title>
***************
*** 693,699 ****
  
  

is equivalent for RDF purposes to

!
  <rdf:RDF>
      <rdf:Description about="http://www.w3.org"
           s:Publisher="World Wide Web Consortium"
           s:Title="W3C Home Page"
--- 695,701 ----
  
  

is equivalent for RDF purposes to

!
<rdf:RDF>
    <rdf:Description about="http://www.w3.org"
         s:Publisher="World Wide Web Consortium"
         s:Title="W3C Home Page"
***************
*** 728,734 ****
  
  

is written in RDF/XML using explicit serialization form as

!
  <rdf:RDF>
      <rdf:Description about="http://www.w3.org/Home/Lassila">
        <s:Creator rdf:resource="http://www.w3.org/staffId/85740"/>
      </rdf:Description>
--- 730,736 ----
  
  

is written in RDF/XML using explicit serialization form as

!
<rdf:RDF>
    <rdf:Description about="http://www.w3.org/Home/Lassila">
      <s:Creator rdf:resource="http://www.w3.org/staffId/85740"/>
    </rdf:Description>
***************
*** 746,752 ****
  way to make this relationship more obvious to the human reader. Note that
  to the machine, there is no difference:

!
  <rdf:RDF>
      <rdf:Description about="http://www.w3.org/Home/Lassila">
        <s:Creator>
          <rdf:Description about="http://www.w3.org/staffId/85740">
--- 748,754 ----
  way to make this relationship more obvious to the human reader. Note that
  to the machine, there is no difference:

!
<rdf:RDF>
    <rdf:Description about="http://www.w3.org/Home/Lassila">
      <s:Creator>
        <rdf:Description about="http://www.w3.org/staffId/85740">
***************
*** 762,768 ****
  element and its contained property expressions can be written as attributes
  of the Creator element:

!
  <rdf:RDF>
      <rdf:Description about="http://www.w3.org/Home/Lassila">
        <s:Creator rdf:resource="http://www.w3.org/staffId/85740"
           v:Name="Ora Lassila"
--- 764,770 ----
  element and its contained property expressions can be written as attributes
  of the Creator element:

!
<rdf:RDF>
    <rdf:Description about="http://www.w3.org/Home/Lassila">
      <s:Creator rdf:resource="http://www.w3.org/staffId/85740"
         v:Name="Ora Lassila"
***************
*** 797,803 ****
  http://www.w3.org/staffId/85740 represents an instance of a Person, we
  would write this in full serialization syntax as:

!
  <rdf:RDF>
      <rdf:Description about="http://www.w3.org/Home/Lassila">
        <s:Creator>
  	<rdf:Description about="http://www.w3.org/staffId/85740">
--- 799,805 ----
  http://www.w3.org/staffId/85740 represents an instance of a Person, we
  would write this in full serialization syntax as:

!
<rdf:RDF>
    <rdf:Description about="http://www.w3.org/Home/Lassila">
      <s:Creator>
        <rdf:Description about="http://www.w3.org/staffId/85740">
***************
*** 812,818 ****
  
  and using this third abbreviated form as:
  
! 
  <rdf:RDF>
      <rdf:Description about="http://www.w3.org/Home/Lassila">
        <s:Creator>
          <s:Person about="http://www.w3.org/staffId/85740">
--- 814,820 ----
  
  and using this third abbreviated form as:
  
! 
<rdf:RDF>
    <rdf:Description about="http://www.w3.org/Home/Lassila">
      <s:Creator>
        <s:Person about="http://www.w3.org/staffId/85740">
***************
*** 972,978 ****
  
  

the RDF model is

!

Simple bag containerD

Figure 4: Simple Bag container

--- 974,980 ----

the RDF model is

!

Simple Bag containerD

Figure 4: Simple Bag container

*************** *** 1022,1028 ****

Note that RDF/XML uses li as a convenience element to avoid having to explicitly number each member. The li element assigns ! the properties _1, _2, and so on as necessary.

An Alt container is required to have at least one member. This member will be identified by the property _1 and is the --- 1024,1033 ----

Note that RDF/XML uses li as a convenience element to avoid having to explicitly number each member. The li element assigns ! the properties _1, _2, and so on as necessary. ! The element name li was chosen to be mnemonic with the term ! "list item" ! from HTML.

An Alt container is required to have at least one member. This member will be identified by the property _1 and is the *************** *** 1048,1054 ****

is written in RDF/XML as

!
  <rdf:RDF>
      <rdf:Description about="http://mycollege.edu/courses/6.001">
        <s:students>
          <rdf:Bag>
--- 1053,1059 ----
  
  

is written in RDF/XML as

!
<rdf:RDF>
    <rdf:Description about="http://mycollege.edu/courses/6.001">
      <s:students>
        <rdf:Bag>
***************
*** 1076,1082 ****
  
  

is written in RDF/XML as

!
  <rdf:RDF>
      <rdf:Description about="http://x.org/packages/X11">
        <s:DistributionSite>
          <rdf:Alt>
--- 1081,1087 ----
  
  

is written in RDF/XML as

!
<rdf:RDF>
    <rdf:Description about="http://x.org/packages/X11">
      <s:DistributionSite>
        <rdf:Alt>
***************
*** 1104,1110 ****
  
  

The following example:

!
  <rdf:Bag ID="pages">
      <rdf:li resource="http://foo.org/foo.html" />
      <rdf:li resource="http://bar.org/bar.html" />
    </rdf:Bag>
--- 1109,1115 ----
  
  

The following example:

!
<rdf:Bag ID="pages">
    <rdf:li resource="http://foo.org/foo.html" />
    <rdf:li resource="http://bar.org/bar.html" />
  </rdf:Bag>
***************
*** 1115,1123 ****
  

expresses that "Ora Lassila" is the creator ! of the bag "pages". It does not, however, say anything about ! the individual pages, the members of the bag. The referent of the Description ! is the container (the bag), not its members. One would sometimes like to write a statement about each of the contained objects individually, instead of the container itself. In order to express that "Ora Lassila" is the creator of each of the pages, a different kind of referent is called --- 1120,1128 ----

expresses that "Ora Lassila" is the creator ! of the Bag "pages". It does not, however, say anything about ! the individual pages, the members of the Bag. The referent of the Description ! is the container (the Bag), not its members. One would sometimes like to write a statement about each of the contained objects individually, instead of the container itself. In order to express that "Ora Lassila" is the creator of each of the pages, a different kind of referent is called *************** *** 1130,1136 ****

As an example, if we wrote

!
  <rdf:Description aboutEach="#pages">
      <s:Creator>Ora Lassila</s:Creator>
    </rdf:Description>
  
--- 1135,1141 ----

As an example, if we wrote

!
<rdf:Description aboutEach="#pages">
    <s:Creator>Ora Lassila</s:Creator>
  </rdf:Description>
  
*************** *** 1155,1161 **** to the resources "foo" and "bar", the above example is equivalent to

!
  <rdf:Description about="http://foo.org/foo.html">
      <s:Creator>Ora Lassila</s:Creator>
    </rdf:Description>
  
--- 1160,1166 ----
  to the resources "foo" and "bar", the above example
  is equivalent to 

!
<rdf:Description about="http://foo.org/foo.html">
    <s:Creator>Ora Lassila</s:Creator>
  </rdf:Description>
  
***************
*** 1167,1174 ****
  

3.4. Containers Defined By A URI Pattern

One very frequent use of metadata is to make statements about "all ! pages at my web site", or "all pages in this branch of my ! web site". In many cases it is impractical or even undesirable to try to list each such resource explicitly and identify it as a member of a container. RDF therefore has a second distributive referent type. This second distributive referent type is a --- 1172,1179 ----

3.4. Containers Defined By A URI Pattern

One very frequent use of metadata is to make statements about "all ! pages at my Web site", or "all pages in this branch of my ! Web site". In many cases it is impractical or even undesirable to try to list each such resource explicitly and identify it as a member of a container. RDF therefore has a second distributive referent type. This second distributive referent type is a *************** *** 1191,1197 **** http://foo.org/doc/page2 exist then we can say that each of them has a copyright property by writing

!
  <rdf:Description aboutEachPrefix="http://foo.org/doc">
      <s:Copyright>© 1998, The Foo Organization</s:Copyright>
    </rdf:Description>
  
--- 1196,1202 ---- http://foo.org/doc/page2 exist then we can say that each of them has a copyright property by writing

!
<rdf:Description aboutEachPrefix="http://foo.org/doc">
    <s:Copyright>© 1998, The Foo Organization</s:Copyright>
  </rdf:Description>
  
*************** *** 1199,1205 ****

If these are the only two resources whose URIs start with that string then the above is equivalent to both of the following alternatives:

!
  <rdf:Description about="http://foo.org/doc/page1">
      <s:Copyright>© 1998, The Foo Organization</s:Copyright>
    </rdf:Description>
    <rdf:Description about="http://foo.org/doc/page2">
--- 1204,1210 ----
  

If these are the only two resources whose URIs start with that string then the above is equivalent to both of the following alternatives:

!
<rdf:Description about="http://foo.org/doc/page1">
    <s:Copyright>© 1998, The Foo Organization</s:Copyright>
  </rdf:Description>
  <rdf:Description about="http://foo.org/doc/page2">
***************
*** 1209,1215 ****
  
  

and

!
  <rdf:Description aboutEach="#docpages">
      <s:Copyright>© 1998, The Foo Organization</s:Copyright>
    </rdf:Description>
    <rdf:Bag ID="docpages">
--- 1214,1220 ----
  
  

and

!
<rdf:Description aboutEach="#docpages">
    <s:Copyright>© 1998, The Foo Organization</s:Copyright>
  </rdf:Description>
  <rdf:Bag ID="docpages">
***************
*** 1221,1227 ****
  

3.5. Containers Versus Repeated Properties

A resource may have multiple statements with the same predicate ! (i.e. using the same property). This is not the same as having a single statement whose object is a container containing multiple members. The choice of which to use in any particular circumstance is in part made by the person who designs the schema and in --- 1226,1232 ----

3.5. Containers Versus Repeated Properties

A resource may have multiple statements with the same predicate ! (i.e., using the same property). This is not the same as having a single statement whose object is a container containing multiple members. The choice of which to use in any particular circumstance is in part made by the person who designs the schema and in *************** *** 1273,1279 ****

4. Statements about Statements

!

In addition to making statements about web resources, RDF can be used for making statements about other RDF statements; we will refer to these as higher-order statements. In order to make a statement about another statement, we actually have to build a model of the original statement; --- 1278,1284 ----

4. Statements about Statements

!

In addition to making statements about Web resources, RDF can be used for making statements about other RDF statements; we will refer to these as higher-order statements. In order to make a statement about another statement, we actually have to build a model of the original statement; *************** *** 1364,1377 **** "Ralph Swick"). Using base-level RDF/XML syntax, this could be written as

!
  <rdf:RDF
!     xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
      xmlns:a="http://description.org/schema/">
      <rdf:Description>
        <rdf:subject resource="http://www.w3.org/Home/Lassila" />
        <rdf:predicate resource="http://description.org/schema#Creator" />
        <rdf:object>Ora Lassila</rdf:object>
!       <rdf:type resource="http://www.w3.org/TR/WD-rdf-syntax#Statement" />
        <a:attributedTo>Ralph Swick</a:attributedTo>
      </rdf:Description>
    </rdf:RDF>
--- 1369,1382 ----
  "Ralph Swick"). Using base-level RDF/XML syntax, this could be
  written as 

!
<rdf:RDF
!   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
    xmlns:a="http://description.org/schema/">
    <rdf:Description>
      <rdf:subject resource="http://www.w3.org/Home/Lassila" />
      <rdf:predicate resource="http://description.org/schema#Creator" />
      <rdf:object>Ora Lassila</rdf:object>
!     <rdf:type resource="http://w3.org/TR/1999/PR-rdf-syntax-19990105#Statement" />
      <a:attributedTo>Ralph Swick</a:attributedTo>
    </rdf:Description>
  </rdf:RDF>
***************
*** 1390,1400 ****
  model does not need a special construct for Descriptions; since
  Descriptions really are collections of statements, a Bag
  container is used to indicate that a set of statements came from the same
! (syntactic) Description. This bag is created by reifying each
  statement of a Description, and making the reified statements
! members of the bag. As an example, the RDF fragment

!
  <rdf:RDF>
      <rdf:Description about="http://www.w3.org/Home/Lassila" bagID="D_001">
        <s:Creator>Ora Lassila</s:Creator>
        <s:Title>Ora's Home Page</s:Title>
--- 1395,1405 ----
  model does not need a special construct for Descriptions; since
  Descriptions really are collections of statements, a Bag
  container is used to indicate that a set of statements came from the same
! (syntactic) Description. This Bag is created by reifying each
  statement of a Description, and making the reified statements
! members of the Bag. As an example, the RDF fragment

!
<rdf:RDF>
    <rdf:Description about="http://www.w3.org/Home/Lassila" bagID="D_001">
      <s:Creator>Ora Lassila</s:Creator>
      <s:Title>Ora's Home Page</s:Title>
***************
*** 1427,1440 ****
  

4.2. Syntactic Shorthand for Statements About Statements

Since attaching a bagID to a Description results in ! including in the model a bag of the reified statements of the Description, we can use this as a syntactic shorthand when making statements about statements. For example, if we wanted to say that Ralph states that Ora is the creator of http://www.w3.org/Home/Lassila and that he also states that the title ! of that resource is "Ora's Home Page" we can simply add to the example above

!
  <rdf:Description aboutEach="#D_001">
      <a:attributedTo>Ralph Swick</a:attributedTo>
    </rdf:Description>
  
--- 1432,1445 ----

4.2. Syntactic Shorthand for Statements About Statements

Since attaching a bagID to a Description results in ! including in the model a Bag of the reified statements of the Description, we can use this as a syntactic shorthand when making statements about statements. For example, if we wanted to say that Ralph states that Ora is the creator of http://www.w3.org/Home/Lassila and that he also states that the title ! of that resource is "Ora's Home Page", we can simply add to the example above

!
<rdf:Description aboutEach="#D_001">
    <a:attributedTo>Ralph Swick</a:attributedTo>
  </rdf:Description>
  
*************** *** 1655,1717 ****

The complete BNF for RDF is reproduced here from previous sections. The precise interpretation of the grammar in terms of the formal model is also given. Syntactic features inherited from XML are not ! reproduced here. These include all well-formedness constraints as well as the use of either double or single quotes around attribute values. This section is intended for implementors who are building tools that read and interpret RDF/XML syntax.

!
  [6.1] RDF            ::= '<rdf:RDF>' obj* '</rdf:RDF>'
!   [6.2] obj            ::= description | container
!   [6.3] description    ::= '<rdf:Description' idAboutAttr? bagIdAttr? propAttr* '/>'
!                          | '<rdf:Description' idAboutAttr? bagIdAttr? propAttr* '>'
!                                 propertyElt* '</rdf:Description>'
!                          | typedNode
!   [6.4] container      ::= sequence | bag | alternative
!   [6.5] idAboutAttr    ::= idAttr | aboutAttr | aboutEachAttr
!   [6.6] idAttr         ::= 'ID="' IDsymbol '"'
!   [6.7] aboutAttr      ::= 'about="' URI-reference '"'
!   [6.8] aboutEachAttr  ::= 'aboutEach="' URI-reference '"'
!                          | 'aboutEachPrefix="' string '"'
!   [6.9] bagIdAttr      ::= 'bagID="' IDsymbol '"'
!  [6.10] propAttr       ::= typeAttr
!                          | propName '="' string '"' (with embedded quotes escaped)
!  [6.11] typeAttr       ::= 'type="' URI-reference '"'
!  [6.12] propertyElt    ::= '<' propName idAttr? '>' value '</' propName '>'
!                          | '<' propName idRefAttr? bagIdAttr? propAttr* '/>'
!  [6.13] typedNode      ::= '<' typeName idAboutAttr? bagIdAttr? propAttr* '/>'
!                          | '<' typeName idAboutAttr? bagIdAttr? propAttr* '>'
!                                propertyElt* '</' typeName '>'
!  [6.14] propName       ::= Qname
!  [6.15] typeName       ::= Qname
!  [6.16] idRefAttr      ::= idAttr | resourceAttr
!  [6.17] value          ::= obj | string
!  [6.18] resourceAttr   ::= 'resource="' URI-reference '"'
!  [6.19] Qname          ::= [ NSprefix ':' ] name
!  [6.20] URI-reference  ::= string, interpreted per [URI]
!  [6.21] IDsymbol       ::= (any legal XML name symbol)
!  [6.22] name           ::= (any legal XML name symbol)
!  [6.23] NSprefix       ::= (any legal XML namespace prefix)
!  [6.24] string         ::= (any XML text, with "<", ">", and "&" escaped)
!  [6.25] sequence       ::= '<rdf:Seq' idAttr? '>' member* '</rdf:Seq>'
!                          | '<rdf:Seq' idAttr? memberAttr* '/>'
!  [6.26] bag            ::= '<rdf:Bag' idAttr? '>' member* '</rdf:Bag>'
!                          | '<rdf:Bag' idAttr? memberAttr* '/>'
!  [6.27] alternative    ::= '<rdf:Alt' idAttr? '>' member+ '</rdf:Alt>'
!                          | '<rdf:Alt' idAttr? memberAttr? '/>'
!  [6.28] member         ::= referencedItem | inlineItem
!  [6.29] referencedItem ::= '<rdf:li' resourceAttr '/>'
!  [6.30] inlineItem     ::= '<rdf:li>' value </rdf:li>'
!  [6.31] memberAttr     ::= 'rdf:_n="' string '"' (where n is an integer)
  

The formal namespace name for the properties and classes defined in ! this specification is http://www.w3.org/TR/WD-rdf-syntax#. When an RDF processor encounters an XML element or attribute name that is declared to be from a namespace whose name begins with the string "http://www.w3.org/TR/REC-rdf-syntax" and the processor does not recognize the semantics of that name then the ! processor is required to skip (i.e. generate no tuples for) the entire XML element, including its content, whose name is unrecognized or that has an attribute whose name is unrecognized.

--- 1660,1738 ----

The complete BNF for RDF is reproduced here from previous sections. The precise interpretation of the grammar in terms of the formal model is also given. Syntactic features inherited from XML are not ! reproduced here. These include all well-formedness constraints, the ! use of whitespace around attributes and the '=', as well as the use of either double or single quotes around attribute values. This section is intended for implementors who are building tools that read and interpret RDF/XML syntax.

!

Where used below, the keywords "SHOULD", ! "MUST", and "MUST NOT" are to be interpreted ! as described in RFC 2119 [RFC2119]. ! However, for readability, ! these words do not appear in all uppercase letters in this specification.

! !
  [6.1] RDF            ::= ['<rdf:RDF>'] obj* ['</rdf:RDF>']
!   [6.2] obj            ::= description | container
!   [6.3] description    ::= '<rdf:Description' idAboutAttr? bagIdAttr? propAttr* '/>'
!                          | '<rdf:Description' idAboutAttr? bagIdAttr? propAttr* '>'
!                                 propertyElt* '</rdf:Description>'
!                          | typedNode
!   [6.4] container      ::= sequence | bag | alternative
!   [6.5] idAboutAttr    ::= idAttr | aboutAttr | aboutEachAttr
!   [6.6] idAttr         ::= ' ID="' IDsymbol '"'
!   [6.7] aboutAttr      ::= ' about="' URI-reference '"'
!   [6.8] aboutEachAttr  ::= ' aboutEach="' URI-reference '"'
!                          | ' aboutEachPrefix="' string '"'
!   [6.9] bagIdAttr      ::= ' bagID="' IDsymbol '"'
!  [6.10] propAttr       ::= typeAttr
!                          | propName '="' string '"' (with embedded quotes escaped)
!  [6.11] typeAttr       ::= ' type="' URI-reference '"'
!  [6.12] propertyElt    ::= '<' propName idAttr? '>' value '</' propName '>'
!                          | '<' propName idAttr? parseLiteral '>'
!                                literal '</' propName '>'
!                          | '<' propName idAttr? parseResource '>'
!                                propertyElt* '</' propName '>'
!                          | '<' propName idRefAttr? bagIdAttr? propAttr* '/>'
!  [6.13] typedNode      ::= '<' typeName idAboutAttr? bagIdAttr? propAttr* '/>'
!                          | '<' typeName idAboutAttr? bagIdAttr? propAttr* '>'
!                                propertyElt* '</' typeName '>'
!  [6.14] propName       ::= Qname
!  [6.15] typeName       ::= Qname
!  [6.16] idRefAttr      ::= idAttr | resourceAttr
!  [6.17] value          ::= obj | string
!  [6.18] resourceAttr   ::= ' resource="' URI-reference '"'
!  [6.19] Qname          ::= [ NSprefix ':' ] name
!  [6.20] URI-reference  ::= string, interpreted per [URI]
!  [6.21] IDsymbol       ::= (any legal XML name symbol)
!  [6.22] name           ::= (any legal XML name symbol)
!  [6.23] NSprefix       ::= (any legal XML namespace prefix)
!  [6.24] string         ::= (any XML text, with "<", ">", and "&" escaped)
!  [6.25] sequence       ::= '<rdf:Seq' idAttr? '>' member* '</rdf:Seq>'
!                          | '<rdf:Seq' idAttr? memberAttr* '/>'
!  [6.26] bag            ::= '<rdf:Bag' idAttr? '>' member* '</rdf:Bag>'
!                          | '<rdf:Bag' idAttr? memberAttr* '/>'
!  [6.27] alternative    ::= '<rdf:Alt' idAttr? '>' member+ '</rdf:Alt>'
!                          | '<rdf:Alt' idAttr? memberAttr? '/>'
!  [6.28] member         ::= referencedItem | inlineItem
!  [6.29] referencedItem ::= '<rdf:li' resourceAttr '/>'
!  [6.30] inlineItem     ::= '<rdf:li' '>' value </rdf:li>'
!                          | '<rdf:li' parseLiteral '>' literal </rdf:li>'
!                          | '<rdf:li' parseResource '>' propertyElt* </rdf:li>'
!  [6.31] memberAttr     ::= ' rdf:_n="' string '"' (where n is an integer)
!  [6.32] parseLiteral   ::= ' parseType="Literal"'
!  [6.33] parseResource  ::= ' parseType="Resource"'
!  [6.34] literal        ::= (any well-formed XML)
  

The formal namespace name for the properties and classes defined in ! this specification is http://w3.org/TR/1999/PR-rdf-syntax-19990105#. When an RDF processor encounters an XML element or attribute name that is declared to be from a namespace whose name begins with the string "http://www.w3.org/TR/REC-rdf-syntax" and the processor does not recognize the semantics of that name then the ! processor is required to skip (i.e., generate no tuples for) the entire XML element, including its content, whose name is unrecognized or that has an attribute whose name is unrecognized.

*************** *** 1723,1729 **** of E. This expansion is generated by concatenating the namespace name given in the namespace declaration with the ! LocalPart of the qualified name. --- 1744,1750 ---- of E. This expansion is generated by concatenating the namespace name given in the namespace declaration with the ! LocalPart of the qualified name. *************** *** 1733,1751 ****
  • the resource whose identifier is given by the value of the about attribute of the Description or
  • !
  • a new resource whose identification is the value of the ID attribute of the Description, if present; else the new resource ! has no identification.
  • If E is an empty element (no content), v is the resource whose identifier is given by the resource attribute of E. If the content ! of E contains no XML markup, v is the content of E (a string). Otherwise, the content of E must be another Description or container and v is the resource named by the (possibly implicit) ID or about of that Description or container.
  • URI-References are resolved to resource identifiers by first resolving the URI-reference to absolute form as specified by [URI] --- 1754,1802 ----

  • the resource whose identifier is given by the value of the about attribute of the Description or
  • !
  • a new resource whose identifier is the value of the ID attribute of the Description, if present; else the new resource ! has no identifier.
  • If E is an empty element (no content), v is the resource whose identifier is given by the resource attribute of E. If the content ! of E contains no XML markup or if parseType="Literal" ! is specified in the start tag of E then v is the content of E ! (a literal). Otherwise, the content of E must be another Description or container and v is the resource named by the (possibly implicit) ID or about of that Description or container.
  • +

    The parseType attribute changes the interpretation of the + element content. The parseType attribute should have one of + the values 'Literal' or 'Resource'. The value is case-sensitive. + The value 'Literal' specifies that the element + content is to be treated as an RDF/XML literal; that is, the + content must not be interpreted by an RDF processor. The + value 'Resource' specifies that the element content must be + treated as if it were the content of a Description element. + Other values of parseType are reserved for future + specification by RDF. With RDF 1.0 other values must + be treated as identical to 'Literal'. In all cases, the content + of an element having a parseType attribute must be + well-formed XML. The content of an element having a + parseType="Resource" attribute must further match the + production for the content of a Description element.

    + +
    + The RDF Model and Syntax Working Group acknowledges that the + parseType='Literal' mechanism is a minimum-level solution to the + requirement to express an RDF statement with a value that + has XML markup. Additional complexities of XML such as + canonicalization of whitespace are not yet well defined. + Future work of the W3C is expected to resolve such issues in + a uniform manner for all applications based on XML. Future + versions of RDF will inherit this work and may extend it as + we gain insight from further application experience. +
    +

    URI-References are resolved to resource identifiers by first resolving the URI-reference to absolute form as specified by [URI] *************** *** 1753,1761 **** fragment identifier is included in the URI-reference then the resource identifier refers only to a subcomponent of the containing resource; this subcomponent is identifed by the corresponding anchor id internal ! to that containing resource, otherwise the resource identifier refers to the entire item specified by the URI.

    The Description element itself creates an instance of a Bag resource. The members of this Bag are the resources corresponding to --- 1804,1829 ---- fragment identifier is included in the URI-reference then the resource identifier refers only to a subcomponent of the containing resource; this subcomponent is identifed by the corresponding anchor id internal ! to that containing resource and the extent of the subcomponent is ! defined by the fragment identifier in conjunction with the content ! type of the containing resource, otherwise ! the resource identifier refers to the entire item specified by the URI.

    +
    + Note: Although non-ASCII characters in URIs are not allowed by + [URI], + [XML] + specifies a convention to avoid unnecessary + incompatibilities in extended URI syntax. Implementors of RDF + are encouraged to avoid further incompatibility and use the + XML convention for system identifiers. Namely, that a non-ASCII + character in a URI be represented in UTF-8 as one + or more bytes, and then these bytes be escaped with the URI escaping + mechanism (i.e., by converting each byte to %HH, where HH is + the hexadecimal notation of the byte value). +
    +

    The Description element itself creates an instance of a Bag resource. The members of this Bag are the resources corresponding to *************** *** 1773,1779 **** ID attribute of the Description element, if present. When another Description or property value refers to the in-line resource it will use the value of the ID in an about ! attribute. When the other Description refers to the bag of resources corresponding to the reified statements it will use the value of bagID in an about attribute. Either ID or about may be specified on Description but not both together in the same --- 1841,1847 ---- ID attribute of the Description element, if present. When another Description or property value refers to the in-line resource it will use the value of the ID in an about ! attribute. When the other Description refers to the Bag of resources corresponding to the reified statements it will use the value of bagID in an about attribute. Either ID or about may be specified on Description but not both together in the same *************** *** 1800,1810 **** for each r that is a member of the container.

    !

    Seq, Bag, and Alt create an instance of a Sequence, Bag, or Alternative container resource type respectively. A triple {RDF:type,c,t} is created where c is the collection resource and t is one of RDF:Seq, RDF:Bag, or RDF:Alt. The members of the collection are denoted by li. Each ! li corresponds to one member of the collection and results in the creation of a triple {p,c,v} where:

      --- 1868,1880 ---- for each r that is a member of the container.

      !

      Seq, Bag, and Alt create an instance ! of a Sequence, Bag, or Alternative container resource type respectively. A triple {RDF:type,c,t} is created where c is the collection resource and t is one of RDF:Seq, RDF:Bag, or RDF:Alt. The members of the collection are denoted by li. Each ! li element E ! corresponds to one member of the collection and results in the creation of a triple {p,c,v} where:

        *************** *** 1816,1829 ****
      1. (same as rule 3 above) If E is an empty element (no content), v is the resource whose resource identifier is given by the resource attribute ! of E. If the content of E contains no XML markup, v is the ! content of E (a string). Otherwise, the content of E must be another Description or container and v is the resource named by the(possibly implicit) ID or about of that Description or container.
      !

      The URI identifies (after resolution) the target resource; i.e. the resource to which the Description applies or the resource that is included in the container. The bagID attribute on a Description element and the ID attribute on a container element permit that Description --- 1886,1901 ----

    1. (same as rule 3 above) If E is an empty element (no content), v is the resource whose resource identifier is given by the resource attribute ! of E. If the content of E contains no XML markup ! or if parseType="Literal" is specified in the start tag of ! E then v is the ! content of E (a literal). Otherwise, the content of E must be another Description or container and v is the resource named by the(possibly implicit) ID or about of that Description or container.
    !

    The URI identifies (after resolution) the target resource; i.e., the resource to which the Description applies or the resource that is included in the container. The bagID attribute on a Description element and the ID attribute on a container element permit that Description *************** *** 1836,1842 ****

    Within propertyElt (production [6.12]), the URI used in a resource attribute identifies (after resolution) the resource that is the object of the statement ! (i.e. the value of this property). The value of the ID attribute, if specified, is the identifier for the resource that represents the reification of the statement. If an RDF expression (that is, content with RDF/XML markup) --- 1908,1914 ----

    Within propertyElt (production [6.12]), the URI used in a resource attribute identifies (after resolution) the resource that is the object of the statement ! (i.e., the value of this property). The value of the ID attribute, if specified, is the identifier for the resource that represents the reification of the statement. If an RDF expression (that is, content with RDF/XML markup) *************** *** 1849,1860 **** XML; the usual XML content quoting and escaping mechanisms may be used if the string contains character sequences (e.g. "<" and "&") that violate the well-formedness rules or that otherwise ! might look like markup.

    It is recommended that property names always be qualified with a namespace prefix to unambiguously connect the property definition with the corresponding schema.

    As defined by XML, the character repertoire of an RDF string is ISO/IEC 10646 [ISO10646]. An actual RDF string, whether in an XML document or in some other representation of the RDF data model, may be stored using a --- 1921,1938 ---- XML; the usual XML content quoting and escaping mechanisms may be used if the string contains character sequences (e.g. "<" and "&") that violate the well-formedness rules or that otherwise ! might look like markup. ! ! The attribute parseType="Literal" specifies that the element ! content is an RDF literal. Any markup that is part of this content is ! included as part of the literal and not interpreted by RDF. !

    It is recommended that property names always be qualified with a namespace prefix to unambiguously connect the property definition with the corresponding schema.

    +

    As defined by XML, the character repertoire of an RDF string is ISO/IEC 10646 [ISO10646]. An actual RDF string, whether in an XML document or in some other representation of the RDF data model, may be stored using a *************** *** 1874,1884 **** Unicode Standard [Unicode].

    The xml:lang attribute may be used as defined by [XML] to associate a language with the property value. There is no specific data ! model representation for xml:lang (i.e. it adds no triples to the data model); the language of a literal is considered by RDF to be a part of the literal. An application may ignore language tagging of a string. All RDF applications must specify whether or not language --- 1952,1977 ---- Unicode Standard [Unicode]. +

    + Note: The W3C I18N WG + is working on a definition for string identity + matching. This definition will most probably be based on canonical + equivalences according to the Unicode standard and on the principle of + early uniform normalization. Users of RDF should not rely on any + applications matching using the canonical equivalents, but should try + to make sure that their data is in the normalized form according to + the upcoming definitions. +
    + +

    This specification does not state a mechanism for determining equivalence + between literals that contain markup, nor whether such a mechanism is + guaranteed to exist.

    +

    The xml:lang attribute may be used as defined by [XML] to associate a language with the property value. There is no specific data ! model representation for xml:lang (i.e., it adds no triples to the data model); the language of a literal is considered by RDF to be a part of the literal. An application may ignore language tagging of a string. All RDF applications must specify whether or not language *************** *** 1886,1892 **** is considered when performing string matching or other processing.

    Attributes whose names start with ! "xmlns" are namespace declarations and do not create triples in the data model. There is no specific data model representation for such namespace declarations.

    --- 1979,1985 ---- is considered when performing string matching or other processing.

    Attributes whose names start with ! "xmlns" are namespace declarations and do not create triples in the data model. There is no specific data model representation for such namespace declarations.

    *************** *** 1906,1912 **** attribute name of A. This expansion is generated by concatenating the namespace name given in the namespace declaration with the ! LocalPart of the qualified name and then resolving this URI according to the algorithm in Section 5.2., Resolving Relative References to Absolute Form, in [URI]. --- 1999,2005 ---- attribute name of A. This expansion is generated by concatenating the namespace name given in the namespace declaration with the ! LocalPart of the qualified name and then resolving this URI according to the algorithm in Section 5.2., Resolving Relative References to Absolute Form, in [URI]. *************** *** 1966,1972 ****
  • r2 is the resource named by the resource attribute if present or a new resource. If the ID attribute is given it ! is the identification of this new resource.
  • pa1 ... pan are the expansion of the namespace-qualified attribute names.
  • --- 2059,2065 ----
  • r2 is the resource named by the resource attribute if present or a new resource. If the ID attribute is given it ! is the identifier of this new resource.
  • pa1 ... pan are the expansion of the namespace-qualified attribute names.
  • *************** *** 1995,2001 **** sorted once by publication date and sorted again alphabetically by subject:

    !
      <RDF xmlns="http://www.w3.org/TR/WD-rdf-syntax#"> 
          <Seq ID="JSPapersByDate"> 
            <li resource="http://www.dogworld.com/Aug96.doc"/> 
            <li resource="http://www.webnuts.net/Jan97.html"/> 
    --- 2088,2094 ----
      sorted once by publication date and sorted again alphabetically by
      subject:

    !
    <RDF xmlns="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"> 
        <Seq ID="JSPapersByDate"> 
          <li resource="http://www.dogworld.com/Aug96.doc"/> 
          <li resource="http://www.webnuts.net/Jan97.html"/> 
    ***************
    *** 2006,2012 ****
            <li resource="http://www.dogworld.com/Aug96.doc"/> 
            <li resource="http://www.webnuts.net/Jan97.html"/> 
          </Seq> 
    !   </RDF>

    This XML example also uses the default namespace declaration syntax to elide the namespace prefix.

    --- 2099,2106 ---- <li resource="http://www.dogworld.com/Aug96.doc"/> <li resource="http://www.webnuts.net/Jan97.html"/> </Seq> ! </RDF> !

    This XML example also uses the default namespace declaration syntax to elide the namespace prefix.

    *************** *** 2021,2028 **** with two authors specified alphabetically, a title specified in two different languages, and having two equivalent locations on the Web:

    !
      <rdf:RDF
    !     xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
          xmlns:dc="http://purl.org/metadata/dublin_core#"> 
          <rdf:Description about="http://www.foo.com/cool.html"> 
            <dc:Creator>
    --- 2115,2122 ----
      with two authors specified alphabetically, a title specified in two different
      languages, and having two equivalent locations on the Web:

    !
    <rdf:RDF
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
        xmlns:dc="http://purl.org/metadata/dublin_core#"> 
        <rdf:Description about="http://www.foo.com/cool.html"> 
          <dc:Creator>
    ***************
    *** 2046,2052 ****
              </rdf:Alt>
            </dc:Title>
          </rdf:Description> 
    !   </rdf:RDF> 

    This example illustrates the use of all three types of collection. The order of the creators is deemed significant so the Sequence container --- 2140,2147 ---- </rdf:Alt> </dc:Title> </rdf:Description> ! </rdf:RDF> !

    This example illustrates the use of all three types of collection. The order of the creators is deemed significant so the Sequence container *************** *** 2055,2060 **** --- 2150,2162 ---- a single title and that title has two variants, so the Alternatives container is used.

    +
    + Note: In many cases, it is impossible to have a preferred language + among various language alternatives; all languages are + considered to be strictly equivalent. In these cases, the description + author should use a Bag instead of an Alt container. +
    +

    7.3. Non-Binary Relations

    The RDF data model intrinsically only supports binary relations; *************** *** 2078,2092 **** The resulting graph might look like:

    !

    qualifying values D

    Figure 14: A ternary relation

    which could be exchanged as:

    !
      <RDF
    !     xmlns="http://www.w3.org/TR/WD-rdf-syntax#"
          xmlns:dc="http://purl.org/metadata/dublin_core#"
          xmlns:l="http://mycorp.com/schemas/my-schema#">
          <Description about="http://www.webnuts.net/Jan97.html"> 
    --- 2180,2195 ----
      The
      resulting graph might look like: 

    !

    qualifying values D

    Figure 14: A ternary relation

    which could be exchanged as:

    !
    <RDF
    !   xmlns="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
        xmlns:dc="http://purl.org/metadata/dublin_core#"
        xmlns:l="http://mycorp.com/schemas/my-schema#">
        <Description about="http://www.webnuts.net/Jan97.html"> 
    ***************
    *** 2094,2100 ****
              rdf:value="020 - Library Science"
              l:Classification="Dewey Decimal Code"/>
          </Description>
    !   </RDF>

    A common use of this higher-arity capability is when dealing with units of measure. A person's weight is not just a number such as "200", it also --- 2197,2212 ---- rdf:value="020 - Library Science" l:Classification="Dewey Decimal Code"/> </Description> ! </RDF> !

    ! !
    ! Note: In the example above two namespace declarations exist for the ! same namespace. This is frequently needed when default namespaces ! are declared so that attributes that do not come from the namespace ! of the element may be specified, as is the case with the rdf:value ! attribute in the dc:Subject element above. !

    A common use of this higher-arity capability is when dealing with units of measure. A person's weight is not just a number such as "200", it also *************** *** 2102,2124 **** either pounds or kilograms. We could use a relationship with an additional arc to record the fact that John Smith is a rather strapping gentleman:

    !

    unit-qualified value D

    Figure 15: Unit of measure as a ternary relation

    which can be exchanged as:

    !
      <RDF
    !     xmlns="http://www.w3.org/TR/WD-rdf-syntax#"
          xmlns:n="http://www.nist.gov/units/">
          <Description about="John_Smith">
    !       <n:weight>
              <rdf:value>200</rdf:value>
              <n:units rdf:resource="http://www.nist.gov/units/Pounds"/>
            </n:weight>
          </Description>
    !   </RDF>

    provided the resource "Pounds" is defined in a NIST schema with the URI http://www.nist.gov/units/Pounds.

    --- 2214,2238 ---- either pounds or kilograms. We could use a relationship with an additional arc to record the fact that John Smith is a rather strapping gentleman:

    !

    unit-qualified value D

    Figure 15: Unit of measure as a ternary relation

    which can be exchanged as:

    !
    <RDF
    !   xmlns="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
        xmlns:n="http://www.nist.gov/units/">
        <Description about="John_Smith">
    !     <n:weight rdf:parseType="Resource">
            <rdf:value>200</rdf:value>
            <n:units rdf:resource="http://www.nist.gov/units/Pounds"/>
          </n:weight>
        </Description>
    ! </RDF>
    ! 

    provided the resource "Pounds" is defined in a NIST schema with the URI http://www.nist.gov/units/Pounds.

    *************** *** 2137,2144 ****

    Here is a description of a Web site home page using Dublin Core properties:

    !
      <rdf:RDF
    !     xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
          xmlns:dc="http://purl.org/metadata/dublin_core#">
          <rdf:Description about="http://www.dlib.org">
            <dc:Title>D-Lib Program - Research in Digital Libraries</dc:Title>
    --- 2251,2258 ----
      

    Here is a description of a Web site home page using Dublin Core properties:

    !
    <rdf:RDF
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
        xmlns:dc="http://purl.org/metadata/dublin_core#">
        <rdf:Description about="http://www.dlib.org">
          <dc:Title>D-Lib Program - Research in Digital Libraries</dc:Title>
    ***************
    *** 2158,2169 ****
            <dc:Format>text/html</dc:Format>
            <dc:Language>en</dc:Language>
          </rdf:Description>
    !   </rdf:RDF>

    The second example is of a published magazine.

    !
      <rdf:RDF
    !     xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
          xmlns:dc="http://purl.org/metadata/dublin_core#"
          xmlns:dcq="http://purl.org/metadata/dublin_core_qualifiers#">
          <rdf:Description about="http://www.dlib.org/dlib/may98/05contents.html">
    --- 2272,2284 ----
          <dc:Format>text/html</dc:Format>
          <dc:Language>en</dc:Language>
        </rdf:Description>
    ! </rdf:RDF>
    ! 

    The second example is of a published magazine.

    !
    <rdf:RDF
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
        xmlns:dc="http://purl.org/metadata/dublin_core#"
        xmlns:dcq="http://purl.org/metadata/dublin_core_qualifiers#">
        <rdf:Description about="http://www.dlib.org/dlib/may98/05contents.html">
    ***************
    *** 2171,2177 ****
              - May 1998</dc:Title>
            <dc:Description>D-LIB magazine is a monthly compilation of
             contributed stories, commentary, and briefings.</dc:Description>
    !       <dc:Contributor>
              <dcq:AgentType
                rdf:resource="http://purl.org/metadata/dublin_core_qualifiers#Editor"/>
              <rdf:value>Amy Friedlander</rdf:value>
    --- 2286,2292 ----
            - May 1998</dc:Title>
          <dc:Description>D-LIB magazine is a monthly compilation of
           contributed stories, commentary, and briefings.</dc:Description>
    !     <dc:Contributor rdf:parseType="Resource">
            <dcq:AgentType
      	rdf:resource="http://purl.org/metadata/dublin_core_qualifiers#Editor"/>
            <rdf:value>Amy Friedlander</rdf:value>
    ***************
    *** 2187,2205 ****
            </dc:Subject>
            <dc:Format>text/html</dc:Format>
            <dc:Identifier>urn:issn:1082-9873</dc:Identifier>
    !       <dc:Relation>
              <dcq:RelationType
                rdf:resource="http://purl.org/metadata/dublin_core_qualifiers#IsPartOf"/>
              <rdf:value resource="http://www.dlib.org"/>
            </dc:Relation>
          </rdf:Description>
    !   </rdf:RDF>

    The third example is of a specific article in the magazine referred to in the previous example.

    !
      <rdf:RDF
    !     xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
          xmlns:dc="http://purl.org/metadata/dublin_core#"
          xmlns:dcq="http://purl.org/metadata/dublin_core_qualifiers#">
          <rdf:Description about=
    --- 2302,2321 ----
          </dc:Subject>
          <dc:Format>text/html</dc:Format>
          <dc:Identifier>urn:issn:1082-9873</dc:Identifier>
    !     <dc:Relation rdf:parseType="Resource">
            <dcq:RelationType
      	rdf:resource="http://purl.org/metadata/dublin_core_qualifiers#IsPartOf"/>
            <rdf:value resource="http://www.dlib.org"/>
          </dc:Relation>
        </rdf:Description>
    ! </rdf:RDF>
    ! 

    The third example is of a specific article in the magazine referred to in the previous example.

    !
    <rdf:RDF
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
        xmlns:dc="http://purl.org/metadata/dublin_core#"
        xmlns:dcq="http://purl.org/metadata/dublin_core_qualifiers#">
        <rdf:Description about=
    ***************
    *** 2230,2247 ****
            <dc:Type>Electronic Document</dc:Type>
            <dc:Format>text/html</dc:Format>
            <dc:Language>en</dc:Language>
    !       <dc:Relation>
              <dcq:RelationType
                rdf:resource="http://purl.org/metadata/dublin_core_qualifiers#IsPartOf"/>
              <rdf:value resource="http://www.dlib.org/dlib/may98/05contents.html"/>
            </dc:Relation>
          </rdf:Description>
    !   </rdf:RDF>
    Note: Schema developers may be tempted to declare the values of certain properties to use a syntax corresponding to the XML Namespace ! qualified name abbreviation. We advise against using these qualified names inside property values as this may cause incompatibilities with future XML datatyping mechanisms. Furthermore, those fully versed in XML 1.0 features may --- 2346,2364 ---- <dc:Type>Electronic Document</dc:Type> <dc:Format>text/html</dc:Format> <dc:Language>en</dc:Language> ! <dc:Relation rdf:parseType="Resource"> <dcq:RelationType rdf:resource="http://purl.org/metadata/dublin_core_qualifiers#IsPartOf"/> <rdf:value resource="http://www.dlib.org/dlib/may98/05contents.html"/> </dc:Relation> </rdf:Description> ! </rdf:RDF> !
    Note: Schema developers may be tempted to declare the values of certain properties to use a syntax corresponding to the XML Namespace ! qualified name abbreviation. We advise against using these qualified names inside property values as this may cause incompatibilities with future XML datatyping mechanisms. Furthermore, those fully versed in XML 1.0 features may *************** *** 2251,2257 **** include user-defined entities.
    !

    7.5. PICS Labels

    The Platform for Internet Content Selection (PICS) --- 2368,2407 ---- include user-defined entities. !

    7.5. Values Containing Markup

    ! !

    When a property value is a literal that contains XML markup, the ! following syntax is used to signal to the RDF interpreter not to ! interpret the markup but rather to retain it as part of the value. ! The precise representation of the resulting value is not specified here.

    ! !

    In the following example, the value of the Title property is a literal ! containing some MATHML markup.

    ! !
    <rdf:Description
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
    !   xmlns:dc="http://purl.org/metadata/dublin_core#"
    !   xmlns="http://www.w3.org/TR/REC-mathml"
    !   rdf:about="http://mycorp.com/papers/NobelPaper1"/>
    ! 
    !   <dc:Title rdf:parseType="Literal">
    !     Ramifications of
    !        <apply>
    !       <power/>
    !       <apply>
    ! 	<plus/>
    ! 	<ci>a</ci>
    ! 	<ci>b</ci>
    !       </apply>
    !       <cn>2</cn>
    !     </apply>
    !     to World Peace
    !   </dc:Title>
    !   <dc:Creator>David Hume</dc:Creator>
    ! </rdf:Description>
    ! 
    ! !

    7.6. PICS Labels

    The Platform for Internet Content Selection (PICS) *************** *** 2286,2293 **** ratings (subject 2 density 1 color/hue 1)) --> !

      <rdf:RDF
    !     xmlns:rdf="http://www.w3.org/TR/1998/WD-rdf-syntax#"
          xmlns:pics="http://www.w3.org/TR/xxxx/WD-PICS-labels#"
          xmlns:gcf="http://www.gcf.org/v2.5">
          <rdf:Description about="http://w3.org/PICS/Overview.html" bagID="L01"
    --- 2436,2443 ----
                    ratings (subject 2 density 1 color/hue 1))
      -->
      
    ! 
    <rdf:RDF
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
        xmlns:pics="http://www.w3.org/TR/xxxx/WD-PICS-labels#"
        xmlns:gcf="http://www.gcf.org/v2.5">
        <rdf:Description about="http://w3.org/PICS/Overview.html" bagID="L01"
    ***************
    *** 2298,2304 ****
          <rdf:Description about="http://w3.org/PICS/Underview.html" bagID="L02"
            gcf:subject="2"
            gcf:density="1"
    !       gcf:color.hue="1">
      
          <rdf:Description aboutEach="#L01"
            pics:by="John Doe"
    --- 2448,2454 ----
        <rdf:Description about="http://w3.org/PICS/Underview.html" bagID="L02"
          gcf:subject="2"
          gcf:density="1"
    !     gcf:color.hue="1"/>
      
        <rdf:Description aboutEach="#L01"
          pics:by="John Doe"
    ***************
    *** 2309,2315 ****
            pics:by="Jane Doe"
            pics:on="1994.11.05T08:15-0500"
            pics:until="1995.12.31T23:59-0000"/>
    !   </rdf:RDF>

    Note that aboutEach is used to indicate that the PICS label options refer to the individual (rating) statements and not --- 2459,2466 ---- pics:by="Jane Doe" pics:on="1994.11.05T08:15-0500" pics:until="1995.12.31T23:59-0000"/> ! </rdf:RDF> !

    Note that aboutEach is used to indicate that the PICS label options refer to the individual (rating) statements and not *************** *** 2338,2345 **** ;http://www.w3.org/pub/WWW/TheProject.html --> !

      <rdf:RDF
    !     xmlns:rdf="http://www.w3.org/TR/1998/WD-rdf-syntax#"
          xmlns:pics="http://www.w3.org/TR/xxxx/WD-PICS-labels#"
          xmlns:ages="http://www.ages.org/our-service/v1.0/">
          <rdf:Description aboutEachPrefix="http://www.w3.org/WWW/" bagID="L03"
    --- 2489,2496 ----
      			  ;http://www.w3.org/pub/WWW/TheProject.html 
      -->
      
    ! 
    <rdf:RDF
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
        xmlns:pics="http://www.w3.org/TR/xxxx/WD-PICS-labels#"
        xmlns:ages="http://www.ages.org/our-service/v1.0/">
        <rdf:Description aboutEachPrefix="http://www.w3.org/WWW/" bagID="L03"
    ***************
    *** 2347,2353 ****
      
          <rdf:Description aboutEach="#L03"
            pics:by="abaird@w3.org"/>
    !   </rdf:RDF>

    The property age with the value "11" appears on every resource whose URI starts with the string --- 2498,2505 ---- <rdf:Description aboutEach="#L03" pics:by="abaird@w3.org"/> ! </rdf:RDF> !

    The property age with the value "11" appears on every resource whose URI starts with the string *************** *** 2358,2368 **** that "abaird@w3.org" was responsible for creating those statements.

    !

    7.6. Content Hiding For RDF inside HTML

    RDF, being well-formed XML, is suitable for direct inclusion in an ! HTML document as specified in ! [HTML]. When a fragment of RDF is incorporated into an HTML document some browsers will render any exposed string content. Exposed string content is anything that appears between the ">" that --- 2510,2521 ---- that "abaird@w3.org" was responsible for creating those statements.

    !

    7.7. Content Hiding For RDF inside HTML

    RDF, being well-formed XML, is suitable for direct inclusion in an ! HTML document when the user agent follows the HTML ! recommendations ! for error handling in invalid documents. When a fragment of RDF is incorporated into an HTML document some browsers will render any exposed string content. Exposed string content is anything that appears between the ">" that *************** *** 2376,2383 **** first part of the Dublin Core example from Section 7.4. could be written as:

    !
      <rdf:RDF
    !     xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
          xmlns:dc="http://purl.org/metadata/dublin_core#">
          <rdf:Description about="http://www.dlib.org"
            dc:Title="D-Lib Program - Research in Digital Libraries"
    --- 2529,2536 ----
      first part of the Dublin Core example from Section 7.4. could
      be written as:

    !
    <rdf:RDF
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
        xmlns:dc="http://purl.org/metadata/dublin_core#">
        <rdf:Description about="http://www.dlib.org"
          dc:Title="D-Lib Program - Research in Digital Libraries"
    ***************
    *** 2386,2399 ****
             publishing."
            dc:Publisher="Corporation For National Research Initiatives"
            dc:Date="1995-01-07"/>
    !   </rdf:RDF>

    Rewriting to avoid exposed content will work for most common cases. One common but less obvious case is container descriptions. Consider the first part of the example in Section 7.2.:

    !
      <rdf:RDF
    !     xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
          xmlns:dc="http://purl.org/metadata/dublin_core#"> 
          <rdf:Description about="http://www.foo.com/cool.html"> 
            <dc:Creator>
    --- 2539,2553 ----
           publishing."
          dc:Publisher="Corporation For National Research Initiatives"
          dc:Date="1995-01-07"/>
    ! </rdf:RDF>
    ! 

    Rewriting to avoid exposed content will work for most common cases. One common but less obvious case is container descriptions. Consider the first part of the example in Section 7.2.:

    !
    <rdf:RDF
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
        xmlns:dc="http://purl.org/metadata/dublin_core#"> 
        <rdf:Description about="http://www.foo.com/cool.html"> 
          <dc:Creator>
    ***************
    *** 2403,2414 ****
              </rdf:Seq>
            </dc:Creator>
          </rdf:Description> 
    !   </rdf:RDF> 

    To rewrite this with no exposed content, we use the following form:

    !
      <rdf:RDF
    !     xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
          xmlns:dc="http://purl.org/metadata/dublin_core#"> 
          <rdf:Description about="http://www.foo.com/cool.html"> 
            <dc:Creator>
    --- 2557,2569 ----
            </rdf:Seq>
          </dc:Creator>
        </rdf:Description> 
    ! </rdf:RDF>
    ! 

    To rewrite this with no exposed content, we use the following form:

    !
    <rdf:RDF
    !   xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
        xmlns:dc="http://purl.org/metadata/dublin_core#"> 
        <rdf:Description about="http://www.foo.com/cool.html"> 
          <dc:Creator>
    ***************
    *** 2417,2423 ****
                rdf:_2="Jacky Crystal"/>
            </dc:Creator>
          </rdf:Description> 
    !   </rdf:RDF> 

    Note here that the li element cannot be used as an attribute due to the XML rule forbidding multiple occurrences of the --- 2572,2579 ---- rdf:_2="Jacky Crystal"/> </dc:Creator> </rdf:Description> ! </rdf:RDF> !

    Note here that the li element cannot be used as an attribute due to the XML rule forbidding multiple occurrences of the *************** *** 2427,2436 ****

    A complete HTML document containing RDF metadata describing itself is:

    !
      <html>
        <head>
          <rdf:RDF
    !       xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
            xmlns:dc="http://purl.org/metadata/dublin_core#"> 
            <rdf:Description about=""> 
      	<dc:Creator>
    --- 2583,2592 ----
      
      

    A complete HTML document containing RDF metadata describing itself is:

    !
    <html>
      <head>
        <rdf:RDF
    !     xmlns:rdf="http://w3.org/TR/1999/PR-rdf-syntax-19990105#"
          xmlns:dc="http://purl.org/metadata/dublin_core#"> 
          <rdf:Description about=""> 
            <dc:Creator>
    ***************
    *** 2444,2450 ****
        <body>
        <P>This is a fine document.</P>
        </body>
    !   </html>

    The HTML document above should be accepted by all browsers compliant with HTML 3.2 and later and should only render the --- 2600,2607 ---- <body> <P>This is a fine document.</P> </body> ! </html> !

    The HTML document above should be accepted by all browsers compliant with HTML 3.2 and later and should only render the *************** *** 2473,2482 **** of Michigan), Tim Berners-Lee (W3C), Dan Connolly (W3C), Jim Miller (W3C, emeritus), Ralph Swick (W3C). Dan Brickley (UK Bristol) joined the RDF Schema activity and brought us lots of sage advice in the final ! stages of this work.

    This document is the collective work of the Working Group. The editors ! are indebted to the Working Group for helping to create this specification.

    Appendix A. Glossary

    --- 2630,2645 ---- of Michigan), Tim Berners-Lee (W3C), Dan Connolly (W3C), Jim Miller (W3C, emeritus), Ralph Swick (W3C). Dan Brickley (UK Bristol) joined the RDF Schema activity and brought us lots of sage advice in the final ! stages of this work. Martin Dürst (W3C) reviewed several working ! drafts and made a number of suggestions for improvement on behalf of ! the W3C Internationalization Working Group. ! Janne Saarela (W3C) performed a priceless service by creating a 'clean ! room' implementation from ! our working drafts.

    This document is the collective work of the Working Group. The editors ! are indebted to the Working Group for helping to create and polish ! this specification.

    Appendix A. Glossary

    *************** *** 2495,2503 **** name="value" portions of an XML tag.
    Element
    As used here, this term refers to a specific XML ! syntactic construct; i.e. the material between matching XML start and end tags.
    Node
    A representation of a resource or a literal in a graph form; specifically, a vertex in a directed labeled graph.
    --- 2658,2672 ---- name="value" portions of an XML tag.
    Element
    As used here, this term refers to a specific XML ! syntactic construct; i.e., the material between matching XML start and end tags.
    +
    Literal
    The most primitive value type represented in RDF, + typically a string of characters. The content of a literal is not + interpreted by RDF itself and may contain additional XML markup. + Literals are distinguished from Resources in that the RDF model + does not permit literals to be the subject of a statement.
    +
    Node
    A representation of a resource or a literal in a graph form; specifically, a vertex in a directed labeled graph.
    *************** *** 2544,2554 ****
  • The Description may be external to the resource but supplied by the transfer mechanism in the same retrieval transaction as that which returns ! the resource ("along-with"; e.g. via HTTP).
  • The Description may be retrieved independently from the resource, including ! from a different source ("service bureau"; e.g. using ! HTTP).
  • The Description may contain the resource ("wrapped"; e.g. RDF itself).
  • --- 2713,2723 ----
  • The Description may be external to the resource but supplied by the transfer mechanism in the same retrieval transaction as that which returns ! the resource ("along-with"; e.g. with HTTP GET or HEAD).
  • The Description may be retrieved independently from the resource, including ! from a different source ("service bureau"; e.g. using ! HTTP GET).
  • The Description may contain the resource ("wrapped"; e.g. RDF itself).
  • *************** *** 2565,2574 **** on demand. The logic and syntax of RDF schemas are described in a separate document, [RDFSchema].

    !

    B.1. Embedding in HTML

    !

    The recommended technique for embedding RDF expressions in an HTML document ! is simply to insert the RDF in-line as shown in Example 7.6. This will make the resulting document non-conformant to HTML specifications up to and including HTML 4.0 but the W3C expects that the HTML --- 2734,2742 ---- on demand. The logic and syntax of RDF schemas are described in a separate document, [RDFSchema].

    !

    The recommended technique for embedding RDF expressions in an HTML document ! is simply to insert the RDF in-line as shown in Example 7.7. This will make the resulting document non-conformant to HTML specifications up to and including HTML 4.0 but the W3C expects that the HTML *************** *** 2590,2596 ****

  • All HTML browsers conforming to specifications up to and including HTML 4.0 will render any content appearing in RDF property values expressed ! as XML elements (i.e. production [6.12]).

    Authors concerned about preventing their RDF content from rendering in old browsers may use the abbreviated syntax (propAttr form) to move --- 2758,2764 ----
  • All HTML browsers conforming to specifications up to and including HTML 4.0 will render any content appearing in RDF property values expressed ! as XML elements (i.e., production [6.12]).

    Authors concerned about preventing their RDF content from rendering in old browsers may use the abbreviated syntax (propAttr form) to move *************** *** 2605,2617 ****
      <LINK rel="meta" href="mydocMetadata.DC.RDF">
    -

    B.2. Transporting in HTTP Headers

    - -

    To Be Specified. We expect to specify a simple extension to HTTP - that allows a client to request that RDF metadata be included in a header - along with the document. We will deal here only with the HTTP protocol; - we hope that other protocols will be similarly extended.

    -

    Appendix C: Notes about Usage

    C.1. Property Names

    --- 2773,2778 ---- *************** *** 2657,2750 ****
    [ISO10646]
    -
    ISO/IEC 10646. The applicable version of this standard is defined in the XML specification [XML].
    [NAMESPACES]
    -
    Namespaces in XML; Bray, Hollander, Layman eds, World Wide Web Consortium ! Working Draft; http://www.w3.org/TR/1998/WD-xml-names-19980916.
    [PICS]
    -
    PICS Label Distribution Label Syntax and Communication Protocols, Version 1.1, W3C Recommendation 31-October-96; http://www.w3.org/TR/REC-PICS-labels.
    [RDFSchema]
    -
    Resource Description Framework (RDF) Schemas; Brickley, Guha, Layman eds., World Wide Web Consortium Working Draft; http://www.w3.org/TR/WD-rdf-schema
    !
    [Unicode]
    !
    The Unicode Standard. The applicable version of this standard is defined ! in the XML specification [XML].
    [URI]
    -
    Uniform Resource Identifiers (URI): Generic Syntax; Berners-Lee, Fielding, Masinter, Internet Draft Standard August, 1998; RFC2396.
    [XML]
    -
    Extensible Markup Language (XML) 1.0; World Wide Web Consortium Recommendation; http://www.w3.org/TR/REC-xml.
    [XMLinHTML]
    -
    XML in HTML Meeting Report; Connolly, Wood eds.; World Wide Web Consortium Note; http://www.w3.org/TR/NOTE-xh.

    Appendix E: Changes

    !

    The most significant changes from the ! 1998-08-19 Working Draft ! are listed here.

    ! !
      !
    1. To provide a degree of "futureproofing", a ! part of the URI space is reserved ! for future RDF additions ! such that behavior of processors conforming to the version 1 ! specification can be guaranteed. We caution ! against the use of either qualified names or user-defined entities to ! abbreviate property values.
    2. ! !

    3. Several pieces of basic vocabulary have been changed to clarify ! terminology. Of particular note in this regard is the term ! property which previously meant the combination of three ! things; a resource identifier, an attribute (formally called a ! PropertyType in the previous draft), and the value of that ! attribute for that ! resource. Now this combination is formally called a statement ! and the old term PropertyType is shortened to just Property. ! This usage of "property" conforms more closely to common ! usage.
    4. ! !

    5. A second piece of terminology that now has a different usage is ! the value property. The value property is no longer ! used when reifying statements, but is reserved as a 'convenience' ! property needed by many schemas. See Section ! 2.3.
    6. ! !

    7. ! The recommended representation of higher-arity (non-binary) relations has ! changed in order to establish a better direction for future evolution. ! The property previously named "instanceOf" is renamed ! "type" and a specific production permitting this type ! property to be specified in attribute form is added to the grammar. ! We use the terminology "resource identifier" now replacing "URI reference" ! from earlier drafts where the new term refers to the fully ! resolved URI plus fragment (anchor) identifier that is derived from a ! URI reference. ! Some additional editorial improvements have also been made as ! a result of the comments received on previous drafts.
    8. !

    --- 2818,2882 ----
    [ISO10646]
    ISO/IEC 10646. The applicable version of this standard is defined in the XML specification [XML].
    [NAMESPACES]
    Namespaces in XML; Bray, Hollander, Layman eds, World Wide Web Consortium ! Working Draft; http://www.w3.org/TR/1998/PR-xml-names-19981117.
    [PICS]
    PICS Label Distribution Label Syntax and Communication Protocols, Version 1.1, W3C Recommendation 31-October-96; http://www.w3.org/TR/REC-PICS-labels.
    [RDFSchema]
    Resource Description Framework (RDF) Schemas; Brickley, Guha, Layman eds., World Wide Web Consortium Working Draft; http://www.w3.org/TR/WD-rdf-schema
    !
    [RFC2119]
    !
    Key words for use in RFCs to Indicate Requirement Levels; ! S. Bradner, March 1997; ! RFC2119.
    !
    [Unicode]
    !
    The Unicode Standard. The applicable version of this standard is ! the version defined by the XML specification [XML].
    [URI]
    Uniform Resource Identifiers (URI): Generic Syntax; Berners-Lee, Fielding, Masinter, Internet Draft Standard August, 1998; RFC2396.
    [XML]
    Extensible Markup Language (XML) 1.0; World Wide Web Consortium Recommendation; http://www.w3.org/TR/REC-xml.
    [XMLinHTML]
    XML in HTML Meeting Report; Connolly, Wood eds.; World Wide Web Consortium Note; http://www.w3.org/TR/NOTE-xh.

    Appendix E: Changes

    !

    The most significant change from the ! 1998-10-08 Working Draft ! is the addition of the parseType attribute in the XML grammar. ! This attribute addresses two feature requests received from several ! commentors that made the WG agree to reconsider previous decisions: ! the desire to incorporate uninterpreted (by RDF) markup within an ! RDF literal value and the desire for an additional shorthand ! abbreviation for the common case of a property value that is an ! in-line resource.

    ! !

    Clarifications were made to the portions of the specification ! referring to string equivalence with reference to future work of ! the W3C Internationalization Working Group.

    ! !

    Other small editorial corrections and wording clarifications are ! incorporated as a result of comments received from W3C Members and ! from non-Members.


    *************** *** 2752,2757 **** --- 2884,2892 ---- Ralph R. Swick <swick@w3.org>

    Revision History:
    + 5-January-1999: publish as W3C Proposed Recommendation.
    + 16-December-1998: final draft intended as Proposed Recommendation.
    + 30-October-1998: incorporate Last Call review comments, add parseType, improve the I18N wordings.
    8-October-1998: final cleanup, move changes to Appendix E, publish as Last Call.
    7-October-1998: reserve a bit of schema URI space for futureproofing, add rdf:value.
    2-October-1998: major renaming; statements, predicates, subjects, objects.
    *************** *** 2774,2786 ****
    ! Last updated: $Date: 1998/10/08 21:55:02 $

    ! Last updated: $Date: 1999/01/06 19:44:16 $

    --- 2946,2952 ---- s:comment="Identifies the object of a statement when representing the statement in reified form" />