[XML] Buttons vraag

Pagina: 1
Acties:

  • DPhoenix
  • Registratie: Februari 2001
  • Laatst online: 09-09 22:47
Ik heb het volgende in XML:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<CONTROL>
    <caption>OK</caption>
    <name>OK</name>
    <type>button</type>
    <id>OK</id>
    <STYLES>
        <style>Visible</style>
        <style>Tabstop</style>
    </STYLES>
    <POSITION>
        <x>297</x>
        <y>5</y>
        <w>40</w>
        <h>14</h>
    <units>Dialog</units>
    </POSITION>
    <COLOR/>
    <PROCESSINGFLAGS>
        <flag>OnValidate</flag>
    </PROCESSINGFLAGS>
    <FORMAT/>
    <tooltip>Druk op deze knop,\nals u klaar bent met   invoeren\nen de gegevens wilt verwerken</tooltip>
</CONTROL>

Ik weet dat de het handig is om eerst te bekijken hoe er in de output uit zou moeten zien.

Dus de Output moet als volgt in HTML:
code:
1
<INPUT TYPE="submit" VALUE="Ok">

Volgens mij kan het niet echt moeilijk zijn en ik heb ook het een en andere geprobeer en toch lukt het niet |:( . Misschien de MBravenboer of iemand anders even aan de hand van dit voorbeeld kan laten zien hoe het wel moet zodat ik dit als voorbeeld kan gebruiken bij toekomstige problemen :?

AULXJMHR


  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 10:08
Ow wacht, het is de bedoeling dat wij de hele XSLT voor jou gaan schrijven.

*zucht* |:(

  • DPhoenix
  • Registratie: Februari 2001
  • Laatst online: 09-09 22:47
Op donderdag 14 maart 2002 10:26 schreef ddc het volgende:
Ow wacht, het is de bedoeling dat wij de hele XSLT voor jou gaan schrijven.

*zucht* |:(
Als je goed leest wat ik zeg, Is dat ik het al tig keer geprobeert heb. Natuurlijk ga ik er eerst zelf aanzitten anders leer ik er ook nix van. Ik kwam er dus niet uit. En ben vervolgens hier gekomen met de vraag of jullie misschien mij op weg kunnen helpen.

De tutorial www.xfont.com heb ik al bekeken maar dat hielp in dit geval ook niet echt.

AULXJMHR


  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 10:08
Op donderdag 14 maart 2002 10:31 schreef DutchPhoenix het volgende:
Als je goed leest wat ik zeg, Is dat ik het al tig keer geprobeert heb. Natuurlijk ga ik er eerst zelf aanzitten anders leer ik er ook nix van. Ik kwam er dus niet uit. En ben vervolgens hier gekomen met de vraag of jullie misschien mij op weg kunnen helpen.
Nou laat maar zien wat je al hebt geprobeerd dan.

  • DPhoenix
  • Registratie: Februari 2001
  • Laatst online: 09-09 22:47
Ik zat eerst zelf te denken aan dit:
code:
1
2
<xsl:for-each select="DIALOGS/DIALOG/CONTROLS/CONTROL"
<input type=<xsl:value-of select="????" value=<xsl:value-of select="name" />>

Echter ik weet niet welke node ik moet gebruiken uit de XML om voor de "submit" te zorgen zodat er submintbutton weergegeven wordt.

AULXJMHR


  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 10:08
Op donderdag 14 maart 2002 10:41 schreef DutchPhoenix het volgende:
Ik zat eerst zelf te denken aan dit:
code:
1
2
<xsl:for-each select="DIALOGS/DIALOG/CONTROLS/CONTROL"
<input type=<xsl:value-of select="????" value=<xsl:value-of select="name" />>

Echter ik weet niet welke node ik moet gebruiken uit de XML om voor de "submit" te zorgen zodat er submintbutton weergegeven wordt.
Ipv <xsl:value-of-select> op de plaatsen waar je die gebruikt moet je zoiets gebruiken:
code:
1
{/dorum/directories/javascript/text()}

Snap ?
Als je BEGINT met een slash begin je in de document-root, begin je ZONDER slash begin in je in het huidige path :)

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Tja, laat ik maar even reageren omdat je me noemt: Ik ga hier echt niet aan beginnen....

We hebben in het verleden een flink aantal sessies gehad over de size van een window, waaruit telkens bleek dat je werkelijk absoluut geen kaas hebt gegeten van XSLT en XPath... Ik verbaasde mij er telkens weer over dat het nu nog steeds niet gelukt was.

Hier begint nu weer hetzelfde, maar dan voor buttons. Uit je 'voorbeeld XSLT' blijkt opnieuw dat je nog steeds XSLT niet doorhebt en zelfs de XML syntax nog niet helemaal in de gaten hebt...

Wellicht doe je er beter aan om eerst eens rustig een goede tutorial door te nemen (bijvoorbeeld diegene die je noemt op xfront) en wat te experimenteren met de daar genoemde voorbeelden. Je maakt mij niet wijs dat als je de inhoud van de tutorial aldaar beheerst, je nog steeds dit probleem niet kunt oplossen en zelfs met dit voorbeeld van XSLT komt...

* mbravenboer vraagt zich af waarom hij hier uberhaupt reageert...

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 10:08
Applaus voor mbravenboer. Ik had ook al op oudere topics van hem gezocht, en had dezelfde conclusie :z :)

  • DPhoenix
  • Registratie: Februari 2001
  • Laatst online: 09-09 22:47
aha,

Ik ben zelf weer effe aan speuren gegaan en zit nu met het volgende:

Kan XSL niet een statement hebben zodat elke keer als de node
code:
1
<type>Button</type>

voorkomt dat hij automatisch kijkt wat de value (naam) moet zijn.
Moet ik dan denken aan zoiets?:
code:
1
<xsl:for-each select="DIALOGS/DIALOG/CONTROLS/CONTROL/type@button"

Bovenste is niet helemaal correct :?

Echter dan blijft het probleem hoe hij uit het XML moet weten of het een submint/reset/close etc. button is. Misschien dat hij dat ook wel niet eruit kan halen. Dat zal ik even nagaan.

AULXJMHR


  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 10:08
Luister ook vooral niet naar mij hè.... ik geef je zelfs een voorbeeld |:( |:(

  • DPhoenix
  • Registratie: Februari 2001
  • Laatst online: 09-09 22:47
Op donderdag 14 maart 2002 10:48 schreef mbravenboer het volgende:
Tja, laat ik maar even reageren omdat je me noemt: Ik ga hier echt niet aan beginnen....

We hebben in het verleden een flink aantal sessies gehad over de size van een window, waaruit telkens bleek dat je werkelijk absoluut geen kaas hebt gegeten van XSLT en XPath... Ik verbaasde mij er telkens weer over dat het nu nog steeds niet gelukt was.

Hier begint nu weer hetzelfde, maar dan voor buttons. Uit je 'voorbeeld XSLT' blijkt opnieuw dat je nog steeds XSLT niet doorhebt en zelfs de XML syntax nog niet helemaal in de gaten hebt...

Wellicht doe je er beter aan om eerst eens rustig een goede tutorial door te nemen (bijvoorbeeld diegene die je noemt op xfront) en wat te experimenteren met de daar genoemde voorbeelden. Je maakt mij niet wijs dat als je de inhoud van de tutorial aldaar beheerst, je nog steeds dit probleem niet kunt oplossen en zelfs met dit voorbeeld van XSLT komt...

* mbravenboer vraagt zich af waarom hij hier uberhaupt reageert...
Goed, daar heb je een punt in. Ik zal alles nogmaals en dit keer grondiger bestuderen. Ik zal wel weer wat posten als ik met vragen kom als ik XSLT XSL etc meer beheers.

AULXJMHR


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
DutchPhoenix: Goed, daar heb je een punt in. Ik zal alles nogmaals en dit keer grondiger bestuderen. Ik zal wel weer wat posten als ik met vragen kom als ik XSLT XSL etc meer beheers.
Lijkt mij een goed idee :) . Je zult merken dat alles een stuk leuker wordt als je het echt snapt.

Snappen is iets heel anders dan doorgebladerd of gezien hebben :) . Als je volledig de opzet van XSLT en XPath begrijpt rammel je dit er zo uit en zul je zien dat werken met XSLT ook een pretje kan zijn :) .

Veel succes en plezier.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • DPhoenix
  • Registratie: Februari 2001
  • Laatst online: 09-09 22:47
Op donderdag 14 maart 2002 10:57 schreef mbravenboer het volgende:

[..]

Lijkt mij een goed idee :) . Je zult merken dat alles een stuk leuker wordt als je het echt snapt.

Snappen is iets heel anders dan doorgebladerd of gezien hebben :) . Als je volledig de opzet van XSLT en XPath begrijpt rammel je dit er zo uit en zul je zien dat werken met XSLT ook een pretje kan zijn :) .

Veel succes en plezier.
Dank je MBravenboer. Ik ga pas aan de gang met mijn werk als ik die Tutorial van www.xfont.com helemaal begrijp. Dit schiet niet op.

Mocht ik vragen hebben mbt. de tutorial of de XSLT Recommedation dan kan ik nog wel bij je terecht neem ik aan?

AULXJMHR


  • RM-rf
  • Registratie: September 2000
  • Laatst online: 09:53

RM-rf

1 2 3 4 5 7 6 8 9

Op donderdag 14 maart 2002 10:48 schreef mbravenboer het volgende:
* mbravenboer vraagt zich af waarom hij hier uberhaupt reageert...
* RM-rf vindt het ook erg inconsequent van mbravenboer, gelukkig dat menselijk gedrag ook niet valideert, zelfs niet van de grote mb ;)

eventje over het door dennisdotcom genoemde werken met {foo/bar}, ik vraag me af of meen zoiets als:
code:
1
2
3
4
<xsl:template>
   <xsl:element name="input">
      <xsl:attribute name="type"><xsl:value-of select="type"  /></xsl:attribute>
</xsl:element>

niet veel beter is? (alhoewel ik ook altijd het eerder genoemde {.} gebruikte)
is er een reden om werken met xsl:element en xsl:attribute te verkiezen boven {.} ?

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 10:08
Op donderdag 14 maart 2002 11:01 schreef RM-rf het volgende:
* RM-rf vindt het ook erg inconsequent van mbravenboer, gelukkig dat menselijk gedrag ook niet valideert, zelfs niet van de grote mb ;)

eventje over het door dennisdotcom genoemde werken met {foo/bar}, ik vraag me af of meen zoiets als:
code:
1
2
3
4
<xsl:template>
   <xsl:element name="input">
      <xsl:attribute name="type"><xsl:value-of select="type"  /></xsl:attribute>
</xsl:element>

niet veel beter is? (alhoewel ik ook altijd het eerder genoemde {.} gebruikte)
is er een reden om werken met xsl:element en xsl:attribute te verkiezen boven {.} ?
Naar mijn idee is het gemakkelijker om {.} te gebruiken binnen xhtml-tags die naar de browser worden gestuurd. De manier zoals jij zegt kan ook wel, maar je krijgt meer code, en het ziet er ook nog veel ingewikkelder uit. Je naar mijn idee iig minder snel waar de output code staat, en ook in editors wordt het in jouw geval niet in de juiste kleur gezet :).

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
RM-rf: gelukkig dat menselijk gedrag ook niet valideert
hum ;) .

Over je vraag/discussie-punt:

Dit is zoals je vast weet allemaal equivalent:

1)
code:
1
<input type="{type/text()}"/>

2)
code:
1
2
3
4
5
<input>
    <xsl:attribute name="type">
      <xsl:value-of select="type/text()"/>
    </xsl:attribute>
</input>

3)
code:
1
2
3
4
5
<xsl:element name="input">
    <xsl:attribute name="type">
      <xsl:value-of select="type/text()"/>
    </xsl:attribute>
</xsl:element>

Als je een voorkeur wilt gaan uitspreken voor 1 van deze drie methoden moet je eerst weten wat je bij voorkeur zou willen bereiken.

Als je bij voorkeur zoveel mogelijk pure xml wilt, waarbij er geen encodering is in attributen zou je moeten gaan voor methode 3 of 2. Methode 3 heeft echter als groot nadeel dat het uitermate onduidelijke stylesheets op gaat leveren, die totaal uit de klauwen lopen en onleesbaar zullen zijn. Methode 2 is dan op zich nog wel iets voor te zeggen en is ook wel vrij consequent te noemen als je alles wilt beschrijven in XML.

Maar goed: in feite wil je altijd zoveel mogelijk duidelijkheid en leesbaarheid. Methode 1 levert dit denk ik. Het nadeel van methode 1 is dat je een obscure encodering in een attribuut hebt, die vanuit het standpunt van data-beschrijving in XML foei-lelijk is. Maar ja, XSLT is wat dat betreft toch al een rare mix, want in een echt consequente toestand zou je dan ook XPath expressies in XML moeten beschrijven. De XML syntax van XSLT is wellicht nuttig om een globale structuur aan te brengen, maar voor de rest is het eigenlijk gewoon waardeloos en zou ik een ultiem XML doel dus niet nastreven: methode 1 dus :) .

DutchPhoenix: als je vraag interessant genoeg is heb je altijd kans op een antwoord :) . Er lopen hier echter nog meer dan genoeg mensen rond met degelijke XSLT kennis die een wat lagere drempel hebben.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment

Pagina: 1