OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

dita message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [dita] Definition of Keyscope Name Rules


Thanks Eliot

This makes sense although I think there will be certain processing
environments - perhaps editors - where a given keyname needs to be separated
into its keyscope and keyname parts.  In which case a processor will need a
keyscope context as well as a simple combined name context.
The extra period characters in the keyscope will likely generate some
confusion and perhaps some extra processing required to establish the
keyscope context - but we can leave that discussion to another day.

Jim

> -----Original Message-----
> From: dita@lists.oasis-open.org [mailto:dita@lists.oasis-open.org] On
Behalf
> Of Eliot Kimber
> Sent: March-29-16 10:04 AM
> To: dita
> Subject: [dita] Definition of Keyscope Name Rules
> 
> I think I was misremembering my original research. What I said in the
context
> of the DITA OT issue that brought all this up was:
> 
> "Since key scope names are used in key references they must have the same
> restrictions."
> 
> I read through the parts of the spec that either mention or define key
scopes
> and could find no direct language but I thought I had. Maybe Chris N. can
> find it.
> 
> In any case, since you can override a scope-qualified key with a normal
> @keys value it must be the case that key scope names have the same lexical
> rules as key names (including allowing periods, as crazy as that might
seem).
> 
> For example, this should be valid:
> 
> <topicref keyscope="foo.bar">
>   <topicref keys="baz" .../>
> </topicref>
> 
> Meaning that keyref="foo.bar.baz" is a reference to the key "baz" in the
> scope "foo.bar".
> 
> But we could also have in a parent scope:
> 
> <topicref keys="foo.bar.baz" .../>
> 
> Which overrides the scope-qualified key name "foo.bar.baz" from the
> descendant scope.
> 
> As far as the processing is defined, the result of constructing all the
key
> spaces is a set of key-name-to-resource bindings where each key name
> reflects any applicable key scopes by simple string concatenation of the
key
> scope names to the base key names.
> 
> For the purpose of resolving key references you need to know what the key
> scope *boundaries* are but you don't care what the key scope name is
> because you are simply looking up the key name you have in the current
> scope, which, by the processing rules, reflects all qualified and
unqualified
> keys in the current scope, per the rules for propagating key definitions
up
> and down the scope hierarchy.
> 
> Cheers,
> 
> E.
> 
> ----
> Eliot Kimber, Owner
> Contrext, LLC
> http://contrext.com
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe from this mail list, you must leave the OASIS TC that
> generates this mail.  Follow this link to all your TCs in OASIS at:
> https://www.oasis-
> open.org/apps/org/workgroup/portal/my_workgroups.php




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]