Copyright © 2008 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply.
This document is the specification for a vocabulary to represent Content in RDF. It contains as well introductory information on its usage and some examples. This framework is designed to express in a flexible manner any type of content available on the Web or in local storage media.
This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.
Please send comments about this document to the mailing list of the ERT WG. The archives for this list are publicly available.
This is a W3C Working Draft for Representing Content in RDF vocabulary. Publication as a Working Draft 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 this document as other than work in progress.
This document was produced under the 5 February 2004 W3C Patent Policy. The Working Group maintains a public list of patent disclosures relevant to this document; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) with respect to this specification should disclose the information in accordance with section 6 of the W3C Patent Policy.
This document has been produced as part of the W3C Web Accessibility Initiative (WAI). The goals of the Evaluation and Repair Tools Working Group (ERT WG) are discussed in the Working Group charter. The ERT WG is part of the WAI Technical Activity.
This document is the specification for a vocabulary to represent Content in RDF. It also contains introductory information on its usage and illustrative examples. This framework is designed to express in a flexible manner any type of content available on the Web or in local storage media.
In this section we will present the namespaces of the vocabulary, the document conventions and some typical use cases.
Table 1 presents the namespaces typically used by this vocabulary (rdfs
and owl
namespaces are normally only used in the schema). The core namespace has the URI http://www.w3.org/2007/content#
and the prefix cnt
. The prefix notation presents the typical conventions used in the Web and in this document to denote a given namespace, and can be freely modified.
Namespace prefix | Namespace URI | Description |
---|---|---|
cnt |
http://www.w3.org/2007/content# |
The default namespace for Representing Content in RDF. |
rdf |
http://www.w3.org/1999/02/22-rdf-syntax-ns# |
Default RDF namespace [RDF]. |
rdfs |
http://www.w3.org/2000/01/rdf-schema# |
Default RDF schema namespace [RDFS]. |
owl |
http://www.w3.org/2002/07/owl# |
Default OWL namespace [OWL]. |
The keywords must, required, recommended, should, may, and optional are used in accordance with [RFC2119].
As stated earlier, this framework is designed in an open way to facilitate different implementation scenarios. The origin of the application comes from vocabularies describing testing scenarios like EARL [EARL]. Typical applications could be:
This list is not exclusive.
This document assumes the following background knowledge:
Although the concepts of the Semantic Web are simple, their abstraction with RDF is known to bring difficulties to beginners. It is recommended to read carefully the aforementioned references and other tutorials found on the Web. It must be also borne in mind that RDF is primarily targeted to be machine processable, and therefore, some of its expressions are not very intuitive for developers used to work with XML only. The examples will be serialized using the abbreviated RDF/XML notation.
This section presents a description of the classes and properties of this RDF vocabulary. We present every class together with its properties and subclasses. We also include whenever relevant short snippets and examples.
The Content class is an overarching class with no properties. It is recommended always to use one of its subclasses. A resource of type Content represents any content that could be found on the Web, in an Intranet or in local storage media, for example. There is no restriction within the vocabulary scope on what can be represented with this class: textual content, binary files (e.g., images or movies), XML files, etc.
There are three subclasses from the Content class: Base64Content, TextContent and XMLContent.
The Base64Content class is a subclass of the Content class. A resource of type Base64Content represents Base64 encoded binary content (as defined by [RFC2045]) and can be used for any type of content, although its more typical use case is for binary files.
The following property may appear in resources of type Base64Content (with a maximum cardinality of 1):
The following property must appear in resources of type Base64Content:
Example 2.1: This example displays the representation of the W3C logo as a Base64Content resource. (Note: due to its length, the encoded string has been chunked until {...}
.)
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cnt="http://www.w3.org/2007/content#"> <cnt:Base64Content rdf:about="http://www.w3.org/Icons/w3c_home.png"> <cnt:bytes>77+9UE5HDQoaCgAAAA1JSERSAAAASAAAADAIAwAAAO+{...}</cnt:bytes> </cnt:Base64Content> </rdf:RDF>
The TextContent class is a subclass of the Content class. A resource of type TextContent represents any type of textual content.
The following property may appear in resources of type TextContent (with a maximum cardinality of 1):
The following property must appear in resources of type TextContent:
Example 2.2: The following example represents a CSS file as a TextContent resource.
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cnt="http://www.w3.org/2007/content#"> <cnt:TextContent rdf:about="http://example.org/example.css"> <cnt:characterEncoding>UTF-8</cnt:characterEncoding> <cnt:chars>body { color: #000; background: #fff } h1 { font-size: 1.6em } h2 { font-size: 1.3em }</cnt:chars> </cnt:TextContent> </rdf:RDF>
The XMLContent class is a subclass of the Content class. A resource of type XMLContent represents XML content.
The following properties may appear in resources of type XMLContent (with a maximum cardinality of 1):
The following property must appear in resources of type XMLContent:
Example 2.3: The XHTML page with the following source code:
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <head> <title>The title</title> </head> <body> <p>Some paragraph.</p> </body> </html>
could be represented as this XMLContent resource.
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cnt="http://www.w3.org/2007/content#"> <cnt:XMLContent rdf:about="http://example.org/example203.html"> <cnt:xmlRest rdf:parseType="Literal"><html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <head> <title>The title</title> </head> <body> <p>Some paragraph.</p> </body> </html> </cnt:xmlRest> </cnt:XMLContent> </rdf:RDF>
For the use of xmlDecl, xmlLeadingMisc and doctypeDecl see 2.7. A practical example.
A resource of type XMLDecl represents an XML declaration. This class is normally used in conjunction with the XMLContent class, when the corresponding XML file has an XML declaration. The resources are linked via the xmlDecl property.
The following properties may appear in resources of type XMLDecl:
The following property must appear in resources of type XMLDecl:
Example 2.4: A typical XML declaration:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
Can be expressed as the following XMLDecl
resource:
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cnt="http://www.w3.org/2007/content#"> <cnt:XMLDecl rdf:ID="xmld0"> <cnt:xmlStandalone>no</cnt:xmlStandalone> <cnt:xmlEncoding>UTF-8</cnt:xmlEncoding> <cnt:xmlVersion>1.0</cnt:xmlVersion> </cnt:XMLDecl> </rdf:RDF>
A resource of type DoctypeDecl represents a document type declaration. Likewise XMLDecl, this class is normally used in conjunction with the XMLContent class, when the corresponding XML file has a document type declaration. The resources are linked via the doctypeDecl property.
The following properties may appear in resources of type DoctypeDecl:
The following property must appear in resources of type DoctypeDecl:
Example 2.5: A typical XHTML 1.0 Strict document type declaration:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
could be represented as the following DoctypeDecl
resource:
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cnt="http://www.w3.org/2007/content#"> <cnt:DoctypeDecl rdf:ID="dtd0"> <cnt:systemId>http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd</cnt:systemId> <cnt:publicId>-//W3C//DTD XHTML 1.0 Strict//EN</cnt:publicId> <cnt:doctypeName>html</cnt:doctypeName> </cnt:DoctypeDecl> </rdf:RDF>
To understand the versatility of the vocabulary, let us assume we have a given XHTML page containing an XML declaration, a comment preceding a document type declaration and some XHTML elements.
Example 2.6: A typical XHTML page.
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <!-- this is a comment --> <!DOCTYPE html "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> <head> <title>The title</title> </head> <body> <p>Some paragraph.</p> </body> </html>
This page could be represented as simple TextContent:
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cnt="http://www.w3.org/2007/content#"> <cnt:TextContent rdf:about="http://example.org/example207.html"> <cnt:chars><?xml version="1.0" encoding="UTF-8" standalone="no" ?> <!-- this is a comment --> <!DOCTYPE html "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>The title</title> </head> <body> <p>Some paragraph.</p> </body> </html></cnt:chars> </cnt:TextContent> </rdf:RDF>
or likewise as XMLContent. The information from the XML declaration is modelled as an XMLDecl resource and refered to from the XMLContent resource by the xmlDecl property. As the comment <!-- this is a comment -->
precedes the document type declaration a xmlLeadingMisc property is created with its object literal containing the comment. The document type declaration is modelled as a DoctypeDecl resource and refered to from the XMLContent resource by the doctypeDecl property.
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cnt="http://www.w3.org/2007/content#" xml:base="http://example.org/example208.html"> <cnt:DoctypeDecl rdf:ID="dtd0"> <cnt:systemId>http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd</cnt:systemId> <cnt:publicId>-//W3C//DTD XHTML 1.0 Strict//EN</cnt:publicId> <cnt:doctypeName>html</cnt:doctypeName> </cnt:DoctypeDecl> <cnt:XMLDecl rdf:ID="xmld0"> <cnt:xmlStandalone>no</cnt:xmlStandalone> <cnt:xmlEncoding>UTF-8</cnt:xmlEncoding> <cnt:xmlVersion>1.0</cnt:xmlVersion> </cnt:XMLDecl> <cnt:XMLContent rdf:about="#"> <cnt:xmlLeadingMisc rdf:parseType="Literal"><!-- this is a comment --></cnt:xmlLeadingMisc> <cnt:doctypeDecl rdf:resource="#dtd0" /> <cnt:xmlDecl rdf:resource="#xmld0" /> <cnt:xmlRest rdf:parseType="Literal"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>The title</title> </head> <body> <p>Some paragraph.</p> </body> </html></cnt:xmlRest> </cnt:XMLContent> </rdf:RDF>
We have identified some situations to make clear when to create which type of content resources.
Situation A: Given the byte sequence of non-text content (byteSeq) read from a file system. A cnt:Base64Content resource may be created with a cnt:bytes property with an object literal created from byteSeq. But no cnt:TextContent resource must be created, although in some cases it's technically possible to create a character sequence from the byte sequence byteSeq using some character encoding.
Situation B: Given the byte sequence of text content (byteSeq) received from a web server and an appropriate character encoding (ce). A cnt:Base64Content resource may be created with a cnt:bytes property with an object literal created from byteSeq. After transforming byteSeq to character sequence charSeq using character encoding ce, a cnt:TextContent resource may be created with cnt:chars property with an object literal charSeq and cnt:characterEncoding property with an object literal ce.
Situation C: Given the byte sequence of text content (byteSeq) received from a web server and an inappropriate character encoding (ce). A cnt:Base64Content resource may be created with a cnt:bytes property with an object literal created from byteSeq. Because transforming byteSeq to a character sequence charSeq using character encoding ce fails, no cnt:TextContent resource can be created.
Situation D: Given the character sequence of text content (charSeq) created in memory and an appropriate character encoding (ce). A cnt:TextContent resource may be created with a cnt:chars property with an object literal created from charSeq. After transforming charSeq to byte sequence byteSeq using character encoding ce, a cnt:Base64Content resource may be created with cnt:bytes property with an object literal byteSeq and cnt:characterEncoding property with an object literal ce.
Situation E: Given the byte sequence of wellformed XML content (byteSeq) received from a web server and an appropriate character encoding (ce). cnt:Base64Content and cnt:TextContent resources may be created as in situation B. Additionally, an cnt:XMLContent resource may be created.
Situation F: Given a DOM Document in memory, originally created by parsing some XML source, but afterwards changed by DOM operations. A cnt:XMLDecl resource may be created from the information in the Document node itself, and a cnt:DoctypeDecl resource from the information in the DocumentType node. A cnt:XMLContent resource may be created after serializing the relevant child nodes of the Document node (1. Comment and ProcessingInstruction nodes preceding a DocumentType node, and 2. nodes following a DocumentType node) to create object literals for cnt:xmlLeadingMisc and cnt:xmlRest. See the Mapping between DOM and the Content-in-RDF vocabulary.
The vocabulary provides a framework that allows the representation of any type of content. Of course, there are many possibilities for extensions that will allow the inclusion of additional metadata, like, e.g., that included in some multimedia formats. Typical scenarios for extensions could be:
However, at the point of writing this specification, the Working Group has decided to provide the basic framework that will support the immediate needs of vocabularies using this specification like EARL [EARL], leaving the room open for further extensions as new use cases are presented to us.
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns="http://www.w3.org/2007/content#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xml:base="http://www.w3.org/2007/content"> <owl:Ontology rdf:about=""> <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string" >Copyright © 2008 World Wide Web Consortium</owl:versionInfo> </owl:Ontology> <!-- Classes --> <rdfs:Class rdf:ID="Base64Content"> <rdfs:subClassOf> <owl:Restriction> <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:cardinality> <owl:onProperty> <rdf:Property rdf:about="#bytes"/> </owl:onProperty> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#characterEncoding"/> </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:label xml:lang="en">Base64 content</rdfs:label> <rdfs:comment xml:lang="en">The base64 encoded content (can be used for all types of content)</rdfs:comment> <rdfs:subClassOf rdf:resource="#Content"/> </rdfs:Class> <rdfs:Class rdf:about="#Content"> <rdfs:label xml:lang="en">Content</rdfs:label> <rdfs:comment xml:lang="en">The message body content</rdfs:comment> </rdfs:Class> <rdfs:Class rdf:ID="DoctypeDecl"> <rdfs:label xml:lang="en">Document type declaration</rdfs:label> <rdfs:comment xml:lang="en">The document type declaration</rdfs:comment> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#doctypeName"/> </owl:onProperty> <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:cardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#internalSubset"/> </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#publicId"/> </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#systemId"/> </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> </rdfs:Class> <rdfs:Class rdf:ID="TextContent"> <rdfs:subClassOf> <owl:Restriction> <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:cardinality> <owl:onProperty> <rdf:Property rdf:about="#chars"/> </owl:onProperty> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#characterEncoding"/> </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:label xml:lang="en">Text content</rdfs:label> <rdfs:comment xml:lang="en">The text content (can be used for non-XML-wellformed text resources)</rdfs:comment> <rdfs:subClassOf rdf:resource="#Content"/> </rdfs:Class> <rdfs:Class rdf:ID="XMLContent"> <rdfs:label xml:lang="en">XML content</rdfs:label> <rdfs:comment xml:lang="en">The XML content (can be used for XML-wellformed resource)</rdfs:comment> <rdfs:subClassOf rdf:resource="#Content"/> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#characterEncoding"/> </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#xmlDecl"/> </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#doctypeDecl"/> </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#xmlLeadingMisc"/> </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#xmlRest"/> </owl:onProperty> <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:cardinality> </owl:Restriction> </rdfs:subClassOf> </rdfs:Class> <rdfs:Class rdf:ID="XMLDecl"> <rdfs:subClassOf> <owl:Restriction> <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:cardinality> <owl:onProperty> <rdf:Property rdf:about="#xmlVersion"/> </owl:onProperty> </owl:Restriction> </rdfs:subClassOf> <rdfs:comment xml:lang="en">The XML declaration</rdfs:comment> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#xmlEncoding"/> </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <rdf:Property rdf:about="#xmlStandalone"/> </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:label xml:lang="en">XML declaration</rdfs:label> </rdfs:Class> <!-- Properties --> <rdf:Property rdf:about="#bytes"> <rdfs:label xml:lang="en">Base64 encoded byte sequence</rdfs:label> <rdfs:comment xml:lang="en">The Base64 encoded byte sequence of the content</rdfs:comment> <rdfs:domain rdf:resource="#Base64Content"/> </rdf:Property> <rdf:Property rdf:about="#characterEncoding"> <rdfs:label xml:lang="en">Character encoding</rdfs:label> <rdfs:comment xml:lang="en">The character encoding used create a character sequence from a byte sequence or vice versa</rdfs:comment> </rdf:Property> <rdf:Property rdf:about="#chars"> <rdfs:comment xml:lang="en">The character sequence of the content</rdfs:comment> <rdfs:domain rdf:resource="#TextContent"/> <rdfs:label xml:lang="en">Character sequence</rdfs:label> </rdf:Property> <rdf:Property rdf:about="#doctypeDecl"> <rdfs:label xml:lang="en">Document type declaration</rdfs:label> <rdfs:comment xml:lang="en">The document type declaration</rdfs:comment> <rdfs:domain rdf:resource="#XMLContent"/> <rdfs:range rdf:resource="#DoctypeDecl"/> </rdf:Property> <rdf:Property rdf:about="#doctypeName"> <rdfs:label xml:lang="en">Document type name</rdfs:label> <rdfs:comment xml:lang="en">The document type name</rdfs:comment> <rdfs:domain rdf:resource="#DoctypeDecl"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/> </rdf:Property> <rdf:Property rdf:about="#internalSubset"> <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string" >The internal subset of the DTD</rdfs:comment> <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string" >Internal DTD subset</rdfs:label> <rdfs:domain rdf:resource="#DoctypeDecl"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/> </rdf:Property> <rdf:Property rdf:about="#publicId"> <rdfs:label xml:lang="en">Public ID</rdfs:label> <rdfs:comment xml:lang="en">The document type declarations's public identifier</rdfs:comment> <rdfs:domain rdf:resource="#DoctypeDecl"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/> </rdf:Property> <rdf:Property rdf:about="#systemId"> <rdfs:label xml:lang="en">System ID</rdfs:label> <rdfs:comment xml:lang="en">The document type declarations's system identifier (typed: xsd:anyURI)</rdfs:comment> <rdfs:domain rdf:resource="#DoctypeDecl"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/> </rdf:Property> <rdf:Property rdf:about="#xmlDecl"> <rdfs:label xml:lang="en">XML declaration</rdfs:label> <rdfs:comment xml:lang="en">The XML declaration</rdfs:comment> <rdfs:domain rdf:resource="#XMLContent"/> <rdfs:range rdf:resource="#XMLDecl"/> </rdf:Property> <rdf:Property rdf:about="#xmlEncoding"> <rdfs:label xml:lang="en">XML character encoding</rdfs:label> <rdfs:comment xml:lang="en">The XML character encoding</rdfs:comment> <rdfs:domain rdf:resource="#XMLDecl"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/> </rdf:Property> <rdf:Property rdf:about="#xmlLeadingMisc"> <rdfs:label xml:lang="en">XML leading misc</rdfs:label> <rdfs:comment xml:lang="en">The XML content preceding the document type declaration</rdfs:comment> <rdfs:domain rdf:resource="#XMLContent"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#XMLLiteral"/> </rdf:Property> <rdf:Property rdf:about="#xmlRest"> <rdfs:label xml:lang="en">XML rest</rdfs:label> <rdfs:comment xml:lang="en">The XML content following the document type declaration</rdfs:comment> <rdfs:domain rdf:resource="#XMLContent"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#XMLLiteral"/> </rdf:Property> <rdf:Property rdf:about="#xmlStandalone"> <rdfs:label xml:lang="en">XML standalone document declaration</rdfs:label> <rdfs:comment xml:lang="en">The XML standalone document declaration</rdfs:comment> <rdfs:domain rdf:resource="#XMLDecl"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/> </rdf:Property> <rdf:Property rdf:about="#xmlVersion"> <rdfs:label xml:lang="en">XML version</rdfs:label> <rdfs:comment xml:lang="en">The XML version</rdfs:comment> <rdfs:domain rdf:resource="#XMLDecl"/> <rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/> </rdf:Property> </rdf:RDF>
There are no limitations known at the time of writing this specification.
The following terms are defined by this specification:
Class name | Label | Allowable types | Required properties | Optional properties |
---|---|---|---|---|
cnt:Base64Content | Base64 encoded binary content | cnt:bytes | cnt:characterEncoding | |
cnt:Content | Content | cnt:Base64Content, cnt:TextContent, cnt:XMLContent | ||
cnt:DoctypeDecl | Document type declaration | cnt:doctypeName | cnt:publicId, cnt:systemId, cnt:internalSubset | |
cnt:TextContent | Textual content | cnt:chars | cnt:characterEncoding | |
cnt:XMLContent | XML content | cnt:xmlRest | cnt:characterEncoding, cnt:xmlLeadingMisc, cnt:doctypeDecl | |
cnt:XMLDecl | XML declaration | cnt:xmlVersion | cnt:xmlEncoding, cnt:xmlStandalone |
Property name | Label | Domain | Range | Restriction |
---|---|---|---|---|
cnt:bytes | Bytes | cnt:Base64Content | Literal | Exactly one per cnt:Base64Content |
cnt:characterEncoding | Character encoding | Literal | At most one per cnt:Base64Content, cnt:TextContent or cnt:XMLContent | |
cnt:chars | Characters | cnt:TextContent | Literal | Exactly one per cnt:TextContent |
cnt:doctypeDecl | Document type declaration | cnt:XMLContent | cnt:DoctypeDecl | At most one per cnt:XMLContent |
cnt:doctypeName | Document type name | cnt:DoctypeDecl | Literal | Exactly one per cnt:DoctypeDecl |
cnt:internalSubset | Internal subset | cnt:DoctypeDecl | Literal | At most one per cnt:DoctypeDecl |
cnt:publicId | Formal public identifier | cnt:DoctypeDecl | Literal | At most one per cnt:DoctypeDecl |
cnt:systemId | System identifier | cnt:DoctypeDecl | Literal | At most one per cnt:DoctypeDecl |
cnt:xmlDecl | XML declaration | cnt:XMLContent | cnt:XMLDecl | At most one per cnt:XMLContent |
cnt:xmlEncoding | XML character encoding | cnt:XMLDecl | Literal | At most one per cnt:XMLDecl |
cnt:xmlLeadingMisc | XML preceding the document type declaration | cnt:XMLContent | XML Literal | At most one per cnt:XMLContent |
cnt:xmlRest | XML following the document type declaration | cnt:XMLContent | XML Literal | Exactly one per cnt:XMLContent |
cnt:xmlStandalone | XML standalone document declaration | cnt:XMLDecl | Literal | At most one per cnt:XMLDecl |
cnt:xmlVersion | XML version | cnt:XMLDecl | Literal | Exactly one per cnt:XMLDecl |
DOM property | Content-in-RDF property |
---|---|
Document.xmlVersion | xmlVersion |
Document.xmlEncoding | xmlEncoding |
Document.xmlStandalone | xmlStandalone |
Document.doctype | doctypeDecl |
DocumentType.name | doctypeName |
DocumentType.publicId | publicId |
DocumentType.systemId | systemId |
DocumentType.internalSubset | internalSubset |
Since the 20 February 2008 editorial draft, this document has changed as follows:
http://www.w3.org/TR/EARL10/
http://www.w3.org/TR/1999/REC-rdf-syntax-19990222/
http://www.w3.org/TR/rdf-primer/
http://www.w3.org/TR/rdf-schema/
http://www.w3.org/TR/rdf-syntax-grammar/
http://www.ietf.org/rfc/rfc2119.txt
http://www.ietf.org/rfc/rfc2045.txt
http://www.w3.org/TR/owl-features/
http://www.w3.org/TR/xml/