Du bist nicht angemeldet.

1

Dienstag, 23. September 2003, 12:20

Den Vogel zeigen !?!

Guten Morgen, liebe Welt.

Heute habe ich die ganz besondere Ehre, Sie bei der Geburt einer neuen Sprache teilhaben zu lassen. Und zwar entspricht das durchaus einem Bedürfnis, vielschichtigerwelches. Doch zunächst die Enthüllung per feierlichem Zug an der weißen Folie, die die Sprache verhüllt. *ratsch* Ich präsentiere feierlich:



Und hier zu den Beweggründen, die maßgeblich entscheidend waren für unseren Beschluss, diese mächtige, zukunftssichere und bedeutungsschwangere Sprache zu entwickeln:
  • Ornithologen an die Macht!
    Welcher Ornithologe hat sich noch nicht gewünscht, seine Vögel endlich systematisch und konform zu gebietsübergreifenden Standards auszuzeichnen? Das ist nun möglich! Endlich kann jeder Ornithologe seine "Bird Bands" zusammenfassen und weltweit verbreiten. Die LFBML macht's möglich, und weil sie XML ist, kann das wohlgeformt, gültig und vor allem erotisch erfolgen!

  • Software-Rebellion!
    Ein weitverbreiteter Browser (bzw. einer, der es werden will) von einer weltbekannten Firma aus Redmond hat sich inzwischen auf vielen Computern parasitär eingenistet und verrichtet dort seine unlauteren Geschäfte in Form von heimlichen Türenöffnens, Würmerversand über den mitgelieferten Mehlklienten sowie Zerschlagung aktueller standardkonformer Webseiten. Das XML von der LFBML kann er sogar lesen, allerdings ist er nicht in der Lage, die Elemente anhand eines mitgelieferten Cascading Stylesheets adäquat zu präsentieren. Und da man in der LFBML kleine flauschige Flugtiere auszeichnet, kann man so ganz bequem und öffentlich der angesprochenen Browser-Imitation den Vogel zeigen!

  • Chat-Zynismus
    Im Kanal #html.de im Quakenet wird Menschen beim Schreiben von Webseiten geholfen. Häufig überschätzen diese Menschen ihre Fähigkeiten und verlangen von ihren Webseiten Dinge, die sie garnicht können, bzw. mit HTML nicht möglich sind. Oder es funktioniert einfach nicht, weil der vorliegende Quälkot eben solcher ist. Mit dem Wissen, dass die LFBML einen vergleichsweise kleinen Elementen- und Attributensatz hat, kann man dann mild lächelnd sagen: "Das ist doch kein HTML! Das ist ja noch nicht mal LFBML". Auf die verblüffte Reaktion und die nachfolgende Auseinandersetzung mit der Spezifikation kann man sich dann freuen, denn es geschieht meist das Amusement der Mehrheit (die ja in diesen Kreisen ach so wichtig ist) der ansässigen Menschen inkrementierend.


Und so freue ich mich ganz besonders, auch nun Euch in diese Sprache einführen zu dürfen. Hier nochmal die wichtigsten Links:

www.memowe.de/lfbml/ - Little Fluffy Birds Markup Language Homepage
www.memowe.de/lfbml/spec.html - Little Fluffy Birds Markup Language Spezifikation
www.memowe.de/lfbml/lfbml1.0.dtd - zu referenzierende Document Type Definition
www.memowe.de/lfbml/example/ - Beispiel

Besonders cool ist es übrigens für einen Autor von LFBML-Dokumenten, wenn er dann dieses sieht.

Es grüßt glücklich und dankt für die Aufmerksamkeit
Mirko Westermeier, Münster
Leitender Entwickler des LFBML-Projekts
Signatur von »memowe« Mirko Westermeier - Public key: 0x730E195D
Key fingerprint = 55A8 9646 9B58 60AC B5BC 9661 FDD4 93C0 730E 195D

2

Dienstag, 23. September 2003, 13:45

Meine Meinung kennst du ja. Ich respektiere die Mühe die in LFBML gesteckt wurde, finde das ganze aber ein bisschen zu abgedreht.

Gaheris

3

Dienstag, 23. September 2003, 13:58

Zitat

Original von Gaheris
finde das ganze aber ein bisschen zu abgedreht.

Also willst Du nicht an unserem LFBML-Webring mitmachen? ;)

Ich weiß. Ihr glaubt, ich habe zuviel Zeit. Im Gegentum. Aber manchmal muss man halt ein bisschen recovern. Anstatt mich stumpf vom Glotzophon zudröhnen zu lassen, kreiere ich Sprachen für das weltweite Netz! :D

Gruß
Mirko :)
Signatur von »memowe« Mirko Westermeier - Public key: 0x730E195D
Key fingerprint = 55A8 9646 9B58 60AC B5BC 9661 FDD4 93C0 730E 195D

4

Dienstag, 23. September 2003, 14:05

Die Ornithologen werden dir danken! :D

Ich find's nur schade, dass man mit nur eine gescheite Überschrift hinbekommt, wenn man :before benutzt und aus dem Element bird "eine Liste macht". Gibt es da keine Möglichkeiten einen Ersatz für z.B. h1 zu bekommen?
Und wie ich im IRC schon sagte, eine Art title, damit die Titelleiste des Browsers nicht so leer aussieht.
Signatur von »Patrick«
Watislos? :disappointed:

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Patrick« (23. September 2003, 14:06)


5

Dienstag, 23. September 2003, 14:12

Zitat

Original von Patrick
Ich find's nur schade, dass man mit nur eine gescheite Überschrift hinbekommt, wenn man :before benutzt und aus dem Element bird "eine Liste macht".

Wieso Überschrift? Das ist keine Textstrukturierungssprache wie HTML, sondern eine Vogel-Auszeichnungssprache! Damit markiert man Vögel und schreibt keine Webseiten.

Zitat

Gibt es da keine Möglichkeiten einen Ersatz für z.B. h1 zu bekommen?

Klar, aber wozu?

Zitat

Und wie ich im IRC schon sagte, eine Art title, damit die Titelleiste des Browsers nicht so leer aussieht.

Das ist bei eigenen XML-Sprache schwierig, da sich diese Funktionalität nicht so einfach einbauen lässt. Der Browser kennt die Sprache ja (noch) nicht. Und mit CSS geht das nicht (was auch gut so ist).

Gruß
Mirko :)
Signatur von »memowe« Mirko Westermeier - Public key: 0x730E195D
Key fingerprint = 55A8 9646 9B58 60AC B5BC 9661 FDD4 93C0 730E 195D

6

Dienstag, 23. September 2003, 14:17

nicht schlecht ... endlich mal etwas vernünftiges in diesem ganzen markup-gewurschtel.

Aber ein Bug gibt es leider noch, das Attribut <mett name="google-ranking" content="1" coolestguy="Mirko" /> scheint nicht zu funktionieren. Eine schnelle suche mit google(TM) hat ergeben das die Seite leider nicht auf position 1 gelandet ist :(
Selbst mit coolestguy="Memowe" oder sogar coolestguy="Gorgo" (was zwar außerhalb der spezifikation ist) funktioniert es nicht so wie beschrieben. :(


Mit freundlichen grüßen und hoffend auf eine schnelle behebung des Problems
Gorgonzola
Signatur von »Gorgonzola« There is a theory which states that if ever anyone discovers what the Universe is for and why it is here, it will instantly disappear and be replaced by something even more bizarre.
There is another theory which states that this has already happened.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Gorgonzola« (23. September 2003, 14:19)


7

Dienstag, 23. September 2003, 14:27

Zitat

Original von Gorgonzola
Aber ein Bug gibt es leider noch, das Attribut <mett name="google-ranking" content="1" coolestguy="Mirko" /> scheint nicht zu funktionieren.

In der Sprache gibt es kein Attribut, das so heißt: www.memowe.de/lfbml/spec.html#a-index
Eventuell meintest Du das Element? Natürlich funktioniert das noch nicht! Das liegt aber an Google, die sind wohl gerade am Google-Dance. Mittelfristig wird das Beispiel auf Ranking eins sein.

Zitat

Eine schnelle suche mit google(TM) hat ergeben das die Seite leider nicht auf position 1 gelandet ist :(
Selbst mit coolestguy="Memowe" oder sogar coolestguy="Gorgo" (was zwar außerhalb der spezifikation ist) funktioniert es nicht so wie beschrieben. :(

Hier muss ein technischer Konflikt vorliegen. Ich rede mit den Administratoren darüber. Vielen Dank für den Hinweis. Nur mit Ihren kritischen Kommentaren können wir weiterhin die Qualität unserer Services verbessern.

Mit freundlichem Gruß
Dr. Sandra Schüssler, LFBML-Support-Team
Signatur von »memowe« Mirko Westermeier - Public key: 0x730E195D
Key fingerprint = 55A8 9646 9B58 60AC B5BC 9661 FDD4 93C0 730E 195D

8

Dienstag, 23. September 2003, 14:30

Zitat

Original von memowe
Wieso Überschrift? Das ist keine Textstrukturierungssprache wie HTML, sondern eine Vogel-Auszeichnungssprache! Damit markiert man Vögel und schreibt keine Webseiten.
[...]
Klar, aber wozu?

Warum ist auf deiner Bleistifseite denn eine Art Überschrift ("Little Fluffy Birds")?
Eigentlich hätt ich gerne eine kurze Überschrift, um zu verdeutlichen, wem die Vögel gehören, bzw was für Vögel das sind etc pp.
Signatur von »Patrick«
Watislos? :disappointed:

9

Dienstag, 23. September 2003, 14:36

Zitat

Original von Patrick

Zitat

Original von memowe
Wieso Überschrift? Das ist keine Textstrukturierungssprache wie HTML, sondern eine Vogel-Auszeichnungssprache! Damit markiert man Vögel und schreibt keine Webseiten.

Warum ist auf deiner Bleistifseite denn eine Art Überschrift ("Little Fluffy Birds")?

Die wurde mit CSS erzeugt und dient nur einer angenehmen Präsentation, für den Inhalt aber hat sie keine Relevanz.

Zitat

Eigentlich hätt ich gerne eine kurze Überschrift, um zu verdeutlichen, wem die Vögel gehören, bzw was für Vögel das sind etc pp.

Das klingt schon interessanter. Eventuell kann man irgendwann noch mehr zu den Vögeln angeben. Derzeit einen Namen und mehrere Tätigkeiten. Es interessiert ja auch viel mehr, was Vögel tun. Man sollte auch kleine flauschige Vögel nach ihren Taten und nicht nach ihren Attributen beurteilen.

"Dumm ist der, der dummes tut!"

Gruß
Mirko :)
Signatur von »memowe« Mirko Westermeier - Public key: 0x730E195D
Key fingerprint = 55A8 9646 9B58 60AC B5BC 9661 FDD4 93C0 730E 195D

10

Dienstag, 23. September 2003, 18:57

Du musst dich nicht unbedingt auf CSS beschränken. Man kann auch mit XSLT schöne Dinge fabrizieren... ;)
Signatur von »Alex« Man muss nichts sehen, um zu sehen, dass man nichts sieht, aber man muss etwas sehen, um zu sehen, was man nicht sieht.

11

Dienstag, 23. September 2003, 19:00

Ich habe mich bisher noch nicht mit XSLT beschäftigt. Bitte schreibe für die Beitragsreihe eine Einführung! :)

Gruß
Mirko
Signatur von »memowe« Mirko Westermeier - Public key: 0x730E195D
Key fingerprint = 55A8 9646 9B58 60AC B5BC 9661 FDD4 93C0 730E 195D

12

Dienstag, 23. September 2003, 21:59

Ich kann keine Einführung schreiben, weil ich selbst nicht wirklich viel kann... aber folgendes kann ich:

DTD:

Quellcode

1
2
3
4
5
6
7
8
<!ELEMENT birdlist (options,(bird)*)>
 <!ELEMENT options (headline,lang)>
  <!ELEMENT headline (#PCDATA)>
  <!ELEMENT lang (#PCDATA)>
 <!ELEMENT bird (name,(species)+,(whatdoesitdo)*)>
  <!ELEMENT name (#PCDATA)>
  <!ELEMENT species (#PCDATA)>
  <!ELEMENT whatdoesitdo (#PCDATA)>

XSL:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="birdlist">
 <html>
 <head>
 <title><xsl:value-of select="options/headline" /></title>
 <style>
  body {color:black; background-color:#fec; font-family:sans-serif;}
  h1 {text-align:center; font-size:125%; font-weight:bold;}
 </style>
 </head>
 <body>
 <h1>
  <xsl:value-of select="options/headline" />
 </h1>
 <ul>
  <xsl:for-each select="bird">
   <li>
    <xsl:choose>
     <xsl:when test="/birdlist/options/lang="de"">
      <xsl:text>Vogel </xsl:text>
     </xsl:when>
     <xsl:otherwise>
      <xsl:text>Bird </xsl:text>
     </xsl:otherwise>
    </xsl:choose>
    <xsl:value-of select="name" />
    <xsl:for-each select="whatdoesitdo">
     <xsl:choose>
      <xsl:when test="position()=1">
       <xsl:text> </xsl:text>
      </xsl:when>
      <xsl:when test="position() = last()">
       <xsl:choose>
        <xsl:when test="/birdlist/options/lang="de"">
         <xsl:text> und </xsl:text>
        </xsl:when>
        <xsl:otherwise>
         <xsl:text> and </xsl:text>
        </xsl:otherwise>
       </xsl:choose>
      </xsl:when>
      <xsl:otherwise test="1=position()">
       <xsl:text>, </xsl:text>
      </xsl:otherwise>
     </xsl:choose>
     <xsl:value-of select="." />
    </xsl:for-each>
   </li>
  </xsl:for-each>
 </ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>


XML:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<!DOCTYPE xlfbml PUBLIC "eXtended Little Fluffy Birds Markup Language 0.1" "xlfbml.dtd">
<?xml-stylesheet type="text/xml" href="xlfbml.xsl"?>

<birdlist>
 <options>
  <headline>Meine Vögel</headline>
  <lang>de</lang>
 </options>
 <bird>
  <name>Alexander</name>
  <whatdoesitdo>schreibt xlfbml</whatdoesitdo>
  <whatdoesitdo>hört Musik</whatdoesitdo>
  <whatdoesitdo>ist müde</whatdoesitdo>
 </bird>
 <bird>
  <name>Johannes</name>
  <whatdoesitdo>isst</whatdoesitdo>
  <whatdoesitdo>trinkt</whatdoesitdo>
  <whatdoesitdo>fliegt</whatdoesitdo>
  <whatdoesitdo>tanzt</whatdoesitdo>
 </bird>
</birdlist>


Morgen bastle ich weiter ;) können jetzt auch noch Fehler drin sein, mach ich morgen raus.
Signatur von »Alex« Man muss nichts sehen, um zu sehen, dass man nichts sieht, aber man muss etwas sehen, um zu sehen, was man nicht sieht.

13

Dienstag, 7. Oktober 2003, 15:25

LFBML-Webring!

Nun wollen wir der Little Fluffy Birds Markup Language mal ein bisschen Aufwind verschaffen. Und zwar möchte ich den ersten LFBML-Webring ins Leben rufen. Konkret bedeutet das für Euch:

Erstellt eine Seite in validem LFBML und stellt sie online zur Verfügung. Dann gebt Ihr mir bescheid. Die Seiten werden dann von der LFBML-Homepage aus verlinkt. Ein unanbhängiges LFBML-Gremium wertet die LFBML-Dokumente aus und ordnet sie dementsprechend auf der Seite an. Die beste Seite steht ganz oben. Das ist kein materieller Lohn, aber es ist eine große Ehre! Beurteilt wird nach Witzigkeit/Originalität der Vogelsammlung sowie nach Schönheit der per CSS zu definierenden Optik (Zugegeben: das ist nicht das allereinfachste, da die Sprache nicht sehr umfangreich ist. Aber das macht es ja auch erst interessant!). Ein Beispiel, wie es gemacht werden könnte, sehen Benutzer halbwegs brauchbarer Webbrowser in www.memowe.de/lfbml/example/.

Also, haut rein! Lernt die Sprache (so lang ist die Spezifikation ja nicht) und lasst Eurer Phantasie und Erfindungsgabe freien Lauf. Ich freue mich drauf!

Gruß
Mirko :)
Signatur von »memowe« Mirko Westermeier - Public key: 0x730E195D
Key fingerprint = 55A8 9646 9B58 60AC B5BC 9661 FDD4 93C0 730E 195D