ηλί, ηλί, λαμά σαβαχθανί!?
XML till SVG
Tja!
Jag har fått sommarjobb på ett företag. Mitt uppdrag är att av en XML-fil skapa ett träddiagram i SVG-format som gör det enkelt att titta och förstå uppbyggnaden. Just nu använder man MS Visio. När man ska ändra någonting i XML-filen och vill ändra det samma i Visio måste man göra detta manuellt och därför vill man komma ifrån Visio.
Det största av alla problem är att jag aldrig tidigare arbetat med något av det ovanstående och därför skulle behöva hjälp med att sätta mig in i alla begrepp och försöka få en förståelse för hur saker och ting fungerar.
Jag behöver alltså tips och förslag om hur man ska gå till väga samt någon guide/toutorial. Jag har kollat in toutorials och guider på http://www.w3schools.com men det känns som om det jag ska göra är aningen mer komplicerat.
Tack på förhand!
Jag tippar på att du inte får påverka XML-filen strukturmässigt. Med andra ord så har du din data precis som den ska vara.
Har ni diskuterat om hur layouten ska se ut?
Har ni diskuterat hur det skall göras?
Diverse verktyg för att skapa och i vilket verktyg det skall presenteras.
Hur menar du med "därför vill man komma ifrån Visio"?
Det verkar finnas många guider på nätet som gör liknande. Det som är frågetecknet är hur det skall göras.
Denna använder XSL (väldigt vanligt mellan XML-data till SVG-presentation) och lite Javascript:
http://www.cwu.edu/~gellenbe/docs/xmltouml/xmltechnicalreport...
Det går ju att skapa upp allt i Javascript, serverside eller på andra sätt också.
Jag tror det är viktigt att specifiera upp från företaget hur det ska göras från första början om du inte har helt fria händer.
Jag tippar på att du inte får påverka XML-filen strukturmässigt. Med andra ord så har du din data precis som den ska vara.
Har ni diskuterat om hur layouten ska se ut?
Har ni diskuterat hur det skall göras?
Diverse verktyg för att skapa och i vilket verktyg det skall presenteras.
Hur menar du med "därför vill man komma ifrån Visio"?
Det verkar finnas många guider på nätet som gör liknande. Det som är frågetecknet är hur det skall göras.
Denna använder XSL (väldigt vanligt mellan XML-data till SVG-presentation) och lite Javascript:
http://www.cwu.edu/~gellenbe/docs/xmltouml/xmltechnicalreport...
Det går ju att skapa upp allt i Javascript, serverside eller på andra sätt också.
Jag tror det är viktigt att specifiera upp från företaget hur det ska göras från första början om du inte har helt fria händer.
Det är inget som säger att man inte kan ändra strukturen på XML-filen men jag vet inte hur den skulle kunna förbättras.
Layouten ska vara ett träddiagram där ett system/maskin bryts ner i sina mindre beståndsdelar.
Vi har diskuterat och ungefär kommit fram till att det borde gå att göra. In XML och en XSL-fil en processor få ut en SVG-bild.
Det är en ganska strikt policy om vad man får ladda ner och installera på datorn men det ska nog kunna gå att få in de program man behöver genom att snacka med datanissarna.
Det finns ingen direktkoppling mellan XML och Visio. Ska ändra någonting i systemet/maskinen (någon del ska bytas ut etc) så måste man först ändra i XML-filen och sedan för hand ändra i Visio-filen. Man vill alltså slippa sitta och rita för hand i Visio och istället få det till att när man ändrar i XML-filen så ändras "trädet" direkt. Visio har man bara för att det är så mycket lättare att förstå när man tittar på den än vad det är när man skådar XML-filen.
Jag har fått jobbet genom min låtsas-farsa och eftersom man inte vet exakt hur det ska gå till har jag också ganska fria händer.
Ingenjörerna på jobbet bryr sig inte om det inte ser lika snyggt ut som ett Visio-diagram utan vill bara slippa sitta och ändra på två ställen.
Länken du länka har jag varit inne på och vänt men det kanske vore värt en titt till.
Tillsammans med en annan sommarjobbare lyckades vi idag göra ett träd med hjälp av en XSL vi hittade online. Dock så är det så många delar i systemet barnen och deras barn hamnade i varandra men jag ska ge det ett nytt försök imorgon.
Hittar dock inte XSL-filen när jag letade nu. Har den sparad på jobbet så kan länka den imorgon så kan du få slå en kik på den.
Det är inget som säger att man inte kan ändra strukturen på XML-filen men jag vet inte hur den skulle kunna förbättras.
Layouten ska vara ett träddiagram där ett system/maskin bryts ner i sina mindre beståndsdelar.
Vi har diskuterat och ungefär kommit fram till att det borde gå att göra. In XML och en XSL-fil en processor få ut en SVG-bild.
Det är en ganska strikt policy om vad man får ladda ner och installera på datorn men det ska nog kunna gå att få in de program man behöver genom att snacka med datanissarna.
Det finns ingen direktkoppling mellan XML och Visio. Ska ändra någonting i systemet/maskinen (någon del ska bytas ut etc) så måste man först ändra i XML-filen och sedan för hand ändra i Visio-filen. Man vill alltså slippa sitta och rita för hand i Visio och istället få det till att när man ändrar i XML-filen så ändras "trädet" direkt. Visio har man bara för att det är så mycket lättare att förstå när man tittar på den än vad det är när man skådar XML-filen.
Jag har fått jobbet genom min låtsas-farsa och eftersom man inte vet exakt hur det ska gå till har jag också ganska fria händer.
Ingenjörerna på jobbet bryr sig inte om det inte ser lika snyggt ut som ett Visio-diagram utan vill bara slippa sitta och ändra på två ställen.
Länken du länka har jag varit inne på och vänt men det kanske vore värt en titt till.
Tillsammans med en annan sommarjobbare lyckades vi idag göra ett träd med hjälp av en XSL vi hittade online. Dock så är det så många delar i systemet barnen och deras barn hamnade i varandra men jag ska ge det ett nytt försök imorgon.
Hittar dock inte XSL-filen när jag letade nu. Har den sparad på jobbet så kan länka den imorgon så kan du få slå en kik på den.
Ok. Kul att det går framåt.
Det låter som att det går bättre än vad du skrev i första posten i alla fall.
Här har du den filen jag använde igår. Jag bytte helt enkelt bara ut XML-filen mot den i exemplet. Jag kan dock inte få fram hur man gör så att xsl skriver ut namnet på taggar.
Fungerar detta?
http://stackoverflow.com/questions/2154533/selecting-current-...
ηλί, ηλί, λαμά σαβαχθανί!?
Tack för svar!
Ja det har gått bättre för varje dag men nu har vi fastnat igen. Tills nu har vi gjort transformationen genom msxsl men den stödjer inte alla funktioner som vi behöver, xsl 1.1 etc. Förstår jag det hela rätt så måste man i det här exemplet (sidan 440) använda sig av java's "Math-bibliotek" då man ska räkna ut vissa värden. Rätta mig om jag har fel, kan absolut ingenting om java. Det vi vill göra är att anpassa utformningen på trädet så element med många underelement får större plats i trädet (så boxarna inte går in varandra eller täcker varandra). Du kan se det i exemplet. Jag förstår inte riktigt vad man gör i exemplet eller om det går att göra på samma sätt men utan xsl 1.1 så det skulle vara bra om du kunde förklara.
Varför laddar vi då inte ner Saxon eller Xalan? Jo, inget av programmen är godkända att använda hos företaget och därför måste man först "utreda" om vi ska få använda programmet eller inte. Nu sitter jag och väntar på att något av programmen förhoppningsvis ska bli godkända.
Tack för svar!
Ja det har gått bättre för varje dag men nu har vi fastnat igen. Tills nu har vi gjort transformationen genom msxsl men den stödjer inte alla funktioner som vi behöver, xsl 1.1 etc. Förstår jag det hela rätt så måste man i det här exemplet (sidan 440) använda sig av java's "Math-bibliotek" då man ska räkna ut vissa värden. Rätta mig om jag har fel, kan absolut ingenting om java. Det vi vill göra är att anpassa utformningen på trädet så element med många underelement får större plats i trädet (så boxarna inte går in varandra eller täcker varandra). Du kan se det i exemplet. Jag förstår inte riktigt vad man gör i exemplet eller om det går att göra på samma sätt men utan xsl 1.1 så det skulle vara bra om du kunde förklara.
Varför laddar vi då inte ner Saxon eller Xalan? Jo, inget av programmen är godkända att använda hos företaget och därför måste man först "utreda" om vi ska få använda programmet eller inte. Nu sitter jag och väntar på att något av programmen förhoppningsvis ska bli godkända.
Jag har inte hållt på allt för mycket med xslt, xml och svg tillsammans. Vad jag vet så finns det många olika sätt att göra det på. Mitt förslag är att när ni väl har en variant ni har börjat med så borde ni köra på det. Jag hade exempelvis inte blandat in Java för några mattefunktioner.
Exemplet använder sig av Math-funktioner i Java, exempelvis max(). Det enda max() gör är att returnera den största av två inputvärden.
Math.max(1,2); // Returnerar 2
Det går ju att få fram det resultatet utan den funktionen med vanliga if-satser.
Om ni har tillgång att köra Javascript så kan man göra den funktionen där också.
ηλί, ηλί, λαμά σαβαχθανί!?
- Igår Nvidia: "Energieffektiva RTX 4060 sparar hundralappar" 36
- Igår MSI Geforce RTX 4060 Ventus 2X OC – bra prestanda vid 1080p men medioker kylare 45
- Igår Noctua släpper monteringsram för "deliddade" Ryzen 7000-processorer 15
- Igår Nvidias nästa arkitektur för Geforce kommer år 2025 58
- 27 / 6 Afox släpper kompakt Geforce RTX 4090 36
- Igår Veckans fråga: Vilket operativsystem föredrar du? 78
- Igår Bilar med smarta inslag ger fler dumma fel 58
- 27 / 6 Telekombranschen: "Smarta glasögon ersätter telefoner inom fem år" 88
- 26 / 6 Lastpass-användare rasar – kan inte logga in 59
- 26 / 6 Inet frågar SweClockers – Vad skulle du vilja förbättra på Inet.se? 53
- PSVR2 - diskussionstråd444
- Solfilm till fönster för sommarvärmen. Behöver råd.30
- Hjälp angående gammal psu och "nytt" grafikkort2
- Ert dyraste ” datormisstag”?402
- Vad lyssnar du på just nu?12615
- Fästingar.2
- Starfield utvecklas med AMD:s välsignelse148
- Krönika: Teknikutvecklingen avstannar – men det gör också uppgraderingsbehovet67
- Veckans fråga: Vilket operativsystem föredrar du?78
- Bildvisnings program6
- Säljes LG 27'' UltraGear 27GP950 4K Nano IPS 160 Hz HDMI 2.1
- Säljes Star Wars Jedi AMD kod
- Säljes Trasig Xiaomi Mi Electric Scooter (M365) Svart
- Säljes 5800x3D + x570 Meg Unify + be quiet! Dark Rock Slim
- Säljes AMD ASUS DUAL RX6700XT
- Säljes Dell OptiPlex 7010
- Säljes Datordelar: i5 9600k + 1070 GTX mm.
- Säljes 1080 TI | Vattenblock | 1TB SSD | Apple Watch 4 Stainless | Hörlurar | Mikrofon
- Säljes Intressekoll: Xbox Series S 512Gb samt Switch Oled 64Gb Vit
- Säljes Gamingdator RTX 3090, i9-10900K, 32GB ram
- Nvidia: "Energieffektiva RTX 4060 sparar hundralappar"36
- MSI Geforce RTX 4060 Ventus 2X OC – bra prestanda vid 1080p men medioker kylare45
- Veckans fråga: Vilket operativsystem föredrar du?78
- Bilar med smarta inslag ger fler dumma fel58
- Noctua släpper monteringsram för "deliddade" Ryzen 7000-processorer15
- Nvidias nästa arkitektur för Geforce kommer år 202558
- Microsoft vill strömma Windows från molnet71
- Starfield utvecklas med AMD:s välsignelse148
- Telekombranschen: "Smarta glasögon ersätter telefoner inom fem år"88
- En av tre svenskar använder annonsblockerare79
Externa nyheter
Spelnyheter från FZ
- Alan Wake och CoD: Kallt krig snart på PS Plus, enligt läcka igår
- Red Dead Redemption åldersmärkt igen i Korea – det spekuleras i remaster igår
- Fallout London flyttas för att slippa Starfield-konkurrensen igår
- Minecraft-filmen kan ha hittat sin Steve – Pedro "The Last of Us-Joel" Pascal igår
- Stor Diablo IV-patch släppt, mer XP och ombalanserade klasser igår