\hypertarget{group}{}\subsection{group}\label{group}
The group component allows groups of elements to be combined into reusable groups. From a modelling perspective we regard them as syntactic sugar with no counterpart in OWL. However, group references act like compositors in that they allow the schema designer to indicate how many times the group may occur.

The minimum and maximum occurrences of the group reference are multiplied by the cardinalities of the group members. In the example below, the element 'barfoo' references a group that has no occurrences.



\begin{DocInclude}\begin{verbatim}<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
        targetNamespace="http://example.org/" xmlns="http://example.org/"
        elementFormDefault="qualified">
        
        <xs:group name="myGroup">
                <xs:all>
                        <xs:element name="foo" />
                </xs:all>
        </xs:group>
        
        <xs:element name="barfoo">
                <xs:complexType>
                        <xs:group ref="myGroup" minOccurs="0" maxOccurs="0" />
                </xs:complexType>
        </xs:element>

</xs:schema>
\end{verbatim}
\end{DocInclude}
 

\begin{DocInclude}\begin{verbatim}# Base: http://example.org/group.owl
@prefix ns1:     <http://example.org/> .
@prefix xs:      <http://www.w3.org/2001/XMLSchema> .
@prefix ns2:     <http://example.org/def/> .
@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
@prefix daml:    <http://www.daml.org/2001/03/daml+oil#> .
@prefix rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xs_:     <http://www.w3.org/2001/XMLSchema#> .
@prefix :        <#> .
@prefix owl:     <http://www.w3.org/2002/07/owl#> .

<>    a       owl:Ontology .

ns1:foo
      a       rdf:Property .

ns1:barfoo
      a       owl:ObjectProperty ;
      rdfs:range
              [ a       owl:Class ;
                rdfs:subClassOf
                        [ a       owl:Restriction ;
                          owl:cardinality "0"^^xs_:int ;
                          owl:onProperty ns1:foo
                        ]
              ] .
\end{verbatim}
\end{DocInclude}
\hypertarget{group_groupChildren}{}\subsubsection{Child components}\label{group_groupChildren}
\begin{itemize}
\item \hyperlink{sequence}{sequence}\item \hyperlink{choice}{choice}\item \hyperlink{all}{all} \end{itemize}
