Re: XML
От: Аноним  
Дата: 26.09.05 08:20
Оценка: +1
XSLT?
XML
От: Sahivi  
Дата: 26.09.05 07:33
Оценка:
Тут задачка такая появилась —

есть XML файл, из которого читается Document

есть другой документ формата
<tag1>
<a />
<b />
</tag1>

Нужно — переписать файл таким образом, чтобы в файле заменён раздел <tag1>..</tag1> на документ

т.е. ничего остального не пропало.

помогите, Please, может быть как то это можно сделать не особо громоздко, очень нужно.
Re[2]: XML
От: Sahivi  
Дата: 26.09.05 08:46
Оценка:
Здравствуйте, Аноним, Вы писали:

А>XSLT?



нет просто есть один xml файл, который отредактировать нужно таким способом
Re[3]: XML
От: all-x Россия http://treedl.sf.net
Дата: 26.09.05 08:50
Оценка:
Здравствуйте, Sahivi, Вы писали:

S>Здравствуйте, Аноним, Вы писали:


А>>XSLT?


S>нет просто есть один xml файл, который отредактировать нужно таким способом


Вот и предлагается написать для этого простую трансформацию на XSLT.
К сожалению, в этой области я "рыбак-теоретик", поэтому пример быстро не напишу.
Re[4]: XML
От: Sahivi  
Дата: 26.09.05 08:57
Оценка:
Здравствуйте, all-x, Вы писали:

AX>Здравствуйте, Sahivi, Вы писали:


S>>Здравствуйте, Аноним, Вы писали:


А>>>XSLT?


S>>нет просто есть один xml файл, который отредактировать нужно таким способом


AX>Вот и предлагается написать для этого простую трансформацию на XSLT.

AX>К сожалению, в этой области я "рыбак-теоретик", поэтому пример быстро не напишу.


не понимаю как
есть

Document doc1 = builder.parse(path);
Document doc2 = createDoc();

нужно найти в doc1 нужный тег (равный главному в Doc2) и заменить на doc2 итоговый doc положить в файл (path)
Re: XML
От: vaxyzek  
Дата: 26.09.05 09:17
Оценка:
Здравствуйте, Sahivi, Вы писали:

S>Тут задачка такая появилась —


Может быть следующее спасет отца русской демократии?
Я делаю так, msxsl in.xml convert.xsl -o out.xml, но можно и с помощью любого другого транслятора?

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="tag1">
    <Document>
        <xsl:apply-templates/>
    </Document>
</xsl:template>

<xsl:template match="*">
    <xsl:element name="{name()}">
        <xsl:apply-templates select="attribute::*" />
        <xsl:apply-templates select="child::node()"/>
    </xsl:element>
</xsl:template>

<xsl:template match="attribute::*">
    <xsl:attribute name="{name()}">
        <xsl:value-of select="." />
    </xsl:attribute>
</xsl:template>

</xsl:stylesheet>
Из каждой функции бывают свои исключения....
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.