The example below includes two marked-up 'parts', and the same content represented as an HTML table.
<report xmlns="http://example.org/"> <part>foo</part> <part>bar</part> <html xmlns="http://www.w3.org/1999/xhtml" xml:id="html"> <table> <tr><td xml:lang="en">foo</td></tr> <tr><td>bar</td></tr> </table> </html> </report>
The HTML content is here represented by an xs:any element from the 'xhtml' namespace, which may include attributes and arbitrarily nested elements.
<xs:schema targetNamespace="http://example.org/" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> <xs:element name="report"> <xs:complexType> <xs:sequence> <xs:element name="part" type="xs:string" maxOccurs="unbounded"/> <xs:any namespace="http://www.w3.org/1999/xhtml" processContents="skip"/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
Not having the schema to hand, Gloze regards any content as ambiguously ordered so adds all content to an rdf:Seq. This helps to distinguish attributes from elements; any properties not added to this sequence are therefore attributes. Elements with a single value (and no attributes) are added as literal properties (see 'tr').
The example also includes an xml:id defined to be of type xs:ID, regardless of the schema. This identifies the html resource, and is translated as a fragment identifier relative to the document base.
# Base: http://example.org/any.xml @prefix ns1: <http://example.org/def/> . @prefix xs: <http://www.w3.org/2001/XMLSchema> . @prefix ns2: <http://example.org/> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix xs_: <http://www.w3.org/2001/XMLSchema#> . @prefix : <#> . _:b1 a rdf:Seq ; rdf:_1 [ a rdf:Statement ; rdf:object _:b2 ; rdf:predicate <http://www.w3.org/1999/xhtml#tr> ; rdf:subject _:b1 ] ; rdf:_2 [ a rdf:Statement ; rdf:object _:b3 ; rdf:predicate <http://www.w3.org/1999/xhtml#tr> ; rdf:subject _:b1 ] ; <http://www.w3.org/1999/xhtml#tr> _:b2 , _:b3 . :html a rdf:Seq ; rdf:_1 [ a rdf:Statement ; rdf:object _:b1 ; rdf:predicate <http://www.w3.org/1999/xhtml#table> ; rdf:subject :html ] ; <http://www.w3.org/1999/xhtml#table> _:b1 . _:b2 a rdf:Seq ; rdf:_1 [ a rdf:Statement ; rdf:object _:b4 ; rdf:predicate <http://www.w3.org/1999/xhtml#td> ; rdf:subject _:b2 ] ; <http://www.w3.org/1999/xhtml#td> _:b4 . <> ns2:report [ ns2:part "foo"^^xs_:string , "bar"^^xs_:string ; <http://www.w3.org/1999/xhtml#html> :html ] . _:b3 a rdf:Seq ; rdf:_1 [ a rdf:Statement ; rdf:object "bar" ; rdf:predicate <http://www.w3.org/1999/xhtml#td> ; rdf:subject _:b3 ] ; <http://www.w3.org/1999/xhtml#td> "bar" . _:b4 rdf:value "foo"@en .
If a schema is available for the wild-card element, then it may be referenced from within the XML instance document using an xsi:schemaLocation or xsi:noNamespaceSchemaLocation attribute. This can appear in the document element or on the wild-card element itself.