fsm.specification.xsd

来自「有限状态机程序自动生成器可以自动生成C、C++和Java程序。自动生成的程序很容」· XSD 代码 · 共 102 行

XSD
102
字号
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
  <xs:element name="specification">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="machine"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="machine">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="start"/>
        <xs:element ref="states"/>
        <xs:element ref="events"/>
        <xs:element ref="transitions"/>
        <xs:element ref="callbacks"/>
        <xs:element ref="hooks"/>
      </xs:sequence>
      <xs:attribute name="id" use="required"/>
      <xs:attribute name="name" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="start">
    <xs:complexType>
      <xs:attribute name="id" use="required"/>
      <xs:attribute name="name" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="states">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="state"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="state">
    <xs:complexType>
      <xs:attribute name="id" use="required"/>
      <xs:attribute name="isFinal" use="required" type="xs:boolean"/>
      <xs:attribute name="name" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="events">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="event"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="event">
    <xs:complexType>
      <xs:attribute name="id" use="required"/>
      <xs:attribute name="name" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="transitions">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="transition"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="transition">
    <xs:complexType>
      <xs:attribute name="from" use="required"/>
      <xs:attribute name="id" use="required"/>
      <xs:attribute name="name" use="required"/>
      <xs:attribute name="on" use="required"/>
      <xs:attribute name="to" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="callbacks">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="callback"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="callback">
    <xs:complexType>
      <xs:attribute name="id" use="required"/>
      <xs:attribute name="name" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="hooks">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="hook"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="hook">
    <xs:complexType>
      <xs:attribute name="call" use="required"/>
      <xs:attribute name="id" use="required"/>
      <xs:attribute name="name" use="required"/>
      <xs:attribute name="on" use="required"/>
    </xs:complexType>
  </xs:element>
</xs:schema>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?