Annotation of parser3/www/htdocs/mailreceive.eml, revision 1.1
1.1 ! paf 1: From: "Alexandr Petrosian \(PAF\)" <PAF@design.ru>
! 2: To: "Developers" <dev@design.ru>
! 3: Subject: xpath: id function
! 4: Date: Fri, 16 Aug 2002 16:58:03 +0400
! 5: MIME-Version: 1.0
! 6: Content-Type: multipart/mixed;
! 7: boundary="----=_NextPart_000_0048_01C24546.1605A090"
! 8: X-Priority: 3
! 9: X-MSMail-Priority: Normal
! 10: X-Mailer: Microsoft Outlook Express 6.00.2600.0000
! 11: X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
! 12:
! 13: This is a multi-part message in MIME format.
! 14:
! 15: ------=_NextPart_000_0048_01C24546.1605A090
! 16: Content-Type: text/plain;
! 17: charset="koi8-r"
! 18: Content-Transfer-Encoding: 8bit
! 19:
! 20: можно частично определить DTD документа, определив только атрибуты типа ID.
! 21: {attachment} пример .dtd
! 22:
! 23: при этом документ не будет valid, но это позволит позволяет делать такие
! 24: XPath запросы:
! 25: <xsl:template match="refitem">
! 26: ... select="id(@refid)/..."
! 27: {attachment} пример .xsl
! 28:
! 29: которые работают через hash-lookup-ы, т.е. супербыстро.
! 30:
! 31: тест 3000 запросов к 3000 узлам работает меньше секунды.
! 32:
! 33: используйте!
! 34:
! 35: PAF
! 36:
! 37: ------=_NextPart_000_0048_01C24546.1605A090
! 38: Content-Type: text/xml;
! 39: name="test.xsl"
! 40: Content-Transfer-Encoding: quoted-printable
! 41: Content-Disposition: attachment;
! 42: filename="test.xsl"
! 43:
! 44: <?xml version=3D"1.0"?>=20
! 45: <xsl:stylesheet xmlns:xsl=3D"http://www.w3.org/1999/XSL/Transform" =
! 46: version=3D"1.0">
! 47:
! 48: <xsl:template match=3D"document">
! 49: <output>
! 50: <xsl:apply-templates select=3D"refitems"/>
! 51: </output>
! 52: </xsl:template>
! 53:
! 54: <xsl:template name=3D"refitems">
! 55: z<xsl:apply-templates select=3D"refitem"/> =09
! 56: </xsl:template>
! 57:
! 58: <xsl:template match=3D"refitem">
! 59: <xsl:value-of select=3D"id(@refid)/@id"/>
! 60: </xsl:template>
! 61:
! 62: </xsl:stylesheet>
! 63:
! 64: ------=_NextPart_000_0048_01C24546.1605A090
! 65: Content-Type: text/xml;
! 66: name="test.dtd"
! 67: Content-Transfer-Encoding: 7bit
! 68: Content-Disposition: attachment;
! 69: filename="test.dtd"
! 70:
! 71: <?xml version="1.0" encoding="ISO-8859-1"?>
! 72:
! 73: <!ELEMENT document ANY>
! 74: <!ELEMENT items (item*)>
! 75: <!ELEMENT item EMPTY>
! 76: <!ATTLIST item
! 77: id ID #REQUIRED
! 78: >
! 79:
! 80: <!ELEMENT refitems (refitem*)>
! 81: <!ELEMENT refitem EMPTY>
! 82: <!ATTLIST refitem
! 83: refid IDREF #REQUIRED
! 84: >
! 85:
! 86: <!ATTLIST refitem
! 87: value CDATA #REQUIRED
! 88: >
! 89:
! 90: ------=_NextPart_000_0048_01C24546.1605A090--
E-mail: