Search code examples
xmlxsdxhtmlschemaredefine

How to redefine xHTML schema with new markup


I'm trying to use my own xml markup with xHTML markup. Maybe something like this:

<my:root xmlns:my="myXSD.xsd" xmlns="http://www.w3.org/1999/xhtml">
  <html my:name="myName">
  </html>
</my:root>

I have found a (simple) example: http://www.w3schools.com/schema/el_redefine.asp

But that examples uses local files. I want to use xHTML that already is defined. So i change the simple example to this:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:redefine schemaLocation="http://www.w3.org/2002/08/xhtml/xhtml1-strict.xsd">

  </xs:redefine>
</xs:schema>

Then i get multiple error's:

"can't resolve schemalocation" (When i click on this i go to)

file: xhtml1-strict.xsd

<xs:import namespace="http://www.w3.org/XML/1998/namespace"
      schemaLocation="http://www.w3.org/2001/xml.xsd"/>

Why do i get this error ? And why do i see HTML and NOT a XSD file when i goto: "http://www.w3.org/2001/xml.xsd" ?

Are there good examples on the internet about this topic ?

Thanx in advance...


Solution

  • "can't resolve schemalocation" Why do i get this error ?

    The URL points to an HTML document with a .xsd file extension.

    And why do i see HTML and NOT a XSD file when i goto:"http://www.w3.org/2001/xml.xsd" ?

    The source of this file is HTML. The title explains its purpose:

    <title>Schema document for namespace http://www.w3.org/XML/1998/namespace</title>
    

    The W3C is not hosting the schema source code itself at that URL to avoid excessive bandwidth and traffic.