Permalink
Find file
Fetching contributors…
Cannot retrieve contributors at this time
129 lines (113 sloc) 3.01 KB
<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<a:documentation>
RELAX NG implementation of Multisets grammar.
This schema implements the multiset constructs package for High-level Petri Nets.
File name: multisets.rng
Version: 2009
(c) 2007-2009
Lom Hillah (AFNOR)
Revision:
July 2008 - L.H
</a:documentation>
<define name="BuiltInOperator" combine="choice">
<a:documentation>
Cardinality, CardinalityOf, Contains are built-in operators
</a:documentation>
<choice>
<ref name="Cardinality"/>
<ref name="CardinalityOf"/>
<ref name="Contains"/>
</choice>
</define>
<define name="MultisetOperator" combine="choice">
<a:documentation>
The concrete Multiset Operators.
</a:documentation>
<choice>
<ref name="Add"/>
<ref name="All"/>
<ref name="NumberOf"/>
<ref name="Subtract"/>
<ref name="ScalarProduct"/>
<ref name="Empty"/>
</choice>
</define>
<define name="Add">
<a:documentation>
Defines the 'addition' of multisets.
</a:documentation>
<element name="add">
<ref name="MultisetOperator.content"/>
</element>
</define>
<define name="Subtract">
<a:documentation>
Defines the 'subtraction' of two multisets.
</a:documentation>
<element name="subtract">
<ref name="MultisetOperator.content"/>
</element>
</define>
<define name="All">
<a:documentation>
Defines the 'broadcast' operator over a multiset.
</a:documentation>
<element name="all">
<ref name="MultisetOperator.content"/>
<ref name="Sort"/>
</element>
</define>
<define name="Empty">
<a:documentation>
Defines the 'empty' multiset.
</a:documentation>
<element name="empty">
<ref name="MultisetOperator.content"/>
<ref name="Sort"/>
</element>
</define>
<define name="ScalarProduct">
<a:documentation>
Defines the 'scalar product' of multisets.
</a:documentation>
<element name="scalarproduct">
<ref name="MultisetOperator.content"/>
</element>
</define>
<define name="NumberOf">
<a:documentation>
Defines the construction of a multiset with a natural number
and an element of a sort.
</a:documentation>
<element name="numberof">
<ref name="MultisetOperator.content"/>
</element>
</define>
<define name="Cardinality">
<a:documentation>
Defines the cardinality of a multiset.
</a:documentation>
<element name="cardinality">
<ref name="BuiltInOperator.content"/>
</element>
</define>
<define name="CardinalityOf">
<a:documentation>
Defines the cardinality of an element in a multiset.
</a:documentation>
<element name="cardinalityof">
<ref name="BuiltInOperator.content"/>
</element>
</define>
<define name="Contains">
<a:documentation>
Defines the containment relationship between two multisets.
</a:documentation>
<element name="contains">
<ref name="BuiltInOperator.content"/>
</element>
</define>
</grammar>