OpenCores
URL https://opencores.org/ocsvn/socgen/socgen/trunk

Subversion Repositories socgen

[/] [socgen/] [trunk/] [tools/] [ip-xact/] [1685-2014/] [abstractor.xsd] - Rev 135

Compare with Previous | Blame | View Log

<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2007 rel. 3 (http://www.altova.com) by Erwin de Kock (Philips Electronics Nederland BV) -->
<!-- 
// Description: abstractor.xsd
// Author: The Accellera System Initiative IP-XACT Schema Working Group
// 
// Revision:    $Revision: 1537 $
// Date:        $Date: 2010-02-26 13:28:40 -0800 (Fri, 26 Feb 2010) $
// 
// Copyright (c) 2005 - 2012 Accellera Systems Initiative Inc. 
// All rights reserved.
// 
// This source file is provided on an AS IS basis. The Accellera 
// Systems Initiative disclaims any warranty express or implied 
// including any warranty of merchantability and fitness for use 
// for a particular purpose.
// 
// The user of the source file shall indemnify and hold The Accellera 
// Systems Initiative and its members harmless from any damages or liability.
// 
// This file may be copied, and distributed, WITHOUT
// modifications; this notice must be included on any copy.
// 
// This schema shall not be modified, adapted, altered, sublicensed, nor
// any derivative works shall be created based upon the schema.  The
// intended and allowed uses of the schema include:
// 
//  o Creating and validating XML documents that conform to the schema
// 
//  o Building software programs and systems based on the schema
// 
//  o Distributing verbatim copy of the schema as long as the full text
//  of this license is included in all copies of the schema.
//  Specifically, a tool may include full copies of the schema, and these
//  copies may be distributed by the tool provider directly.  A link or
//  URL to the original of the schema is inherent in the schema URI.
// 
//  o Documents which are validated against this schema may also
//  reference additional schema. These additional schemas may provide for
//  validation of elements and attributes at the extension points
//  explicitly and implicitly included in the IEEE 1685-???? standard.
// 
//  o No right to create new schemas derived from parts of this base
//  schema is granted pursuant to this License.
// 
// Users are requested to provide feedback to The Accellera Systems 
// Initiative IP-XACT Schema Working Group using: 
// mailto:ip-xact-swg@lists.accellera.org
 -->
<xs:schema xmlns:ipxact="http://www.accellera.org/XMLSchema/IPXACT/1685-2014" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.accellera.org/XMLSchema/IPXACT/1685-2014" elementFormDefault="qualified">
        <xs:include schemaLocation="busInterface.xsd"/>
        <xs:include schemaLocation="identifier.xsd"/>
        <xs:include schemaLocation="generator.xsd"/>
        <xs:include schemaLocation="commonStructures.xsd"/>
        <xs:include schemaLocation="model.xsd"/>
        <xs:include schemaLocation="subInstances.xsd"/>
        <xs:include schemaLocation="constraints.xsd"/>
        <xs:complexType name="abstractorType">
                <xs:annotation>
                        <xs:documentation>Abstractor-specific extension to abstractorType</xs:documentation>
                </xs:annotation>
                <xs:sequence>
                        <xs:group ref="ipxact:versionedIdentifier"/>
                        <xs:element name="abstractorMode">
                                <xs:annotation>
                                        <xs:documentation>Define the mode for the interfaces on this abstractor. 

For master the first interface connects to the master, the second connects to the mirroredMaster

For slave the first interface connects to the mirroredSlave the second connects to the slave

For direct the first interface connects to the master, the second connects to the slave

For system the first interface connects to the system, the second connects to the mirroredSystem. For system the group attribute is required</xs:documentation>
                                </xs:annotation>
                                <xs:complexType>
                                        <xs:simpleContent>
                                                <xs:extension base="ipxact:abstractorModeType">
                                                        <xs:attribute name="group" type="xs:Name">
                                                                <xs:annotation>
                                                                        <xs:documentation>Define the system group if the mode is set to system</xs:documentation>
                                                                </xs:annotation>
                                                        </xs:attribute>
                                                </xs:extension>
                                        </xs:simpleContent>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="busType" type="ipxact:libraryRefType">
                                <xs:annotation>
                                        <xs:documentation>The bus type of both interfaces. Refers to bus definition using vendor, library, name, version attributes.</xs:documentation>
                                </xs:annotation>
                        </xs:element>
                        <xs:element name="abstractorInterfaces">
                                <xs:annotation>
                                        <xs:documentation>The interfaces supported by this abstractor</xs:documentation>
                                </xs:annotation>
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element name="abstractorInterface" type="ipxact:abstractorBusInterfaceType" minOccurs="2" maxOccurs="2">
                                                        <xs:annotation>
                                                                <xs:documentation>An abstractor must have exactly 2 Interfaces.</xs:documentation>
                                                        </xs:annotation>
                                                </xs:element>
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="model" type="ipxact:abstractorModelType" minOccurs="0">
                                <xs:annotation>
                                        <xs:documentation>Model information.</xs:documentation>
                                </xs:annotation>
                                <xs:key name="abstractorInstantiationsKey">
                                        <xs:selector xpath="./ipxact:instantiations/ipxact:componentInstantiation"/>
                                        <xs:field xpath="./ipxact:name"/>
                                </xs:key>
                                <xs:keyref name="abstractorInstantiationsRef" refer="ipxact:abstractorInstantiationsKey">
                                        <xs:selector xpath="./ipxact:views/ipxact:view/ipxact:componentInstantiationRef"/>
                                        <xs:field xpath="."/>
                                </xs:keyref>
                        </xs:element>
                        <xs:element ref="ipxact:abstractorGenerators" minOccurs="0">
                                <xs:annotation>
                                        <xs:documentation>Generator list is tools-specific.</xs:documentation>
                                </xs:annotation>
                        </xs:element>
                        <xs:element ref="ipxact:choices" minOccurs="0"/>
                        <xs:element ref="ipxact:fileSets" minOccurs="0"/>
                        <xs:element ref="ipxact:description" minOccurs="0"/>
                        <xs:element ref="ipxact:parameters" minOccurs="0"/>
                        <xs:element ref="ipxact:assertions" minOccurs="0"/>
                        <xs:element ref="ipxact:vendorExtensions" minOccurs="0"/>
                </xs:sequence>
                <xs:attributeGroup ref="ipxact:id.att"/>
        </xs:complexType>
        <xs:element name="abstractor" type="ipxact:abstractorType">
                <xs:annotation>
                        <xs:documentation>This is the root element for abstractors</xs:documentation>
                </xs:annotation>
                <xs:key name="abstractorInterfaceKey">
                        <xs:selector xpath="ipxact:abstractorInterfaces/ipxact:abstractorInterface"/>
                        <xs:field xpath="ipxact:name"/>
                </xs:key>
                <xs:key name="abstractorComponentChoiceKey">
                        <xs:selector xpath="ipxact:choices/ipxact:choice"/>
                        <xs:field xpath="ipxact:name"/>
                </xs:key>
                <xs:keyref name="abstractorComponentChoiceRef" refer="ipxact:abstractorComponentChoiceKey">
                        <xs:selector xpath=".//*"/>
                        <xs:field xpath="@choiceRef"/>
                </xs:keyref>
                <xs:key name="abstractorViewKey">
                        <xs:selector xpath="ipxact:model/ipxact:views/ipxact:view"/>
                        <xs:field xpath="ipxact:name"/>
                </xs:key>
                <xs:keyref name="abstractorTypeDefViewRef" refer="ipxact:abstractorViewKey">
                        <xs:selector xpath=".//ipxact:viewRef"/>
                        <xs:field xpath="."/>
                </xs:keyref>
                <xs:key name="abstractorFileSetKey">
                        <xs:selector xpath=".//ipxact:fileSet"/>
                        <xs:field xpath="ipxact:name"/>
                </xs:key>
                <xs:keyref name="abstractorFileSetRef" refer="ipxact:abstractorFileSetKey">
                        <xs:selector xpath=".//ipxact:fileSetRef"/>
                        <xs:field xpath="ipxact:localName"/>
                </xs:keyref>
                <xs:key name="abstractorPortKey">
                        <xs:selector xpath="ipxact:model/ipxact:ports/ipxact:port"/>
                        <xs:field xpath="ipxact:name"/>
                </xs:key>
                <xs:keyref name="abstractorportRef" refer="ipxact:abstractorPortKey">
                        <xs:selector xpath="ipxact:abstractorInterfaces/ipxact:abstractorInterface/ipxact:abstractionTypes/ipxact:abstractionType/ipxact:portMaps/ipxact:portMap/ipxact:physicalPort/ipxact:name"/>
                        <xs:field xpath="."/>
                </xs:keyref>
        </xs:element>
        <xs:simpleType name="abstractorModeType">
                <xs:annotation>
                        <xs:documentation>Mode for this abstractor</xs:documentation>
                </xs:annotation>
                <xs:restriction base="xs:string">
                        <xs:enumeration value="master"/>
                        <xs:enumeration value="slave"/>
                        <xs:enumeration value="direct"/>
                        <xs:enumeration value="system"/>
                </xs:restriction>
        </xs:simpleType>
</xs:schema>

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.