Can you add additional elements to XHTML 1.0 page?

S

Sugapablo

I'm assuming there's a way to do the following, but I'm having trouble
finding good information on it. If someone could point me to a good
webpage on it...

I want to take a Valid XHTML 1.0 page and add some elements to it.

Example: Let's say I want to add the elements "DATE" and "TEXT" to an
XHTML page as in the following:

<!DOCTYPE html PUBLIC "-//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>example</title>
</head>
<body>
<table>
<tr>
<td><DATE>2005-05-18</DATE></td>
<td><TEXT>Test Text 1</TEXT></td>
</tr>
<tr>
<td><DATE>2005-05-19</DATE></td>
<td><TEXT>Test Text 2</TEXT></td>
</tr>
</table>
</body>
</html>

How would I do this? Is there a way to do it where it could still
validate as XHTML 1.0 Strict?

I tried adding [<!ELEMENT DATE (CDATA)> <!ELEMENT TEXT (CDATA)>] to the
DOCTYPE tag, but it created two problems:

1) It would at ]> at the top of my webpage.
2) I got errors when validating saying I couldn't add those elements in
those places (i.e. within <td> tags).
 
H

Henri Sivonen

Sugapablo said:
I want to take a Valid XHTML 1.0 page and add some elements to it.

Example: Let's say I want to add the elements "DATE" and "TEXT" to an
XHTML page as in the following: ....
Is there a way to do it where it could still
validate as XHTML 1.0 Strict?

So basically you are asking if there is a way to take something that is
not XHTML 1.0 Strict and validate it as XHTML 1.0 Strict. What's the
point?
 
S

Sugapablo

So basically you are asking if there is a way to take something that is
not XHTML 1.0 Strict and validate it as XHTML 1.0 Strict. What's the
point?

I was under the impression that this was the whole point of XHTML. To
"permit the combination of existing and new feature sets when developing
content". (http://www.w3.org/TR/xhtml1/#why)
 
S

Soren Kuula

Sugapablo said:
How would I do this? Is there a way to do it where it could still
validate as XHTML 1.0 Strict?

No, once you change the document type to something else than XHTML, then
it is not XHTML ;-)
I tried adding [<!ELEMENT DATE (CDATA)> <!ELEMENT TEXT (CDATA)>] to the
DOCTYPE tag, but it created two problems:

A nicer solution would be to put your additions into a different
namespace. A problem with that is then that DTD and DTD-based does not
know what namespaces are :(

What do you want to use your extensions for anyway? No common software
"out there" that is designed to operate with XHTML will understand your
extensions.

If you want to put some data into XHTML documents that you can't express
well enough in XHTML (for example, because you need to be able to find
your dates again, and XHTML has nothing to express dates), you could:

- be careful to keep all XHTML in the XHTML namespace
- be careful to keep all your extensions in your own namespace
- write documents where you mix the two together. They probably won't be
possible to validate with a DTD-based validator...
- write an XSLT transformation that translates your extensions into
XHTML. After transformation, any information that "this is a date" etc.
will be lost -- but you still have the original mixed document, and the
transform result is pure XHTML, and you can verify that it is by
validation. If some of your extension information should not be
presented as XHTML, your transform can just throw it out.

Soren
 
P

Peter Flynn

Sugapablo said:
I was under the impression that this was the whole point of XHTML. To
"permit the combination of existing and new feature sets when developing
content". (http://www.w3.org/TR/xhtml1/#why)

Yes, you certainly can. But the result won't be XHTML 1.0. It'll be some
document type of your own making. You can validate it if you create a DTD
or Schema based on XHTML 1.0 and add your specified modifications. The
modular version of XHTML (http://www.w3.org/TR/xhtml11/) lets you add and
subtract...but you'll still have to call the result "Russ's Modified XHTML"
or something like, because it won't be standard XHTML any more.

Lots of people do this with modular document types, of which the two biggest
and best known are DocBook and TEI. There's a whole section in the chapter
on DTDs in my book on SGML and XML Tools [1] which describes the process
using DocBook as an example, and the DTD for the XML FAQ is a small example
of this (http://xml.silmaril.ie/faq.dtd).

///Peter
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,054
Latest member
TrimKetoBoost

Latest Threads

Top