Schema Name: sportsml.xsd
Target Namespace: http://www.sportsml.org/schema/
Documentation:
SportsML is a global XML standard for the interchange of sports data. Designed to be as easy to understand and implement as possible, SportsML allows for the exchange of sports scores, schedules, standings, and statistics for a wide variety of competitions. Its extensibility allows for the easy accommodation of many sports from around the globe. It cooperates with current IPTC standards NewsML and NITF to enable publishers to package sports statistics alongside edited coverage of sports.
Collapse XSD Schema Code:

<!--Created with Liquid Studio (https://www.liquid-technologies.com)-->
<schema xmlns:sportsml="http://www.sportsml.org/schema/" xmlns:ns0="http://iptc.org/std/nitf/2006-03-01/" targetNamespace="http://www.sportsml.org/schema/" version="1.6" xmlns="http://www.w3.org/2001/XMLSchema">
    <!-- Core Schema -->
    <include schemaLocation="./sportsml-core.xsd" />
    <!-- Plug-In Schemas for Specific Sports -->
    <include schemaLocation="sportsml-specific-american-football.xsd" />
    <include schemaLocation="sportsml-specific-baseball.xsd" />
    <include schemaLocation="sportsml-specific-basketball.xsd" />
    <include schemaLocation="sportsml-specific-golf.xsd" />
    <include schemaLocation="sportsml-specific-ice-hockey.xsd" />
    <include schemaLocation="sportsml-specific-soccer.xsd" />
    <include schemaLocation="sportsml-specific-tennis.xsd" />
    <include schemaLocation="sportsml-specific-motor-racing.xsd" />
    <!-- Team Key Resource Files -->
    <include schemaLocation="resource-files/team-keys-l.nhl.com.xsd" />
    <!-- Controlled-Vocabulary Resource Files -->
    <include schemaLocation="resource-files/sportsml-vocabulary-core.xsd" />
    <include schemaLocation="resource-files/sportsml-vocabulary-specific-american-football.xsd" />
    <include schemaLocation="resource-files/sportsml-vocabulary-specific-baseball.xsd" />
    <include schemaLocation="resource-files/sportsml-vocabulary-specific-basketball.xsd" />
    <include schemaLocation="resource-files/sportsml-vocabulary-specific-golf.xsd" />
    <include schemaLocation="resource-files/sportsml-vocabulary-specific-ice-hockey.xsd" />
    <include schemaLocation="resource-files/sportsml-vocabulary-specific-soccer.xsd" />
    <include schemaLocation="resource-files/sportsml-vocabulary-specific-tennis.xsd" />
    <include schemaLocation="resource-files/sportsml-vocabulary-specific-motor-racing.xsd" />
    <import schemaLocation="..\..\..\..\NIFT\3.3\specification\schema\nitf-3-3.xsd" namespace="http://iptc.org/std/nitf/2006-03-01/" />
    <annotation>
        <appinfo>SportsML</appinfo>
        <documentation>SportsML is a global XML standard for the interchange of sports data. Designed to be as easy to understand and implement as possible, SportsML allows for the exchange of sports scores, schedules, standings, and statistics for a wide variety of competitions. Its extensibility allows for the easy accommodation of many sports from around the globe. It cooperates with current IPTC standards NewsML and NITF to enable publishers to package sports statistics alongside edited coverage of sports.</documentation>
    </annotation>
    <!-- Extensions for Specific Sports -->
    <element name="placeholder-element">
        <annotation>
            <documentation>Not a true SportsML element | Just an empty placeholder to be used if Specific extension has no children.</documentation>
        </annotation>
    </element>
    <group name="eventMetadataSpecific">
        <choice>
            <element ref="sportsml:event-metadata-american-football" />
            <element ref="sportsml:event-metadata-baseball" />
            <element ref="sportsml:event-metadata-basketball" />
            <element ref="sportsml:event-metadata-golf" />
            <element ref="sportsml:event-metadata-ice-hockey" />
            <element ref="sportsml:event-metadata-soccer" />
            <element ref="sportsml:event-metadata-tennis" />
            <element ref="sportsml:event-metadata-motor-racing" />
        </choice>
    </group>
    <group name="eventStatsSpecific">
        <choice>
            <element ref="sportsml:event-stats-motor-racing" />
        </choice>
    </group>
    <group name="eventActionsSpecific">
        <choice>
            <element ref="sportsml:event-actions-american-football" />
            <element ref="sportsml:event-actions-baseball" />
            <element ref="sportsml:event-actions-basketball" />
            <element ref="sportsml:event-actions-golf" />
            <element ref="sportsml:event-actions-ice-hockey" />
            <element ref="sportsml:event-actions-soccer" />
            <element ref="sportsml:event-actions-tennis" />
            <element ref="sportsml:event-actions-motor-racing" />
        </choice>
    </group>
    <group name="teamMetadataSpecific">
        <choice>
            <element ref="sportsml:team-metadata-american-football" />
            <element ref="sportsml:team-metadata-baseball" />
            <element ref="sportsml:team-metadata-basketball" />
            <element ref="sportsml:team-metadata-golf" />
            <element ref="sportsml:team-metadata-ice-hockey" />
            <element ref="sportsml:team-metadata-soccer" />
            <element ref="sportsml:team-metadata-tennis" />
            <element ref="sportsml:team-metadata-motor-racing" />
        </choice>
    </group>
    <group name="teamStatsSpecific">
        <choice>
            <element ref="sportsml:team-stats-american-football" />
            <element ref="sportsml:team-stats-baseball" />
            <element ref="sportsml:team-stats-basketball" />
            <element ref="sportsml:team-stats-golf" />
            <element ref="sportsml:team-stats-ice-hockey" />
            <element ref="sportsml:team-stats-soccer" />
            <element ref="sportsml:team-stats-tennis" />
            <element ref="sportsml:team-stats-motor-racing" />
        </choice>
    </group>
    <group name="playerMetadataSpecific">
        <choice>
            <element ref="sportsml:player-metadata-american-football" />
            <element ref="sportsml:player-metadata-baseball" />
            <element ref="sportsml:player-metadata-basketball" />
            <element ref="sportsml:player-metadata-golf" />
            <element ref="sportsml:player-metadata-ice-hockey" />
            <element ref="sportsml:player-metadata-soccer" />
            <element ref="sportsml:player-metadata-tennis" />
            <element ref="sportsml:player-metadata-motor-racing" />
        </choice>
    </group>
    <group name="playerStatsSpecific">
        <choice>
            <element ref="sportsml:player-stats-american-football" />
            <element ref="sportsml:player-stats-baseball" />
            <element ref="sportsml:player-stats-basketball" />
            <element ref="sportsml:player-stats-golf" />
            <element ref="sportsml:player-stats-ice-hockey" />
            <element ref="sportsml:player-stats-soccer" />
            <element ref="sportsml:player-stats-tennis" />
            <element ref="sportsml:player-stats-motor-racing" />
        </choice>
    </group>
    <group name="associateMetadataSpecific">
        <choice>
            <element ref="sportsml:placeholder-element" />
        </choice>
    </group>
    <group name="associateStatsSpecific">
        <choice>
            <element ref="sportsml:placeholder-element" />
        </choice>
    </group>
    <group name="officialMetadataSpecific">
        <choice>
            <element ref="sportsml:placeholder-element" />
        </choice>
    </group>
    <group name="officialStatsSpecific">
        <choice>
            <element ref="sportsml:placeholder-element" />
        </choice>
    </group>
    <group name="tournamentMetadataSpecific">
        <choice>
            <element ref="sportsml:tournament-metadata-golf" />
            <element ref="sportsml:tournament-metadata-tennis" />
        </choice>
    </group>
    <group name="tournamentDivisionMetadataSpecific">
        <choice>
            <element ref="sportsml:tournament-division-metadata-golf" />
        </choice>
    </group>
    <group name="tournamentStageMetadataSpecific">
        <choice>
            <element ref="sportsml:placeholder-element" />
        </choice>
    </group>
    <group name="groupMetadataSpecific">
        <choice>
            <element ref="sportsml:placeholder-element" />
        </choice>
    </group>
    <group name="groupStatsSpecific">
        <choice>
            <element ref="sportsml:placeholder-element" />
        </choice>
    </group>
    <!-- Common vocabulary definitions -->
    <simpleType name="teamKey.Common">
        <union memberTypes="sportsml:teamKeyType.l.nhl.com" />
    </simpleType>
    <simpleType name="position.Common">
        <union memberTypes="sportsml:position.AmericanFootball.Vocabulary sportsml:position.Baseball.Vocabulary sportsml:position.Basketball.Vocabulary sportsml:position.IceHockey.Vocabulary sportsml:position.Soccer.Vocabulary" />
    </simpleType>
    <simpleType name="dateTime.Common">
        <restriction base="dateTime" />
    </simpleType>
    <simpleType name="duration.Common">
        <restriction base="duration" />
    </simpleType>
    <!-- Vocabulary definitions for core schema -->
    <simpleType name="statsCoverage.Core">
        <union memberTypes="sportsml:statsCoverage.Core.Vocabulary" />
    </simpleType>
    <simpleType name="teamCoverage.Core">
        <union memberTypes="sportsml:teamCoverage.Core.Vocabulary" />
    </simpleType>
    <simpleType name="dateCoverageType.Core">
        <union memberTypes="sportsml:dateCoverageType.Core.Vocabulary" />
    </simpleType>
    <simpleType name="durationScope.Core">
        <union memberTypes="sportsml:durationScope.Core.Vocabulary" />
    </simpleType>
    <simpleType name="competitionScope.Core">
        <union memberTypes="sportsml:competitionScope.Core.Vocabulary" />
    </simpleType>
    <simpleType name="alignmentScope.Core">
        <union memberTypes="sportsml:alignmentScope.Core.Vocabulary" />
    </simpleType>
    <simpleType name="recordMakingScope.Core">
        <union memberTypes="sportsml:recordMakingScope.Core.Vocabulary" />
    </simpleType>
    <simpleType name="codeType.Core">
        <union memberTypes="sportsml:codeType.Core.Vocabulary" />
    </simpleType>
    <simpleType name="eventStyle.Core">
        <union memberTypes="sportsml:eventStyle.Core.Vocabulary" />
    </simpleType>
    <simpleType name="eventStatus.Core">
        <union memberTypes="sportsml:eventStatus.Core.Vocabulary" />
    </simpleType>
    <simpleType name="postponementStatus.Core">
        <union memberTypes="sportsml:postponementStatus.Core.Vocabulary" />
    </simpleType>
    <simpleType name="status.Core">
        <union memberTypes="sportsml:status.Core.Vocabulary" />
    </simpleType>
    <simpleType name="health.Core">
        <union memberTypes="sportsml:health.Core.Vocabulary" />
    </simpleType>
    <simpleType name="phaseType.Core">
        <union memberTypes="sportsml:phaseType.Core.Vocabulary" />
    </simpleType>
    <simpleType name="gender.Core">
        <union memberTypes="sportsml:gender.Core.Vocabulary" />
    </simpleType>
    <simpleType name="participantCount.Core">
        <union memberTypes="sportsml:participantCount.Core.Vocabulary" />
    </simpleType>
    <simpleType name="professionalStatus.Core">
        <union memberTypes="sportsml:professionalStatus.Core.Vocabulary" />
    </simpleType>
    <simpleType name="specialGroup.Core">
        <union memberTypes="sportsml:specialGroup.Core.Vocabulary" />
    </simpleType>
    <simpleType name="specialNeeds.Core">
        <union memberTypes="sportsml:specialNeeds.Core.Vocabulary" />
    </simpleType>
    <simpleType name="siteStyle.Core">
        <union memberTypes="sportsml:siteStyle.Core.Vocabulary" />
    </simpleType>
    <simpleType name="siteSurface.Core">
        <union memberTypes="sportsml:siteSurface.Core.Vocabulary" />
    </simpleType>
    <simpleType name="scoreUnits.Core">
        <union memberTypes="sportsml:scoreUnits.Core.Vocabulary" />
    </simpleType>
    <simpleType name="resultEffect.Core">
        <union memberTypes="sportsml:resultEffect.Core.Vocabulary" />
    </simpleType>
    <simpleType name="awardType.Core">
        <union memberTypes="sportsml:awardType.Core.Vocabulary" />
    </simpleType>
    <simpleType name="statusChangeType.Core">
        <union memberTypes="sportsml:statusChangeType.Core.Vocabulary" />
    </simpleType>
    <!-- Vocabulary definitions for american-football schema -->
    <simpleType name="scoreAttemptResult.AmericanFootball">
        <union memberTypes="sportsml:scoreAttemptResult.AmericanFootball.Vocabulary" />
    </simpleType>
    <simpleType name="driveResult.AmericanFootball">
        <union memberTypes="sportsml:driveResult.AmericanFootball.Vocabulary" />
    </simpleType>
    <simpleType name="scoreType.AmericanFootball">
        <union memberTypes="sportsml:scoreType.AmericanFootball.Vocabulary" />
    </simpleType>
    <simpleType name="penaltySide.AmericanFootball">
        <union memberTypes="sportsml:penaltySide.AmericanFootball.Vocabulary" />
    </simpleType>
    <simpleType name="penaltyLevel.AmericanFootball">
        <union memberTypes="sportsml:penaltyLevel.AmericanFootball.Vocabulary" />
    </simpleType>
    <simpleType name="timeoutType.AmericanFootball">
        <union memberTypes="sportsml:timeoutType.AmericanFootball.Vocabulary" />
    </simpleType>
    <simpleType name="role.AmericanFootball">
        <union memberTypes="sportsml:role.AmericanFootball.Vocabulary" />
    </simpleType>
    <simpleType name="result.AmericanFootball">
        <union memberTypes="sportsml:result.AmericanFootball.Vocabulary" />
    </simpleType>
    <simpleType name="kickType.AmericanFootball">
        <union memberTypes="sportsml:kickType.AmericanFootball.Vocabulary" />
    </simpleType>
    <simpleType name="penaltyType.AmericanFootball">
        <union memberTypes="sportsml:penaltyType.AmericanFootball.Vocabulary" />
    </simpleType>
    <simpleType name="position.AmericanFootball">
        <union memberTypes="sportsml:position.AmericanFootball.Vocabulary" />
    </simpleType>
    <simpleType name="caller.AmericanFootball">
        <union memberTypes="sportsml:caller.AmericanFootball.Vocabulary" />
    </simpleType>
    <!-- Vocabulary definitions for baseball schema -->
    <simpleType name="pitchType.Baseball">
        <union memberTypes="sportsml:pitchType.Baseball.Vocabulary" />
    </simpleType>
    <simpleType name="strikeType.Baseball">
        <union memberTypes="sportsml:strikeType.Baseball.Vocabulary" />
    </simpleType>
    <simpleType name="ballLocation.Baseball">
        <union memberTypes="sportsml:ballLocation.Baseball.Vocabulary" />
    </simpleType>
    <simpleType name="playType.Baseball">
        <union memberTypes="sportsml:playType.Baseball.Vocabulary" />
    </simpleType>
    <simpleType name="walkType.Baseball">
        <union memberTypes="sportsml:walkType.Baseball.Vocabulary" />
    </simpleType>
    <simpleType name="hitType.Baseball">
        <union memberTypes="sportsml:hitType.Baseball.Vocabulary" />
    </simpleType>
    <simpleType name="hitByPitchType.Baseball">
        <union memberTypes="sportsml:hitByPitchType.Baseball.Vocabulary" />
    </simpleType>
    <simpleType name="outType.Baseball">
        <union memberTypes="sportsml:outType.Baseball.Vocabulary" />
    </simpleType>
    <simpleType name="position.Baseball">
        <union memberTypes="sportsml:position.Baseball.Vocabulary" />
    </simpleType>
    <!-- Vocabulary definitions for basketball schema -->
    <simpleType name="scoreAttemptType.Basketball">
        <union memberTypes="sportsml:scoreAttemptType.Basketball.Vocabulary" />
    </simpleType>
    <simpleType name="scoreAttemptResult.Basketball">
        <union memberTypes="sportsml:scoreAttemptResult.Basketball.Vocabulary" />
    </simpleType>
    <simpleType name="penaltySide.Basketball">
        <union memberTypes="sportsml:penaltySide.Basketball.Vocabulary" />
    </simpleType>
    <simpleType name="penaltyLevel.Basketball">
        <union memberTypes="sportsml:penaltyLevel.Basketball.Vocabulary" />
    </simpleType>
    <simpleType name="position.Basketball">
        <union memberTypes="sportsml:position.Basketball.Vocabulary" />
    </simpleType>
    <!-- Vocabulary definitions for golf schema -->
    <simpleType name="holeType.Golf">
        <union memberTypes="sportsml:holeType.Golf.Vocabulary" />
    </simpleType>
    <simpleType name="shotType.Golf">
        <union memberTypes="sportsml:shotType.Golf.Vocabulary" />
    </simpleType>
    <simpleType name="landing.Golf">
        <union memberTypes="sportsml:landing.Golf.Vocabulary" />
    </simpleType>
    <!-- Vocabulary definitions for ice-hockey schema -->
    <simpleType name="scoreAttemptType.IceHockey">
        <union memberTypes="sportsml:scoreAttemptType.IceHockey.Vocabulary" />
    </simpleType>
    <simpleType name="scoreAttemptResult.IceHockey">
        <union memberTypes="sportsml:scoreAttemptResult.IceHockey.Vocabulary" />
    </simpleType>
    <simpleType name="penaltyLevel.IceHockey">
        <union memberTypes="sportsml:penaltyLevel.IceHockey.Vocabulary" />
    </simpleType>
    <simpleType name="penaltyName.IceHockey">
        <union memberTypes="sportsml:penaltyName.IceHockey.Vocabulary" />
    </simpleType>
    <simpleType name="position.IceHockey">
        <union memberTypes="sportsml:position.IceHockey.Vocabulary" />
    </simpleType>
    <!-- Vocabulary definitions for soccer schema -->
    <simpleType name="scoreAttemptType.Soccer">
        <union memberTypes="sportsml:scoreAttemptType.Soccer.Vocabulary" />
    </simpleType>
    <simpleType name="scoreAttemptMethod.Soccer">
        <union memberTypes="sportsml:scoreAttemptMethod.Soccer.Vocabulary" />
    </simpleType>
    <simpleType name="scoreAttemptResult.Soccer">
        <union memberTypes="sportsml:scoreAttemptResult.Soccer.Vocabulary" />
    </simpleType>
    <simpleType name="penaltyType.Soccer">
        <union memberTypes="sportsml:penaltyType.Soccer.Vocabulary" />
    </simpleType>
    <simpleType name="penaltyLevel.Soccer">
        <union memberTypes="sportsml:penaltyLevel.Soccer.Vocabulary" />
    </simpleType>
    <simpleType name="foulResult.Soccer">
        <union memberTypes="sportsml:foulResult.Soccer.Vocabulary" />
    </simpleType>
    <simpleType name="foulName.Soccer">
        <union memberTypes="sportsml:foulName.Soccer.Vocabulary" />
    </simpleType>
    <simpleType name="position.Soccer">
        <union memberTypes="sportsml:position.Soccer.Vocabulary" />
    </simpleType>
    <!-- Vocabulary definitions for tennis schema -->
    <simpleType name="winType.Tennis">
        <union memberTypes="sportsml:winType.Tennis.Vocabulary" />
    </simpleType>
    <simpleType name="flagType.MotorRacing">
        <union memberTypes="sportsml:flagType.MotorRacing.Vocabulary" />
    </simpleType>
</schema>
Collapse Elements:
Collapse Groups:
Collapse SimpleTypes: