51

Re: XML

Поделиться

52

Re: XML

Интеграция XML данных:
 Использование XML
 XLink, XPointer, XQuery
w3.org/Consortium/siteindex.html
 RSS
web.resource.org/rss/1.0/spec
 FB2
gribuser.ru/xml/fictionbook/index.html
 WSDL, SOAP, XML-RPC
w3.org/2002/ws/
 MathML
w3.org/Math/
 SVG
w3.org/Graphics/SVG/

 Манипуляция XML данными в Microsoft Office 2010
 Интеграция данных с Microsoft Office Excel 2010
 Интеграция с Microsoft Office Access 2010
 Интеграция с Microsoft Office Word 2010
 Использование Microsoft Office InfoPath 2010
Быстро создаются (практически без программирования)
 Могут повторно использоваться (формат данных – XML)
 Легко собираются в едином месте хранения (библиотеки форм InfoPath)
 Для работы может не требоваться само приложение InfoPath (!) – Forms Server
 Легко интегрируются в существующие бизнес-процессы

Поделиться

53

Re: XML

Поделиться

54

Re: XML

Выводы:
XML используется повсеместно
 Microsoft Office 2010 очень тесно связан с
XML
 XML можно легко подключить к различным офисным приложениям
 Microsoft Office InfoPath 2010 – XML приложение для сбора и обработки бизнес-информации
 Формы InfoPath быстро создаются практически без программрования

Поделиться

55

Re: XML

Поделиться

56

Re: XML

Поделиться

57

Re: XML

Вариант XSL парсинга лотусового XML


<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://_.w3.org/1999/XSL/Transform"
      exclude-result-prefixes="ldn"
      version="1.0"
      xmlns:ldn="http://_.lotus.com/dxl">
      <xsl:namespace-alias stylesheet-prefix="xsl" result-prefix="xsl"/>
    <xsl:output method="xml" version="1.0" omit-xml-declaration="no" indent="yes"/>

    <xsl:template match="ldn:document">
        <!-- создание рутового элемента  -->
        <konteyner>
        <xsl:apply-templates select="ldn:item"/>
        </konteyner>
    </xsl:template>


    <xsl:template match="ldn:item">
   
        <xsl:if test="@name='ЗАГОЛОВОК'">
        <Header>
            <!--<xsl:element name="{@name}"><xsl:value-of select="." /></xsl:element>-->
            <xsl:apply-templates select="ldn:text" />
        </Header>
        </xsl:if>
       
        <xsl:if test="@name='РЕГИСТРАЦИОННЫЙ_НОМЕР'">
                 <RegNumber>
                 <xsl:apply-templates select="ldn:text"/>
   </RegNumber>     
        </xsl:if>
       
            <xsl:if test="@name='ДАТА_РЕГИСТРАЦИИ'">
            <DataReg>
                 <xsl:apply-templates select="ldn:datetime"/>
                 </DataReg>
        </xsl:if>
       
        <xsl:if test="@name='ПРИЛОЖЕНИЯ_'">
            <Applicat>
               <xsl:value-of select="ldn:notesbitmap" />
            </Applicat>

<Word>
<xsl:value-of select="ldn:attachmentref" />
</Word>

</xsl:if>


     <xsl:if test="@name='$FILE'">
      <Filedatetimecreated><xsl:apply-templates select="ldn:object/ldn:file/ldn:created/ldn:datetime"/></Filedatetimecreated>
            <FileNode><xsl:apply-templates select="ldn:object/ldn:file/ldn:filedata"/></FileNode>
        </xsl:if>

       
    </xsl:template>


</xsl:stylesheet>

Поделиться

58

Re: XML

Есть в XML:

<item name="СОДЕРЖАНИЕ" sign="true" seal="true">
<richtext>
<par>
<attachmentref name="4-06.05.2014-0127118666.xml" displayname="4-06.05.2014-0127118666.xml" caption=" - 4-06.05.2014-0127118666.xml">

Хочу с помощью XSL:

<xsl:if test="@name='СОДЕРЖАНИЕ'">
<attachmentrefname>
<xsl:value-of select="ldn:richtext/ldn:par/ldn:attachmentreft/@name" />
</attachmentrefname>
</xsl:if>
Получить значение в узле name.

На выходе только:
<attachmentrefname/>

Поделиться