|Subject:||RE: [dita] Groups - DITA 1.1 #9 (2): element for properties and embedded data (Issue9.html) modified|
|From:||Esrig, Bruce (Bruce) (esr...@lucent.com)|
|Date:||Sep 7, 2005 3:26:10 am|
NOTE: If the above links do not wo... your email - 0.1k
The <data> proposal as it stands is a mature proposal that meets most of the criteria I was inquiring about in the TC meeting of 30 August. For example, it is specifically designed for providing structured metadata that supports filtering similar to the current conditionalization functionality.
I do have four residual remarks that the proposal seems not to address. Examples are provided after the remarks.
1. Two notions of type are provided, but not a simple user-defined type. The audience appears to be specializers but not end users. This means that organizations that want to use DITA without employing a DITA specializer won't have some of the intended flexibility.
So an end user cannot embed (supposing that this was desired) variables or values from a programming language each preceded by the applicable type unless the type system of that programming language is already anticipated by the specializer. And programming languages with user-defined types make it impossible to anticipate all the possible types.
Since I don't have programming language examples available, I use data-representation examples that have a similar form.
2. Has pattern-matching been considered in full generality? The name attribute could be used to create a name-value binding that could be matched against. However, no syntax is provided for stating a value that incorporates a name defined elsewhere.
3. What are the implications for DITA 2.0? Can we re-map all existing prolog elements and metadata so that they specialize <data> and appear in a more predictable context?
This discussion assumes that we would want a mechanism for introducing metadata that permits but does not require standardization across organizations. The specific metadata in DITA seems to be there because a need was found for that metadata. Rather than trying to establish standard metadata through language definition to permit interchange across organizations, we would externalize that effort. So in the language specification, we might no longer require support for some of the existing metadata. We may choose to provide backward compatibility with a library of supporting modules.
4. How does the <data> element integrate with conditionalization functionality?
1. User-defined types
Product specifications that include more detail or different detail than anticipated
<data user-type="product-family">Everything Anyone Could Want <data user-type="product">This Most Valuable Product <data user-type="model">At Your Price Point <data user-type="configuration">With Your Features <data user-type="feature">Feature One</data> <data user-type="feature">Feature Two</data> </data></data></data></data>
Classification information for user-initiated information sharing
<data user-type="recipe"> <data user-type="ingredients"> <data user-type="ingredient">Any starch</data> <data user-type="ingredient">Any topping</data> <data user-type="item served">Food consisting of starch with topping</data> </data>
2. Pattern matching
Data provided in a map context to provide a binding. <data name="default-content-author">Charles Schulz</data>
Data provided in a topic context to accept a default value for metadata if no overriding value is provided. <prolog><author>$default-content-author</author></prolog>
3. Impacts on DITA 2.0
The author element is a specialization of <data> with the constraint name="author", equivalent to <data name="author">.
All the elements within <metadata> are defined as specializations of <data> with a new attribute metadata that defaults to "yes". Other existing elements of prolog have an attribute metadata that defaults to "no".
(Further detail requesting an example.)
Given the data in item 1, for example, how would you set up a filtering mechanism that takes advantage of the data in order to do conditional processing? Would we use the existing include/exclude filtering architecture?
-----Original Message----- From: Erik Hennum [mailto:ehen...@us.ibm.com] Sent: Tuesday, September 06, 2005 6:29 PM To: di...@lists.oasis-open.org Subject: Re: [dita] Groups - DITA 1.1 #9 (2): element for properties and embedded data (Issue9.html) modified
Hi, Esteemed DITA Commmittee Members:
Regarding the <data> element proposal
and the exchange below
o The proposed <data> element can nest to express complex structures as shown in the specialized examples in the proposal. o Because the property represented by each <data> element has an unambigous subject and object (thanks to Paul Grosso's good efforts), an XSLT rule could perform filtering based on the <data> element even if the match requires multiple levels within the structure. Regardless of the filtering mechanism used, that shouldn't require changes to how the specialized <data> elements express the properties. o I'd submit that conditional processing doesn't require a special class of properties but rather a special use of properties. For instance, the selection attributes provide properties that, while extremely useful for conditional processing, could also be used for search, display of categorization, or other kinds of processing. Thus, we don't need to distinguish conditional and non-conditional <data> element specializations.
Apart from that discussion, I'd like to check whether anyone has concerns about
o The typeid attribute for associating a specialized <data> element with a well-known public identifier for the property. o The contexts in which the data element can appear (roughly equivalent to metadata contexts, content contexts above the keyword level, and map contexts; see the note for details).
On the last point, I'd submit that allowing the <data> element in <topicref> contexts dispatches Issue 36 as well (a two-fer):
Given that no other comments have come in for some time (even allowing for vacations), can we treat this note as a last call for comments before wrapping up and (absent unresolved concerns) proceeding to a vote next week?
Erik Hennum ehen...@us.ibm.com
Inactive hide details for seraphim.l.larsen@inte...@intel.com
This proposal was approved at the 8/30/05 meeting:
- #9 Add a element for representing machine-processable values within DITA topics and maps http://www.oasis-open.org/apps/org/workgroup/dita/download.php/14073/Issue9.html
Erik -- This should be designed more fully before the committee can vote on it.
- is the committee willing to approve completing the design?
- what holes does the committee see in the design?
Erik requests feedback to email list.
Bruce Esrig -- Any relationships with other issues? e.g. Need to record structured info for other purposes?
Don -- Does this effect design, or just that context of data element meets those requirements.
Bruce -- e.g. conditionalizatoin attrs. Then possible to design special structures used for conditionalization. Do we want to design the data structure to do conditionalization?
Paul Prescod -- How would a user use the intersection of those two things?
Bruce -- Put value in conditional parameter. Assumed to be a global unique value. If the person wants to draw those names from a (product hierarchy), they may need to come up with some structures. Those structures may be similar to those in the data element.
PP -- Might this be system-wide metadata?
Bruce -- Problem comes if lower-level names are not unique. e.g. switch and 17 product names have switch.
Erik -- Existing prodinfo element is example of that.
Bruce -- This may not specifically apply under the data proposal. Perhaps it should proceed around the profiling proposal.
Don -- Does this inform on the design of the data element, or is it a best proactice?
Bruce -- Could inform design if requires nesting (?)
Don -- In general, I think we want to keep the feature of cond processing separate from the design points of the elements in dita. Bruce, please correspond w/ Erik re: use cases on email list (plus any other feedback on design). A complex, real-world example would be nice to have in the spec.
PP -- Bruce -- can you send email to list highlighting these issues?
Approved for 1.1
-- Seraphim Larsen
Information about the document named DITA 1.1 #9 (2): element for properties and embedded data (Issue9.html) has been modified by Seraphim Larsen.
Document Description: HTML output from DITA note