History | Log In     View a printable version of the current page. Get help!  
Issue Details (XML | Word)

Key: JBSEAM-1531
Type: Feature Request Feature Request
Status: Closed Closed
Resolution: Done
Priority: Minor Minor
Assignee: Norman Richards
Reporter: Michael Youngstrom
Votes: 2
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
Seam

Document pages.xsd and maybe other .xsds with xsd:documentation

Created: 22/Jun/07 06:20 PM   Updated: Friday 12:24 PM
Component/s: Core
Affects Version/s: 1.3.0.ALPHA
Fix Version/s: 2.1.0.BETA1

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown
Issue Links:
Related
 
This issue is related to:
JBSEAM-2587 XSD cleanup Minor Closed


 Description  « Hide
The pages.xsd is fairly vast. It could benefit greatly by some <xsd:documentation> elements. XML editors such as Eclipse WTP will pick up these xsd:documentation elements and provide context help.


 All   Comments   Work Log   Change History   Subversion Commits      Sort Order:
Max Rydahl Andersen [05/Feb/08 02:44 PM]
please remember that seam is fully ok with e.g. debug="@debug@" and then have a component.properties with debug=true

Not sure if you have xsd:boolean in the XSD if that trick which we use alot will continue to work?

Norman Richards [21/Apr/08 04:11 PM]
It won't be a problem. I've added a propertyType for @name@ replacements. For types like xs:boolean, I've declared a components:boolean than unions the xs type with the property and expression types. The net effect is that we can maintain good typing while explicitly allowing the property and EL expressions.



Norman Richards [23/Apr/08 03:09 PM]
I've finished a good bit of the cleanup with a first round of setting attribute types and adding basic documentation. I'm hesitant to add too much documentation because of the increased documentation burden. But, we should probably have more than even what we have now. It would be really nice if we had some way to pull text from the main documentation to put in the XSDs. (or pull text from the XSDs for the main documentation)



We now have the following base types:
 
components:expressionType - an EL expression or a @property@ value
components:string - any string value
components:int - a positive integer (or expresion value)
components:boolean - a boolean (or expression value)
components:componentName - a seam component name or java class (or expression value)

That's been enough for most everything. There are no finer grained types for collection types. We shouldn't hesitate to add more types if they make sense.

A few of the XSDs now refer to components.xsd by HTTP URL. This means that those schemas can be removed from src/main/org/jboss/seam to any other directory. The down side is that they cannot then refer to the current master components.xsd. If they use unpublished features of components.xsd, you'll need to change the schemaLocation to point to the local file while editing. Yes, this is a HUGE pain, but I can find no way around this. Id recommend we only use this approach for XSDs that we don't want in src/main and all the core seam XSDs stay where they are.