Thomas J.S.: Ein erster Prototyp zum testen - Komponenten-Beschreibungen

Beitrag lesen

Hallo Philipp,

Ich habe jetzt mal alls aus der Posting gelöscht.
Sorry, wenn ich etwas nerve, aber du hast mal gesagt:

----------
<component>
   <class name="v1" />
   <class name="v2" extends="v1"/>
   <class name="v3" extends="v2"/>
   <class name="v21" extends="v1"/>
   <class name="v31" extends="v21"/>
</component>
------------

Dein XML hat davon nichts:
(ich habe alles auf das wesentliche reduziert (die sortierung ist von mir, das können wir iher ignorieren))
-------------

<component name="Doc">
<class name="DocParser"></class>
<class name="DocAttribute"> </class>
<class name="DocLibrary"   extends="XML.DOM.Document"></class>

<class name="DocExternalClass"  extends="XML.DOM.Element"></class>
<class name="DocComponent"   extends="XML.DOM.Element"></class>
<class name="DocClass"    extends="XML.DOM.Element"></class>
<class name="DocMethod"   extends="XML.DOM.Element"></class>
<class name="DocItem"    extends="XML.DOM.Element"></class>

<class name="DocClassMap"   extends="XML.DOM.NodeList"></class>
<class name="DocAttributeList"  extends="XML.DOM.NodeList"></class>
<class name="DocMethodList"  extends="XML.DOM.NodeList"></class>
<class name="DocOutputList"  extends="XML.DOM.NodeList"></class>
<class name="DocInputList"   extends="XML.DOM.NodeList"></class>

</component>

<external_component name="XML.DOM">
   <external_class name="XML.DOM.Document" extends="XML.DOM.Node"></external_class>
   <external_class name="XML.DOM.Element" extends="XML.DOM.Node"></external_class>
   <external_class name="XML.DOM.NodeList" extends="XML.DOM.Node"></external_class>
   <external_class name="XML.DOM.Node"></external_class>
</external_component>

</library>

--------------------

Wie dem auch sei:
Ich habe dir einen XSL-Sheet hochgeladen (weil ich glaube, dass der nicht in einer Posting passt.
http://www.meta-text.net/test/doc.xsl

Ich habe damit gearbeitet, was ich hatte: also mit deinem zuletzt verlinkten doc.xml.
Ich steige damit langsam aus diesem Thread aus (ich mag Perl nicht und das animiert mich nicht gerade dazu mich in Klassen und Methoden zu vertiefen *g*), mir ging es ja nur darum, dass ich überzeugt bin, dass deine anforderungen auch mit XSLT erfüllt werden können.

Ich habe die interne Verlinkung etwas überarbeiten müssen, denn einge Methoden in verschiedenen Klassen hatten den selben Namen.
Sicher könnte man einiges anderes machen: z.B. bei der Rekursion statt for-each mit key's arbeiten etc., aber ich denke das wesentlich ist "angekommen".

Schöne Grüße
Thomas

0 43

Klassenbeschreibungen

Philipp Hasenfratz
  • projektverwaltung
  1. 0

    Klassenbeschreibungen - Beispiele? - Vorlagen?

    Philipp Hasenfratz
    1. 0
      Simon Reinhardt
      1. 0
        Philipp Hasenfratz
  2. 0
    Andreas Korthaus
    1. 0
      Philipp Hasenfratz
  3. 0
    Philipp Hasenfratz
    1. 0
      Simon Reinhardt
      1. 0
        Martin Speiser
  4. 0
    Martin Speiser
    1. 0
      Philipp Hasenfratz
      1. 0
        Martin Speiser
        1. 0
          Philipp Hasenfratz
      2. 0
        Simon Reinhardt
        1. 0
          Philipp Hasenfratz
  5. 0

    Ein erster Prototyp zum testen - Komponenten-Beschreibungen

    Philipp Hasenfratz
    • perl
    1. 0
      Simon Reinhardt
      1. 0
        Philipp Hasenfratz
        1. 0

          Status

          Philipp Hasenfratz
          1. 0
            Simon Reinhardt
            1. 0
              Philipp Hasenfratz
              1. 0
                Simon Reinhardt
                1. 0
                  Philipp Hasenfratz
      2. 0

        XSLT Tranformierung der Componenten-XML-Datei

        Philipp Hasenfratz
        • xsl
        1. 0
          Thomas J.S.
          1. 0
            Philipp Hasenfratz
            1. 0
              Thomas J.S.
              1. 0
                Philipp Hasenfratz
                1. 0
                  Thomas J.S.
    2. 0
      Thomas J.S.
      1. 0
        Philipp Hasenfratz
      2. 0
        Simon Reinhardt
        1. 0
          Thomas J.S.
        2. 0
          Philipp Hasenfratz
          1. 0
            Thomas J.S.
            1. 0
              Philipp Hasenfratz
              1. 0
                Thomas J.S.
                1. 0
                  Philipp Hasenfratz
                  1. 0
                    Thomas J.S.
                    1. 0
                      Philipp Hasenfratz
                      1. 0
                        Thomas J.S.
                        1. 0
                          Philipp Hasenfratz
  6. 0
    Philipp Hasenfratz