I don't mind donating whatever I'll have done for this XSD problem.
I agree that it makes sense to integrate a new stuff into existing framework rather than inventing all from the beginning. I know that Sandcastle is an extensible XSLT tool and it is an ideal place to add XSD support to. It is interesting for me to dig into
Sandcastle, but I'm afraid I wont have enought time to do the work completely and well enought. Let's see later if I need to join your team. For the time being I expect you provide me some help here in this topic.
I am writing an XSLT what will help me automate my task. Saying briefly I want to generate elements list looking like the lists in XML references in MSDN. For example, http://msdn.microsoft.com/en-us/library/ms256058.aspx. It requires generating of multiple
files (topics): ones for each element plus the topic for the summary list. Lets see what a toptic for a certain element contains:
1. Genaral information about element. It could be taken from standard
2. Syntax code. It could be generated having an information about attributes.
3. List of attributes.The description for an attribute could be taken from
xs:annotation for this attribute. Additinal fields like "Optional", "Default Value" are extractable from the attribute defenition in XSD.
4. Element Information with the lists of posisible parents, possible children, and an information about occurrences. First two lists are easy to retrieve from XSD. "Number of occurrences" is more compicated because there could be very non-trival
combinations of <xsd:choice>, <xsd:sequence>, <xsd:all>. "Number of occurrences" could be taken from some custom element in the XSD.
5. Remarks and Examples. Defenetely should be taken from a custom element in the XSD. We could allow fragments of MAML format (or some of some other format) to be inserved into
It is not clear for me yet what intermediate formats we need to have. You talked about "the necessary information about all of the XSD input files". What should it be? Might it be simply a copy of the source xs:schema?
SelormeyPaul talked about developerXmlReference. May we reuse it as one of the intermediate formats?