Avatar billede daxwax2003 Nybegynder
22. april 2003 - 17:02 Der er 11 kommentarer

mellemrum i XML stylesheet?

Jeg har et problem med en lille skoleopgave i xml. Jeg skal såmænd blot have indsat nogle mellemrum i mit xsl-stylesheet således at der er mellemrum mellem de følgende danske og franske termer, mellemrum er illustreret med --->:

blomster- ~ ------>jardinére *

~ af bagværk ------> piéce montée *

~ på møbel ------> plateau surtout de table

~ på skrivebord ------> tablettes * , casier

lille artikel o.l. article , ------> note * , notice * , mémoire , mémorandum , articulet

karnisformet opsats ------> doucine *
opsats med snegleindgreb ------> hausse ... crémaillére ... spirale
opsats med tandhjulsindgreb ------> h. ... crémaillére

(mit xml dok)
http://www.thefatman.dk/pub/files/AMxml2.xml
(mit stylesheet)
http://www.thefatman.dk/pub/files/AMvisning2.xsl

hvis i kigger på linket til mit xml dokument kan I se at ovenstående mellemrum mangler, men hvilke koder og hvor skal de indsættes i mit XSL stylesheet?

på forhånd tak
Avatar billede getalife Nybegynder
22. april 2003 - 17:07 #1
Jeg vil foreslå en tabel i din løkke
<table>
<xsl:for-each bla bla>
  <td>
    <xsl:value-of resultat1>
  </td>
  <td>
    <xsl:value-of resultat1>
  </td>
</xsl:for-each>
</table>
Avatar billede getalife Nybegynder
22. april 2003 - 17:08 #2
sådan lidt pseudokode.. håber det giver lidt mening :)
Avatar billede getalife Nybegynder
22. april 2003 - 17:09 #3
men hvis du VIL bruge mellemrum kan du bruge &#160;
Avatar billede daxwax2003 Nybegynder
22. april 2003 - 17:11 #4
jeg er total noob til xml men jeg vil prøve at rode lidt med tabellen. Mht. &#160; så har jeg prøvet at indsætte det forskellige steder, men der sker bare ikke noget. Hvor er det helt præcist det skal stå?
Avatar billede getalife Nybegynder
22. april 2003 - 17:12 #5
uhm.. det gik vist lidt for hurtigt..
<table>
<xsl:for-each bla bla>
<tr>
  <td>
    <xsl:value-of resultat1>
  </td>
  <td>
    <xsl:value-of resultat1>
  </td>
</tr>
</xsl:for-each>
</table>
Avatar billede getalife Nybegynder
22. april 2003 - 17:16 #6
<xsl:value-of select="glos"/>&#160;
Avatar billede feynor Nybegynder
22. april 2003 - 17:18 #7
<xsl:text disable-output-escaping="yes|no">      </xsl:text>
http://www.w3schools.com/xsl/el_text.asp
Avatar billede daxwax2003 Nybegynder
22. april 2003 - 17:30 #8
hey nu begynder det at ligne noget :-)

getalife--> jeg brugte mellemrumskoden foran <xsl:value-of select="glos"/> og det virkede. Nu er det kun de nederste 3 der mangler:

karnisformet opsats ------> doucine *
opsats med snegleindgreb ------> hausse ... crémaillére ... spirale
opsats med tandhjulsindgreb ------> h. ... crémaillére
i XML dokumentet er disse elementer placeret for sig under "forbindelser"
Avatar billede getalife Nybegynder
22. april 2003 - 17:35 #9
Jeg ville smide den ind efter <xsl:value-of select="./ord" /> ...
Avatar billede daxwax2003 Nybegynder
22. april 2003 - 17:40 #10
ja det prøvede jeg også, men problemet er at "ord" bliver brugt igennem hele dokumentet, så der vil blive uønskede mellemrum over det hele. kan man ikke specificere at det kun er det "ord" element som fremtræder i elementet "forbindelser"? Jeg har jo noget kode der hedder:

<xsl:if test="position()=last()">
<xsl:for-each select="../forbindelser">

kan man ikke manipulere lidt med den?

godt være jeg spørger dumt men jeg tænkte noget i retning af:

<xsl:if test="position()=last()">
<xsl:for-each select="../forbindelser/ord"> (bemærk det sidste "ord")
Avatar billede janegil Nybegynder
23. april 2003 - 10:01 #11
Får du ikke et mellomrom i output ved å plassere
<xsl:text> </xsl:text>
i stilarket?

Og for å unngå at mellomrommet blir håndtert som generelt whitespace, så kanskje heller bruke nobreaking space:
<xsl:text>&#x00A0;</xsl:text>

For øvrig har jeg den ubehagelige erfaring at linjeskift i stilarket, i tilknytning til tekstnoder, gir whitespace i output. Men dette er i beste fall en uoversiktlig måte å skaffe seg mellomrom.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester