Avatar billede runekeldsen Nybegynder
17. januar 2007 - 21:19 Der er 6 kommentarer og
1 løsning

Opstilling af XML

Er det muligt ved bruge af stylesheets eller andet at få xml til at skifte linje efter atributter.

så dette xml:
<textarea fieldName="adressat" displayLabel="Adressat:" ignoreData="yes" readAlways="yes" custom_oninit="" noPost="yes" width="2" rows="4" />

kommer til at se sådan ud:
        <textarea
            fieldName="adressat"
            displayLabel="Adressat:"
            ignoreData="yes"
            readAlways="yes"
            custom_oninit=""
            noPost="yes"
            width="2"
            rows="4" />

Håber at der er nogen der kan hjælpe.
Avatar billede Slettet bruger
17. januar 2007 - 22:50 #1
Hvor er det du gerne vil have dette output? Er det i en XML editor, eller i selve sourcekoden?

/CS
Avatar billede runekeldsen Nybegynder
17. januar 2007 - 23:13 #2
Jeg er ved at lave et program i C# og det er når xml'en blier gemt i et dokument i filsystemet.
Avatar billede Slettet bruger
17. januar 2007 - 23:27 #3
OK - så vil jeg gå ud fra at det er når du bare åbner filen (dobbelklikker) for at gennemse den, og den åbner i Internet Explorer. Desværre bruger IE sit eget interne XSL stylesheet til at vise XML med (det ligger på denne URL: res://msxml.dll/defaultss.xsl), hvilket ikke kan omdefineres.

Du kan godt bruge et andet stylesheet (XSLT eller CSS), men det kræver at du indsætter en linje øverst i XML filen (efter linjen med <?xml version="1.0" ?> og før rod-elementet):

  <?xml-stylesheet href="sti/til/dit/stylesheet.(xsl|css)" type="text/(xsl|css)" ?>
Avatar billede runekeldsen Nybegynder
18. januar 2007 - 15:58 #4
Mange tak for dit svar.

Jeg ville faktisk gerne have hvis selve xml var gemt sådan i filen at den skiftede linje efter atributter. Hvis jeg efter at have gemt filen åbner den med notepad vil jeg også at den skal se sådan ud.

Det er nok nærmere en transformation end stylesheet jeg er interesseret i.

Man kan eksempelvis indsætte det nedenstående i en transformation og så får man lavet indrykning i sin xml:
<xsl:output method="xml" omit-xml-declaration="no" encoding="utf-8" indent="yes"/>
Avatar billede Slettet bruger
18. januar 2007 - 21:31 #5
Det er helt sikkert en transformation - men nok ikke den vanskeligste af slagsen. Spørgsmålet er så hvordan du får det ind i dit "system"...

Jeg er ikke C# haj, men kan dog regne ud at du ikke skal bruge en XmlWriter (eller hvad den nu hedder) men en TextWriter for at kunne hacke den slags i outputtet (den form for whitespace er det der klassificeres som "Insignificant Whitespace" af XML specifikationen, og derfor kollapses ved brug af tools der skriver XML).
Avatar billede runekeldsen Nybegynder
19. januar 2007 - 18:17 #6
Jeg kunne selvfølgelig skrive xml'en som text men jeg synes det ville være kønnere hvis jeg kunne sende min xml igennem en transformation og så få lavet linieskift efter attributter.

Hvis ikke dette kan gøres så har du ret så må det være text istedet.
Avatar billede runekeldsen Nybegynder
28. januar 2007 - 12:01 #7
Det tyder på at jeg må prøve med dit forslag med at skrive det som tekst istedet for xml. Tak for dit svar.
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