| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Copyright 2006 The Apache Software Foundation or its licensors, as applicable. |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <schema xmlns="http://www.w3.org/2001/XMLSchema" |
| targetNamespace="http://www.commonj.org/xmlns/sca/v0.0.1/" |
| xmlns:sca="http://www.commonj.org/xmlns/sca/v0.0.1/" |
| xmlns:sdo="commonj.sdo/XML" |
| elementFormDefault="qualified"> |
| |
| <include schemaLocation="sca-core.xsd"/> |
| |
| <element name="interface.cpp" type="sca:CPPInterface" substitutionGroup="sca:interface" |
| sdo:name="interfaceCpp"/> |
| <complexType name="CPPInterface"> |
| <complexContent> |
| <extension base="sca:Interface"> |
| <sequence> |
| <element minOccurs="1" name="operation" type="sca:Operation"/> |
| </sequence> |
| <anyAttribute namespace="##any" processContents="lax"/> |
| </extension> |
| </complexContent> |
| </complexType> |
| |
| <!-- C++ operation declaration --> |
| <complexType name="Operation"> |
| <complexContent> |
| <sequence> |
| <element minOccurs="1" maxOccurs="1" name="return" type="sca:ReturnType"/> |
| <element minOccurs="0" name="parameter" type="sca:ParameterType"/> |
| </sequence> |
| <attribute name="name" type="string" use="required"/> |
| </complexContent> |
| </complexType> |
| |
| <simpleType name="ReturnType"> |
| <restriction base="string"> |
| <enumeration value="float"/> |
| <enumeration value="void"/> |
| </restriction> |
| </simpleType> |
| |
| <simpleType name="ParameterType"> |
| <restriction base="string"> |
| <enumeration value="float"/> |
| <enumeration value="const char *"/> |
| </restriction> |
| </simpleType> |
| |
| |
| </schema> |