Re: [nmrg] web page for uml diagrams

Frank Strauss <strauss@ibr.cs.tu-bs.de> Wed, 23 July 2003 16:11 UTC

Received: from hansa.ibr.cs.tu-bs.de (hansa.ibr.cs.tu-bs.de [134.169.34.81]) by agitator.ibr.cs.tu-bs.de (8.12.3/8.12.3/Debian-6.4) with ESMTP id h6NGBY3U018303 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Wed, 23 Jul 2003 18:11:34 +0200
Received: from hansa.ibr.cs.tu-bs.de (strauss@localhost [127.0.0.1]) by hansa.ibr.cs.tu-bs.de (8.12.3/8.12.3/Debian-6.4) with ESMTP id h6NGBYSk018570; Wed, 23 Jul 2003 18:11:34 +0200
Received: (from strauss@localhost) by hansa.ibr.cs.tu-bs.de (8.12.3/8.12.3/Debian-6.4) id h6NGBYAE018567; Wed, 23 Jul 2003 18:11:34 +0200
From: Frank Strauss <strauss@ibr.cs.tu-bs.de>
To: Marcus Brunner <brunner@ccrle.nec.de>
Cc: j.schoenwaelder@iu-bremen.de, nmrg@ibr.cs.tu-bs.de
Subject: Re: [nmrg] web page for uml diagrams
References: <20030723104116.GB1015@iu-bremen.de> <23434627.1058978590@[10.1.1.130]> <ypwsmox5m7k.fsf@hansa.ibr.cs.tu-bs.de> <24299580.1058979455@[10.1.1.130]>
Date: Wed, 23 Jul 2003 18:11:34 +0200
In-Reply-To: <24299580.1058979455@[10.1.1.130]>
Message-ID: <ypwznj5mde1.fsf@hansa.ibr.cs.tu-bs.de>
Lines: 68
User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
X-IBRFilter-SpamReport: -26.2 () IN_REP_TO, QUOTED_EMAIL_TEXT, REFERENCES, REPLY_WITH_QUOTES, USER_AGENT_GNUS_UA
X-Scanned-By: MIMEDefang 2.24 (www . roaringpenguin . com / mimedefang)
X-Spam-Status: No, hits=-25.9 required=5.0 tests=IN_REP_TO, QUOTED_EMAIL_TEXT, REFERENCES, REPLY_WITH_QUOTES, USER_AGENT_GNUS_UA autolearn=ham version=2.53
X-Spam-Level:
X-Spam-Checker-Version: SpamAssassin 2.53 (1.174.2.15-2003-03-30-exp)
Sender: nmrg-admin@ibr.cs.tu-bs.de
Errors-To: nmrg-admin@ibr.cs.tu-bs.de
X-BeenThere: nmrg@ibr.cs.tu-bs.de
X-Mailman-Version: 2.0.11
Precedence: bulk
List-Help: <mailto:nmrg-request@ibr.cs.tu-bs.de?subject=help>
List-Post: <mailto:nmrg@ibr.cs.tu-bs.de>
List-Subscribe: <https://www.ibr.cs.tu-bs.de/mailman/listinfo/nmrg>, <mailto:nmrg-request@ibr.cs.tu-bs.de?subject=subscribe>
List-Id: Network Management Research Group <nmrg.ibr.cs.tu-bs.de>
List-Unsubscribe: <https://www.ibr.cs.tu-bs.de/mailman/listinfo/nmrg>, <mailto:nmrg-request@ibr.cs.tu-bs.de?subject=unsubscribe>
List-Archive: <https://www.ibr.cs.tu-bs.de/pipermail/nmrg/>

Hi!

Marcus> I tried to do it for the MPLS MIBs, but I miserably failed even
Marcus> parsing the MIBs in the latest drafts. But it might be myself not
Marcus> using the tools correctly.
 
>> Could you please point me (us) to the MIBs (or the I-Ds) you've fed
>> to smidump? There are 36 documents in internet-drafts/*mpls*mib*, and
>> I don't want to check all of them. :-))

Marcus> draft-ietf-mpls-ftn-mib-07.txt
Marcus> draft-ietf-mpls-ldp-mib-12.txt
Marcus> draft-ietf-mpls-lsr-mib-11.txt
Marcus> draft-ietf-mpls-tc-mib-08.txt
Marcus> draft-ietf-mpls-te-mib-11.txt

Thanks. Here is a short description of what I did to check the modules,
to "repair" them so that they could be further processed, and to generate
a diagram. Maybe this helps others to do similar things...

1. Get the documents.

2. Extract the modules using smistrip. (The latest version from CVS of
   smistrip now also accepts .gz files and is able to read documents
   from a given directory):

        smistrip -i /ftp/docs/internet-drafts \
                draft-ietf-mpls-ftn-mib-07.txt \
                draft-ietf-mpls-ldp-mib-12.txt \
                draft-ietf-mpls-lsr-mib-11.txt \
                draft-ietf-mpls-tc-mib-08.txt \
                draft-ietf-mpls-te-mib-11.txt

   Note that documents that are formatted in an "unexpected" form, may
   lead to warnings or even broken MIB modules, because smistrip has
   to make some vague assumptions on how to cut off page footers and
   headers.

3. Check the extracted modules with smilint. If not otherwise set, the
   local directory might have to be added to the paths in which smilint
   will search for modules.

        SMIPATH=.: smilint -i namelength-32 MPLS-*

   In this case I wanted to ignore all warnings about identifiers that
   are longer than 32 chars. The errors that remain complain about "XXX"
   placeholders for a number of registrations.

4. Fix errors, if required. In this case nothing has to be done to
   produce the dia diagrams.

5. Use smidump to generate whatever I want, e.g. metrics, trees, diagrams:

        SMIPATH=.: smidump -u -f metrics MPLS-* | less

        SMIPATH=.: smidump -u -f tree MPLS-* | less

        SMIPATH=.: smidump -u -f cm MPLS-* > mpls-model.dia

   The -u option is used to get a "united" representation of all
   input modules, instead of separated outputs per module.

6. Use dia to drag items around to get a better layout and finally
   print the diagram to a PDF file. I have not yet done this. It
   seems to be quite some work in this case. :-) The non-beautified
   diagram is at http://www.ibr.cs.tu-bs.de/users/strauss/mpls-model.dia.

 -frank