Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zalanczanie pliku xml
slash.
post 2.11.2003, 16:01:50
Post #1





Grupa: Zarejestrowani
Postów: 113
Pomógł: 0
Dołączył: 7.08.2003
Skąd: Warszawa | Jankowce

Ostrzeżenie: (0%)
-----


Mam takie zadanie - przygotowuje dokumentacje projektu w XML'u projekt sklada sie z plikow XML, XML Schema i szablonow XSL, kazda strona posiada swoj plik XML(jest ich kilkanascie) wszystkie korzystaja z jednego pliku XSD i jednego szablonu XSL, jednak w kazdym z plikow XML ma sie znalezc nazwa projektu i jego wersja - chialbym do tego uzyc powiedzmy pliku projectinfo.xml ktory zawieralby informacje o projekcie - mialby swoj XSD w ktorym zdefiniowalbym w nim strukture - jednak chcialbym wiedziec jak zalaczyc ten plik do pozostalych plikow XML tak aby informacje w nim zawarte byly dostepne dla kazdego z nich,
czyli poprostu chodzi mi o cos takiego jak include() w php, ktos moze wie jak mi pomoc questionmark.gif
Go to the top of the page
+Quote Post
Seth
post 2.11.2003, 16:30:55
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

Ostrzeżenie: (0%)
-----


Za pomoca XSLT mozna dolaczac ronze XMLe ( <xsl:include href="..."/> ) ale nie wiem czy o to Ci chodzilo. Wiecej o dolaczaniu xmla tutaj: http://www.w3.org/TR/xslt
Go to the top of the page
+Quote Post
Dominik
post 2.11.2003, 17:07:50
Post #3





Grupa: Zarejestrowani
Postów: 339
Pomógł: 0
Dołączył: 17.06.2003
Skąd: Białystok

Ostrzeżenie: (0%)
-----


Nie wiem czy dobrze rozumiem chodzi Ci o cos w rodzaju iframe/img w XHTML-u? Jesli tak to polecam XLink i/lub XInclude. Polecam to pierwsze poniewaz XInclude nie jest jeszcze oficjalna rekomendacja (chociaz wlasciwie nie przewiduje zeby cos sie zmienilo).


--------------------
Go to the top of the page
+Quote Post
slash.
post 2.11.2003, 17:23:09
Post #4





Grupa: Zarejestrowani
Postów: 113
Pomógł: 0
Dołączył: 7.08.2003
Skąd: Warszawa | Jankowce

Ostrzeżenie: (0%)
-----


nie no nie wiem co mnie otumanilo chcialem za wszelka cena albo zaincludowac do pliku xml drugiego xml'a albo w jakis sposob dolaczyc do XSD aby sprawdzal dwa pliki XML ale przeciez mozna faktycznie zalaczyc w XSL'u. Dzieki ;-)
Go to the top of the page
+Quote Post
slash.
post 2.11.2003, 17:55:27
Post #5





Grupa: Zarejestrowani
Postów: 113
Pomógł: 0
Dołączył: 7.08.2003
Skąd: Warszawa | Jankowce

Ostrzeżenie: (0%)
-----


upsss chyba nie do konca sie zrozumielismy - wszystko fajnie ale <xsl:include href=""> zalancza inne szablony XSL wiec to mi chyba za duzo nie da ;-) bo ja mam cos takiego:
project.xml
[xml:1:6a9b4e8a04]
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xsdproject.xsd">
<name>cso</name>
<version>1.0 alpha</version>
<desc>Niezawodny i nie powtarzalny system</desc>
<createdby>
<author fname="Michał" who="Devenloper" email="michal@qqqq.net"/>
<author fname="Piotr" who="Devenloper" email="piotr@ttt.net"/>
<author fname="Marcin" who="Designer" email="marcin@ssss.net"/>
</createdby>
<logo height="121" width="434" border="0" name="xxxx.gif"/>
<smallLogo height="121" width="434" border="0" name="xxx.gif"/>
<copyright>All rights reserved xxxx 2003</copyright>
<homesite>http://xxxxxx.net</homesite>
</project>
[/xml:1:6a9b4e8a04]
do tego mam powiedzmy plik
wstep.xml
[xml:1:6a9b4e8a04]
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="xslwstep.xsl"?>
<wstep xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xsd/wstep.xsd">
<title>Wstęp</title>

<link href="spis.xml" target="_self" name="Spis treści"/>
<link href="http://dynamicsite.net" target="_blank" name="DynamicSite Group Website"/>
</wstep>
[/xml:1:6a9b4e8a04]
Nie jesto on rozbudowany ale jak widzmy jest on przetwarzany z uzyciem szablonu XSL (pomijam tutaj plik XML Schema sprawdzajacy poprawnosc dokumenu)
[xml:1:6a9b4e8a04]
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:include href="../project.xml" />
<xsl:template match="/">
<html>
<head>
<title>
<xsl:value-of select="project/name"/> - <xsl:value-of select="wstep/title"/>
</title>
<link href="css/styles.css" rel="stylesheet" media="screen"/>
</head>
<body bgcolor="#f5f5f5" leftmargin="0" marginheight="8" marginwidth="0" topmargin="8">
<div align="center">
<table width="480" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<h1>
<img>
<xsl:attribute name="src">images/<xsl:value-of select="project/logo/@name"/></xsl:attribute>
<xsl:attribute name="height"><xsl:value-of select="project/logo/@height"/></xsl:attribute>
<xsl:attribute name="width"><xsl:value-of select="project/logo/@width"/></xsl:attribute>
</img>
</h1>
<h3>
<br/>
<h2>
<i>
<xsl:value-of select="project/name"/> - <xsl:value-of select="project/version"/>
</i>
</h2>
<br/>
<xsl:value-of select="project/desc"/>
</h3>
<h3>
<br/>
</h3>
<h3>
<br/>
</h3>
<h3>
<br/>
</h3>
<div class="createdby">
<xsl:variable name="key" select="w/createdby/author"/>
<xsl:for-each select="$key">
<xsl:value-of select="@fname"/>
<xsl:if test="@nick">
<i>
&lt;<xsl:value-of select="@nick"/>&gt;
</i>
</xsl:if>
<xsl:value-of select="@lname"/>
<a>
<xsl:attribute name="href">
mailto:<xsl:value-of select="@email" />
</xsl:attribute>
&lt;<xsl:value-of select="@email"/>&gt;<br/>
</a>
<i>
<xsl:value-of select="@who"/>
</i>
<br/>
<br/>
</xsl:for-each>
</div>
<h3><br/></h3>
<h3><br/></h3>
<h3><br/></h3>
<xsl:variable name="key2" select="project/link" />
<center>|
<xsl:for-each select="$key2">
<a>
<xsl:attribute name="href">
<xsl:value-of select="@href" />
</xsl:attribute>
<xsl:attribute name="target">
<xsl:value-of select="@target" />
</xsl:attribute>
<xsl:value-of select="@name" />
</a> |
</xsl:for-each>
</center>
<h4>
<xsl:value-of select="project/copyright"/>
</h4>
</td>
</tr>
</table>
</div>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
[/xml:1:6a9b4e8a04]
Plik ten jest dosc nie poreczny i nie poprawny ale nie wiem jak tu zaczarowac go zeby pobieral potrzebne mu dane z plikow project.xml i wstep.xml - jezeli nie dokonac zlaczenia w XSL to moze w XML'u tak jak wczesniej o tym pisalem questionmark.gif
Sorry jesli troche zamotalem ;-)
Go to the top of the page
+Quote Post
Seth
post 2.11.2003, 17:57:49
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

Ostrzeżenie: (0%)
-----


A daj tak:

[xml:1:8278ffc9ab]<include parse="xml" href="jakisplik.xml"/>[/xml:1:8278ffc9ab]
Go to the top of the page
+Quote Post
slash.
post 2.11.2003, 18:24:05
Post #7





Grupa: Zarejestrowani
Postów: 113
Pomógł: 0
Dołączył: 7.08.2003
Skąd: Warszawa | Jankowce

Ostrzeżenie: (0%)
-----


to include wewnatrz stylu XSL tak questionmark.gif ale w takim razie w jaki sposob odwolac sie do elementow tego dokumentu questionmark.gif bo w takim przypadku bede mial tak jakby dwa glowne elementy
Go to the top of the page
+Quote Post
Seth
post 3.11.2003, 07:44:33
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

Ostrzeżenie: (0%)
-----


Moze to Ci pomoze: http://www.w3.org/TR/xinclude/#XLink
Go to the top of the page
+Quote Post
slash.
post 3.11.2003, 11:21:55
Post #9





Grupa: Zarejestrowani
Postów: 113
Pomógł: 0
Dołączył: 7.08.2003
Skąd: Warszawa | Jankowce

Ostrzeżenie: (0%)
-----


no dzieki mysle ze to powinno pomoc - narazie jeszcze jestem w szkole to tego nie sprawdze ale na pierwszy rzut oka wyglada na rozwiazanie mojego problemu. No to thx.
Go to the top of the page
+Quote Post
Dominik
post 3.11.2003, 12:30:17
Post #10





Grupa: Zarejestrowani
Postów: 339
Pomógł: 0
Dołączył: 17.06.2003
Skąd: Białystok

Ostrzeżenie: (0%)
-----


Cytat
A daj tak:

[xml:1:9a4b4c9efe]<include parse="xml" href="jakisplik.xml"/>[/xml:1:9a4b4c9efe]

Zaraz zaraz!! Nie zapomnij o przestrzeni nazw, bez niej ten znacznik nie istnieje.

[xml:1:9a4b4c9efe]<zacznikGlowny xmlns="jakas.przestrzen.glowna" xmlns:xi="http://www.w3.org/2001/XInclude">
<xi:include parse="xml" href="jakisplik.xml"/>...[/xml:1:9a4b4c9efe]

Lub tak jak wczesniej napisalem dzieki XLink:
A to by wygladalo mniej-wiecej tak:
[xml:1:9a4b4c9efe]<znacznik
xmlns:xlink="http://www.w3.org/1999/xlink"
xlink:type="simple"
xlink:href="jakisplik.xml"
xlink:show="embed"
xlink:title="to tylko przyklad" />[/xml:1:9a4b4c9efe]


--------------------
Go to the top of the page
+Quote Post
slash.
post 9.11.2003, 14:11:54
Post #11





Grupa: Zarejestrowani
Postów: 113
Pomógł: 0
Dołączył: 7.08.2003
Skąd: Warszawa | Jankowce

Ostrzeżenie: (0%)
-----


no wszystko fajnie tylko jak jeszcze okreslic w XML Schema ze uzywamy tego zalaczenia questionmark.gif
Go to the top of the page
+Quote Post
Dominik
post 10.11.2003, 12:34:30
Post #12





Grupa: Zarejestrowani
Postów: 339
Pomógł: 0
Dołączył: 17.06.2003
Skąd: Białystok

Ostrzeżenie: (0%)
-----


Cytat
no wszystko fajnie tylko jak jeszcze okreslic w XML Schema ze uzywamy tego zalaczenia questionmark.gif

Ale chodzi Ci o XLink? Jesli tak to zalezy od parsera (poniewaz dokladnie w specyfikacji tego nie okreslono a, ze parsera takiego nie ma wiec to jest rozmowa wirtualna. A z takimi rozmowani wiesz jak jest...
Ja jednak mam na ten temat podobne zdanie jak kulku tzw "guro XML-a" czyli dziala to analigicznie do XInclude.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.04.2024 - 23:27