mwtoxml.xtr
来自「Delphi XML & XPATH源代码」· XTR 代码 · 共 371 行
XTR
371 行
<XmlTransformation Version="1.0">
<Transform Direction="ToXml" DataEncoding="ISO-8859-1">
<SelectEach from="DATAPACKET\ROWDATA\ROW" dest="\movie-watcher">
<SelectEach from="movie\ROWmovie" dest="\movies\movie">
<Select from="@id" dest="@id"/>
<Select from="@rating" dest="@rating"/>
<Select from="@logo-url" dest="@logo-url"/>
<Select from="@url" dest="@url"/>
<Select from="@name" dest="\name"/>
<Select from="@length" dest="\length"/>
<Select from="@director" dest="\director"/>
<Select from="@synopsis" dest="\synopsis"/>
<SelectEach from="star\ROWstar" dest="\starring\star">
<Select from="@star" dest="\star"/>
</SelectEach>
</SelectEach>
<SelectEach from="cinema\ROWcinema" dest="\cinemas\cinema">
<Select from="@id" dest="@id"/>
<Select from="@name" dest="\name"/>
<Select from="@phone" dest="\phone"/>
<Select from="@address" dest="\address"/>
<Select from="@directions" dest="\directions"/>
<Select from="@candy-bar" dest="\facilities\candy-bar"/>
<Select from="@disabled-access" dest="\facilities\disabled-access"/>
<SelectEach from="prices\ROWprices" dest="\pricing\prices">
<Select from="@pid" dest="@id"/>
<Select from="@name" dest="\name"/>
<Select from="@period" dest="\period"/>
<Select from="@adult" dest="\adult"/>
<Select from="@child" dest="\child"/>
<Select from="@discount" dest="\discount"/>
</SelectEach>
</SelectEach>
<SelectEach from="screening\ROWscreening" dest="\screenings\screening">
<Select from="@movie-id" dest="@movie-id"/>
<Select from="@cinema-id" dest="@cinema-id"/>
<Select from="@start-date" Format_Date="MM/dd/yyyy" dest="\start-date"/>
<Select from="@end-date" Format_Date="MM/dd/yyyy" dest="\end-date"/>
<Select from="@digital-sound" dest="\features\digital-sound"/>
<Select from="@no-passes" dest="\restrictions\no-passes"/>
<SelectEach from="sessions\ROWsessions" dest="\sessions\session">
<Select from="@session" Format_Time="h:mm AMPM" dest="\session"/>
<Select from="@price-id" dest="@price-id"/>
</SelectEach>
</SelectEach>
</SelectEach>
</Transform>
<XmlSchema RootName="movie-watcher"><![CDATA[<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="name" type="nameType"/>
<xs:simpleType name="nameType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="length" type="lengthType"/>
<xs:simpleType name="lengthType">
<xs:restriction base="xs:integer"/>
</xs:simpleType>
<xs:element name="director" type="directorType"/>
<xs:simpleType name="directorType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="star" type="starType"/>
<xs:simpleType name="starType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="starring" type="starringType"/>
<xs:complexType name="starringType">
<xs:sequence>
<xs:element name="star" type="starType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="synopsis" type="synopsisType"/>
<xs:simpleType name="synopsisType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="movie" type="movieType"/>
<xs:complexType name="movieType">
<xs:sequence>
<xs:element name="name" type="nameType"/>
<xs:element name="length" type="lengthType"/>
<xs:element name="director" type="directorType"/>
<xs:element name="starring" type="starringType" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="synopsis" type="synopsisType"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
<xs:attribute name="rating" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="NR=NR"/>
<xs:enumeration value="G=G"/>
<xs:enumeration value="PG=PG"/>
<xs:enumeration value="PG-13=PG-13"/>
<xs:enumeration value="R=R"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="logo-url" type="xs:string"/>
<xs:attribute name="url" type="xs:string"/>
</xs:complexType>
<xs:element name="movies" type="moviesType"/>
<xs:complexType name="moviesType">
<xs:sequence>
<xs:element name="movie" type="movieType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="phone" type="phoneType"/>
<xs:simpleType name="phoneType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="address" type="addressType"/>
<xs:simpleType name="addressType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="directions" type="directionsType"/>
<xs:simpleType name="directionsType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="candy-bar" type="candy-barType"/>
<xs:simpleType name="candy-barType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="disabled-access" type="disabled-accessType"/>
<xs:simpleType name="disabled-accessType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="facilities" type="facilitiesType"/>
<xs:complexType name="facilitiesType">
<xs:sequence>
<xs:element name="candy-bar" type="candy-barType"/>
<xs:element name="disabled-access" type="disabled-accessType"/>
</xs:sequence>
</xs:complexType>
<xs:element name="period" type="periodType"/>
<xs:simpleType name="periodType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="adult" type="adultType"/>
<xs:simpleType name="adultType">
<xs:restriction base="xs:float"/>
</xs:simpleType>
<xs:element name="child" type="childType"/>
<xs:simpleType name="childType">
<xs:restriction base="xs:float"/>
</xs:simpleType>
<xs:element name="discount" type="discountType"/>
<xs:simpleType name="discountType">
<xs:restriction base="xs:float"/>
</xs:simpleType>
<xs:element name="prices" type="pricesType"/>
<xs:complexType name="pricesType">
<xs:sequence>
<xs:element name="name" type="nameType"/>
<xs:element name="period" type="periodType"/>
<xs:element name="adult" type="adultType"/>
<xs:element name="child" type="childType"/>
<xs:element name="discount" type="discountType"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
<xs:element name="pricing" type="pricingType"/>
<xs:complexType name="pricingType">
<xs:sequence>
<xs:element name="prices" type="pricesType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="cinema" type="cinemaType"/>
<xs:complexType name="cinemaType">
<xs:sequence>
<xs:element name="name" type="nameType"/>
<xs:element name="phone" type="phoneType"/>
<xs:element name="address" type="addressType"/>
<xs:element name="directions" type="directionsType"/>
<xs:element name="facilities" type="facilitiesType"/>
<xs:element name="pricing" type="pricingType"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
<xs:element name="cinemas" type="cinemasType"/>
<xs:complexType name="cinemasType">
<xs:sequence>
<xs:element name="cinema" type="cinemaType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="start-date" type="start-dateType"/>
<xs:simpleType name="start-dateType">
<xs:restriction base="xs:date"/>
</xs:simpleType>
<xs:element name="end-date" type="end-dateType"/>
<xs:simpleType name="end-dateType">
<xs:restriction base="xs:date"/>
</xs:simpleType>
<xs:element name="digital-sound" type="digital-soundType"/>
<xs:simpleType name="digital-soundType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="features" type="featuresType"/>
<xs:complexType name="featuresType">
<xs:sequence>
<xs:element name="digital-sound" type="digital-soundType"/>
</xs:sequence>
</xs:complexType>
<xs:element name="no-passes" type="no-passesType"/>
<xs:simpleType name="no-passesType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="restrictions" type="restrictionsType"/>
<xs:complexType name="restrictionsType">
<xs:sequence>
<xs:element name="no-passes" type="no-passesType"/>
</xs:sequence>
</xs:complexType>
<xs:element name="session" type="sessionType"/>
<xs:complexType name="sessionType">
<xs:sequence/>
<xs:attribute name="price-id" type="xs:string" use="required"/>
</xs:complexType>
<xs:element name="sessions" type="sessionsType"/>
<xs:complexType name="sessionsType">
<xs:sequence>
<xs:element name="session" type="sessionType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="screening" type="screeningType"/>
<xs:complexType name="screeningType">
<xs:sequence>
<xs:element name="start-date" type="start-dateType"/>
<xs:element name="end-date" type="end-dateType"/>
<xs:element name="features" type="featuresType"/>
<xs:element name="restrictions" type="restrictionsType"/>
<xs:element name="sessions" type="sessionsType"/>
</xs:sequence>
<xs:attribute name="movie-id" type="xs:string" use="required"/>
<xs:attribute name="cinema-id" type="xs:string" use="required"/>
</xs:complexType>
<xs:element name="screenings" type="screeningsType"/>
<xs:complexType name="screeningsType">
<xs:sequence>
<xs:element name="screening" type="screeningType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="movie-watcher" type="movie-watcherType"/>
<xs:complexType name="movie-watcherType">
<xs:sequence>
<xs:element name="movies" type="moviesType"/>
<xs:element name="cinemas" type="cinemasType"/>
<xs:element name="screenings" type="screeningsType"/>
</xs:sequence>
</xs:complexType>
</xs:schema>]]></XmlSchema>
<CdsSkeleton><![CDATA[<DATAPACKET Version="2.0">
<METADATA>
<FIELDS>
<FIELD attrname="id" fieldtype="string" WIDTH="3" required="true"/>
<FIELD attrname="movie" fieldtype="nested">
<FIELDS>
<FIELD attrname="id" fieldtype="string" WIDTH="3" required="true"/>
<FIELD attrname="rating" fieldtype="string" WIDTH="5" required="true"/>
<FIELD attrname="logo-url" fieldtype="string" WIDTH="50"/>
<FIELD attrname="url" fieldtype="string" WIDTH="50"/>
<FIELD attrname="name" fieldtype="string" WIDTH="40"/>
<FIELD attrname="length" fieldtype="i4"/>
<FIELD attrname="director" fieldtype="string" WIDTH="30"/>
<FIELD attrname="synopsis" fieldtype="string" WIDTH="1000"/>
<FIELD attrname="star" fieldtype="nested">
<FIELDS>
<FIELD attrname="star" fieldtype="string" WIDTH="30"/>
</FIELDS>
<PARAMS/>
</FIELD>
</FIELDS>
<PARAMS/>
</FIELD>
<FIELD attrname="cinema" fieldtype="nested">
<FIELDS>
<FIELD attrname="id" fieldtype="string" WIDTH="3" required="true"/>
<FIELD attrname="name" fieldtype="string" WIDTH="30" required="true"/>
<FIELD attrname="phone" fieldtype="string" WIDTH="12" required="true"/>
<FIELD attrname="address" fieldtype="string" WIDTH="50" required="true"/>
<FIELD attrname="directions" fieldtype="string" WIDTH="1000"/>
<FIELD attrname="candy-bar" fieldtype="string" WIDTH="1"/>
<FIELD attrname="disabled-access" fieldtype="string" WIDTH="1"/>
<FIELD attrname="prices" fieldtype="nested">
<FIELDS>
<FIELD attrname="pid" fieldtype="string" WIDTH="5" required="true"/>
<FIELD attrname="name" fieldtype="string" WIDTH="30" required="true"/>
<FIELD attrname="period" fieldtype="string" WIDTH="30" required="true"/>
<FIELD attrname="adult" fieldtype="r8" required="true"/>
<FIELD attrname="child" fieldtype="r8" required="true"/>
<FIELD attrname="discount" fieldtype="r8"/>
</FIELDS>
<PARAMS/>
</FIELD>
</FIELDS>
<PARAMS/>
</FIELD>
<FIELD attrname="screening" fieldtype="nested">
<FIELDS>
<FIELD attrname="movie-id" fieldtype="string" WIDTH="3" required="true"/>
<FIELD attrname="cinema-id" fieldtype="string" WIDTH="2" required="true"/>
<FIELD attrname="start-date" fieldtype="date" required="true"/>
<FIELD attrname="end-date" fieldtype="date" required="true"/>
<FIELD attrname="digital-sound" fieldtype="string" WIDTH="3"/>
<FIELD attrname="no-passes" fieldtype="string" WIDTH="1"/>
<FIELD attrname="sessions" fieldtype="nested">
<FIELDS>
<FIELD attrname="session" fieldtype="time" required="true"/>
<FIELD attrname="price-id" fieldtype="string" WIDTH="5" required="true"/>
</FIELDS>
<PARAMS/>
</FIELD>
</FIELDS>
<PARAMS/>
</FIELD>
</FIELDS>
<PARAMS/>
</METADATA><ROWDATA/></DATAPACKET>
]]></CdsSkeleton>
<XslTransform/>
<Skeleton><![CDATA[<?xml version="1.0"?>
<!-- Movie watchers data -->
<movie-watcher>
<movies>
<movie id="" rating="" logo-url="" url="">
<name></name>
<length></length>
<director></director>
<starring>
<star></star>
</starring>
<synopsis></synopsis>
</movie>
</movies>
<cinemas>
<cinema id="">
<name></name>
<phone></phone>
<address></address>
<directions></directions>
<facilities>
<candy-bar></candy-bar>
<disabled-access></disabled-access>
</facilities>
<pricing>
<prices id="">
<name></name>
<period></period>
<adult></adult>
<child></child>
<discount></discount>
</prices>
</pricing>
</cinema>
</cinemas>
<screenings>
<screening movie-id="" cinema-id="">
<start-date></start-date>
<end-date></end-date>
<features>
<digital-sound></digital-sound>
</features>
<restrictions>
<no-passes></no-passes>
</restrictions>
<sessions>
<session price-id=""/>
</sessions>
</screening>
</screenings>
</movie-watcher>
]]></Skeleton>
</XmlTransformation>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?