[Zope3-Users] emacs with metal and tal namespaces
Perry Smith
pedz at easesoftware.com
Sun Oct 29 12:16:56 EST 2006
On Oct 29, 2006, at 10:43 AM, Fred Drake wrote:
> On 10/29/06, Perry Smith <pedz at easesoftware.com> wrote:
>> I bumped into two problems that stumped me. First, it is general
>> practice
>> to do:
>>
>> <metal:arbitrary_tag define-macro="page">
>
> Constructs for this can be written in RELAX NG, but I've not tried
> doing that myself though. The Atom specification includes an example
> for elements in the XHTML namespace.
It is simple to have specify a tag like metal:* where anything can
follow. But I did not see the benefit to that.
>
>> Second, metal and tal constructs are attributes that are placed
>> inside any
>> tag.
> ...
>> So, to really do this properly, each schema that the tal or metal
>> are going
>> to be used in would need to be modified to allow the tal and metal
>> attributes. The RNC syntax does have a funny include construct
>> that allows
>> overriding constructs that are defined in the included file. But,
>> that only
>> means that it would be possible to create a maintenance nightmare
>> if someone
>> wanted to do that.
>
> Almost; it really depends on the how the base schemas are written.
> They can be written to cooperate with extending or specializing
> schemas. There are examples in the RELAX NG tutorials. It does
> require that the base schemas be written with that expectation, just
> like classes need to be written to expect subclassing.
Yes. thats true. The samples I have for xhtml did not seem to have
that. For example, in my xhtml, the title element allowed the
xml:lang attribute and nothing else. I got my samples from the nxml
emacs package.
But, I think I can still do some useful work here.
I can create a rnc for metal and tal. It can have hooks to let
people add to the list of tags (which solves the first problem) and
it could create a list (or two lists) of attributes that future
schema writers could add into their schema.
Aside from xhtml and zcml, (for 99% of the usage), what is the list
of base schemas people are going to add metal and tal attributes to?
It also sounds like I need to look at the tutorials. I was just look
at the spec. Maybe there are conventions that I missed.
More information about the Zope3-users
mailing list