Re: brief scenarios for DOMContent or DOM-in-RDF

Shadi Abou-Zahra schrieb:
> During the last meeting, we identified that DOM is a potential form of 
> content representation that could be included in the "content-in-RDF" 
> work. It is however unclear what the scope of this new concept would be, 
> and so we decided to work out some brief scenarios to outline the use 
> cases for this.

DOM Core features could be represented in RDF like this:

dom:Attr rdfs:subClassOf dom:Node
|- dom:isId -> rdfs:Literal (xsd:boolean)
|- dom:name -> rdfs:Literal
|- dom:ownerElement -> rdf:Element
|- dom:schemaTypeInfo -> dom:TypeInfo
|- dom:specified -> rdfs:Literal (xsd:boolean)
'- dom:value -> rdfs:Literal

dom:CDATASection rdfs:subClassOf dom:CharacterData

dom:CharacterData rdfs:subClassOf dom:Node
|- dom:data -> rdfs:Literal
'- dom:length -> rdfs:Literal (xsd:nonNegativeInteger)

dom:Comment rdfs:subClassOf dom:CharacterData

dom:Document rdfs:subClassOf dom:Node
|- dom:doctype -> dom:DocumentType
|- dom:documentElement -> dom:Element
|- dom:documentURI -> rdfs:Literal (xsd:anyURI)
|- dom:domConfig -> dom:DOMConfiguration
|- dom:implementation -> dom:DOMImplementation
|- dom:inputEncoding -> rdfs:Literal
|- dom:strictErrorChecking -> rdfs:Literal (xsd:boolean)
|- dom:xmlEncoding -> rdfs:Literal
|- dom:xmlStandalone -> rdfs:Literal (xsd:boolean)
'- dom:xmlVersion -> rdfs:Literal

dom:DocumentFragment rdfs:subClassOf dom:Node

dom:DocumentType rdfs:subClassOf dom:Node
|- dom:entities -> dom:NamedNodeMap
|- dom:internalSubset -> rdfs:Literal
|- dom:name -> rdfs:Literal
|- dom:notations -> dom:NamedNodeMap
|- dom:publicId -> rdfs:Literal
'- dom:systemId -> rdfs:Literal (xsd:anyURI)

dom:DOMConfiguration
'- dom:parameter (multiple) -> dom:MapEntry

dom:DOMImplementation
(features, but I don't know how to get all features)

dom:Element rdfs:subClassOf dom:Node
|- dom:schemaTypeInfo -> dom:TypeInfo
'- dom:tagName -> rdfs:Literal

dom:Entity rdfs:subClassOf dom:Node
|- dom:inputEncoding -> rdfs:Literal
|- dom:notationName -> rdfs:Literal
|- dom:publicId -> rdfs:Literal
|- dom:systemId -> rdfs:Literal (xsd:anyURI)
|- dom:xmlEncoding -> rdfs:Literal
'- dom:xmlVersion -> rdfs:Literal

dom:EntityReference rdfs:subClassOf dom:Node

dom:MapEntry
|- dom:mapKey -> rdfs:Literal
|- dom:mapValue -> rdfs:Literal?

dom:NamedNodeMap
'- dom:mapItem (multiple) -> dom:MapEntry

dom:Node
|- dom:attributes -> dom:NamedNodeMap
|- dom:baseURI -> rdfs:Literal (xsd:anyURI)
|- dom:childNodes -> dom:NodeList
|- dom:firstChild -> dom:Node
|- dom:lastChild -> dom:Node
|- dom:localName -> rdfs:Literal
|- dom:namespaceURI -> rdfs:Literal (xsl:anyURI)
|- dom:nextSibling -> dom:Node
|- dom:nodeName -> rdfs:Literal
|- dom:nodeType -> rdfs:Literal (xsd:nonNegativeInteger)
|- dom:nodeValue -> rdfs:Literal
|- dom:ownerDocument -> dom:Document
|- dom:parentNode -> dom:Node
|- dom:prefix -> rdfs:Literal
|- dom:previousSibling -> dom:Node
'- dom:textContent -> rdfs:Literal
(features, but I don't know how to get all features)
(userData, but I don't know how to get all userData)

dom:NodeList
'- dom:item (rdf:parseType="Collection") -> dom:Node

dom:Notation rdfs:subClassOf dom:Node
|- dom:publicId -> rdfs:Literal
'- dom:systemId -> rdfs:Literal (xsd:anyURI)

dom:ProcessingInstruction rdfs:subClassOf dom:Node
|- dom:data -> rdfs:Literal
'- dom:target -> rdfs:Literal

dom:Text rdfs:subClassOf dom:CharacterData
|- dom:isElementContentWhitespace -> rdfs:Literal (xsd:boolean)
'- dom:wholeText -> rdfs:Literal

dom:TypeInfo
|- dom:typeName -> rdfs:Literal
'- dom:typeNamespace -> rdfs:Literal (xsd:anyURI)


-- 
Johannes Koch
BIKA Web Compliance Center - Fraunhofer FIT
Schloss Birlinghoven, D-53757 Sankt Augustin, Germany
Phone: +49-2241-142628    Fax: +49-2241-142065

Received on Wednesday, 12 December 2007 10:38:50 UTC